Releases: google/adk-java
Releases · google/adk-java
Release list
v1.6.0
1.6.0 (2026-07-06)
Features
- Add ADK Issue Monitoring (Spam Detection) Agent sample for Java (fd45dda)
- Add ADK Java Issue Triaging Agent sample (fa94438)
- Add ADK PR Triaging Agent for google/adk-java (f14f644)
- Add chat-completions API support to ApigeeLlm (df73784)
- Add ClassPathSkillSource to load skills from the Java classpath (587073a)
- Adds the ADK Stale Issue Auditor sample (b6bd2dd)
- advance SequentialAgent to later sub-agents after a HITL resume when resumability is enabled (407478b)
- flows: add RunConfig.groupFunctionResponsesInHistory to group function calls before responses (1b9b395)
- Updated Spring AI to 2.0.0, ECJ, build works with Java 25 (3f6665b)
Bug Fixes
- core: allow Long values to match INTEGER schema type (a6d41cf)
- dev: keep '' CORS default, drive WebSocket origins from config, warn on '' (5029081)
- dev: use localhost port wildcard for default CORS/WebSocket origins (cb73317)
- flows: end invocation on a deferred long-running tool call (6dd4594)
- gemini: align streaming function-call handling with ADK Python (37bb5e6)
- ignore usage-only responses outside bidi (a6cb87a)
- Make dry_run configurable for ADK Java PR triage, spam detection, and issue triage workflows (4225b07)
- Make stale issue workflow configurable for dry runs (d0edd41)
- map ChatResponse usage metadata to LlmResponse (71f6929)
- map token usage metadata for Anthropic Claude model (f76c5f9)
- Move @JsonCreator inside LiveRequest Builder (d667db8)
- preserve non-text output in streaming responses (b8be90d)
- prevent cross-user session data disclosure in VertexAiSessionService (d1b1d92)
- Resolve NPE when McpTool description is null (8ed64ea)
- Safely handle empty model in GoogleSearchTool request processor (e255192)
- scope ADK Java docs release analyzer to a single language (07a2ec9)
- skills: prevent path traversal in LocalSkillSource (55392f6)
- use daemon threads in OkHttp dispatchers to allow graceful JVM shutdown (9b046b6)
- Use existing secrets and built-in token in ADK docs release analyzer workflow (456234f)
- widen Integer to Long in castValue() for boxed Long parameter (bc32948)
- subscribe to appendEvent Single in runLive (fe6c683)
v1.5.0
1.5.0 (2026-06-20)
Features
- add avatar config support to the live streaming flow (fb9274e)
- add GitHub release-docs analyzer (Java) (792d2f4)
- Add thought signature support for chat completions (287987a)
- bump google-genai dependency to 1.58.0 (3abcf4f)
- Enhance BigQuery Agent Analytics Plugin with new event types (ec93f50)
- support optional types in function tool parameters (9a06dd3)
- Update token usage reporting to include thoughts and cache tokens (436b802)
Bug Fixes
- Bypass redundant getSession read in ADK Runner (aaedcaf)
- convert unsupported artifact MIME types to text (a60c246)
- initialize event ID when creating compaction events (fc480ec)
- SkillMdPath should be public (29d3203)
- stop dropping the latest event(s) in VertexAiSessionService.getSession (987ef4e)
- wait for the Runner to persist a step's events before the ADK flow's next step (sequential-tool-execution race) (0a40557)
Performance Improvements
- filter session events server-side by afterTimestamp in VertexAiSessionService.getSession (e12baa2)
v1.4.0
1.4.0 (2026-05-29)
Features
- Add GcsOffloader for asynchronously uploading content to Google Cloud Storage (51c9d1a)
- Add GcsOffloader for asynchronously uploading content to Google Cloud Storage (5bad20a)
- Add GcsOffloader for asynchronously uploading content to Google Cloud Storage (a1d2c1c)
- Add JSON cycle detection (1685a4e)
- Add streaming support for ChatCompletionsHTTPClient (384a0c5)
- Add telemetry and metrics recording capabilities (cc3b9ce)
- Add tools and toolset to use SkillSource in ADK agents (198b2fb)
- Add tools and toolset to use SkillSource in ADK agents (5ee51fd)
- Add tools and toolset to use SkillSource in ADK agents (83a4b71)
- Introduce max span limit to ApiServerSpanExporter (ae13073)
- refactor OpenTelemetry (OTel) instrumentation within the ADK core, moving from manual span management to structured helper classes (e6fe9aa)
Bug Fixes
- adjust default ToolExecutionMode to SEQUENTIAL as it was actual and widely used behavior for all ADK Java users before parallel tool execution fix (fe88217)
- inject Dev UI tracer into core engine for embedded telemetry (8bccc3b)
- introduce PARALLEL_SUBSCRIBE ToolExecutionMode; restore previous PARALLEL semantics (d3e7f31)
- mcp: honor custom URL sub-paths in StreamableHttpServerParameters (a0c4b7b)
- pre-merge stateDelta before onUserMessageCallback in Runner (f1155ec)
- Resolve IllegalArgumentException for text MIME types in LangChain4j adapter (6ad2043)
- revert "Suppress empty-text-only chunks from streaming responses while preserving carried metadata" (69638df)
- route HITL confirmation back to originating sub-agent in workflow agents (d608909)
- run tools concurrently in PARALLEL ToolExecutionMode (020499b)
- Suppress empty-text-only chunks from streaming responses while preserving carried metadata (b4791ef)
Documentation
- clarify LlmAgent composition for workflow agents (49ff63b)
v1.3.0
1.3.0 (2026-05-13)
Features
- Add ChatCompletionsHTTPClient and support for non-streaming requests (9529c1a)
- Add conversion from LlmRequest to ChatCompletionsRequest (d37f6ee)
- Add SkillSource interface and implementations for loading skills (509c4aa)
- Add support for refusal content using "[[REFUSAL]]:" prefix (e9184c9)
- Refactor BigQueryAgentAnalyticsPlugin for async in preparation for GCS offloading (d837ef0)
Bug Fixes
v1.2.0
1.2.0 (2026-04-24)
Features
- Add telemetry headers (4009905)
- Adding functionality to support customer content formating (52323b4)
- Allowing McpAsycToolset Builder to take in a McpSessionManager (78766c1)
- Forward state delta from all events to parent session instead of just the last event (f4cd1b7)
- Implement BigQuery auto-schema upgrade and view creation (14027d1)
- Make BigQueryAgentAnalyticsPlugin state per-invocation (629c390)
- Support ChatCompletionChunk to LlmResponse conversion (589328e)
- Support plugins in Java AgentTool similar to Python's implementation (02a08a1)
Bug Fixes
v1.1.0
1.1.0 (2026-04-10)
Features
- Add ChatCompletionsRequest object (88eb0f5)
- Add ChatCompletionsResponse object (55becb8)
- Add ChatCompletionsResponse to LlmResponse conversion (ec88c64)
- add README for ADK LangChain4j integration library (f861ef9)
- add support for Gemma models in LlmRegistry (9d6cc80)
- add transcription in event (cb9d2e3)
- Implement Trace management, add HITL support (7407e37)
- Support Sub-agent Escalation event in Parallel Agent (Issue #561) (88c8b0e)
- Update event IDs in BaseLlmFlow's post processing section (d0e1085)
- Agentic Planning for ADK (076e903)
Bug Fixes
v1.0.0
1.0.0 (2026-03-30)
Features
- add
InMemoryArtifactServicetoAgentExecutorand updatepom.xmldependencies (24f8d5e) - enabling output_schema and tools to coexist (40ca6a7)
Bug Fixes
- add media/image support in Spring AI MessageConverter (8ab7f07), closes #705
- add schema validation to SetModelResponseTool (issue #587 already implemented, but adding tests from PR #603) (cdc5199)
- Ensure callbackContextData is preserved across session update (d1e05ca)
- firestore: Remove hardcoded dependency version (6a5a55e)
- Fixing tracing for function calls (84dff10)
- handle null
AiMessage.text()to prevent NPE and add unit test (PR #1035) (3e21e7a) - parallel agent execution (677b6d7)
- Removing deprecated methods from Runner (3633a7d)
- resolve MCP tool parsing errors in Claude integration (5a2abbf)
- revert changes to AbstractMcpTool, maintaining backwards compatible text_output field in the response (5f34d59)
- Using App conformant agent names (f3eb936)
Documentation
- add pull request template (6bb721b)
Miscellaneous Chores
v1.0.0-rc.1
1.0.0-rc.1 (2026-03-20)
⚠ BREAKING CHANGES
- remove McpToolset constructors taking Optional parameters
- remove deprecated Example processor
Features
- add handling the a2a metadata in the RemoteA2AAgent; Add the enum type for the metadata keys (e51f911)
- add type-safe runAsync methods to BaseTool (b8cb7e2)
- Enhance LangChain4j to support MCP tools with parametersJsonSchema (2c71ba1)
- fixing context propagation for agent transfers (9a08076)
- Implement basic version of BigQuery Agent Analytics Plugin (c8ab0f9)
- init AGENTS.md file (7ebeb07)
- Propagating the otel context (8556d4a)
- remove McpToolset constructors taking Optional parameters (dbb1394)
- Return List instead of ImmutableList in CallbackUtil methods (8af5e03)
- update requestedAuthConfigs and its builder to be of general Map types (f145c74)
- Update return type of App.plugins() from ImmutableList to List (8ba4bfe)
- Update return type of toolsets() from ImmutableList to List (cd56902)
- update Session.state() and its builder to be of general Map types (4b9b99a)
- update stateDelta builder input to Map from ConcurrentMap (0d1e5c7)
Bug Fixes
- fix null handling in runAsyncImpl (567fdf0)
- improve processRequest_concurrentReadAndWrite_noException test case (4eb3613)
- include saveArtifact invocations in event chain (551c31f)
- prevent ConcurrentModificationException when session events are modified by another thread during iteration (fca43fb)
- Relaxing constraints for output schema (d7e03ee)
- Removing deprecated methods in Runner (0af82e6)
- Use ConcurrentHashMap in InvocationReplayState (94de7f1), closes #1009
- workaround for the client config streaming settings are not respected (#983) (3ba04d3)
Miscellaneous Chores
v0.9.0
0.9.0 (2026-03-13)
⚠ BREAKING CHANGES
- refactor ApiClient constructors hierarchy to remove Optional parameters
- remove deprecated LlmAgent.canonicalTools method
- remove deprecated LoadArtifactsTool.loadArtifacts method
- update LoopAgent's maxIteration field and methods to be @nullable instead of Optional
- Remove Optional parameters in EventActions
- remove deprecated url method in ComputerState.Builder
- Remove deprecated create method in ResponseProcessor
- remove McpAsyncToolset constructors
- use @nullable fields in Event class
- remove methods with Optional params from VertexCredential.Builder
Features
- add formatting to the RemoteA2A agent so it filters out the previous agent responses and updates the context of the function calls and responses (0d6dd55)
- add multiple LLM responses to LLM recordings for conformance tests (bdfb7a7)
- add support for gemini models in VertexAiRagRetrieval (924fb71)
- Fixing the spans produced by agent calls to have the right parent spans (3c8f488)
- Fixing the spans produced by agent calls to have the right parent spans (973f887)
- refactor ApiClient constructors hierarchy to remove Optional parameters (910d727)
- Remove deprecated create method in ResponseProcessor (5e1e1d4)
- remove deprecated LlmAgent.canonicalTools method (aabf15a)
- remove deprecated LoadArtifactsTool.loadArtifacts method (bc38558)
- remove deprecated url method in ComputerState.Builder (a86ede0)
- remove executionId method that takes Optional param from CodeExecutionUtils (be3b3f8)
- remove McpAsyncToolset constructors (82ef5ac)
- remove methods with Optional params from VertexCredential.Builder (0b9057c)
- Remove Optional parameters in EventActions (b8316b1)
- replace Optional type of version in BaseArtifactService.loadArtifact with Nullable (5fd4c53)
- Trigger traceCallLlm to set call_llm attributes before span ends (d9d84ee)
- Update converters for task and artifact events; add long running tools ids (9ce78d7)
- update LoopAgent's maxIteration field and methods to be @nullable instead of Optional (e0d833b)
- update return type for artifactDelta getter and setter to Map from ConcurrentMap (d1d5539)
- update return type for requestedToolConfirmations getter and setter to Map from ConcurrentMap (143b656)
- update return type for stateDelta() to Map from ConcurrentMap (3f6504e)
- update State constructors to accept general Map types (c6fdb63)
- use @nullable fields in Event class (67b602f)
Bug Fixes
- Explicitly setting the otel parent spans in agents, llm flow and function calls (20f863f)
- Make sure that
InvocationContext.callbackContextDataremains the same instance (14ee28b) - Removing deprecated InvocationContext methods (41f5af0)
- Removing deprecated methods in Runner (0d8e22d)
- Removing deprecated methods in Runner (b857f01)
Miscellaneous Chores
- override new version to 0.9.0 (a47b651)
v0.8.0
0.8.0 (2026-03-06)
⚠ BREAKING CHANGES
- remove methods with Optional params from LiveRequest.Builder
- remove deprecated methods accepting Optional params in InvocationContext
- remove deprecated BaseToolset.isToolSelected method
- remove Optional parameters from LlmResponse.Builder's methods
- remove support for legacy
transferToAgent, superseded bytransfer_to_agent
Features
- add callbacks functionality to the agent executor (7e8f9dc)
- add example on how to expose agent via A2A protocol (e3ea378)
- Adding a Builder for EventsCompactionConfig (05fbcfc)
- Adding a SessionKey for typeSafety (d899f6f)
- Adding plugin(Plugin... p) helper methods on App and Runner builders (dc1a192)
- implement partial event aggregation in RemoteA2AAgent (e064067)
- remove deprecated BaseToolset.isToolSelected method (d2f1145)
- remove deprecated methods accepting Optional params in InvocationContext (88153c8)
- remove methods with Optional params from LiveRequest.Builder (84c62a4)
- remove Optional parameters from LlmResponse.Builder's methods (a3ac436)
Bug Fixes
- Allow injecting ObjectMapper in FunctionTool, default to ObjectMapper (re. #473) (71b1070)
- downgrade otel.version to 1.51.0 (117fedf)
- Ensure Gemini 3.1 models have events correctly buffered (acffdb9)
- Exit from rearrangeEventsForLatestFunctionResponse if size of events is less than 2 (5bc3ef8)
- Fixed issue where events were marked empty if the first part had an empty text; now checks all parts for meaningful content (a0cba25)
- prepare JSON serialization for Jackson 2.20.2 and Spring Boot 4.0.2 upgrades (8c6591b)
Miscellaneous Chores
- revert: switch release please secret to use adk-java-releases-bot's token (7eafd1b)
Code Refactoring
- remove support for legacy
transferToAgent, superseded bytransfer_to_agent(c1ccb2e)