github google/adk-python v1.17.0

18 hours ago

1.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. (391628f)
    • Add the ability to rewind a session to before a previous invocation (9dce06f)
    • Support resuming a parallel agent with multiple branches paused on tool confirmation requests (9939e0b)
    • Support content union as static instruction (cc24d61)
  • [Evals]

    • ADK cli allows developers to create an eval set and add an eval case (ae139bb)
  • [Integrations]

    • Allow custom request and event converters in A2aAgentExecutor (a17f3b2)
  • [Observability]

    • Env variable for disabling llm_request and llm_response in spans (e50f05a)
  • [Services]

    • Allow passing extra kwargs to create_session of VertexAiSessionService (6a5eac0)
    • Implement new methods in in-memory artifact service to support custom metadata, artifact versions, etc. (5a543c0)
    • Add create_time and mime_type to ArtifactVersion (2c7a342)
    • Support returning all sessions when user id is none (141318f)
  • [Tools]

    • Support additional headers for Google API toolset (ed37e34)
    • Introduces a new AgentEngineSandboxCodeExecutor class that supports executing agent-generated code using the Vertex AI Code Execution Sandbox API (ee39a89)
    • Support dynamic per-request headers in MCPToolset (6dcbb5a)
    • Add bypass_multi_tools_limit option to GoogleSearchTool and VertexAiSearchTool (9a6b850, 6da7274)
    • Extend ReflectAndRetryToolPlugin to support hallucinating function calls (f51380f)
    • Add require_confirmation param for MCP tool/toolset (78e74b5)
  • [UI]

    • Granular per agent speech configuration (409df13)

Bug Fixes

  • Returns dict as result from McpTool to comply with BaseTool expectations (4df9263)
  • Fixes the identity prompt to be one line (7d5c6b9)
  • Fix the broken langchain importing caused their 1.0.0 release (c850da3)
  • Fix BuiltInCodeExecutor to support visualizations (ce3418a)
  • Relax runner app-name enforcement and improve agent origin inference (dc4975d)
  • Improve error message when adk web is run in wrong directory (4a842c5)
  • Handle App objects in eval and graph endpoints (0b73a69)
  • Exclude additionalProperties from Gemini schemas (307896a)
  • Overall eval status should be NOT_EVALUATED if no invocations were evaluated (9fbed0b)
  • Create context cache only when prefix matches with previous request (9e0b1fb)
  • Handle App instances returned by agent_loader.load_agent (847df16)
  • Add support for file URIs in LiteLLM content conversion (85ed500)
  • Only exclude scores that are None (998264a)
  • Better handling the A2A streaming tasks (bddc70b)
  • Correctly populate context_id in remote_a2a_agent library (2158b3c)
  • Remove unnecessary Aclosing (2f4f561)
  • Fix pickle data was truncated error in database session using MySql (36c96ec)

Improvements

  • Improve hint message in agent loader (fe1fc75)
  • Fixes MCPToolset --> McpToolset in various places (d4dc645)
  • Add span for context caching handling and new cache creation (a2d9f13)
  • Checks gemini version for 2 and above for gemini-builtin tools (0df6759)
  • Refactor and fix state management in the session service (8b3ed05)
  • Update agent builder instructions and remove run command details (89344da)
  • Clarify how to use adk built-in tool in instruction (d22b8bf)
  • Delegate the agent state reset logic to LoopAgent (bb1ea74)
  • Adjust the instruction about default model (214986e)
  • Migrate invocation_context to callback_context (e2072af)
  • Correct the callback signatures (fa84bcb)
  • Set default for bypass_multi_tools_limit to False for GoogleSearchTool and VertexAiSearchTool (6da7274)
  • Add more clear instruction to the doc updater agent about one PR for each recommended change (b21d0a5)
  • Add a guideline to avoid content deletion (16b030b)
  • Add an sample agent for the ReflectAndRetryToolPlugin (9b8a4aa)
  • Improve error message when adk web is run in wrong directory (4a842c5)
  • Add an sample agent for the ReflectAndRetryToolPlugin (9b8a4aa)
  • Add span for context caching handling and new cache creation (a2d9f13)
  • Disable the scheduled execution for issue triage workflow (bae2102)
  • Correct the callback signatures (fa84bcb)

Documentation

  • Format README.md for samples (0bdba30)
  • Bump models in llms and llms-full to Gemini 2.5 (ce46386)
  • Update gemini_llm_connection.py - typo spelling correction (e6e2767)
  • Announce the first ADK Community Call in the README (731bb90)

Don't miss a new adk-python release

NewReleases is sending notifications on new releases.