Skip to content

Commit c2fb02d

Browse files
Merge branch 'main' into fix-stray-dir-creation-with-api-server-issue6667
2 parents 141c3bf + 2e878ed commit c2fb02d

561 files changed

Lines changed: 50394 additions & 8298 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 56 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -1,69 +1,71 @@
11
---
22
name: adk-agent-builder
3-
description: Central hub for building, testing, and iterating on ADK agents. Trigger this skill when the user wants to create a new agent, configure modes (task, single-turn), or build graph-based workflows.
3+
description: >-
4+
Builds ADK (Agent Development Kit) Python agents: LLM agents with tools,
5+
graph workflows of function and agent nodes, conditional routing, fan-out and
6+
join, schema-validated delegation between agents, human-in-the-loop pauses,
7+
and pytest coverage for all of it. Use when asked to create an agent or a
8+
workflow, add a tool to one, branch or loop between nodes, run steps in
9+
parallel, pause for user approval, or test an agent. Don't use for explaining
10+
how ADK works internally or designing its core components (use
11+
`adk-architecture`), for an agent that already runs but misbehaves (use
12+
`adk-debug`), for authoring a sample under `contributing/` (use
13+
`adk-sample-creator`), or for naming, typing, and formatting conventions (use
14+
`adk-style`).
415
---
516

617
# ADK Agent Builder
718

8-
This file serves as a directory of specialized reference guides for developing
9-
agents with ADK. To avoid context pollution, read only the relevant reference
10-
file based on your current task.
19+
Read only the reference that matches the task. Loading the whole tree costs
20+
context and buries the part that matters.
1121

12-
## Core Concepts Directory
22+
Every API below was checked against `google-adk` 2.6.2. If a symbol is missing
23+
at runtime, read the source under `src/google/adk/` rather than guessing a
24+
neighbouring name.
1325

14-
Refer to these files for foundational knowledge:
26+
## Start here
1527

16-
- **Getting Started & Basic Agents**: [getting-started.md](references/getting-started.md)
17-
- Environment setup, API key configuration, and minimal agent definitions.
18-
- **Tool Catalog**: [tool-catalog.md](references/tool-catalog.md)
19-
- How to bind function tools, MCP tools, OpenAPI specs, and Google API tools.
20-
- **Agent Modes (Task / Single-Turn)**: [task-mode.md](references/task-mode.md)
21-
- Multi-turn structured delegation and autonomous single-turn execution patterns.
22-
- **Import Paths**: [import-paths.md](references/import-paths.md)
23-
- Canonical and verbose import paths for core components, tools, and
24-
events.
28+
| Task | Reference |
29+
|---|---|
30+
| First agent, environment, `adk` CLI | [getting-started.md](references/getting-started.md) |
31+
| Which import path is the canonical one | [import-paths.md](references/import-paths.md) |
32+
| The rules that cause most runtime failures | [best-practices.md](references/best-practices.md) |
2533

26-
## Workflow & Graph Orchestration
34+
## Building blocks
2735

28-
Refer to these files when building complex graphs:
36+
- [tool-catalog.md](references/tool-catalog.md) — function tools, MCP, OpenAPI,
37+
Google API toolsets, built-in tools, custom `BaseTool` and `BaseToolset`.
38+
- [function-nodes.md](references/function-nodes.md) — plain functions as nodes:
39+
parameter resolution, generators, `node_input` typing rules.
40+
- [llm-agent-nodes.md](references/llm-agent-nodes.md) — an `LlmAgent` used as a
41+
workflow node: output types, instruction templates, `output_schema`,
42+
auto-wrapping behavior.
43+
- [task-mode.md](references/task-mode.md)`mode='task'` and
44+
`mode='single_turn'` delegation with schema-validated input and output.
2945

30-
- **Function Nodes**: [function-nodes.md](references/function-nodes.md)
31-
- How to use functions as nodes, type resolution, and generators.
32-
- **Routing & Conditions**: [routing-and-conditions.md](references/routing-and-conditions.md)
33-
- Edge patterns, dict-based routing, self-loops, and conditional execution.
34-
- **LLM Agent Nodes**: [llm-agent-nodes.md](references/llm-agent-nodes.md)
35-
- How to use LLM agents as workflow nodes, task wrappers, and handling output schemas.
36-
- **Advanced Patterns**:
37-
[advanced-patterns.md](references/advanced-patterns.md)
38-
- Nested workflows, custom node types, and graph validation rules.
46+
## Graph orchestration
3947

40-
## Advanced Orchestration Patterns
48+
- [routing-and-conditions.md](references/routing-and-conditions.md) — routed
49+
edges, dict routing maps, default routes, self-loops, revision loops.
50+
- [parallel-and-fanout.md](references/parallel-and-fanout.md) — fan-out edges,
51+
`JoinNode` fan-in, `parallel_worker=True` list processing.
52+
- [dynamic-nodes.md](references/dynamic-nodes.md) — scheduling nodes at runtime
53+
with `ctx.run_node()` and imperative workflow construction.
54+
- [human-in-the-loop.md](references/human-in-the-loop.md)`RequestInput`,
55+
resume behavior, resumable vs replayed sessions.
56+
- [advanced-patterns.md](references/advanced-patterns.md) — nested workflows,
57+
retries, custom `BaseNode` subclasses, graph validation rules.
58+
- [multi-agent.md](references/multi-agent.md) — chat-transfer hierarchies, and
59+
the deprecated `SequentialAgent` / `LoopAgent` / `ParallelAgent` shells that
60+
`Workflow` replaces.
4161

42-
- **Parallel Processing & Fan-Out**: [parallel-and-fanout.md](references/parallel-and-fanout.md)
43-
- `ParallelWorker` for list splitting and concurrent processing, fan-out/join patterns.
44-
- **Human-in-the-Loop**: [human-in-the-loop.md](references/human-in-the-loop.md)
45-
- Pausing execution for user input, resumable workflows, and AuthConfig on nodes.
46-
- **Dynamic Nodes**: [dynamic-nodes.md](references/dynamic-nodes.md)
47-
- Scheduling nodes at runtime dynamically via `ctx.run_node()`.
62+
## Runtime and verification
4863

49-
## Infrastructure & Utilities
50-
51-
- **State & Events**: [state-and-events.md](references/state-and-events.md)
52-
- Using context API, sharing global state, and yield event structures.
53-
- **Session & Memory**:
54-
[session-and-state.md](references/session-and-state.md)
55-
- Session state mutation, scope conventions, and database session
56-
services.
57-
- **Callbacks & Plugins**:
58-
[callbacks-and-plugins.md](references/callbacks-and-plugins.md)
59-
- Implementing callbacks, plugin manager integration, and override
60-
behavior.
61-
- **Multi-Agent Systems**: [multi-agent.md](references/multi-agent.md)
62-
- Hierarchical execution (e.g., `SequentialAgent`, `LoopAgent`, `ParallelAgent`).
63-
- **Testing Strategies**: [testing.md](references/testing.md)
64-
- Automated queries with `adk run`, unit tests, and integration testing with sample agents.
65-
66-
## Standards & Guidelines
67-
68-
- **Best Practices**: [best-practices.md](references/best-practices.md)
69-
- Critical rules (Pydantic schemas, content events, state-based data flow).
64+
- [state-and-events.md](references/state-and-events.md) — the `Context` object,
65+
`Event` fields, and how state flows between nodes.
66+
- [session-and-state.md](references/session-and-state.md) — session services,
67+
artifacts, memory, and state key scoping.
68+
- [callbacks-and-plugins.md](references/callbacks-and-plugins.md) — the six
69+
agent callbacks and app-level plugins.
70+
- [testing.md](references/testing.md)`pytest` with `InMemoryRunner`, faking a
71+
model, asserting on node output.

0 commit comments

Comments
 (0)