github google/adk-python v1.24.0

8 hours ago

1.24.0 (2026-02-04)

⚠ BREAKING CHANGES

  • Breaking: Make credential manager accept tool_context instead of callback_context (fe82f3c)

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 chat context
    • Enhanced Accessibility: Added full support for arrow-key navigation for a more seamless, keyboard-centric experience
    • Rich Developer Tooling: Introduced detailed tooltips for function calls, providing instant visibility into arguments, responses, and state changes
    • A2UI Integration: Integrated the A2UI v0.8 standard catalog to automatically render spec-compliant ADK parts as native UI components directly in the chat

Features

  • [Core]

    • Allow passthrough of GOOGLE_CLOUD_LOCATION for Agent Engine deployments (004e15c)
    • Add interface for agent optimizers (4ee125a)
    • Pass event ID as metadata when converted into a message (85434e2)
    • Restructure the bug report template as per the intake process (324796b)
  • [Models]

    • Mark Vertex calls made from non-Gemini models (7d58e0d)
  • [Evals]

    • Allow Vertex AI Client initialization with API Key (43d6075)
    • Remove overall evaluation status calculation from _CustomMetricEvaluator and add threshold to custom metric function expected signature (553e376)
  • [Tools]

    • Make OpenAPI tool asynchronous (9290b96)
    • Implement toolset authentication for McpToolset, OpenAPIToolset, and other toolsets (798f65d)
    • Add framework support for toolset authentication before get_tools calls (ee873ca)
    • Support dynamic configuration for VertexAiSearchTool (585ebfd)
    • Add get_auth_config method to toolset to expose authentication requirements (381d44c)
    • Add methods in McpToolset for users to access MCP resources (8f7d965)
    • Improve error message when failing to get tools from MCP (3480b3b)
  • [Services]

    • Improve asyncio loop handling and test cleanup (00aba2d)
  • [Live]

    • Support running tools in separate threads for live mode (714c3ad)
  • [Observability]

    • Add extra attributes to spans generated with opentelemetry-instrumentation-google-genai (e87a843)

Bug Fixes

  • Ignore session_db_kwargs for SQLite session services (ce07cd8)
  • Resolve MutualTLSChannelError by adding pyopenssl dependency (125bc85)
  • Add update_timestamp_tz property to StorageSession (666cebe)
  • Do not treat Function Calls and Function Responses as invisible when marked as thoughts (853a3b0)
  • Add pre-deployment validation for agent module imports (credit to @ppgranger, 2ac468e)
  • Fix cases where execution_result_delimiters have None type element (a16e3cc)
  • Disable save_input_blobs_as_artifacts deprecation warning message for users not setting it (c34615e)
  • Fix agent config path handling in generated deployment script (8012339)
  • Add pypika>=0.50.0 to project.toml to support crewai on Python 3.12+ (e8f7aa3)
  • Update OpenTelemetry dependency versions to relax version constraints for opentelemetry-api and opentelemetry-sdk (706a6dd)
  • Enable pool_pre_ping by default for non-SQLite database engines (da73e71)
  • Ensure database sessions are always rolled back on errors (63a8eba)
  • Reload stale session in DatabaseSessionService when storage update time is later than the in-memory session object (1063fa5)
  • Make credential key generation stable and prevent cross-user credential leaks (33012e6)
  • Change MCP read_resource to return original contents (ecce7e5)
  • Recognize function responses as non-empty parts in LiteLLM (d0102ec)
  • Handle HTTP/HTTPS URLs for media files in LiteLLM content conversion (47221cd)
  • Fix Pydantic schema generation error for ClientSession (131fbd3)
  • Fix Click’s Wrapping in adk eval help message (3bcd8f7)
  • Stream errors as simple JSON objects in ADK web server SSE endpoint (798d005)
  • Remove print debugging artifact (0d38a36)

Improvements

  • Check will_continue for streaming function calls (2220d88)
  • Update ADK web, rework events, and add A2UI capabilities (37e6507)
  • Improve error handling for LiteLLM import in gemma_llm.py (574ec43)
  • Replace proxy methods with utils implementation (6ff10b2, f82ceb0)
  • Replace print statements with logging in ADK evaluation components (dd8cd27)
  • Add sample agent that requires OAuth flow during MCP tool listing, and convert MCPToolset to McpToolset in unit tests (2770012, 4341839)
  • Ensure BigQueryAgentAnalyticsPlugin is shut down after each test (c0c98d9)
  • Add ADK logger in RestApiTool (288c2c4)
  • Add GitHub Action check to run mypy (32f9f92)
  • Add unittests.sh script and update CONTRIBUTING.md (025b42c)
  • Extract helper function for LLM request building and response processing (753084f)

Don't miss a new adk-python release

NewReleases is sending notifications on new releases.