@google/adk 2.0.0 → 2.2.0

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 (658) hide show
  1. package/dist/cjs/a2a/a2a_event.js +0 -29
  2. package/dist/cjs/a2a/a2a_remote_agent.js +8 -5
  3. package/dist/cjs/a2a/a2a_remote_agent_utils.js +104 -2
  4. package/dist/cjs/a2a/agent_card.js +66 -6
  5. package/dist/cjs/a2a/agent_executor.js +18 -6
  6. package/dist/cjs/a2a/agent_to_a2a.js +6 -1
  7. package/dist/cjs/a2a/event_processor_utils.js +1 -1
  8. package/dist/cjs/a2a/executor_context.js +4 -2
  9. package/dist/cjs/a2a/index.js +4 -0
  10. package/dist/cjs/a2a/request_metadata.js +94 -0
  11. package/dist/cjs/agents/base_agent.js +9 -8
  12. package/dist/cjs/agents/context.js +7 -0
  13. package/dist/cjs/agents/functions.js +150 -47
  14. package/dist/cjs/agents/invocation_context.js +1 -0
  15. package/dist/cjs/agents/llm_agent.js +21 -6
  16. package/dist/cjs/agents/loop_agent.js +1 -1
  17. package/dist/cjs/agents/parallel_agent.js +1 -1
  18. package/dist/cjs/agents/processors/agent_transfer_llm_request_processor.js +26 -5
  19. package/dist/cjs/agents/processors/code_execution_request_processor.js +2 -2
  20. package/dist/cjs/agents/processors/content_processor_utils.js +15 -7
  21. package/dist/cjs/agents/processors/content_request_processor.js +4 -1
  22. package/dist/cjs/agents/processors/nl_planning_processor.js +114 -0
  23. package/dist/cjs/agents/processors/request_confirmation_llm_request_processor.js +19 -12
  24. package/dist/cjs/agents/processors/request_input_llm_request_processor.js +3 -7
  25. package/dist/cjs/agents/readonly_context.js +6 -0
  26. package/dist/cjs/agents/routed_agent.js +1 -1
  27. package/dist/cjs/agents/sequential_agent.js +1 -1
  28. package/dist/cjs/apps/app.js +1 -1
  29. package/dist/cjs/artifacts/file_artifact_service.js +1 -2
  30. package/dist/cjs/artifacts/gcs_artifact_service.js +13 -7
  31. package/dist/cjs/artifacts/scoped_artifact_service.js +9 -0
  32. package/dist/cjs/artifacts/session_artifact_service.js +19 -0
  33. package/dist/cjs/auth/auth_credential.js +12 -2
  34. package/dist/cjs/auth/auth_handler.js +44 -8
  35. package/dist/cjs/auth/oauth2/oauth2_credential_refresher.js +1 -1
  36. package/dist/cjs/auth/oauth2/oauth2_utils.js +17 -2
  37. package/dist/cjs/code_executors/base_code_executor.js +1 -1
  38. package/dist/cjs/code_executors/built_in_code_executor.js +1 -1
  39. package/dist/cjs/code_executors/code_execution_utils.js +5 -5
  40. package/dist/cjs/code_executors/container_code_executor.js +186 -0
  41. package/dist/cjs/code_executors/docker_container.js +282 -0
  42. package/dist/cjs/code_executors/unsafe_local_code_executor.js +11 -6
  43. package/dist/cjs/common.js +119 -45
  44. package/dist/cjs/context/agent_controlled_context_compactor.js +10 -5
  45. package/dist/cjs/context/anchored_context_compactor.js +41 -18
  46. package/dist/cjs/context/compaction_utils.js +15 -6
  47. package/dist/cjs/context/token_based_context_compactor.js +10 -2
  48. package/dist/cjs/context/trajectory_thought_pruning_compactor.js +17 -10
  49. package/dist/cjs/context/truncating_context_compactor.js +17 -5
  50. package/dist/cjs/errors/already_exists_error.js +50 -0
  51. package/dist/cjs/errors/input_validation_error.js +50 -0
  52. package/dist/cjs/errors/not_found_error.js +50 -0
  53. package/dist/cjs/errors/session_not_found_error.js +50 -0
  54. package/dist/cjs/errors/tool_execution_error.js +68 -0
  55. package/dist/cjs/events/event.js +1 -1
  56. package/dist/cjs/events/event_actions.js +7 -0
  57. package/dist/cjs/examples/base_example_provider.js +1 -1
  58. package/dist/cjs/examples/example.js +92 -0
  59. package/dist/cjs/examples/example_util.js +28 -4
  60. package/dist/cjs/examples/index.js +39 -0
  61. package/dist/cjs/examples/vertex_ai_example_store.js +39 -0
  62. package/dist/cjs/index.js +93 -0
  63. package/dist/cjs/index_web.js +2 -0
  64. package/dist/cjs/integrations/agent_registry/agent_registry.js +3 -2
  65. package/dist/cjs/memory/rag_memory_transcript.js +136 -0
  66. package/dist/cjs/memory/vertex_ai_memory_bank_service.js +19 -7
  67. package/dist/cjs/memory/vertex_ai_rag_api.js +120 -0
  68. package/dist/cjs/memory/vertex_ai_rag_memory_service.js +228 -0
  69. package/dist/cjs/models/apigee_llm.js +1 -1
  70. package/dist/cjs/models/base_llm.js +2 -7
  71. package/dist/cjs/models/chrome_prompt_llm.js +318 -0
  72. package/dist/cjs/models/chrome_prompt_utils.js +281 -0
  73. package/dist/cjs/models/gemini_llm_connection.js +5 -4
  74. package/dist/cjs/models/google_llm.js +9 -4
  75. package/dist/cjs/models/interactions_utils.js +2 -3
  76. package/dist/cjs/models/registry.js +2 -0
  77. package/dist/cjs/planners/base_planner.js +56 -0
  78. package/dist/cjs/planners/built_in_planner.js +85 -0
  79. package/dist/cjs/planners/plan_re_act_planner.js +172 -0
  80. package/dist/cjs/plugins/_reflect_retry_utils.js +142 -0
  81. package/dist/cjs/plugins/base_plugin.js +46 -61
  82. package/dist/cjs/plugins/reflect_retry_model_plugin.js +274 -0
  83. package/dist/cjs/plugins/reflect_retry_tool_plugin.js +276 -0
  84. package/dist/cjs/runner/runner.js +29 -26
  85. package/dist/cjs/sessions/database_session_service.js +78 -43
  86. package/dist/cjs/sessions/db/operations.js +229 -22
  87. package/dist/cjs/sessions/db/schema.js +113 -159
  88. package/dist/cjs/sessions/registry.js +5 -1
  89. package/dist/cjs/sessions/vertex_ai_session_service.js +2 -2
  90. package/dist/cjs/telemetry/setup.js +1 -1
  91. package/dist/cjs/telemetry/tracing.js +11 -1
  92. package/dist/cjs/tools/agent_tool.js +4 -5
  93. package/dist/cjs/tools/base_tool.js +14 -4
  94. package/dist/cjs/tools/base_toolset.js +4 -4
  95. package/dist/cjs/tools/built_in_tool.js +75 -0
  96. package/dist/cjs/tools/enterprise_web_search_tool.js +3 -6
  97. package/dist/cjs/tools/example_tool.js +1 -1
  98. package/dist/cjs/tools/forwarding_artifact_service.js +18 -13
  99. package/dist/cjs/tools/function_tool.js +6 -3
  100. package/dist/cjs/tools/google_maps_grounding_tool.js +3 -6
  101. package/dist/cjs/tools/google_search_tool.js +3 -6
  102. package/dist/cjs/tools/load_artifacts_tool.js +47 -23
  103. package/dist/cjs/tools/load_web_page.js +6 -172
  104. package/dist/cjs/tools/mcp/load_mcp_resource_tool.js +34 -5
  105. package/dist/cjs/tools/mcp/mcp_session_manager.js +14 -8
  106. package/dist/cjs/tools/openapi_tool/auth/auth_helpers.js +292 -4
  107. package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +15 -1
  108. package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/base_auth_credential_exchanger.js +70 -0
  109. package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/oauth2_exchanger.js +120 -0
  110. package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +10 -10
  111. package/dist/cjs/tools/openapi_tool/common/common.js +139 -0
  112. package/dist/cjs/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +11 -6
  113. package/dist/cjs/tools/openapi_tool/openapi_spec_parser/operation_parser.js +74 -14
  114. package/dist/cjs/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +146 -34
  115. package/dist/cjs/tools/openapi_tool/openapi_toolset.js +14 -2
  116. package/dist/cjs/tools/openapi_tool/rest_api_tool.js +106 -46
  117. package/dist/cjs/tools/preload_memory_tool.js +1 -1
  118. package/dist/cjs/tools/resume_inputs.js +27 -0
  119. package/dist/cjs/tools/retrieval/base_retrieval_tool.js +60 -0
  120. package/dist/cjs/tools/retrieval/files_retrieval.js +95 -0
  121. package/dist/cjs/tools/retrieval/llama_index_retrieval.js +57 -0
  122. package/dist/cjs/tools/skill/skill_toolset.js +2 -0
  123. package/dist/cjs/tools/tool_context.js +41 -0
  124. package/dist/cjs/tools/url_context_tool.js +3 -6
  125. package/dist/cjs/tools/vertex_ai_search_tool.js +4 -8
  126. package/dist/cjs/tools/vertex_rag_retrieval_tool.js +3 -10
  127. package/dist/cjs/tools/webmcp/index.js +37 -0
  128. package/dist/cjs/tools/webmcp/webmcp_tool.js +156 -0
  129. package/dist/cjs/tools/webmcp/webmcp_toolset.js +116 -0
  130. package/dist/cjs/tools/webmcp/webmcp_types.js +50 -0
  131. package/dist/cjs/utils/case_utils.js +52 -2
  132. package/dist/cjs/utils/client_labels.js +67 -0
  133. package/dist/cjs/utils/crypto_shim.js +16 -0
  134. package/dist/cjs/utils/gemini_schema_util.js +103 -9
  135. package/dist/cjs/utils/hash_utils.js +73 -0
  136. package/dist/cjs/utils/live_connection_utils.js +10 -9
  137. package/dist/cjs/utils/logger.js +15 -50
  138. package/dist/cjs/utils/logger_browser.js +86 -0
  139. package/dist/cjs/utils/logger_node.js +119 -0
  140. package/dist/cjs/utils/model_name.js +17 -2
  141. package/dist/cjs/utils/redact_inline_data.js +46 -0
  142. package/dist/cjs/utils/redact_uri.js +15 -1
  143. package/dist/cjs/utils/schema.js +1 -1
  144. package/dist/cjs/utils/simple_zod_to_json.js +5 -0
  145. package/dist/cjs/utils/ssrf_guard.js +262 -0
  146. package/dist/cjs/version.js +1 -1
  147. package/dist/cjs/workflow/base_node.js +1 -1
  148. package/dist/cjs/workflow/graph.js +1 -1
  149. package/dist/cjs/workflow/nodes/node_tool.js +2 -11
  150. package/dist/cjs/workflow/request_input.js +1 -1
  151. package/dist/cjs/workflow/run_llm_agent_as_node.js +1 -1
  152. package/dist/cjs/workflow/workflow.js +1 -1
  153. package/dist/esm/a2a/a2a_event.js +0 -28
  154. package/dist/esm/a2a/a2a_remote_agent.js +10 -5
  155. package/dist/esm/a2a/a2a_remote_agent_utils.js +102 -2
  156. package/dist/esm/a2a/agent_card.js +71 -6
  157. package/dist/esm/a2a/agent_executor.js +18 -6
  158. package/dist/esm/a2a/agent_to_a2a.js +8 -2
  159. package/dist/esm/a2a/event_processor_utils.js +1 -2
  160. package/dist/esm/a2a/executor_context.js +4 -2
  161. package/dist/esm/a2a/index.js +7 -1
  162. package/dist/esm/a2a/request_metadata.js +68 -0
  163. package/dist/esm/agents/base_agent.js +9 -8
  164. package/dist/esm/agents/context.js +7 -0
  165. package/dist/esm/agents/functions.js +152 -48
  166. package/dist/esm/agents/invocation_context.js +1 -0
  167. package/dist/esm/agents/llm_agent.js +24 -6
  168. package/dist/esm/agents/loop_agent.js +1 -1
  169. package/dist/esm/agents/parallel_agent.js +1 -1
  170. package/dist/esm/agents/processors/agent_transfer_llm_request_processor.js +26 -5
  171. package/dist/esm/agents/processors/code_execution_request_processor.js +2 -2
  172. package/dist/esm/agents/processors/content_processor_utils.js +15 -7
  173. package/dist/esm/agents/processors/content_request_processor.js +4 -1
  174. package/dist/esm/agents/processors/nl_planning_processor.js +87 -0
  175. package/dist/esm/agents/processors/request_confirmation_llm_request_processor.js +19 -12
  176. package/dist/esm/agents/processors/request_input_llm_request_processor.js +3 -7
  177. package/dist/esm/agents/readonly_context.js +6 -0
  178. package/dist/esm/agents/routed_agent.js +1 -1
  179. package/dist/esm/agents/sequential_agent.js +1 -1
  180. package/dist/esm/apps/app.js +1 -1
  181. package/dist/esm/artifacts/file_artifact_service.js +1 -2
  182. package/dist/esm/artifacts/gcs_artifact_service.js +13 -7
  183. package/dist/esm/artifacts/scoped_artifact_service.js +9 -0
  184. package/dist/esm/artifacts/session_artifact_service.js +12 -0
  185. package/dist/esm/auth/auth_credential.js +11 -1
  186. package/dist/esm/auth/auth_handler.js +47 -8
  187. package/dist/esm/auth/oauth2/oauth2_credential_refresher.js +1 -1
  188. package/dist/esm/auth/oauth2/oauth2_utils.js +15 -2
  189. package/dist/esm/code_executors/base_code_executor.js +1 -1
  190. package/dist/esm/code_executors/built_in_code_executor.js +1 -1
  191. package/dist/esm/code_executors/code_execution_utils.js +5 -5
  192. package/dist/esm/code_executors/container_code_executor.js +155 -0
  193. package/dist/esm/code_executors/docker_container.js +265 -0
  194. package/dist/esm/code_executors/unsafe_local_code_executor.js +11 -6
  195. package/dist/esm/common.js +111 -40
  196. package/dist/esm/context/agent_controlled_context_compactor.js +10 -5
  197. package/dist/esm/context/anchored_context_compactor.js +45 -19
  198. package/dist/esm/context/compaction_utils.js +13 -5
  199. package/dist/esm/context/token_based_context_compactor.js +10 -2
  200. package/dist/esm/context/trajectory_thought_pruning_compactor.js +17 -10
  201. package/dist/esm/context/truncating_context_compactor.js +17 -5
  202. package/dist/esm/errors/already_exists_error.js +23 -0
  203. package/dist/esm/errors/input_validation_error.js +23 -0
  204. package/dist/{web/auth/refresher/base_credential_refresher.js → esm/errors/not_found_error.js} +9 -6
  205. package/dist/esm/errors/session_not_found_error.js +23 -0
  206. package/dist/esm/errors/tool_execution_error.js +40 -0
  207. package/dist/esm/events/event.js +1 -1
  208. package/dist/esm/events/event_actions.js +6 -0
  209. package/dist/esm/examples/base_example_provider.js +1 -1
  210. package/dist/esm/examples/example.js +85 -0
  211. package/dist/esm/examples/example_util.js +25 -3
  212. package/dist/{web/auth/credential_service/base_credential_service.js → esm/examples/index.js} +4 -0
  213. package/dist/{web/version.js → esm/examples/vertex_ai_example_store.js} +2 -2
  214. package/dist/esm/index.js +87 -0
  215. package/dist/esm/index_web.js +2 -0
  216. package/dist/esm/integrations/agent_registry/agent_registry.js +3 -2
  217. package/dist/esm/memory/rag_memory_transcript.js +106 -0
  218. package/dist/esm/memory/vertex_ai_memory_bank_service.js +19 -7
  219. package/dist/esm/memory/vertex_ai_rag_api.js +93 -0
  220. package/dist/esm/memory/vertex_ai_rag_memory_service.js +208 -0
  221. package/dist/esm/models/apigee_llm.js +1 -1
  222. package/dist/esm/models/base_llm.js +3 -8
  223. package/dist/esm/models/chrome_prompt_llm.js +302 -0
  224. package/dist/esm/models/chrome_prompt_utils.js +241 -0
  225. package/dist/esm/models/gemini_llm_connection.js +6 -5
  226. package/dist/esm/models/google_llm.js +9 -4
  227. package/dist/esm/models/interactions_utils.js +2 -3
  228. package/dist/esm/models/registry.js +2 -0
  229. package/dist/esm/planners/base_planner.js +28 -0
  230. package/dist/esm/planners/built_in_planner.js +57 -0
  231. package/dist/esm/planners/plan_re_act_planner.js +145 -0
  232. package/dist/esm/plugins/_reflect_retry_utils.js +111 -0
  233. package/dist/esm/plugins/base_plugin.js +46 -61
  234. package/dist/esm/plugins/reflect_retry_model_plugin.js +250 -0
  235. package/dist/esm/plugins/reflect_retry_tool_plugin.js +254 -0
  236. package/dist/esm/runner/runner.js +35 -27
  237. package/dist/esm/sessions/database_session_service.js +58 -25
  238. package/dist/esm/sessions/db/operations.js +229 -22
  239. package/dist/esm/sessions/db/schema.js +111 -160
  240. package/dist/esm/sessions/registry.js +5 -1
  241. package/dist/esm/sessions/vertex_ai_session_service.js +1 -1
  242. package/dist/esm/telemetry/setup.js +1 -1
  243. package/dist/esm/telemetry/tracing.js +11 -1
  244. package/dist/esm/tools/agent_tool.js +4 -5
  245. package/dist/esm/tools/base_tool.js +11 -3
  246. package/dist/esm/tools/base_toolset.js +4 -4
  247. package/dist/esm/tools/built_in_tool.js +51 -0
  248. package/dist/esm/tools/enterprise_web_search_tool.js +3 -6
  249. package/dist/esm/tools/example_tool.js +1 -1
  250. package/dist/esm/tools/forwarding_artifact_service.js +18 -13
  251. package/dist/esm/tools/function_tool.js +6 -3
  252. package/dist/esm/tools/google_maps_grounding_tool.js +3 -6
  253. package/dist/esm/tools/google_search_tool.js +3 -6
  254. package/dist/esm/tools/load_artifacts_tool.js +48 -24
  255. package/dist/esm/tools/load_web_page.js +10 -170
  256. package/dist/esm/tools/mcp/load_mcp_resource_tool.js +34 -5
  257. package/dist/esm/tools/mcp/mcp_session_manager.js +14 -8
  258. package/dist/esm/tools/openapi_tool/auth/auth_helpers.js +285 -3
  259. package/dist/esm/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +15 -1
  260. package/dist/esm/tools/openapi_tool/auth/credential_exchangers/base_auth_credential_exchanger.js +43 -0
  261. package/dist/esm/tools/openapi_tool/auth/credential_exchangers/oauth2_exchanger.js +93 -0
  262. package/dist/esm/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +10 -12
  263. package/dist/esm/tools/openapi_tool/common/common.js +112 -0
  264. package/dist/esm/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +11 -6
  265. package/dist/esm/tools/openapi_tool/openapi_spec_parser/operation_parser.js +81 -14
  266. package/dist/esm/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +146 -33
  267. package/dist/esm/tools/openapi_tool/openapi_toolset.js +14 -2
  268. package/dist/esm/tools/openapi_tool/rest_api_tool.js +105 -46
  269. package/dist/esm/tools/preload_memory_tool.js +1 -1
  270. package/dist/esm/tools/retrieval/base_retrieval_tool.js +33 -0
  271. package/dist/esm/tools/retrieval/files_retrieval.js +81 -0
  272. package/dist/esm/tools/retrieval/llama_index_retrieval.js +30 -0
  273. package/dist/esm/tools/skill/skill_toolset.js +2 -0
  274. package/dist/{web/context/base_context_compactor.js → esm/tools/tool_context.js} +8 -0
  275. package/dist/esm/tools/url_context_tool.js +3 -6
  276. package/dist/esm/tools/vertex_ai_search_tool.js +4 -8
  277. package/dist/esm/tools/vertex_rag_retrieval_tool.js +3 -10
  278. package/dist/{web/auth/base_auth_provider.js → esm/tools/webmcp/index.js} +3 -0
  279. package/dist/esm/tools/webmcp/webmcp_tool.js +131 -0
  280. package/dist/esm/tools/webmcp/webmcp_toolset.js +89 -0
  281. package/dist/{web/utils/crypto_shim.js → esm/tools/webmcp/webmcp_types.js} +10 -6
  282. package/dist/esm/utils/case_utils.js +49 -1
  283. package/dist/esm/utils/client_labels.js +65 -0
  284. package/dist/esm/utils/crypto_shim.js +14 -0
  285. package/dist/esm/utils/gemini_schema_util.js +102 -9
  286. package/dist/esm/utils/hash_utils.js +45 -0
  287. package/dist/esm/utils/live_connection_utils.js +11 -10
  288. package/dist/esm/utils/logger.js +14 -40
  289. package/dist/esm/utils/logger_browser.js +58 -0
  290. package/dist/esm/utils/logger_node.js +81 -0
  291. package/dist/esm/utils/model_name.js +15 -2
  292. package/dist/esm/utils/redact_inline_data.js +19 -0
  293. package/dist/esm/utils/redact_uri.js +15 -1
  294. package/dist/esm/utils/schema.js +1 -1
  295. package/dist/esm/utils/simple_zod_to_json.js +5 -0
  296. package/dist/{web/tools/load_web_page.js → esm/utils/ssrf_guard.js} +95 -107
  297. package/dist/esm/version.js +1 -1
  298. package/dist/esm/workflow/base_node.js +1 -1
  299. package/dist/esm/workflow/graph.js +1 -1
  300. package/dist/esm/workflow/nodes/node_tool.js +2 -11
  301. package/dist/esm/workflow/request_input.js +1 -1
  302. package/dist/esm/workflow/run_llm_agent_as_node.js +1 -1
  303. package/dist/esm/workflow/workflow.js +1 -1
  304. package/dist/types/a2a/a2a_event.d.ts +7 -10
  305. package/dist/types/a2a/a2a_remote_agent.d.ts +5 -0
  306. package/dist/types/a2a/a2a_remote_agent_utils.d.ts +25 -0
  307. package/dist/types/a2a/agent_card.d.ts +9 -0
  308. package/dist/types/a2a/agent_executor.d.ts +1 -1
  309. package/dist/types/a2a/agent_to_a2a.d.ts +2 -0
  310. package/dist/types/a2a/auth.d.ts +5 -1
  311. package/dist/types/a2a/executor_context.d.ts +7 -1
  312. package/dist/types/a2a/index.d.ts +1 -1
  313. package/dist/types/a2a/request_metadata.d.ts +22 -0
  314. package/dist/types/agents/base_agent.d.ts +19 -16
  315. package/dist/types/agents/context.d.ts +8 -0
  316. package/dist/types/agents/functions.d.ts +72 -6
  317. package/dist/types/agents/invocation_context.d.ts +11 -3
  318. package/dist/types/agents/llm_agent.d.ts +20 -7
  319. package/dist/types/agents/processors/agent_transfer_llm_request_processor.d.ts +16 -1
  320. package/dist/types/agents/processors/nl_planning_processor.d.ts +30 -0
  321. package/dist/types/agents/readonly_context.d.ts +4 -0
  322. package/dist/types/agents/run_config.d.ts +21 -8
  323. package/dist/types/artifacts/scoped_artifact_service.d.ts +13 -0
  324. package/dist/types/artifacts/session_artifact_service.d.ts +8 -1
  325. package/dist/types/auth/auth_credential.d.ts +22 -8
  326. package/dist/types/auth/auth_handler.d.ts +12 -1
  327. package/dist/types/auth/oauth2/oauth2_credential_refresher.d.ts +1 -1
  328. package/dist/types/auth/oauth2/oauth2_utils.d.ts +9 -0
  329. package/dist/types/auth/refresher/base_credential_refresher.d.ts +1 -1
  330. package/dist/types/code_executors/code_execution_utils.d.ts +1 -1
  331. package/dist/types/code_executors/container_code_executor.d.ts +89 -0
  332. package/dist/types/code_executors/docker_container.d.ts +79 -0
  333. package/dist/types/common.d.ts +37 -23
  334. package/dist/types/context/compaction_utils.d.ts +9 -1
  335. package/dist/types/errors/already_exists_error.d.ts +14 -0
  336. package/dist/types/errors/input_validation_error.d.ts +14 -0
  337. package/dist/types/errors/not_found_error.d.ts +14 -0
  338. package/dist/types/errors/session_not_found_error.d.ts +14 -0
  339. package/dist/types/errors/tool_execution_error.d.ts +36 -0
  340. package/dist/types/events/event_actions.d.ts +13 -0
  341. package/dist/types/examples/base_example_provider.d.ts +2 -2
  342. package/dist/types/examples/example.d.ts +75 -0
  343. package/dist/types/examples/example_util.d.ts +13 -2
  344. package/dist/types/examples/index.d.ts +18 -0
  345. package/dist/types/examples/vertex_ai_example_store.d.ts +7 -0
  346. package/dist/types/index.d.ts +31 -1
  347. package/dist/types/memory/memory_entry.d.ts +15 -0
  348. package/dist/types/memory/rag_memory_transcript.d.ts +55 -0
  349. package/dist/types/memory/vertex_ai_memory_bank_service.d.ts +9 -0
  350. package/dist/types/memory/vertex_ai_rag_api.d.ts +89 -0
  351. package/dist/types/memory/vertex_ai_rag_memory_service.d.ts +68 -0
  352. package/dist/types/models/chrome_prompt_llm.d.ts +210 -0
  353. package/dist/types/models/chrome_prompt_utils.d.ts +97 -0
  354. package/dist/types/models/google_llm.d.ts +8 -3
  355. package/dist/types/models/registry.d.ts +3 -2
  356. package/dist/types/planners/base_planner.d.ts +50 -0
  357. package/dist/types/planners/built_in_planner.d.ts +53 -0
  358. package/dist/types/planners/plan_re_act_planner.d.ts +21 -0
  359. package/dist/types/plugins/_reflect_retry_utils.d.ts +72 -0
  360. package/dist/types/plugins/base_plugin.d.ts +64 -62
  361. package/dist/types/plugins/logging_plugin.d.ts +3 -2
  362. package/dist/types/plugins/reflect_retry_model_plugin.d.ts +132 -0
  363. package/dist/types/plugins/reflect_retry_tool_plugin.d.ts +187 -0
  364. package/dist/types/runner/runner.d.ts +7 -8
  365. package/dist/types/sessions/database_session_service.d.ts +1 -1
  366. package/dist/types/sessions/db/operations.d.ts +13 -1
  367. package/dist/types/sessions/db/schema.d.ts +23 -9
  368. package/dist/types/skills/skill_registry.d.ts +8 -0
  369. package/dist/types/tools/base_tool.d.ts +11 -0
  370. package/dist/types/tools/base_toolset.d.ts +3 -4
  371. package/dist/types/tools/built_in_tool.d.ts +41 -0
  372. package/dist/types/tools/enterprise_web_search_tool.d.ts +4 -4
  373. package/dist/types/tools/forwarding_artifact_service.d.ts +23 -10
  374. package/dist/types/tools/function_tool.d.ts +42 -9
  375. package/dist/types/tools/google_maps_grounding_tool.d.ts +4 -4
  376. package/dist/types/tools/google_search_tool.d.ts +4 -4
  377. package/dist/types/tools/long_running_tool.d.ts +1 -1
  378. package/dist/types/tools/mcp/mcp_toolset.d.ts +11 -10
  379. package/dist/types/tools/openapi_tool/auth/auth_helpers.d.ts +115 -1
  380. package/dist/types/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.d.ts +31 -2
  381. package/dist/types/tools/openapi_tool/auth/credential_exchangers/base_auth_credential_exchanger.d.ts +35 -0
  382. package/dist/types/tools/openapi_tool/auth/credential_exchangers/oauth2_exchanger.d.ts +54 -0
  383. package/dist/types/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.d.ts +0 -1
  384. package/dist/types/tools/openapi_tool/common/common.d.ts +60 -0
  385. package/dist/types/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.d.ts +7 -0
  386. package/dist/types/tools/openapi_tool/openapi_spec_parser/operation_parser.d.ts +56 -2
  387. package/dist/types/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.d.ts +73 -5
  388. package/dist/types/tools/openapi_tool/openapi_toolset.d.ts +11 -0
  389. package/dist/types/tools/openapi_tool/rest_api_tool.d.ts +42 -8
  390. package/dist/types/tools/preload_memory_tool.d.ts +1 -1
  391. package/dist/types/tools/resume_inputs.d.ts +25 -0
  392. package/dist/types/tools/retrieval/base_retrieval_tool.d.ts +21 -0
  393. package/dist/types/tools/retrieval/files_retrieval.d.ts +50 -0
  394. package/dist/types/tools/retrieval/llama_index_retrieval.d.ts +62 -0
  395. package/dist/types/tools/tool_context.d.ts +19 -0
  396. package/dist/types/tools/url_context_tool.d.ts +4 -4
  397. package/dist/types/tools/vertex_ai_search_tool.d.ts +4 -4
  398. package/dist/types/tools/vertex_rag_retrieval_tool.d.ts +13 -12
  399. package/dist/types/tools/webmcp/index.d.ts +12 -0
  400. package/dist/types/tools/webmcp/webmcp_tool.d.ts +47 -0
  401. package/dist/types/tools/webmcp/webmcp_toolset.d.ts +67 -0
  402. package/dist/types/tools/webmcp/webmcp_types.d.ts +69 -0
  403. package/dist/types/utils/case_utils.d.ts +36 -0
  404. package/dist/types/utils/client_labels.d.ts +33 -0
  405. package/dist/types/utils/crypto_shim.d.ts +16 -0
  406. package/dist/types/utils/gemini_schema_util.d.ts +18 -7
  407. package/dist/types/utils/hash_utils.d.ts +25 -0
  408. package/dist/types/utils/logger.d.ts +33 -3
  409. package/dist/types/utils/logger_browser.d.ts +28 -0
  410. package/dist/types/utils/logger_node.d.ts +20 -0
  411. package/dist/types/utils/model_name.d.ts +30 -2
  412. package/dist/types/utils/output_schema_utils.d.ts +3 -3
  413. package/dist/types/utils/redact_inline_data.d.ts +16 -0
  414. package/dist/types/utils/redact_uri.d.ts +12 -8
  415. package/dist/types/utils/ssrf_guard.d.ts +32 -0
  416. package/dist/types/version.d.ts +1 -1
  417. package/dist/web/index_web.js +337 -3
  418. package/dist/web/index_web.js.map +7 -0
  419. package/package.json +24 -15
  420. package/dist/web/a2a/a2a_event.js +0 -290
  421. package/dist/web/a2a/a2a_remote_agent.js +0 -200
  422. package/dist/web/a2a/a2a_remote_agent_run_processor.js +0 -189
  423. package/dist/web/a2a/a2a_remote_agent_utils.js +0 -141
  424. package/dist/web/a2a/agent_card.js +0 -373
  425. package/dist/web/a2a/agent_executor.js +0 -246
  426. package/dist/web/a2a/agent_to_a2a.js +0 -126
  427. package/dist/web/a2a/auth.js +0 -41
  428. package/dist/web/a2a/event_converter_utils.js +0 -242
  429. package/dist/web/a2a/event_processor_utils.js +0 -209
  430. package/dist/web/a2a/executor_context.js +0 -28
  431. package/dist/web/a2a/index.js +0 -20
  432. package/dist/web/a2a/metadata_converter_utils.js +0 -115
  433. package/dist/web/a2a/part_converter_utils.js +0 -201
  434. package/dist/web/agents/active_streaming_tool.js +0 -25
  435. package/dist/web/agents/base_agent.js +0 -462
  436. package/dist/web/agents/context.js +0 -146
  437. package/dist/web/agents/framework_function_calls.js +0 -34
  438. package/dist/web/agents/functions.js +0 -462
  439. package/dist/web/agents/instructions.js +0 -188
  440. package/dist/web/agents/invocation_context.js +0 -126
  441. package/dist/web/agents/live_request_queue.js +0 -151
  442. package/dist/web/agents/llm_agent.js +0 -1514
  443. package/dist/web/agents/loop_agent.js +0 -131
  444. package/dist/web/agents/parallel_agent.js +0 -122
  445. package/dist/web/agents/processors/agent_transfer_llm_request_processor.js +0 -113
  446. package/dist/web/agents/processors/base_llm_processor.js +0 -21
  447. package/dist/web/agents/processors/basic_llm_request_processor.js +0 -84
  448. package/dist/web/agents/processors/code_execution_request_processor.js +0 -381
  449. package/dist/web/agents/processors/content_processor_utils.js +0 -432
  450. package/dist/web/agents/processors/content_request_processor.js +0 -73
  451. package/dist/web/agents/processors/context_compactor_request_processor.js +0 -78
  452. package/dist/web/agents/processors/identity_llm_request_processor.js +0 -59
  453. package/dist/web/agents/processors/instructions_llm_request_processor.js +0 -85
  454. package/dist/web/agents/processors/interactions_request_processor.js +0 -56
  455. package/dist/web/agents/processors/request_confirmation_llm_request_processor.js +0 -393
  456. package/dist/web/agents/processors/request_input_llm_request_processor.js +0 -228
  457. package/dist/web/agents/processors/tool_filter_request_processor.js +0 -72
  458. package/dist/web/agents/readonly_context.js +0 -60
  459. package/dist/web/agents/routed_agent.js +0 -161
  460. package/dist/web/agents/run_config.js +0 -74
  461. package/dist/web/agents/sequential_agent.js +0 -141
  462. package/dist/web/agents/transcription_entry.js +0 -7
  463. package/dist/web/agents/user_input_request.js +0 -135
  464. package/dist/web/apps/app.js +0 -52
  465. package/dist/web/apps/resumability_config.js +0 -33
  466. package/dist/web/artifacts/base_artifact_service.js +0 -7
  467. package/dist/web/artifacts/file_artifact_service.js +0 -568
  468. package/dist/web/artifacts/gcs_artifact_service.js +0 -298
  469. package/dist/web/artifacts/in_memory_artifact_service.js +0 -172
  470. package/dist/web/artifacts/registry.js +0 -36
  471. package/dist/web/artifacts/scoped_artifact_service.js +0 -89
  472. package/dist/web/auth/auth_credential.js +0 -18
  473. package/dist/web/auth/auth_handler.js +0 -151
  474. package/dist/web/auth/auth_preprocessor.js +0 -184
  475. package/dist/web/auth/auth_provider_registry.js +0 -37
  476. package/dist/web/auth/auth_schemes.js +0 -36
  477. package/dist/web/auth/auth_tool.js +0 -7
  478. package/dist/web/auth/credential_response_binding.js +0 -91
  479. package/dist/web/auth/credential_service/in_memory_credential_service.js +0 -50
  480. package/dist/web/auth/credential_service/session_state_credential_service.js +0 -27
  481. package/dist/web/auth/exchanger/base_credential_exchanger.js +0 -16
  482. package/dist/web/auth/exchanger/credential_exchanger_registry.js +0 -35
  483. package/dist/web/auth/oauth2/oauth2_credential_exchanger.js +0 -194
  484. package/dist/web/auth/oauth2/oauth2_credential_refresher.js +0 -105
  485. package/dist/web/auth/oauth2/oauth2_discovery.js +0 -196
  486. package/dist/web/auth/oauth2/oauth2_utils.js +0 -105
  487. package/dist/web/auth/refresher/credential_refresher_registry.js +0 -44
  488. package/dist/web/code_executors/agent_engine_sandbox_code_executor.js +0 -284
  489. package/dist/web/code_executors/base_code_executor.js +0 -68
  490. package/dist/web/code_executors/built_in_code_executor.js +0 -50
  491. package/dist/web/code_executors/code_execution_utils.js +0 -131
  492. package/dist/web/code_executors/code_executor_context.js +0 -174
  493. package/dist/web/code_executors/unsafe_local_code_executor.js +0 -221
  494. package/dist/web/common.js +0 -452
  495. package/dist/web/context/agent_controlled_context_compactor.js +0 -76
  496. package/dist/web/context/anchored_context_compactor.js +0 -120
  497. package/dist/web/context/compaction_utils.js +0 -42
  498. package/dist/web/context/summarizers/base_summarizer.js +0 -7
  499. package/dist/web/context/summarizers/llm_summarizer.js +0 -91
  500. package/dist/web/context/token_based_context_compactor.js +0 -118
  501. package/dist/web/context/trajectory_thought_pruning_compactor.js +0 -47
  502. package/dist/web/context/truncating_context_compactor.js +0 -34
  503. package/dist/web/environment/base_environment.js +0 -71
  504. package/dist/web/environment/local_environment.js +0 -165
  505. package/dist/web/events/compacted_event.js +0 -51
  506. package/dist/web/events/event.js +0 -208
  507. package/dist/web/events/event_actions.js +0 -74
  508. package/dist/web/events/structured_events.js +0 -79
  509. package/dist/web/examples/base_example_provider.js +0 -32
  510. package/dist/web/examples/example.js +0 -7
  511. package/dist/web/examples/example_util.js +0 -83
  512. package/dist/web/features/feature_registry.js +0 -115
  513. package/dist/web/index.js +0 -57
  514. package/dist/web/integrations/agent_registry/agent_registry.js +0 -337
  515. package/dist/web/integrations/agent_registry/agent_registry_mcp_toolset.js +0 -120
  516. package/dist/web/integrations/agent_registry/helpers.js +0 -32
  517. package/dist/web/integrations/agent_registry/types.js +0 -20
  518. package/dist/web/memory/base_memory_service.js +0 -7
  519. package/dist/web/memory/in_memory_memory_service.js +0 -89
  520. package/dist/web/memory/memory_entry.js +0 -7
  521. package/dist/web/memory/vertex_ai_memory_bank_service.js +0 -496
  522. package/dist/web/models/apigee_llm.js +0 -227
  523. package/dist/web/models/base_llm.js +0 -78
  524. package/dist/web/models/base_llm_connection.js +0 -7
  525. package/dist/web/models/gemini_llm_connection.js +0 -183
  526. package/dist/web/models/google_llm.js +0 -396
  527. package/dist/web/models/interactions_utils.js +0 -745
  528. package/dist/web/models/llm_request.js +0 -57
  529. package/dist/web/models/llm_response.js +0 -48
  530. package/dist/web/models/registry.js +0 -100
  531. package/dist/web/models/routed_llm.js +0 -112
  532. package/dist/web/plugins/base_plugin.js +0 -305
  533. package/dist/web/plugins/global_instruction_plugin.js +0 -71
  534. package/dist/web/plugins/logging_plugin.js +0 -241
  535. package/dist/web/plugins/plugin_manager.js +0 -318
  536. package/dist/web/plugins/security_plugin.js +0 -148
  537. package/dist/web/runner/in_memory_runner.js +0 -50
  538. package/dist/web/runner/runner.js +0 -747
  539. package/dist/web/sessions/base_session_service.js +0 -123
  540. package/dist/web/sessions/database_session_service.js +0 -440
  541. package/dist/web/sessions/db/operations.js +0 -124
  542. package/dist/web/sessions/db/schema.js +0 -216
  543. package/dist/web/sessions/in_memory_session_service.js +0 -251
  544. package/dist/web/sessions/registry.js +0 -38
  545. package/dist/web/sessions/session.js +0 -23
  546. package/dist/web/sessions/state.js +0 -159
  547. package/dist/web/sessions/state_write_order.js +0 -74
  548. package/dist/web/sessions/vertex_ai_session_service.js +0 -546
  549. package/dist/web/skills/gcp_skill_registry.js +0 -80
  550. package/dist/web/skills/loader.js +0 -372
  551. package/dist/web/skills/prompt.js +0 -34
  552. package/dist/web/skills/skill.js +0 -67
  553. package/dist/web/skills/skill_registry.js +0 -7
  554. package/dist/web/telemetry/google_cloud.js +0 -99
  555. package/dist/web/telemetry/setup.js +0 -89
  556. package/dist/web/telemetry/tracing.js +0 -304
  557. package/dist/web/tools/agent_tool.js +0 -150
  558. package/dist/web/tools/base_tool.js +0 -116
  559. package/dist/web/tools/base_toolset.js +0 -62
  560. package/dist/web/tools/consolidate_context_tool.js +0 -55
  561. package/dist/web/tools/enterprise_web_search_tool.js +0 -60
  562. package/dist/web/tools/example_tool.js +0 -46
  563. package/dist/web/tools/exit_loop_tool.js +0 -47
  564. package/dist/web/tools/finish_task_tool.js +0 -92
  565. package/dist/web/tools/forwarding_artifact_service.js +0 -51
  566. package/dist/web/tools/function_tool.js +0 -151
  567. package/dist/web/tools/get_user_choice_tool.js +0 -27
  568. package/dist/web/tools/google_maps_grounding_tool.js +0 -59
  569. package/dist/web/tools/google_search_tool.js +0 -55
  570. package/dist/web/tools/load_artifacts_tool.js +0 -159
  571. package/dist/web/tools/load_memory_tool.js +0 -83
  572. package/dist/web/tools/long_running_tool.js +0 -58
  573. package/dist/web/tools/mcp/index.js +0 -11
  574. package/dist/web/tools/mcp/load_mcp_resource_tool.js +0 -111
  575. package/dist/web/tools/mcp/mcp_session_manager.js +0 -114
  576. package/dist/web/tools/mcp/mcp_tool.js +0 -47
  577. package/dist/web/tools/mcp/mcp_toolset.js +0 -144
  578. package/dist/web/tools/openapi_tool/auth/auth_helpers.js +0 -53
  579. package/dist/web/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +0 -62
  580. package/dist/web/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +0 -113
  581. package/dist/web/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +0 -242
  582. package/dist/web/tools/openapi_tool/openapi_spec_parser/operation_parser.js +0 -200
  583. package/dist/web/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +0 -98
  584. package/dist/web/tools/openapi_tool/openapi_toolset.js +0 -99
  585. package/dist/web/tools/openapi_tool/rest_api_tool.js +0 -247
  586. package/dist/web/tools/preload_memory_tool.js +0 -81
  587. package/dist/web/tools/request_input_tool.js +0 -29
  588. package/dist/web/tools/skill/list_skills_tool.js +0 -52
  589. package/dist/web/tools/skill/load_skill_resource_tool.js +0 -192
  590. package/dist/web/tools/skill/load_skill_tool.js +0 -96
  591. package/dist/web/tools/skill/run_skill_inline_script_tool.js +0 -191
  592. package/dist/web/tools/skill/run_skill_script_tool.js +0 -227
  593. package/dist/web/tools/skill/search_skills_tool.js +0 -84
  594. package/dist/web/tools/skill/skill_toolset.js +0 -185
  595. package/dist/web/tools/tool_confirmation.js +0 -43
  596. package/dist/web/tools/url_context_tool.js +0 -48
  597. package/dist/web/tools/vertex_ai_search_tool.js +0 -107
  598. package/dist/web/tools/vertex_rag_retrieval_tool.js +0 -40
  599. package/dist/web/utils/async_hooks_shim.js +0 -28
  600. package/dist/web/utils/async_queue.js +0 -88
  601. package/dist/web/utils/branch_trie.js +0 -16
  602. package/dist/web/utils/case_utils.js +0 -28
  603. package/dist/web/utils/client_labels.js +0 -70
  604. package/dist/web/utils/deprecated.js +0 -40
  605. package/dist/web/utils/env_aware_utils.js +0 -115
  606. package/dist/web/utils/error_utils.js +0 -101
  607. package/dist/web/utils/experimental.js +0 -54
  608. package/dist/web/utils/failover_utils.js +0 -100
  609. package/dist/web/utils/file_extension_utils.js +0 -55
  610. package/dist/web/utils/file_utils.js +0 -108
  611. package/dist/web/utils/gemini_schema_util.js +0 -177
  612. package/dist/web/utils/genai_schema_to_json.js +0 -80
  613. package/dist/web/utils/live_connection_utils.js +0 -257
  614. package/dist/web/utils/logger.js +0 -140
  615. package/dist/web/utils/model_name.js +0 -75
  616. package/dist/web/utils/object_notation_utils.js +0 -54
  617. package/dist/web/utils/optional_peer.js +0 -38
  618. package/dist/web/utils/output_schema_utils.js +0 -18
  619. package/dist/web/utils/partial_copy.js +0 -26
  620. package/dist/web/utils/redact_uri.js +0 -39
  621. package/dist/web/utils/schema.js +0 -167
  622. package/dist/web/utils/simple_zod_to_json.js +0 -134
  623. package/dist/web/utils/streaming_utils.js +0 -438
  624. package/dist/web/utils/task.js +0 -38
  625. package/dist/web/utils/variant_utils.js +0 -23
  626. package/dist/web/utils/vertex_ai_utils.js +0 -27
  627. package/dist/web/workflow/base_node.js +0 -215
  628. package/dist/web/workflow/branch_path.js +0 -77
  629. package/dist/web/workflow/dynamic_node_scheduler.js +0 -202
  630. package/dist/web/workflow/errors.js +0 -140
  631. package/dist/web/workflow/graph.js +0 -127
  632. package/dist/web/workflow/index.js +0 -80
  633. package/dist/web/workflow/node.js +0 -87
  634. package/dist/web/workflow/node_builders.js +0 -40
  635. package/dist/web/workflow/node_context.js +0 -236
  636. package/dist/web/workflow/node_error_event.js +0 -86
  637. package/dist/web/workflow/node_runner.js +0 -481
  638. package/dist/web/workflow/node_state.js +0 -43
  639. package/dist/web/workflow/node_status.js +0 -20
  640. package/dist/web/workflow/nodes/function_node.js +0 -221
  641. package/dist/web/workflow/nodes/join_node.js +0 -47
  642. package/dist/web/workflow/nodes/node_tool.js +0 -131
  643. package/dist/web/workflow/nodes/parallel_worker.js +0 -120
  644. package/dist/web/workflow/nodes/tool_node.js +0 -126
  645. package/dist/web/workflow/request_input.js +0 -36
  646. package/dist/web/workflow/retry_config.js +0 -43
  647. package/dist/web/workflow/run_llm_agent_as_node.js +0 -266
  648. package/dist/web/workflow/run_node_as_invocation.js +0 -170
  649. package/dist/web/workflow/schedule_dynamic_node.js +0 -26
  650. package/dist/web/workflow/trigger.js +0 -7
  651. package/dist/web/workflow/utils/graph_parser.js +0 -188
  652. package/dist/web/workflow/utils/graph_validation.js +0 -189
  653. package/dist/web/workflow/utils/hitl_utils.js +0 -239
  654. package/dist/web/workflow/utils/rehydration_utils.js +0 -342
  655. package/dist/web/workflow/utils/retry_utils.js +0 -82
  656. package/dist/web/workflow/utils/workflow_graph_utils.js +0 -115
  657. package/dist/web/workflow/workflow.js +0 -529
  658. /package/dist/{web/artifacts/session_artifact_service.js → esm/tools/resume_inputs.js} +0 -0
@@ -0,0 +1,87 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
3
+ var __defProp = Object.defineProperty;
4
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
5
+ /**
6
+ * @license
7
+ * Copyright 2026 Google LLC
8
+ * SPDX-License-Identifier: Apache-2.0
9
+ */
10
+ import { appendInstructions } from "../../models/llm_request.js";
11
+ import { isBasePlanner } from "../../planners/base_planner.js";
12
+ import { isBuiltInPlanner } from "../../planners/built_in_planner.js";
13
+ import { Context } from "../context.js";
14
+ import { isLlmAgent } from "../llm_agent.js";
15
+ import { ReadonlyContext } from "../readonly_context.js";
16
+ import {
17
+ BaseLlmRequestProcessor,
18
+ BaseLlmResponseProcessor
19
+ } from "./base_llm_processor.js";
20
+ function getPlanner(invocationContext) {
21
+ const agent = invocationContext.agent;
22
+ if (!isLlmAgent(agent) || !isBasePlanner(agent.planner)) {
23
+ return void 0;
24
+ }
25
+ return agent.planner;
26
+ }
27
+ __name(getPlanner, "getPlanner");
28
+ function removeThought(part) {
29
+ const { thought: _thought, ...rest } = part;
30
+ return rest;
31
+ }
32
+ __name(removeThought, "removeThought");
33
+ function removeThoughtFromContents(contents) {
34
+ return contents.map(
35
+ (content) => content.parts ? { ...content, parts: content.parts.map(removeThought) } : content
36
+ );
37
+ }
38
+ __name(removeThoughtFromContents, "removeThoughtFromContents");
39
+ const _NlPlanningRequestProcessor = class _NlPlanningRequestProcessor extends BaseLlmRequestProcessor {
40
+ // eslint-disable-next-line require-yield -- this processor only mutates the request and has no event to emit
41
+ async *runAsync(invocationContext, llmRequest) {
42
+ const planner = getPlanner(invocationContext);
43
+ if (!planner) {
44
+ return;
45
+ }
46
+ if (isBuiltInPlanner(planner)) {
47
+ planner.applyThinkingConfig(llmRequest);
48
+ }
49
+ const planningInstruction = planner.buildPlanningInstruction(
50
+ new ReadonlyContext(invocationContext),
51
+ llmRequest
52
+ );
53
+ if (planningInstruction) {
54
+ appendInstructions(llmRequest, [planningInstruction]);
55
+ }
56
+ llmRequest.contents = removeThoughtFromContents(llmRequest.contents);
57
+ }
58
+ };
59
+ __name(_NlPlanningRequestProcessor, "NlPlanningRequestProcessor");
60
+ let NlPlanningRequestProcessor = _NlPlanningRequestProcessor;
61
+ const _NlPlanningResponseProcessor = class _NlPlanningResponseProcessor extends BaseLlmResponseProcessor {
62
+ // eslint-disable-next-line require-yield -- this processor only rewrites the response and has no event to emit
63
+ async *runAsync(invocationContext, llmResponse) {
64
+ var _a, _b;
65
+ const planner = getPlanner(invocationContext);
66
+ if (!planner || !((_b = (_a = llmResponse.content) == null ? void 0 : _a.parts) == null ? void 0 : _b.length)) {
67
+ return;
68
+ }
69
+ const processedParts = planner.processPlanningResponse(
70
+ new Context({ invocationContext }),
71
+ llmResponse.content.parts
72
+ );
73
+ if (processedParts !== void 0) {
74
+ llmResponse.content = { ...llmResponse.content, parts: processedParts };
75
+ }
76
+ }
77
+ };
78
+ __name(_NlPlanningResponseProcessor, "NlPlanningResponseProcessor");
79
+ let NlPlanningResponseProcessor = _NlPlanningResponseProcessor;
80
+ const NL_PLANNING_REQUEST_PROCESSOR = new NlPlanningRequestProcessor();
81
+ const NL_PLANNING_RESPONSE_PROCESSOR = new NlPlanningResponseProcessor();
82
+ export {
83
+ NL_PLANNING_REQUEST_PROCESSOR,
84
+ NL_PLANNING_RESPONSE_PROCESSOR,
85
+ NlPlanningRequestProcessor,
86
+ NlPlanningResponseProcessor
87
+ };
@@ -55,7 +55,8 @@ const _RequestConfirmationLlmRequestProcessor = class _RequestConfirmationLlmReq
55
55
  }
56
56
  const approvals = collectApprovals(
57
57
  events,
58
- (_a = runConfig == null ? void 0 : runConfig.plainTextToolConfirmation) != null ? _a : false
58
+ (_a = runConfig == null ? void 0 : runConfig.plainTextToolConfirmation) != null ? _a : false,
59
+ agent.name
59
60
  );
60
61
  if (approvals.size === 0) {
61
62
  return;
@@ -116,7 +117,7 @@ function eventsInScope(invocationContext) {
116
117
  );
117
118
  }
118
119
  __name(eventsInScope, "eventsInScope");
119
- function collectApprovals(events, allowPlainText) {
120
+ function collectApprovals(events, allowPlainText, agentName) {
120
121
  const approvals = /* @__PURE__ */ new Map();
121
122
  const latestUserEvent = findLatestUserEvent(events);
122
123
  if (!latestUserEvent) {
@@ -135,7 +136,7 @@ function collectApprovals(events, allowPlainText) {
135
136
  );
136
137
  }
137
138
  if (approvals.size === 0 && allowPlainText) {
138
- return mapPlainTextConfirmation(events);
139
+ return mapPlainTextConfirmation(events, agentName);
139
140
  }
140
141
  return approvals;
141
142
  }
@@ -167,6 +168,9 @@ function collectGateCandidates(events, approvals, agentName) {
167
168
  functionCallId: functionCall.id
168
169
  });
169
170
  }
171
+ logger.debug(
172
+ `Skipping tool confirmation from event ${event.id}: authored by ${event.author}, not by ${agentName}.`
173
+ );
170
174
  continue;
171
175
  }
172
176
  const pinned = pinnedCall(functionCall);
@@ -179,7 +183,7 @@ function collectGateCandidates(events, approvals, agentName) {
179
183
  functionCallId: functionCall.id
180
184
  });
181
185
  }
182
- if (hasRespondedAfter(events, pinned.id, index)) {
186
+ if (hasRespondedAfter(events, pinned.id, index, agentName)) {
183
187
  continue;
184
188
  }
185
189
  candidates.push({ pinned, confirmation });
@@ -239,16 +243,16 @@ function agentAuthoredCalls(events, agentName) {
239
243
  }
240
244
  __name(agentAuthoredCalls, "agentAuthoredCalls");
241
245
  function dynamicallyRequestedCallIds(events, agentName) {
246
+ var _a;
242
247
  const requested = /* @__PURE__ */ new Set();
243
248
  for (const event of events) {
244
249
  if (event.author !== agentName) {
245
250
  continue;
246
251
  }
247
- const confirmations = event.actions.requestedToolConfirmations;
248
- for (const functionResponse of getFunctionResponses(event)) {
249
- if (functionResponse.id && functionResponse.id in confirmations) {
250
- requested.add(functionResponse.id);
251
- }
252
+ for (const functionCallId of Object.keys(
253
+ (_a = event.actions.requestedToolConfirmations) != null ? _a : {}
254
+ )) {
255
+ requested.add(functionCallId);
252
256
  }
253
257
  }
254
258
  return requested;
@@ -266,9 +270,9 @@ function pinnedCall(functionCall) {
266
270
  return pinned;
267
271
  }
268
272
  __name(pinnedCall, "pinnedCall");
269
- function hasRespondedAfter(events, pinnedCallId, gateIndex) {
273
+ function hasRespondedAfter(events, pinnedCallId, gateIndex, agentName) {
270
274
  return events.slice(gateIndex + 1).some(
271
- (event) => getFunctionResponses(event).some(
275
+ (event) => event.author === agentName && getFunctionResponses(event).some(
272
276
  (functionResponse) => functionResponse.id === pinnedCallId
273
277
  )
274
278
  );
@@ -305,7 +309,7 @@ const NEGATIVE = /* @__PURE__ */ new Set([
305
309
  "cancel",
306
310
  "cancelled"
307
311
  ]);
308
- function mapPlainTextConfirmation(events) {
312
+ function mapPlainTextConfirmation(events, agentName) {
309
313
  var _a, _b;
310
314
  const none = /* @__PURE__ */ new Map();
311
315
  let turnIndex = -1;
@@ -343,6 +347,9 @@ function mapPlainTextConfirmation(events) {
343
347
  if (event.author === "user") {
344
348
  break;
345
349
  }
350
+ if (event.author !== agentName) {
351
+ continue;
352
+ }
346
353
  for (const fc of getFunctionCalls(event)) {
347
354
  if (fc.name === REQUEST_CONFIRMATION_FUNCTION_CALL_NAME && fc.id && !answered.has(fc.id)) {
348
355
  pendingId = fc.id;
@@ -11,7 +11,6 @@ import {
11
11
  getFunctionCalls,
12
12
  getFunctionResponses
13
13
  } from "../../events/event.js";
14
- import { ToolConfirmation } from "../../tools/tool_confirmation.js";
15
14
  import { AsyncQueue } from "../../utils/async_queue.js";
16
15
  import { isNodeTool } from "../../workflow/nodes/node_tool.js";
17
16
  import {
@@ -70,12 +69,9 @@ const _RequestInputLlmRequestProcessor = class _RequestInputLlmRequestProcessor
70
69
  if (Object.keys(pending).length === 0) {
71
70
  return;
72
71
  }
73
- const toolConfirmationDict = {};
72
+ const resumeInputsDict = {};
74
73
  for (const id of Object.keys(pending)) {
75
- toolConfirmationDict[id] = new ToolConfirmation({
76
- confirmed: true,
77
- payload: resumeInputs
78
- });
74
+ resumeInputsDict[id] = resumeInputs;
79
75
  }
80
76
  const eventQueue = new AsyncQueue();
81
77
  invocationContext.eventQueue = eventQueue;
@@ -88,7 +84,7 @@ const _RequestInputLlmRequestProcessor = class _RequestInputLlmRequestProcessor
88
84
  beforeToolCallbacks: agent.canonicalBeforeToolCallbacks,
89
85
  afterToolCallbacks: agent.canonicalAfterToolCallbacks,
90
86
  filters: new Set(Object.keys(pending)),
91
- toolConfirmationDict
87
+ resumeInputsDict
92
88
  });
93
89
  } finally {
94
90
  eventQueue.close();
@@ -52,6 +52,12 @@ const _ReadonlyContext = class _ReadonlyContext {
52
52
  {}
53
53
  );
54
54
  }
55
+ /**
56
+ * Request-level metadata passed from an incoming A2A request or caller.
57
+ */
58
+ get a2aMetadata() {
59
+ return this.invocationContext.a2aMetadata;
60
+ }
55
61
  };
56
62
  __name(_ReadonlyContext, "ReadonlyContext");
57
63
  let ReadonlyContext = _ReadonlyContext;
@@ -10,7 +10,7 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
10
10
  var _a, _b;
11
11
  import { BaseAgent } from "./base_agent.js";
12
12
  import { runWithRouting } from "../utils/failover_utils.js";
13
- const ROUTED_AGENT_SIGNATURE_SYMBOL = Symbol.for("google.adk.routedAgent");
13
+ const ROUTED_AGENT_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for("google.adk.routedAgent");
14
14
  function isRoutedAgent(obj) {
15
15
  return typeof obj === "object" && obj !== null && ROUTED_AGENT_SIGNATURE_SYMBOL in obj && obj[ROUTED_AGENT_SIGNATURE_SYMBOL] === true;
16
16
  }
@@ -23,7 +23,7 @@ import { BaseAgent } from "./base_agent.js";
23
23
  import { isLlmAgent } from "./llm_agent.js";
24
24
  import { ReadonlyContext } from "./readonly_context.js";
25
25
  const TASK_COMPLETED_TOOL_NAME = "task_completed";
26
- const SEQUENTIAL_AGENT_SIGNATURE_SYMBOL = Symbol.for(
26
+ const SEQUENTIAL_AGENT_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for(
27
27
  "google.adk.sequentialAgent"
28
28
  );
29
29
  function isSequentialAgent(obj) {
@@ -23,7 +23,7 @@ function validateAppName(name) {
23
23
  }
24
24
  }
25
25
  __name(validateAppName, "validateAppName");
26
- const APP_SIGNATURE_SYMBOL = Symbol.for("google.adk.app");
26
+ const APP_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for("google.adk.app");
27
27
  function isApp(obj) {
28
28
  return typeof obj === "object" && obj !== null && APP_SIGNATURE_SYMBOL in obj && obj[APP_SIGNATURE_SYMBOL] === true;
29
29
  }
@@ -474,10 +474,9 @@ async function* iterateArtifactDirs(dir) {
474
474
  );
475
475
  if (hasVersions) {
476
476
  yield dir;
477
- return;
478
477
  }
479
478
  for (const entry of entries) {
480
- if (entry.isDirectory()) {
479
+ if (entry.isDirectory() && entry.name !== "versions") {
481
480
  const subdir = path.join(dir, entry.name);
482
481
  for await (const foundDir of iterateArtifactDirs(subdir)) {
483
482
  yield foundDir;
@@ -67,9 +67,7 @@ const _GcsArtifactService = class _GcsArtifactService {
67
67
  version
68
68
  })
69
69
  );
70
- const customMetadata = {
71
- ...request.customMetadata
72
- };
70
+ const customMetadata = stringifyMetadataValues(request.customMetadata);
73
71
  if (request.artifact.inlineData) {
74
72
  if (request.artifact.inlineData.displayName) {
75
73
  customMetadata[GCS_DISPLAY_NAME_METADATA_KEY] = request.artifact.inlineData.displayName;
@@ -193,10 +191,9 @@ const _GcsArtifactService = class _GcsArtifactService {
193
191
  const [files] = await bucket.getFiles({ prefix: searchPrefix });
194
192
  const versions = [];
195
193
  for (const file of files) {
196
- const version = file.name.split("/").pop();
197
- const v = parseInt(version, 10);
198
- if (!isNaN(v)) {
199
- versions.push(v);
194
+ const suffix = file.name.slice(searchPrefix.length);
195
+ if (/^\d+$/.test(suffix)) {
196
+ versions.push(Number(suffix));
200
197
  }
201
198
  }
202
199
  return versions.sort((a, b) => a - b);
@@ -262,6 +259,15 @@ function getFileName({
262
259
  return version !== void 0 ? `${prefix}/${version}` : prefix;
263
260
  }
264
261
  __name(getFileName, "getFileName");
262
+ function stringifyMetadataValues(customMetadata) {
263
+ return Object.fromEntries(
264
+ Object.entries(customMetadata != null ? customMetadata : {}).map(([key, value]) => [
265
+ key,
266
+ String(value)
267
+ ])
268
+ );
269
+ }
270
+ __name(stringifyMetadataValues, "stringifyMetadataValues");
265
271
  function extractArtifactKeys(files, fileNamePrefix, keyPrefix = "") {
266
272
  const keys = /* @__PURE__ */ new Set();
267
273
  for (const file of files) {
@@ -7,12 +7,21 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
7
7
  * Copyright 2026 Google LLC
8
8
  * SPDX-License-Identifier: Apache-2.0
9
9
  */
10
+ var _a;
11
+ const SESSION_ARTIFACT_SERVICE_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for(
12
+ "google.adk.sessionArtifactService"
13
+ );
14
+ _a = SESSION_ARTIFACT_SERVICE_SIGNATURE_SYMBOL;
10
15
  const _ScopedArtifactService = class _ScopedArtifactService {
11
16
  constructor(delegate, appName, userId, sessionId) {
12
17
  this.delegate = delegate;
13
18
  this.appName = appName;
14
19
  this.userId = userId;
15
20
  this.sessionId = sessionId;
21
+ /**
22
+ * Brands this class as a session-scoped artifact service.
23
+ */
24
+ this[_a] = true;
16
25
  }
17
26
  async saveArtifact(request) {
18
27
  return this.delegate.saveArtifact({
@@ -1,7 +1,19 @@
1
1
  import {createRequire as topLevelCreateRequire} from 'module';
2
2
  const require = topLevelCreateRequire(import.meta.url);
3
+ var __defProp = Object.defineProperty;
4
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
5
  /**
4
6
  * @license
5
7
  * Copyright 2026 Google LLC
6
8
  * SPDX-License-Identifier: Apache-2.0
7
9
  */
10
+ const SESSION_ARTIFACT_SERVICE_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for(
11
+ "google.adk.sessionArtifactService"
12
+ );
13
+ function isSessionArtifactService(service) {
14
+ return typeof service === "object" && service !== null && SESSION_ARTIFACT_SERVICE_SIGNATURE_SYMBOL in service && service[SESSION_ARTIFACT_SERVICE_SIGNATURE_SYMBOL] === true;
15
+ }
16
+ __name(isSessionArtifactService, "isSessionArtifactService");
17
+ export {
18
+ isSessionArtifactService
19
+ };
@@ -1,5 +1,7 @@
1
1
  import {createRequire as topLevelCreateRequire} from 'module';
2
2
  const require = topLevelCreateRequire(import.meta.url);
3
+ var __defProp = Object.defineProperty;
4
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
5
  /**
4
6
  * @license
5
7
  * Copyright 2025 Google LLC
@@ -13,6 +15,14 @@ var AuthCredentialTypes = /* @__PURE__ */ ((AuthCredentialTypes2) => {
13
15
  AuthCredentialTypes2["SERVICE_ACCOUNT"] = "serviceAccount";
14
16
  return AuthCredentialTypes2;
15
17
  })(AuthCredentialTypes || {});
18
+ const AUTH_CREDENTIAL_TYPES = new Set(
19
+ Object.values(AuthCredentialTypes)
20
+ );
21
+ function isAuthCredential(value) {
22
+ return typeof value === "object" && value !== null && "authType" in value && AUTH_CREDENTIAL_TYPES.has(value.authType);
23
+ }
24
+ __name(isAuthCredential, "isAuthCredential");
16
25
  export {
17
- AuthCredentialTypes
26
+ AuthCredentialTypes,
27
+ isAuthCredential
18
28
  };
@@ -9,6 +9,11 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
9
9
  */
10
10
  import { randomUUID } from "../utils/env_aware_utils.js";
11
11
  import { OAuth2CredentialExchanger } from "./oauth2/oauth2_credential_exchanger.js";
12
+ import {
13
+ createS256CodeChallenge,
14
+ generateCodeVerifier
15
+ } from "./oauth2/oauth2_utils.js";
16
+ const S256_CODE_CHALLENGE_METHOD = "S256";
12
17
  const _AuthHandler = class _AuthHandler {
13
18
  constructor(authConfig) {
14
19
  this.authConfig = authConfig;
@@ -17,7 +22,16 @@ const _AuthHandler = class _AuthHandler {
17
22
  const credentialKey = "temp:" + this.authConfig.credentialKey;
18
23
  return state.get(credentialKey);
19
24
  }
25
+ /**
26
+ * Stores the exchanged credential in the session state.
27
+ *
28
+ * @param state The session state to store the credential in.
29
+ * @throws Error: If the auth config has no credentialKey.
30
+ */
20
31
  async parseAndStoreAuthResponse(state) {
32
+ if (!this.authConfig.credentialKey) {
33
+ throw new Error("credentialKey is empty.");
34
+ }
21
35
  const credentialKey = "temp:" + this.authConfig.credentialKey;
22
36
  const authSchemeType = this.authConfig.authScheme.type;
23
37
  if (!["oauth2", "openIdConnect"].includes(authSchemeType)) {
@@ -73,9 +87,14 @@ const _AuthHandler = class _AuthHandler {
73
87
  /**
74
88
  * Generates an response containing the auth uri for user to sign in.
75
89
  *
90
+ * When the credential requests PKCE, the URI also carries the S256 code
91
+ * challenge derived from the credential's code verifier, and the returned
92
+ * credential carries the verifier the later token exchange must send.
93
+ *
76
94
  * @return An AuthCredential object containing the auth URI and state.
77
95
  * @throws Error: If the authorization endpoint is not configured in the
78
- * auth scheme.
96
+ * auth scheme, or the credential requests a code challenge method other
97
+ * than 'S256'.
79
98
  */
80
99
  generateAuthUri() {
81
100
  const authScheme = this.authConfig.authScheme;
@@ -83,6 +102,13 @@ const _AuthHandler = class _AuthHandler {
83
102
  if (!authCredential || !authCredential.oauth2) {
84
103
  return authCredential;
85
104
  }
105
+ const oauth2 = authCredential.oauth2;
106
+ const codeChallengeMethod = oauth2.codeChallengeMethod;
107
+ if (codeChallengeMethod && codeChallengeMethod !== S256_CODE_CHALLENGE_METHOD) {
108
+ throw new Error(
109
+ `Unsupported codeChallengeMethod: ${codeChallengeMethod}. Only '${S256_CODE_CHALLENGE_METHOD}' is supported.`
110
+ );
111
+ }
86
112
  let authorizationEndpoint = "";
87
113
  let scopes = [];
88
114
  if ("authorizationEndpoint" in authScheme) {
@@ -107,22 +133,35 @@ const _AuthHandler = class _AuthHandler {
107
133
  }
108
134
  const state = randomUUID();
109
135
  const url = new URL(authorizationEndpoint);
110
- url.searchParams.set("client_id", authCredential.oauth2.clientId || "");
111
- url.searchParams.set(
112
- "redirect_uri",
113
- authCredential.oauth2.redirectUri || ""
114
- );
136
+ url.searchParams.set("client_id", oauth2.clientId || "");
137
+ url.searchParams.set("redirect_uri", oauth2.redirectUri || "");
115
138
  url.searchParams.set("response_type", "code");
116
139
  url.searchParams.set("scope", scopes.join(" "));
117
140
  url.searchParams.set("state", state);
118
141
  url.searchParams.set("access_type", "offline");
119
142
  url.searchParams.set("prompt", "consent");
143
+ if (oauth2.audience) {
144
+ url.searchParams.set("audience", oauth2.audience);
145
+ }
146
+ if (oauth2.nonce) {
147
+ url.searchParams.set("nonce", oauth2.nonce);
148
+ }
149
+ let codeVerifier = oauth2.codeVerifier;
150
+ if (codeChallengeMethod) {
151
+ codeVerifier != null ? codeVerifier : codeVerifier = generateCodeVerifier();
152
+ url.searchParams.set(
153
+ "code_challenge",
154
+ createS256CodeChallenge(codeVerifier)
155
+ );
156
+ url.searchParams.set("code_challenge_method", codeChallengeMethod);
157
+ }
120
158
  const exchangedAuthCredential = {
121
159
  ...authCredential,
122
160
  oauth2: {
123
- ...authCredential.oauth2,
161
+ ...oauth2,
124
162
  authUri: url.toString(),
125
- state
163
+ state,
164
+ codeVerifier
126
165
  }
127
166
  };
128
167
  return exchangedAuthCredential;
@@ -19,7 +19,7 @@ const _OAuth2CredentialRefresher = class _OAuth2CredentialRefresher {
19
19
  *
20
20
  * @param authCredential The OAuth2 credential to check.
21
21
  * @param authScheme The OAuth2 authentication scheme (optional).
22
- * @returns True if the credential needs to be refreshed, False otherwise.
22
+ * @returns True if the credential needs to be refreshed, false otherwise.
23
23
  */
24
24
  async isRefreshNeeded(authCredential) {
25
25
  if (!authCredential.oauth2) {
@@ -7,8 +7,19 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
7
7
  * Copyright 2026 Google LLC
8
8
  * SPDX-License-Identifier: Apache-2.0
9
9
  */
10
+ import { createHash, randomBytes } from "node:crypto";
10
11
  import { logger } from "../../utils/logger.js";
12
+ import { redactUriPassword } from "../../utils/redact_uri.js";
11
13
  import { validateDiscoveryUrl } from "./oauth2_discovery.js";
14
+ const CODE_VERIFIER_BYTES = 36;
15
+ function generateCodeVerifier() {
16
+ return randomBytes(CODE_VERIFIER_BYTES).toString("base64url");
17
+ }
18
+ __name(generateCodeVerifier, "generateCodeVerifier");
19
+ function createS256CodeChallenge(codeVerifier) {
20
+ return createHash("sha256").update(codeVerifier).digest("base64url");
21
+ }
22
+ __name(createS256CodeChallenge, "createS256CodeChallenge");
12
23
  function getTokenEndpoint(authScheme) {
13
24
  if (authScheme.type === "openIdConnect" && authScheme.tokenEndpoint) {
14
25
  return authScheme.tokenEndpoint;
@@ -63,8 +74,8 @@ function parseAuthorizationCode(uri) {
63
74
  try {
64
75
  const url = new URL(uri);
65
76
  return url.searchParams.get("code") || void 0;
66
- } catch (e) {
67
- logger.warn(`Failed to parse authorization URI ${uri}: ${e}`);
77
+ } catch {
78
+ logger.warn(`Failed to parse authorization URI ${redactUriPassword(uri)}`);
68
79
  return void 0;
69
80
  }
70
81
  }
@@ -98,7 +109,9 @@ function isTokenExpired(token, leeway = 60) {
98
109
  __name(isTokenExpired, "isTokenExpired");
99
110
  export {
100
111
  createOAuth2TokenRequestBody,
112
+ createS256CodeChallenge,
101
113
  fetchOAuth2Tokens,
114
+ generateCodeVerifier,
102
115
  getTokenEndpoint,
103
116
  isTokenExpired,
104
117
  parseAuthorizationCode
@@ -8,7 +8,7 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
8
8
  * SPDX-License-Identifier: Apache-2.0
9
9
  */
10
10
  var _a;
11
- const BASE_CODE_EXECUTOR_SIGNATURE_SYMBOL = Symbol.for(
11
+ const BASE_CODE_EXECUTOR_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for(
12
12
  "google.adk.baseCodeExecutor"
13
13
  );
14
14
  function isBaseCodeExecutor(obj) {
@@ -10,7 +10,7 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
10
10
  var _a, _b;
11
11
  import { isGemini2OrAbove } from "../utils/model_name.js";
12
12
  import { BaseCodeExecutor } from "./base_code_executor.js";
13
- const BUILT_IN_CODE_EXECUTOR_SIGNATURE_SYMBOL = Symbol.for(
13
+ const BUILT_IN_CODE_EXECUTOR_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for(
14
14
  "google.adk.builtInCodeExecutor"
15
15
  );
16
16
  function isBuiltInCodeExecutor(obj) {
@@ -38,7 +38,7 @@ function extractCodeAndTruncateContent(content, codeBlockDelimiters) {
38
38
  const part = content.parts[i];
39
39
  if (part.executableCode && (i === content.parts.length - 1 || !content.parts[i + 1].codeExecutionResult)) {
40
40
  content.parts = content.parts.slice(0, i + 1);
41
- return part.executableCode.code;
41
+ return part.executableCode.code || "";
42
42
  }
43
43
  }
44
44
  const textParts = content.parts.filter((part) => part.text);
@@ -113,12 +113,12 @@ function convertCodeExecutionParts(content, codeBlockDelimiter, executionResultD
113
113
  const lastPart = content.parts[content.parts.length - 1];
114
114
  if (lastPart.executableCode) {
115
115
  content.parts[content.parts.length - 1] = {
116
- text: codeBlockDelimiter[0] + lastPart.executableCode.code + codeBlockDelimiter[1]
116
+ text: codeBlockDelimiter[0] + (lastPart.executableCode.code || "") + codeBlockDelimiter[1]
117
117
  };
118
118
  } else if (content.parts.length == 1 && lastPart.codeExecutionResult) {
119
- content.parts[content.parts.length - 1] = {
120
- text: executionResultDelimiters[0] + lastPart.codeExecutionResult.output + executionResultDelimiters[1]
121
- };
119
+ const output = lastPart.codeExecutionResult.output;
120
+ const text = output == null ? "" : executionResultDelimiters[0] + output + executionResultDelimiters[1];
121
+ content.parts[content.parts.length - 1] = { text };
122
122
  content.role = "user";
123
123
  }
124
124
  }