Releases: google/adk-python
Releases · google/adk-python
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 for development (skills like adk-style, adk-git, and observability architecture).
v1.29.0
Changelog
1.29.0 (2026-04-09)
Features
- Add auth scheme/credential support to MCP toolsets in Agent Registry (7913a3b)
- add ability to block shell metacharacters in BashTool (23bd95b)
- add configurable resource limits for subprocesses in BashTool (1b05842)
- Add configurable view_prefix to BigQueryLoggerConfig (37973da)
- Add custom session id functionality to vertex ai session service (e1913a6)
- Add Description column to SKILL.md and update terminology (435f7c7)
- Add Easy GCP support to ADK CLI (8850916)
- Add regional endpoint support to
SecretManagerClient(19ac679) - Add support for model endpoints in Agent Registry (eb4674b)
- auth: Add public api to register custom auth provider with credential manager (a220910)
- auth: Pass consent_nonce to Agent Frontend (9fec503)
- auth: Support additional HTTP headers in MCP tools (b3e9962)
- bigquery: Add ADK 1P Skills for ADK BQ Toolset (4030c0d)
- environment: Add EnvironmentToolset for file I/O and command execution (9082b9e)
- environment: Add LocalEnvironment for executing commands and file I/O locally (f973673)
- Implement robust process group management and timeouts in BashTool (f641b1a)
- live: Added in 1.28.1, support live for
gemini-3.1-flash-live-previewmodel (8082893) - Option to use shallow-copy for session in InMemorySessionService (16a1a18)
- Propagate context to thread pools (83393ab)
- refresh credentials if token is missing in the common code and samples (1445ad5)
- Remove use of raw_event field in vertex ai session service (642d337)
- skill: Standardize skill tools and make script arguments flexible (9e73ab8)
- Support AgentRegistry association (6754760)
- Support loading agents from Visual Builder with BigQuery-powered logging (2074889)
- Support propagating grounding metadata from AgentTool (d689a04)
- Support short options and positional arguments in RunSkillScriptTool (2b49163)
- Use raw_event field in vertex ai session service for append and list events (6ee0362)
- Use raw_event to store event data in vertex ai session service (9da9dee)
Bug Fixes
- Add A2ATransport.http_json to the default supported transports list (7dd9359)
- add httpx_client_factory support to SseConnectionParams (815ebb4)
- adk: redact credentials in BigQuery analytics plugin (a27ce47)
- api client initialization logic to be mutually exclusive between ExpressMode and GCP projects (4ffe8fb)
- avoid load all agents in adk web server (ede8a56)
- Cache BaseToolset.get_tools() for calls within the same invocation (92cad99)
- cli: fail Agent Engine deploy when config file path is invalid (bbad9ec)
- Disable tool caching for skill toolset (064f0d2)
- Disallow args on /builder and Add warning about Web UI usage to CLI help (dcee290)
- empty events_iterator assignment (898c4e5)
- environment: fix package references (add8e86)
- Fix RemoteA2AAgent deepcopy errors (6f29775)
- Fixes for initializing RemoteA2aAgent - passing in preferred transport, protocol version, and auth headers (0f3850f)
- Generate IDs for FunctionCalls when processing streaming LLM responses (fe41817), closes #4609
- Handle merging lists in deep_merge_dicts (cdb3ff4)
- In memory session service to evaluate dictionary keys and value into an isolated snapshot sequence before starting loop (f75de59)
- include intermediate subagent final response events in evaluation intermediate data (f8a6bd7)
- live: Handle live session resumption and GoAway signal (6b1600f), closes #4996
- move BigQueryAgentAnalyticsPlugin import inside get_runner_async (6fd0f85)
- Safer fix for UI widget merging in ADK (0e71985)
- Small fixes for express mode (3a374ce)
- sync callbacks with call_llm span (b2daf83)
- tools: handle toolset errors gracefully in canonical_tools (5df03f1), closes #3341
- truncate error_message in v0 schema to prevent VARCHAR overflow (62daf4f), closes #4993
- update toolbox-adk and toolbox server versions (1486925)
Code Refactoring
- Move SecretManagerClient to google.adk.integrations.secret_manager package (1104523)
- Remove the session events dependency from A2aAgentExecutor (aaa03ac)
Documentation
v1.28.1
v2.0.0a2
2.0.0-alpha.2 (2026-03-26)
Bug Fixes
- add agent name validation to prevent arbitrary module imports (be094f7)
- add protection for arbitrary module imports (0019801), closes #4947
- Default to ClusterIP so GKE deployment isn't publicly exposed by default (27aed23)
- enforce allowed file extensions for GET requests in the builder API (68ece4e)
- Exclude compromised LiteLLM versions from dependencies pin to 1.82.6 (79ed953)
- gate builder endpoints behind web flag (584283e)
- Update eval extras to Vertex SDK package version with constrained LiteLLM upperbound (a86d0aa)
v1.28.0
1.28.0 (2026-03-26)
Features
- a2a: add lifespan parameter to to_a2a() (0f4c807), closes #4701
- Add a new extension for the new version of ADK-A2A integration (6f0dcb3)
- Add ability to run individual unit tests to unittests.sh (b3fcd8a)
- Add database_role property to SpannerToolSettings and use it in execute_sql to support fine grained access controls (360e0f7)
- Add index to events table and update dependencies (3153e6d), closes #4827
- Add MultiTurn Task success metric (9a75c06)
- Add MultiTurn Task trajectory and tool trajectory metrics (38bfb44)
- Add slack integration to ADK (6909a16)
- Add Spanner Admin Toolset (28618a8)
- Add SSE streaming support to conformance tests (c910961)
- Add support for Anthropic's thinking_blocks format in LiteLLM integration (fc45fa6), closes #4801
- Add support for timeout to UnsafeLocalCodeExecutor (71d26ef)
- auth: Integrate GCP IAM Connectors (Noop implementation) (78e5a90)
- bigquery: Migrate 1P BQ Toolset (08be442) (7aa1f52) (d112131) (166ff99)
- enable suppressing A2A experimental warnings (fdc2b43)
- Enhance AgentEngineSandboxCodeExecutor sample to automatically provision an Agent Engine if neither agent_engine_resource_name nor sandbox_resource_name is provided (6c34694)
- Extract and merge EventActions from A2A metadata (4b677e7), closes #3968
- mcp: add sampling callback support for MCP sessions (8f82697)
- Optional GCP project and credential for GCS access (2f90c1a)
- Support new embedding model in files retrieval (faafac9)
Bug Fixes
- add agent name validation to prevent arbitrary module imports (116f75d)
- add protection for arbitrary module imports (995cd1c), closes #4947
- Add read-only session support in DatabaseSessionService (f6ea58b), closes #4771
- Allow snake case for skill name (b157276)
- bigquery: use valid dataplex OAuth scope (4010716)
- Default to ClusterIP so GKE deployment isn't publicly exposed by default (f7359e3)
- deps: bump google-genai minimum to >=1.64.0 for gemini-embedding-2-preview (f8270c8)
- enforce allowed file extensions for GET requests in the builder API (96e845e)
- error when event does not contain long_running_tool_ids (1f9f0fe)
- Exclude compromised LiteLLM versions from dependencies pin to 1.82.6 (77f1c41)
- Fix IDE hangs by moving test venv and cache to /tmp (6f6fd95)
- Fix imports for environment simulation files (dcccfca)
- gate builder endpoints behind web flag (6c24ccc)
- Handle concurrent creation of app/user state rows in DatabaseSessionService (d78422a), closes #4954
- live: convert response_modalities to Modality enum before assigning to LiveConnectConfig (47aaf66), closes #4869
- models: handle arbitrary dict responses in part_to_message_block (c26d359)
- models: update 429 docs link for Gemini (a231c72)
- populate
requiredfor PydanticBaseModelparameters inFunctionTool(c5d809e), closes #4777 - Prevent compaction of events with pending function calls (991c411), closes #4740
- Prevent uv.lock modifications in unittests.sh (e6476c9)
- Refactor blocking subprocess call to use asyncio in bash_tool (58c4536)
- Refactor LiteLlm check to avoid ImportError (7b94a76)
- Reject appends to stale sessions in DatabaseSessionService (b8e7647), closes #4751
- Remove redundant client_id from fetch_token call (50d6f35), closes #4782
- returns '<No stdout/stderr captured>' instead of empty strings for clearer agent feedback and correct typing (3e00e95)
- Store and retrieve usage_metadata in Vertex AI custom_metadata (b318eee)
- Support resolving string annotations for
find_context_parameter(22fc332) - telemetry: Rolling back change to fix issue affecting LlmAgent creation due to missing version field (0e18f81)
- tools: disable default httpx 5s timeout in OpenAPI tool _request (4c9c01f), closes #4431
- tools: support regional Discovery Engine endpoints (30b904e)
- tools: support structured datastores in DiscoveryEngineSearchTool (f35c3a6), closes #3406
- Update Agent Registry to use the full agent card if available (031f581)
- Update eval extras to Vertex SDK package version with constrained LiteLLM upperbound (27cc98d)
- Update import and version for k8s-agent-sandbox ([1ee0623](1ee06231281...
v1.27.5
v1.27.4
v1.27.3
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 nodes