@google/adk 1.6.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 (869) hide show
  1. package/dist/cjs/a2a/a2a_event.js +17 -28
  2. package/dist/cjs/a2a/a2a_remote_agent.js +13 -7
  3. package/dist/cjs/a2a/a2a_remote_agent_run_processor.js +7 -3
  4. package/dist/cjs/a2a/a2a_remote_agent_utils.js +111 -2
  5. package/dist/cjs/a2a/agent_card.js +90 -8
  6. package/dist/cjs/a2a/agent_executor.js +34 -18
  7. package/dist/cjs/a2a/agent_to_a2a.js +28 -11
  8. package/dist/cjs/a2a/auth.js +3 -0
  9. package/dist/cjs/a2a/event_converter_utils.js +10 -0
  10. package/dist/cjs/a2a/event_processor_utils.js +71 -35
  11. package/dist/cjs/a2a/executor_context.js +6 -2
  12. package/dist/cjs/a2a/index.js +57 -0
  13. package/dist/cjs/a2a/metadata_converter_utils.js +5 -0
  14. package/dist/cjs/a2a/part_converter_utils.js +12 -0
  15. package/dist/cjs/a2a/request_metadata.js +94 -0
  16. package/dist/cjs/agents/active_streaming_tool.js +5 -2
  17. package/dist/cjs/agents/base_agent.js +55 -17
  18. package/dist/cjs/agents/context.js +12 -2
  19. package/dist/cjs/agents/framework_function_calls.js +64 -0
  20. package/dist/cjs/agents/functions.js +185 -60
  21. package/dist/cjs/agents/instructions.js +51 -12
  22. package/dist/cjs/agents/invocation_context.js +43 -8
  23. package/dist/cjs/agents/live_request_queue.js +29 -5
  24. package/dist/cjs/agents/llm_agent.js +541 -50
  25. package/dist/cjs/agents/loop_agent.js +20 -3
  26. package/dist/cjs/agents/parallel_agent.js +22 -3
  27. package/dist/cjs/agents/processors/agent_transfer_llm_request_processor.js +32 -8
  28. package/dist/cjs/agents/processors/base_llm_processor.js +9 -4
  29. package/dist/cjs/agents/processors/basic_llm_request_processor.js +6 -3
  30. package/dist/cjs/agents/processors/code_execution_request_processor.js +20 -7
  31. package/dist/cjs/agents/processors/content_processor_utils.js +85 -15
  32. package/dist/cjs/agents/processors/content_request_processor.js +13 -5
  33. package/dist/cjs/agents/processors/context_compactor_request_processor.js +5 -2
  34. package/dist/cjs/agents/processors/identity_llm_request_processor.js +12 -4
  35. package/dist/cjs/agents/processors/instructions_llm_request_processor.js +5 -2
  36. package/dist/cjs/agents/processors/interactions_request_processor.js +5 -2
  37. package/dist/cjs/agents/processors/request_confirmation_llm_request_processor.js +320 -92
  38. package/dist/cjs/agents/processors/request_input_llm_request_processor.js +214 -0
  39. package/dist/cjs/agents/processors/tool_filter_request_processor.js +5 -2
  40. package/dist/cjs/agents/readonly_context.js +13 -3
  41. package/dist/cjs/agents/routed_agent.js +7 -14
  42. package/dist/cjs/agents/run_config.js +12 -0
  43. package/dist/cjs/agents/sequential_agent.js +21 -4
  44. package/dist/cjs/agents/user_input_request.js +145 -0
  45. package/dist/cjs/apps/app.js +12 -12
  46. package/dist/cjs/apps/resumability_config.js +2 -0
  47. package/dist/cjs/artifacts/file_artifact_service.js +22 -4
  48. package/dist/cjs/artifacts/gcs_artifact_service.js +46 -11
  49. package/dist/cjs/artifacts/in_memory_artifact_service.js +9 -2
  50. package/dist/cjs/artifacts/registry.js +6 -1
  51. package/dist/cjs/artifacts/scoped_artifact_service.js +14 -2
  52. package/dist/cjs/artifacts/session_artifact_service.js +19 -0
  53. package/dist/cjs/auth/auth_handler.js +49 -10
  54. package/dist/cjs/auth/auth_preprocessor.js +48 -40
  55. package/dist/cjs/auth/auth_provider_registry.js +5 -2
  56. package/dist/cjs/auth/auth_schemes.js +2 -0
  57. package/dist/cjs/auth/credential_response_binding.js +101 -0
  58. package/dist/cjs/auth/credential_service/in_memory_credential_service.js +5 -2
  59. package/dist/cjs/auth/credential_service/session_state_credential_service.js +5 -2
  60. package/dist/cjs/auth/exchanger/base_credential_exchanger.js +5 -2
  61. package/dist/cjs/auth/exchanger/credential_exchanger_registry.js +5 -2
  62. package/dist/cjs/auth/oauth2/oauth2_credential_exchanger.js +8 -2
  63. package/dist/cjs/auth/oauth2/oauth2_credential_refresher.js +6 -3
  64. package/dist/cjs/auth/oauth2/oauth2_discovery.js +7 -2
  65. package/dist/cjs/auth/oauth2/oauth2_utils.js +23 -2
  66. package/dist/cjs/auth/refresher/base_credential_refresher.js +5 -2
  67. package/dist/cjs/auth/refresher/credential_refresher_registry.js +5 -2
  68. package/dist/cjs/code_executors/agent_engine_sandbox_code_executor.js +3 -0
  69. package/dist/cjs/code_executors/base_code_executor.js +7 -3
  70. package/dist/cjs/code_executors/built_in_code_executor.js +7 -3
  71. package/dist/cjs/code_executors/code_execution_utils.js +8 -2
  72. package/dist/cjs/code_executors/code_executor_context.js +5 -2
  73. package/dist/cjs/code_executors/container_code_executor.js +186 -0
  74. package/dist/cjs/code_executors/docker_container.js +282 -0
  75. package/dist/cjs/code_executors/unsafe_local_code_executor.js +19 -8
  76. package/dist/cjs/common.js +180 -46
  77. package/dist/cjs/context/agent_controlled_context_compactor.js +15 -7
  78. package/dist/cjs/context/anchored_context_compactor.js +46 -20
  79. package/dist/cjs/context/compaction_utils.js +18 -6
  80. package/dist/cjs/context/summarizers/llm_summarizer.js +5 -2
  81. package/dist/cjs/context/token_based_context_compactor.js +19 -5
  82. package/dist/cjs/context/trajectory_thought_pruning_compactor.js +22 -12
  83. package/dist/cjs/context/truncating_context_compactor.js +22 -7
  84. package/dist/cjs/environment/base_environment.js +97 -0
  85. package/dist/cjs/environment/local_environment.js +186 -0
  86. package/dist/cjs/errors/already_exists_error.js +50 -0
  87. package/dist/cjs/errors/input_validation_error.js +50 -0
  88. package/dist/cjs/errors/not_found_error.js +50 -0
  89. package/dist/cjs/errors/session_not_found_error.js +50 -0
  90. package/dist/cjs/errors/tool_execution_error.js +68 -0
  91. package/dist/cjs/events/compacted_event.js +4 -0
  92. package/dist/cjs/events/event.js +38 -3
  93. package/dist/cjs/events/event_actions.js +12 -0
  94. package/dist/cjs/events/structured_events.js +2 -0
  95. package/dist/cjs/examples/base_example_provider.js +7 -3
  96. package/dist/cjs/examples/example_util.js +3 -0
  97. package/dist/cjs/features/feature_registry.js +7 -0
  98. package/dist/cjs/index.js +54 -25
  99. package/dist/cjs/index_web.js +2 -0
  100. package/dist/cjs/integrations/agent_registry/agent_registry.js +10 -6
  101. package/dist/cjs/integrations/agent_registry/agent_registry_mcp_toolset.js +7 -4
  102. package/dist/cjs/integrations/agent_registry/helpers.js +3 -0
  103. package/dist/cjs/memory/in_memory_memory_service.js +8 -2
  104. package/dist/cjs/memory/rag_memory_transcript.js +136 -0
  105. package/dist/cjs/memory/vertex_ai_memory_bank_service.js +19 -4
  106. package/dist/cjs/memory/vertex_ai_rag_api.js +120 -0
  107. package/dist/cjs/memory/vertex_ai_rag_memory_service.js +228 -0
  108. package/dist/cjs/models/apigee_llm.js +10 -4
  109. package/dist/cjs/models/base_llm.js +8 -4
  110. package/dist/cjs/models/chrome_prompt_llm.js +304 -0
  111. package/dist/cjs/models/chrome_prompt_utils.js +229 -0
  112. package/dist/cjs/models/gemini_llm_connection.js +5 -2
  113. package/dist/cjs/models/google_llm.js +33 -16
  114. package/dist/cjs/models/interactions_utils.js +18 -3
  115. package/dist/cjs/models/llm_request.js +4 -0
  116. package/dist/cjs/models/llm_response.js +2 -0
  117. package/dist/cjs/models/registry.js +8 -2
  118. package/dist/cjs/models/routed_llm.js +4 -13
  119. package/dist/cjs/plugins/_reflect_retry_utils.js +142 -0
  120. package/dist/cjs/plugins/base_plugin.js +39 -5
  121. package/dist/cjs/plugins/global_instruction_plugin.js +5 -2
  122. package/dist/cjs/plugins/logging_plugin.js +13 -8
  123. package/dist/cjs/plugins/plugin_manager.js +37 -2
  124. package/dist/cjs/plugins/reflect_retry_model_plugin.js +274 -0
  125. package/dist/cjs/plugins/reflect_retry_tool_plugin.js +276 -0
  126. package/dist/cjs/plugins/security_plugin.js +15 -8
  127. package/dist/cjs/runner/in_memory_runner.js +5 -2
  128. package/dist/cjs/runner/runner.js +236 -43
  129. package/dist/cjs/sessions/base_session_service.js +13 -2
  130. package/dist/cjs/sessions/database_session_service.js +84 -45
  131. package/dist/cjs/sessions/db/operations.js +259 -24
  132. package/dist/cjs/sessions/db/schema.js +118 -156
  133. package/dist/cjs/sessions/in_memory_session_service.js +22 -14
  134. package/dist/cjs/sessions/registry.js +9 -2
  135. package/dist/cjs/sessions/session.js +2 -0
  136. package/dist/cjs/sessions/state.js +80 -8
  137. package/dist/cjs/sessions/state_write_order.js +105 -0
  138. package/dist/cjs/sessions/vertex_ai_session_service.js +112 -17
  139. package/dist/cjs/skills/gcp_skill_registry.js +2 -0
  140. package/dist/cjs/skills/loader.js +22 -10
  141. package/dist/cjs/skills/prompt.js +3 -0
  142. package/dist/cjs/telemetry/google_cloud.js +42 -9
  143. package/dist/cjs/telemetry/setup.js +6 -1
  144. package/dist/cjs/telemetry/tracing.js +71 -5
  145. package/dist/cjs/tools/agent_tool.js +10 -7
  146. package/dist/cjs/tools/base_tool.js +38 -6
  147. package/dist/cjs/tools/base_toolset.js +10 -6
  148. package/dist/cjs/tools/built_in_tool.js +75 -0
  149. package/dist/cjs/tools/consolidate_context_tool.js +5 -2
  150. package/dist/cjs/tools/enterprise_web_search_tool.js +8 -7
  151. package/dist/cjs/tools/example_tool.js +5 -2
  152. package/dist/cjs/tools/exit_loop_tool.js +5 -2
  153. package/dist/cjs/tools/finish_task_tool.js +119 -0
  154. package/dist/cjs/tools/forwarding_artifact_service.js +23 -15
  155. package/dist/cjs/tools/function_tool.js +79 -11
  156. package/dist/cjs/tools/get_user_choice_tool.js +3 -2
  157. package/dist/cjs/tools/google_maps_grounding_tool.js +8 -7
  158. package/dist/cjs/tools/google_search_tool.js +7 -7
  159. package/dist/cjs/tools/load_artifacts_tool.js +55 -25
  160. package/dist/cjs/tools/load_memory_tool.js +5 -2
  161. package/dist/cjs/tools/load_web_page.js +14 -160
  162. package/dist/cjs/tools/long_running_tool.js +5 -2
  163. package/dist/cjs/tools/mcp/index.js +39 -0
  164. package/dist/cjs/tools/mcp/load_mcp_resource_tool.js +39 -7
  165. package/dist/cjs/tools/mcp/mcp_session_manager.js +36 -8
  166. package/dist/cjs/tools/mcp/mcp_tool.js +5 -2
  167. package/dist/cjs/tools/mcp/mcp_toolset.js +5 -2
  168. package/dist/cjs/tools/openapi_tool/auth/auth_helpers.js +15 -2
  169. package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +2 -0
  170. package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +2 -0
  171. package/dist/cjs/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +30 -9
  172. package/dist/cjs/tools/openapi_tool/openapi_spec_parser/operation_parser.js +3 -1
  173. package/dist/cjs/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +6 -2
  174. package/dist/cjs/tools/openapi_tool/openapi_toolset.js +2 -0
  175. package/dist/cjs/tools/openapi_tool/rest_api_tool.js +39 -23
  176. package/dist/cjs/tools/preload_memory_tool.js +6 -3
  177. package/dist/cjs/tools/request_input_tool.js +6 -4
  178. package/dist/cjs/tools/resume_inputs.js +27 -0
  179. package/dist/cjs/tools/retrieval/base_retrieval_tool.js +60 -0
  180. package/dist/cjs/tools/retrieval/files_retrieval.js +95 -0
  181. package/dist/cjs/tools/retrieval/llama_index_retrieval.js +57 -0
  182. package/dist/cjs/tools/skill/list_skills_tool.js +2 -0
  183. package/dist/cjs/tools/skill/load_skill_resource_tool.js +2 -0
  184. package/dist/cjs/tools/skill/load_skill_tool.js +4 -1
  185. package/dist/cjs/tools/skill/run_skill_inline_script_tool.js +8 -2
  186. package/dist/cjs/tools/skill/run_skill_script_tool.js +10 -2
  187. package/dist/cjs/tools/skill/search_skills_tool.js +2 -0
  188. package/dist/cjs/tools/skill/skill_toolset.js +35 -0
  189. package/dist/cjs/tools/tool_confirmation.js +26 -3
  190. package/dist/cjs/tools/url_context_tool.js +7 -7
  191. package/dist/cjs/tools/vertex_ai_search_tool.js +8 -9
  192. package/dist/cjs/tools/vertex_rag_retrieval_tool.js +7 -11
  193. package/dist/cjs/utils/async_hooks_shim.js +5 -2
  194. package/dist/cjs/utils/async_queue.js +45 -18
  195. package/dist/cjs/utils/branch_trie.js +2 -0
  196. package/dist/cjs/utils/case_utils.js +2 -0
  197. package/dist/cjs/utils/client_labels.js +5 -0
  198. package/dist/cjs/utils/crypto_shim.js +18 -0
  199. package/dist/cjs/utils/deprecated.js +68 -0
  200. package/dist/cjs/utils/env_aware_utils.js +41 -0
  201. package/dist/cjs/utils/error_utils.js +8 -0
  202. package/dist/cjs/utils/experimental.js +9 -2
  203. package/dist/cjs/utils/failover_utils.js +3 -0
  204. package/dist/cjs/utils/file_extension_utils.js +3 -0
  205. package/dist/cjs/utils/file_utils.js +7 -2
  206. package/dist/cjs/utils/gemini_schema_util.js +6 -8
  207. package/dist/cjs/utils/genai_schema_to_json.js +107 -0
  208. package/dist/cjs/utils/live_connection_utils.js +5 -2
  209. package/dist/cjs/utils/logger.js +28 -54
  210. package/dist/cjs/utils/logger_browser.js +86 -0
  211. package/dist/cjs/utils/logger_node.js +119 -0
  212. package/dist/cjs/utils/model_name.js +8 -0
  213. package/dist/cjs/utils/object_notation_utils.js +7 -3
  214. package/dist/cjs/utils/optional_peer.js +68 -0
  215. package/dist/cjs/utils/output_schema_utils.js +2 -0
  216. package/dist/cjs/utils/partial_copy.js +2 -0
  217. package/dist/cjs/utils/redact_inline_data.js +46 -0
  218. package/dist/cjs/utils/redact_uri.js +80 -0
  219. package/dist/cjs/utils/schema.js +178 -0
  220. package/dist/cjs/utils/simple_zod_to_json.js +17 -4
  221. package/dist/cjs/utils/ssrf_guard.js +262 -0
  222. package/dist/cjs/utils/streaming_utils.js +14 -6
  223. package/dist/cjs/utils/task.js +7 -4
  224. package/dist/cjs/utils/variant_utils.js +3 -1
  225. package/dist/cjs/utils/vertex_ai_utils.js +3 -1
  226. package/dist/cjs/version.js +1 -1
  227. package/dist/cjs/workflow/base_node.js +211 -0
  228. package/dist/cjs/workflow/branch_path.js +108 -0
  229. package/dist/cjs/workflow/dynamic_node_scheduler.js +220 -0
  230. package/dist/cjs/workflow/errors.js +178 -0
  231. package/dist/cjs/workflow/graph.js +158 -0
  232. package/dist/cjs/workflow/index.js +131 -0
  233. package/dist/cjs/workflow/node.js +65 -0
  234. package/dist/cjs/workflow/node_builders.js +68 -0
  235. package/dist/cjs/workflow/node_context.js +246 -0
  236. package/dist/cjs/workflow/node_error_event.js +86 -0
  237. package/dist/cjs/workflow/node_runner.js +459 -0
  238. package/dist/cjs/workflow/node_state.js +57 -0
  239. package/dist/cjs/workflow/node_status.js +48 -0
  240. package/dist/cjs/workflow/nodes/function_node.js +195 -0
  241. package/dist/cjs/workflow/nodes/join_node.js +56 -0
  242. package/dist/cjs/workflow/nodes/node_tool.js +147 -0
  243. package/dist/cjs/workflow/nodes/parallel_worker.js +129 -0
  244. package/dist/cjs/workflow/nodes/tool_node.js +117 -0
  245. package/dist/cjs/workflow/request_input.js +64 -0
  246. package/dist/cjs/workflow/retry_config.js +71 -0
  247. package/dist/cjs/workflow/run_llm_agent_as_node.js +192 -0
  248. package/dist/cjs/workflow/run_node_as_invocation.js +165 -0
  249. package/dist/cjs/workflow/schedule_dynamic_node.js +53 -0
  250. package/dist/cjs/workflow/trigger.js +27 -0
  251. package/dist/cjs/workflow/utils/graph_parser.js +212 -0
  252. package/dist/cjs/workflow/utils/graph_validation.js +216 -0
  253. package/dist/cjs/workflow/utils/hitl_utils.js +252 -0
  254. package/dist/cjs/workflow/utils/rehydration_utils.js +373 -0
  255. package/dist/cjs/workflow/utils/retry_utils.js +112 -0
  256. package/dist/cjs/workflow/utils/workflow_graph_utils.js +144 -0
  257. package/dist/cjs/workflow/workflow.js +509 -0
  258. package/dist/esm/a2a/a2a_event.js +18 -27
  259. package/dist/esm/a2a/a2a_remote_agent.js +16 -7
  260. package/dist/esm/a2a/a2a_remote_agent_run_processor.js +8 -3
  261. package/dist/esm/a2a/a2a_remote_agent_utils.js +110 -2
  262. package/dist/esm/a2a/agent_card.js +96 -8
  263. package/dist/esm/a2a/agent_executor.js +36 -19
  264. package/dist/esm/a2a/agent_to_a2a.js +52 -17
  265. package/dist/esm/a2a/auth.js +4 -0
  266. package/dist/esm/a2a/event_converter_utils.js +11 -0
  267. package/dist/esm/a2a/event_processor_utils.js +74 -35
  268. package/dist/esm/a2a/executor_context.js +7 -2
  269. package/dist/esm/a2a/index.js +26 -0
  270. package/dist/esm/a2a/metadata_converter_utils.js +6 -0
  271. package/dist/esm/a2a/part_converter_utils.js +13 -0
  272. package/dist/esm/a2a/request_metadata.js +68 -0
  273. package/dist/esm/agents/active_streaming_tool.js +6 -2
  274. package/dist/esm/agents/base_agent.js +56 -17
  275. package/dist/esm/agents/context.js +13 -2
  276. package/dist/esm/agents/framework_function_calls.js +34 -0
  277. package/dist/esm/agents/functions.js +191 -58
  278. package/dist/esm/agents/instructions.js +52 -12
  279. package/dist/esm/agents/invocation_context.js +42 -7
  280. package/dist/esm/agents/live_request_queue.js +30 -5
  281. package/dist/esm/agents/llm_agent.js +542 -50
  282. package/dist/esm/agents/loop_agent.js +22 -3
  283. package/dist/esm/agents/parallel_agent.js +24 -3
  284. package/dist/esm/agents/processors/agent_transfer_llm_request_processor.js +33 -8
  285. package/dist/esm/agents/processors/base_llm_processor.js +10 -4
  286. package/dist/esm/agents/processors/basic_llm_request_processor.js +7 -3
  287. package/dist/esm/agents/processors/code_execution_request_processor.js +21 -7
  288. package/dist/esm/agents/processors/content_processor_utils.js +88 -16
  289. package/dist/esm/agents/processors/content_request_processor.js +14 -5
  290. package/dist/esm/agents/processors/context_compactor_request_processor.js +6 -2
  291. package/dist/esm/agents/processors/identity_llm_request_processor.js +13 -4
  292. package/dist/esm/agents/processors/instructions_llm_request_processor.js +6 -2
  293. package/dist/esm/agents/processors/interactions_request_processor.js +6 -2
  294. package/dist/esm/agents/processors/request_confirmation_llm_request_processor.js +325 -93
  295. package/dist/esm/agents/processors/request_input_llm_request_processor.js +193 -0
  296. package/dist/esm/agents/processors/tool_filter_request_processor.js +6 -2
  297. package/dist/esm/agents/readonly_context.js +14 -3
  298. package/dist/esm/agents/routed_agent.js +7 -15
  299. package/dist/esm/agents/run_config.js +13 -0
  300. package/dist/esm/agents/sequential_agent.js +23 -4
  301. package/dist/esm/agents/user_input_request.js +120 -0
  302. package/dist/esm/apps/app.js +15 -12
  303. package/dist/esm/apps/resumability_config.js +3 -0
  304. package/dist/esm/artifacts/file_artifact_service.js +23 -4
  305. package/dist/esm/artifacts/gcs_artifact_service.js +58 -11
  306. package/dist/esm/artifacts/in_memory_artifact_service.js +10 -2
  307. package/dist/esm/artifacts/registry.js +7 -1
  308. package/dist/esm/artifacts/scoped_artifact_service.js +15 -2
  309. package/dist/esm/artifacts/session_artifact_service.js +12 -0
  310. package/dist/esm/auth/auth_handler.js +53 -10
  311. package/dist/esm/auth/auth_preprocessor.js +50 -41
  312. package/dist/esm/auth/auth_provider_registry.js +6 -2
  313. package/dist/esm/auth/auth_schemes.js +3 -0
  314. package/dist/esm/auth/credential_response_binding.js +74 -0
  315. package/dist/esm/auth/credential_service/in_memory_credential_service.js +6 -2
  316. package/dist/esm/auth/credential_service/session_state_credential_service.js +6 -2
  317. package/dist/esm/auth/exchanger/base_credential_exchanger.js +6 -2
  318. package/dist/esm/auth/exchanger/credential_exchanger_registry.js +6 -2
  319. package/dist/esm/auth/oauth2/oauth2_credential_exchanger.js +9 -2
  320. package/dist/esm/auth/oauth2/oauth2_credential_refresher.js +7 -3
  321. package/dist/esm/auth/oauth2/oauth2_discovery.js +8 -2
  322. package/dist/esm/auth/oauth2/oauth2_utils.js +22 -2
  323. package/dist/esm/auth/refresher/base_credential_refresher.js +6 -2
  324. package/dist/esm/auth/refresher/credential_refresher_registry.js +6 -2
  325. package/dist/esm/code_executors/agent_engine_sandbox_code_executor.js +3 -0
  326. package/dist/esm/code_executors/base_code_executor.js +8 -3
  327. package/dist/esm/code_executors/built_in_code_executor.js +8 -3
  328. package/dist/esm/code_executors/code_execution_utils.js +9 -2
  329. package/dist/esm/code_executors/code_executor_context.js +6 -2
  330. package/dist/esm/code_executors/container_code_executor.js +155 -0
  331. package/dist/esm/code_executors/docker_container.js +265 -0
  332. package/dist/esm/code_executors/unsafe_local_code_executor.js +20 -8
  333. package/dist/esm/common.js +181 -41
  334. package/dist/esm/context/agent_controlled_context_compactor.js +16 -7
  335. package/dist/esm/context/anchored_context_compactor.js +51 -21
  336. package/dist/esm/context/compaction_utils.js +17 -5
  337. package/dist/esm/context/summarizers/llm_summarizer.js +6 -2
  338. package/dist/esm/context/token_based_context_compactor.js +20 -5
  339. package/dist/esm/context/trajectory_thought_pruning_compactor.js +23 -12
  340. package/dist/esm/context/truncating_context_compactor.js +23 -7
  341. package/dist/esm/environment/base_environment.js +71 -0
  342. package/dist/esm/environment/local_environment.js +150 -0
  343. package/dist/esm/errors/already_exists_error.js +23 -0
  344. package/dist/esm/errors/input_validation_error.js +23 -0
  345. package/dist/esm/errors/not_found_error.js +23 -0
  346. package/dist/esm/errors/session_not_found_error.js +23 -0
  347. package/dist/esm/errors/tool_execution_error.js +40 -0
  348. package/dist/esm/events/compacted_event.js +5 -0
  349. package/dist/esm/events/event.js +38 -3
  350. package/dist/esm/events/event_actions.js +12 -0
  351. package/dist/esm/events/structured_events.js +3 -0
  352. package/dist/esm/examples/base_example_provider.js +8 -3
  353. package/dist/esm/examples/example_util.js +4 -0
  354. package/dist/esm/features/feature_registry.js +8 -0
  355. package/dist/esm/index.js +41 -15
  356. package/dist/esm/index_web.js +2 -0
  357. package/dist/esm/integrations/agent_registry/agent_registry.js +11 -6
  358. package/dist/esm/integrations/agent_registry/agent_registry_mcp_toolset.js +6 -2
  359. package/dist/esm/integrations/agent_registry/helpers.js +4 -0
  360. package/dist/esm/memory/in_memory_memory_service.js +9 -2
  361. package/dist/esm/memory/rag_memory_transcript.js +106 -0
  362. package/dist/esm/memory/vertex_ai_memory_bank_service.js +20 -4
  363. package/dist/esm/memory/vertex_ai_rag_api.js +93 -0
  364. package/dist/esm/memory/vertex_ai_rag_memory_service.js +208 -0
  365. package/dist/esm/models/apigee_llm.js +11 -4
  366. package/dist/esm/models/base_llm.js +9 -4
  367. package/dist/esm/models/chrome_prompt_llm.js +285 -0
  368. package/dist/esm/models/chrome_prompt_utils.js +192 -0
  369. package/dist/esm/models/gemini_llm_connection.js +6 -2
  370. package/dist/esm/models/google_llm.js +35 -17
  371. package/dist/esm/models/interactions_utils.js +19 -3
  372. package/dist/esm/models/llm_request.js +5 -0
  373. package/dist/esm/models/llm_response.js +3 -0
  374. package/dist/esm/models/registry.js +9 -2
  375. package/dist/esm/models/routed_llm.js +4 -14
  376. package/dist/esm/plugins/_reflect_retry_utils.js +111 -0
  377. package/dist/esm/plugins/base_plugin.js +39 -5
  378. package/dist/esm/plugins/global_instruction_plugin.js +6 -2
  379. package/dist/esm/plugins/logging_plugin.js +14 -8
  380. package/dist/esm/plugins/plugin_manager.js +38 -2
  381. package/dist/esm/plugins/reflect_retry_model_plugin.js +250 -0
  382. package/dist/esm/plugins/reflect_retry_tool_plugin.js +254 -0
  383. package/dist/esm/plugins/security_plugin.js +14 -6
  384. package/dist/esm/runner/in_memory_runner.js +6 -2
  385. package/dist/esm/runner/runner.js +249 -46
  386. package/dist/esm/sessions/base_session_service.js +14 -2
  387. package/dist/esm/sessions/database_session_service.js +65 -27
  388. package/dist/esm/sessions/db/operations.js +259 -24
  389. package/dist/esm/sessions/db/schema.js +116 -157
  390. package/dist/esm/sessions/in_memory_session_service.js +23 -14
  391. package/dist/esm/sessions/registry.js +10 -2
  392. package/dist/esm/sessions/session.js +3 -0
  393. package/dist/esm/sessions/state.js +78 -7
  394. package/dist/esm/sessions/state_write_order.js +74 -0
  395. package/dist/esm/sessions/vertex_ai_session_service.js +111 -16
  396. package/dist/esm/skills/gcp_skill_registry.js +2 -0
  397. package/dist/esm/skills/loader.js +23 -10
  398. package/dist/esm/skills/prompt.js +4 -0
  399. package/dist/esm/telemetry/google_cloud.js +54 -9
  400. package/dist/esm/telemetry/setup.js +7 -1
  401. package/dist/esm/telemetry/tracing.js +70 -5
  402. package/dist/esm/tools/agent_tool.js +11 -7
  403. package/dist/esm/tools/base_tool.js +36 -5
  404. package/dist/esm/tools/base_toolset.js +11 -6
  405. package/dist/esm/tools/built_in_tool.js +51 -0
  406. package/dist/esm/tools/consolidate_context_tool.js +6 -2
  407. package/dist/esm/tools/enterprise_web_search_tool.js +9 -7
  408. package/dist/esm/tools/example_tool.js +6 -2
  409. package/dist/esm/tools/exit_loop_tool.js +6 -2
  410. package/dist/esm/tools/finish_task_tool.js +92 -0
  411. package/dist/esm/tools/forwarding_artifact_service.js +24 -15
  412. package/dist/esm/tools/function_tool.js +80 -11
  413. package/dist/esm/tools/get_user_choice_tool.js +4 -2
  414. package/dist/esm/tools/google_maps_grounding_tool.js +9 -7
  415. package/dist/esm/tools/google_search_tool.js +8 -7
  416. package/dist/esm/tools/load_artifacts_tool.js +57 -26
  417. package/dist/esm/tools/load_memory_tool.js +6 -2
  418. package/dist/esm/tools/load_web_page.js +19 -158
  419. package/dist/esm/tools/long_running_tool.js +6 -2
  420. package/dist/{web/context/summarizers/base_summarizer.js → esm/tools/mcp/index.js} +4 -0
  421. package/dist/esm/tools/mcp/load_mcp_resource_tool.js +40 -7
  422. package/dist/esm/tools/mcp/mcp_session_manager.js +45 -9
  423. package/dist/esm/tools/mcp/mcp_tool.js +6 -2
  424. package/dist/esm/tools/mcp/mcp_toolset.js +6 -2
  425. package/dist/esm/tools/openapi_tool/auth/auth_helpers.js +18 -2
  426. package/dist/esm/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +2 -0
  427. package/dist/esm/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +2 -0
  428. package/dist/esm/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +30 -9
  429. package/dist/esm/tools/openapi_tool/openapi_spec_parser/operation_parser.js +3 -1
  430. package/dist/esm/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +6 -2
  431. package/dist/esm/tools/openapi_tool/openapi_toolset.js +2 -0
  432. package/dist/esm/tools/openapi_tool/rest_api_tool.js +39 -23
  433. package/dist/esm/tools/preload_memory_tool.js +7 -3
  434. package/dist/esm/tools/request_input_tool.js +7 -4
  435. package/dist/esm/tools/retrieval/base_retrieval_tool.js +33 -0
  436. package/dist/esm/tools/retrieval/files_retrieval.js +81 -0
  437. package/dist/esm/tools/retrieval/llama_index_retrieval.js +30 -0
  438. package/dist/esm/tools/skill/list_skills_tool.js +2 -0
  439. package/dist/esm/tools/skill/load_skill_resource_tool.js +2 -0
  440. package/dist/esm/tools/skill/load_skill_tool.js +4 -1
  441. package/dist/esm/tools/skill/run_skill_inline_script_tool.js +8 -2
  442. package/dist/esm/tools/skill/run_skill_script_tool.js +10 -2
  443. package/dist/esm/tools/skill/search_skills_tool.js +2 -0
  444. package/dist/esm/tools/skill/skill_toolset.js +25 -0
  445. package/dist/esm/tools/tool_confirmation.js +24 -2
  446. package/dist/esm/tools/url_context_tool.js +8 -7
  447. package/dist/esm/tools/vertex_ai_search_tool.js +9 -9
  448. package/dist/esm/tools/vertex_rag_retrieval_tool.js +8 -11
  449. package/dist/esm/utils/async_hooks_shim.js +6 -2
  450. package/dist/esm/utils/async_queue.js +46 -18
  451. package/dist/esm/utils/branch_trie.js +3 -0
  452. package/dist/esm/utils/case_utils.js +3 -0
  453. package/dist/esm/utils/client_labels.js +6 -0
  454. package/dist/esm/utils/crypto_shim.js +17 -0
  455. package/dist/esm/utils/deprecated.js +40 -0
  456. package/dist/esm/utils/env_aware_utils.js +41 -0
  457. package/dist/esm/utils/error_utils.js +9 -0
  458. package/dist/esm/utils/experimental.js +10 -2
  459. package/dist/esm/utils/failover_utils.js +4 -0
  460. package/dist/esm/utils/file_extension_utils.js +4 -0
  461. package/dist/esm/utils/file_utils.js +8 -2
  462. package/dist/esm/utils/gemini_schema_util.js +7 -8
  463. package/dist/esm/utils/genai_schema_to_json.js +80 -0
  464. package/dist/esm/utils/live_connection_utils.js +6 -2
  465. package/dist/esm/utils/logger.js +28 -44
  466. package/dist/esm/utils/logger_browser.js +58 -0
  467. package/dist/esm/utils/logger_node.js +81 -0
  468. package/dist/esm/utils/model_name.js +9 -0
  469. package/dist/esm/utils/object_notation_utils.js +8 -3
  470. package/dist/esm/utils/optional_peer.js +41 -0
  471. package/dist/esm/utils/output_schema_utils.js +3 -0
  472. package/dist/esm/utils/partial_copy.js +3 -0
  473. package/dist/esm/utils/redact_inline_data.js +19 -0
  474. package/dist/esm/utils/redact_uri.js +53 -0
  475. package/dist/esm/utils/schema.js +152 -0
  476. package/dist/esm/utils/simple_zod_to_json.js +15 -4
  477. package/dist/esm/utils/ssrf_guard.js +230 -0
  478. package/dist/esm/utils/streaming_utils.js +15 -6
  479. package/dist/esm/utils/task.js +8 -4
  480. package/dist/esm/utils/variant_utils.js +5 -2
  481. package/dist/esm/utils/vertex_ai_utils.js +5 -2
  482. package/dist/esm/version.js +1 -1
  483. package/dist/esm/workflow/base_node.js +182 -0
  484. package/dist/esm/workflow/branch_path.js +77 -0
  485. package/dist/esm/workflow/dynamic_node_scheduler.js +202 -0
  486. package/dist/esm/workflow/errors.js +140 -0
  487. package/dist/esm/workflow/graph.js +127 -0
  488. package/dist/esm/workflow/index.js +80 -0
  489. package/dist/esm/workflow/node.js +38 -0
  490. package/dist/esm/workflow/node_builders.js +40 -0
  491. package/dist/esm/workflow/node_context.js +219 -0
  492. package/dist/esm/workflow/node_error_event.js +57 -0
  493. package/dist/esm/workflow/node_runner.js +439 -0
  494. package/dist/esm/workflow/node_state.js +29 -0
  495. package/dist/esm/workflow/node_status.js +20 -0
  496. package/dist/esm/workflow/nodes/function_node.js +172 -0
  497. package/dist/esm/workflow/nodes/join_node.js +29 -0
  498. package/dist/esm/workflow/nodes/node_tool.js +122 -0
  499. package/dist/esm/workflow/nodes/parallel_worker.js +102 -0
  500. package/dist/esm/workflow/nodes/tool_node.js +90 -0
  501. package/dist/esm/workflow/request_input.js +36 -0
  502. package/dist/esm/workflow/retry_config.js +43 -0
  503. package/dist/esm/workflow/run_llm_agent_as_node.js +172 -0
  504. package/dist/esm/workflow/run_node_as_invocation.js +139 -0
  505. package/dist/esm/workflow/schedule_dynamic_node.js +26 -0
  506. package/dist/esm/workflow/utils/graph_parser.js +188 -0
  507. package/dist/esm/workflow/utils/graph_validation.js +189 -0
  508. package/dist/esm/workflow/utils/hitl_utils.js +222 -0
  509. package/dist/esm/workflow/utils/rehydration_utils.js +342 -0
  510. package/dist/esm/workflow/utils/retry_utils.js +82 -0
  511. package/dist/esm/workflow/utils/workflow_graph_utils.js +115 -0
  512. package/dist/esm/workflow/workflow.js +493 -0
  513. package/dist/types/a2a/a2a_event.d.ts +7 -10
  514. package/dist/types/a2a/a2a_remote_agent.d.ts +5 -0
  515. package/dist/types/a2a/a2a_remote_agent_utils.d.ts +25 -0
  516. package/dist/types/a2a/agent_card.d.ts +12 -3
  517. package/dist/types/a2a/agent_executor.d.ts +1 -1
  518. package/dist/types/a2a/agent_to_a2a.d.ts +6 -4
  519. package/dist/types/a2a/auth.d.ts +5 -1
  520. package/dist/types/a2a/event_processor_utils.d.ts +17 -2
  521. package/dist/types/a2a/executor_context.d.ts +7 -1
  522. package/dist/types/a2a/index.d.ts +18 -0
  523. package/dist/types/a2a/request_metadata.d.ts +22 -0
  524. package/dist/types/agents/base_agent.d.ts +56 -25
  525. package/dist/types/agents/context.d.ts +8 -0
  526. package/dist/types/agents/framework_function_calls.d.ts +26 -0
  527. package/dist/types/agents/functions.d.ts +73 -8
  528. package/dist/types/agents/invocation_context.d.ts +106 -6
  529. package/dist/types/agents/live_request_queue.d.ts +7 -1
  530. package/dist/types/agents/llm_agent.d.ts +86 -8
  531. package/dist/types/agents/loop_agent.d.ts +5 -0
  532. package/dist/types/agents/parallel_agent.d.ts +5 -0
  533. package/dist/types/agents/processors/agent_transfer_llm_request_processor.d.ts +16 -1
  534. package/dist/types/agents/processors/content_processor_utils.d.ts +3 -2
  535. package/dist/types/agents/processors/identity_llm_request_processor.d.ts +4 -1
  536. package/dist/types/agents/processors/request_input_llm_request_processor.d.ts +21 -0
  537. package/dist/types/agents/readonly_context.d.ts +4 -0
  538. package/dist/types/agents/run_config.d.ts +72 -4
  539. package/dist/types/agents/sequential_agent.d.ts +5 -0
  540. package/dist/types/agents/user_input_request.d.ts +71 -0
  541. package/dist/types/apps/app.d.ts +8 -3
  542. package/dist/types/artifacts/gcs_artifact_service.d.ts +9 -2
  543. package/dist/types/artifacts/scoped_artifact_service.d.ts +13 -0
  544. package/dist/types/artifacts/session_artifact_service.d.ts +8 -1
  545. package/dist/types/auth/auth_credential.d.ts +13 -8
  546. package/dist/types/auth/auth_handler.d.ts +12 -1
  547. package/dist/types/auth/credential_response_binding.d.ts +24 -0
  548. package/dist/types/auth/oauth2/oauth2_credential_refresher.d.ts +1 -1
  549. package/dist/types/auth/oauth2/oauth2_utils.d.ts +9 -0
  550. package/dist/types/auth/refresher/base_credential_refresher.d.ts +1 -1
  551. package/dist/types/code_executors/code_execution_utils.d.ts +1 -1
  552. package/dist/types/code_executors/container_code_executor.d.ts +89 -0
  553. package/dist/types/code_executors/docker_container.d.ts +79 -0
  554. package/dist/types/common.d.ts +39 -27
  555. package/dist/types/context/compaction_utils.d.ts +9 -1
  556. package/dist/types/environment/base_environment.d.ts +101 -0
  557. package/dist/types/environment/local_environment.d.ts +72 -0
  558. package/dist/types/errors/already_exists_error.d.ts +14 -0
  559. package/dist/types/errors/input_validation_error.d.ts +14 -0
  560. package/dist/types/errors/not_found_error.d.ts +14 -0
  561. package/dist/types/errors/session_not_found_error.d.ts +14 -0
  562. package/dist/types/errors/tool_execution_error.d.ts +36 -0
  563. package/dist/types/events/event.d.ts +94 -1
  564. package/dist/types/events/event_actions.d.ts +23 -0
  565. package/dist/types/index.d.ts +27 -14
  566. package/dist/types/memory/rag_memory_transcript.d.ts +55 -0
  567. package/dist/types/memory/vertex_ai_rag_api.d.ts +89 -0
  568. package/dist/types/memory/vertex_ai_rag_memory_service.d.ts +68 -0
  569. package/dist/types/models/apigee_llm.d.ts +4 -4
  570. package/dist/types/models/chrome_prompt_llm.d.ts +210 -0
  571. package/dist/types/models/chrome_prompt_utils.d.ts +68 -0
  572. package/dist/types/models/google_llm.d.ts +10 -4
  573. package/dist/types/models/registry.d.ts +3 -2
  574. package/dist/types/plugins/_reflect_retry_utils.d.ts +72 -0
  575. package/dist/types/plugins/base_plugin.d.ts +47 -10
  576. package/dist/types/plugins/logging_plugin.d.ts +3 -2
  577. package/dist/types/plugins/plugin_manager.d.ts +20 -0
  578. package/dist/types/plugins/reflect_retry_model_plugin.d.ts +132 -0
  579. package/dist/types/plugins/reflect_retry_tool_plugin.d.ts +187 -0
  580. package/dist/types/plugins/security_plugin.d.ts +4 -2
  581. package/dist/types/runner/in_memory_runner.d.ts +2 -2
  582. package/dist/types/runner/runner.d.ts +64 -9
  583. package/dist/types/sessions/base_session_service.d.ts +2 -2
  584. package/dist/types/sessions/database_session_service.d.ts +1 -1
  585. package/dist/types/sessions/db/operations.d.ts +13 -1
  586. package/dist/types/sessions/db/schema.d.ts +23 -9
  587. package/dist/types/sessions/state.d.ts +34 -1
  588. package/dist/types/sessions/state_write_order.d.ts +39 -0
  589. package/dist/types/telemetry/tracing.d.ts +15 -0
  590. package/dist/types/tools/base_tool.d.ts +26 -0
  591. package/dist/types/tools/base_toolset.d.ts +3 -4
  592. package/dist/types/tools/built_in_tool.d.ts +41 -0
  593. package/dist/types/tools/enterprise_web_search_tool.d.ts +4 -4
  594. package/dist/types/tools/finish_task_tool.d.ts +47 -0
  595. package/dist/types/tools/forwarding_artifact_service.d.ts +23 -10
  596. package/dist/types/tools/function_tool.d.ts +88 -10
  597. package/dist/types/tools/google_maps_grounding_tool.d.ts +4 -4
  598. package/dist/types/tools/google_search_tool.d.ts +4 -4
  599. package/dist/types/tools/long_running_tool.d.ts +1 -1
  600. package/dist/types/tools/mcp/index.d.ts +13 -0
  601. package/dist/types/tools/mcp/mcp_session_manager.d.ts +3 -3
  602. package/dist/types/tools/mcp/mcp_tool.d.ts +1 -1
  603. package/dist/types/tools/mcp/mcp_toolset.d.ts +12 -11
  604. package/dist/types/tools/openapi_tool/auth/auth_helpers.d.ts +5 -0
  605. package/dist/types/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.d.ts +0 -1
  606. package/dist/types/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.d.ts +0 -1
  607. package/dist/types/tools/preload_memory_tool.d.ts +1 -1
  608. package/dist/types/tools/request_input_tool.d.ts +6 -1
  609. package/dist/types/tools/resume_inputs.d.ts +25 -0
  610. package/dist/types/tools/retrieval/base_retrieval_tool.d.ts +21 -0
  611. package/dist/types/tools/retrieval/files_retrieval.d.ts +50 -0
  612. package/dist/types/tools/retrieval/llama_index_retrieval.d.ts +62 -0
  613. package/dist/types/tools/skill/skill_toolset.d.ts +26 -0
  614. package/dist/types/tools/tool_confirmation.d.ts +47 -0
  615. package/dist/types/tools/url_context_tool.d.ts +4 -4
  616. package/dist/types/tools/vertex_ai_search_tool.d.ts +4 -4
  617. package/dist/types/tools/vertex_rag_retrieval_tool.d.ts +13 -12
  618. package/dist/types/utils/async_queue.d.ts +34 -2
  619. package/dist/types/utils/crypto_shim.d.ts +16 -0
  620. package/dist/types/utils/deprecated.d.ts +21 -0
  621. package/dist/types/utils/env_aware_utils.d.ts +16 -0
  622. package/dist/types/utils/file_utils.d.ts +10 -2
  623. package/dist/types/utils/gemini_schema_util.d.ts +5 -7
  624. package/dist/types/utils/genai_schema_to_json.d.ts +25 -0
  625. package/dist/types/utils/logger.d.ts +23 -1
  626. package/dist/types/utils/logger_browser.d.ts +28 -0
  627. package/dist/types/utils/logger_node.d.ts +20 -0
  628. package/dist/types/utils/optional_peer.d.ts +36 -0
  629. package/dist/types/utils/output_schema_utils.d.ts +3 -3
  630. package/dist/types/utils/redact_inline_data.d.ts +16 -0
  631. package/dist/types/utils/redact_uri.d.ts +32 -0
  632. package/dist/types/utils/schema.d.ts +73 -0
  633. package/dist/types/utils/simple_zod_to_json.d.ts +8 -0
  634. package/dist/types/utils/ssrf_guard.d.ts +32 -0
  635. package/dist/types/utils/vertex_ai_utils.d.ts +4 -0
  636. package/dist/types/version.d.ts +1 -1
  637. package/dist/types/workflow/base_node.d.ts +142 -0
  638. package/dist/types/workflow/branch_path.d.ts +40 -0
  639. package/dist/types/workflow/dynamic_node_scheduler.d.ts +64 -0
  640. package/dist/types/workflow/errors.d.ts +132 -0
  641. package/dist/types/workflow/graph.d.ts +127 -0
  642. package/dist/types/workflow/index.d.ts +46 -0
  643. package/dist/types/workflow/node.d.ts +48 -0
  644. package/dist/types/workflow/node_builders.d.ts +25 -0
  645. package/dist/types/workflow/node_context.d.ts +208 -0
  646. package/dist/types/workflow/node_error_event.d.ts +18 -0
  647. package/dist/types/workflow/node_runner.d.ts +82 -0
  648. package/dist/types/workflow/node_state.d.ts +47 -0
  649. package/dist/types/workflow/node_status.d.ts +28 -0
  650. package/dist/types/workflow/nodes/function_node.d.ts +78 -0
  651. package/dist/types/workflow/nodes/join_node.d.ts +24 -0
  652. package/dist/types/workflow/nodes/node_tool.d.ts +53 -0
  653. package/dist/types/workflow/nodes/parallel_worker.d.ts +55 -0
  654. package/dist/types/workflow/nodes/tool_node.d.ts +34 -0
  655. package/dist/types/workflow/request_input.d.ts +73 -0
  656. package/dist/types/workflow/retry_config.d.ts +84 -0
  657. package/dist/types/workflow/run_llm_agent_as_node.d.ts +28 -0
  658. package/dist/types/workflow/run_node_as_invocation.d.ts +72 -0
  659. package/dist/types/workflow/schedule_dynamic_node.d.ts +66 -0
  660. package/dist/types/workflow/trigger.d.ts +22 -0
  661. package/dist/types/workflow/utils/graph_parser.d.ts +8 -0
  662. package/dist/types/workflow/utils/graph_validation.d.ts +18 -0
  663. package/dist/types/workflow/utils/hitl_utils.d.ts +92 -0
  664. package/dist/types/workflow/utils/rehydration_utils.d.ts +132 -0
  665. package/dist/types/workflow/utils/retry_utils.d.ts +54 -0
  666. package/dist/types/workflow/utils/workflow_graph_utils.d.ts +76 -0
  667. package/dist/types/workflow/workflow.d.ts +115 -0
  668. package/dist/web/index_web.js +304 -3
  669. package/dist/web/index_web.js.map +7 -0
  670. package/package.json +97 -20
  671. package/dist/web/a2a/a2a_event.js +0 -271
  672. package/dist/web/a2a/a2a_remote_agent.js +0 -196
  673. package/dist/web/a2a/a2a_remote_agent_run_processor.js +0 -184
  674. package/dist/web/a2a/a2a_remote_agent_utils.js +0 -133
  675. package/dist/web/a2a/agent_card.js +0 -342
  676. package/dist/web/a2a/agent_executor.js +0 -218
  677. package/dist/web/a2a/agent_to_a2a.js +0 -97
  678. package/dist/web/a2a/auth.js +0 -37
  679. package/dist/web/a2a/event_converter_utils.js +0 -232
  680. package/dist/web/a2a/event_processor_utils.js +0 -170
  681. package/dist/web/a2a/executor_context.js +0 -25
  682. package/dist/web/a2a/metadata_converter_utils.js +0 -110
  683. package/dist/web/a2a/part_converter_utils.js +0 -188
  684. package/dist/web/agents/active_streaming_tool.js +0 -21
  685. package/dist/web/agents/base_agent.js +0 -423
  686. package/dist/web/agents/context.js +0 -142
  687. package/dist/web/agents/functions.js +0 -433
  688. package/dist/web/agents/instructions.js +0 -148
  689. package/dist/web/agents/invocation_context.js +0 -77
  690. package/dist/web/agents/live_request_queue.js +0 -126
  691. package/dist/web/agents/llm_agent.js +0 -936
  692. package/dist/web/agents/loop_agent.js +0 -112
  693. package/dist/web/agents/parallel_agent.js +0 -101
  694. package/dist/web/agents/processors/agent_transfer_llm_request_processor.js +0 -109
  695. package/dist/web/agents/processors/base_llm_processor.js +0 -15
  696. package/dist/web/agents/processors/basic_llm_request_processor.js +0 -81
  697. package/dist/web/agents/processors/code_execution_request_processor.js +0 -367
  698. package/dist/web/agents/processors/content_processor_utils.js +0 -361
  699. package/dist/web/agents/processors/content_request_processor.js +0 -67
  700. package/dist/web/agents/processors/context_compactor_request_processor.js +0 -74
  701. package/dist/web/agents/processors/identity_llm_request_processor.js +0 -50
  702. package/dist/web/agents/processors/instructions_llm_request_processor.js +0 -81
  703. package/dist/web/agents/processors/interactions_request_processor.js +0 -52
  704. package/dist/web/agents/processors/request_confirmation_llm_request_processor.js +0 -168
  705. package/dist/web/agents/processors/tool_filter_request_processor.js +0 -68
  706. package/dist/web/agents/readonly_context.js +0 -55
  707. package/dist/web/agents/routed_agent.js +0 -169
  708. package/dist/web/agents/run_config.js +0 -62
  709. package/dist/web/agents/sequential_agent.js +0 -122
  710. package/dist/web/agents/transcription_entry.js +0 -7
  711. package/dist/web/apps/app.js +0 -49
  712. package/dist/web/apps/resumability_config.js +0 -31
  713. package/dist/web/artifacts/base_artifact_service.js +0 -7
  714. package/dist/web/artifacts/file_artifact_service.js +0 -548
  715. package/dist/web/artifacts/gcs_artifact_service.js +0 -253
  716. package/dist/web/artifacts/in_memory_artifact_service.js +0 -164
  717. package/dist/web/artifacts/registry.js +0 -30
  718. package/dist/web/artifacts/scoped_artifact_service.js +0 -86
  719. package/dist/web/auth/auth_credential.js +0 -18
  720. package/dist/web/auth/auth_handler.js +0 -148
  721. package/dist/web/auth/auth_preprocessor.js +0 -175
  722. package/dist/web/auth/auth_provider_registry.js +0 -33
  723. package/dist/web/auth/auth_schemes.js +0 -33
  724. package/dist/web/auth/auth_tool.js +0 -7
  725. package/dist/web/auth/credential_service/base_credential_service.js +0 -7
  726. package/dist/web/auth/credential_service/in_memory_credential_service.js +0 -46
  727. package/dist/web/auth/credential_service/session_state_credential_service.js +0 -23
  728. package/dist/web/auth/exchanger/base_credential_exchanger.js +0 -12
  729. package/dist/web/auth/exchanger/credential_exchanger_registry.js +0 -31
  730. package/dist/web/auth/oauth2/oauth2_credential_exchanger.js +0 -188
  731. package/dist/web/auth/oauth2/oauth2_credential_refresher.js +0 -102
  732. package/dist/web/auth/oauth2/oauth2_discovery.js +0 -190
  733. package/dist/web/auth/oauth2/oauth2_utils.js +0 -98
  734. package/dist/web/auth/refresher/base_credential_refresher.js +0 -16
  735. package/dist/web/auth/refresher/credential_refresher_registry.js +0 -40
  736. package/dist/web/code_executors/agent_engine_sandbox_code_executor.js +0 -281
  737. package/dist/web/code_executors/base_code_executor.js +0 -63
  738. package/dist/web/code_executors/built_in_code_executor.js +0 -45
  739. package/dist/web/code_executors/code_execution_utils.js +0 -124
  740. package/dist/web/code_executors/code_executor_context.js +0 -170
  741. package/dist/web/code_executors/unsafe_local_code_executor.js +0 -214
  742. package/dist/web/common.js +0 -347
  743. package/dist/web/context/agent_controlled_context_compactor.js +0 -72
  744. package/dist/web/context/anchored_context_compactor.js +0 -117
  745. package/dist/web/context/base_context_compactor.js +0 -7
  746. package/dist/web/context/compaction_utils.js +0 -38
  747. package/dist/web/context/summarizers/llm_summarizer.js +0 -87
  748. package/dist/web/context/token_based_context_compactor.js +0 -111
  749. package/dist/web/context/trajectory_thought_pruning_compactor.js +0 -43
  750. package/dist/web/context/truncating_context_compactor.js +0 -30
  751. package/dist/web/events/compacted_event.js +0 -47
  752. package/dist/web/events/event.js +0 -174
  753. package/dist/web/events/event_actions.js +0 -69
  754. package/dist/web/events/structured_events.js +0 -76
  755. package/dist/web/examples/base_example_provider.js +0 -27
  756. package/dist/web/examples/example.js +0 -7
  757. package/dist/web/examples/example_util.js +0 -79
  758. package/dist/web/features/feature_registry.js +0 -107
  759. package/dist/web/index.js +0 -68
  760. package/dist/web/integrations/agent_registry/agent_registry.js +0 -333
  761. package/dist/web/integrations/agent_registry/agent_registry_mcp_toolset.js +0 -117
  762. package/dist/web/integrations/agent_registry/helpers.js +0 -28
  763. package/dist/web/integrations/agent_registry/types.js +0 -20
  764. package/dist/web/memory/base_memory_service.js +0 -7
  765. package/dist/web/memory/in_memory_memory_service.js +0 -82
  766. package/dist/web/memory/memory_entry.js +0 -7
  767. package/dist/web/memory/vertex_ai_memory_bank_service.js +0 -481
  768. package/dist/web/models/apigee_llm.js +0 -221
  769. package/dist/web/models/base_llm.js +0 -73
  770. package/dist/web/models/base_llm_connection.js +0 -7
  771. package/dist/web/models/gemini_llm_connection.js +0 -179
  772. package/dist/web/models/google_llm.js +0 -384
  773. package/dist/web/models/interactions_utils.js +0 -728
  774. package/dist/web/models/llm_request.js +0 -52
  775. package/dist/web/models/llm_response.js +0 -45
  776. package/dist/web/models/registry.js +0 -95
  777. package/dist/web/models/routed_llm.js +0 -122
  778. package/dist/web/plugins/base_plugin.js +0 -271
  779. package/dist/web/plugins/global_instruction_plugin.js +0 -67
  780. package/dist/web/plugins/logging_plugin.js +0 -235
  781. package/dist/web/plugins/plugin_manager.js +0 -282
  782. package/dist/web/plugins/security_plugin.js +0 -140
  783. package/dist/web/runner/in_memory_runner.js +0 -46
  784. package/dist/web/runner/runner.js +0 -535
  785. package/dist/web/sessions/base_session_service.js +0 -111
  786. package/dist/web/sessions/database_session_service.js +0 -436
  787. package/dist/web/sessions/db/operations.js +0 -96
  788. package/dist/web/sessions/db/schema.js +0 -208
  789. package/dist/web/sessions/in_memory_session_service.js +0 -242
  790. package/dist/web/sessions/registry.js +0 -34
  791. package/dist/web/sessions/session.js +0 -20
  792. package/dist/web/sessions/state.js +0 -89
  793. package/dist/web/sessions/vertex_ai_session_service.js +0 -443
  794. package/dist/web/skills/gcp_skill_registry.js +0 -78
  795. package/dist/web/skills/loader.js +0 -360
  796. package/dist/web/skills/prompt.js +0 -30
  797. package/dist/web/skills/skill.js +0 -67
  798. package/dist/web/skills/skill_registry.js +0 -7
  799. package/dist/web/telemetry/google_cloud.js +0 -54
  800. package/dist/web/telemetry/setup.js +0 -83
  801. package/dist/web/telemetry/tracing.js +0 -234
  802. package/dist/web/tools/agent_tool.js +0 -145
  803. package/dist/web/tools/base_tool.js +0 -93
  804. package/dist/web/tools/base_toolset.js +0 -57
  805. package/dist/web/tools/consolidate_context_tool.js +0 -51
  806. package/dist/web/tools/enterprise_web_search_tool.js +0 -55
  807. package/dist/web/tools/example_tool.js +0 -42
  808. package/dist/web/tools/exit_loop_tool.js +0 -43
  809. package/dist/web/tools/forwarding_artifact_service.js +0 -47
  810. package/dist/web/tools/function_tool.js +0 -85
  811. package/dist/web/tools/get_user_choice_tool.js +0 -25
  812. package/dist/web/tools/google_maps_grounding_tool.js +0 -54
  813. package/dist/web/tools/google_search_tool.js +0 -51
  814. package/dist/web/tools/load_artifacts_tool.js +0 -152
  815. package/dist/web/tools/load_memory_tool.js +0 -79
  816. package/dist/web/tools/load_web_page.js +0 -221
  817. package/dist/web/tools/long_running_tool.js +0 -55
  818. package/dist/web/tools/mcp/load_mcp_resource_tool.js +0 -107
  819. package/dist/web/tools/mcp/mcp_session_manager.js +0 -78
  820. package/dist/web/tools/mcp/mcp_tool.js +0 -43
  821. package/dist/web/tools/mcp/mcp_toolset.js +0 -141
  822. package/dist/web/tools/openapi_tool/auth/auth_helpers.js +0 -48
  823. package/dist/web/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +0 -60
  824. package/dist/web/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +0 -111
  825. package/dist/web/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +0 -221
  826. package/dist/web/tools/openapi_tool/openapi_spec_parser/operation_parser.js +0 -198
  827. package/dist/web/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +0 -94
  828. package/dist/web/tools/openapi_tool/openapi_toolset.js +0 -97
  829. package/dist/web/tools/openapi_tool/rest_api_tool.js +0 -229
  830. package/dist/web/tools/preload_memory_tool.js +0 -77
  831. package/dist/web/tools/request_input_tool.js +0 -26
  832. package/dist/web/tools/skill/list_skills_tool.js +0 -50
  833. package/dist/web/tools/skill/load_skill_resource_tool.js +0 -190
  834. package/dist/web/tools/skill/load_skill_tool.js +0 -93
  835. package/dist/web/tools/skill/run_skill_inline_script_tool.js +0 -167
  836. package/dist/web/tools/skill/run_skill_script_tool.js +0 -201
  837. package/dist/web/tools/skill/search_skills_tool.js +0 -82
  838. package/dist/web/tools/skill/skill_toolset.js +0 -160
  839. package/dist/web/tools/tool_confirmation.js +0 -21
  840. package/dist/web/tools/url_context_tool.js +0 -44
  841. package/dist/web/tools/vertex_ai_search_tool.js +0 -103
  842. package/dist/web/tools/vertex_rag_retrieval_tool.js +0 -36
  843. package/dist/web/utils/async_hooks_shim.js +0 -24
  844. package/dist/web/utils/async_queue.js +0 -60
  845. package/dist/web/utils/branch_trie.js +0 -13
  846. package/dist/web/utils/case_utils.js +0 -25
  847. package/dist/web/utils/client_labels.js +0 -64
  848. package/dist/web/utils/crypto_shim.js +0 -15
  849. package/dist/web/utils/env_aware_utils.js +0 -74
  850. package/dist/web/utils/error_utils.js +0 -92
  851. package/dist/web/utils/experimental.js +0 -46
  852. package/dist/web/utils/failover_utils.js +0 -96
  853. package/dist/web/utils/file_extension_utils.js +0 -51
  854. package/dist/web/utils/file_utils.js +0 -103
  855. package/dist/web/utils/gemini_schema_util.js +0 -173
  856. package/dist/web/utils/live_connection_utils.js +0 -254
  857. package/dist/web/utils/logger.js +0 -130
  858. package/dist/web/utils/model_name.js +0 -66
  859. package/dist/web/utils/object_notation_utils.js +0 -49
  860. package/dist/web/utils/output_schema_utils.js +0 -15
  861. package/dist/web/utils/partial_copy.js +0 -23
  862. package/dist/web/utils/simple_zod_to_json.js +0 -123
  863. package/dist/web/utils/streaming_utils.js +0 -430
  864. package/dist/web/utils/task.js +0 -34
  865. package/dist/web/utils/variant_utils.js +0 -20
  866. package/dist/web/utils/vertex_ai_utils.js +0 -24
  867. package/dist/web/version.js +0 -11
  868. /package/dist/{web/artifacts/session_artifact_service.js → esm/tools/resume_inputs.js} +0 -0
  869. /package/dist/{web/auth/base_auth_provider.js → esm/workflow/trigger.js} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@google/adk",
3
- "version": "1.6.0",
3
+ "version": "2.1.0",
4
4
  "description": "Google ADK JS",
5
5
  "author": "Google",
6
6
  "license": "Apache-2.0",
@@ -22,10 +22,46 @@
22
22
  "exports": {
23
23
  ".": {
24
24
  "types": "./dist/types/index.d.ts",
25
+ "browser": "./dist/web/index_web.js",
25
26
  "import": "./dist/esm/index.js",
26
27
  "require": "./dist/cjs/index.js",
27
28
  "default": "./dist/esm/index.js"
28
- }
29
+ },
30
+ "./dist/web/*": {
31
+ "types": "./dist/types/*",
32
+ "default": "./dist/web/*"
33
+ },
34
+ "./a2a": {
35
+ "types": "./dist/types/a2a/index.d.ts",
36
+ "import": "./dist/esm/a2a/index.js",
37
+ "require": "./dist/cjs/a2a/index.js",
38
+ "default": "./dist/esm/a2a/index.js"
39
+ },
40
+ "./artifacts/gcs": {
41
+ "types": "./dist/types/artifacts/gcs_artifact_service.d.ts",
42
+ "import": "./dist/esm/artifacts/gcs_artifact_service.js",
43
+ "require": "./dist/cjs/artifacts/gcs_artifact_service.js",
44
+ "default": "./dist/esm/artifacts/gcs_artifact_service.js"
45
+ },
46
+ "./sessions/database": {
47
+ "types": "./dist/types/sessions/database_session_service.d.ts",
48
+ "import": "./dist/esm/sessions/database_session_service.js",
49
+ "require": "./dist/cjs/sessions/database_session_service.js",
50
+ "default": "./dist/esm/sessions/database_session_service.js"
51
+ },
52
+ "./telemetry/gcp": {
53
+ "types": "./dist/types/telemetry/google_cloud.d.ts",
54
+ "import": "./dist/esm/telemetry/google_cloud.js",
55
+ "require": "./dist/cjs/telemetry/google_cloud.js",
56
+ "default": "./dist/esm/telemetry/google_cloud.js"
57
+ },
58
+ "./tools/mcp": {
59
+ "types": "./dist/types/tools/mcp/index.d.ts",
60
+ "import": "./dist/esm/tools/mcp/index.js",
61
+ "require": "./dist/cjs/tools/mcp/index.js",
62
+ "default": "./dist/esm/tools/mcp/index.js"
63
+ },
64
+ "./package.json": "./package.json"
29
65
  },
30
66
  "scripts": {
31
67
  "clean": "rm -rf dist",
@@ -41,27 +77,22 @@
41
77
  },
42
78
  "dependencies": {
43
79
  "@a2a-js/sdk": "^0.3.10",
44
- "@google-cloud/opentelemetry-cloud-monitoring-exporter": "^0.21.0",
45
- "@google-cloud/opentelemetry-cloud-trace-exporter": "^3.0.0",
46
- "@google-cloud/storage": "^7.17.1",
47
80
  "@google-cloud/vertexai": "^1.12.0",
48
81
  "@google/genai": "^2.9.0",
49
- "@mikro-orm/core": "^6.6.10",
50
- "@mikro-orm/reflection": "^6.6.6",
51
- "@modelcontextprotocol/sdk": "^1.26.0",
82
+ "@mikro-orm/core": "^7.2.0",
52
83
  "@opentelemetry/api": "1.9.0",
53
- "@opentelemetry/api-logs": "^0.205.0",
54
- "@opentelemetry/exporter-logs-otlp-http": "^0.205.0",
55
- "@opentelemetry/exporter-metrics-otlp-http": "^0.205.0",
56
- "@opentelemetry/exporter-trace-otlp-http": "^0.205.0",
84
+ "@opentelemetry/api-logs": "^0.222.0",
85
+ "@opentelemetry/exporter-logs-otlp-http": "^0.222.0",
86
+ "@opentelemetry/exporter-metrics-otlp-http": "^0.222.0",
87
+ "@opentelemetry/exporter-trace-otlp-http": "^0.222.0",
57
88
  "@opentelemetry/resource-detector-gcp": "^0.40.0",
58
89
  "@opentelemetry/resources": "^2.1.0",
59
- "@opentelemetry/sdk-logs": "^0.205.0",
90
+ "@opentelemetry/sdk-logs": "^0.222.0",
60
91
  "@opentelemetry/sdk-metrics": "^2.1.0",
61
92
  "@opentelemetry/sdk-trace-base": "^2.1.0",
62
93
  "@opentelemetry/sdk-trace-node": "^2.1.0",
94
+ "@types/dockerode": "^4.0.1",
63
95
  "adm-zip": "^0.5.17",
64
- "express": "^4.22.1",
65
96
  "google-auth-library": "^10.3.0",
66
97
  "js-yaml": "^4.1.1",
67
98
  "jsonpath-plus": "^10.4.0",
@@ -70,18 +101,64 @@
70
101
  "zod": "^4.2.1",
71
102
  "zod-to-json-schema": "^3.25.1"
72
103
  },
104
+ "optionalDependencies": {
105
+ "dockerode": "^5.0.1"
106
+ },
73
107
  "devDependencies": {
74
- "@mikro-orm/sqlite": "^6.6.6",
108
+ "@google-cloud/opentelemetry-cloud-monitoring-exporter": "^0.21.0",
109
+ "@google-cloud/opentelemetry-cloud-trace-exporter": "^3.0.0",
110
+ "@google-cloud/storage": "^7.17.1",
111
+ "@mikro-orm/sqlite": "^7.2.0",
112
+ "@modelcontextprotocol/sdk": "^1.26.0",
113
+ "@opentelemetry/context-async-hooks": "^2.1.0",
75
114
  "@types/adm-zip": "^0.5.8",
76
115
  "@types/express": "^4.17.25",
77
116
  "@types/lodash-es": "^4.17.12",
117
+ "express": "^4.22.1",
78
118
  "openapi-types": "^12.1.3"
79
119
  },
80
120
  "peerDependencies": {
81
- "@mikro-orm/mariadb": "^6.6.6",
82
- "@mikro-orm/mssql": "^6.6.6",
83
- "@mikro-orm/mysql": "^6.6.6",
84
- "@mikro-orm/postgresql": "^6.6.6",
85
- "@mikro-orm/sqlite": "^6.6.6"
121
+ "@google-cloud/opentelemetry-cloud-monitoring-exporter": "^0.21.0",
122
+ "@google-cloud/opentelemetry-cloud-trace-exporter": "^3.0.0",
123
+ "@google-cloud/storage": "^7.17.1",
124
+ "@mikro-orm/mariadb": "^7.2.0",
125
+ "@mikro-orm/mssql": "^7.2.0",
126
+ "@mikro-orm/mysql": "^7.2.0",
127
+ "@mikro-orm/postgresql": "^7.2.0",
128
+ "@mikro-orm/sqlite": "^7.2.0",
129
+ "@modelcontextprotocol/sdk": "^1.26.0",
130
+ "express": "^4.22.1 || ^5.1.0"
131
+ },
132
+ "peerDependenciesMeta": {
133
+ "@google-cloud/opentelemetry-cloud-monitoring-exporter": {
134
+ "optional": true
135
+ },
136
+ "@google-cloud/opentelemetry-cloud-trace-exporter": {
137
+ "optional": true
138
+ },
139
+ "@google-cloud/storage": {
140
+ "optional": true
141
+ },
142
+ "@mikro-orm/mariadb": {
143
+ "optional": true
144
+ },
145
+ "@mikro-orm/mssql": {
146
+ "optional": true
147
+ },
148
+ "@mikro-orm/mysql": {
149
+ "optional": true
150
+ },
151
+ "@mikro-orm/postgresql": {
152
+ "optional": true
153
+ },
154
+ "@mikro-orm/sqlite": {
155
+ "optional": true
156
+ },
157
+ "@modelcontextprotocol/sdk": {
158
+ "optional": true
159
+ },
160
+ "express": {
161
+ "optional": true
162
+ }
86
163
  }
87
164
  }
@@ -1,271 +0,0 @@
1
- import {createRequire as topLevelCreateRequire} from 'module';
2
- const require = topLevelCreateRequire(import.meta.url);
3
- /**
4
- * @license
5
- * Copyright 2026 Google LLC
6
- * SPDX-License-Identifier: Apache-2.0
7
- */
8
- import { randomUUID } from "../utils/env_aware_utils.js";
9
- var MessageRole = /* @__PURE__ */ ((MessageRole2) => {
10
- MessageRole2["USER"] = "user";
11
- MessageRole2["AGENT"] = "agent";
12
- return MessageRole2;
13
- })(MessageRole || {});
14
- var TaskState = /* @__PURE__ */ ((TaskState2) => {
15
- TaskState2["SUBMITTED"] = "submitted";
16
- TaskState2["WORKING"] = "working";
17
- TaskState2["COMPLETED"] = "completed";
18
- TaskState2["FAILED"] = "failed";
19
- TaskState2["CANCELED"] = "canceled";
20
- TaskState2["REJECTED"] = "rejected";
21
- TaskState2["INPUT_REQUIRED"] = "input-required";
22
- return TaskState2;
23
- })(TaskState || {});
24
- function isTaskStatusUpdateEvent(event) {
25
- return (event == null ? void 0 : event.kind) === "status-update";
26
- }
27
- function isTaskArtifactUpdateEvent(event) {
28
- return (event == null ? void 0 : event.kind) === "artifact-update";
29
- }
30
- function isMessage(event) {
31
- return (event == null ? void 0 : event.kind) === "message";
32
- }
33
- function isTask(event) {
34
- return (event == null ? void 0 : event.kind) === "task";
35
- }
36
- function getEventMetadata(event) {
37
- if (isTaskArtifactUpdateEvent(event)) {
38
- return event.artifact.metadata || {};
39
- }
40
- if (isTaskStatusUpdateEvent(event) || isTask(event) || isMessage(event)) {
41
- return event.metadata || {};
42
- }
43
- return {};
44
- }
45
- function isFailedTaskStatusUpdateEvent(event) {
46
- return (isTaskStatusUpdateEvent(event) || isTask(event)) && event.status.state === "failed" /* FAILED */;
47
- }
48
- function isTerminalTaskStatusUpdateEvent(event) {
49
- return (isTaskStatusUpdateEvent(event) || isTask(event)) && [
50
- "completed" /* COMPLETED */,
51
- "failed" /* FAILED */,
52
- "canceled" /* CANCELED */,
53
- "rejected" /* REJECTED */
54
- ].includes(event.status.state);
55
- }
56
- function isInputRequiredTaskStatusUpdateEvent(event) {
57
- return (isTaskStatusUpdateEvent(event) || isTask(event)) && event.status.state === "input-required" /* INPUT_REQUIRED */;
58
- }
59
- function getFailedTaskStatusUpdateEventError(event) {
60
- var _a;
61
- if (!isFailedTaskStatusUpdateEvent(event)) {
62
- return void 0;
63
- }
64
- const parts = ((_a = event.status.message) == null ? void 0 : _a.parts) || [];
65
- if (parts.length === 0) {
66
- return void 0;
67
- }
68
- if (parts[0].kind !== "text") {
69
- return void 0;
70
- }
71
- return parts[0].text;
72
- }
73
- function createTaskSubmittedEvent({
74
- taskId,
75
- contextId,
76
- message,
77
- metadata
78
- }) {
79
- return {
80
- kind: "status-update",
81
- taskId,
82
- contextId,
83
- final: false,
84
- status: {
85
- state: "submitted" /* SUBMITTED */,
86
- message,
87
- timestamp: (/* @__PURE__ */ new Date()).toISOString()
88
- },
89
- metadata
90
- };
91
- }
92
- function createTask({
93
- contextId,
94
- message,
95
- taskId,
96
- metadata
97
- }) {
98
- return {
99
- kind: "task",
100
- id: taskId || randomUUID(),
101
- contextId,
102
- history: [message],
103
- status: {
104
- state: "submitted" /* SUBMITTED */,
105
- timestamp: (/* @__PURE__ */ new Date()).toISOString()
106
- },
107
- metadata
108
- };
109
- }
110
- function createTaskWorkingEvent({
111
- taskId,
112
- contextId,
113
- message,
114
- metadata
115
- }) {
116
- return {
117
- kind: "status-update",
118
- taskId,
119
- contextId,
120
- final: false,
121
- status: {
122
- state: "working" /* WORKING */,
123
- message,
124
- timestamp: (/* @__PURE__ */ new Date()).toISOString()
125
- },
126
- metadata
127
- };
128
- }
129
- function createTaskCompletedEvent({
130
- taskId,
131
- contextId,
132
- metadata
133
- }) {
134
- return {
135
- kind: "status-update",
136
- taskId,
137
- contextId,
138
- final: true,
139
- status: {
140
- state: "completed" /* COMPLETED */,
141
- timestamp: (/* @__PURE__ */ new Date()).toISOString()
142
- },
143
- metadata
144
- };
145
- }
146
- function createTaskArtifactUpdateEvent({
147
- taskId,
148
- contextId,
149
- artifactId,
150
- parts = [],
151
- metadata,
152
- append,
153
- lastChunk
154
- }) {
155
- return {
156
- kind: "artifact-update",
157
- taskId,
158
- contextId,
159
- append,
160
- lastChunk,
161
- artifact: {
162
- artifactId: artifactId || randomUUID(),
163
- parts
164
- },
165
- metadata
166
- };
167
- }
168
- function createTaskFailedEvent({
169
- taskId,
170
- contextId,
171
- error,
172
- metadata
173
- }) {
174
- return {
175
- kind: "status-update",
176
- taskId,
177
- contextId,
178
- final: true,
179
- status: {
180
- state: "failed" /* FAILED */,
181
- message: {
182
- kind: "message",
183
- messageId: randomUUID(),
184
- role: "agent",
185
- taskId,
186
- contextId,
187
- parts: [
188
- {
189
- kind: "text",
190
- text: error.message
191
- }
192
- ]
193
- },
194
- timestamp: (/* @__PURE__ */ new Date()).toISOString()
195
- },
196
- metadata
197
- };
198
- }
199
- function createTaskInputRequiredEvent({
200
- taskId,
201
- contextId,
202
- parts,
203
- metadata
204
- }) {
205
- return {
206
- kind: "status-update",
207
- taskId,
208
- contextId,
209
- final: true,
210
- status: {
211
- state: "input-required" /* INPUT_REQUIRED */,
212
- message: {
213
- kind: "message",
214
- messageId: randomUUID(),
215
- role: "agent",
216
- taskId,
217
- contextId,
218
- parts
219
- },
220
- timestamp: (/* @__PURE__ */ new Date()).toISOString()
221
- },
222
- metadata
223
- };
224
- }
225
- function createInputMissingErrorEvent({
226
- taskId,
227
- contextId,
228
- parts,
229
- metadata
230
- }) {
231
- return {
232
- kind: "status-update",
233
- taskId,
234
- contextId,
235
- final: true,
236
- status: {
237
- state: "input-required" /* INPUT_REQUIRED */,
238
- message: {
239
- kind: "message",
240
- messageId: randomUUID(),
241
- role: "agent",
242
- taskId,
243
- contextId,
244
- parts
245
- },
246
- timestamp: (/* @__PURE__ */ new Date()).toISOString()
247
- },
248
- metadata
249
- };
250
- }
251
- export {
252
- MessageRole,
253
- TaskState,
254
- createInputMissingErrorEvent,
255
- createTask,
256
- createTaskArtifactUpdateEvent,
257
- createTaskCompletedEvent,
258
- createTaskFailedEvent,
259
- createTaskInputRequiredEvent,
260
- createTaskSubmittedEvent,
261
- createTaskWorkingEvent,
262
- getEventMetadata,
263
- getFailedTaskStatusUpdateEventError,
264
- isFailedTaskStatusUpdateEvent,
265
- isInputRequiredTaskStatusUpdateEvent,
266
- isMessage,
267
- isTask,
268
- isTaskArtifactUpdateEvent,
269
- isTaskStatusUpdateEvent,
270
- isTerminalTaskStatusUpdateEvent
271
- };
@@ -1,196 +0,0 @@
1
- import {createRequire as topLevelCreateRequire} from 'module';
2
- const require = topLevelCreateRequire(import.meta.url);
3
- var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
4
- var __await = function(promise, isYieldStar) {
5
- this[0] = promise;
6
- this[1] = isYieldStar;
7
- };
8
- var __asyncGenerator = (__this, __arguments, generator) => {
9
- var resume = (k, v, yes, no) => {
10
- try {
11
- var x = generator[k](v), isAwait = (v = x.value) instanceof __await, done = x.done;
12
- Promise.resolve(isAwait ? v[0] : v).then((y) => isAwait ? resume(k === "return" ? k : "next", v[1] ? { done: y.done, value: y.value } : y, yes, no) : yes({ value: y, done })).catch((e) => resume("throw", e, yes, no));
13
- } catch (e) {
14
- no(e);
15
- }
16
- }, method = (k) => it[k] = (x) => new Promise((yes, no) => resume(k, x, yes, no)), it = {};
17
- return generator = generator.apply(__this, __arguments), it[__knownSymbol("asyncIterator")] = () => it, method("next"), method("throw"), method("return"), it;
18
- };
19
- var __forAwait = (obj, it, method) => (it = obj[__knownSymbol("asyncIterator")]) ? it.call(obj) : (obj = obj[__knownSymbol("iterator")](), it = {}, method = (key, fn) => (fn = obj[key]) && (it[key] = (arg) => new Promise((yes, no, done) => (arg = fn.call(obj, arg), done = arg.done, Promise.resolve(arg.value).then((value) => yes({ value, done }), no)))), method("next"), method("return"), it);
20
- /**
21
- * @license
22
- * Copyright 2026 Google LLC
23
- * SPDX-License-Identifier: Apache-2.0
24
- */
25
- import {
26
- AGENT_CARD_PATH
27
- } from "@a2a-js/sdk";
28
- import { ClientFactory } from "@a2a-js/sdk/client";
29
- import { BaseAgent } from "../agents/base_agent.js";
30
- import { createEvent } from "../events/event.js";
31
- import { randomUUID } from "../utils/env_aware_utils.js";
32
- import { logger } from "../utils/logger.js";
33
- import { MessageRole } from "./a2a_event.js";
34
- import { A2ARemoteAgentRunProcessor } from "./a2a_remote_agent_run_processor.js";
35
- import {
36
- getUserFunctionCallAt,
37
- toMissingRemoteSessionParts
38
- } from "./a2a_remote_agent_utils.js";
39
- import { resolveAgentCard } from "./agent_card.js";
40
- import { toAdkEvent } from "./event_converter_utils.js";
41
- import { getA2ASessionMetadata } from "./metadata_converter_utils.js";
42
- import { toA2AParts } from "./part_converter_utils.js";
43
- class RemoteA2AAgent extends BaseAgent {
44
- constructor(a2aConfig) {
45
- super(a2aConfig);
46
- this.a2aConfig = a2aConfig;
47
- this.isInitialized = false;
48
- if (!a2aConfig.agentCard && !a2aConfig.client) {
49
- throw new Error("Either AgentCard or Client must be provided");
50
- }
51
- }
52
- async init() {
53
- if (this.isInitialized) {
54
- return;
55
- }
56
- if (this.a2aConfig.client) {
57
- this.client = this.a2aConfig.client;
58
- }
59
- if (this.a2aConfig.agentCard) {
60
- this.card = await resolveAgentCard(this.a2aConfig.agentCard);
61
- if (!this.client) {
62
- const factory = this.a2aConfig.clientFactory || new ClientFactory();
63
- this.client = await factory.createFromAgentCard(this.card);
64
- }
65
- }
66
- this.isInitialized = true;
67
- }
68
- runAsyncImpl(context) {
69
- return __asyncGenerator(this, null, function* () {
70
- var _a, _b;
71
- yield new __await(this.init());
72
- try {
73
- const events = context.session.events;
74
- if (events.length === 0) {
75
- throw new Error("No events in session to send");
76
- }
77
- const userFnCall = getUserFunctionCallAt(
78
- context.session,
79
- events.length - 1
80
- );
81
- let parts;
82
- let taskId = void 0;
83
- let contextId = void 0;
84
- if (userFnCall) {
85
- const event = userFnCall.response;
86
- parts = toA2AParts(
87
- ((_a = event.content) == null ? void 0 : _a.parts) || [],
88
- event.longRunningToolIds
89
- );
90
- taskId = userFnCall.taskId;
91
- contextId = userFnCall.contextId;
92
- } else {
93
- const missing = toMissingRemoteSessionParts(context, context.session);
94
- parts = missing.parts;
95
- contextId = missing.contextId;
96
- }
97
- const message = {
98
- kind: "message",
99
- messageId: randomUUID(),
100
- role: MessageRole.USER,
101
- parts,
102
- metadata: getA2ASessionMetadata({
103
- appName: context.session.appName,
104
- userId: context.session.userId,
105
- sessionId: context.session.id
106
- })
107
- };
108
- if (taskId) message.taskId = taskId;
109
- if (contextId) message.contextId = contextId;
110
- const params = {
111
- message,
112
- configuration: this.a2aConfig.messageSendConfig
113
- };
114
- const processor = new A2ARemoteAgentRunProcessor(params);
115
- if (this.a2aConfig.beforeRequestCallbacks) {
116
- for (const callback of this.a2aConfig.beforeRequestCallbacks) {
117
- yield new __await(callback(context, params));
118
- }
119
- }
120
- const useStreaming = this.card ? ((_b = this.card.capabilities) == null ? void 0 : _b.streaming) !== false : true;
121
- if (useStreaming) {
122
- try {
123
- for (var iter = __forAwait(this.client.sendMessageStream(params)), more, temp, error; more = !(temp = yield new __await(iter.next())).done; more = false) {
124
- const chunk = temp.value;
125
- if (this.a2aConfig.afterRequestCallbacks) {
126
- for (const callback of this.a2aConfig.afterRequestCallbacks) {
127
- yield new __await(callback(context, chunk));
128
- }
129
- }
130
- const adkEvent = toAdkEvent(
131
- chunk,
132
- context.invocationId,
133
- this.name,
134
- context.branch
135
- );
136
- if (!adkEvent) {
137
- continue;
138
- }
139
- processor.updateCustomMetadata(adkEvent, chunk);
140
- const eventsToEmit = processor.aggregatePartial(
141
- context,
142
- chunk,
143
- adkEvent
144
- );
145
- for (const ev of eventsToEmit) {
146
- yield ev;
147
- }
148
- }
149
- } catch (temp) {
150
- error = [temp];
151
- } finally {
152
- try {
153
- more && (temp = iter.return) && (yield new __await(temp.call(iter)));
154
- } finally {
155
- if (error)
156
- throw error[0];
157
- }
158
- }
159
- } else {
160
- const result = yield new __await(this.client.sendMessage(params));
161
- if (this.a2aConfig.afterRequestCallbacks) {
162
- for (const callback of this.a2aConfig.afterRequestCallbacks) {
163
- yield new __await(callback(context, result));
164
- }
165
- }
166
- const adkEvent = toAdkEvent(
167
- result,
168
- context.invocationId,
169
- this.name,
170
- context.branch
171
- );
172
- if (adkEvent) {
173
- processor.updateCustomMetadata(adkEvent, result);
174
- yield adkEvent;
175
- }
176
- }
177
- } catch (e) {
178
- const error2 = e;
179
- logger.error("A2ARemoteAgent ".concat(this.name, " failed:"), error2);
180
- yield createEvent({
181
- author: this.name,
182
- invocationId: context.invocationId,
183
- errorMessage: error2.message,
184
- turnComplete: true
185
- });
186
- }
187
- });
188
- }
189
- runLiveImpl(_context) {
190
- throw new Error("Live mode is not supported in A2ARemoteAgent yet.");
191
- }
192
- }
193
- export {
194
- AGENT_CARD_PATH,
195
- RemoteA2AAgent
196
- };