Google Agent Development Kit (ADK)
An open-source, code-first Python framework for building and deploying AI agents
Repository Health
Technical Analysis
Google’s Agent Development Kit (ADK) is a code-first Python framework for building, evaluating, and deploying sophisticated AI agents, optimized for (but not limited to) Gemini and the Google ecosystem. It centers on two core primitives — Agent, which defines an AI’s instructions, model, and tools, and Workflow, a graph-based execution engine for composing deterministic multi-agent flows with routing, fan-out/fan-in, loops, retries, and human-in-the-loop steps.
ADK 2.0 adds a structured Task API for agent-to-agent delegation (multi-turn task mode, single-turn controlled output, task agents as workflow nodes), and ships a CLI (adk run, adk web) for interactively running agents from the terminal or a local web UI. It integrates with FastAPI for serving agents, supports pluggable session backends, and includes a built-in evaluation module for testing agent behavior.
What You Get
- An
Agentclass combining a model, instructions, and tools into a reusable agent definition - A graph-based
Workflowruntime for composing agents with routing, fan-out/fan-in, loops, retry, and human-in-the-loop nodes - A Task API for structured agent-to-agent delegation, including multi-turn and single-turn task modes
- A CLI (
adk run,adk web) for running agents interactively from the terminal or a local web UI - Built-in evaluation tooling, session management, memory, and pluggable model/tool integrations
Common Use Cases
- Building production multi-agent systems with deterministic, auditable execution graphs instead of freeform agent loops
- Prototyping and iterating on Gemini-powered agents locally via the
adk webUI before deployment - Delegating subtasks between specialized agents using the Task API’s structured agent-to-agent protocol
- Evaluating agent behavior systematically using ADK’s built-in evaluation framework before shipping changes
Under The Hood
Architecture — The package is organized under src/google/adk/ into clearly separated concerns: agents/ (the core Agent abstraction), workflow/ (the graph-based execution engine), flows/ and events/ (execution and event propagation), sessions/ and memory/ (state persistence across turns), tools/ and code_executors/ (agent capabilities), models/ (LLM provider integrations), cli/ (the adk run/adk web entry points), evaluation/ (agent test harnesses), a2a/ (agent-to-agent protocol support), and telemetry//errors/ for observability. This modular layout lets the Workflow runtime orchestrate Agent instances as graph nodes while keeping model access, tool execution, and persistence as separately swappable layers.
Tech Stack — Pure Python (3.10+), built on FastAPI for serving, google-genai for Gemini model access, authlib and google-auth for authentication, aiosqlite for lightweight session storage, click for the CLI, and graphviz for workflow visualization. The project uses flit_core as its build backend and ships type-checked (Typing :: Typed) code.
Code Quality — A dedicated tests/ directory and tox.ini support multi-environment testing, and the project maintains pylintrc for lint enforcement. Development velocity is very high (274 commits/month, 71 releases at roughly bi-weekly cadence per the health-score data), reflecting active first-party maintenance by Google’s GenAI team, though the fast pace also means the README explicitly flags breaking changes between major versions (e.g. 1.x → 2.0 session schema changes).
API Design — The Agent/Workflow split keeps the common case trivial (a single Agent with a name, model, and instruction) while scaling to complex graphs via Workflow(edges=[...]) composition, and the CLI mirrors this with zero-config adk run/adk web commands that just point at an agent directory. Extensive first-party documentation (docs/, llms.txt/llms-full.txt for LLM-assisted onboarding, and separate adk-samples/adk-web companion repos) lowers the learning curve for a framework with genuinely broad surface area.
Used by 3 apps in this directory
Agent Control
AI Agents
An open-source runtime control plane for AI agents — define safety guardrails once, apply them across agents built on LangChain, CrewAI, Google ADK, or AWS Strands, and update controls without redeploying code.
e2a
AI Agents · Automation
Give your AI agents a real, authenticated email address — with SPF/DKIM-verified inbound, HMAC-signed delivery, WebSocket fan-out, and human-in-the-loop approval built in.
Promptfoo
AI Development
An open-source CLI and library for evaluating and red-teaming LLM applications — replace trial-and-error prompt engineering with systematic evals, vulnerability scanning, and CI/CD integration.