Skip to main content

Agent Development Kit

Project description

Agent Development Kit (ADK) 2.0

License PyPI version Python versions PyPI downloads Unit Tests Docs

An open-source, code-first Python framework for building, evaluating, and deploying sophisticated AI agents with flexibility and control.

Important Links: Docs, Samples & ADK Web.


⚠️ 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

pip install google-adk

Requirements: Python 3.10+.

For transitive dependency protection, we recommend to install with our companion constraints files (for python 3.10 to 3.14).

Choose the constraints file matching your Python version:

# For example, for Python 3.10
curl -o constraints-3.10.txt https://github.com/google/adk-python/blob/main/constraints-3.10.txt
pip install google-adk -c constraints-3.10.txt
rm constraints-3.10.txt

To install optional integrations, you can use the following command:

pip install "google-adk[extensions]"

The release cadence is roughly bi-weekly.

Quick Start

Beginner Note: ADK applications are built using two main classes: Agent (defines an AI's instructions, tools, and behavior) and Workflow (orchestrates agents and tasks in a graph-based flow).

Agent

from 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

from 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

# 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

🤝 Contributing

See CONTRIBUTING.md for details.

📄 License

This project is licensed under the Apache 2.0 License — see the LICENSE file for details.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

google_adk-2.6.0.tar.gz (3.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

google_adk-2.6.0-py3-none-any.whl (4.3 MB view details)

Uploaded Python 3

File details

Details for the file google_adk-2.6.0.tar.gz.

File metadata

  • Download URL: google_adk-2.6.0.tar.gz
  • Upload date:
  • Size: 3.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for google_adk-2.6.0.tar.gz
Algorithm Hash digest
SHA256 f0b30e26f22602c240faf0aea75b6b42b3487288da3335da3c8474bcc8c82f29
MD5 d4b1e1b563fef14f7483b5efc1f2120f
BLAKE2b-256 3083db3c747a3679f4c4c651e12351d660c8759fcdbcaca28dd44a48e155ff4a

See more details on using hashes here.

File details

Details for the file google_adk-2.6.0-py3-none-any.whl.

File metadata

  • Download URL: google_adk-2.6.0-py3-none-any.whl
  • Upload date:
  • Size: 4.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for google_adk-2.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f51556261cd2d53f45567ca3e9284299792549c57096f0b14c0ffe10a939c408
MD5 beab2b0dc9ad08d3a98ba59a46be8cd7
BLAKE2b-256 845d1864ab28ea2fe6f288c0a4b859e620819ac2ac48ddfe6f8096efb821f7c6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page