@google/adk 2.0.0 → 2.1.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 (566) 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 +58 -6
  5. package/dist/cjs/a2a/agent_executor.js +10 -3
  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 +6 -5
  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 +5 -5
  21. package/dist/cjs/agents/processors/content_request_processor.js +4 -1
  22. package/dist/cjs/agents/processors/request_confirmation_llm_request_processor.js +19 -12
  23. package/dist/cjs/agents/processors/request_input_llm_request_processor.js +3 -7
  24. package/dist/cjs/agents/readonly_context.js +6 -0
  25. package/dist/cjs/agents/routed_agent.js +1 -1
  26. package/dist/cjs/agents/sequential_agent.js +1 -1
  27. package/dist/cjs/apps/app.js +1 -1
  28. package/dist/cjs/artifacts/file_artifact_service.js +1 -2
  29. package/dist/cjs/artifacts/scoped_artifact_service.js +9 -0
  30. package/dist/cjs/artifacts/session_artifact_service.js +19 -0
  31. package/dist/cjs/auth/auth_handler.js +44 -8
  32. package/dist/cjs/auth/oauth2/oauth2_credential_refresher.js +1 -1
  33. package/dist/cjs/auth/oauth2/oauth2_utils.js +17 -2
  34. package/dist/cjs/code_executors/base_code_executor.js +1 -1
  35. package/dist/cjs/code_executors/built_in_code_executor.js +1 -1
  36. package/dist/cjs/code_executors/code_execution_utils.js +2 -2
  37. package/dist/cjs/code_executors/container_code_executor.js +186 -0
  38. package/dist/cjs/code_executors/docker_container.js +282 -0
  39. package/dist/cjs/code_executors/unsafe_local_code_executor.js +11 -6
  40. package/dist/cjs/common.js +74 -45
  41. package/dist/cjs/context/agent_controlled_context_compactor.js +10 -5
  42. package/dist/cjs/context/anchored_context_compactor.js +41 -18
  43. package/dist/cjs/context/compaction_utils.js +15 -6
  44. package/dist/cjs/context/token_based_context_compactor.js +10 -2
  45. package/dist/cjs/context/trajectory_thought_pruning_compactor.js +17 -10
  46. package/dist/cjs/context/truncating_context_compactor.js +17 -5
  47. package/dist/cjs/errors/already_exists_error.js +50 -0
  48. package/dist/cjs/errors/input_validation_error.js +50 -0
  49. package/dist/cjs/errors/not_found_error.js +50 -0
  50. package/dist/cjs/errors/session_not_found_error.js +50 -0
  51. package/dist/cjs/errors/tool_execution_error.js +68 -0
  52. package/dist/cjs/events/event.js +1 -1
  53. package/dist/cjs/events/event_actions.js +7 -0
  54. package/dist/cjs/examples/base_example_provider.js +1 -1
  55. package/dist/cjs/index.js +47 -0
  56. package/dist/cjs/index_web.js +2 -0
  57. package/dist/cjs/integrations/agent_registry/agent_registry.js +3 -2
  58. package/dist/cjs/memory/rag_memory_transcript.js +136 -0
  59. package/dist/cjs/memory/vertex_ai_memory_bank_service.js +2 -2
  60. package/dist/cjs/memory/vertex_ai_rag_api.js +120 -0
  61. package/dist/cjs/memory/vertex_ai_rag_memory_service.js +228 -0
  62. package/dist/cjs/models/apigee_llm.js +1 -1
  63. package/dist/cjs/models/base_llm.js +1 -1
  64. package/dist/cjs/models/chrome_prompt_llm.js +304 -0
  65. package/dist/cjs/models/chrome_prompt_utils.js +229 -0
  66. package/dist/cjs/models/google_llm.js +9 -4
  67. package/dist/cjs/models/interactions_utils.js +2 -3
  68. package/dist/cjs/models/registry.js +2 -0
  69. package/dist/cjs/plugins/_reflect_retry_utils.js +142 -0
  70. package/dist/cjs/plugins/reflect_retry_model_plugin.js +274 -0
  71. package/dist/cjs/plugins/reflect_retry_tool_plugin.js +276 -0
  72. package/dist/cjs/runner/runner.js +29 -26
  73. package/dist/cjs/sessions/database_session_service.js +78 -43
  74. package/dist/cjs/sessions/db/operations.js +229 -22
  75. package/dist/cjs/sessions/db/schema.js +113 -159
  76. package/dist/cjs/sessions/registry.js +5 -1
  77. package/dist/cjs/sessions/vertex_ai_session_service.js +2 -2
  78. package/dist/cjs/telemetry/setup.js +1 -1
  79. package/dist/cjs/telemetry/tracing.js +11 -1
  80. package/dist/cjs/tools/agent_tool.js +4 -5
  81. package/dist/cjs/tools/base_tool.js +14 -4
  82. package/dist/cjs/tools/base_toolset.js +4 -4
  83. package/dist/cjs/tools/built_in_tool.js +75 -0
  84. package/dist/cjs/tools/enterprise_web_search_tool.js +3 -6
  85. package/dist/cjs/tools/forwarding_artifact_service.js +18 -13
  86. package/dist/cjs/tools/function_tool.js +6 -3
  87. package/dist/cjs/tools/google_maps_grounding_tool.js +3 -6
  88. package/dist/cjs/tools/google_search_tool.js +3 -6
  89. package/dist/cjs/tools/load_artifacts_tool.js +47 -23
  90. package/dist/cjs/tools/load_web_page.js +6 -172
  91. package/dist/cjs/tools/mcp/load_mcp_resource_tool.js +34 -5
  92. package/dist/cjs/tools/openapi_tool/auth/auth_helpers.js +11 -2
  93. package/dist/cjs/tools/openapi_tool/openapi_spec_parser/operation_parser.js +1 -1
  94. package/dist/cjs/tools/openapi_tool/rest_api_tool.js +16 -18
  95. package/dist/cjs/tools/preload_memory_tool.js +1 -1
  96. package/dist/cjs/tools/resume_inputs.js +27 -0
  97. package/dist/cjs/tools/retrieval/base_retrieval_tool.js +60 -0
  98. package/dist/cjs/tools/retrieval/files_retrieval.js +95 -0
  99. package/dist/cjs/tools/retrieval/llama_index_retrieval.js +57 -0
  100. package/dist/cjs/tools/url_context_tool.js +3 -6
  101. package/dist/cjs/tools/vertex_ai_search_tool.js +4 -8
  102. package/dist/cjs/tools/vertex_rag_retrieval_tool.js +3 -10
  103. package/dist/cjs/utils/crypto_shim.js +16 -0
  104. package/dist/cjs/utils/gemini_schema_util.js +0 -6
  105. package/dist/cjs/utils/logger.js +15 -50
  106. package/dist/cjs/utils/logger_browser.js +86 -0
  107. package/dist/cjs/utils/logger_node.js +119 -0
  108. package/dist/cjs/utils/redact_inline_data.js +46 -0
  109. package/dist/cjs/utils/redact_uri.js +15 -1
  110. package/dist/cjs/utils/schema.js +1 -1
  111. package/dist/cjs/utils/ssrf_guard.js +262 -0
  112. package/dist/cjs/version.js +1 -1
  113. package/dist/cjs/workflow/base_node.js +1 -1
  114. package/dist/cjs/workflow/graph.js +1 -1
  115. package/dist/cjs/workflow/nodes/node_tool.js +2 -11
  116. package/dist/cjs/workflow/request_input.js +1 -1
  117. package/dist/cjs/workflow/run_llm_agent_as_node.js +1 -1
  118. package/dist/cjs/workflow/workflow.js +1 -1
  119. package/dist/esm/a2a/a2a_event.js +0 -28
  120. package/dist/esm/a2a/a2a_remote_agent.js +10 -5
  121. package/dist/esm/a2a/a2a_remote_agent_utils.js +102 -2
  122. package/dist/esm/a2a/agent_card.js +63 -6
  123. package/dist/esm/a2a/agent_executor.js +10 -3
  124. package/dist/esm/a2a/agent_to_a2a.js +8 -2
  125. package/dist/esm/a2a/event_processor_utils.js +1 -2
  126. package/dist/esm/a2a/executor_context.js +4 -2
  127. package/dist/esm/a2a/index.js +7 -1
  128. package/dist/esm/a2a/request_metadata.js +68 -0
  129. package/dist/esm/agents/base_agent.js +9 -8
  130. package/dist/esm/agents/context.js +7 -0
  131. package/dist/esm/agents/functions.js +152 -48
  132. package/dist/esm/agents/invocation_context.js +1 -0
  133. package/dist/esm/agents/llm_agent.js +6 -5
  134. package/dist/esm/agents/loop_agent.js +1 -1
  135. package/dist/esm/agents/parallel_agent.js +1 -1
  136. package/dist/esm/agents/processors/agent_transfer_llm_request_processor.js +26 -5
  137. package/dist/esm/agents/processors/code_execution_request_processor.js +2 -2
  138. package/dist/esm/agents/processors/content_processor_utils.js +5 -5
  139. package/dist/esm/agents/processors/content_request_processor.js +4 -1
  140. package/dist/esm/agents/processors/request_confirmation_llm_request_processor.js +19 -12
  141. package/dist/esm/agents/processors/request_input_llm_request_processor.js +3 -7
  142. package/dist/esm/agents/readonly_context.js +6 -0
  143. package/dist/esm/agents/routed_agent.js +1 -1
  144. package/dist/esm/agents/sequential_agent.js +1 -1
  145. package/dist/esm/apps/app.js +1 -1
  146. package/dist/esm/artifacts/file_artifact_service.js +1 -2
  147. package/dist/esm/artifacts/scoped_artifact_service.js +9 -0
  148. package/dist/esm/artifacts/session_artifact_service.js +12 -0
  149. package/dist/esm/auth/auth_handler.js +47 -8
  150. package/dist/esm/auth/oauth2/oauth2_credential_refresher.js +1 -1
  151. package/dist/esm/auth/oauth2/oauth2_utils.js +15 -2
  152. package/dist/esm/code_executors/base_code_executor.js +1 -1
  153. package/dist/esm/code_executors/built_in_code_executor.js +1 -1
  154. package/dist/esm/code_executors/code_execution_utils.js +2 -2
  155. package/dist/esm/code_executors/container_code_executor.js +155 -0
  156. package/dist/esm/code_executors/docker_container.js +265 -0
  157. package/dist/esm/code_executors/unsafe_local_code_executor.js +11 -6
  158. package/dist/esm/common.js +73 -38
  159. package/dist/esm/context/agent_controlled_context_compactor.js +10 -5
  160. package/dist/esm/context/anchored_context_compactor.js +45 -19
  161. package/dist/esm/context/compaction_utils.js +13 -5
  162. package/dist/esm/context/token_based_context_compactor.js +10 -2
  163. package/dist/esm/context/trajectory_thought_pruning_compactor.js +17 -10
  164. package/dist/esm/context/truncating_context_compactor.js +17 -5
  165. package/dist/esm/errors/already_exists_error.js +23 -0
  166. package/dist/esm/errors/input_validation_error.js +23 -0
  167. package/dist/{web/auth/refresher/base_credential_refresher.js → esm/errors/not_found_error.js} +9 -6
  168. package/dist/esm/errors/session_not_found_error.js +23 -0
  169. package/dist/esm/errors/tool_execution_error.js +40 -0
  170. package/dist/esm/events/event.js +1 -1
  171. package/dist/esm/events/event_actions.js +6 -0
  172. package/dist/esm/examples/base_example_provider.js +1 -1
  173. package/dist/esm/index.js +37 -0
  174. package/dist/esm/index_web.js +2 -0
  175. package/dist/esm/integrations/agent_registry/agent_registry.js +3 -2
  176. package/dist/esm/memory/rag_memory_transcript.js +106 -0
  177. package/dist/esm/memory/vertex_ai_memory_bank_service.js +2 -2
  178. package/dist/esm/memory/vertex_ai_rag_api.js +93 -0
  179. package/dist/esm/memory/vertex_ai_rag_memory_service.js +208 -0
  180. package/dist/esm/models/apigee_llm.js +1 -1
  181. package/dist/esm/models/base_llm.js +1 -1
  182. package/dist/esm/models/chrome_prompt_llm.js +285 -0
  183. package/dist/esm/models/chrome_prompt_utils.js +192 -0
  184. package/dist/esm/models/google_llm.js +9 -4
  185. package/dist/esm/models/interactions_utils.js +2 -3
  186. package/dist/esm/models/registry.js +2 -0
  187. package/dist/esm/plugins/_reflect_retry_utils.js +111 -0
  188. package/dist/esm/plugins/reflect_retry_model_plugin.js +250 -0
  189. package/dist/esm/plugins/reflect_retry_tool_plugin.js +254 -0
  190. package/dist/esm/runner/runner.js +35 -27
  191. package/dist/esm/sessions/database_session_service.js +58 -25
  192. package/dist/esm/sessions/db/operations.js +229 -22
  193. package/dist/esm/sessions/db/schema.js +111 -160
  194. package/dist/esm/sessions/registry.js +5 -1
  195. package/dist/esm/sessions/vertex_ai_session_service.js +1 -1
  196. package/dist/esm/telemetry/setup.js +1 -1
  197. package/dist/esm/telemetry/tracing.js +11 -1
  198. package/dist/esm/tools/agent_tool.js +4 -5
  199. package/dist/esm/tools/base_tool.js +11 -3
  200. package/dist/esm/tools/base_toolset.js +4 -4
  201. package/dist/esm/tools/built_in_tool.js +51 -0
  202. package/dist/esm/tools/enterprise_web_search_tool.js +3 -6
  203. package/dist/esm/tools/forwarding_artifact_service.js +18 -13
  204. package/dist/esm/tools/function_tool.js +6 -3
  205. package/dist/esm/tools/google_maps_grounding_tool.js +3 -6
  206. package/dist/esm/tools/google_search_tool.js +3 -6
  207. package/dist/esm/tools/load_artifacts_tool.js +48 -24
  208. package/dist/esm/tools/load_web_page.js +10 -170
  209. package/dist/esm/tools/mcp/load_mcp_resource_tool.js +34 -5
  210. package/dist/esm/tools/openapi_tool/auth/auth_helpers.js +13 -2
  211. package/dist/esm/tools/openapi_tool/openapi_spec_parser/operation_parser.js +1 -1
  212. package/dist/esm/tools/openapi_tool/rest_api_tool.js +16 -18
  213. package/dist/esm/tools/preload_memory_tool.js +1 -1
  214. package/dist/esm/tools/retrieval/base_retrieval_tool.js +33 -0
  215. package/dist/esm/tools/retrieval/files_retrieval.js +81 -0
  216. package/dist/esm/tools/retrieval/llama_index_retrieval.js +30 -0
  217. package/dist/esm/tools/url_context_tool.js +3 -6
  218. package/dist/esm/tools/vertex_ai_search_tool.js +4 -8
  219. package/dist/esm/tools/vertex_rag_retrieval_tool.js +3 -10
  220. package/dist/esm/utils/crypto_shim.js +14 -0
  221. package/dist/esm/utils/gemini_schema_util.js +0 -6
  222. package/dist/esm/utils/logger.js +14 -40
  223. package/dist/esm/utils/logger_browser.js +58 -0
  224. package/dist/esm/utils/logger_node.js +81 -0
  225. package/dist/esm/utils/redact_inline_data.js +19 -0
  226. package/dist/esm/utils/redact_uri.js +15 -1
  227. package/dist/esm/utils/schema.js +1 -1
  228. package/dist/{web/tools/load_web_page.js → esm/utils/ssrf_guard.js} +95 -107
  229. package/dist/esm/version.js +1 -1
  230. package/dist/esm/workflow/base_node.js +1 -1
  231. package/dist/esm/workflow/graph.js +1 -1
  232. package/dist/esm/workflow/nodes/node_tool.js +2 -11
  233. package/dist/esm/workflow/request_input.js +1 -1
  234. package/dist/esm/workflow/run_llm_agent_as_node.js +1 -1
  235. package/dist/esm/workflow/workflow.js +1 -1
  236. package/dist/types/a2a/a2a_event.d.ts +7 -10
  237. package/dist/types/a2a/a2a_remote_agent.d.ts +5 -0
  238. package/dist/types/a2a/a2a_remote_agent_utils.d.ts +25 -0
  239. package/dist/types/a2a/agent_card.d.ts +9 -0
  240. package/dist/types/a2a/agent_executor.d.ts +1 -1
  241. package/dist/types/a2a/agent_to_a2a.d.ts +2 -0
  242. package/dist/types/a2a/auth.d.ts +5 -1
  243. package/dist/types/a2a/executor_context.d.ts +7 -1
  244. package/dist/types/a2a/index.d.ts +1 -1
  245. package/dist/types/a2a/request_metadata.d.ts +22 -0
  246. package/dist/types/agents/base_agent.d.ts +19 -16
  247. package/dist/types/agents/context.d.ts +8 -0
  248. package/dist/types/agents/functions.d.ts +72 -6
  249. package/dist/types/agents/invocation_context.d.ts +11 -3
  250. package/dist/types/agents/llm_agent.d.ts +9 -7
  251. package/dist/types/agents/processors/agent_transfer_llm_request_processor.d.ts +16 -1
  252. package/dist/types/agents/readonly_context.d.ts +4 -0
  253. package/dist/types/agents/run_config.d.ts +21 -8
  254. package/dist/types/artifacts/scoped_artifact_service.d.ts +13 -0
  255. package/dist/types/artifacts/session_artifact_service.d.ts +8 -1
  256. package/dist/types/auth/auth_credential.d.ts +13 -8
  257. package/dist/types/auth/auth_handler.d.ts +12 -1
  258. package/dist/types/auth/oauth2/oauth2_credential_refresher.d.ts +1 -1
  259. package/dist/types/auth/oauth2/oauth2_utils.d.ts +9 -0
  260. package/dist/types/auth/refresher/base_credential_refresher.d.ts +1 -1
  261. package/dist/types/code_executors/code_execution_utils.d.ts +1 -1
  262. package/dist/types/code_executors/container_code_executor.d.ts +89 -0
  263. package/dist/types/code_executors/docker_container.d.ts +79 -0
  264. package/dist/types/common.d.ts +22 -20
  265. package/dist/types/context/compaction_utils.d.ts +9 -1
  266. package/dist/types/errors/already_exists_error.d.ts +14 -0
  267. package/dist/types/errors/input_validation_error.d.ts +14 -0
  268. package/dist/types/errors/not_found_error.d.ts +14 -0
  269. package/dist/types/errors/session_not_found_error.d.ts +14 -0
  270. package/dist/types/errors/tool_execution_error.d.ts +36 -0
  271. package/dist/types/events/event_actions.d.ts +13 -0
  272. package/dist/types/index.d.ts +22 -1
  273. package/dist/types/memory/rag_memory_transcript.d.ts +55 -0
  274. package/dist/types/memory/vertex_ai_rag_api.d.ts +89 -0
  275. package/dist/types/memory/vertex_ai_rag_memory_service.d.ts +68 -0
  276. package/dist/types/models/chrome_prompt_llm.d.ts +210 -0
  277. package/dist/types/models/chrome_prompt_utils.d.ts +68 -0
  278. package/dist/types/models/google_llm.d.ts +8 -3
  279. package/dist/types/models/registry.d.ts +3 -2
  280. package/dist/types/plugins/_reflect_retry_utils.d.ts +72 -0
  281. package/dist/types/plugins/base_plugin.d.ts +12 -10
  282. package/dist/types/plugins/logging_plugin.d.ts +3 -2
  283. package/dist/types/plugins/reflect_retry_model_plugin.d.ts +132 -0
  284. package/dist/types/plugins/reflect_retry_tool_plugin.d.ts +187 -0
  285. package/dist/types/runner/runner.d.ts +7 -8
  286. package/dist/types/sessions/database_session_service.d.ts +1 -1
  287. package/dist/types/sessions/db/operations.d.ts +13 -1
  288. package/dist/types/sessions/db/schema.d.ts +23 -9
  289. package/dist/types/tools/base_tool.d.ts +11 -0
  290. package/dist/types/tools/base_toolset.d.ts +3 -4
  291. package/dist/types/tools/built_in_tool.d.ts +41 -0
  292. package/dist/types/tools/enterprise_web_search_tool.d.ts +4 -4
  293. package/dist/types/tools/forwarding_artifact_service.d.ts +23 -10
  294. package/dist/types/tools/function_tool.d.ts +42 -9
  295. package/dist/types/tools/google_maps_grounding_tool.d.ts +4 -4
  296. package/dist/types/tools/google_search_tool.d.ts +4 -4
  297. package/dist/types/tools/long_running_tool.d.ts +1 -1
  298. package/dist/types/tools/mcp/mcp_toolset.d.ts +11 -10
  299. package/dist/types/tools/openapi_tool/auth/auth_helpers.d.ts +5 -0
  300. package/dist/types/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.d.ts +0 -1
  301. package/dist/types/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.d.ts +0 -1
  302. package/dist/types/tools/preload_memory_tool.d.ts +1 -1
  303. package/dist/types/tools/resume_inputs.d.ts +25 -0
  304. package/dist/types/tools/retrieval/base_retrieval_tool.d.ts +21 -0
  305. package/dist/types/tools/retrieval/files_retrieval.d.ts +50 -0
  306. package/dist/types/tools/retrieval/llama_index_retrieval.d.ts +62 -0
  307. package/dist/types/tools/url_context_tool.d.ts +4 -4
  308. package/dist/types/tools/vertex_ai_search_tool.d.ts +4 -4
  309. package/dist/types/tools/vertex_rag_retrieval_tool.d.ts +13 -12
  310. package/dist/types/utils/crypto_shim.d.ts +16 -0
  311. package/dist/types/utils/gemini_schema_util.d.ts +5 -7
  312. package/dist/types/utils/logger.d.ts +23 -1
  313. package/dist/types/utils/logger_browser.d.ts +28 -0
  314. package/dist/types/utils/logger_node.d.ts +20 -0
  315. package/dist/types/utils/output_schema_utils.d.ts +3 -3
  316. package/dist/types/utils/redact_inline_data.d.ts +16 -0
  317. package/dist/types/utils/redact_uri.d.ts +12 -8
  318. package/dist/types/utils/ssrf_guard.d.ts +32 -0
  319. package/dist/types/version.d.ts +1 -1
  320. package/dist/web/index_web.js +304 -3
  321. package/dist/web/index_web.js.map +7 -0
  322. package/package.json +17 -14
  323. package/dist/web/a2a/a2a_event.js +0 -290
  324. package/dist/web/a2a/a2a_remote_agent.js +0 -200
  325. package/dist/web/a2a/a2a_remote_agent_run_processor.js +0 -189
  326. package/dist/web/a2a/a2a_remote_agent_utils.js +0 -141
  327. package/dist/web/a2a/agent_card.js +0 -373
  328. package/dist/web/a2a/agent_executor.js +0 -246
  329. package/dist/web/a2a/agent_to_a2a.js +0 -126
  330. package/dist/web/a2a/auth.js +0 -41
  331. package/dist/web/a2a/event_converter_utils.js +0 -242
  332. package/dist/web/a2a/event_processor_utils.js +0 -209
  333. package/dist/web/a2a/executor_context.js +0 -28
  334. package/dist/web/a2a/index.js +0 -20
  335. package/dist/web/a2a/metadata_converter_utils.js +0 -115
  336. package/dist/web/a2a/part_converter_utils.js +0 -201
  337. package/dist/web/agents/active_streaming_tool.js +0 -25
  338. package/dist/web/agents/base_agent.js +0 -462
  339. package/dist/web/agents/context.js +0 -146
  340. package/dist/web/agents/framework_function_calls.js +0 -34
  341. package/dist/web/agents/functions.js +0 -462
  342. package/dist/web/agents/instructions.js +0 -188
  343. package/dist/web/agents/invocation_context.js +0 -126
  344. package/dist/web/agents/live_request_queue.js +0 -151
  345. package/dist/web/agents/llm_agent.js +0 -1514
  346. package/dist/web/agents/loop_agent.js +0 -131
  347. package/dist/web/agents/parallel_agent.js +0 -122
  348. package/dist/web/agents/processors/agent_transfer_llm_request_processor.js +0 -113
  349. package/dist/web/agents/processors/base_llm_processor.js +0 -21
  350. package/dist/web/agents/processors/basic_llm_request_processor.js +0 -84
  351. package/dist/web/agents/processors/code_execution_request_processor.js +0 -381
  352. package/dist/web/agents/processors/content_processor_utils.js +0 -432
  353. package/dist/web/agents/processors/content_request_processor.js +0 -73
  354. package/dist/web/agents/processors/context_compactor_request_processor.js +0 -78
  355. package/dist/web/agents/processors/identity_llm_request_processor.js +0 -59
  356. package/dist/web/agents/processors/instructions_llm_request_processor.js +0 -85
  357. package/dist/web/agents/processors/interactions_request_processor.js +0 -56
  358. package/dist/web/agents/processors/request_confirmation_llm_request_processor.js +0 -393
  359. package/dist/web/agents/processors/request_input_llm_request_processor.js +0 -228
  360. package/dist/web/agents/processors/tool_filter_request_processor.js +0 -72
  361. package/dist/web/agents/readonly_context.js +0 -60
  362. package/dist/web/agents/routed_agent.js +0 -161
  363. package/dist/web/agents/run_config.js +0 -74
  364. package/dist/web/agents/sequential_agent.js +0 -141
  365. package/dist/web/agents/transcription_entry.js +0 -7
  366. package/dist/web/agents/user_input_request.js +0 -135
  367. package/dist/web/apps/app.js +0 -52
  368. package/dist/web/apps/resumability_config.js +0 -33
  369. package/dist/web/artifacts/base_artifact_service.js +0 -7
  370. package/dist/web/artifacts/file_artifact_service.js +0 -568
  371. package/dist/web/artifacts/gcs_artifact_service.js +0 -298
  372. package/dist/web/artifacts/in_memory_artifact_service.js +0 -172
  373. package/dist/web/artifacts/registry.js +0 -36
  374. package/dist/web/artifacts/scoped_artifact_service.js +0 -89
  375. package/dist/web/auth/auth_credential.js +0 -18
  376. package/dist/web/auth/auth_handler.js +0 -151
  377. package/dist/web/auth/auth_preprocessor.js +0 -184
  378. package/dist/web/auth/auth_provider_registry.js +0 -37
  379. package/dist/web/auth/auth_schemes.js +0 -36
  380. package/dist/web/auth/auth_tool.js +0 -7
  381. package/dist/web/auth/base_auth_provider.js +0 -7
  382. package/dist/web/auth/credential_response_binding.js +0 -91
  383. package/dist/web/auth/credential_service/base_credential_service.js +0 -7
  384. package/dist/web/auth/credential_service/in_memory_credential_service.js +0 -50
  385. package/dist/web/auth/credential_service/session_state_credential_service.js +0 -27
  386. package/dist/web/auth/exchanger/base_credential_exchanger.js +0 -16
  387. package/dist/web/auth/exchanger/credential_exchanger_registry.js +0 -35
  388. package/dist/web/auth/oauth2/oauth2_credential_exchanger.js +0 -194
  389. package/dist/web/auth/oauth2/oauth2_credential_refresher.js +0 -105
  390. package/dist/web/auth/oauth2/oauth2_discovery.js +0 -196
  391. package/dist/web/auth/oauth2/oauth2_utils.js +0 -105
  392. package/dist/web/auth/refresher/credential_refresher_registry.js +0 -44
  393. package/dist/web/code_executors/agent_engine_sandbox_code_executor.js +0 -284
  394. package/dist/web/code_executors/base_code_executor.js +0 -68
  395. package/dist/web/code_executors/built_in_code_executor.js +0 -50
  396. package/dist/web/code_executors/code_execution_utils.js +0 -131
  397. package/dist/web/code_executors/code_executor_context.js +0 -174
  398. package/dist/web/code_executors/unsafe_local_code_executor.js +0 -221
  399. package/dist/web/common.js +0 -452
  400. package/dist/web/context/agent_controlled_context_compactor.js +0 -76
  401. package/dist/web/context/anchored_context_compactor.js +0 -120
  402. package/dist/web/context/base_context_compactor.js +0 -7
  403. package/dist/web/context/compaction_utils.js +0 -42
  404. package/dist/web/context/summarizers/base_summarizer.js +0 -7
  405. package/dist/web/context/summarizers/llm_summarizer.js +0 -91
  406. package/dist/web/context/token_based_context_compactor.js +0 -118
  407. package/dist/web/context/trajectory_thought_pruning_compactor.js +0 -47
  408. package/dist/web/context/truncating_context_compactor.js +0 -34
  409. package/dist/web/environment/base_environment.js +0 -71
  410. package/dist/web/environment/local_environment.js +0 -165
  411. package/dist/web/events/compacted_event.js +0 -51
  412. package/dist/web/events/event.js +0 -208
  413. package/dist/web/events/event_actions.js +0 -74
  414. package/dist/web/events/structured_events.js +0 -79
  415. package/dist/web/examples/base_example_provider.js +0 -32
  416. package/dist/web/examples/example.js +0 -7
  417. package/dist/web/examples/example_util.js +0 -83
  418. package/dist/web/features/feature_registry.js +0 -115
  419. package/dist/web/index.js +0 -57
  420. package/dist/web/integrations/agent_registry/agent_registry.js +0 -337
  421. package/dist/web/integrations/agent_registry/agent_registry_mcp_toolset.js +0 -120
  422. package/dist/web/integrations/agent_registry/helpers.js +0 -32
  423. package/dist/web/integrations/agent_registry/types.js +0 -20
  424. package/dist/web/memory/base_memory_service.js +0 -7
  425. package/dist/web/memory/in_memory_memory_service.js +0 -89
  426. package/dist/web/memory/memory_entry.js +0 -7
  427. package/dist/web/memory/vertex_ai_memory_bank_service.js +0 -496
  428. package/dist/web/models/apigee_llm.js +0 -227
  429. package/dist/web/models/base_llm.js +0 -78
  430. package/dist/web/models/base_llm_connection.js +0 -7
  431. package/dist/web/models/gemini_llm_connection.js +0 -183
  432. package/dist/web/models/google_llm.js +0 -396
  433. package/dist/web/models/interactions_utils.js +0 -745
  434. package/dist/web/models/llm_request.js +0 -57
  435. package/dist/web/models/llm_response.js +0 -48
  436. package/dist/web/models/registry.js +0 -100
  437. package/dist/web/models/routed_llm.js +0 -112
  438. package/dist/web/plugins/base_plugin.js +0 -305
  439. package/dist/web/plugins/global_instruction_plugin.js +0 -71
  440. package/dist/web/plugins/logging_plugin.js +0 -241
  441. package/dist/web/plugins/plugin_manager.js +0 -318
  442. package/dist/web/plugins/security_plugin.js +0 -148
  443. package/dist/web/runner/in_memory_runner.js +0 -50
  444. package/dist/web/runner/runner.js +0 -747
  445. package/dist/web/sessions/base_session_service.js +0 -123
  446. package/dist/web/sessions/database_session_service.js +0 -440
  447. package/dist/web/sessions/db/operations.js +0 -124
  448. package/dist/web/sessions/db/schema.js +0 -216
  449. package/dist/web/sessions/in_memory_session_service.js +0 -251
  450. package/dist/web/sessions/registry.js +0 -38
  451. package/dist/web/sessions/session.js +0 -23
  452. package/dist/web/sessions/state.js +0 -159
  453. package/dist/web/sessions/state_write_order.js +0 -74
  454. package/dist/web/sessions/vertex_ai_session_service.js +0 -546
  455. package/dist/web/skills/gcp_skill_registry.js +0 -80
  456. package/dist/web/skills/loader.js +0 -372
  457. package/dist/web/skills/prompt.js +0 -34
  458. package/dist/web/skills/skill.js +0 -67
  459. package/dist/web/skills/skill_registry.js +0 -7
  460. package/dist/web/telemetry/google_cloud.js +0 -99
  461. package/dist/web/telemetry/setup.js +0 -89
  462. package/dist/web/telemetry/tracing.js +0 -304
  463. package/dist/web/tools/agent_tool.js +0 -150
  464. package/dist/web/tools/base_tool.js +0 -116
  465. package/dist/web/tools/base_toolset.js +0 -62
  466. package/dist/web/tools/consolidate_context_tool.js +0 -55
  467. package/dist/web/tools/enterprise_web_search_tool.js +0 -60
  468. package/dist/web/tools/example_tool.js +0 -46
  469. package/dist/web/tools/exit_loop_tool.js +0 -47
  470. package/dist/web/tools/finish_task_tool.js +0 -92
  471. package/dist/web/tools/forwarding_artifact_service.js +0 -51
  472. package/dist/web/tools/function_tool.js +0 -151
  473. package/dist/web/tools/get_user_choice_tool.js +0 -27
  474. package/dist/web/tools/google_maps_grounding_tool.js +0 -59
  475. package/dist/web/tools/google_search_tool.js +0 -55
  476. package/dist/web/tools/load_artifacts_tool.js +0 -159
  477. package/dist/web/tools/load_memory_tool.js +0 -83
  478. package/dist/web/tools/long_running_tool.js +0 -58
  479. package/dist/web/tools/mcp/index.js +0 -11
  480. package/dist/web/tools/mcp/load_mcp_resource_tool.js +0 -111
  481. package/dist/web/tools/mcp/mcp_session_manager.js +0 -114
  482. package/dist/web/tools/mcp/mcp_tool.js +0 -47
  483. package/dist/web/tools/mcp/mcp_toolset.js +0 -144
  484. package/dist/web/tools/openapi_tool/auth/auth_helpers.js +0 -53
  485. package/dist/web/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +0 -62
  486. package/dist/web/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +0 -113
  487. package/dist/web/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +0 -242
  488. package/dist/web/tools/openapi_tool/openapi_spec_parser/operation_parser.js +0 -200
  489. package/dist/web/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +0 -98
  490. package/dist/web/tools/openapi_tool/openapi_toolset.js +0 -99
  491. package/dist/web/tools/openapi_tool/rest_api_tool.js +0 -247
  492. package/dist/web/tools/preload_memory_tool.js +0 -81
  493. package/dist/web/tools/request_input_tool.js +0 -29
  494. package/dist/web/tools/skill/list_skills_tool.js +0 -52
  495. package/dist/web/tools/skill/load_skill_resource_tool.js +0 -192
  496. package/dist/web/tools/skill/load_skill_tool.js +0 -96
  497. package/dist/web/tools/skill/run_skill_inline_script_tool.js +0 -191
  498. package/dist/web/tools/skill/run_skill_script_tool.js +0 -227
  499. package/dist/web/tools/skill/search_skills_tool.js +0 -84
  500. package/dist/web/tools/skill/skill_toolset.js +0 -185
  501. package/dist/web/tools/tool_confirmation.js +0 -43
  502. package/dist/web/tools/url_context_tool.js +0 -48
  503. package/dist/web/tools/vertex_ai_search_tool.js +0 -107
  504. package/dist/web/tools/vertex_rag_retrieval_tool.js +0 -40
  505. package/dist/web/utils/async_hooks_shim.js +0 -28
  506. package/dist/web/utils/async_queue.js +0 -88
  507. package/dist/web/utils/branch_trie.js +0 -16
  508. package/dist/web/utils/case_utils.js +0 -28
  509. package/dist/web/utils/client_labels.js +0 -70
  510. package/dist/web/utils/crypto_shim.js +0 -18
  511. package/dist/web/utils/deprecated.js +0 -40
  512. package/dist/web/utils/env_aware_utils.js +0 -115
  513. package/dist/web/utils/error_utils.js +0 -101
  514. package/dist/web/utils/experimental.js +0 -54
  515. package/dist/web/utils/failover_utils.js +0 -100
  516. package/dist/web/utils/file_extension_utils.js +0 -55
  517. package/dist/web/utils/file_utils.js +0 -108
  518. package/dist/web/utils/gemini_schema_util.js +0 -177
  519. package/dist/web/utils/genai_schema_to_json.js +0 -80
  520. package/dist/web/utils/live_connection_utils.js +0 -257
  521. package/dist/web/utils/logger.js +0 -140
  522. package/dist/web/utils/model_name.js +0 -75
  523. package/dist/web/utils/object_notation_utils.js +0 -54
  524. package/dist/web/utils/optional_peer.js +0 -38
  525. package/dist/web/utils/output_schema_utils.js +0 -18
  526. package/dist/web/utils/partial_copy.js +0 -26
  527. package/dist/web/utils/redact_uri.js +0 -39
  528. package/dist/web/utils/schema.js +0 -167
  529. package/dist/web/utils/simple_zod_to_json.js +0 -134
  530. package/dist/web/utils/streaming_utils.js +0 -438
  531. package/dist/web/utils/task.js +0 -38
  532. package/dist/web/utils/variant_utils.js +0 -23
  533. package/dist/web/utils/vertex_ai_utils.js +0 -27
  534. package/dist/web/version.js +0 -11
  535. package/dist/web/workflow/base_node.js +0 -215
  536. package/dist/web/workflow/branch_path.js +0 -77
  537. package/dist/web/workflow/dynamic_node_scheduler.js +0 -202
  538. package/dist/web/workflow/errors.js +0 -140
  539. package/dist/web/workflow/graph.js +0 -127
  540. package/dist/web/workflow/index.js +0 -80
  541. package/dist/web/workflow/node.js +0 -87
  542. package/dist/web/workflow/node_builders.js +0 -40
  543. package/dist/web/workflow/node_context.js +0 -236
  544. package/dist/web/workflow/node_error_event.js +0 -86
  545. package/dist/web/workflow/node_runner.js +0 -481
  546. package/dist/web/workflow/node_state.js +0 -43
  547. package/dist/web/workflow/node_status.js +0 -20
  548. package/dist/web/workflow/nodes/function_node.js +0 -221
  549. package/dist/web/workflow/nodes/join_node.js +0 -47
  550. package/dist/web/workflow/nodes/node_tool.js +0 -131
  551. package/dist/web/workflow/nodes/parallel_worker.js +0 -120
  552. package/dist/web/workflow/nodes/tool_node.js +0 -126
  553. package/dist/web/workflow/request_input.js +0 -36
  554. package/dist/web/workflow/retry_config.js +0 -43
  555. package/dist/web/workflow/run_llm_agent_as_node.js +0 -266
  556. package/dist/web/workflow/run_node_as_invocation.js +0 -170
  557. package/dist/web/workflow/schedule_dynamic_node.js +0 -26
  558. package/dist/web/workflow/trigger.js +0 -7
  559. package/dist/web/workflow/utils/graph_parser.js +0 -188
  560. package/dist/web/workflow/utils/graph_validation.js +0 -189
  561. package/dist/web/workflow/utils/hitl_utils.js +0 -239
  562. package/dist/web/workflow/utils/rehydration_utils.js +0 -342
  563. package/dist/web/workflow/utils/retry_utils.js +0 -82
  564. package/dist/web/workflow/utils/workflow_graph_utils.js +0 -115
  565. package/dist/web/workflow/workflow.js +0 -529
  566. /package/dist/{web/artifacts/session_artifact_service.js → esm/tools/resume_inputs.js} +0 -0
@@ -1,462 +0,0 @@
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 2025 Google LLC
8
- * SPDX-License-Identifier: Apache-2.0
9
- */
10
- import { createUserContent } from "@google/genai";
11
- import { isEmpty } from "lodash-es";
12
- import {
13
- createEvent,
14
- generateClientFunctionCallId,
15
- getFunctionCalls,
16
- getFunctionResponses
17
- } from "../events/event.js";
18
- import { mergeEventActions } from "../events/event_actions.js";
19
- import { logger } from "../utils/logger.js";
20
- import { Context } from "./context.js";
21
- import {
22
- REQUEST_CONFIRMATION_FUNCTION_CALL_NAME,
23
- REQUEST_CREDENTIAL_FUNCTION_CALL_NAME
24
- } from "./framework_function_calls.js";
25
- import {
26
- traceMergedToolCalls,
27
- tracer,
28
- traceToolCall
29
- } from "../telemetry/tracing.js";
30
- function toolEventAuthor(invocationContext) {
31
- var _a, _b;
32
- return (_b = (_a = invocationContext.agent) == null ? void 0 : _a.name) != null ? _b : "";
33
- }
34
- __name(toolEventAuthor, "toolEventAuthor");
35
- import {
36
- AF_FUNCTION_CALL_ID_PREFIX,
37
- generateClientFunctionCallId as generateClientFunctionCallId2,
38
- populateClientFunctionCallId
39
- } from "../events/event.js";
40
- import {
41
- REQUEST_CONFIRMATION_FUNCTION_CALL_NAME as REQUEST_CONFIRMATION_FUNCTION_CALL_NAME2,
42
- REQUEST_CREDENTIAL_FUNCTION_CALL_NAME as REQUEST_CREDENTIAL_FUNCTION_CALL_NAME2,
43
- REQUEST_INPUT_FUNCTION_CALL_NAME,
44
- reservedFunctionCallName
45
- } from "./framework_function_calls.js";
46
- const functionsExportedForTestingOnly = {
47
- handleFunctionCallList,
48
- generateAuthEvent,
49
- generateRequestConfirmationEvent
50
- };
51
- function getLongRunningFunctionCalls(functionCalls, toolsDict) {
52
- const longRunningToolIds = /* @__PURE__ */ new Set();
53
- for (const functionCall of functionCalls) {
54
- if (functionCall.name && functionCall.name in toolsDict && toolsDict[functionCall.name].isLongRunning && functionCall.id) {
55
- longRunningToolIds.add(functionCall.id);
56
- }
57
- }
58
- return longRunningToolIds;
59
- }
60
- __name(getLongRunningFunctionCalls, "getLongRunningFunctionCalls");
61
- function generateAuthEvent(invocationContext, functionResponseEvent) {
62
- var _a;
63
- if (!((_a = functionResponseEvent.actions) == null ? void 0 : _a.requestedAuthConfigs) || isEmpty(functionResponseEvent.actions.requestedAuthConfigs)) {
64
- return void 0;
65
- }
66
- const parts = [];
67
- const longRunningToolIds = /* @__PURE__ */ new Set();
68
- for (const [functionCallId, authConfig] of Object.entries(
69
- functionResponseEvent.actions.requestedAuthConfigs
70
- )) {
71
- const requestCredentialFunctionCall = {
72
- name: REQUEST_CREDENTIAL_FUNCTION_CALL_NAME,
73
- args: {
74
- "function_call_id": functionCallId,
75
- "auth_config": authConfig
76
- },
77
- id: generateClientFunctionCallId()
78
- };
79
- longRunningToolIds.add(requestCredentialFunctionCall.id);
80
- parts.push({ functionCall: requestCredentialFunctionCall });
81
- }
82
- return createEvent({
83
- invocationId: invocationContext.invocationId,
84
- author: toolEventAuthor(invocationContext),
85
- branch: invocationContext.branch,
86
- content: {
87
- parts,
88
- role: functionResponseEvent.content.role
89
- },
90
- longRunningToolIds: Array.from(longRunningToolIds)
91
- });
92
- }
93
- __name(generateAuthEvent, "generateAuthEvent");
94
- function generateRequestConfirmationEvent({
95
- invocationContext,
96
- functionCallEvent,
97
- functionResponseEvent
98
- }) {
99
- var _a, _b;
100
- if (!((_a = functionResponseEvent.actions) == null ? void 0 : _a.requestedToolConfirmations) || isEmpty(functionResponseEvent.actions.requestedToolConfirmations)) {
101
- return;
102
- }
103
- const parts = [];
104
- const longRunningToolIds = /* @__PURE__ */ new Set();
105
- const functionCalls = getFunctionCalls(functionCallEvent);
106
- for (const [functionCallId, toolConfirmation] of Object.entries(
107
- functionResponseEvent.actions.requestedToolConfirmations
108
- )) {
109
- const originalFunctionCall = (_b = functionCalls.find((call) => call.id === functionCallId)) != null ? _b : void 0;
110
- if (!originalFunctionCall) {
111
- continue;
112
- }
113
- const requestConfirmationFunctionCall = {
114
- name: REQUEST_CONFIRMATION_FUNCTION_CALL_NAME,
115
- args: {
116
- "originalFunctionCall": originalFunctionCall,
117
- "toolConfirmation": toolConfirmation
118
- },
119
- id: generateClientFunctionCallId()
120
- };
121
- longRunningToolIds.add(requestConfirmationFunctionCall.id);
122
- parts.push({ functionCall: requestConfirmationFunctionCall });
123
- }
124
- return createEvent({
125
- invocationId: invocationContext.invocationId,
126
- author: toolEventAuthor(invocationContext),
127
- branch: invocationContext.branch,
128
- content: {
129
- parts,
130
- role: functionResponseEvent.content.role
131
- },
132
- actions: functionResponseEvent.actions,
133
- longRunningToolIds: Array.from(longRunningToolIds)
134
- });
135
- }
136
- __name(generateRequestConfirmationEvent, "generateRequestConfirmationEvent");
137
- async function callToolAsync(tool, args, toolContext) {
138
- return tracer.startActiveSpan("execute_tool ".concat(tool.name), async (span) => {
139
- try {
140
- logger.debug("callToolAsync ".concat(tool.name));
141
- const result = await tool.runAsync({ args, toolContext });
142
- traceToolCall({
143
- tool,
144
- args,
145
- functionResponseEvent: buildResponseEvent(
146
- tool,
147
- result,
148
- toolContext,
149
- toolContext.invocationContext
150
- )
151
- });
152
- return result;
153
- } finally {
154
- span.end();
155
- }
156
- });
157
- }
158
- __name(callToolAsync, "callToolAsync");
159
- function buildResponseEvent(tool, functionResult, toolContext, invocationContext) {
160
- let responseResult;
161
- if (typeof functionResult !== "object" || functionResult == null) {
162
- responseResult = { result: functionResult };
163
- } else if (Array.isArray(functionResult)) {
164
- responseResult = { results: functionResult };
165
- } else {
166
- responseResult = functionResult;
167
- }
168
- const partFunctionResponse = {
169
- functionResponse: {
170
- name: tool.name,
171
- response: responseResult,
172
- id: toolContext.functionCallId
173
- }
174
- };
175
- const content = {
176
- role: "user",
177
- parts: [partFunctionResponse]
178
- };
179
- return createEvent({
180
- invocationId: invocationContext.invocationId,
181
- author: toolEventAuthor(invocationContext),
182
- content,
183
- actions: toolContext.actions,
184
- branch: invocationContext.branch
185
- });
186
- }
187
- __name(buildResponseEvent, "buildResponseEvent");
188
- async function handleFunctionCallsAsync({
189
- invocationContext,
190
- functionCallEvent,
191
- toolsDict,
192
- beforeToolCallbacks,
193
- afterToolCallbacks,
194
- filters,
195
- toolConfirmationDict
196
- }) {
197
- const functionCalls = getFunctionCalls(functionCallEvent);
198
- return await handleFunctionCallList({
199
- invocationContext,
200
- functionCalls,
201
- toolsDict,
202
- beforeToolCallbacks,
203
- afterToolCallbacks,
204
- filters,
205
- toolConfirmationDict
206
- });
207
- }
208
- __name(handleFunctionCallsAsync, "handleFunctionCallsAsync");
209
- function normalizeCallbackResponse(response) {
210
- if (response == null) {
211
- return void 0;
212
- }
213
- if (typeof response !== "object") {
214
- return { result: response };
215
- }
216
- if (Array.isArray(response)) {
217
- return { results: response };
218
- }
219
- return response;
220
- }
221
- __name(normalizeCallbackResponse, "normalizeCallbackResponse");
222
- async function handleFunctionCallList({
223
- invocationContext,
224
- functionCalls,
225
- toolsDict,
226
- beforeToolCallbacks,
227
- afterToolCallbacks,
228
- filters,
229
- toolConfirmationDict
230
- }) {
231
- var _a;
232
- const functionResponseEvents = [];
233
- const filteredFunctionCalls = functionCalls.filter((functionCall) => {
234
- return !filters || functionCall.id && filters.has(functionCall.id);
235
- });
236
- for (const functionCall of filteredFunctionCalls) {
237
- let toolConfirmation = void 0;
238
- if (toolConfirmationDict && functionCall.id) {
239
- toolConfirmation = toolConfirmationDict[functionCall.id];
240
- }
241
- const { tool, toolContext } = getToolAndContext({
242
- invocationContext,
243
- functionCall,
244
- toolsDict,
245
- toolConfirmation
246
- });
247
- logger.debug("execute_tool ".concat(tool.name));
248
- const functionArgs = (_a = functionCall.args) != null ? _a : {};
249
- let functionResponse = null;
250
- let functionResponseError;
251
- functionResponse = await invocationContext.pluginManager.runBeforeToolCallback({
252
- tool,
253
- toolArgs: functionArgs,
254
- toolContext
255
- });
256
- if (functionResponse == null) {
257
- for (const callback of beforeToolCallbacks) {
258
- functionResponse = await callback({
259
- tool,
260
- args: functionArgs,
261
- context: toolContext
262
- });
263
- if (functionResponse) {
264
- break;
265
- }
266
- }
267
- }
268
- functionResponse = normalizeCallbackResponse(functionResponse);
269
- if (functionResponse == null) {
270
- try {
271
- functionResponse = await callToolAsync(tool, functionArgs, toolContext);
272
- } catch (e) {
273
- if (e instanceof Error) {
274
- const onToolErrorResponse = await invocationContext.pluginManager.runOnToolErrorCallback({
275
- tool,
276
- toolArgs: functionArgs,
277
- toolContext,
278
- error: e
279
- });
280
- if (onToolErrorResponse != null) {
281
- functionResponse = normalizeCallbackResponse(onToolErrorResponse);
282
- } else {
283
- functionResponseError = e.message;
284
- }
285
- } else {
286
- functionResponseError = e;
287
- }
288
- }
289
- }
290
- let alteredFunctionResponse = await invocationContext.pluginManager.runAfterToolCallback({
291
- tool,
292
- toolArgs: functionArgs,
293
- toolContext,
294
- result: functionResponse
295
- });
296
- if (alteredFunctionResponse == null) {
297
- for (const callback of afterToolCallbacks) {
298
- alteredFunctionResponse = await callback({
299
- tool,
300
- args: functionArgs,
301
- context: toolContext,
302
- response: functionResponse
303
- });
304
- if (alteredFunctionResponse) {
305
- break;
306
- }
307
- }
308
- }
309
- if (alteredFunctionResponse != null) {
310
- functionResponse = normalizeCallbackResponse(alteredFunctionResponse);
311
- }
312
- if (tool.isLongRunning && functionResponse == null) {
313
- continue;
314
- }
315
- if (functionResponseError) {
316
- functionResponse = { error: functionResponseError };
317
- } else if (functionResponse == null) {
318
- functionResponse = { result: functionResponse };
319
- } else {
320
- functionResponse = normalizeCallbackResponse(functionResponse);
321
- }
322
- const functionResponseEvent = createEvent({
323
- invocationId: invocationContext.invocationId,
324
- author: toolEventAuthor(invocationContext),
325
- content: createUserContent({
326
- functionResponse: {
327
- id: toolContext.functionCallId,
328
- name: tool.name,
329
- response: functionResponse
330
- }
331
- }),
332
- actions: toolContext.actions,
333
- branch: invocationContext.branch
334
- });
335
- logger.debug("traceToolCall", {
336
- tool: tool.name,
337
- args: functionArgs,
338
- functionResponseEvent: functionResponseEvent.id
339
- });
340
- functionResponseEvents.push(functionResponseEvent);
341
- }
342
- if (!functionResponseEvents.length) {
343
- return null;
344
- }
345
- const mergedEvent = mergeParallelFunctionResponseEvents(
346
- functionResponseEvents
347
- );
348
- if (functionResponseEvents.length > 1) {
349
- tracer.startActiveSpan("execute_tool (merged)", (span) => {
350
- try {
351
- logger.debug("execute_tool (merged)");
352
- logger.debug("traceMergedToolCalls", {
353
- responseEventId: mergedEvent.id,
354
- functionResponseEvent: mergedEvent.id
355
- });
356
- traceMergedToolCalls({
357
- responseEventId: mergedEvent.id,
358
- functionResponseEvent: mergedEvent
359
- });
360
- } finally {
361
- span.end();
362
- }
363
- });
364
- }
365
- return mergedEvent;
366
- }
367
- __name(handleFunctionCallList, "handleFunctionCallList");
368
- function getToolAndContext({
369
- invocationContext,
370
- functionCall,
371
- toolsDict,
372
- toolConfirmation
373
- }) {
374
- if (!functionCall.name || !(functionCall.name in toolsDict)) {
375
- throw new Error(
376
- "Function ".concat(functionCall.name, " is not found in the toolsDict.")
377
- );
378
- }
379
- const toolContext = new Context({
380
- invocationContext,
381
- functionCallId: functionCall.id || void 0,
382
- toolConfirmation
383
- });
384
- const tool = toolsDict[functionCall.name];
385
- return { tool, toolContext };
386
- }
387
- __name(getToolAndContext, "getToolAndContext");
388
- function mergeParallelFunctionResponseEvents(functionResponseEvents) {
389
- if (!functionResponseEvents.length) {
390
- throw new Error("No function response events provided.");
391
- }
392
- if (functionResponseEvents.length === 1) {
393
- return functionResponseEvents[0];
394
- }
395
- const mergedParts = [];
396
- for (const event of functionResponseEvents) {
397
- if (event.content && event.content.parts) {
398
- mergedParts.push(...event.content.parts);
399
- }
400
- }
401
- const baseEvent = functionResponseEvents[0];
402
- const actionsList = functionResponseEvents.map(
403
- (event) => event.actions || {}
404
- );
405
- const mergedActions = mergeEventActions(actionsList);
406
- return createEvent({
407
- invocationId: baseEvent.invocationId,
408
- author: baseEvent.author,
409
- branch: baseEvent.branch,
410
- content: { role: "user", parts: mergedParts },
411
- actions: mergedActions,
412
- timestamp: baseEvent.timestamp
413
- });
414
- }
415
- __name(mergeParallelFunctionResponseEvents, "mergeParallelFunctionResponseEvents");
416
- function findEventByFunctionCallId(events, functionCallId, endIndex = events.length) {
417
- for (let i = endIndex - 1; i >= 0; i--) {
418
- const event = events[i];
419
- const functionCalls = getFunctionCalls(event);
420
- for (const functionCall of functionCalls) {
421
- if (functionCall.id === functionCallId) {
422
- return event;
423
- }
424
- }
425
- }
426
- return void 0;
427
- }
428
- __name(findEventByFunctionCallId, "findEventByFunctionCallId");
429
- function findMatchingFunctionCall(events) {
430
- if (!events.length) {
431
- return void 0;
432
- }
433
- const lastEvent = events[events.length - 1];
434
- const functionResponses = getFunctionResponses(lastEvent);
435
- if (!functionResponses.length || !functionResponses[0].id) {
436
- return void 0;
437
- }
438
- return findEventByFunctionCallId(
439
- events,
440
- functionResponses[0].id,
441
- events.length - 1
442
- );
443
- }
444
- __name(findMatchingFunctionCall, "findMatchingFunctionCall");
445
- export {
446
- AF_FUNCTION_CALL_ID_PREFIX,
447
- REQUEST_CONFIRMATION_FUNCTION_CALL_NAME2 as REQUEST_CONFIRMATION_FUNCTION_CALL_NAME,
448
- REQUEST_CREDENTIAL_FUNCTION_CALL_NAME2 as REQUEST_CREDENTIAL_FUNCTION_CALL_NAME,
449
- REQUEST_INPUT_FUNCTION_CALL_NAME,
450
- findEventByFunctionCallId,
451
- findMatchingFunctionCall,
452
- functionsExportedForTestingOnly,
453
- generateAuthEvent,
454
- generateClientFunctionCallId2 as generateClientFunctionCallId,
455
- generateRequestConfirmationEvent,
456
- getLongRunningFunctionCalls,
457
- handleFunctionCallList,
458
- handleFunctionCallsAsync,
459
- mergeParallelFunctionResponseEvents,
460
- populateClientFunctionCallId,
461
- reservedFunctionCallName
462
- };
@@ -1,188 +0,0 @@
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 2025 Google LLC
8
- * SPDX-License-Identifier: Apache-2.0
9
- */
10
- import { State } from "../sessions/state.js";
11
- const ARTIFACT_PREFIX = "artifact.";
12
- const WORKFLOW_FIELD_KEY = /^[A-Za-z_]\w*\.[A-Za-z_]\w*$/;
13
- const SOURCE_NODE_PLACEHOLDER = /<\s*[A-Za-z_]\w*\.([A-Za-z_]\w*)\s+from\s+([A-Za-z_]\w*)\s*>/g;
14
- function resolveSourceNode(raw, field, nodeName, scope) {
15
- var _a;
16
- const out = (_a = scope.outputsByNode) == null ? void 0 : _a[nodeName];
17
- if (out && typeof out === "object" && field in out) {
18
- return formatValue(out[field], false);
19
- }
20
- return raw;
21
- }
22
- __name(resolveSourceNode, "resolveSourceNode");
23
- async function resolveKey(key, isOptional, rawMatch, readonlyContext) {
24
- const invocationContext = readonlyContext.invocationContext;
25
- if (key.startsWith(ARTIFACT_PREFIX)) {
26
- const fileName = key.substring(ARTIFACT_PREFIX.length);
27
- if (invocationContext.artifactService === void 0) {
28
- throw new Error("Artifact service is not initialized.");
29
- }
30
- const artifact = await invocationContext.artifactService.loadArtifact({
31
- filename: fileName
32
- });
33
- if (!artifact) {
34
- if (isOptional) {
35
- return "";
36
- }
37
- throw new Error("Artifact ".concat(fileName, " not found."));
38
- }
39
- return formatValue(artifact, true);
40
- }
41
- if (isValidStateName(key)) {
42
- if (key in invocationContext.session.state) {
43
- return formatValue(invocationContext.session.state[key], false);
44
- }
45
- if (isOptional) {
46
- return "";
47
- }
48
- throw new Error("Context variable not found: `".concat(key, "`."));
49
- }
50
- const scope = invocationContext.workflowInstructionScope;
51
- if (scope && WORKFLOW_FIELD_KEY.test(key)) {
52
- const field = key.slice(key.indexOf(".") + 1);
53
- const input = scope.input;
54
- if (input && typeof input === "object" && field in input) {
55
- return formatValue(input[field], false);
56
- }
57
- if (isOptional) {
58
- return "";
59
- }
60
- }
61
- return rawMatch;
62
- }
63
- __name(resolveKey, "resolveKey");
64
- function formatValue(value, isArtifact = false) {
65
- if (typeof value === "string") {
66
- return value;
67
- }
68
- if (typeof value === "object" && value !== null) {
69
- if (isArtifact && "text" in value && typeof value.text === "string") {
70
- return value.text;
71
- }
72
- try {
73
- const json = JSON.stringify(value);
74
- if (json !== void 0) {
75
- return json;
76
- }
77
- } catch (e) {
78
- throw new Error(
79
- "Failed to serialize value for instruction template: ".concat(e instanceof Error ? e.message : String(e))
80
- );
81
- }
82
- }
83
- return String(value);
84
- }
85
- __name(formatValue, "formatValue");
86
- async function injectSessionState(template, readonlyContext) {
87
- const scope = readonlyContext.invocationContext.workflowInstructionScope;
88
- const sourceMatches = scope ? Array.from(template.matchAll(SOURCE_NODE_PLACEHOLDER)).map((match) => ({
89
- raw: match[0],
90
- index: match.index,
91
- resolved: resolveSourceNode(match[0], match[1], match[2], scope)
92
- })) : [];
93
- const pattern = /\{+[^{}]*}+/g;
94
- const matches = Array.from(template.matchAll(pattern));
95
- if (matches.length === 0 && sourceMatches.length === 0) {
96
- return template;
97
- }
98
- const parsedMatches = matches.map((match) => {
99
- const raw = match[0];
100
- let key = raw.replace(/^\{+/, "").replace(/\}+$/, "").trim();
101
- const isOptional = key.endsWith("?");
102
- if (isOptional) {
103
- key = key.slice(0, -1);
104
- }
105
- const isValid = key.startsWith(ARTIFACT_PREFIX) || isValidStateName(key) || !!scope && WORKFLOW_FIELD_KEY.test(key);
106
- return {
107
- raw,
108
- key,
109
- isOptional,
110
- isValid,
111
- index: match.index
112
- };
113
- });
114
- const uniqueKeys = /* @__PURE__ */ new Map();
115
- for (const pm of parsedMatches) {
116
- if (!pm.isValid) {
117
- continue;
118
- }
119
- const existing = uniqueKeys.get(pm.key);
120
- if (existing) {
121
- if (existing.isOptional && !pm.isOptional) {
122
- existing.isOptional = false;
123
- }
124
- } else {
125
- uniqueKeys.set(pm.key, {
126
- key: pm.key,
127
- isOptional: pm.isOptional,
128
- raw: pm.raw
129
- });
130
- }
131
- }
132
- const resolutions = /* @__PURE__ */ new Map();
133
- for (const info of uniqueKeys.values()) {
134
- resolutions.set(
135
- info.key,
136
- resolveKey(info.key, info.isOptional, info.raw, readonlyContext)
137
- );
138
- }
139
- await Promise.all(resolutions.values());
140
- const allMatches = [...parsedMatches, ...sourceMatches].sort(
141
- (a, b) => a.index - b.index
142
- );
143
- const result = [];
144
- let lastEnd = 0;
145
- for (const pm of allMatches) {
146
- result.push(template.slice(lastEnd, pm.index));
147
- if ("resolved" in pm) {
148
- result.push(pm.resolved);
149
- } else if (pm.isValid) {
150
- const replacement = await resolutions.get(pm.key);
151
- result.push(replacement);
152
- } else {
153
- result.push(pm.raw);
154
- }
155
- lastEnd = pm.index + pm.raw.length;
156
- }
157
- result.push(template.slice(lastEnd));
158
- return result.join("");
159
- }
160
- __name(injectSessionState, "injectSessionState");
161
- const isIdentifierPattern = /* @__PURE__ */ (() => {
162
- return /^[a-zA-Z_][a-zA-Z0-9_]*$/;
163
- })();
164
- function isIdentifier(s) {
165
- if (s === "" || s === void 0) {
166
- return false;
167
- }
168
- return isIdentifierPattern.test(s);
169
- }
170
- __name(isIdentifier, "isIdentifier");
171
- const VALID_PREFIXES = [State.APP_PREFIX, State.USER_PREFIX, State.TEMP_PREFIX];
172
- function isValidStateName(variableName) {
173
- const parts = variableName.split(":");
174
- if (parts.length === 0 || parts.length > 2) {
175
- return false;
176
- }
177
- if (parts.length === 1) {
178
- return isIdentifier(variableName);
179
- }
180
- if (VALID_PREFIXES.includes(parts[0] + ":")) {
181
- return isIdentifier(parts[1]);
182
- }
183
- return false;
184
- }
185
- __name(isValidStateName, "isValidStateName");
186
- export {
187
- injectSessionState
188
- };