Releases: google/adk-python
Releases · google/adk-python
v2.3.0
2.3.0 (2026-06-17)
Features
- add create_http_options to ContextCacheConfig for cache creation timeout (ffc9677), closes #4703
- add GCS first party toolset to ADK integrations (fb19e1a)
- Add log_level option for adk run CLI (1ac69a9)
- Add mTLS support in AgentRegistry client (03671c6)
- add request timeout to load_web_page (792775f)
- core: migrate core and CLI to enterprise parameters (68221f0)
- Create GEPARootAgentOptimizer (654145a)
- eval: expose user_simulator_config in generate_responses (e7a673c)
- gemma4: support Gemma4 in Gemini (573f043)
- integrations: Add E2BEnvironment for remote sandbox workspaces (92d608f)
- labs: add experimental Antigravity SDK agent wrapper (4cb27fd)
- lazily initialize the Vertex AI client in GCPSkillRegistry, and fix the import path for
vertexai(65dca53) - live: Handle input transcription differently for Gemini Live 3.1 models (048deea)
- live: support Live API translation config in RunConfig (463040f)
- Migrate McpToolset to AsyncAuthorizedSession for mTLS support (fe497a4)
- plugins: ADK 2.0 minimum producer cut for the BigQuery Agent Analytics plugin (e2676fc)
- report cached token counts for Anthropic and OpenAI models (b15c8a0)
- telemetry: support per-request OpenTelemetry configuration (abcaa08)
- Update gcp_auth client UI to support Remote Agents (57bdecf)
- utils: add GOOGLE_GENAI_USE_ENTERPRISE env var with deprecation fallback (4e85e9c)
Bug Fixes
- a2a: Preserve execution metadata in final events (e90b119)
- a2a: render HITL interrupt when prompt is in a data part (b9e7fca)
- a2a: set final=True for error TaskStatusUpdateEvent in event_converter (5efe53d)
- a2a: suppress part_metadata in Vertex AI mode (065f4ae)
- add a2a as a required dependency for agent_engine deployment (d2ebacb)
- adk: propagate exceptions from run_node in standalone mode (63841c3)
- adk: propagate isolation_scope to prevent history filtering loops (f39d75b)
- agents: await cancelled tasks in _merge_agent_run_pre_3_11 to prevent aclose() RuntimeError (9310ba7)
- api-registry to fetch all services (81b8067), closes #5478
- artifacts: Support nested API names (b99546b)
- auth: handle missing client-credentials scopes safely (a546bcf), closes #5345
- avoid UserWarning in _build_response_log when response has funct… (f022307)
- call to sanitize schema for complex union types (9808451)
- ci: add repository check to prevent workflows from running on forks (90bd38f)
- ci: Resolve missing sqlalchemy error in adk_release_analyzer (107dc38)
- cli: Serialize LiteLlm graph models safely (c1e852f)
- conformance: normalize tool declarations in replay verification (dd97e76)
- Default subagents to chat mode in build_node (ad560ce)
- deps: Require otel google-genai instrumentor >=0.7b1 for genai 2.x (2b8c80c)
- eval: handle failed inference results without invocations (9a6cf60)
- eval: handle unevaluated final response v2 results (5cfef01)
- eval: include function-call events in invocation_events when skip_summarization is set (5b16a86)
- eval: preserve custom eval metadata (780b0ab)
- Extract grounding_metadata from Live API server_content (8a294af)
- Fix silent dead end when conditional routes are unmatched (6af4562)
- Fix typing for create_client in mcp_session_manager (c6546a7)
- fix vertex_ai_session_service crashing when Agent Engine passes full resource names instead of short session IDs (60c55ad)
- flows: terminate invocation at tool-level EUC (883ff98)
- Format files to fix pre-commit failures (395848a)
- Format the files (9670ce2)
- gate pr-triage secrets on same-repository pull_request_target (0d20b7c)
- handle missing agent name in readonly context (a890399)
- improve error message when beautifulsoup4/lxml not installed for load_web_page (d9f189c), closes #4852
- live: history_config rejection on Vertex/Enterprise Live sessions (8f85260)
- live: propagate output token count in live API usage metadata (7e8965d)
- log diagnostics for empty or unparseable rubric auto-rater output (fe56f31), closes #5732
- make DatabaseSessionService visible in API docs (69ecf07), closes #4331
- Mock google.auth.default in test_fast_api.py (a7ceb3f)
- models: pass NOT_GIVEN to Anthropic when no system_instruction (3f505d2), closes [#531...
Release 1.35.2
Release 1.35.1
Release 1.35.0
1.35.0 (2026-06-10)
Features
Bug Fixes
- add missing Gemini imports in base_llm_flow (#5943) (6d027b4)
- flows: Reset reconnect attempts on connection success (#6042) (87abf23)
- models: Default grounding metadata for Gemini 3.1 live (#6018) (fafafb3)
- Support generalized history config injection for Gemini 3.1 Live on Vertex AI (#5999) (aafd97f)
v2.2.0
2.2.0 (2026-06-04)
⚠ BREAKING CHANGES
- agents:
LlmAgentdefault model changed fromgemini-2.5-flashtogemini-3-flash-preview(a preview model), ahead of the 2026-10-16gemini-2.5-flashshutdown. Agents without an explicitmodel=now run on the new preview default; setmodel="gemini-2.5-flash"to retain prior behavior.DEFAULT_LIVE_MODELis unchanged. (ad8b6c7) - interactions: GenAI SDK v2.0.0 support renames the turn-based helpers in
interactions_utils.py(e.g.convert_contents_to_turns→convert_contents_to_steps) and moves from "turns" to "steps" terminology. Update any direct callers. (da1d8f1)
Features
- Add
--trigger_sourcesand ADK service options tocli_deploy_agent_engine(ffa057c) - add AutoTracingPlugin for OpenTelemetry auto-instrumentation (bc3a4fa)
- add RubricBasedMultiTurnTrajectoryEvaluator (cae2337)
- agents: restore 1.x agent config wiring for backward compatibility (44cd116)
- api_server: Abort runs on client drops to avoid leaks (6a53357)
- BigQuery Agent Analytics reliability fixes (a5fa3da)
- distinguish input-required vs auth-required in A2A conversion (9d139ea)
- emit OTel gen_ai.client.* metrics natively (0bb329b)
- forward custom_metadata from run requests into the run config (460cb8c)
- include thoughts and tool calls in compaction summaries (bdb5582)
- interactions: update ADK to support Google GenAI SDK v2.0.0 (da1d8f1)
- models: Support turn_complete_reason in Live responses to capture safety info (9126acb)
- preserve A2A message metadata field in ADK event (d4d955d)
- raise explicit error for unsupported LiteLlm file attachments (8847f23), closes #5546
- sessions: add get_user_state(app_name, user_id) to BaseSessionService (d029bce)
- Support additional scopes and custom discovery doc in Google API Tools (dc6e293)
- tools: expose httpx_client_factory on RestApiTool and OpenAPIToolset (7eb9b3d)
- tools: Standardize request_input tool for proactive LLM clarification (afb0a64)
Bug Fixes
- a2a: Support to_a2a(Workflow) and reject non-agent root nodes (0478b02)
- accept Azure assistant file ids (b73679e), closes #5664
- add artifacts in each agent's .adk folder (bae5b1a)
- add future annotations import and prefix task models logger (2874874)
- add missing crop helper to data file helper lib (b5181cf), closes #4011
- add PEP 604 union syntax in function tool parameters (551445e)
- add telemetry metric assertions to the test's own agent (b7766ce)
- agents: restore abc.ABC base for BaseAgent and LlmAgent (020386a)
- allow internal builder assistant app name (f6e26cc)
- append trailing newline to runtime-config.json in ADK Web Server (4baccf6)
- auth: omit scope from OAuth2 token requests (6ce4b87)
- block path traversal in Agent Builder file tools (1fa7cda)
- dependencies: clarify missing Vertex AI extra (fde6a2b)
- deps: bump starlette and fastapi to address CVE-2026-48710 (81add39)
- eval: Support include_intermediate_responses_in_final in final_response_match_v2 (8519602), closes #5695
- Event.message honors subclass field (5bebfd4)
- exclude temp: state keys from Firestore session writes (a5db346)
- Fix path traversal in GCS skill extraction (Zip Slip) (2f15c6c)
- flows: preserve transparent config on live session reconnect (5ad1942), closes #5675
- Format the files to fix pre-commit failures (af8bfe0)
- guard peer agent mode access in agent transfer (bb16958), closes #5863
- live: Resolve 1007 error and support Gemini 3.1 Flash Live protocol (e5af12c)
- mcp: Prevent initialization hangs and task group leaks (334ef81), closes #5886
- migration: restrict unpickling of v0 actions blobs (9db48ce)
- models: Prevent grounding metadata loss in Gemini 3.1 (e896c62)
- parse noncanonical litellm tool call arguments (31cc5a1)
- populate user_content in resumed invocations (660bbd4)
- preserve media blocks in ollama content flattening (47ceeba), closes #4975
- runners: fall back to root agent when a resumed call author is not in the tree (a86efa6)
- runners: Preserve state_delta in NodeRunner path (c56bec8)
- sessions: guard None event.actions before reading state_delta (03ef3f6)
- Support generalized history config injection for Gemini 3.1 Live on Vertex AI (61a3933)
- terminate infinite retry loop in LoadSkillResourceTool on RESOURCE_NOT_FOUND (bc45ee6)
- tolerate context-likes without user_content or session in record_agent_invocation (0775da5)
- tools: add skill script dir to sys.path (9296198)
- tools: don't close parent's plugins from AgentTool's sub-Ru...
Release 1.34.2
v2.1.0
2.1.0 (2026-05-23)
Features
- Add chart generation and artifact loading to data agent (db06416)
- Add support for creating sandboxes from templates and snapshots (cbd14eb)
- Add user.id to gen_ai.user.message log records for telemetry (eb379be)
- Fix error message telemetry for tool calls (e56c021)
- Preserve transcription event order in conversation trajectory (b3d0759)
Bug Fixes
- ci: Add python-dateutil dependency to stale-bot workflow (84fa984)
- ci: Prevent workflow failures in relocated adk_team samples (55cbc8c)
- ci: Use absolute path for PYTHONPATH in upload docs workflow (85223e6)
- cli: Fix --reload_agents for web (1307f8e)
- cli: Inform user to install optional dependency on missing google.cloud (57d677c)
- convert Union[Pydantic, Pydantic] tool args at runtime (104edc8), closes #5799
- Fix bug where grounding metadata in Gemini 3.1 live was being silently discarded (b9751eb)
- fix input and output transcription finished events for Gemini v3.1 (d17a2a3)
- lazy-import GCS evaluation managers in evals utility (5f91a9d)
- Make google-cloud-storage import lazy in skill utils (416775d)
- resolve circular import caused by llm_request (7e38fc8)
- Resolve circular import in base_tool (92cf192)
- tests: Append trailing newline to JSON test outputs (3329ced)
- tools: Prevent session drop on MCP tool error (933653c)
- update EditFileTool to handle cross-platform line breaks and escape regex characters (1f24553)
v1.34.1
v2.0.0
2.0.0 (2026-05-19)
ADK 2.0 General Availability
This release introduces v2.0.0 General Availability (GA) of the Google Agent Development Kit (ADK), establishing production-grade foundations for multi-agent workflows and advanced dynamic agent collaboration.
Core Architecture Highlights
Multi-Agent Workflow Engine
- Flexible Execution Graphs: Establishes a model-agnostic engine for orchestrating non-linear, conditional, and cyclical agent execution patterns.
- Intelligent Task Delegation: Introduces modular workflow abstractions enabling parallel sub-agent workers, nested hierarchical team structures, and resilient dynamic scheduling across complex task execution steps.
Dynamic Agent Collaboration
- Native Inter-Agent Routing: Provides seamless orchestration for inter-agent messaging, control state handoffs, and context variable propagation across collaborative multi-agent flows.
v1.34.0
1.34.0 (2026-05-18)
Features
- a2a: add support for persistent task stores (cd78d87)
- add general support for Gemini Live API in ADK evaluate (790c9be)
- Add mTLS support to Google Cloud Telemetry exporter (cfe8d2c)
- add support for A2aAgentExecutor factory in to_a2a() function (115124c)
- add support for non-ADK produced input-required events (6e53472)
- Added config option to include tool calls/responses in conversation history passed to user simulator (baf7efb)
- ci: add Gemini auto review and invoke workflows (fd8b492)
- Implement GCPSkillRegistry in ADK (88ebd42)
- Implement Skill Registry in ADK (380d261)
- Make Agent Skill description validation more informative (9f38973)
- Simplify data retrieved handling of ask_data_agent tool and ask_data_insights tool (48f1b30)
- Support OAuth PKCE in McpToolset (e7316dc)
Bug Fixes
- agents: fix visibility of output_key state delta in callbacks (0524797)
- anthropic: map negative thinking_budget to adaptive thinking (03b915b)
- auth: persist refreshed OAuth2 credentials to store (218ea76), closes #5329
- auth: remove unneeded OAuth flows (c35a579)
- avoid pre-serializing dict values in Interactions API to prevent double-escaping (85f397d)
- cache: enforce CacheMetadata active-state invariant (76b9f0b)
- cache: handle fingerprint-only metadata in performance analyzer (9c5de58)
- Catch OSError when importing AnthropicLlm (91cb5c6)
- evaluation: handle none config in per_turn_user_simulator_quality (eed9bd3), closes #5677
- fallback to project id if crendetials don't contain quota project (e377cb5)
- Fix missing dynamically loaded tools in SkillToolset during the same invocation (f9097cb)
- live: ensure sub live agent doesn't inherit session resumption handle from parent live agent to avoid interrupting the conversation (8dd9147)
- models: preserve string content in Anthropic tool_result blocks (9a1e75f), closes #5358
- models: preserve tool_use IDs for Anthropic models on session resume (327c45f), closes #5074
- models: treat empty GenerateContentResponse without prompt feedback as successful (0cb9ae9)
- only serialize llm_response to json if it will be included in the trace (1284493)
- Preserve live_session_id in function call handling (07a9a01)
- Prevent compaction of events involved in Human-in-the-Loop interactions (bb2efb6)
- raise eagerly on importing AgentRegistry if a2a-sdk is missing (33cf6cb)
- small: Convert events to the A2A format while respecting user vs agent role (59f7347)
- tools: preserve code_execution_result and executable_code in AgentTool (7e61b51), closes #5481
- tools: Prevent AnyIO CancelScope task boundary violations during MCP session creation failure (4309159)
- Update model name in hello_world agent (192f19d)
- Update model to gemini-3-flash-preview in hello word agent sample (6d89d21)
- Update model to gemini-3-flash-preview in session state agent sample (2d423e8)
- use tool_responses role for gemma4 models in LiteLLM integration (3d07960), closes #5650
Performance Improvements
- lazy-load service registries and split apps.app to cut cold start ~8% (bd062ec)
- models: guard debug log evaluation with isEnabledFor (57d8fc7)
- utils: cache find_context_parameter introspection (ec54bd4)
Code Refactoring
- Make the "a2a_metadata" string a constant that can be depended on by extension developers (0821f2d)