@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,81 @@
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 * as winston from "winston";
11
+ import { LogLevel, setLogger } from "./logger.js";
12
+ const _WinstonLogger = class _WinstonLogger {
13
+ constructor() {
14
+ this.logLevel = LogLevel.INFO;
15
+ this.logger = winston.createLogger({
16
+ levels: {
17
+ "debug": LogLevel.DEBUG,
18
+ "info": LogLevel.INFO,
19
+ "warn": LogLevel.WARN,
20
+ "error": LogLevel.ERROR
21
+ },
22
+ level: "error",
23
+ format: winston.format.combine(
24
+ winston.format.label({ label: "ADK" }),
25
+ winston.format((info) => {
26
+ info.level = info.level.toUpperCase();
27
+ return info;
28
+ })(),
29
+ winston.format.colorize(),
30
+ winston.format.timestamp(),
31
+ winston.format.printf((info) => {
32
+ return `${info.level}: [${info.label}] ${info.timestamp} ${info.message}`;
33
+ })
34
+ ),
35
+ transports: [new winston.transports.Console()]
36
+ });
37
+ }
38
+ setLogLevel(level) {
39
+ this.logLevel = level;
40
+ }
41
+ log(level, ...messages) {
42
+ if (this.logLevel > level) {
43
+ return;
44
+ }
45
+ this.logger.log(level.toString(), messages.join(" "));
46
+ }
47
+ debug(...messages) {
48
+ if (this.logLevel > LogLevel.DEBUG) {
49
+ return;
50
+ }
51
+ this.logger.debug(messages.join(" "));
52
+ }
53
+ info(...messages) {
54
+ if (this.logLevel > LogLevel.INFO) {
55
+ return;
56
+ }
57
+ this.logger.info(messages.join(" "));
58
+ }
59
+ warn(...messages) {
60
+ if (this.logLevel > LogLevel.WARN) {
61
+ return;
62
+ }
63
+ this.logger.warn(messages.join(" "));
64
+ }
65
+ error(...messages) {
66
+ if (this.logLevel > LogLevel.ERROR) {
67
+ return;
68
+ }
69
+ this.logger.error(messages.join(" "));
70
+ }
71
+ };
72
+ __name(_WinstonLogger, "WinstonLogger");
73
+ let WinstonLogger = _WinstonLogger;
74
+ function installNodeLogger() {
75
+ setLogger(new WinstonLogger());
76
+ }
77
+ __name(installNodeLogger, "installNodeLogger");
78
+ export {
79
+ WinstonLogger,
80
+ installNodeLogger
81
+ };
@@ -53,12 +53,23 @@ function isGemini2OrAbove(modelString) {
53
53
  return parsedVersion.valid && parsedVersion.major >= 2;
54
54
  }
55
55
  __name(isGemini2OrAbove, "isGemini2OrAbove");
56
- function isGemini3xFlashLive(modelString) {
56
+ function isGemini3xLive(modelString) {
57
57
  if (!modelString) {
58
58
  return false;
59
59
  }
60
60
  const modelName = extractModelName(modelString);
61
- return modelName.startsWith("gemini-3.") && modelName.includes("-flash-live");
61
+ return modelName.startsWith("gemini-3.") && modelName.includes("-live") && !isGemini35LiveTranslate(modelString);
62
+ }
63
+ __name(isGemini3xLive, "isGemini3xLive");
64
+ function isGemini35LiveTranslate(modelString) {
65
+ if (!modelString) {
66
+ return false;
67
+ }
68
+ return extractModelName(modelString).startsWith("gemini-3.5-live-translate");
69
+ }
70
+ __name(isGemini35LiveTranslate, "isGemini35LiveTranslate");
71
+ function isGemini3xFlashLive(modelString) {
72
+ return isGemini3xLive(modelString);
62
73
  }
63
74
  __name(isGemini3xFlashLive, "isGemini3xFlashLive");
64
75
  function isGeminiModelIdCheckDisabled() {
@@ -69,7 +80,9 @@ export {
69
80
  extractModelName,
70
81
  isGemini1Model,
71
82
  isGemini2OrAbove,
83
+ isGemini35LiveTranslate,
72
84
  isGemini3xFlashLive,
85
+ isGemini3xLive,
73
86
  isGeminiModel,
74
87
  isGeminiModelIdCheckDisabled
75
88
  };
@@ -0,0 +1,19 @@
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
+ function stringifyWithRedactedInlineData(value) {
11
+ return JSON.stringify(
12
+ value,
13
+ (key, val) => key === "inlineData" && typeof val === "object" && val !== null && "data" in val && typeof val.data === "string" ? { ...val, data: `<redacted ${val.data.length} chars>` } : val
14
+ );
15
+ }
16
+ __name(stringifyWithRedactedInlineData, "stringifyWithRedactedInlineData");
17
+ export {
18
+ stringifyWithRedactedInlineData
19
+ };
@@ -11,7 +11,21 @@ const SECRET_QUERY_PARAMS = /* @__PURE__ */ new Set([
11
11
  "password",
12
12
  "passwd",
13
13
  "pwd",
14
- "sslpassword"
14
+ "sslpassword",
15
+ // OAuth2 callback/authorization-response URIs carry their own secrets as
16
+ // query parameters rather than in userinfo: an authorization `code` is a
17
+ // single-use, bearer-equivalent credential, and a token response echoed
18
+ // back via URI can carry `access_token`/`id_token`/`refresh_token`.
19
+ // Only the query string is scanned: in the implicit and hybrid flows those
20
+ // token parameters arrive in the fragment, which is left untouched.
21
+ // `client_secret` is not meant to travel in a URL at all, but is included
22
+ // here in case a misconfigured flow puts it there anyway.
23
+ "code",
24
+ "access_token",
25
+ "id_token",
26
+ "refresh_token",
27
+ "client_secret",
28
+ "code_verifier"
15
29
  ]);
16
30
  function redactUriPassword(uri) {
17
31
  try {
@@ -89,7 +89,7 @@ function objectSchemaFields(schema) {
89
89
  return fields != null ? fields : void 0;
90
90
  }
91
91
  __name(objectSchemaFields, "objectSchemaFields");
92
- const UNRESOLVABLE_REF = Symbol("unresolvable-ref");
92
+ const UNRESOLVABLE_REF = /* @__PURE__ */ Symbol("unresolvable-ref");
93
93
  function compileField(fieldSchema, document) {
94
94
  try {
95
95
  return compileJsonSchema(inlineRefs(fieldSchema, document));
@@ -86,6 +86,11 @@ function zodObjectToSchema(schema) {
86
86
  if (isZodV3Schema(schema)) {
87
87
  return toJSONSchemaV3(schema, {
88
88
  target: "openApi3",
89
+ // The genai `Schema` type has no `$ref`, so a pointer back at an earlier
90
+ // occurrence of a reused sub-schema reaches the model as an untyped
91
+ // parameter. Inline every occurrence instead. A cycle has no finite
92
+ // inlining and degrades to an unconstrained schema.
93
+ $refStrategy: "none",
89
94
  emailStrategy: "format:email",
90
95
  postProcess: /* @__PURE__ */ __name((jsonSchema) => {
91
96
  var _a, _b, _c, _d, _e, _f, _g;
@@ -9,11 +9,8 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
9
9
  */
10
10
  import { lookup } from "node:dns/promises";
11
11
  import { isIP } from "node:net";
12
- import { z } from "zod";
13
- import { FunctionTool } from "./function_tool.js";
14
- const ALLOWED_SCHEMES = /* @__PURE__ */ new Set(["http:", "https:"]);
15
- const DEFAULT_TIMEOUT_MS = 3e4;
16
- const BLOCKED_IPV4_CIDRS = [
12
+ const HTTP_SCHEMES = /* @__PURE__ */ new Set(["http:", "https:"]);
13
+ const NON_GLOBAL_IPV4_CIDRS = [
17
14
  "0.0.0.0/8",
18
15
  // "this host on this network"
19
16
  "10.0.0.0/8",
@@ -45,7 +42,7 @@ const BLOCKED_IPV4_CIDRS = [
45
42
  "240.0.0.0/4"
46
43
  // reserved / future use (includes 255.255.255.255)
47
44
  ].map(parseIpv4Cidr);
48
- const BLOCKED_IPV6_CIDRS = [
45
+ const NON_GLOBAL_IPV6_CIDRS = [
49
46
  "::/128",
50
47
  // unspecified
51
48
  "::1/128",
@@ -63,19 +60,57 @@ const BLOCKED_IPV6_CIDRS = [
63
60
  "ff00::/8"
64
61
  // multicast
65
62
  ].map(parseIpv6Cidr);
66
- function failedToFetchMessage(url) {
67
- return "Failed to fetch url: ".concat(url);
68
- }
69
- __name(failedToFetchMessage, "failedToFetchMessage");
70
- function isBlockedHostname(hostname) {
63
+ const LINK_LOCAL_IPV4_CIDR = parseIpv4Cidr("169.254.0.0/16");
64
+ const LINK_LOCAL_IPV6_CIDR = parseIpv6Cidr("fe80::/10");
65
+ const IPV4_MAPPED_CIDR = parseIpv6Cidr("::ffff:0:0/96");
66
+ const NAT64_CIDR = parseIpv6Cidr("64:ff9b::/96");
67
+ const SIX_TO_FOUR_CIDR = parseIpv6Cidr("2002::/16");
68
+ const IPV4_COMPATIBLE_CIDR = parseIpv6Cidr("::/96");
69
+ function isHttpUrl(url) {
70
+ return HTTP_SCHEMES.has(url.protocol);
71
+ }
72
+ __name(isHttpUrl, "isHttpUrl");
73
+ function isLocalhostHostname(hostname) {
71
74
  const normalized = hostname.replace(/\.+$/, "").toLowerCase();
72
75
  return normalized === "localhost" || normalized.endsWith(".localhost");
73
76
  }
74
- __name(isBlockedHostname, "isBlockedHostname");
77
+ __name(isLocalhostHostname, "isLocalhostHostname");
75
78
  function normalizeHost(hostname) {
76
79
  return hostname.startsWith("[") ? hostname.slice(1, -1) : hostname;
77
80
  }
78
81
  __name(normalizeHost, "normalizeHost");
82
+ function isNonGlobalAddress(address) {
83
+ return classifyAddress(address, isNonGlobalIpv4, isNonGlobalIpv6);
84
+ }
85
+ __name(isNonGlobalAddress, "isNonGlobalAddress");
86
+ function isLinkLocalAddress(address) {
87
+ return classifyAddress(address, isLinkLocalIpv4, isLinkLocalIpv6);
88
+ }
89
+ __name(isLinkLocalAddress, "isLinkLocalAddress");
90
+ async function resolveHostAddresses(hostname) {
91
+ if (isIP(hostname) !== 0) {
92
+ return [hostname];
93
+ }
94
+ const records = await lookup(hostname, { all: true });
95
+ const addresses = [...new Set(records.map((record) => record.address))];
96
+ if (addresses.length === 0) {
97
+ throw new Error(`Unable to resolve host: ${hostname}`);
98
+ }
99
+ return addresses;
100
+ }
101
+ __name(resolveHostAddresses, "resolveHostAddresses");
102
+ function classifyAddress(address, matchesIpv4, matchesIpv6) {
103
+ const octets = parseIpv4(address);
104
+ if (octets) {
105
+ return matchesIpv4(octets);
106
+ }
107
+ const hextets = parseIpv6(address);
108
+ if (hextets) {
109
+ return matchesIpv6(hextets);
110
+ }
111
+ return true;
112
+ }
113
+ __name(classifyAddress, "classifyAddress");
79
114
  function parseIpv4(address) {
80
115
  const match = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/.exec(address);
81
116
  if (!match) {
@@ -117,9 +152,9 @@ function ipv4ToInt(octets) {
117
152
  }
118
153
  __name(ipv4ToInt, "ipv4ToInt");
119
154
  function hextetsToBigInt(hextets) {
120
- let value = /* @__PURE__ */ BigInt("0");
155
+ let value = 0n;
121
156
  for (const hextet of hextets) {
122
- value = value << /* @__PURE__ */ BigInt("16") | BigInt(hextet);
157
+ value = value << 16n | BigInt(hextet);
123
158
  }
124
159
  return value;
125
160
  }
@@ -135,108 +170,61 @@ function parseIpv6Cidr(cidr) {
135
170
  return { base: hextetsToBigInt(parseIpv6(address)), prefix: Number(prefix) };
136
171
  }
137
172
  __name(parseIpv6Cidr, "parseIpv6Cidr");
138
- function isBlockedIpv4(octets) {
139
- const value = ipv4ToInt(octets);
140
- return BLOCKED_IPV4_CIDRS.some(
141
- ({ base, mask }) => (value & mask) >>> 0 === base
142
- );
143
- }
144
- __name(isBlockedIpv4, "isBlockedIpv4");
145
- function isBlockedIpv6(hextets) {
146
- const value = hextetsToBigInt(hextets);
147
- if (value >> /* @__PURE__ */ BigInt("32") === /* @__PURE__ */ BigInt("0xffff")) {
148
- return isBlockedIpv4([
149
- Number(value >> /* @__PURE__ */ BigInt("24") & /* @__PURE__ */ BigInt("0xff")),
150
- Number(value >> /* @__PURE__ */ BigInt("16") & /* @__PURE__ */ BigInt("0xff")),
151
- Number(value >> /* @__PURE__ */ BigInt("8") & /* @__PURE__ */ BigInt("0xff")),
152
- Number(value & /* @__PURE__ */ BigInt("0xff"))
153
- ]);
173
+ function matchesIpv4Cidr(octets, { base, mask }) {
174
+ return (ipv4ToInt(octets) & mask) >>> 0 === base;
175
+ }
176
+ __name(matchesIpv4Cidr, "matchesIpv4Cidr");
177
+ function matchesIpv6Cidr(hextets, { base, prefix }) {
178
+ const shift = BigInt(128 - prefix);
179
+ return hextetsToBigInt(hextets) >> shift === base >> shift;
180
+ }
181
+ __name(matchesIpv6Cidr, "matchesIpv6Cidr");
182
+ function embeddedIpv4(hextets) {
183
+ if (matchesIpv6Cidr(hextets, SIX_TO_FOUR_CIDR)) {
184
+ return hextetsToOctets(hextets[1], hextets[2]);
154
185
  }
155
- return BLOCKED_IPV6_CIDRS.some(
156
- ({ base, prefix }) => value >> BigInt(128 - prefix) === base >> BigInt(128 - prefix)
157
- );
158
- }
159
- __name(isBlockedIpv6, "isBlockedIpv6");
160
- function isBlockedAddress(address) {
161
- const octets = parseIpv4(address);
162
- if (octets) {
163
- return isBlockedIpv4(octets);
186
+ if (matchesIpv6Cidr(hextets, IPV4_MAPPED_CIDR) || matchesIpv6Cidr(hextets, NAT64_CIDR)) {
187
+ return hextetsToOctets(hextets[6], hextets[7]);
164
188
  }
165
- const hextets = parseIpv6(address);
166
- if (hextets) {
167
- return isBlockedIpv6(hextets);
189
+ if (matchesIpv6Cidr(hextets, IPV4_COMPATIBLE_CIDR) && (hextets[6] !== 0 || hextets[7] > 1)) {
190
+ return hextetsToOctets(hextets[6], hextets[7]);
168
191
  }
169
- return true;
192
+ return null;
170
193
  }
171
- __name(isBlockedAddress, "isBlockedAddress");
172
- async function resolveHostAddresses(hostname) {
173
- if (isIP(hostname) !== 0) {
174
- return [hostname];
175
- }
176
- const records = await lookup(hostname, { all: true });
177
- const addresses = [...new Set(records.map((record) => record.address))];
178
- if (addresses.length === 0) {
179
- throw new Error("Unable to resolve host: ".concat(hostname));
180
- }
181
- return addresses;
194
+ __name(embeddedIpv4, "embeddedIpv4");
195
+ function hextetsToOctets(high, low) {
196
+ return [high >> 8, high & 255, low >> 8, low & 255];
182
197
  }
183
- __name(resolveHostAddresses, "resolveHostAddresses");
184
- function assertUrlAllowed(url) {
185
- const parsed = new URL(url);
186
- if (!ALLOWED_SCHEMES.has(parsed.protocol)) {
187
- throw new Error("Unsupported url scheme: ".concat(url));
188
- }
189
- if (isBlockedHostname(parsed.hostname)) {
190
- throw new Error("Blocked host: ".concat(parsed.hostname));
191
- }
192
- return parsed;
198
+ __name(hextetsToOctets, "hextetsToOctets");
199
+ function isNonGlobalIpv4(octets) {
200
+ return NON_GLOBAL_IPV4_CIDRS.some((cidr) => matchesIpv4Cidr(octets, cidr));
193
201
  }
194
- __name(assertUrlAllowed, "assertUrlAllowed");
195
- async function validateResolvedAddresses(hostname) {
196
- const addresses = await resolveHostAddresses(hostname);
197
- if (addresses.some(isBlockedAddress)) {
198
- throw new Error("Blocked host: ".concat(hostname));
202
+ __name(isNonGlobalIpv4, "isNonGlobalIpv4");
203
+ function isNonGlobalIpv6(hextets) {
204
+ const embedded = embeddedIpv4(hextets);
205
+ if (embedded) {
206
+ return isNonGlobalIpv4(embedded);
199
207
  }
208
+ return NON_GLOBAL_IPV6_CIDRS.some((cidr) => matchesIpv6Cidr(hextets, cidr));
200
209
  }
201
- __name(validateResolvedAddresses, "validateResolvedAddresses");
202
- function decodeHtmlEntities(text) {
203
- return text.replace(/&nbsp;/g, " ").replace(/&#39;/g, "'").replace(/&#x27;/g, "'").replace(/&quot;/g, '"').replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&amp;/g, "&");
204
- }
205
- __name(decodeHtmlEntities, "decodeHtmlEntities");
206
- function htmlToText(html) {
207
- const withoutCode = html.replace(/<script[\s\S]*?<\/script>/gi, " ").replace(/<style[\s\S]*?<\/style>/gi, " ").replace(/<!--[\s\S]*?-->/g, " ");
208
- const text = decodeHtmlEntities(withoutCode.replace(/<[^>]+>/g, "\n"));
209
- return text.split("\n").map((line) => line.trim()).filter((line) => line.split(/\s+/).filter(Boolean).length > 3).join("\n");
210
- }
211
- __name(htmlToText, "htmlToText");
212
- async function loadWebPage(url, options) {
213
- var _a;
214
- const timeoutMs = (_a = options == null ? void 0 : options.timeoutMs) != null ? _a : DEFAULT_TIMEOUT_MS;
215
- try {
216
- const parsed = assertUrlAllowed(url);
217
- await validateResolvedAddresses(normalizeHost(parsed.hostname));
218
- const response = await fetch(url, {
219
- redirect: "manual",
220
- signal: AbortSignal.timeout(timeoutMs)
221
- });
222
- if (response.status !== 200) {
223
- return failedToFetchMessage(url);
224
- }
225
- return htmlToText(await response.text());
226
- } catch (e) {
227
- return failedToFetchMessage(url);
210
+ __name(isNonGlobalIpv6, "isNonGlobalIpv6");
211
+ function isLinkLocalIpv4(octets) {
212
+ return matchesIpv4Cidr(octets, LINK_LOCAL_IPV4_CIDR);
213
+ }
214
+ __name(isLinkLocalIpv4, "isLinkLocalIpv4");
215
+ function isLinkLocalIpv6(hextets) {
216
+ const embedded = embeddedIpv4(hextets);
217
+ if (embedded) {
218
+ return isLinkLocalIpv4(embedded);
228
219
  }
220
+ return matchesIpv6Cidr(hextets, LINK_LOCAL_IPV6_CIDR);
229
221
  }
230
- __name(loadWebPage, "loadWebPage");
231
- const LOAD_WEB_PAGE = new FunctionTool({
232
- name: "load_web_page",
233
- description: "Fetches the content at the given URL and returns the readable text extracted from the page.",
234
- parameters: z.object({
235
- url: z.string().describe("The URL to fetch and extract text from.")
236
- }),
237
- execute: /* @__PURE__ */ __name(({ url }) => loadWebPage(url), "execute")
238
- });
222
+ __name(isLinkLocalIpv6, "isLinkLocalIpv6");
239
223
  export {
240
- LOAD_WEB_PAGE,
241
- loadWebPage
224
+ isHttpUrl,
225
+ isLinkLocalAddress,
226
+ isLocalhostHostname,
227
+ isNonGlobalAddress,
228
+ normalizeHost,
229
+ resolveHostAddresses
242
230
  };
@@ -5,7 +5,7 @@ const require = topLevelCreateRequire(import.meta.url);
5
5
  * Copyright 2025 Google LLC
6
6
  * SPDX-License-Identifier: Apache-2.0
7
7
  */
8
- const version = "2.0.0";
8
+ const version = "2.2.0";
9
9
  export {
10
10
  version
11
11
  };
@@ -17,7 +17,7 @@ import {
17
17
  prepareRetryConfig
18
18
  } from "./retry_config.js";
19
19
  import { createRequestInputEvent } from "./utils/hitl_utils.js";
20
- const BASE_NODE_SIGNATURE_SYMBOL = Symbol.for("google.adk.workflow.baseNode");
20
+ const BASE_NODE_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for("google.adk.workflow.baseNode");
21
21
  _a = BASE_NODE_SIGNATURE_SYMBOL;
22
22
  const _BaseNode = class _BaseNode {
23
23
  constructor(config) {
@@ -11,7 +11,7 @@ var _a;
11
11
  import { logger } from "../utils/logger.js";
12
12
  import { parseEdgeItems } from "./utils/graph_parser.js";
13
13
  import { validateGraph } from "./utils/graph_validation.js";
14
- const EDGE_SIGNATURE_SYMBOL = Symbol.for("google.adk.workflow.edge");
14
+ const EDGE_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for("google.adk.workflow.edge");
15
15
  const DEFAULT_ROUTE = "__DEFAULT__";
16
16
  _a = EDGE_SIGNATURE_SYMBOL;
17
17
  const _Edge = class _Edge {
@@ -16,7 +16,7 @@ import {
16
16
  } from "../../utils/simple_zod_to_json.js";
17
17
  import { NodeContext } from "../node_context.js";
18
18
  import { executeChildNode } from "../node_runner.js";
19
- const NODE_TOOL_SIGNATURE_SYMBOL = Symbol.for("google.adk.workflow.nodeTool");
19
+ const NODE_TOOL_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for("google.adk.workflow.nodeTool");
20
20
  const MAX_NODE_TOOL_DEPTH = 8;
21
21
  const _NodeTool = class _NodeTool extends (_b = BaseTool, _a = NODE_TOOL_SIGNATURE_SYMBOL, _b) {
22
22
  constructor(node, name, description) {
@@ -97,7 +97,7 @@ const _NodeTool = class _NodeTool extends (_b = BaseTool, _a = NODE_TOOL_SIGNATU
97
97
  // not the node name doubled.
98
98
  nodePath: "",
99
99
  runId,
100
- resumeInputs: collectResumeInputs(toolContext)
100
+ resumeInputs: toolContext.resumeInputs
101
101
  });
102
102
  const base = childIc.branch;
103
103
  const segment = `${this.name}@${runId}`;
@@ -116,15 +116,6 @@ function isNodeTool(value) {
116
116
  return typeof value === "object" && value !== null && NODE_TOOL_SIGNATURE_SYMBOL in value && value[NODE_TOOL_SIGNATURE_SYMBOL] === true;
117
117
  }
118
118
  __name(isNodeTool, "isNodeTool");
119
- function collectResumeInputs(toolContext) {
120
- var _a2;
121
- const payload = (_a2 = toolContext.toolConfirmation) == null ? void 0 : _a2.payload;
122
- if (payload && typeof payload === "object") {
123
- return payload;
124
- }
125
- return {};
126
- }
127
- __name(collectResumeInputs, "collectResumeInputs");
128
119
  export {
129
120
  NodeTool,
130
121
  isNodeTool
@@ -9,7 +9,7 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
9
9
  */
10
10
  var _a;
11
11
  import { randomUUID } from "../utils/env_aware_utils.js";
12
- const REQUEST_INPUT_SIGNATURE_SYMBOL = Symbol.for(
12
+ const REQUEST_INPUT_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for(
13
13
  "google.adk.workflow.requestInput"
14
14
  );
15
15
  _a = REQUEST_INPUT_SIGNATURE_SYMBOL;
@@ -50,7 +50,7 @@ async function appendNodeInputAsUserTurn(ctx, nodeInput) {
50
50
  branch: ctx.branch,
51
51
  content: toUserContent(nodeInput)
52
52
  });
53
- if (ctx.isolationScope) {
53
+ if (ctx.isolationScope !== void 0) {
54
54
  userEvent.isolationScope = ctx.isolationScope;
55
55
  }
56
56
  const sessionService = ctx.invocationContext.sessionService;
@@ -42,7 +42,7 @@ import {
42
42
  reconstructNodeRuns,
43
43
  resolvedInterruptResponses
44
44
  } from "./utils/rehydration_utils.js";
45
- const WORKFLOW_SIGNATURE_SYMBOL = Symbol.for("google.adk.workflow.workflow");
45
+ const WORKFLOW_SIGNATURE_SYMBOL = /* @__PURE__ */ Symbol.for("google.adk.workflow.workflow");
46
46
  const _LoopState = class _LoopState {
47
47
  constructor() {
48
48
  this.nodes = /* @__PURE__ */ new Map();
@@ -120,7 +120,13 @@ export declare function createTaskFailedEvent({ taskId, contextId, error, metada
120
120
  metadata?: Record<string, unknown>;
121
121
  }): TaskStatusUpdateEvent;
122
122
  /**
123
- * Creates an input required event.
123
+ * Creates an input-required status update.
124
+ *
125
+ * A2A has one `input-required` state, so every reason an agent can pause for a
126
+ * human produces the same status update: a long-running tool asking for input,
127
+ * and a client message that left an earlier request unanswered. What separates
128
+ * them travels in `parts` — a validation failure carries a text part marked
129
+ * `validation_error` — not in the shape of the event, so both go through here.
124
130
  */
125
131
  export declare function createTaskInputRequiredEvent({ taskId, contextId, parts, metadata, }: {
126
132
  taskId: string;
@@ -128,12 +134,3 @@ export declare function createTaskInputRequiredEvent({ taskId, contextId, parts,
128
134
  parts: A2APart[];
129
135
  metadata?: Record<string, unknown>;
130
136
  }): TaskStatusUpdateEvent;
131
- /**
132
- * Creates an error message for missing input for a function call.
133
- */
134
- export declare function createInputMissingErrorEvent({ taskId, contextId, parts, metadata, }: {
135
- parts: A2APart[];
136
- taskId: string;
137
- contextId: string;
138
- metadata?: Record<string, unknown>;
139
- }): TaskStatusUpdateEvent;
@@ -65,6 +65,11 @@ export interface RemoteA2AAgentConfig extends BaseAgentConfig {
65
65
  * Callbacks run after receiving a response chunk or event, before conversion.
66
66
  */
67
67
  afterRequestCallbacks?: AfterA2ARequestCallback[];
68
+ /**
69
+ * Optional request-level metadata to include in the A2A message send request.
70
+ * If omitted, defaults to `context.a2aMetadata` from the current invocation context.
71
+ */
72
+ metadata?: Record<string, unknown>;
68
73
  }
69
74
  /**
70
75
  * RemoteA2AAgent delegates execution to a remote agent using the A2A protocol.
@@ -4,6 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { Part as A2APart } from '@a2a-js/sdk';
7
+ import { Content } from '@google/genai';
7
8
  import { InvocationContext } from '../agents/invocation_context.js';
8
9
  import { Event as AdkEvent } from '../events/event.js';
9
10
  import { Session } from '../sessions/session.js';
@@ -38,6 +39,30 @@ export declare function isFunctionCallEvent(event: AdkEvent, callId: string): bo
38
39
  * none is found.
39
40
  */
40
41
  export declare function getFunctionResponseCallId(event: AdkEvent): string | undefined;
42
+ /**
43
+ * Ids of credential requests the remote peer raised itself. An id that ANY
44
+ * non-peer event also issued a call for is excluded: the peer authors its
45
+ * own session events under its own name (`toAdkEvent` forces
46
+ * `author = this.name`) and controls `functionCall.id` verbatim, so a bare
47
+ * id match -- without checking whether some OTHER event also issued a call
48
+ * for that same id -- would let a peer re-label this agent's own pending
49
+ * credential request as one the peer had asked for, by sending an
50
+ * unrelated reply that happens to carry a function_call part whose id
51
+ * collides with it.
52
+ */
53
+ export declare function peerRequestedCallIds(events: readonly AdkEvent[], peerName: string): ReadonlySet<string>;
54
+ /**
55
+ * Converts genai parts to A2A parts for forwarding to the remote peer,
56
+ * scrubbing credential material the peer did not itself request.
57
+ *
58
+ * NOT the single point both session-forwarding paths converge on:
59
+ * `toMissingRemoteSessionParts` calls `withoutCredentialParts` directly,
60
+ * since it has to interleave `presentAsUserMessage` between the scrub and
61
+ * `toA2AParts`. The shared guarantee lives one level down, in
62
+ * `withoutCredentialParts` -- a third path calling `toA2AParts` directly
63
+ * would still bypass it.
64
+ */
65
+ export declare function toForwardableA2AParts(content: Content | undefined, longRunningToolIds: string[] | undefined, peerRequestedIds: ReadonlySet<string>): A2APart[];
41
66
  /**
42
67
  * Returns A2A content parts for all events not yet seen by the remote agent,
43
68
  * along with the A2A context ID found in the most recent remote agent event.
@@ -7,6 +7,15 @@ import { AgentCard, AgentInterface, AgentSkill } from '@a2a-js/sdk';
7
7
  import { RunnableRoot } from '../workflow/run_node_as_invocation.js';
8
8
  /**
9
9
  * Resolves the AgentCard from the provided source.
10
+ *
11
+ * A source is either an {@link AgentCard}, an `http(s)://` URL to fetch it
12
+ * from, a `file://` URL, or a filesystem path. Any other URL scheme throws: a
13
+ * source that looks like a URL is never read off the local filesystem.
14
+ *
15
+ * The card host must not be, or resolve to, a link-local address, and a
16
+ * redirect from the card endpoint is refused rather than followed. Loopback and
17
+ * private addresses stay allowed: they are where a locally served or
18
+ * VPC-internal peer agent lives.
10
19
  */
11
20
  export declare function resolveAgentCard(agentCard: AgentCard | string): Promise<AgentCard>;
12
21
  /**
@@ -16,7 +16,7 @@ export type RunnerOrRunnerConfig = Runner | RunnerConfig | (() => Runner | Runne
16
16
  /**
17
17
  * Callback called before execution starts.
18
18
  */
19
- export type BeforeExecuteCallback = (reqCtx: RequestContext) => Promise<void>;
19
+ export type BeforeExecuteCallback = (reqCtx: RequestContext, a2aMetadata?: Record<string, unknown>) => Promise<void>;
20
20
  /**
21
21
  * Callback called after an ADK event is converted to an A2A event.
22
22
  */
@@ -11,6 +11,8 @@ import { BaseMemoryService } from '../memory/base_memory_service.js';
11
11
  import { Runner } from '../runner/runner.js';
12
12
  import { BaseSessionService } from '../sessions/base_session_service.js';
13
13
  import { RunnableRoot } from '../workflow/run_node_as_invocation.js';
14
+ import { AdkDefaultRequestHandler, getA2aRequestMetadata } from './request_metadata.js';
15
+ export { AdkDefaultRequestHandler, getA2aRequestMetadata };
14
16
  /**
15
17
  * A request authenticator for the A2A surface.
16
18
  *