Releases: google/adk-python
Releases · google/adk-python
Release list
v2.7.1
v1.39.0
v2.7.0
2.7.0 (2026-08-13)
Highlights
A correctness release: most of the work went into what an agent sends to the model and what it gets back, alongside a long tail of fixes across tools, sessions, evaluation and the CLI.
- Models declare their own capabilities: an agent pairs an output schema with tools when the model actually supports it, instead of ADK inferring support from the model id. (2aff82c, dc5dbfa)
- Tools can return media: a tool's function response carries images and other media straight back to the model, on Gemini and on Anthropic, LiteLLM, Apigee and OCI alike. (df9d6de, 703cf43)
- Conversation history keeps what Gemini needs: thought signatures, server-side tool call parts, and every result of a parallel function call survive the round trip. (d4ed347, e908137, 93dff41)
- Jinja2 instruction templates: pass
use_jinja2=Truetoinject_session_stateand an instruction can use conditionals and loops over session state, with artifacts loaded through a{{ artifact("name") }}helper. Jinja2 stays an optional dependency and the regex engine remains the default. (4a00a34) - Faster startup and hot paths:
import google.adkdoes less work, and the request path avoids Pydantic round-trips and quadratic streaming accumulation in the LiteLLM adapter. (8806dc2, 9e1adde, 36fd2c8)
Breaking changes
pyarrowleft thegcpextra: it lives in the newbigquery-analyticsextra, which takes roughly 50 MB offpip install google-adk[gcp]. If you useBigQueryAgentAnalyticsPlugin, installgoogle-adk[bigquery-analytics]. (ac71709)
⚠ BREAKING CHANGES
- deps: move pyarrow out of the gcp extra
All 212 changes
Features
- accept a pre-configured client on the labs OpenAI model (461205c), closes #4180
- add express mode telemetry logging for ADK CLI onboarding (4ccc6be)
- add gen_ai.agent.name attribute to execute_tool spans (1a80962)
- add Jinja2 templating with use_jinja2 flag (4a00a34), closes #2942
- add option to save eval results to CSV (3bbc8ed), closes #2652
- add parent terminal grouping and TTL pruning to ADK CLI telemetry (2c6a7ff)
- agent: add native task mode support to root LlmAgent (dd0de52)
- Allow clients using the load_artifacts_tool to customize how attachment data is fed to the LLM (b66cba2)
- capture TTY connectivity in CLI environment telemetry (c12a025)
- cli: auto-discover test_config.json for single eval file in adk eval (0477e57), closes #4410
- enforce unit guide requirement for new Python files (942b38d)
- environment: Add support for executing skill scripts within an Environment (fa31b6c)
- evaluation: add optional eval set result persistence to AgentEvaluator (76027dd)
- eventarc: Support Context callables and correct OMIT behavior (a3bd111)
- Extend HTTP trace debugging to MCP Toolset operations (6d8045c)
- honor model-declared capabilities when pairing an output schema with tools (dc5dbfa)
- honor return_direct on Langchain tools wrapped by LangchainTool (c2249f3), closes #2157
- Introduce a capability reporting system for LLM models (2aff82c)
- labs/antigravity: allow mode='single_turn' AntigravityAgents to be sub-agents (6ed484d)
- let McpToolset reuse the MCP server's tool list (9cd5975)
- let tools return media in the function response (df9d6de)
- live: forward safety_settings from generate_content_config to the Live API (0a6d05d)
- plugins: add BigQuery Agent Analytics delivery and termination observability (04b8b72)
- Promote Data Agent tools to stable (fd33158)
- record implicit vs explicit context cache type in analytics (5072828)
- skills: support non-blocking skill loading in async runtimes (61ddc5f), closes #6057
- Stop using the obsolete Gemini 1.x / Gemini 2+ model-id check in ADK (745de0a)
- Stop using the obsolete Gemini 1.x / Gemini 2+ model-id check in ADK url context tool (eaab262)
- support audio_stream_end for realtime input (0f738a5)
- Support elicitation_callback in McpToolset (4824619)
- telemetry: add feature gate for experimental telemetry (75fb254)
- telemetry: Expand load_skill telemetry (bddbb3d)
- update skill model to include its origin (08bd589)
- warn when agent transfer runs without a context cache config (0cf10a5)
Bug Fixes
- a2a: adopt a directly supplied agent card's description (4f58306)
- a2a: flatten human-input responses on resume to avoid mixing them with text (aec7aa3)
- add .adk/ to the .gitignore generated by adk create (374aab3), closes #6647
- add 20MB file size validation to SaveFilesAsArtifactsPlugin (9827790), closes #3751
- Add regional and MREP endpoint routing for DataAgentToolset (20842eb)
- adk: share a single component-owner map between the triaging agents (1ad0543)
- allow injecting credentials into VertexAiMemoryBankService ([18903ca](https://github.com/...
v2.6.3
v1.38.0
Features
Bug Fixes
- avoid shell execution in ReadFileTool ranged reads and keep local environment file access in workspace (#6597) (c680728)
- deps: exclude nltk 3.10.1, which breaks venvs living inside the working directory (v1) (#6607) (f25bb90)
- eval: handle failed inference results without invocations (cherry-pick) (#6565) (4555273)
- live: transfer to the target agent regardless of function response order (#6608) (302885b)
- Port tool confirmation security and re-validation fixes to v1 (#6575) (4783364)
v2.6.2
v2.6.1
v2.6.0
2.6.0 (2026-07-29)
Features
- a2a: support per-invocation auth headers when fetching agent cards (3dd1156)
- add --extra_packages option to
adk deploy agent_engine(93db97d), closes #3936 - Add ADK evaluation samples: shared home-automation agent (6ba41ef)
- add agent identity auth manager finalize endpoint for 3 legged OAuth flow with auth manager (8d2ded3)
- Add basic_criteria ADK eval sample (fdebd9d)
- Add bigquery-graph skill to ADK BigQuery tools (f1a0a14)
- add capability to log commands run in CLI (a58220c)
- Add custom_metric ADK eval sample (f71d9df)
- Add llm_judge_match ADK eval sample (0f0fa6b)
- add metadata extraction symmetry to A2A converters (3127f36)
- add opt-in final_response_tool_names to BigQueryAgentAnalyticsPlugin (07455ee)
- Add ReflectAndRetryModelPlugin for self-healing model errors (322f455)
- Add rubric_criteria ADK eval sample (852a66a)
- add state_delta support to LiveRequest for live mode (8219774), closes #4220
- add telemetry consent check, status commands, and interrupt safety to CLI (6bab08f)
- Add telemetry consent configuration endpoints and local writing utility (26f3d45)
- add telemetry metrics collection for ADK CLI execution (2280f1c)
- Add test_file_vs_evalset ADK eval sample (57a34ba)
- Add user_simulation ADK eval sample (481fe21)
- agents: add instruction field to ManagedAgent (720af3d)
- agents: forward ManagedAgent instruction as system_instruction (49fdc26)
- eval: Make live and audio evals reachable via public entrypoints (5091f0a)
- eventarc: add Eventarc Advanced toolset for ADK (217a90a)
- eventarc: add Eventarc Advanced toolset for ADK (d4f157d)
- forward the OAuth2 nonce to the authorization request (79cc1f2), closes #2067
- integrations: add OCI Generative AI provider (625ef1a), closes #5069
- make agent evaluation compatible with pre-loaded artifacts (02e32a4), closes #2075
- make EventsCompactionConfig sliding-window fields optional (ec42cfa), closes #6398
- Publish companion constraints-3.11.txt and constraints-3.12.txt file for transitive dependency protection (4 day buffer to protect from supply chain attack) (75c773e)
- refresh expired OAuth2 tokens in OpenAPI credential exchanger (b3c9783)
- samples: add ManagedAgent create-and-use custom-agent sample (d86ae20)
- support audio generation user simulator (327afeb)
- support serving a to_a2a agent under a path prefix (1ae292f), closes #4448
- support user labels in RunConfig (13bef9c)
- telemetry: add request-driven metric export for Agent Engine (8930d9b)
- telemetry: derive gen_ai error.type from provider status code (b956d15)
- Update agent_registry to handle mTLS endpoints internally (66cf08d)
Bug Fixes
- a2a: honor task cancellation instead of raising NotImplementedError (fb55d4a)
- agents: await cancelled tasks in pre-3.11 ParallelAgent merge (bc55099), closes #5297
- agents: skip output_key processing on intermediate conversational text in task-mode LlmAgent (54344ed)
- allow http_options.extra_body in generate_content_config (4c6f22e)
- allow invocation-level rubrics (67ab27f)
- artifacts: namespace file artifacts by app (f72f0db)
- assemble only the current turn (c328cec)
- bound integration HTTP waits (bf4143a)
- bypass Protobuf Gencode/Runtime version check in antigravity integration (91038f2)
- caching: prevent prompt cache invalidation when using dynamic tools (509be09), closes #3227
- Call mtls.should_use_mtls_endpoint with client_cert_available argument (b315b00)
- canonicalize context cache fingerprint for stable hashing (425dda1)
- ci: mark imported PRs as merged even if already closed (2eca8b1)
- cli: treat agent folder with subfolders as single agent in adk web (40cf97b)
- close A2A response stream when the caller stops consuming (31392ba)
- close AsyncDaytona client in DaytonaEnvironment.close (ecf6d13)
- collect all tools so native tools aren't dropped (c429d75), closes #6091
- derive an SDK-conforming Antigravity conversation id (64b758a)
- do not mount a cluster credential into the GKE code sandbox (8207880)
- emit only new artifact parts on streaming artifact updates (088be86), closes #6343
- emit resumability checkpoints from workflow graph nodes ([cecc1f9](https://github.com/goog...