Adk python
An open-source, code-first Python toolkit for building, evaluating, and deploying sophisticated AI agents with flexibility and control.
An open-source, code-first Python framework for building, evaluating, and deploying sophisticated AI agents with flexibility and control. The project is written primarily in Python, distributed under the Apache License 2.0 license, first published in 2025. It has gained significant community traction with 19,926 stars and 3,479 forks on GitHub. Key topics include: agent, agentic, agentic-ai, agents, agents-sdk.
Agent Development Kit (ADK) 2.0
<h2 align="center"> <img src="https://raw.githubusercontent.com/google/adk-python/main/assets/agent-development-kit.png" width="256"/> </h2> <h3 align="center"> An open-source, code-first Python framework for building, evaluating, and deploying sophisticated AI agents with flexibility and control. </h3> <h3 align="center"> Important Links: <a href="https://google.github.io/adk-docs/">Docs</a>, <a href="https://github.com/google/adk-samples">Samples</a> & <a href="https://github.com/google/adk-web">ADK Web</a>. </h3>⚠️ BREAKING CHANGES FROM 1.x
This release includes breaking changes to the agent API, event model, and
session schema. Sessions generated by ADK 2.0 are readable by ADK 1.28+
(extra fields will be ignored), but are incompatible with older 1.x versions.
🔥 What's New in 2.0
-
Workflow Runtime: A graph-based execution engine for composing
deterministic execution flows for agentic apps, with support for routing,
fan-out/fan-in, loops, retry, state management, dynamic nodes,
human-in-the-loop, and nested workflows. -
Task API: Structured agent-to-agent delegation with multi-turn task
mode, single-turn controlled output, mixed delegation patterns,
human-in-the-loop, and task agents as workflow nodes.
🚀 Installation
bashpip install google-adk
Requirements: Python 3.11+.
To install optional integrations, you can use the following command:
bashpip install "google-adk[extensions]"
The release cadence is roughly bi-weekly.
Quick Start
Agent
pythonfrom google.adk import Agent root_agent = Agent( name="greeting_agent", model="gemini-2.5-flash", instruction="You are a helpful assistant. Greet the user warmly.", )
Workflow
pythonfrom google.adk import Agent, Workflow generate_fruit_agent = Agent( name="generate_fruit_agent", instruction="Return the name of a random fruit. Return only the name.", ) generate_benefit_agent = Agent( name="generate_benefit_agent", instruction="Tell me a health benefit about the specified fruit.", ) root_agent = Workflow( name="root_agent", edges=[("START", generate_fruit_agent, generate_benefit_agent)], )
Run Locally
bash# Interactive CLI adk run path/to/my_agent # Web UI (supports multi-agent directories or pointing directly to a single agent folder) adk web path/to/agents_dir
📚 Documentation
- Getting Started: https://google.github.io/adk-docs/
- Samples: See
contributing/workflow_samples/and
contributing/task_samples/for workflow and task API examples.
🤝 Contributing
See CONTRIBUTING.md for details.
📄 License
This project is licensed under the Apache 2.0 License — see the
LICENSE file for details.
Contributors
Showing top 12 contributors by commit count.