google-adk 0.2.0__tar.gz → 0.3.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. {google_adk-0.2.0 → google_adk-0.3.0}/PKG-INFO +27 -4
  2. {google_adk-0.2.0 → google_adk-0.3.0}/README.md +25 -2
  3. {google_adk-0.2.0 → google_adk-0.3.0}/pyproject.toml +1 -1
  4. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/callback_context.py +0 -1
  5. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/auth/auth_credential.py +2 -1
  6. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/auth/auth_handler.py +7 -3
  7. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/browser/index.html +1 -1
  8. google_adk-0.2.0/src/google/adk/cli/browser/main-ZBO76GRM.js → google_adk-0.3.0/src/google/adk/cli/browser/main-HWIBUY2R.js +69 -53
  9. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/cli_deploy.py +6 -1
  10. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/cli_eval.py +1 -1
  11. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/cli_tools_click.py +28 -12
  12. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/fast_api.py +6 -0
  13. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/evaluation/agent_evaluator.py +2 -2
  14. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/evaluation/response_evaluator.py +2 -2
  15. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/evaluation/trajectory_evaluator.py +4 -5
  16. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/llm_flows/agent_transfer.py +1 -1
  17. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/llm_flows/base_llm_flow.py +1 -1
  18. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/llm_flows/contents.py +1 -1
  19. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/llm_flows/functions.py +1 -3
  20. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/llm_flows/instructions.py +2 -2
  21. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/models/gemini_llm_connection.py +2 -2
  22. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/models/llm_response.py +10 -1
  23. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/planners/built_in_planner.py +1 -0
  24. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/sessions/database_session_service.py +10 -6
  25. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/sessions/state.py +1 -1
  26. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/agent_tool.py +2 -3
  27. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/google_api_tool/google_api_tool_set.py +12 -9
  28. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/load_artifacts_tool.py +1 -1
  29. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/auth/credential_exchangers/oauth2_exchanger.py +4 -4
  30. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/openapi_spec_parser/openapi_toolset.py +1 -1
  31. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/openapi_spec_parser/operation_parser.py +5 -12
  32. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/openapi_spec_parser/rest_api_tool.py +46 -8
  33. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/version.py +1 -1
  34. {google_adk-0.2.0 → google_adk-0.3.0}/LICENSE +0 -0
  35. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/__init__.py +0 -0
  36. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/__init__.py +0 -0
  37. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/active_streaming_tool.py +0 -0
  38. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/base_agent.py +0 -0
  39. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/invocation_context.py +0 -0
  40. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/langgraph_agent.py +0 -0
  41. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/live_request_queue.py +0 -0
  42. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/llm_agent.py +0 -0
  43. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/loop_agent.py +0 -0
  44. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/parallel_agent.py +0 -0
  45. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/readonly_context.py +0 -0
  46. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/remote_agent.py +0 -0
  47. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/run_config.py +0 -0
  48. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/sequential_agent.py +0 -0
  49. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/agents/transcription_entry.py +0 -0
  50. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/artifacts/__init__.py +0 -0
  51. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/artifacts/base_artifact_service.py +0 -0
  52. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/artifacts/gcs_artifact_service.py +0 -0
  53. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/artifacts/in_memory_artifact_service.py +0 -0
  54. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/auth/__init__.py +0 -0
  55. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/auth/auth_preprocessor.py +0 -0
  56. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/auth/auth_schemes.py +0 -0
  57. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/auth/auth_tool.py +0 -0
  58. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/__init__.py +0 -0
  59. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/__main__.py +0 -0
  60. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/agent_graph.py +0 -0
  61. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/browser/adk_favicon.svg +0 -0
  62. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/browser/assets/audio-processor.js +0 -0
  63. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/browser/assets/config/runtime-config.json +0 -0
  64. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/browser/polyfills-FFHMD2TL.js +0 -0
  65. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/browser/styles-4VDSPQ37.css +0 -0
  66. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/cli.py +0 -0
  67. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/cli_create.py +0 -0
  68. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/utils/__init__.py +0 -0
  69. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/utils/envs.py +0 -0
  70. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/utils/evals.py +0 -0
  71. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/cli/utils/logs.py +0 -0
  72. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/code_executors/__init__.py +0 -0
  73. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/code_executors/base_code_executor.py +0 -0
  74. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/code_executors/code_execution_utils.py +0 -0
  75. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/code_executors/code_executor_context.py +0 -0
  76. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/code_executors/container_code_executor.py +0 -0
  77. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/code_executors/unsafe_local_code_executor.py +0 -0
  78. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/code_executors/vertex_ai_code_executor.py +0 -0
  79. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/evaluation/__init__.py +0 -0
  80. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/evaluation/evaluation_constants.py +0 -0
  81. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/evaluation/evaluation_generator.py +0 -0
  82. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/events/__init__.py +0 -0
  83. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/events/event.py +0 -0
  84. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/events/event_actions.py +0 -0
  85. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/examples/__init__.py +0 -0
  86. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/examples/base_example_provider.py +0 -0
  87. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/examples/example.py +0 -0
  88. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/examples/example_util.py +0 -0
  89. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/examples/vertex_ai_example_store.py +0 -0
  90. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/__init__.py +0 -0
  91. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/llm_flows/__init__.py +0 -0
  92. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/llm_flows/_base_llm_processor.py +0 -0
  93. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/llm_flows/_code_execution.py +0 -0
  94. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/llm_flows/_nl_planning.py +0 -0
  95. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/llm_flows/audio_transcriber.py +0 -0
  96. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/llm_flows/auto_flow.py +0 -0
  97. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/llm_flows/basic.py +0 -0
  98. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/llm_flows/identity.py +0 -0
  99. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/flows/llm_flows/single_flow.py +0 -0
  100. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/memory/__init__.py +0 -0
  101. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/memory/base_memory_service.py +0 -0
  102. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/memory/in_memory_memory_service.py +0 -0
  103. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/memory/vertex_ai_rag_memory_service.py +0 -0
  104. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/models/__init__.py +0 -0
  105. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/models/anthropic_llm.py +0 -0
  106. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/models/base_llm.py +0 -0
  107. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/models/base_llm_connection.py +0 -0
  108. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/models/google_llm.py +0 -0
  109. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/models/lite_llm.py +0 -0
  110. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/models/llm_request.py +0 -0
  111. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/models/registry.py +0 -0
  112. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/planners/__init__.py +0 -0
  113. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/planners/base_planner.py +0 -0
  114. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/planners/plan_re_act_planner.py +0 -0
  115. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/runners.py +0 -0
  116. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/sessions/__init__.py +0 -0
  117. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/sessions/base_session_service.py +0 -0
  118. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/sessions/in_memory_session_service.py +0 -0
  119. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/sessions/session.py +0 -0
  120. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/sessions/vertex_ai_session_service.py +0 -0
  121. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/telemetry.py +0 -0
  122. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/__init__.py +0 -0
  123. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/_automatic_function_calling_util.py +0 -0
  124. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/apihub_tool/__init__.py +0 -0
  125. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/apihub_tool/apihub_toolset.py +0 -0
  126. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/apihub_tool/clients/__init__.py +0 -0
  127. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/apihub_tool/clients/apihub_client.py +0 -0
  128. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/apihub_tool/clients/secret_client.py +0 -0
  129. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/application_integration_tool/__init__.py +0 -0
  130. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/application_integration_tool/application_integration_toolset.py +0 -0
  131. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/application_integration_tool/clients/connections_client.py +0 -0
  132. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/application_integration_tool/clients/integration_client.py +0 -0
  133. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/base_tool.py +0 -0
  134. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/built_in_code_execution_tool.py +0 -0
  135. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/crewai_tool.py +0 -0
  136. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/example_tool.py +0 -0
  137. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/exit_loop_tool.py +0 -0
  138. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/function_parameter_parse_util.py +0 -0
  139. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/function_tool.py +0 -0
  140. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/get_user_choice_tool.py +0 -0
  141. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/google_api_tool/__init__.py +0 -0
  142. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/google_api_tool/google_api_tool.py +0 -0
  143. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/google_api_tool/google_api_tool_sets.py +0 -0
  144. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/google_api_tool/googleapi_to_openapi_converter.py +0 -0
  145. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/google_search_tool.py +0 -0
  146. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/langchain_tool.py +0 -0
  147. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/load_memory_tool.py +0 -0
  148. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/load_web_page.py +0 -0
  149. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/long_running_tool.py +0 -0
  150. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/mcp_tool/__init__.py +0 -0
  151. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/mcp_tool/conversion_utils.py +0 -0
  152. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/mcp_tool/mcp_session_manager.py +0 -0
  153. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/mcp_tool/mcp_tool.py +0 -0
  154. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/mcp_tool/mcp_toolset.py +0 -0
  155. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/__init__.py +0 -0
  156. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/auth/__init__.py +0 -0
  157. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/auth/auth_helpers.py +0 -0
  158. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/auth/credential_exchangers/__init__.py +0 -0
  159. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.py +0 -0
  160. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/auth/credential_exchangers/base_credential_exchanger.py +0 -0
  161. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.py +0 -0
  162. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/common/__init__.py +0 -0
  163. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/common/common.py +0 -0
  164. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/openapi_spec_parser/__init__.py +0 -0
  165. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.py +0 -0
  166. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.py +0 -0
  167. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/preload_memory_tool.py +0 -0
  168. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/retrieval/__init__.py +0 -0
  169. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/retrieval/base_retrieval_tool.py +0 -0
  170. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/retrieval/files_retrieval.py +0 -0
  171. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/retrieval/llama_index_retrieval.py +0 -0
  172. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/retrieval/vertex_ai_rag_retrieval.py +0 -0
  173. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/tool_context.py +0 -0
  174. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/toolbox_tool.py +0 -0
  175. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/transfer_to_agent_tool.py +0 -0
  176. {google_adk-0.2.0 → google_adk-0.3.0}/src/google/adk/tools/vertex_ai_search_tool.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: google-adk
3
- Version: 0.2.0
3
+ Version: 0.3.0
4
4
  Summary: Agent Development Kit
5
5
  Author-email: Google LLC <googleapis-packages@google.com>
6
6
  Requires-Python: >=3.9
@@ -27,7 +27,7 @@ Requires-Dist: google-cloud-aiplatform>=1.87.0
27
27
  Requires-Dist: google-cloud-secret-manager>=2.22.0
28
28
  Requires-Dist: google-cloud-speech>=2.30.0
29
29
  Requires-Dist: google-cloud-storage>=2.18.0, <3.0.0
30
- Requires-Dist: google-genai>=1.9.0
30
+ Requires-Dist: google-genai>=1.11.0
31
31
  Requires-Dist: graphviz>=0.20.2
32
32
  Requires-Dist: mcp>=1.5.0;python_version>='3.10'
33
33
  Requires-Dist: opentelemetry-api>=1.31.0
@@ -126,12 +126,27 @@ debugging, versioning, and deployment anywhere – from your laptop to the cloud
126
126
 
127
127
  ## 🚀 Installation
128
128
 
129
- You can install the ADK using `pip`:
129
+ ### Stable Release (Recommended)
130
+
131
+ You can install the latest stable version of ADK using `pip`:
130
132
 
131
133
  ```bash
132
134
  pip install google-adk
133
135
  ```
134
136
 
137
+ The release cadence is weekly.
138
+
139
+ This version is recommended for most users as it represents the most recent official release.
140
+
141
+ ### Development Version
142
+ Bug fixes and new features are merged into the main branch on GitHub first. If you need access to changes that haven't been included in an official PyPI release yet, you can install directly from the main branch:
143
+
144
+ ```bash
145
+ pip install git+https://github.com/google/adk-python.git@main
146
+ ```
147
+
148
+ Note: The development version is built directly from the latest code commits. While it includes the newest fixes and features, it may also contain experimental changes or bugs not present in the stable release. Use it primarily for testing upcoming changes or accessing critical fixes before they are officially released.
149
+
135
150
  ## 📚 Documentation
136
151
 
137
152
  Explore the full documentation for detailed guides on building, evaluating, and
@@ -193,10 +208,18 @@ adk eval \
193
208
  samples_for_testing/hello_world/hello_world_eval_set_001.evalset.json
194
209
  ```
195
210
 
211
+ ## 🤖 A2A and ADK integration
212
+
213
+ For remote agent-to-agent communication, ADK integrates with the
214
+ [A2A protocol](https://github.com/google/A2A/).
215
+ See this [example](https://github.com/google/A2A/tree/main/samples/python/agents/google_adk)
216
+ for how they can work together.
196
217
 
197
218
  ## 🤝 Contributing
198
219
 
199
- We welcome contributions from the community! Whether it's bug reports, feature requests, documentation improvements, or code contributions, please see our [**Contributing Guidelines**](./CONTRIBUTING.md) to get started.
220
+ We welcome contributions from the community! Whether it's bug reports, feature requests, documentation improvements, or code contributions, please see our
221
+ - [General contribution guideline and flow](https://google.github.io/adk-docs/contributing-guide/#questions).
222
+ - Then if you want to contribute code, please read [Code Contributing Guidelines](./CONTRIBUTING.md) to get started.
200
223
 
201
224
  ## 📄 License
202
225
 
@@ -45,12 +45,27 @@ debugging, versioning, and deployment anywhere – from your laptop to the cloud
45
45
 
46
46
  ## 🚀 Installation
47
47
 
48
- You can install the ADK using `pip`:
48
+ ### Stable Release (Recommended)
49
+
50
+ You can install the latest stable version of ADK using `pip`:
49
51
 
50
52
  ```bash
51
53
  pip install google-adk
52
54
  ```
53
55
 
56
+ The release cadence is weekly.
57
+
58
+ This version is recommended for most users as it represents the most recent official release.
59
+
60
+ ### Development Version
61
+ Bug fixes and new features are merged into the main branch on GitHub first. If you need access to changes that haven't been included in an official PyPI release yet, you can install directly from the main branch:
62
+
63
+ ```bash
64
+ pip install git+https://github.com/google/adk-python.git@main
65
+ ```
66
+
67
+ Note: The development version is built directly from the latest code commits. While it includes the newest fixes and features, it may also contain experimental changes or bugs not present in the stable release. Use it primarily for testing upcoming changes or accessing critical fixes before they are officially released.
68
+
54
69
  ## 📚 Documentation
55
70
 
56
71
  Explore the full documentation for detailed guides on building, evaluating, and
@@ -112,10 +127,18 @@ adk eval \
112
127
  samples_for_testing/hello_world/hello_world_eval_set_001.evalset.json
113
128
  ```
114
129
 
130
+ ## 🤖 A2A and ADK integration
131
+
132
+ For remote agent-to-agent communication, ADK integrates with the
133
+ [A2A protocol](https://github.com/google/A2A/).
134
+ See this [example](https://github.com/google/A2A/tree/main/samples/python/agents/google_adk)
135
+ for how they can work together.
115
136
 
116
137
  ## 🤝 Contributing
117
138
 
118
- We welcome contributions from the community! Whether it's bug reports, feature requests, documentation improvements, or code contributions, please see our [**Contributing Guidelines**](./CONTRIBUTING.md) to get started.
139
+ We welcome contributions from the community! Whether it's bug reports, feature requests, documentation improvements, or code contributions, please see our
140
+ - [General contribution guideline and flow](https://google.github.io/adk-docs/contributing-guide/#questions).
141
+ - Then if you want to contribute code, please read [Code Contributing Guidelines](./CONTRIBUTING.md) to get started.
119
142
 
120
143
  ## 📄 License
121
144
 
@@ -33,7 +33,7 @@ dependencies = [
33
33
  "google-cloud-secret-manager>=2.22.0", # Fetching secrets in RestAPI Tool
34
34
  "google-cloud-speech>=2.30.0", # For Audo Transcription
35
35
  "google-cloud-storage>=2.18.0, <3.0.0", # For GCS Artifact service
36
- "google-genai>=1.9.0", # Google GenAI SDK
36
+ "google-genai>=1.11.0", # Google GenAI SDK
37
37
  "graphviz>=0.20.2", # Graphviz for graph rendering
38
38
  "mcp>=1.5.0;python_version>='3.10'", # For MCP Toolset
39
39
  "opentelemetry-api>=1.31.0", # OpenTelemetry
@@ -23,7 +23,6 @@ from .readonly_context import ReadonlyContext
23
23
  if TYPE_CHECKING:
24
24
  from google.genai import types
25
25
 
26
- from ..events.event import Event
27
26
  from ..events.event_actions import EventActions
28
27
  from ..sessions.state import State
29
28
  from .invocation_context import InvocationContext
@@ -66,7 +66,8 @@ class OAuth2Auth(BaseModelWithConfig):
66
66
  redirect_uri: Optional[str] = None
67
67
  auth_response_uri: Optional[str] = None
68
68
  auth_code: Optional[str] = None
69
- token: Optional[Dict[str, Any]] = None
69
+ access_token: Optional[str] = None
70
+ refresh_token: Optional[str] = None
70
71
 
71
72
 
72
73
  class ServiceAccountCredential(BaseModelWithConfig):
@@ -82,7 +82,8 @@ class AuthHandler:
82
82
  or not auth_credential.oauth2
83
83
  or not auth_credential.oauth2.client_id
84
84
  or not auth_credential.oauth2.client_secret
85
- or auth_credential.oauth2.token
85
+ or auth_credential.oauth2.access_token
86
+ or auth_credential.oauth2.refresh_token
86
87
  ):
87
88
  return self.auth_config.exchanged_auth_credential
88
89
 
@@ -93,7 +94,7 @@ class AuthHandler:
93
94
  redirect_uri=auth_credential.oauth2.redirect_uri,
94
95
  state=auth_credential.oauth2.state,
95
96
  )
96
- token = client.fetch_token(
97
+ tokens = client.fetch_token(
97
98
  token_endpoint,
98
99
  authorization_response=auth_credential.oauth2.auth_response_uri,
99
100
  code=auth_credential.oauth2.auth_code,
@@ -102,7 +103,10 @@ class AuthHandler:
102
103
 
103
104
  updated_credential = AuthCredential(
104
105
  auth_type=AuthCredentialTypes.OAUTH2,
105
- oauth2=OAuth2Auth(token=dict(token)),
106
+ oauth2=OAuth2Auth(
107
+ access_token=tokens.get("access_token"),
108
+ refresh_token=tokens.get("refresh_token"),
109
+ ),
106
110
  )
107
111
  return updated_credential
108
112
 
@@ -29,5 +29,5 @@
29
29
  <style>html{color-scheme:dark}html{--mat-sys-background:light-dark(#fcf9f8, #131314);--mat-sys-error:light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container:light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface:light-dark(#f3f0f0, #313030);--mat-sys-inverse-primary:light-dark(#c1c7cd, #595f65);--mat-sys-inverse-surface:light-dark(#313030, #e5e2e2);--mat-sys-on-background:light-dark(#1c1b1c, #e5e2e2);--mat-sys-on-error:light-dark(#ffffff, #690005);--mat-sys-on-error-container:light-dark(#410002, #ffdad6);--mat-sys-on-primary:light-dark(#ffffff, #2b3136);--mat-sys-on-primary-container:light-dark(#161c21, #dde3e9);--mat-sys-on-primary-fixed:light-dark(#161c21, #161c21);--mat-sys-on-primary-fixed-variant:light-dark(#41474d, #41474d);--mat-sys-on-secondary:light-dark(#ffffff, #003061);--mat-sys-on-secondary-container:light-dark(#001b3c, #d5e3ff);--mat-sys-on-secondary-fixed:light-dark(#001b3c, #001b3c);--mat-sys-on-secondary-fixed-variant:light-dark(#0f4784, #0f4784);--mat-sys-on-surface:light-dark(#1c1b1c, #e5e2e2);--mat-sys-on-surface-variant:light-dark(#44474a, #e1e2e6);--mat-sys-on-tertiary:light-dark(#ffffff, #2b3136);--mat-sys-on-tertiary-container:light-dark(#161c21, #dde3e9);--mat-sys-on-tertiary-fixed:light-dark(#161c21, #161c21);--mat-sys-on-tertiary-fixed-variant:light-dark(#41474d, #41474d);--mat-sys-outline:light-dark(#74777b, #8e9194);--mat-sys-outline-variant:light-dark(#c4c7ca, #44474a);--mat-sys-primary:light-dark(#595f65, #c1c7cd);--mat-sys-primary-container:light-dark(#dde3e9, #41474d);--mat-sys-primary-fixed:light-dark(#dde3e9, #dde3e9);--mat-sys-primary-fixed-dim:light-dark(#c1c7cd, #c1c7cd);--mat-sys-scrim:light-dark(#000000, #000000);--mat-sys-secondary:light-dark(#305f9d, #a7c8ff);--mat-sys-secondary-container:light-dark(#d5e3ff, #0f4784);--mat-sys-secondary-fixed:light-dark(#d5e3ff, #d5e3ff);--mat-sys-secondary-fixed-dim:light-dark(#a7c8ff, #a7c8ff);--mat-sys-shadow:light-dark(#000000, #000000);--mat-sys-surface:light-dark(#fcf9f8, #131314);--mat-sys-surface-bright:light-dark(#fcf9f8, #393939);--mat-sys-surface-container:light-dark(#f0eded, #201f20);--mat-sys-surface-container-high:light-dark(#eae7e7, #2a2a2a);--mat-sys-surface-container-highest:light-dark(#e5e2e2, #393939);--mat-sys-surface-container-low:light-dark(#f6f3f3, #1c1b1c);--mat-sys-surface-container-lowest:light-dark(#ffffff, #0e0e0e);--mat-sys-surface-dim:light-dark(#dcd9d9, #131314);--mat-sys-surface-tint:light-dark(#595f65, #c1c7cd);--mat-sys-surface-variant:light-dark(#e1e2e6, #44474a);--mat-sys-tertiary:light-dark(#595f65, #c1c7cd);--mat-sys-tertiary-container:light-dark(#dde3e9, #41474d);--mat-sys-tertiary-fixed:light-dark(#dde3e9, #dde3e9);--mat-sys-tertiary-fixed-dim:light-dark(#c1c7cd, #c1c7cd);--mat-sys-neutral-variant20:#2d3134;--mat-sys-neutral10:#1c1b1c}html{--mat-sys-level0:0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level1:0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level2:0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level3:0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12)}html{--mat-sys-level4:0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12)}html{--mat-sys-level5:0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12)}html{--mat-sys-corner-extra-large:28px;--mat-sys-corner-extra-large-top:28px 28px 0 0;--mat-sys-corner-extra-small:4px;--mat-sys-corner-extra-small-top:4px 4px 0 0;--mat-sys-corner-full:9999px;--mat-sys-corner-large:16px;--mat-sys-corner-large-end:0 16px 16px 0;--mat-sys-corner-large-start:16px 0 0 16px;--mat-sys-corner-large-top:16px 16px 0 0;--mat-sys-corner-medium:12px;--mat-sys-corner-none:0;--mat-sys-corner-small:8px}html{--mat-sys-dragged-state-layer-opacity:.16;--mat-sys-focus-state-layer-opacity:.12;--mat-sys-hover-state-layer-opacity:.08;--mat-sys-pressed-state-layer-opacity:.12}html{font-family:Google Sans,Helvetica Neue,sans-serif!important}body{height:100vh;margin:0}:root{--mat-sys-primary:black;--mdc-checkbox-selected-icon-color:white;--mat-sys-background:#131314;--mat-tab-header-active-label-text-color:#8AB4F8;--mat-tab-header-active-hover-label-text-color:#8AB4F8;--mat-tab-header-active-focus-label-text-color:#8AB4F8;--mat-tab-header-label-text-weight:500;--mdc-text-button-label-text-color:#89b4f8}:root{--mdc-dialog-container-color:#2b2b2f}:root{--mdc-dialog-subhead-color:white}:root{--mdc-circular-progress-active-indicator-color:#a8c7fa}:root{--mdc-circular-progress-size:80}</style><link rel="stylesheet" href="styles-4VDSPQ37.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-4VDSPQ37.css"></noscript></head>
30
30
  <body>
31
31
  <app-root></app-root>
32
- <script src="polyfills-FFHMD2TL.js" type="module"></script><script src="main-ZBO76GRM.js" type="module"></script></body>
32
+ <script src="polyfills-FFHMD2TL.js" type="module"></script><script src="main-HWIBUY2R.js" type="module"></script></body>
33
33
  </html>