Releases: google/adk-python
Releases · google/adk-python
v1.4.2
v1.4.1
1.4.1 (2025-06-18)
Features
- Add Authenticated Tool (Experimental) (dcea776)
- Add enable_affective_dialog and proactivity to run_config and llm_request (fe1d5aa)
- Add import session API in the fast API (233fd20)
- Add integration tests for litellm with and without turning on add_function_to_prompt (8e28587)
- Allow data_store_specs pass into ADK VAIS built-in tool (675faef)
- Enable MCP Tool Auth (Experimental) (157d9be)
- Implement GcsEvalSetResultsManager to handle storage of eval sets on GCS, and refactor eval set results manager (0a5cf45)
- Re-factor some eval sets manager logic, and implement GcsEvalSetsManager to handle storage of eval sets on GCS (1551bd4)
- Support real time input config (d22920b)
- Support refresh access token automatically for rest_api_tool (1779801)
Bug Fixes
- Fix Agent generate config err (#1305) (badbcbd)
- Fix Agent generate config error (#1450) (694b712)
- Fix liteLLM test failures (fef8778)
- Fix tracing for live (58e07ca)
- Merge custom http options with adk specific http options in model api request (4ccda99)
- Remove unnecessary double quote on Claude docstring (bbceb4f)
- Set explicit project in the BigQuery client (6d174eb)
- Support streaming in litellm + adk and add corresponding integration tests (aafa80b)
- Support project-based gemini model path to use google_search_tool (b2fc774)
- Update conversion between Celsius and Fahrenheit (1ae176a)
Chores
- Set
agent_engine_id
in the VertexAiSessionService constructor, also use theagent_engine_id
field instead of overridingapp_name
in FastAPI endpoint (fc65873)
v1.3.0
1.3.0 (2025-06-11)
Features
- Add memory_service option to CLI (416dc6f)
- Add support for display_name and description when deploying to agent engine (aaf1f9b)
- Dev UI: Trace View
- New trace tab which contains all traces grouped by user messages
- Click each row will open corresponding event details
- Hover each row will highlight the corresponding message in dialog
- Dev UI: Evaluation
- Tool enhancements:
Bug Fixes
- Agent Engine deployment:
- Fix broken agent graphs (3b1f2ae)
- Forward
__annotations__
to the fake func for FunctionTool inspection (9abb841) - Handle the case when agent loading error doesn't have msg attribute in agent loader (c224626)
- Prevent agent_graph.py throwing when workflow agent is root agent (4b1c218)
- Remove display_name for non-Vertex file uploads (cf5d701)
Documentation
v1.2.1
v1.2.0
1.2.0 (2025-06-04)
Features
- Add agent engine as a deployment option to the ADK CLI (2409c3e)
- Add an option to use gcs artifact service in adk web. (8d36dbd)
- Add index tracking to handle parallel tool call using litellm (05f4834)
- Add sortByColumn functionality to List Operation (af95dd2)
- Add implementation for
get_eval_case
,update_eval_case
anddelete_eval_case
for the local eval sets manager. (a7575e0) - Expose more config of VertexAiSearchTool from latest Google GenAI SDK (2b5c89b)
- New Agent Visualization (da4bc0e)
- Set the max width and height of view image dialog to be 90% (98a635a)
- Support Langchain StructuredTool for Langchain tool (7e637d3)
- Support Langchain tools that has run_manager in _run args and don't have args_schema populated (3616bb5)
- Update for anthropic models (16f7d98)
- Use bigquery scope by default in bigquery credentials. (ba5b80d)
- Add jira_agent adk samples code which connect Jira cloud (8759a25)
- Render HTML artifact in chat window (5c2ad32)
- Add export to json button in the chat window (fc3e374)
- Add tooltip to the export session button (2735942)
Bug Fixes
- Add adk icon for UI (2623c71)
- Add cache_ok option to remove sa warning. (841e10a)
- Add support for running python main function in UnsafeLocalCodeExecutor when the code has an if _name_ == "_main_" statement. (95e33ba)
- Adk web not working on some env for windows, fixes google/adk-web#34 (daac8ce)
- Assign empty inputSchema to MCP tool when converting an ADK tool that wraps a function which takes no parameters. (2a65c41)
- Call all tools in parallel calls during partial authentication (0e72efb)
- Continue fetching events if there are multiple pages. (6506302)
- Do not convert "false" value to dict (60ceea7)
- Enhance agent loader exception handler and expose precise error information (7b51ae9)
- Ensure function description is copied when ignoring parameters (7fdc6b4)
- Filter memory by app_name and user_id. (db4bc98)
- Fix filtering by user_id for vertex ai session service listing (9d4ca4e)
- fix parameter schema generation for gemini (5a67a94)
- Handle non-indexed function call chunks with incremental fallback index (b181cbc)
- Handles function tool parsing corner case where type hints are stored as strings. (a8a2074)
- Introduce PreciseTimestamp to fix mysql datetime precision issue. (841e10a)
- match arg case in errors (b226a06)
- ParallelAgent should only append to its immediate sub-agent, not transitive descendants (ec8bc73)
- Relax openapi spec to gemini schema conversion to tolerate more cases (b1a74d0)
- Remove labels from config when using API key from Google AI Studio to call model (5d29716)
- sample: Correct text artifact saving in artifact_save_text sample (5c6001d)
- Separate thinking from text parts in streaming mode (795605a)
- Simplify content for ollama provider (eaee49b)
- Timeout issues for mcpstdio server when mcp tools are incorrect. (45ef668)
- transfer_to_agent: update docstring for clarity and accuracy (854a544)
- Update unit test code for test_connection (b0403b2)
- Use inspect.cleandoc on function docstrings in generate_function_declaration. (f7cb666)
- Restore errors path (32c5ffa)
- Unused import for deprecated (ccd05e0)
- Prevent JSON parsing errors and preserve non-ascii characters in telemetry (d587270)
- Raise HTTPException when running evals in fast_api if google-adk[eval] is not installed (1de5c34)
- Fix typos in README for sample bigquery_agent and oauth_calendar_agent (9bdd813)
- Make tool_call one span for telemetry and renamed to execute_tool (999a7fe)
- Use media type in chat window. Remove isArtifactImage and isArtifactAudio reference (1452dac)
- Set output_schema correctly for LiteLllm (6157db7)
- Update pending event dialog style (1db601c)
- Remove the gap between event holder and image (63822c3)
Documentation
- Adds a sample agent to illustrate state usage via
callbacks
. (18fbe3c) - Fix typos in documentation (7aaf811)
- Change eval_dataset to eval_dataset_file_path_or_dir (62d7bf5)
- Fix broken link to A2A example (0d66a78)
- Fix typo in envs.py (bd588bc)
- Updates CONTRIBUTING.md to refine setup process using uv. (04e07b4)
- Create and update project documentation including README.md and CONTRIBUTING.md (f180331)
- Rename the root agent in the example to match the example name (94c0aca)
- ADK: add section comment ([349a414](349a414120fbff0937966af95...
v1.1.1
v1.1.0
1.1.0
Features
- Extract agent loading logic from fast_api.py to a separate AgentLoader class and support more agent definition folder/file structure.
- Added audio play in web UI.
- Added input transcription support for live/streaming.
- Added support for storing eval run history locally in adk eval cli.
- Image artifacts can now be clicked directly in chat message to view.
- Left side panel can now be resized.
Bug Fixes
- Avoid duplicating log in stderr.
- Align event filtering and ordering logic.
- Add handling for None param.annotation.
- Fixed several minor bugs regarding eval tab in web UI.
Miscellaneous Chores
- Updates mypy config in pyproject.toml.
- Add google search agent in samples.
- Update filtered schema parameters for Gemini API.
- Adds autoformat.sh for formatting codebase.
v1.0.0
1.0.0
⚠ BREAKING CHANGES
- Evaluation dataset schema is finalized with strong-type pydantic models.
(previously saved eval file needs re-generation, for both adk eval cli and
the eval tab in adk web UI). BuiltInCodeExecutor
(in code_executors package) replaces
BuiltInCodeExecutionTool
(previously in tools package).- All methods in services are now async, including session service, artifact
service and memory service.list_events
andclose_session
methods are removed from session service.
- agent.py file structure with MCP tools are now easier and simpler (now vs before).
Old format is not working anymore. Memory
schema andMemoryService
is redesigned.- Mark various class attributes as private in the classes in the
tools
package. - Disabled session state injection if instruction provider is used.
(so that you can have{var_name}
in the instruction, which is required for code snippets) - Toolbox integration is revamped: tools/toolbox_tool.py → tools/toolbox_toolset.py.
- Removes the experimental
remote_agent.py
. We'll redesign it and bring it back.
Features
- Dev UI:
- A brand new trace view for overall agent invocation.
- A revamped evaluation tab and comparison view for checking eval results.
- Introduced
BaseToolset
to allow dynamically add/remove tools for agents.- Revamped MCPToolset with the new BaseToolset interface.
- Revamped GoogleApiTool, GoogleApiToolset and ApplicationIntegrationToolset with the new BaseToolset interface.
- Resigned agent.py file structure when needing MCPToolset.
- Added ToolboxToolset.
- Redesigned strong-typed agent evaluation schema.
- Allows users to create more cohesive eval sets.
- Allows evals to be extended for non-text modality.
- Allows for a structured interaction with the uber eval system.
- Redesigned Memory schema and MemoryService interfaces.
- Added token usage to LlmResponse.
- Allowed specifying
--adk_version
inadk deploy cloud_run
cli. Default is the current version.
Bug Fixes
- Fixed
adk deploy cloud_run
failing bug. - Fixed logs not being printed due to
google-auth
library.
Miscellaneous Chores
- Display full help text when adk cli receives invalid arguments.
adk web
now binds127.0.0.1
by default, instead of 0.0.0.0.InMemoryRunner
now takesBaseAgent
in constructor.- Various docstring improvements.
- Various UI tweaks.
- Various bug fixes.
- Update various contributing/samples for contributors to validate the implementation.
Full Changelog: v0.5.0...v1.0.0
v0.5.0
0.5.0
⚠ BREAKING CHANGES
- Updated artifact and memory service interface to be async. Agents that
interact with these services through callbacks or tools will now need to
adjust their invocation methods to be async (using await), or ensure calls
are wrapped in an asynchronous executor like asyncio.run(). Any service that
extends the base interface must also be updated.
Features
- Introduced the ability to chain model callbacks.
- Added support for async agent and model callbacks.
- Added input transcription support for live/streaming.
- Captured all agent code error and display on UI.
- Set param required tag to False by default in openapi_tool.
- Updated evaluation functions to be asynchronous.
Bug Fixes
- Ensured a unique ID is generated for every event.
- Fixed the issue when openapi_specparser has parameter.required as None.
- Updated the 'type' value on the items/properties nested structures for Anthropic models to adhere to JSON schema.
- Fix litellm error issues.
Miscellaneous Chores
- Regenerated API docs.
- Created a contributing folder and added samples.
- Updated the contributing guide.
- Docstring improvements, typo fixings, GitHub action to enforce code styles on formatting and imports, etc.
v0.4.0
0.4.0
⚠ BREAKING CHANGES
- Set the max size of strings in database columns. MySQL mandates that all VARCHAR-type fields must specify their lengths.
- Extract content encode/decode logic to a shared util, resolve issues with JSON serialization, and update key length for DB table to avoid key too long issue in mysql.
- Enhance
FunctionTool
to verify if the model is providing all the mandatory arguments.
Features
- Update ADK setup guide to improve onboarding experience.
- feat: add ordering to recent events in database session service.
- feat(llm_flows): support async before/after tool callbacks.
- feat: Added --replay and --resume options to adk run cli. Check adk run --help for more details.
- Created a new Integration Connector Tool (underlying of the ApplicationIntegrationToolSet) so that we do not force LLM to provide default value.
Bug Fixes
- Don't send content with empty text to LLM.
- Fix google search reading undefined for
renderedContent
.
Miscellaneous Chores
- Docstring improvements, typo fixings, github action to enfore code styles on formatting and imports, etc.