google-adk-python
Build AI agents with Google ADK Python. Multi-agent systems, A2A protocol, MCP tools, workflow agents, state/memory, callbacks/plugins, Vertex AI deployment, evaluation.
- License 许可
- Apache-2.0
- 最近更新
- 2026-08-25
- Stars
- ★ 0
- Forks
- 1
01 前言 Front Matter
- name
- google-adk-python
- license
- Apache-2.0
- version
- 2.0.0
- description
- Build AI agents with Google ADK Python. Multi-agent systems, A2A protocol, MCP tools, workflow agents, state/memory, callbacks/plugins, Vertex AI deployment, evaluation.
02 资源文件 7
- 参考文档references/agent-types-and-architecture.md2.9 KB
- 参考文档references/callbacks-plugins-observability.md3.5 KB
- 参考文档references/deployment-cloud-run-vertex-gke.md3.4 KB
- 参考文档references/evaluation-testing-cli.md2.6 KB
- 参考文档references/multi-agent-and-a2a-protocol.md3.8 KB
- 参考文档references/sessions-state-memory-artifacts.md4.2 KB
- 参考文档references/tools-and-mcp-integration.md3.9 KB
03 SKILL.md 正文
Google ADK Python Skill
Expert guide for Google's Agent Development Kit (ADK) Python — open-source, code-first toolkit for building, evaluating, and deploying AI agents. Optimized for Gemini, model-agnostic by design.
When to Activate
- Build single or multi-agent systems with tool integration
- Implement A2A protocol for remote agent communication
- Integrate MCP servers as agent tools
- Use workflow agents (sequential, parallel, loop) for pipelines
- Manage sessions, state, memory, and artifacts
- Add callbacks, plugins, or observability hooks
- Deploy to Cloud Run, Vertex AI Agent Engine, or GKE
- Evaluate agents with
adk evalframework
Agent Structure Convention (Required)
my_agent/
├── __init__.py # MUST: from . import agent
└── agent.py # MUST: root_agent = Agent(...) OR app = App(...)
Quick Start
pip install google-adk # stable (weekly releases)
uv sync --all-extras # dev setup (uv required, Python 3.10+, 3.11+ recommended)
from google.adk import Agent
root_agent = Agent(
name="assistant",
model="gemini-2.5-flash",
instruction="You are a helpful assistant.",
description="General assistant agent.",
tools=[get_weather],
)
App Pattern (Production)
from google.adk import Agent
from google.adk.apps import App
from google.adk.apps.app import EventsCompactionConfig
from google.adk.plugins.save_files_as_artifacts_plugin import SaveFilesAsArtifactsPlugin
app = App(
name="my_app",
root_agent=Agent(name="my_agent", model="gemini-2.5-flash", ...),
plugins=[SaveFilesAsArtifactsPlugin()],
events_compaction_config=EventsCompactionConfig(compaction_interval=2),
)
Use App when needing plugins, event compaction, or custom lifecycle management.
CLI Tools
| Command | Purpose |
|---|---|
adk web <agents_dir> |
Dev UI (recommended for development) |
adk run <agent_dir> |
Interactive CLI testing |
adk api_server <agents_dir> |
FastAPI production server |
adk eval <agent> <evalset.json> |
Run evaluation suite |
Agent Types
| Type | Use Case |
|---|---|
Agent / LlmAgent |
Dynamic routing, tool use, reasoning |
SequentialAgent |
Fixed-order pipeline |
ParallelAgent |
Concurrent execution |
LoopAgent |
Iterative processing |
RemoteA2aAgent |
Remote agent via A2A protocol |
Key APIs
| Feature | API |
|---|---|
| State | tool_context.state[key] = value |
| Artifacts | tool_context.save_artifact(name, part) |
| Callbacks | before_agent_callback, after_model_callback, etc. |
| MCP Tools | MCPToolset(connection_params=StdioConnectionParams(...)) |
| Sub-agents | Agent(..., sub_agents=[agent1, agent2]) |
| Human-in-loop | LongRunningFunctionTool(func=my_func) |
| Plugins | App(..., plugins=[MyPlugin()]) |
Model Support
Latest: gemini-2.5-flash (default), gemini-2.5-pro, gemini-2.0-flash (sunsets Mar 2026)
Preview: gemini-3-flash-preview, gemini-3-pro-preview
Also: Anthropic Claude, Ollama, LiteLLM, vLLM, Model Garden
Best Practices
- Code-first — define agents in Python for version control and testing
- Agent convention — always use
root_agentorappvariable inagent.py - Modular agents — specialize per domain, compose via
sub_agents - Workflow selection — workflow agents for predictable, LlmAgent for dynamic
- State —
ToolContext.statefor ephemeral,MemoryServicefor long-term - Safety — callbacks for guardrails, tool confirmation for sensitive ops
- Evaluate — test with
adk eval+ evalset JSON before deployment
References
Detailed guides (load as needed):
references/agent-types-and-architecture.md— Agent types, workflows, custom agentsreferences/tools-and-mcp-integration.md— Custom tools, MCP, tool filteringreferences/multi-agent-and-a2a-protocol.md— Sub-agents, A2A, coordinator patternsreferences/sessions-state-memory-artifacts.md— State, artifacts, sessions, memoryreferences/callbacks-plugins-observability.md— Lifecycle hooks, plugins, tracingreferences/evaluation-testing-cli.md— adk eval, CLI, evalset formatreferences/deployment-cloud-run-vertex-gke.md— Cloud Run, Vertex AI, GKE
External Resources
04 同仓库更多 Skills
web-testing
Web testing with Playwright, Vitest, k6. E2E/unit/integration/load/security/visual/a11y testing. Use for test automation, flakiness, Core Web Vitals, mobile gestures, cross-browser.
web-frameworks
Build with Next.js (App Router, RSC, SSR, ISR), Turborepo monorepos. Use for React apps, server rendering, build optimization, caching strategies, shared dependencies.
ui-styling
Style UIs with shadcn/ui components (Radix UI + Tailwind CSS). Use for accessible components, themes, dark mode, responsive layouts, design systems, color customization.
threejs
Build 3D web apps with Three.js (WebGL/WebGPU). 556 searchable examples, 60 API classes, 20 use cases. Actions: create 3D scene, load model, add animation, implement physics, build VR/XR. Topics: GLTF loader, PBR materials, particle effects, shadows, post-processing, compute shaders, TSL. Integrations: WebGPU, physics engines, spatial audio.
sequential-thinking
Apply step-by-step analysis for complex problems with revision capability. Use for multi-step reasoning, hypothesis verification, adaptive planning, problem decomposition, course correction.
research
Research technical solutions, analyze architectures, gather requirements thoroughly. Use for technology evaluation, best practices research, solution design, scalability/security/maintainability analysis.