Source: github.com/google/adk-python/releases/tag/v2.14.0
The release moves BaseEnvironment, LocalEnvironment, EnvironmentToolset, DaytonaEnvironment and E2BEnvironment to stable, along with the A2A integration and a set of auth, app, CLI and cache modules. It adds MultiRunConfig, which runs each eval case several times through adk eval --num_runs and --parallelism and combines the scores or pass rates. ToolArgsMatcher checks tool call arguments with exact, case-insensitive, numeric-tolerance or LLM-backed semantic comparisons.
New integrations include TeamsRunner, which connects an ADK agent to Microsoft Teams chats and channels, and OpenAIDecisionsClassifier, which uses the OpenAI Decisions API. MongoDbMemoryService gains vector search retrieval and TTL expiration through memory_ttl_days. The release also adds adk generate_agent_card to build an A2A agent card from the command line.
Several changes can break existing code. FunctionTool parameters annotated with Enum now receive enum members instead of raw strings, and VertexAiSessionService.create_session rejects Sessions API config keys such as http_options. In environment mode, RunSkillScriptTool no longer accepts a command string and only runs .py, .sh and .bash scripts. The release also says a 30-node workflow's 200-turn run is 23% faster.
Why it matters if you build agents
Agent builders can rely on the promoted modules without experimental warnings, and the feature flags no longer block the 16 promoted toolset and integration features. Code that compares Enum tool arguments to strings, passes extra keys to VertexAiSessionService.create_session, or sends a command to RunSkillScriptTool in environment mode will fail and needs updating. Teams running evals should check how multi-run scores are combined before comparing results with earlier runs.
Get stories like this every weekday
One short email with the day's agent tooling news.