freshcrate
Skin:/
Home > AI Agents > adk-python

adk-python

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

Why this rank:Strong adoptionRecent releaseHealthy release cadence

Description

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

README

Agent Development Kit (ADK)

License PyPI Python Unit Tests r/agentdevelopmentkitAsk Code Wiki

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

Important Links: Docs, Samples, Java ADK, Go ADK & ADK Web.

Agent Development Kit (ADK) is a flexible and modular framework that applies software development principles to AI agent creation. It is designed to simplify building, deploying, and orchestrating agent workflows, from simple tasks to complex systems. While optimized for Gemini, ADK is model-agnostic, deployment-agnostic, and compatible with other frameworks.


đŸ”Ĩ What's new

  • Custom Service Registration: Add a service registry to provide a generic way to register custom service implementations to be used in FastAPI server. See short instruction. (391628f)

  • Rewind: Add the ability to rewind a session to before a previous invocation (9dce06f).

  • New CodeExecutor: Introduces a new AgentEngineSandboxCodeExecutor class that supports executing agent-generated code using the Vertex AI Code Execution Sandbox API (ee39a89)

✨ Key Features

  • Rich Tool Ecosystem: Utilize pre-built tools, custom functions, OpenAPI specs, MCP tools or integrate existing tools to give agents diverse capabilities, all for tight integration with the Google ecosystem.

  • Code-First Development: Define agent logic, tools, and orchestration directly in Python for ultimate flexibility, testability, and versioning.

  • Agent Config: Build agents without code. Check out the Agent Config feature.

  • Tool Confirmation: A tool confirmation flow(HITL) that can guard tool execution with explicit confirmation and custom input.

  • Modular Multi-Agent Systems: Design scalable applications by composing multiple specialized agents into flexible hierarchies.

  • Deploy Anywhere: Easily containerize and deploy agents on Cloud Run or scale seamlessly with Vertex AI Agent Engine.

🚀 Installation

Stable Release (Recommended)

You can install the latest stable version of ADK using pip:

pip install google-adk

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

pip install "google-adk[extensions]"

The release cadence is roughly bi-weekly.

This version is recommended for most users as it represents the most recent official release.

Development Version

Bug fixes and new features are merged into the main branch on GitHub first. If you need access to changes that haven't been included in an official PyPI release yet, you can install directly from the main branch:

pip install git+https://github.com/google/adk-python.git@main

Note: The development version is built directly from the latest code commits. While it includes the newest fixes and features, it may also contain experimental changes or bugs not present in the stable release. Use it primarily for testing upcoming changes or accessing critical fixes before they are officially released.

🤖 Agent2Agent (A2A) Protocol and ADK Integration

For remote agent-to-agent communication, ADK integrates with the A2A protocol. See this example for how they can work together.

📚 Documentation

Explore the full documentation for detailed guides on building, evaluating, and deploying agents:

🏁 Feature Highlight

Define a single agent:

from google.adk.agents import Agent
from google.adk.tools import google_search

root_agent = Agent(
    name="search_assistant",
    model="gemini-2.5-flash", # Or your preferred Gemini model
    instruction="You are a helpful assistant. Answer user questions using Google Search when needed.",
    description="An assistant that can search the web.",
    tools=[google_search]
)

Define a multi-agent system:

Define a multi-agent system with coordinator agent, greeter agent, and task execution agent. Then ADK engine and the model will guide the agents to work together to accomplish the task.

from google.adk.agents import LlmAgent, BaseAgent

# Define individual agents
greeter = LlmAgent(name="greeter", model="gemini-2.5-flash", ...)
task_executor = LlmAgent(name="task_executor", model="gemini-2.5-flash", ...)

# Create parent agent and assign children via sub_agents
coordinator = LlmAgent(
    name="Coordinator",
    model="gemini-2.5-flash",
    description="I coordinate greetings and tasks.",
    sub_agents=[ # Assign sub_agents here
        greeter,
        task_executor
    ]
)

Development UI

A built-in development UI to help you test, evaluate, debug, and showcase your agent(s).

Evaluate Agents

adk eval \
    samples_for_testing/hello_world \
    samples_for_testing/hello_world/hello_world_eval_set_001.evalset.json

🤝 Contributing

We welcome contributions from the community! Whether it's bug reports, feature requests, documentation improvements, or code contributions, please see our

Community Repo

We have adk-python-community repo that is home to a growing ecosystem of community-contributed tools, third-party service integrations, and deployment scripts that extend the core capabilities of the ADK.

Vibe Coding

If you want to develop agent via vibe coding the llms.txt and the llms-full.txt can be used as context to LLM. While the former one is a summarized one and the later one has the full information in case your LLM has big enough context window.

Community Events

  • [Completed] ADK's 1st community meeting on Wednesday, October 15, 2025. Remember to join our group to get access to the recording, and deck.

📄 License

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


Happy Agent Building!

Release History

VersionChangesUrgencyDate
v2.2.0 ## [2.2.0](https://github.com/google/adk-python/compare/v2.1.0...v2.2.0) (2026-06-04) ### ⚠ BREAKING CHANGES * **agents:** `LlmAgent` default model changed from `gemini-2.5-flash` to `gemini-3-flash-preview` (a preview model), ahead of the 2026-10-16 `gemini-2.5-flash` shutdown. Agents without an explicit `model=` now run on the new preview default; set `model="gemini-2.5-flash"` to retain prior behavior. `DEFAULT_LIVE_MODEL` is unchanged. ([ad8b6c7](https://github.com/google/adk-pytHigh6/4/2026
v1.34.1## [1.34.1](https://github.com/google/adk-python/compare/v1.34.0...v1.34.1) (2026-05-22) ### Bug Fixes * Fix bug where grounding metadata in Gemini 3.1 live was being silently discarded ([9b6b9e9](https://github.com/google/adk-python/commit/9b6b9e976300ab223c77075554d6cd66ce1179ff)) * fix input and output transcription finished events for Gemini v3.1 ([13763d7](https://github.com/google/adk-python/commit/13763d71f883b215dae08feb3f042869b9cd5d18)) * **tools:** Prevent session drop on MCP tool High5/23/2026
v2.1.0## [2.1.0](https://github.com/google/adk-python/compare/v2.0.0...v2.1.0) (2026-05-23) ### Features * Add chart generation and artifact loading to data agent ([db06416](https://github.com/google/adk-python/commit/db064160bf634b1c7e644012076f077cde6cfcef)) * Add support for creating sandboxes from templates and snapshots ([cbd14eb](https://github.com/google/adk-python/commit/cbd14ebf99bbff22ed28273f095f1fc05793bed2)) * Add user.id to gen_ai.user.message log records for telemetry ([eb379bMedium5/23/2026
v2.1.0## [2.1.0](https://github.com/google/adk-python/compare/v2.0.0...v2.1.0) (2026-05-23) ### Features * Add chart generation and artifact loading to data agent ([db06416](https://github.com/google/adk-python/commit/db064160bf634b1c7e644012076f077cde6cfcef)) * Add support for creating sandboxes from templates and snapshots ([cbd14eb](https://github.com/google/adk-python/commit/cbd14ebf99bbff22ed28273f095f1fc05793bed2)) * Add user.id to gen_ai.user.message log records for telemetry ([eb379bMedium5/23/2026
v2.1.0## [2.1.0](https://github.com/google/adk-python/compare/v2.0.0...v2.1.0) (2026-05-23) ### Features * Add chart generation and artifact loading to data agent ([db06416](https://github.com/google/adk-python/commit/db064160bf634b1c7e644012076f077cde6cfcef)) * Add support for creating sandboxes from templates and snapshots ([cbd14eb](https://github.com/google/adk-python/commit/cbd14ebf99bbff22ed28273f095f1fc05793bed2)) * Add user.id to gen_ai.user.message log records for telemetry ([eb379bMedium5/23/2026
v2.1.0## [2.1.0](https://github.com/google/adk-python/compare/v2.0.0...v2.1.0) (2026-05-23) ### Features * Add chart generation and artifact loading to data agent ([db06416](https://github.com/google/adk-python/commit/db064160bf634b1c7e644012076f077cde6cfcef)) * Add support for creating sandboxes from templates and snapshots ([cbd14eb](https://github.com/google/adk-python/commit/cbd14ebf99bbff22ed28273f095f1fc05793bed2)) * Add user.id to gen_ai.user.message log records for telemetry ([eb379bMedium5/23/2026
v2.1.0## [2.1.0](https://github.com/google/adk-python/compare/v2.0.0...v2.1.0) (2026-05-23) ### Features * Add chart generation and artifact loading to data agent ([db06416](https://github.com/google/adk-python/commit/db064160bf634b1c7e644012076f077cde6cfcef)) * Add support for creating sandboxes from templates and snapshots ([cbd14eb](https://github.com/google/adk-python/commit/cbd14ebf99bbff22ed28273f095f1fc05793bed2)) * Add user.id to gen_ai.user.message log records for telemetry ([eb379bMedium5/23/2026
v2.1.0## [2.1.0](https://github.com/google/adk-python/compare/v2.0.0...v2.1.0) (2026-05-23) ### Features * Add chart generation and artifact loading to data agent ([db06416](https://github.com/google/adk-python/commit/db064160bf634b1c7e644012076f077cde6cfcef)) * Add support for creating sandboxes from templates and snapshots ([cbd14eb](https://github.com/google/adk-python/commit/cbd14ebf99bbff22ed28273f095f1fc05793bed2)) * Add user.id to gen_ai.user.message log records for telemetry ([eb379bMedium5/23/2026
v1.34.0## [1.34.0](https://github.com/google/adk-python/compare/v1.33.0...v1.34.0) (2026-05-18) ### Features * **a2a:** add support for persistent task stores ([cd78d87](https://github.com/google/adk-python/commit/cd78d87b967111d40d429bcf9552a962b7e9614f)) * add general support for Gemini Live API in ADK evaluate ([790c9be](https://github.com/google/adk-python/commit/790c9bef9a336ea000d0cf68e63b025dfead5227)) * Add mTLS support to Google Cloud Telemetry exporter ([cfe8d2c](https://github.com/google/High5/18/2026
v1.33.0## [1.33.0](https://github.com/google/adk-python/compare/v1.32.0...v1.33.0) (2026-05-08) ### Features * add BufferableSessionService ([0bc767e](https://github.com/google/adk-python/commit/0bc767e6892742d6290d3445d028f95925187aed)) * **apigee:** allow injecting credentials into ApigeeLlm ([ce578ff](https://github.com/google/adk-python/commit/ce578fffa0dc02b0033f7f5e705b9422cbd6c252)) * Make ADK environment tools truncation limit configurable ([83ae405](https://github.com/google/adk-pythHigh5/8/2026
v1.32.0## [1.32.0](https://github.com/google/adk-python/compare/v1.31.0...v1.32.0) (2026-04-30) ### Features * Add an option to prevent the SaveFilesAsArtifactsPlugin from attaching reference file parts to the message ([987c809](https://github.com/google/adk-python/commit/987c809bfc816a9804c905bd5c02397e396e72d3)) * add credentials parameter to BigQueryAgentAnalyticsPlugin ([34713fb](https://github.com/google/adk-python/commit/34713fb4cccae9fe066587459862f8d4c4aa166f)) * Add express mode onboarding High5/1/2026
v1.31.1## [1.32.0](https://github.com/google/adk-python/compare/v1.31.0...v1.32.0) (2026-04-21) ### Bug Fixes * block RCE vulnerability via nested YAML configurations in ADK ([e283ea0](https://github.com/google/adk-python/commit/e283ea04b2056f58632e07276b212274a0fba1e8)) * bump Vertex SDK version ([21ebe29](https://github.com/google/adk-python/commit/21ebe29c9d930940235cbac50524ffd92d314fa7)) * Disable bound token for mcp_tool ([d0afddd](https://github.com/google/adk-python/commit/d0afddda4ceHigh4/21/2026
v1.31.0## [1.31.0](https://github.com/google/adk-python/compare/v1.30.0...v1.31.0) (2026-04-16) ### Features * New Live UI: Redesigned the real-time chat and testing interface for a cleaner, more responsive user experience. * Session Display Names: Added the ability to name and organize debug sessions for easier tracking. * New Events and Trace View: Overhauled the execution log into a structured trace for better visibility into agent logic. * New Graph View: Introduced a visual canvas to maHigh4/17/2026
v1.30.0## [1.30.0](https://github.com/google/adk-python/compare/v1.29.0...v1.30.0) (2026-04-13) ### Features * Add Auth Provider support to agent registry ([f2c68eb](https://github.com/google/adk-python/commit/f2c68eb1536f1c0018c2cf7ee3f4417ca442080c)) * Add Parameter Manager integration to ADK ([b0715d7](https://github.com/google/adk-python/commit/b0715d77a2a433bb2ed07a2475cc4d1f2d662b6c)) * Add support for Gemma 4 models in ADK ([9d4ecbe](https://github.com/google/adk-python/commit/9d4ecbe9Medium4/13/2026
v2.0.0a3### Features * **Workflow Orchestration:** Added Workflow(BaseNode) graph orchestration implementation, support for lazy scan deduplication and resume for dynamic nodes, partial resume for nested workflows, and state/artifact delta bundling onto yielded events. * **CLI and Web UI:** Added support for Workflow graph visualization in web UI, improved graph readability with distinct icons and shapes, and active node rendering in event graph. * **Documentation:** Added reference documentation fMedium4/9/2026
v1.29.0# Changelog ## [1.29.0](https://github.com/google/adk-python/compare/v1.28.0...v1.29.0) (2026-04-09) ### Features * Add auth scheme/credential support to MCP toolsets in Agent Registry ([7913a3b](https://github.com/google/adk-python/commit/7913a3b76432caf16953ea7b2a2cf4872baad417)) * add ability to block shell metacharacters in BashTool ([23bd95b](https://github.com/google/adk-python/commit/23bd95bcf23367a8df3342ca4bb9d17f0b3b0d8f)) * add configurable resource limits for subprocesseHigh4/9/2026
v1.28.1## [1.28.1](https://github.com/google/adk-python/compare/v1.28.0...v1.28.1) (2026-04-02) ### Features * **live:** support live for `gemini-3.1-flash-live-preview` model ([ee69661](https://github.com/google/adk-python/commit/ee69661a616056fa89e0ec2188aaa59bd714d8c9)) ### Bug Fixes * Disallow args on /builder and Add warning about Web UI usage to CLI help ([f037f68](https://github.com/google/adk-python/commit/f037f68d67ae1bd16b00df0c7523fb67cbd1e911)) * **live:** Buffer tool callsHigh4/2/2026
v2.0.0a2## [2.0.0-alpha.2](https://github.com/google/adk-python/compare/v2.0.0-alpha.1...v2.0.0-alpha.2) (2026-03-26) ### Bug Fixes * add agent name validation to prevent arbitrary module imports ([be094f7](https://github.com/google/adk-python/commit/be094f7e50e3976cb69468c7a8d17f3385132c41)) * add protection for arbitrary module imports ([0019801](https://github.com/google/adk-python/commit/0019801f6080a371a71b09cbd8291f2e79a49336)), closes [#4947](https://github.com/google/adk-python/issues/494Medium3/27/2026
v1.28.0## [1.28.0](https://github.com/google/adk-python/compare/v1.27.5...v1.28.0) (2026-03-26) ### Features * **a2a:** add lifespan parameter to to_a2a() ([0f4c807](https://github.com/google/adk-python/commit/0f4c8073e5a180a220f88928d67ee8d521486f03)), closes [#4701](https://github.com/google/adk-python/issues/4701) * Add a new extension for the new version of ADK-A2A integration ([6f0dcb3](https://github.com/google/adk-python/commit/6f0dcb3e26dd82fed1a8564c17a47eec03b04617)) * Add ability tMedium3/26/2026
v1.27.5## [1.27.5](https://github.com/google/adk-python/compare/v1.27.4...v1.27.5) (2026-03-26) ### Bug Fixes * Update eval extras to Vertex SDK package version with constrained LiteLLM upperbound ([77928a8](https://github.com/google/adk-python/commit/77928a81c39a955c2559b80d3ce137d6503b5264))Medium3/26/2026
v1.27.4## [1.27.4](https://github.com/google/adk-python/compare/v1.27.3...v1.27.4) (2026-03-24) ### Bug Fixes * Exclude compromised LiteLLM versions from dependencies pin to 1.82.6 ([fa5e707](https://github.com/google/adk-python/commit/fa5e707c11ad748e7db2f653b526d9bdc4b7d405)) * gate builder endpoints behind web flag ([44b3f72](https://github.com/google/adk-python/commit/44b3f72d8f4ee09461d0acd8816149e801260b84)) Medium3/24/2026
v1.27.3## [1.27.3](https://github.com/google/adk-python/compare/v1.27.2...v1.27.3) (2026-03-23) ### Bug Fixes * add protection for arbitrary module imports ([276adfb](https://github.com/google/adk-python/commit/276adfb7ad552213c0201a3c95efbc9876bf3b66)) Medium3/23/2026
v2.0.0a1## Features Introduces two major capabilities: * **Workflow runtime:** 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 nodeLow3/18/2026
v1.27.2### Bug Fixes * Use valid dataplex OAuth scope for BigQueryToolset ([4010716](https://github.com/google/adk-python/commit/4010716470fc83918dc367c5971342ff551401c8)) * Store and retrieve usage_metadata in Vertex AI custom_metadata ([b318eee](https://github.com/google/adk-python/commit/b318eee979b1625d3d23ad98825c88f54016a12f)) Low3/17/2026
v1.27.1### Bug Fixes * Rolling back change to fix issue affecting LlmAgent creation due to missing version field ([0e18f81](https://github.com/google/adk-python/commit/0e18f81a5cd0d0392ded653b1a63a236449a2685)) Low3/13/2026
v1.27.0### Features * **[Core]** * Introduce A2A request interceptors in RemoteA2aAgent ([6f772d2](https://github.com/google/adk-python/commit/6f772d2b0841446bc168ccf405b59eb17c1d671a)) * Add UiWidget to EventActions for supporting new experimental UI Widgets feature ([530ff06](https://github.com/google/adk-python/commit/530ff06ece61a93855a53235e85af18b46b2a6a0)) * **auth:** Add pluggable support for auth integrations using AuthProviderRegistry within CredentialManager ([d004074](https://githLow3/12/2026
v1.26.0## [1.26.0](https://github.com/google/adk-python/compare/v1.25.1...v1.26.0) (2026-02-26) ### Features * **[Core]** * Add intra-invocation compaction and token compaction pre-request ([485fcb8](https://github.com/google/adk-python/commit/485fcb84e3ca351f83416c012edcafcec479c1db)) * Use `--memory_service_uri` in ADK CLI run command ([a7b5097](https://github.com/google/adk-python/commit/a7b509763c1732f0363e90952bb4c2672572d542)) * **[Models]** * Add `/chat/completions` integratiLow2/26/2026
v1.25.1## [1.25.1](https://github.com/google/adk-python/compare/v1.25.0...v1.25.1) (2026-02-18) ### Bug Fixes * Fix pickling lock errors in McpSessionManager ([4e2d615](https://github.com/google/adk-python/commit/4e2d6159ae3552954aaae295fef3e09118502898)) Low2/18/2026
v1.25.0## [1.25.0](https://github.com/google/adk-python/compare/v1.24.1...v1.25.0) (2026-02-11) ### Features * **[Core]** * Add a demo for the simple prompt optimizer for the optimization interface ([0abf4cd](https://github.com/google/adk-python/commit/0abf4cd2c7103a071506c9398455a3bd66fe5da5)) * Add `--auto_create_session` flag to `adk api_server` CLI ([40c15d0](https://github.com/google/adk-python/commit/40c15d059599472b40f48272a464eb3cb7345fc6)) * Add `add_events_to_memory` facade forLow2/11/2026
v1.24.1## [1.24.1](https://github.com/google/adk-python/compare/v1.24.0...v1.24.1) (2026-02-06) ### Bug Fixes * Add back deprecated eval endpoint for web until we migrate([ae993e8](https://github.com/google/adk-python/commit/ae993e884f44db276a4116ebb7a11a2fb586dbfe)) * Update eval dialog colors, and fix a2ui component types ([3686a3a](https://github.com/google/adk-python/commit/3686a3a98f46738549cd7a999f3773b7a6fd1182)) Low2/6/2026
v1.24.0## [1.24.0](https://github.com/google/adk-python/compare/v1.23.0...v1.24.0) (2026-02-04) ### ⚠ BREAKING CHANGES * Breaking: Make credential manager accept `tool_context` instead of `callback_context` ([fe82f3c](https://github.com/google/adk-python/commit/fe82f3cde854e49be13d90b4c02d786d82f8a202)) ### Highlights * **[Web]** * **Consolidated Event View**: Replaced the Event tab with a more intuitive "click-to-expand" interaction on message rows, enabling faster debugging within the Low2/5/2026
v1.23.0## [1.23.0](https://github.com/google/adk-python/compare/v1.22.1...v1.23.0) (2026-01-22) ### ⚠ BREAKING CHANGES * Breaking: Use OpenTelemetry for BigQuery plugin tracing, replacing custom `ContextVar` implementation ([ab89d12](https://github.com/google/adk-python/commit/ab89d1283430041afb303834749869e9ee331721)) ### Features * **[Core]** * Add support to automatically create a session if one does not exist ([8e69a58](https://github.com/google/adk-python/commit/8e69a58df4eadeccbb10Low1/22/2026
v1.22.1### Bug Fixes * Add back `adk migrate session` CLI ([8fb2be2](https://github.com/google/adk-python/commit/8fb2be216f11dabe7fa361a0402e5e6316878ad8)). * Escape database reserved keyword ([94d48fc](https://github.com/google/adk-python/commit/94d48fce32a1f07cef967d50e82f2b1975b4abd9)). Low1/12/2026
v1.22.0### Features * **[Core]** * Make `LlmAgent.model` optional with a default fallback ([b287215](https://github.com/google/adk-python/commit/b28721508a41bf6bcfef52bbc042fb6193a32dfa)). * Support regex for allowed origins ([2ea6e51](https://github.com/google/adk-python/commit/2ea6e513cff61d3f330274725c66f82fce4ba259)). * Enable PROGRESSIVE_SSE_STREAMING feature by default ([0b1cff2](https://github.com/google/adk-python/commit/0b1cff2976d1c04acf3863f76107b05d1cec448f)). * **[Evals]** Low1/8/2026
v1.21.0## [1.21.0](https://github.com/google/adk-python/compare/v1.20.0...v1.21.0) (2025-12-11) ### Features * **[Interactions API Support]** * The newly released Gemini [Interactions API](https://ai.google.dev/gemini-api/docs/interactions) is supported in ADK Now. To use it: ```Python Agent( model=Gemini( model="gemini-3-pro-preview", use_interactions_api=True, ), name="...", description="...", instruction="...", ) ``` see [samples](httpLow12/12/2025
v1.20.0## [1.20.0](https://github.com/google/adk-python/compare/v1.19.0...v1.20.0) (2025-12-01) ### Features * **[Core]** * Add enum constraint to `agent_name` for `transfer_to_agent` ([4a42d0d](https://github.com/google/adk-python/commit/4a42d0d9d81b7aab98371427f70a7707dbfb8bc4)) * Add validation for unique sub-agent names ([#3557](https://github.com/google/adk-python/issues/3557)) ([2247a45](https://github.com/google/adk-python/commit/2247a45922afdf0a733239b619f45601d9b325ec)) * SupporLow12/3/2025
v1.19.0## [1.19.0](https://github.com/google/adk-python/compare/v1.18.0...v1.19.0) (2025-11-19) ### Highlights * **Breaking**! Raise minimum Python version to 3.10 * Add a File based Artifact Service * Reduce ADK API server startup latency by lazy loading * ADK web light mode support * BigQuery Agent Analytics Plugin ### Features * **[Core]** * Add `id` and `custom_metadata` fields to `MemoryEntry` ([4dd28a3](https://github.com/google/adk-python/commit/4dd28a3970d0f76c571caf80b3e1bLow11/20/2025
v1.18.0## [1.18.0](https://github.com/google/adk-python/compare/v1.17.0...v1.18.0) (2025-11-05) ### Features * **[ADK Visual Agent Builder]** * Core Features * Visual workflow designer for agent creation * Support for multiple agent types (LLM, Sequential, Parallel, Loop, Workflow) * Agent tool support with nested agent tools * Built-in and custom tool integration * Callback management for all ADK callback types (before/after agent, model, tool) * Assistant to helLow11/5/2025
v1.17.0 ## [1.17.0](https://github.com/google/adk-python/compare/v1.16.0...v1.17.0) (2025-10-22) ### Features * **[Core]** * Add a service registry to provide a generic way to register custom service implementations to be used in FastAPI server. See short instruction [here](https://github.com/google/adk-python/discussions/3175#discussioncomment-14745120). ([391628f](https://github.com/google/adk-python/commit/391628fcdc7b950c6835f64ae3ccab197163c990)) * Add the ability to rewind a session Low10/22/2025
v1.16.0## [1.16.0](https://github.com/google/adk-python/compare/v1.15.1...v1.16.0) (2025-10-08) ### Features * **[Core]** * Implementation of LLM context compaction ([e0dd06f](https://github.com/google/adk-python/commit/e0dd06ff04f9d3c2f022873ce145aaae2de02f45)) * Support pause and resume an invocation in ADK ([ce9c39f](https://github.com/google/adk-python/commit/ce9c39f5a85ed12c22009693b5e6bc65f4641633), [2f1040f](https://github.com/google/adk-python/commit/2f1040f296db365080b62d6372474d90Low10/9/2025
v1.15.1## [1.15.1](https://github.com/google/adk-python/compare/v1.15.0...v1.15.1) (2025-09-26) ### Bug Fixes * Fix the deployment failure for Agent Engine ([e172811](https://github.com/google/adk-python/commit/e172811bc7173b9004572f2a2afc7024145d7713))Low9/26/2025
v1.15.0## [1.15.0](https://github.com/google/adk-python/compare/v1.14.1...v1.15.0) (2025-09-24) ### Features * [Core] * Adding the ContextFilterPlugin ([a06bf27](https://github.com/google/adk-python/commit/a06bf278cbc89f521c187ed51b032d82ffdafe2d)) * Adds plugin to save artifacts for issue [#2176](https://github.com/google/adk-python/issues/2176) ([657369c](https://github.com/google/adk-python/commit/657369cffe142ef3745cd5950d0d24a49f42f7fd)) * Expose log probs of candidates in LlmResponLow9/26/2025
v1.14.1## 1.14.1 (2025-09-14) ### Bug Fixes * Fix logging issues with RemoteA2aAgent [0c1f1fa](https://github.com/google/adk-python/commit/0c1f1fadeb5a6357af9cad0eff5d5e7103fc88b0)Low9/15/2025
v1.14.0## [1.14.0](https://github.com/google/adk-python/compare/v1.13.0...v1.14.0) (2025-09-10) ### Features * [A2A] * Allow users to pass their own agent card to to_a2a method [a1679da](https://github.com/google/adk-python/commit/a1679dae3fef70f1231afba3e97d45b59c314ae3) * Allow custom part converters in A2A classes [b05fef9](https://github.com/google/adk-python/commit/b05fef9ba71f95ab2658eb4eb5608c141d49f82f) * [Tools] * Allow setting agent/application name and compute project for BigLow9/10/2025
v1.13.0## 1.13.0 (2025-08-27) ### Features * [Tools] Add the ask_data_insights tool for natural language queries on BigQuery data [47b88d2](https://github.com/google/adk-python/commit/47b88d2b06d247a698915ebf74564dbb5d81153e) ### Bug Fixes * Add the missing `from_config` class method in BaseToolset [2dd432c](https://github.com/google/adk-python/commit/2dd432cc1fe265a79986a28e2afb59ee2c83abb3) * Change LlmResponse to use Content for transcriptions [3b997a0](https://github.com/google/adk-pytLow8/27/2025
v1.12.0### Features **[Agent Config]** 🌟 **NEW FEATURE**: Support using config file (YAML) to author agents in addition to python code. See the [documentation](https://google.github.io/adk-docs/agents/config/) for details. * [Agent Config] Support deploying config agent to Agent Engine in CLI ([b3b7003](https://github.com/google/adk-python/commit/b3b70035c432670a5f0b5cdd1e9467f43b80495c)) * [Tools] Add a dedicated Bigtable toolset to provide an easier, integrated way to interact with Bigtable foLow8/21/2025
v1.11.0## [1.11.0](https://github.com/google/adk-python/compare/v1.10.0...v1.11.0) (2025-08-14) ### Features * [Tools] Support adding prefix to tool names returned by toolset ([ebd726f](https://github.com/google/adk-python/commit/ebd726f1f5e0a76f383192cace4a80a83204325b)) * [Eval] Expose `print_detailed_results` param to `AgentEvaluator.evaluate` ([7e08808](https://github.com/google/adk-python/commit/7e0880869b340e9a5e0d68d6936219e64ab41212)) * [Tools] Add Spanner toolset (breaking change to BiLow8/14/2025
v1.10.0## [1.10.0](https://github.com/google/adk-python/compare/v1.9.0...v1.10.0) (2025-08-07) ### Features * [Live] Implement Live Session Resumption ([71fbc92](https://github.com/google/adk-python/commit/71fbc9275b3d74700ec410cb4155ba0cb18580b7)) * [Tool] Support parallel execution of parallel function calls ([57cd41f](https://github.com/google/adk-python/commit/57cd41f424b469fb834bb8f2777b5f7be9aa6cdf)) * [Tool] Create enterprise_web_search_tool as a tool instance ([0e28d64](https://github.cLow8/7/2025
v1.9.0## [1.9.0](https://github.com/google/adk-python/compare/v1.8.0...v1.9.0) (2025-07-31) ### Features * [CLI] Add `-v`, `--verbose` flag to enable DEBUG logging as a shortcut for `--log_level DEBUG` ([3be0882](https://github.com/google/adk-python/commit/3be0882c63bf9b185c34bcd17e03769b39f0e1c5)) * [CLI] Add a CLI option to update an agent engine instance ([206a132](https://github.com/google/adk-python/commit/206a13271e5f1bb0bb8114b3bb82f6ec3f030cd7)) * [CLI] Modularize fast_api.py to alloLow7/31/2025
v1.8.0## [1.8.0](https://github.com/google/adk-python/compare/v1.7.0...v1.8.0) (2025-07-23) ### Features * [Core]Add agent card builder ([18f5bea](https://github.com/google/adk-python/commit/18f5bea411b3b76474ff31bfb2f62742825b45e5)) * [Core]Add an to_a2a util to convert adk agent to A2A ASGI application ([a77d689](https://github.com/google/adk-python/commit/a77d68964a1c6b7659d6117d57fa59e43399e0c2)) * [Core]Add camel case converter for agents ([0e173d7](https://github.com/google/adk-python/coLow7/23/2025
v1.7.0## 1.7.0 (2025-07-16) ### Features * Add ability to send state change with message [3f9f773](https://github.com/google/adk-python/commit/3f9f773d9b5fcca343e32f76f6d5677b7cf4c327) * [Eval] Support for persisting eval run results [bab3be2](https://github.com/google/adk-python/commit/bab3be2cf31dc9afd00bcce70103bdaa5460f1a3) * Introduce [Plugin]: Plugin is simply a class that packages these individual callback functions together for a broader purpose[162228d](https://github.com/google/adk-pLow7/16/2025
v1.6.1## [1.6.1](https://github.com/google/adk-python/compare/v1.5.0...v1.6.1) (2025-07-09) ### Features * Add A2A support as experimental features [f0183a9](https://github.com/google/adk-python/commit/f0183a9b98b0bcf8aab4f948f467cef204ddc9d6) * Install google-adk with a2a extra: pip install google-adk[a2a] * Users can serve agents as A2A agent with `--a2a` option for `adk web` and `adk api_server` * Users can run a remote A2A agent with `RemoteA2AAgent` class * Three A2A agent Low7/10/2025
v1.5.0## [1.5.0](https://github.com/google/adk-python/compare/v1.4.2...v1.5.0) (2025-06-25) ### Features * Add a new option `eval_storage_uri` in adk web & adk eval to specify GCS bucket to store eval data ([fa025d7](https://github.com/google/adk-python/commit/fa025d755978e1506fa0da1fecc49775bebc1045)) * Add ADK examples for litellm with add_function_to_prompt ([f33e090](https://github.com/google/adk-python/commit/f33e0903b21b752168db3006dd034d7d43f7e84d)) * Add implementation of VertexAiMemLow6/25/2025
v1.4.2## [1.4.2](https://github.com/google/adk-python/compare/v1.4.1...v1.4.2) (2025-06-20) ### Bug Fixes * Add type checking to handle different response type of genai API client ([4d72d31](https://github.com/google/adk-python/commit/4d72d31b13f352245baa72b78502206dcbe25406)) * This fixes the broken VertexAiSessionService * Allow more credentials types for BigQuery tools ([2f716ad](https://github.com/google/adk-python/commit/2f716ada7fbcf8e03ff5ae16ce26a80ca6fd7bf6))Low6/20/2025
v1.4.1## [1.4.1](https://github.com/google/adk-python/compare/v1.3.0...v1.4.1) (2025-06-18) ### Features * Add Authenticated Tool (Experimental) ([dcea776](https://github.com/google/adk-python/commit/dcea7767c67c7edfb694304df32dca10b74c9a71)) * Add enable_affective_dialog and proactivity to run_config and llm_request ([fe1d5aa](https://github.com/google/adk-python/commit/fe1d5aa439cc56b89d248a52556c0a9b4cbd15e4)) * Add import session API in the fast API ([233fd20](https://github.com/google/aLow6/19/2025
v1.3.0## [1.3.0](https://github.com/google/adk-python/compare/v1.2.1...v1.3.0) (2025-06-11) ### Features * Add memory_service option to CLI ([416dc6f](https://github.com/google/adk-python/commit/416dc6feed26e55586d28f8c5132b31413834c88)) * Add support for display_name and description when deploying to agent engine ([aaf1f9b](https://github.com/google/adk-python/commit/aaf1f9b930d12657bfc9b9d0abd8e2248c1fc469)) * Dev UI: Trace View * New trace tab which contains all traces grouped by user Low6/13/2025
v1.2.1## [1.2.1](https://github.com/google/adk-python/compare/v1.2.0...v1.2.1) (2025-06-04) ### Bug Fixes * Import deprecated from typing_extensions ([068df04](https://github.com/google/adk-python/commit/068df04bcef694725dd36e09f4476b5e67f1b456)) Low6/4/2025
v1.2.0## [1.2.0](https://github.com/google/adk-python/compare/v1.1.1...v1.2.0) (2025-06-04) ### Features * Add agent engine as a deployment option to the ADK CLI ([2409c3e](https://github.com/google/adk-python/commit/2409c3ef192262c80f5328121f6dc4f34265f5cf)) * Add an option to use gcs artifact service in adk web. ([8d36dbd](https://github.com/google/adk-python/commit/8d36dbda520b1c0dec148e1e1d84e36ddcb9cb95)) * Add index tracking to handle parallel tool call using litellm ([05f4834](https:/Low6/4/2025
v1.1.1## 1.1.1 ### Features * Add BigQuery first-party tools. See [here](https://github.com/google/adk-python/commit/d6c6bb4b2489a8b7a4713e4747c30d6df0c07961) for more details. Low5/29/2025
v1.1.0## 1.1.0 ### Features * Extract agent loading logic from fast_api.py to a separate AgentLoader class and support more agent definition folder/file structure. * Added audio play in web UI. * Added input transcription support for live/streaming. * Added support for storing eval run history locally in adk eval cli. * Image artifacts can now be clicked directly in chat message to view. * Left side panel can now be resized. ### Bug Fixes * Avoid duplicating log in stderr. * Align evLow5/29/2025
v1.0.0## 1.0.0 ### ⚠ BREAKING CHANGES * Evaluation dataset schema is finalized with strong-type pydantic models. (previously saved eval file needs re-generation, for both adk eval cli and the eval tab in adk web UI). * `BuiltInCodeExecutor` (in code_executors package) replaces `BuiltInCodeExecutionTool` (previously in tools package). * All methods in services are now async, including session service, artifact service and memory service. * `list_events` and `close_session` methLow5/20/2025

Dependencies & License Audit

Loading dependencies...

Similar Packages

adk-jsAn open-source, code-first Typescript toolkit for building, evaluating, and deploying sophisticated AI agents with flexibility and control.devtools-v1.2.0
Autonomous-AgentsAutonomous Agents (LLMs) research papers. Updated Daily.main@2026-06-03
adk-javaAn open-source, code-first Java toolkit for building, evaluating, and deploying sophisticated AI agents with flexibility and control.v1.4.0
MemMachineUniversal memory layer for AI Agents. It provides scalable, extensible, and interoperable memory storage and retrieval to streamline AI agent state management for next-generation autonomous systems.v0.3.9
agentic-rag📄 Enable smart document and data search with AI-powered chat, vector search, and SQL querying across multiple file formats.main@2026-06-01

More from google

adk-javaAn open-source, code-first Java toolkit for building, evaluating, and deploying sophisticated AI agents with flexibility and control.
adk-jsAn open-source, code-first Typescript toolkit for building, evaluating, and deploying sophisticated AI agents with flexibility and control.

More in AI Agents

hermes-agentThe agent that grows with you
awesome-copilotCommunity-contributed instructions, agents, skills, and configurations to help you make the most of GitHub Copilot.
CopilotKitThe Frontend Stack for Agents & Generative UI. React + Angular. Makers of the AG-UI Protocol
e2bE2B SDK that give agents cloud environments