Skip to content

main: v2.4.0

Choose a tag to compare

@kalenkevich kalenkevich released this 28 Oct 16:11
96154a6

2.4.0 (2026-10-28)

Features

  • agents: port adk-python v0.5.0 changes to agents (#1104) (0b905df)
  • agents: port adk-python v1.0.0 changes to agents (#1109) (c33d2de)
  • cli: port adk-python v1.0.0 changes to cli (#1123) (bb9a49a)
  • dev: serve a sample's README.md to the web UI (#853) (a10c58e)
  • devtools: export version from the @google/adk-devtools entry point (#1098) (adc9b61)
  • Ergonomic TypeScript client for remote Vertex AI Agent Engine (#522) (0f28dc9)
  • integrations: add the Claude model on Vertex AI (#1125) (f882b34)
  • port adk-python v0.2.0 changes to agents, auth, events (+7 more) (#1080) (c5578bb)
  • port adk-python v0.3.0 changes to agents, auth, cli (+6 more) (#1091) (0eb3ac5)
  • port adk-python v0.4.0 changes to agents, events, tools/openapi_tool (#1100) (218b77f)
  • port adk-python v0.5.0 changes to artifacts, auth, events (+7 more) (#1102) (593c451)
  • port adk-python v1.0.0 changes to examples, runners, tools/apihub_tool (+1 more) (#1112) (687a201)
  • skills: throw typed errors from the skill loader (#1129) (d3bf84d)
  • tools: port adk-python v0.2.0 changes to tools/google_api_tool (#1079) (3cab273)
  • tools: port adk-python v0.3.0 changes to tools/application_integration_tool (#1099) (7e8880a)
  • tools: port adk-python v0.3.0 changes to tools/openapi_tool (#1093) (a0a04cc)
  • tools: port adk-python v1.0.0 changes to tools (#1108) (f9ffb18)
  • tools: port adk-python v1.0.0 changes to tools/application_integration_tool (#1122) (70944fe)
  • tools: port adk-python v1.0.0 changes to tools/google_api_tool (#1113) (53d885e)

Bug Fixes

  • agents: exclude foreign agent thought parts in convertForeignEvent (#1045) (17fc8e1)
  • cli: pin the generated Dockerfile to Node 24 (#1075) (ccaee44)
  • code-executors: define crop in the data-file helper (#994) (934d6bf)
  • code-executors: isolate ContainerCodeExecutor state per session (#887) (7303749)
  • core: call BaseToolset.processLlmRequest in LlmAgent (#1033) (#1083) (54dde37)
  • core: honor Gemini instance vertexai config in canUseOutputSchemaWithTools (#1103) (#1106) (36b6f91)
  • core: inject the text of inlineData artifacts into instructions (#1116) (dc02f45)
  • core: mark rejected tasks done before await resumes (#995) (e667745)
  • core: preserve repeated HTTP header values (#970) (910ad9f)
  • core: remove orphaned fragment from onToolErrorCallback JSDoc (#1019) (48e5423)
  • deploy: stop double-bundling the deployed agent in agent_engine/cloud_run images (#909) (0713105)
  • deploy: stop echoing the rejected value in the Dockerfile newline error (#1096) (be51de9)
  • dev: import Client from the @google-cloud/vertexai root in the Agent Engine deploy CLI (#1056) (afb7aca)
  • dev: preserve workflow node names in bundled agents (#1149) (2a65dc1)
  • dev: stop logging request headers and bodies on /api/reasoning_engine (#1163) (3a7af47)
  • integrations: honor maxOutputTokens, set finishReason and sanitize tool ids on Claude (#1139) (cfb4764)
  • models: fail over synchronous delegate initialization errors (#1153) (31b3500)
  • preserve server-managed deployment spec fields on agent_engine update (#1159) (0515f7c)
  • resolve the exit_loop built-in tool in YAML agent configs (#572) (fa62265)
  • resolve Windows CI port-exclusion EACCES and temp-dir EBUSY failures (#1071) (ecfe257)
  • sessions: reject a stale session in appendEvent instead of reloading it (#1182) (1b7d94f)
  • skills: report a missing or non-directory path in validateSkillDir (#1086) (9da07da)
  • skills: require a line of exactly --- as the SKILL.md frontmatter delimiter (#1136) (05739b5)
  • telemetry: avoid duplicate tracer registration (#1082) (120c282)
  • telemetry: report tool error types on spans (#956) (b255d60)
  • test: run the unit:integrations vitest project from the root scripts (#1157) (eed3147)
  • test: scale subprocess integration timeouts on Windows and clean up timeout config (#1092) (401dfee)
  • tools: match adk-python's empty-object schema, OAuth2 exchange and object-body parsing in op... (#1181) (0a96b46)
  • tools: return full memory entries from LoadMemoryTool (#1177) (0607350)
  • tools: send array query parameters as repeated keys in RestApiTool (#1135) (f799919)

Performance Improvements

  • sessions: move stale-session event reload out of appendEvent's row lock (#831) (fb6907b)