@google/adk 1.6.0 → 2.0.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 (781) hide show
  1. package/dist/cjs/a2a/a2a_event.js +18 -0
  2. package/dist/cjs/a2a/a2a_remote_agent.js +5 -2
  3. package/dist/cjs/a2a/a2a_remote_agent_run_processor.js +7 -3
  4. package/dist/cjs/a2a/a2a_remote_agent_utils.js +9 -2
  5. package/dist/cjs/a2a/agent_card.js +33 -3
  6. package/dist/cjs/a2a/agent_executor.js +25 -16
  7. package/dist/cjs/a2a/agent_to_a2a.js +22 -10
  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 +2 -0
  12. package/dist/cjs/a2a/index.js +53 -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/agents/active_streaming_tool.js +5 -2
  16. package/dist/cjs/agents/base_agent.js +46 -9
  17. package/dist/cjs/agents/context.js +5 -2
  18. package/dist/cjs/agents/framework_function_calls.js +64 -0
  19. package/dist/cjs/agents/functions.js +38 -16
  20. package/dist/cjs/agents/instructions.js +51 -12
  21. package/dist/cjs/agents/invocation_context.js +42 -8
  22. package/dist/cjs/agents/live_request_queue.js +29 -5
  23. package/dist/cjs/agents/llm_agent.js +535 -45
  24. package/dist/cjs/agents/loop_agent.js +19 -2
  25. package/dist/cjs/agents/parallel_agent.js +21 -2
  26. package/dist/cjs/agents/processors/agent_transfer_llm_request_processor.js +7 -4
  27. package/dist/cjs/agents/processors/base_llm_processor.js +9 -4
  28. package/dist/cjs/agents/processors/basic_llm_request_processor.js +6 -3
  29. package/dist/cjs/agents/processors/code_execution_request_processor.js +18 -5
  30. package/dist/cjs/agents/processors/content_processor_utils.js +85 -15
  31. package/dist/cjs/agents/processors/content_request_processor.js +9 -4
  32. package/dist/cjs/agents/processors/context_compactor_request_processor.js +5 -2
  33. package/dist/cjs/agents/processors/identity_llm_request_processor.js +12 -4
  34. package/dist/cjs/agents/processors/instructions_llm_request_processor.js +5 -2
  35. package/dist/cjs/agents/processors/interactions_request_processor.js +5 -2
  36. package/dist/cjs/agents/processors/request_confirmation_llm_request_processor.js +313 -92
  37. package/dist/cjs/agents/processors/request_input_llm_request_processor.js +218 -0
  38. package/dist/cjs/agents/processors/tool_filter_request_processor.js +5 -2
  39. package/dist/cjs/agents/readonly_context.js +7 -3
  40. package/dist/cjs/agents/routed_agent.js +6 -13
  41. package/dist/cjs/agents/run_config.js +12 -0
  42. package/dist/cjs/agents/sequential_agent.js +20 -3
  43. package/dist/cjs/agents/user_input_request.js +145 -0
  44. package/dist/cjs/apps/app.js +11 -11
  45. package/dist/cjs/apps/resumability_config.js +2 -0
  46. package/dist/cjs/artifacts/file_artifact_service.js +21 -2
  47. package/dist/cjs/artifacts/gcs_artifact_service.js +46 -11
  48. package/dist/cjs/artifacts/in_memory_artifact_service.js +9 -2
  49. package/dist/cjs/artifacts/registry.js +6 -1
  50. package/dist/cjs/artifacts/scoped_artifact_service.js +5 -2
  51. package/dist/cjs/auth/auth_handler.js +5 -2
  52. package/dist/cjs/auth/auth_preprocessor.js +48 -40
  53. package/dist/cjs/auth/auth_provider_registry.js +5 -2
  54. package/dist/cjs/auth/auth_schemes.js +2 -0
  55. package/dist/cjs/auth/credential_response_binding.js +101 -0
  56. package/dist/cjs/auth/credential_service/in_memory_credential_service.js +5 -2
  57. package/dist/cjs/auth/credential_service/session_state_credential_service.js +5 -2
  58. package/dist/cjs/auth/exchanger/base_credential_exchanger.js +5 -2
  59. package/dist/cjs/auth/exchanger/credential_exchanger_registry.js +5 -2
  60. package/dist/cjs/auth/oauth2/oauth2_credential_exchanger.js +8 -2
  61. package/dist/cjs/auth/oauth2/oauth2_credential_refresher.js +5 -2
  62. package/dist/cjs/auth/oauth2/oauth2_discovery.js +7 -2
  63. package/dist/cjs/auth/oauth2/oauth2_utils.js +6 -0
  64. package/dist/cjs/auth/refresher/base_credential_refresher.js +5 -2
  65. package/dist/cjs/auth/refresher/credential_refresher_registry.js +5 -2
  66. package/dist/cjs/code_executors/agent_engine_sandbox_code_executor.js +3 -0
  67. package/dist/cjs/code_executors/base_code_executor.js +6 -2
  68. package/dist/cjs/code_executors/built_in_code_executor.js +6 -2
  69. package/dist/cjs/code_executors/code_execution_utils.js +6 -0
  70. package/dist/cjs/code_executors/code_executor_context.js +5 -2
  71. package/dist/cjs/code_executors/unsafe_local_code_executor.js +8 -2
  72. package/dist/cjs/common.js +106 -1
  73. package/dist/cjs/context/agent_controlled_context_compactor.js +5 -2
  74. package/dist/cjs/context/anchored_context_compactor.js +5 -2
  75. package/dist/cjs/context/compaction_utils.js +3 -0
  76. package/dist/cjs/context/summarizers/llm_summarizer.js +5 -2
  77. package/dist/cjs/context/token_based_context_compactor.js +9 -3
  78. package/dist/cjs/context/trajectory_thought_pruning_compactor.js +5 -2
  79. package/dist/cjs/context/truncating_context_compactor.js +5 -2
  80. package/dist/cjs/environment/base_environment.js +97 -0
  81. package/dist/cjs/environment/local_environment.js +186 -0
  82. package/dist/cjs/events/compacted_event.js +4 -0
  83. package/dist/cjs/events/event.js +38 -3
  84. package/dist/cjs/events/event_actions.js +5 -0
  85. package/dist/cjs/events/structured_events.js +2 -0
  86. package/dist/cjs/examples/base_example_provider.js +6 -2
  87. package/dist/cjs/examples/example_util.js +3 -0
  88. package/dist/cjs/features/feature_registry.js +7 -0
  89. package/dist/cjs/index.js +7 -25
  90. package/dist/cjs/integrations/agent_registry/agent_registry.js +7 -4
  91. package/dist/cjs/integrations/agent_registry/agent_registry_mcp_toolset.js +7 -4
  92. package/dist/cjs/integrations/agent_registry/helpers.js +3 -0
  93. package/dist/cjs/memory/in_memory_memory_service.js +8 -2
  94. package/dist/cjs/memory/vertex_ai_memory_bank_service.js +17 -2
  95. package/dist/cjs/models/apigee_llm.js +9 -3
  96. package/dist/cjs/models/base_llm.js +7 -3
  97. package/dist/cjs/models/gemini_llm_connection.js +5 -2
  98. package/dist/cjs/models/google_llm.js +24 -12
  99. package/dist/cjs/models/interactions_utils.js +16 -0
  100. package/dist/cjs/models/llm_request.js +4 -0
  101. package/dist/cjs/models/llm_response.js +2 -0
  102. package/dist/cjs/models/registry.js +6 -2
  103. package/dist/cjs/models/routed_llm.js +4 -13
  104. package/dist/cjs/plugins/base_plugin.js +39 -5
  105. package/dist/cjs/plugins/global_instruction_plugin.js +5 -2
  106. package/dist/cjs/plugins/logging_plugin.js +13 -8
  107. package/dist/cjs/plugins/plugin_manager.js +37 -2
  108. package/dist/cjs/plugins/security_plugin.js +15 -8
  109. package/dist/cjs/runner/in_memory_runner.js +5 -2
  110. package/dist/cjs/runner/runner.js +208 -18
  111. package/dist/cjs/sessions/base_session_service.js +13 -2
  112. package/dist/cjs/sessions/database_session_service.js +6 -2
  113. package/dist/cjs/sessions/db/operations.js +34 -6
  114. package/dist/cjs/sessions/db/schema.js +16 -8
  115. package/dist/cjs/sessions/in_memory_session_service.js +22 -14
  116. package/dist/cjs/sessions/registry.js +4 -1
  117. package/dist/cjs/sessions/session.js +2 -0
  118. package/dist/cjs/sessions/state.js +80 -8
  119. package/dist/cjs/sessions/state_write_order.js +105 -0
  120. package/dist/cjs/sessions/vertex_ai_session_service.js +110 -15
  121. package/dist/cjs/skills/gcp_skill_registry.js +2 -0
  122. package/dist/cjs/skills/loader.js +22 -10
  123. package/dist/cjs/skills/prompt.js +3 -0
  124. package/dist/cjs/telemetry/google_cloud.js +42 -9
  125. package/dist/cjs/telemetry/setup.js +5 -0
  126. package/dist/cjs/telemetry/tracing.js +60 -4
  127. package/dist/cjs/tools/agent_tool.js +6 -2
  128. package/dist/cjs/tools/base_tool.js +24 -2
  129. package/dist/cjs/tools/base_toolset.js +6 -2
  130. package/dist/cjs/tools/consolidate_context_tool.js +5 -2
  131. package/dist/cjs/tools/enterprise_web_search_tool.js +6 -2
  132. package/dist/cjs/tools/example_tool.js +5 -2
  133. package/dist/cjs/tools/exit_loop_tool.js +5 -2
  134. package/dist/cjs/tools/finish_task_tool.js +119 -0
  135. package/dist/cjs/tools/forwarding_artifact_service.js +5 -2
  136. package/dist/cjs/tools/function_tool.js +73 -8
  137. package/dist/cjs/tools/get_user_choice_tool.js +3 -2
  138. package/dist/cjs/tools/google_maps_grounding_tool.js +6 -2
  139. package/dist/cjs/tools/google_search_tool.js +5 -2
  140. package/dist/cjs/tools/load_artifacts_tool.js +8 -2
  141. package/dist/cjs/tools/load_memory_tool.js +5 -2
  142. package/dist/cjs/tools/load_web_page.js +21 -1
  143. package/dist/cjs/tools/long_running_tool.js +5 -2
  144. package/dist/cjs/tools/mcp/index.js +39 -0
  145. package/dist/cjs/tools/mcp/load_mcp_resource_tool.js +5 -2
  146. package/dist/cjs/tools/mcp/mcp_session_manager.js +36 -8
  147. package/dist/cjs/tools/mcp/mcp_tool.js +5 -2
  148. package/dist/cjs/tools/mcp/mcp_toolset.js +5 -2
  149. package/dist/cjs/tools/openapi_tool/auth/auth_helpers.js +4 -0
  150. package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +2 -0
  151. package/dist/cjs/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +2 -0
  152. package/dist/cjs/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +30 -9
  153. package/dist/cjs/tools/openapi_tool/openapi_spec_parser/operation_parser.js +2 -0
  154. package/dist/cjs/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +6 -2
  155. package/dist/cjs/tools/openapi_tool/openapi_toolset.js +2 -0
  156. package/dist/cjs/tools/openapi_tool/rest_api_tool.js +23 -5
  157. package/dist/cjs/tools/preload_memory_tool.js +5 -2
  158. package/dist/cjs/tools/request_input_tool.js +6 -4
  159. package/dist/cjs/tools/skill/list_skills_tool.js +2 -0
  160. package/dist/cjs/tools/skill/load_skill_resource_tool.js +2 -0
  161. package/dist/cjs/tools/skill/load_skill_tool.js +4 -1
  162. package/dist/cjs/tools/skill/run_skill_inline_script_tool.js +8 -2
  163. package/dist/cjs/tools/skill/run_skill_script_tool.js +10 -2
  164. package/dist/cjs/tools/skill/search_skills_tool.js +2 -0
  165. package/dist/cjs/tools/skill/skill_toolset.js +35 -0
  166. package/dist/cjs/tools/tool_confirmation.js +26 -3
  167. package/dist/cjs/tools/url_context_tool.js +5 -2
  168. package/dist/cjs/tools/vertex_ai_search_tool.js +5 -2
  169. package/dist/cjs/tools/vertex_rag_retrieval_tool.js +5 -2
  170. package/dist/cjs/utils/async_hooks_shim.js +5 -2
  171. package/dist/cjs/utils/async_queue.js +45 -18
  172. package/dist/cjs/utils/branch_trie.js +2 -0
  173. package/dist/cjs/utils/case_utils.js +2 -0
  174. package/dist/cjs/utils/client_labels.js +5 -0
  175. package/dist/cjs/utils/crypto_shim.js +2 -0
  176. package/dist/cjs/utils/deprecated.js +68 -0
  177. package/dist/cjs/utils/env_aware_utils.js +41 -0
  178. package/dist/cjs/utils/error_utils.js +8 -0
  179. package/dist/cjs/utils/experimental.js +9 -2
  180. package/dist/cjs/utils/failover_utils.js +3 -0
  181. package/dist/cjs/utils/file_extension_utils.js +3 -0
  182. package/dist/cjs/utils/file_utils.js +7 -2
  183. package/dist/cjs/utils/gemini_schema_util.js +6 -2
  184. package/dist/cjs/utils/genai_schema_to_json.js +107 -0
  185. package/dist/cjs/utils/live_connection_utils.js +5 -2
  186. package/dist/cjs/utils/logger.js +13 -4
  187. package/dist/cjs/utils/model_name.js +8 -0
  188. package/dist/cjs/utils/object_notation_utils.js +7 -3
  189. package/dist/cjs/utils/optional_peer.js +68 -0
  190. package/dist/cjs/utils/output_schema_utils.js +2 -0
  191. package/dist/cjs/utils/partial_copy.js +2 -0
  192. package/dist/cjs/utils/redact_uri.js +66 -0
  193. package/dist/cjs/utils/schema.js +178 -0
  194. package/dist/cjs/utils/simple_zod_to_json.js +17 -4
  195. package/dist/cjs/utils/streaming_utils.js +14 -6
  196. package/dist/cjs/utils/task.js +7 -4
  197. package/dist/cjs/utils/variant_utils.js +3 -1
  198. package/dist/cjs/utils/vertex_ai_utils.js +3 -1
  199. package/dist/cjs/version.js +1 -1
  200. package/dist/cjs/workflow/base_node.js +211 -0
  201. package/dist/cjs/workflow/branch_path.js +108 -0
  202. package/dist/cjs/workflow/dynamic_node_scheduler.js +220 -0
  203. package/dist/cjs/workflow/errors.js +178 -0
  204. package/dist/cjs/workflow/graph.js +158 -0
  205. package/dist/cjs/workflow/index.js +131 -0
  206. package/dist/cjs/workflow/node.js +65 -0
  207. package/dist/cjs/workflow/node_builders.js +68 -0
  208. package/dist/cjs/workflow/node_context.js +246 -0
  209. package/dist/cjs/workflow/node_error_event.js +86 -0
  210. package/dist/cjs/workflow/node_runner.js +459 -0
  211. package/dist/cjs/workflow/node_state.js +57 -0
  212. package/dist/cjs/workflow/node_status.js +48 -0
  213. package/dist/cjs/workflow/nodes/function_node.js +195 -0
  214. package/dist/cjs/workflow/nodes/join_node.js +56 -0
  215. package/dist/cjs/workflow/nodes/node_tool.js +156 -0
  216. package/dist/cjs/workflow/nodes/parallel_worker.js +129 -0
  217. package/dist/cjs/workflow/nodes/tool_node.js +117 -0
  218. package/dist/cjs/workflow/request_input.js +64 -0
  219. package/dist/cjs/workflow/retry_config.js +71 -0
  220. package/dist/cjs/workflow/run_llm_agent_as_node.js +192 -0
  221. package/dist/cjs/workflow/run_node_as_invocation.js +165 -0
  222. package/dist/cjs/workflow/schedule_dynamic_node.js +53 -0
  223. package/dist/cjs/workflow/trigger.js +27 -0
  224. package/dist/cjs/workflow/utils/graph_parser.js +212 -0
  225. package/dist/cjs/workflow/utils/graph_validation.js +216 -0
  226. package/dist/cjs/workflow/utils/hitl_utils.js +252 -0
  227. package/dist/cjs/workflow/utils/rehydration_utils.js +373 -0
  228. package/dist/cjs/workflow/utils/retry_utils.js +112 -0
  229. package/dist/cjs/workflow/utils/workflow_graph_utils.js +144 -0
  230. package/dist/cjs/workflow/workflow.js +509 -0
  231. package/dist/esm/a2a/a2a_event.js +19 -0
  232. package/dist/esm/a2a/a2a_remote_agent.js +6 -2
  233. package/dist/esm/a2a/a2a_remote_agent_run_processor.js +8 -3
  234. package/dist/esm/a2a/a2a_remote_agent_utils.js +10 -2
  235. package/dist/esm/a2a/agent_card.js +34 -3
  236. package/dist/esm/a2a/agent_executor.js +27 -17
  237. package/dist/esm/a2a/agent_to_a2a.js +44 -15
  238. package/dist/esm/a2a/auth.js +4 -0
  239. package/dist/esm/a2a/event_converter_utils.js +11 -0
  240. package/dist/esm/a2a/event_processor_utils.js +74 -34
  241. package/dist/esm/a2a/executor_context.js +3 -0
  242. package/dist/esm/a2a/index.js +20 -0
  243. package/dist/esm/a2a/metadata_converter_utils.js +6 -0
  244. package/dist/esm/a2a/part_converter_utils.js +13 -0
  245. package/dist/esm/agents/active_streaming_tool.js +6 -2
  246. package/dist/esm/agents/base_agent.js +47 -9
  247. package/dist/esm/agents/context.js +6 -2
  248. package/dist/esm/agents/framework_function_calls.js +34 -0
  249. package/dist/esm/agents/functions.js +42 -13
  250. package/dist/esm/agents/instructions.js +52 -12
  251. package/dist/esm/agents/invocation_context.js +41 -7
  252. package/dist/esm/agents/live_request_queue.js +30 -5
  253. package/dist/esm/agents/llm_agent.js +536 -45
  254. package/dist/esm/agents/loop_agent.js +21 -2
  255. package/dist/esm/agents/parallel_agent.js +23 -2
  256. package/dist/esm/agents/processors/agent_transfer_llm_request_processor.js +8 -4
  257. package/dist/esm/agents/processors/base_llm_processor.js +10 -4
  258. package/dist/esm/agents/processors/basic_llm_request_processor.js +7 -3
  259. package/dist/esm/agents/processors/code_execution_request_processor.js +19 -5
  260. package/dist/esm/agents/processors/content_processor_utils.js +88 -16
  261. package/dist/esm/agents/processors/content_request_processor.js +10 -4
  262. package/dist/esm/agents/processors/context_compactor_request_processor.js +6 -2
  263. package/dist/esm/agents/processors/identity_llm_request_processor.js +13 -4
  264. package/dist/esm/agents/processors/instructions_llm_request_processor.js +6 -2
  265. package/dist/esm/agents/processors/interactions_request_processor.js +6 -2
  266. package/dist/esm/agents/processors/request_confirmation_llm_request_processor.js +318 -93
  267. package/dist/esm/agents/processors/request_input_llm_request_processor.js +197 -0
  268. package/dist/esm/agents/processors/tool_filter_request_processor.js +6 -2
  269. package/dist/esm/agents/readonly_context.js +8 -3
  270. package/dist/esm/agents/routed_agent.js +6 -14
  271. package/dist/esm/agents/run_config.js +13 -0
  272. package/dist/esm/agents/sequential_agent.js +22 -3
  273. package/dist/esm/agents/user_input_request.js +120 -0
  274. package/dist/esm/apps/app.js +14 -11
  275. package/dist/esm/apps/resumability_config.js +3 -0
  276. package/dist/esm/artifacts/file_artifact_service.js +22 -2
  277. package/dist/esm/artifacts/gcs_artifact_service.js +58 -11
  278. package/dist/esm/artifacts/in_memory_artifact_service.js +10 -2
  279. package/dist/esm/artifacts/registry.js +7 -1
  280. package/dist/esm/artifacts/scoped_artifact_service.js +6 -2
  281. package/dist/esm/auth/auth_handler.js +6 -2
  282. package/dist/esm/auth/auth_preprocessor.js +50 -41
  283. package/dist/esm/auth/auth_provider_registry.js +6 -2
  284. package/dist/esm/auth/auth_schemes.js +3 -0
  285. package/dist/esm/auth/credential_response_binding.js +74 -0
  286. package/dist/esm/auth/credential_service/in_memory_credential_service.js +6 -2
  287. package/dist/esm/auth/credential_service/session_state_credential_service.js +6 -2
  288. package/dist/esm/auth/exchanger/base_credential_exchanger.js +6 -2
  289. package/dist/esm/auth/exchanger/credential_exchanger_registry.js +6 -2
  290. package/dist/esm/auth/oauth2/oauth2_credential_exchanger.js +9 -2
  291. package/dist/esm/auth/oauth2/oauth2_credential_refresher.js +6 -2
  292. package/dist/esm/auth/oauth2/oauth2_discovery.js +8 -2
  293. package/dist/esm/auth/oauth2/oauth2_utils.js +7 -0
  294. package/dist/esm/auth/refresher/base_credential_refresher.js +6 -2
  295. package/dist/esm/auth/refresher/credential_refresher_registry.js +6 -2
  296. package/dist/esm/code_executors/agent_engine_sandbox_code_executor.js +3 -0
  297. package/dist/esm/code_executors/base_code_executor.js +7 -2
  298. package/dist/esm/code_executors/built_in_code_executor.js +7 -2
  299. package/dist/esm/code_executors/code_execution_utils.js +7 -0
  300. package/dist/esm/code_executors/code_executor_context.js +6 -2
  301. package/dist/esm/code_executors/unsafe_local_code_executor.js +9 -2
  302. package/dist/esm/common.js +109 -4
  303. package/dist/esm/context/agent_controlled_context_compactor.js +6 -2
  304. package/dist/esm/context/anchored_context_compactor.js +6 -2
  305. package/dist/esm/context/compaction_utils.js +4 -0
  306. package/dist/esm/context/summarizers/llm_summarizer.js +6 -2
  307. package/dist/esm/context/token_based_context_compactor.js +10 -3
  308. package/dist/esm/context/trajectory_thought_pruning_compactor.js +6 -2
  309. package/dist/esm/context/truncating_context_compactor.js +6 -2
  310. package/dist/esm/environment/base_environment.js +71 -0
  311. package/dist/esm/environment/local_environment.js +150 -0
  312. package/dist/esm/events/compacted_event.js +5 -0
  313. package/dist/esm/events/event.js +38 -3
  314. package/dist/esm/events/event_actions.js +6 -0
  315. package/dist/esm/events/structured_events.js +3 -0
  316. package/dist/esm/examples/base_example_provider.js +7 -2
  317. package/dist/esm/examples/example_util.js +4 -0
  318. package/dist/esm/features/feature_registry.js +8 -0
  319. package/dist/esm/index.js +4 -15
  320. package/dist/esm/integrations/agent_registry/agent_registry.js +8 -4
  321. package/dist/esm/integrations/agent_registry/agent_registry_mcp_toolset.js +6 -2
  322. package/dist/esm/integrations/agent_registry/helpers.js +4 -0
  323. package/dist/esm/memory/in_memory_memory_service.js +9 -2
  324. package/dist/esm/memory/vertex_ai_memory_bank_service.js +18 -2
  325. package/dist/esm/models/apigee_llm.js +10 -3
  326. package/dist/esm/models/base_llm.js +8 -3
  327. package/dist/esm/models/gemini_llm_connection.js +6 -2
  328. package/dist/esm/models/google_llm.js +26 -13
  329. package/dist/esm/models/interactions_utils.js +17 -0
  330. package/dist/esm/models/llm_request.js +5 -0
  331. package/dist/esm/models/llm_response.js +3 -0
  332. package/dist/esm/models/registry.js +7 -2
  333. package/dist/esm/models/routed_llm.js +4 -14
  334. package/dist/esm/plugins/base_plugin.js +39 -5
  335. package/dist/esm/plugins/global_instruction_plugin.js +6 -2
  336. package/dist/esm/plugins/logging_plugin.js +14 -8
  337. package/dist/esm/plugins/plugin_manager.js +38 -2
  338. package/dist/esm/plugins/security_plugin.js +14 -6
  339. package/dist/esm/runner/in_memory_runner.js +6 -2
  340. package/dist/esm/runner/runner.js +215 -20
  341. package/dist/esm/sessions/base_session_service.js +14 -2
  342. package/dist/esm/sessions/database_session_service.js +7 -2
  343. package/dist/esm/sessions/db/operations.js +34 -6
  344. package/dist/esm/sessions/db/schema.js +16 -8
  345. package/dist/esm/sessions/in_memory_session_service.js +23 -14
  346. package/dist/esm/sessions/registry.js +5 -1
  347. package/dist/esm/sessions/session.js +3 -0
  348. package/dist/esm/sessions/state.js +78 -7
  349. package/dist/esm/sessions/state_write_order.js +74 -0
  350. package/dist/esm/sessions/vertex_ai_session_service.js +110 -15
  351. package/dist/esm/skills/gcp_skill_registry.js +2 -0
  352. package/dist/esm/skills/loader.js +23 -10
  353. package/dist/esm/skills/prompt.js +4 -0
  354. package/dist/esm/telemetry/google_cloud.js +54 -9
  355. package/dist/esm/telemetry/setup.js +6 -0
  356. package/dist/esm/telemetry/tracing.js +59 -4
  357. package/dist/esm/tools/agent_tool.js +7 -2
  358. package/dist/esm/tools/base_tool.js +25 -2
  359. package/dist/esm/tools/base_toolset.js +7 -2
  360. package/dist/esm/tools/consolidate_context_tool.js +6 -2
  361. package/dist/esm/tools/enterprise_web_search_tool.js +7 -2
  362. package/dist/esm/tools/example_tool.js +6 -2
  363. package/dist/esm/tools/exit_loop_tool.js +6 -2
  364. package/dist/esm/tools/finish_task_tool.js +92 -0
  365. package/dist/esm/tools/forwarding_artifact_service.js +6 -2
  366. package/dist/esm/tools/function_tool.js +74 -8
  367. package/dist/esm/tools/get_user_choice_tool.js +4 -2
  368. package/dist/esm/tools/google_maps_grounding_tool.js +7 -2
  369. package/dist/esm/tools/google_search_tool.js +6 -2
  370. package/dist/esm/tools/load_artifacts_tool.js +9 -2
  371. package/dist/esm/tools/load_memory_tool.js +6 -2
  372. package/dist/esm/tools/load_web_page.js +22 -1
  373. package/dist/esm/tools/long_running_tool.js +6 -2
  374. package/dist/esm/tools/mcp/index.js +11 -0
  375. package/dist/esm/tools/mcp/load_mcp_resource_tool.js +6 -2
  376. package/dist/esm/tools/mcp/mcp_session_manager.js +45 -9
  377. package/dist/esm/tools/mcp/mcp_tool.js +6 -2
  378. package/dist/esm/tools/mcp/mcp_toolset.js +6 -2
  379. package/dist/esm/tools/openapi_tool/auth/auth_helpers.js +5 -0
  380. package/dist/esm/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +2 -0
  381. package/dist/esm/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +2 -0
  382. package/dist/esm/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +30 -9
  383. package/dist/esm/tools/openapi_tool/openapi_spec_parser/operation_parser.js +2 -0
  384. package/dist/esm/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +6 -2
  385. package/dist/esm/tools/openapi_tool/openapi_toolset.js +2 -0
  386. package/dist/esm/tools/openapi_tool/rest_api_tool.js +23 -5
  387. package/dist/esm/tools/preload_memory_tool.js +6 -2
  388. package/dist/esm/tools/request_input_tool.js +7 -4
  389. package/dist/esm/tools/skill/list_skills_tool.js +2 -0
  390. package/dist/esm/tools/skill/load_skill_resource_tool.js +2 -0
  391. package/dist/esm/tools/skill/load_skill_tool.js +4 -1
  392. package/dist/esm/tools/skill/run_skill_inline_script_tool.js +8 -2
  393. package/dist/esm/tools/skill/run_skill_script_tool.js +10 -2
  394. package/dist/esm/tools/skill/search_skills_tool.js +2 -0
  395. package/dist/esm/tools/skill/skill_toolset.js +25 -0
  396. package/dist/esm/tools/tool_confirmation.js +24 -2
  397. package/dist/esm/tools/url_context_tool.js +6 -2
  398. package/dist/esm/tools/vertex_ai_search_tool.js +6 -2
  399. package/dist/esm/tools/vertex_rag_retrieval_tool.js +6 -2
  400. package/dist/esm/utils/async_hooks_shim.js +6 -2
  401. package/dist/esm/utils/async_queue.js +46 -18
  402. package/dist/esm/utils/branch_trie.js +3 -0
  403. package/dist/esm/utils/case_utils.js +3 -0
  404. package/dist/esm/utils/client_labels.js +6 -0
  405. package/dist/esm/utils/crypto_shim.js +3 -0
  406. package/dist/esm/utils/deprecated.js +40 -0
  407. package/dist/esm/utils/env_aware_utils.js +41 -0
  408. package/dist/esm/utils/error_utils.js +9 -0
  409. package/dist/esm/utils/experimental.js +10 -2
  410. package/dist/esm/utils/failover_utils.js +4 -0
  411. package/dist/esm/utils/file_extension_utils.js +4 -0
  412. package/dist/esm/utils/file_utils.js +8 -2
  413. package/dist/esm/utils/gemini_schema_util.js +7 -2
  414. package/dist/esm/utils/genai_schema_to_json.js +80 -0
  415. package/dist/esm/utils/live_connection_utils.js +6 -2
  416. package/dist/esm/utils/logger.js +14 -4
  417. package/dist/esm/utils/model_name.js +9 -0
  418. package/dist/esm/utils/object_notation_utils.js +8 -3
  419. package/dist/esm/utils/optional_peer.js +41 -0
  420. package/dist/esm/utils/output_schema_utils.js +3 -0
  421. package/dist/esm/utils/partial_copy.js +3 -0
  422. package/dist/esm/utils/redact_uri.js +39 -0
  423. package/dist/esm/utils/schema.js +152 -0
  424. package/dist/esm/utils/simple_zod_to_json.js +15 -4
  425. package/dist/esm/utils/streaming_utils.js +15 -6
  426. package/dist/esm/utils/task.js +8 -4
  427. package/dist/esm/utils/variant_utils.js +5 -2
  428. package/dist/esm/utils/vertex_ai_utils.js +5 -2
  429. package/dist/esm/version.js +1 -1
  430. package/dist/esm/workflow/base_node.js +182 -0
  431. package/dist/esm/workflow/branch_path.js +77 -0
  432. package/dist/esm/workflow/dynamic_node_scheduler.js +202 -0
  433. package/dist/esm/workflow/errors.js +140 -0
  434. package/dist/esm/workflow/graph.js +127 -0
  435. package/dist/esm/workflow/index.js +80 -0
  436. package/dist/esm/workflow/node.js +38 -0
  437. package/dist/esm/workflow/node_builders.js +40 -0
  438. package/dist/esm/workflow/node_context.js +219 -0
  439. package/dist/esm/workflow/node_error_event.js +57 -0
  440. package/dist/esm/workflow/node_runner.js +439 -0
  441. package/dist/esm/workflow/node_state.js +29 -0
  442. package/dist/esm/workflow/node_status.js +20 -0
  443. package/dist/esm/workflow/nodes/function_node.js +172 -0
  444. package/dist/esm/workflow/nodes/join_node.js +29 -0
  445. package/dist/esm/workflow/nodes/node_tool.js +131 -0
  446. package/dist/esm/workflow/nodes/parallel_worker.js +102 -0
  447. package/dist/esm/workflow/nodes/tool_node.js +90 -0
  448. package/dist/esm/workflow/request_input.js +36 -0
  449. package/dist/esm/workflow/retry_config.js +43 -0
  450. package/dist/esm/workflow/run_llm_agent_as_node.js +172 -0
  451. package/dist/esm/workflow/run_node_as_invocation.js +139 -0
  452. package/dist/esm/workflow/schedule_dynamic_node.js +26 -0
  453. package/dist/esm/workflow/trigger.js +7 -0
  454. package/dist/esm/workflow/utils/graph_parser.js +188 -0
  455. package/dist/esm/workflow/utils/graph_validation.js +189 -0
  456. package/dist/esm/workflow/utils/hitl_utils.js +222 -0
  457. package/dist/esm/workflow/utils/rehydration_utils.js +342 -0
  458. package/dist/esm/workflow/utils/retry_utils.js +82 -0
  459. package/dist/esm/workflow/utils/workflow_graph_utils.js +115 -0
  460. package/dist/esm/workflow/workflow.js +493 -0
  461. package/dist/types/a2a/agent_card.d.ts +3 -3
  462. package/dist/types/a2a/agent_to_a2a.d.ts +4 -4
  463. package/dist/types/a2a/event_processor_utils.d.ts +17 -2
  464. package/dist/types/a2a/index.d.ts +18 -0
  465. package/dist/types/agents/base_agent.d.ts +37 -9
  466. package/dist/types/agents/framework_function_calls.d.ts +26 -0
  467. package/dist/types/agents/functions.d.ts +1 -2
  468. package/dist/types/agents/invocation_context.d.ts +95 -3
  469. package/dist/types/agents/live_request_queue.d.ts +7 -1
  470. package/dist/types/agents/llm_agent.d.ts +77 -1
  471. package/dist/types/agents/loop_agent.d.ts +5 -0
  472. package/dist/types/agents/parallel_agent.d.ts +5 -0
  473. package/dist/types/agents/processors/content_processor_utils.d.ts +3 -2
  474. package/dist/types/agents/processors/identity_llm_request_processor.d.ts +4 -1
  475. package/dist/types/agents/processors/request_input_llm_request_processor.d.ts +21 -0
  476. package/dist/types/agents/run_config.d.ts +57 -2
  477. package/dist/types/agents/sequential_agent.d.ts +5 -0
  478. package/dist/types/agents/user_input_request.d.ts +71 -0
  479. package/dist/types/apps/app.d.ts +8 -3
  480. package/dist/types/artifacts/gcs_artifact_service.d.ts +9 -2
  481. package/dist/types/auth/credential_response_binding.d.ts +24 -0
  482. package/dist/types/common.d.ts +18 -8
  483. package/dist/types/environment/base_environment.d.ts +101 -0
  484. package/dist/types/environment/local_environment.d.ts +72 -0
  485. package/dist/types/events/event.d.ts +94 -1
  486. package/dist/types/events/event_actions.d.ts +10 -0
  487. package/dist/types/index.d.ts +5 -13
  488. package/dist/types/models/apigee_llm.d.ts +4 -4
  489. package/dist/types/models/google_llm.d.ts +2 -1
  490. package/dist/types/plugins/base_plugin.d.ts +35 -0
  491. package/dist/types/plugins/plugin_manager.d.ts +20 -0
  492. package/dist/types/plugins/security_plugin.d.ts +4 -2
  493. package/dist/types/runner/in_memory_runner.d.ts +2 -2
  494. package/dist/types/runner/runner.d.ts +59 -3
  495. package/dist/types/sessions/base_session_service.d.ts +2 -2
  496. package/dist/types/sessions/state.d.ts +34 -1
  497. package/dist/types/sessions/state_write_order.d.ts +39 -0
  498. package/dist/types/telemetry/tracing.d.ts +15 -0
  499. package/dist/types/tools/base_tool.d.ts +15 -0
  500. package/dist/types/tools/finish_task_tool.d.ts +47 -0
  501. package/dist/types/tools/function_tool.d.ts +46 -1
  502. package/dist/types/tools/mcp/index.d.ts +13 -0
  503. package/dist/types/tools/mcp/mcp_session_manager.d.ts +3 -3
  504. package/dist/types/tools/mcp/mcp_tool.d.ts +1 -1
  505. package/dist/types/tools/mcp/mcp_toolset.d.ts +1 -1
  506. package/dist/types/tools/request_input_tool.d.ts +6 -1
  507. package/dist/types/tools/skill/skill_toolset.d.ts +26 -0
  508. package/dist/types/tools/tool_confirmation.d.ts +47 -0
  509. package/dist/types/utils/async_queue.d.ts +34 -2
  510. package/dist/types/utils/deprecated.d.ts +21 -0
  511. package/dist/types/utils/env_aware_utils.d.ts +16 -0
  512. package/dist/types/utils/file_utils.d.ts +10 -2
  513. package/dist/types/utils/genai_schema_to_json.d.ts +25 -0
  514. package/dist/types/utils/optional_peer.d.ts +36 -0
  515. package/dist/types/utils/redact_uri.d.ts +28 -0
  516. package/dist/types/utils/schema.d.ts +73 -0
  517. package/dist/types/utils/simple_zod_to_json.d.ts +8 -0
  518. package/dist/types/utils/vertex_ai_utils.d.ts +4 -0
  519. package/dist/types/version.d.ts +1 -1
  520. package/dist/types/workflow/base_node.d.ts +142 -0
  521. package/dist/types/workflow/branch_path.d.ts +40 -0
  522. package/dist/types/workflow/dynamic_node_scheduler.d.ts +64 -0
  523. package/dist/types/workflow/errors.d.ts +132 -0
  524. package/dist/types/workflow/graph.d.ts +127 -0
  525. package/dist/types/workflow/index.d.ts +46 -0
  526. package/dist/types/workflow/node.d.ts +48 -0
  527. package/dist/types/workflow/node_builders.d.ts +25 -0
  528. package/dist/types/workflow/node_context.d.ts +208 -0
  529. package/dist/types/workflow/node_error_event.d.ts +18 -0
  530. package/dist/types/workflow/node_runner.d.ts +82 -0
  531. package/dist/types/workflow/node_state.d.ts +47 -0
  532. package/dist/types/workflow/node_status.d.ts +28 -0
  533. package/dist/types/workflow/nodes/function_node.d.ts +78 -0
  534. package/dist/types/workflow/nodes/join_node.d.ts +24 -0
  535. package/dist/types/workflow/nodes/node_tool.d.ts +53 -0
  536. package/dist/types/workflow/nodes/parallel_worker.d.ts +55 -0
  537. package/dist/types/workflow/nodes/tool_node.d.ts +34 -0
  538. package/dist/types/workflow/request_input.d.ts +73 -0
  539. package/dist/types/workflow/retry_config.d.ts +84 -0
  540. package/dist/types/workflow/run_llm_agent_as_node.d.ts +28 -0
  541. package/dist/types/workflow/run_node_as_invocation.d.ts +72 -0
  542. package/dist/types/workflow/schedule_dynamic_node.d.ts +66 -0
  543. package/dist/types/workflow/trigger.d.ts +22 -0
  544. package/dist/types/workflow/utils/graph_parser.d.ts +8 -0
  545. package/dist/types/workflow/utils/graph_validation.d.ts +18 -0
  546. package/dist/types/workflow/utils/hitl_utils.d.ts +92 -0
  547. package/dist/types/workflow/utils/rehydration_utils.d.ts +132 -0
  548. package/dist/types/workflow/utils/retry_utils.d.ts +54 -0
  549. package/dist/types/workflow/utils/workflow_graph_utils.d.ts +76 -0
  550. package/dist/types/workflow/workflow.d.ts +115 -0
  551. package/dist/web/a2a/a2a_event.js +19 -0
  552. package/dist/web/a2a/a2a_remote_agent.js +6 -2
  553. package/dist/web/a2a/a2a_remote_agent_run_processor.js +8 -3
  554. package/dist/web/a2a/a2a_remote_agent_utils.js +10 -2
  555. package/dist/web/a2a/agent_card.js +34 -3
  556. package/dist/web/a2a/agent_executor.js +45 -17
  557. package/dist/web/a2a/agent_to_a2a.js +44 -15
  558. package/dist/web/a2a/auth.js +4 -0
  559. package/dist/web/a2a/event_converter_utils.js +10 -0
  560. package/dist/web/a2a/event_processor_utils.js +73 -34
  561. package/dist/web/a2a/executor_context.js +3 -0
  562. package/dist/web/a2a/index.js +20 -0
  563. package/dist/web/a2a/metadata_converter_utils.js +5 -0
  564. package/dist/web/a2a/part_converter_utils.js +13 -0
  565. package/dist/web/agents/active_streaming_tool.js +6 -2
  566. package/dist/web/agents/base_agent.js +48 -9
  567. package/dist/web/agents/context.js +6 -2
  568. package/dist/web/agents/framework_function_calls.js +34 -0
  569. package/dist/web/agents/functions.js +42 -13
  570. package/dist/web/agents/instructions.js +52 -12
  571. package/dist/web/agents/invocation_context.js +56 -7
  572. package/dist/web/agents/live_request_queue.js +30 -5
  573. package/dist/web/agents/llm_agent.js +630 -52
  574. package/dist/web/agents/loop_agent.js +21 -2
  575. package/dist/web/agents/parallel_agent.js +23 -2
  576. package/dist/web/agents/processors/agent_transfer_llm_request_processor.js +8 -4
  577. package/dist/web/agents/processors/base_llm_processor.js +10 -4
  578. package/dist/web/agents/processors/basic_llm_request_processor.js +6 -3
  579. package/dist/web/agents/processors/code_execution_request_processor.js +19 -5
  580. package/dist/web/agents/processors/content_processor_utils.js +87 -16
  581. package/dist/web/agents/processors/content_request_processor.js +10 -4
  582. package/dist/web/agents/processors/context_compactor_request_processor.js +6 -2
  583. package/dist/web/agents/processors/identity_llm_request_processor.js +13 -4
  584. package/dist/web/agents/processors/instructions_llm_request_processor.js +6 -2
  585. package/dist/web/agents/processors/interactions_request_processor.js +6 -2
  586. package/dist/web/agents/processors/request_confirmation_llm_request_processor.js +329 -104
  587. package/dist/web/agents/processors/request_input_llm_request_processor.js +228 -0
  588. package/dist/web/agents/processors/tool_filter_request_processor.js +6 -2
  589. package/dist/web/agents/readonly_context.js +8 -3
  590. package/dist/web/agents/routed_agent.js +6 -14
  591. package/dist/web/agents/run_config.js +12 -0
  592. package/dist/web/agents/sequential_agent.js +22 -3
  593. package/dist/web/agents/user_input_request.js +135 -0
  594. package/dist/web/apps/app.js +14 -11
  595. package/dist/web/apps/resumability_config.js +2 -0
  596. package/dist/web/artifacts/file_artifact_service.js +22 -2
  597. package/dist/web/artifacts/gcs_artifact_service.js +56 -11
  598. package/dist/web/artifacts/in_memory_artifact_service.js +10 -2
  599. package/dist/web/artifacts/registry.js +7 -1
  600. package/dist/web/artifacts/scoped_artifact_service.js +5 -2
  601. package/dist/web/auth/auth_handler.js +5 -2
  602. package/dist/web/auth/auth_preprocessor.js +50 -41
  603. package/dist/web/auth/auth_provider_registry.js +6 -2
  604. package/dist/web/auth/auth_schemes.js +3 -0
  605. package/dist/web/auth/credential_response_binding.js +91 -0
  606. package/dist/web/auth/credential_service/in_memory_credential_service.js +6 -2
  607. package/dist/web/auth/credential_service/session_state_credential_service.js +6 -2
  608. package/dist/web/auth/exchanger/base_credential_exchanger.js +6 -2
  609. package/dist/web/auth/exchanger/credential_exchanger_registry.js +6 -2
  610. package/dist/web/auth/oauth2/oauth2_credential_exchanger.js +8 -2
  611. package/dist/web/auth/oauth2/oauth2_credential_refresher.js +5 -2
  612. package/dist/web/auth/oauth2/oauth2_discovery.js +8 -2
  613. package/dist/web/auth/oauth2/oauth2_utils.js +7 -0
  614. package/dist/web/auth/refresher/base_credential_refresher.js +6 -2
  615. package/dist/web/auth/refresher/credential_refresher_registry.js +6 -2
  616. package/dist/web/code_executors/agent_engine_sandbox_code_executor.js +3 -0
  617. package/dist/web/code_executors/base_code_executor.js +7 -2
  618. package/dist/web/code_executors/built_in_code_executor.js +7 -2
  619. package/dist/web/code_executors/code_execution_utils.js +7 -0
  620. package/dist/web/code_executors/code_executor_context.js +6 -2
  621. package/dist/web/code_executors/unsafe_local_code_executor.js +9 -2
  622. package/dist/web/common.js +109 -4
  623. package/dist/web/context/agent_controlled_context_compactor.js +6 -2
  624. package/dist/web/context/anchored_context_compactor.js +5 -2
  625. package/dist/web/context/compaction_utils.js +4 -0
  626. package/dist/web/context/summarizers/llm_summarizer.js +6 -2
  627. package/dist/web/context/token_based_context_compactor.js +10 -3
  628. package/dist/web/context/trajectory_thought_pruning_compactor.js +6 -2
  629. package/dist/web/context/truncating_context_compactor.js +6 -2
  630. package/dist/web/environment/base_environment.js +71 -0
  631. package/dist/web/environment/local_environment.js +165 -0
  632. package/dist/web/events/compacted_event.js +4 -0
  633. package/dist/web/events/event.js +37 -3
  634. package/dist/web/events/event_actions.js +5 -0
  635. package/dist/web/events/structured_events.js +3 -0
  636. package/dist/web/examples/base_example_provider.js +7 -2
  637. package/dist/web/examples/example_util.js +4 -0
  638. package/dist/web/features/feature_registry.js +8 -0
  639. package/dist/web/index.js +4 -15
  640. package/dist/web/integrations/agent_registry/agent_registry.js +8 -4
  641. package/dist/web/integrations/agent_registry/agent_registry_mcp_toolset.js +5 -2
  642. package/dist/web/integrations/agent_registry/helpers.js +4 -0
  643. package/dist/web/memory/in_memory_memory_service.js +9 -2
  644. package/dist/web/memory/vertex_ai_memory_bank_service.js +17 -2
  645. package/dist/web/models/apigee_llm.js +9 -3
  646. package/dist/web/models/base_llm.js +8 -3
  647. package/dist/web/models/gemini_llm_connection.js +6 -2
  648. package/dist/web/models/google_llm.js +25 -13
  649. package/dist/web/models/interactions_utils.js +17 -0
  650. package/dist/web/models/llm_request.js +5 -0
  651. package/dist/web/models/llm_response.js +3 -0
  652. package/dist/web/models/registry.js +7 -2
  653. package/dist/web/models/routed_llm.js +4 -14
  654. package/dist/web/plugins/base_plugin.js +39 -5
  655. package/dist/web/plugins/global_instruction_plugin.js +6 -2
  656. package/dist/web/plugins/logging_plugin.js +14 -8
  657. package/dist/web/plugins/plugin_manager.js +38 -2
  658. package/dist/web/plugins/security_plugin.js +14 -6
  659. package/dist/web/runner/in_memory_runner.js +6 -2
  660. package/dist/web/runner/runner.js +232 -20
  661. package/dist/web/sessions/base_session_service.js +14 -2
  662. package/dist/web/sessions/database_session_service.js +6 -2
  663. package/dist/web/sessions/db/operations.js +34 -6
  664. package/dist/web/sessions/db/schema.js +16 -8
  665. package/dist/web/sessions/in_memory_session_service.js +23 -14
  666. package/dist/web/sessions/registry.js +5 -1
  667. package/dist/web/sessions/session.js +3 -0
  668. package/dist/web/sessions/state.js +77 -7
  669. package/dist/web/sessions/state_write_order.js +74 -0
  670. package/dist/web/sessions/vertex_ai_session_service.js +118 -15
  671. package/dist/web/skills/gcp_skill_registry.js +2 -0
  672. package/dist/web/skills/loader.js +22 -10
  673. package/dist/web/skills/prompt.js +4 -0
  674. package/dist/web/telemetry/google_cloud.js +54 -9
  675. package/dist/web/telemetry/setup.js +6 -0
  676. package/dist/web/telemetry/tracing.js +77 -7
  677. package/dist/web/tools/agent_tool.js +7 -2
  678. package/dist/web/tools/base_tool.js +25 -2
  679. package/dist/web/tools/base_toolset.js +7 -2
  680. package/dist/web/tools/consolidate_context_tool.js +6 -2
  681. package/dist/web/tools/enterprise_web_search_tool.js +7 -2
  682. package/dist/web/tools/example_tool.js +6 -2
  683. package/dist/web/tools/exit_loop_tool.js +6 -2
  684. package/dist/web/tools/finish_task_tool.js +92 -0
  685. package/dist/web/tools/forwarding_artifact_service.js +6 -2
  686. package/dist/web/tools/function_tool.js +74 -8
  687. package/dist/web/tools/get_user_choice_tool.js +4 -2
  688. package/dist/web/tools/google_maps_grounding_tool.js +7 -2
  689. package/dist/web/tools/google_search_tool.js +6 -2
  690. package/dist/web/tools/load_artifacts_tool.js +9 -2
  691. package/dist/web/tools/load_memory_tool.js +6 -2
  692. package/dist/web/tools/load_web_page.js +22 -1
  693. package/dist/web/tools/long_running_tool.js +5 -2
  694. package/dist/web/tools/mcp/index.js +11 -0
  695. package/dist/web/tools/mcp/load_mcp_resource_tool.js +6 -2
  696. package/dist/web/tools/mcp/mcp_session_manager.js +45 -9
  697. package/dist/web/tools/mcp/mcp_tool.js +6 -2
  698. package/dist/web/tools/mcp/mcp_toolset.js +5 -2
  699. package/dist/web/tools/openapi_tool/auth/auth_helpers.js +5 -0
  700. package/dist/web/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +2 -0
  701. package/dist/web/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +2 -0
  702. package/dist/web/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +30 -9
  703. package/dist/web/tools/openapi_tool/openapi_spec_parser/operation_parser.js +2 -0
  704. package/dist/web/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +6 -2
  705. package/dist/web/tools/openapi_tool/openapi_toolset.js +2 -0
  706. package/dist/web/tools/openapi_tool/rest_api_tool.js +23 -5
  707. package/dist/web/tools/preload_memory_tool.js +6 -2
  708. package/dist/web/tools/request_input_tool.js +7 -4
  709. package/dist/web/tools/skill/list_skills_tool.js +2 -0
  710. package/dist/web/tools/skill/load_skill_resource_tool.js +2 -0
  711. package/dist/web/tools/skill/load_skill_tool.js +4 -1
  712. package/dist/web/tools/skill/run_skill_inline_script_tool.js +26 -2
  713. package/dist/web/tools/skill/run_skill_script_tool.js +28 -2
  714. package/dist/web/tools/skill/search_skills_tool.js +2 -0
  715. package/dist/web/tools/skill/skill_toolset.js +25 -0
  716. package/dist/web/tools/tool_confirmation.js +24 -2
  717. package/dist/web/tools/url_context_tool.js +6 -2
  718. package/dist/web/tools/vertex_ai_search_tool.js +6 -2
  719. package/dist/web/tools/vertex_rag_retrieval_tool.js +6 -2
  720. package/dist/web/utils/async_hooks_shim.js +6 -2
  721. package/dist/web/utils/async_queue.js +46 -18
  722. package/dist/web/utils/branch_trie.js +3 -0
  723. package/dist/web/utils/case_utils.js +3 -0
  724. package/dist/web/utils/client_labels.js +6 -0
  725. package/dist/web/utils/crypto_shim.js +3 -0
  726. package/dist/web/utils/deprecated.js +40 -0
  727. package/dist/web/utils/env_aware_utils.js +41 -0
  728. package/dist/web/utils/error_utils.js +9 -0
  729. package/dist/web/utils/experimental.js +10 -2
  730. package/dist/web/utils/failover_utils.js +4 -0
  731. package/dist/web/utils/file_extension_utils.js +4 -0
  732. package/dist/web/utils/file_utils.js +7 -2
  733. package/dist/web/utils/gemini_schema_util.js +6 -2
  734. package/dist/web/utils/genai_schema_to_json.js +80 -0
  735. package/dist/web/utils/live_connection_utils.js +5 -2
  736. package/dist/web/utils/logger.js +14 -4
  737. package/dist/web/utils/model_name.js +9 -0
  738. package/dist/web/utils/object_notation_utils.js +8 -3
  739. package/dist/web/utils/optional_peer.js +38 -0
  740. package/dist/web/utils/output_schema_utils.js +3 -0
  741. package/dist/web/utils/partial_copy.js +3 -0
  742. package/dist/web/utils/redact_uri.js +39 -0
  743. package/dist/web/utils/schema.js +167 -0
  744. package/dist/web/utils/simple_zod_to_json.js +15 -4
  745. package/dist/web/utils/streaming_utils.js +14 -6
  746. package/dist/web/utils/task.js +8 -4
  747. package/dist/web/utils/variant_utils.js +5 -2
  748. package/dist/web/utils/vertex_ai_utils.js +5 -2
  749. package/dist/web/version.js +1 -1
  750. package/dist/web/workflow/base_node.js +215 -0
  751. package/dist/web/workflow/branch_path.js +77 -0
  752. package/dist/web/workflow/dynamic_node_scheduler.js +202 -0
  753. package/dist/web/workflow/errors.js +140 -0
  754. package/dist/web/workflow/graph.js +127 -0
  755. package/dist/web/workflow/index.js +80 -0
  756. package/dist/web/workflow/node.js +87 -0
  757. package/dist/web/workflow/node_builders.js +40 -0
  758. package/dist/web/workflow/node_context.js +236 -0
  759. package/dist/web/workflow/node_error_event.js +86 -0
  760. package/dist/web/workflow/node_runner.js +481 -0
  761. package/dist/web/workflow/node_state.js +43 -0
  762. package/dist/web/workflow/node_status.js +20 -0
  763. package/dist/web/workflow/nodes/function_node.js +221 -0
  764. package/dist/web/workflow/nodes/join_node.js +47 -0
  765. package/dist/web/workflow/nodes/node_tool.js +131 -0
  766. package/dist/web/workflow/nodes/parallel_worker.js +120 -0
  767. package/dist/web/workflow/nodes/tool_node.js +126 -0
  768. package/dist/web/workflow/request_input.js +36 -0
  769. package/dist/web/workflow/retry_config.js +43 -0
  770. package/dist/web/workflow/run_llm_agent_as_node.js +266 -0
  771. package/dist/web/workflow/run_node_as_invocation.js +170 -0
  772. package/dist/web/workflow/schedule_dynamic_node.js +26 -0
  773. package/dist/web/workflow/trigger.js +7 -0
  774. package/dist/web/workflow/utils/graph_parser.js +188 -0
  775. package/dist/web/workflow/utils/graph_validation.js +189 -0
  776. package/dist/web/workflow/utils/hitl_utils.js +239 -0
  777. package/dist/web/workflow/utils/rehydration_utils.js +342 -0
  778. package/dist/web/workflow/utils/retry_utils.js +82 -0
  779. package/dist/web/workflow/utils/workflow_graph_utils.js +115 -0
  780. package/dist/web/workflow/workflow.js +529 -0
  781. package/package.json +82 -8
@@ -9,11 +9,14 @@ import { ActiveStreamingTool } from "./agents/active_streaming_tool.js";
9
9
  import { BaseAgent, isBaseAgent } from "./agents/base_agent.js";
10
10
  import { Context } from "./agents/context.js";
11
11
  import {
12
+ REQUEST_CONFIRMATION_FUNCTION_CALL_NAME,
13
+ REQUEST_CREDENTIAL_FUNCTION_CALL_NAME,
14
+ REQUEST_INPUT_FUNCTION_CALL_NAME,
12
15
  findEventByFunctionCallId,
13
16
  findMatchingFunctionCall,
14
17
  functionsExportedForTestingOnly
15
18
  } from "./agents/functions.js";
16
- import { InvocationContext } from "./agents/invocation_context.js";
19
+ import { InvocationContext, requireAgent } from "./agents/invocation_context.js";
17
20
  import { LiveRequestQueue } from "./agents/live_request_queue.js";
18
21
  import { LlmAgent, LlmAgent as LlmAgent2, isLlmAgent } from "./agents/llm_agent.js";
19
22
  import { LoopAgent, isLoopAgent } from "./agents/loop_agent.js";
@@ -36,6 +39,11 @@ import { ReadonlyContext } from "./agents/readonly_context.js";
36
39
  import { RoutedAgent, isRoutedAgent } from "./agents/routed_agent.js";
37
40
  import { StreamingMode } from "./agents/run_config.js";
38
41
  import { SequentialAgent, isSequentialAgent } from "./agents/sequential_agent.js";
42
+ import {
43
+ getPendingUserInputRequests,
44
+ getUserInputRequests,
45
+ requiresUserInput
46
+ } from "./agents/user_input_request.js";
39
47
  import { createResumabilityConfig } from "./apps/resumability_config.js";
40
48
  import { InMemoryArtifactService } from "./artifacts/in_memory_artifact_service.js";
41
49
  import { AuthCredentialTypes } from "./auth/auth_credential.js";
@@ -61,6 +69,7 @@ import { LlmSummarizer } from "./context/summarizers/llm_summarizer.js";
61
69
  import { TokenBasedContextCompactor } from "./context/token_based_context_compactor.js";
62
70
  import { TrajectoryThoughtPruningCompactor } from "./context/trajectory_thought_pruning_compactor.js";
63
71
  import { TruncatingContextCompactor } from "./context/truncating_context_compactor.js";
72
+ import { BaseEnvironment } from "./environment/base_environment.js";
64
73
  import { isCompactedEvent, isScratchpadEvent } from "./events/compacted_event.js";
65
74
  import {
66
75
  createEvent,
@@ -94,7 +103,6 @@ import { PluginManager } from "./plugins/plugin_manager.js";
94
103
  import {
95
104
  InMemoryPolicyEngine,
96
105
  PolicyOutcome,
97
- REQUEST_CONFIRMATION_FUNCTION_CALL_NAME,
98
106
  SecurityPlugin,
99
107
  getAskUserConfirmationFunctionCalls
100
108
  } from "./plugins/security_plugin.js";
@@ -109,7 +117,7 @@ import {
109
117
  import { BaseSessionService } from "./sessions/base_session_service.js";
110
118
  import { InMemorySessionService } from "./sessions/in_memory_session_service.js";
111
119
  import { createSession } from "./sessions/session.js";
112
- import { State } from "./sessions/state.js";
120
+ import { State, StateSchemaError, isStateSchemaError } from "./sessions/state.js";
113
121
  import { AgentTool, isAgentTool } from "./tools/agent_tool.js";
114
122
  import { BaseTool, isBaseTool } from "./tools/base_tool.js";
115
123
  import { BaseToolset, isBaseToolset } from "./tools/base_toolset.js";
@@ -120,6 +128,11 @@ import {
120
128
  } from "./tools/enterprise_web_search_tool.js";
121
129
  import { ExampleTool } from "./tools/example_tool.js";
122
130
  import { EXIT_LOOP, ExitLoopTool } from "./tools/exit_loop_tool.js";
131
+ import {
132
+ FINISH_TASK_SUCCESS_RESULT,
133
+ FINISH_TASK_TOOL_NAME,
134
+ FinishTaskTool
135
+ } from "./tools/finish_task_tool.js";
123
136
  import { FunctionTool, isFunctionTool } from "./tools/function_tool.js";
124
137
  import { getUserChoiceTool } from "./tools/get_user_choice_tool.js";
125
138
  import {
@@ -139,10 +152,15 @@ import {
139
152
  PreloadMemoryTool
140
153
  } from "./tools/preload_memory_tool.js";
141
154
  import { requestInputTool } from "./tools/request_input_tool.js";
142
- import { ToolConfirmation } from "./tools/tool_confirmation.js";
155
+ import {
156
+ IntentMismatchError,
157
+ ToolConfirmation,
158
+ isIntentMismatchError
159
+ } from "./tools/tool_confirmation.js";
143
160
  import { URL_CONTEXT, UrlContextTool } from "./tools/url_context_tool.js";
144
161
  import { VertexAiSearchTool } from "./tools/vertex_ai_search_tool.js";
145
162
  import { VertexRagRetrievalTool } from "./tools/vertex_rag_retrieval_tool.js";
163
+ import { AsyncQueue } from "./utils/async_queue.js";
146
164
  import { getClientLabels, runWithClientLabel } from "./utils/client_labels.js";
147
165
  import { LogLevel, getLogger, setLogLevel, setLogger } from "./utils/logger.js";
148
166
  import { isGemini2OrAbove, isGemini3xFlashLive } from "./utils/model_name.js";
@@ -175,6 +193,43 @@ import {
175
193
  RestApiTool,
176
194
  createRestApiTool
177
195
  } from "./tools/openapi_tool/rest_api_tool.js";
196
+ import {
197
+ BaseNode,
198
+ BranchPath,
199
+ DEFAULT_ROUTE,
200
+ Edge,
201
+ FunctionNode,
202
+ Graph,
203
+ JoinNode,
204
+ NodeContext,
205
+ NodeReportedError,
206
+ NodeSchemaValidationError,
207
+ NodeStatus,
208
+ NodeTimeoutError,
209
+ NodeTool,
210
+ ParallelWorker,
211
+ RequestInput,
212
+ START,
213
+ ToolNode,
214
+ Workflow,
215
+ WorkflowNode,
216
+ asRunnableRoot,
217
+ commonPrefixOf,
218
+ createNodeErrorEvent,
219
+ createNodeState,
220
+ createSubBranch,
221
+ isNodeErrorEvent,
222
+ isNodeReportedError,
223
+ isNodeSchemaValidationError,
224
+ isNodeState,
225
+ isNodeTimeoutError,
226
+ isRequestInput,
227
+ isRunnableRoot,
228
+ isWorkflow,
229
+ node,
230
+ normalizeRetryExceptions,
231
+ prepareRetryConfig
232
+ } from "./workflow/index.js";
178
233
  export * from "./apps/app.js";
179
234
  export * from "./artifacts/base_artifact_service.js";
180
235
  export * from "./features/feature_registry.js";
@@ -190,20 +245,24 @@ export {
190
245
  AgentTransferLlmRequestProcessor,
191
246
  AnchoredContextCompactor,
192
247
  ApigeeLlm,
248
+ AsyncQueue,
193
249
  AuthCredentialTypes,
194
250
  AuthHandler,
195
251
  AuthPreprocessor,
196
252
  AuthProviderRegistry,
197
253
  BaseAgent,
198
254
  BaseCodeExecutor,
255
+ BaseEnvironment,
199
256
  BaseExampleProvider,
200
257
  BaseLlm,
201
258
  BaseLlmRequestProcessor,
202
259
  BaseLlmResponseProcessor,
260
+ BaseNode,
203
261
  BasePlugin,
204
262
  BaseSessionService,
205
263
  BaseTool,
206
264
  BaseToolset,
265
+ BranchPath,
207
266
  BuiltInCodeExecutor,
208
267
  CONTENT_REQUEST_PROCESSOR,
209
268
  CodeExecutionLanguage,
@@ -214,13 +273,19 @@ export {
214
273
  ContextCompactorRequestProcessor,
215
274
  CredentialExchangeError,
216
275
  CredentialRefresherRegistry,
276
+ DEFAULT_ROUTE,
217
277
  ENTERPRISE_WEB_SEARCH,
218
278
  EXIT_LOOP,
279
+ Edge,
219
280
  EnterpriseWebSearchTool,
220
281
  EventType,
221
282
  ExampleTool,
222
283
  ExitLoopTool,
284
+ FINISH_TASK_SUCCESS_RESULT,
285
+ FINISH_TASK_TOOL_NAME,
223
286
  FileContentEncoding,
287
+ FinishTaskTool,
288
+ FunctionNode,
224
289
  FunctionTool,
225
290
  GCPSkillRegistry,
226
291
  GOOGLE_MAPS_GROUNDING,
@@ -230,6 +295,7 @@ export {
230
295
  GoogleLLMVariant,
231
296
  GoogleMapsGroundingTool,
232
297
  GoogleSearchTool,
298
+ Graph,
233
299
  INTERACTIONS_REQUEST_PROCESSOR,
234
300
  InMemoryArtifactService,
235
301
  InMemoryCredentialService,
@@ -237,8 +303,10 @@ export {
237
303
  InMemoryPolicyEngine,
238
304
  InMemoryRunner,
239
305
  InMemorySessionService,
306
+ IntentMismatchError,
240
307
  InteractionsRequestProcessor,
241
308
  InvocationContext,
309
+ JoinNode,
242
310
  LLMRegistry,
243
311
  LOAD_ARTIFACTS,
244
312
  LOAD_MEMORY,
@@ -255,6 +323,12 @@ export {
255
323
  LoggingPlugin,
256
324
  LongRunningFunctionTool,
257
325
  LoopAgent,
326
+ NodeContext,
327
+ NodeReportedError,
328
+ NodeSchemaValidationError,
329
+ NodeStatus,
330
+ NodeTimeoutError,
331
+ NodeTool,
258
332
  OAuth2CredentialExchanger,
259
333
  OAuth2DiscoveryManager,
260
334
  OAuthGrantType,
@@ -263,26 +337,33 @@ export {
263
337
  OperationParser,
264
338
  PRELOAD_MEMORY,
265
339
  ParallelAgent,
340
+ ParallelWorker,
266
341
  PluginManager,
267
342
  PolicyOutcome,
268
343
  PreloadMemoryTool,
269
344
  REQUEST_CONFIRMATION_FUNCTION_CALL_NAME,
345
+ REQUEST_CREDENTIAL_FUNCTION_CALL_NAME,
346
+ REQUEST_INPUT_FUNCTION_CALL_NAME,
270
347
  ReadonlyContext,
348
+ RequestInput,
271
349
  RestApiTool,
272
350
  RoutedAgent,
273
351
  RoutedLlm,
274
352
  Runner,
353
+ START,
275
354
  SearchSkillsTool,
276
355
  SecurityPlugin,
277
356
  SequentialAgent,
278
357
  SessionStateCredentialService,
279
358
  SkillToolset,
280
359
  State,
360
+ StateSchemaError,
281
361
  StreamingMode,
282
362
  Task,
283
363
  TokenBasedContextCompactor,
284
364
  ToolAuthHandler,
285
365
  ToolConfirmation,
366
+ ToolNode,
286
367
  TrajectoryThoughtPruningCompactor,
287
368
  TruncatingContextCompactor,
288
369
  URL_CONTEXT,
@@ -290,11 +371,18 @@ export {
290
371
  VertexAiMemoryBankService,
291
372
  VertexAiSearchTool,
292
373
  VertexRagRetrievalTool,
374
+ Workflow,
375
+ WorkflowNode,
376
+ asRunnableRoot,
377
+ commonPrefixOf,
293
378
  createEvent,
294
379
  createEventActions,
380
+ createNodeErrorEvent,
381
+ createNodeState,
295
382
  createRestApiTool,
296
383
  createResumabilityConfig,
297
384
  createSession,
385
+ createSubBranch,
298
386
  determineAgentForResumption,
299
387
  findEventByFunctionCallId,
300
388
  findEventByLastFunctionResponseId,
@@ -307,7 +395,9 @@ export {
307
395
  getFunctionCalls,
308
396
  getFunctionResponses,
309
397
  getLogger,
398
+ getPendingUserInputRequests,
310
399
  getUserChoiceTool,
400
+ getUserInputRequests,
311
401
  hasThoughts,
312
402
  hasTrailingCodeExecutionResult,
313
403
  isAgentTool,
@@ -321,21 +411,36 @@ export {
321
411
  isFunctionTool,
322
412
  isGemini2OrAbove,
323
413
  isGemini3xFlashLive,
414
+ isIntentMismatchError,
324
415
  isLlmAgent,
325
416
  isLoopAgent,
417
+ isNodeErrorEvent,
418
+ isNodeReportedError,
419
+ isNodeSchemaValidationError,
420
+ isNodeState,
421
+ isNodeTimeoutError,
326
422
  isParallelAgent,
423
+ isRequestInput,
327
424
  isRoutableLlmAgent,
328
425
  isRoutedAgent,
426
+ isRunnableRoot,
329
427
  isRunner,
330
428
  isScratchpadEvent,
331
429
  isSequentialAgent,
430
+ isStateSchemaError,
431
+ isWorkflow,
332
432
  loadAllSkillsInDir,
333
433
  loadSkillFromDir,
334
434
  loadSkillFromZipBuffer,
335
435
  loadWebPage,
436
+ node,
437
+ normalizeRetryExceptions,
336
438
  populateClientFunctionCallId,
439
+ prepareRetryConfig,
337
440
  pruneThoughts,
338
441
  requestInputTool,
442
+ requireAgent,
443
+ requiresUserInput,
339
444
  runWithClientLabel,
340
445
  setLogLevel,
341
446
  setLogger,
@@ -1,5 +1,7 @@
1
1
  import {createRequire as topLevelCreateRequire} from 'module';
2
2
  const require = topLevelCreateRequire(import.meta.url);
3
+ var __defProp = Object.defineProperty;
4
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
5
  /**
4
6
  * @license
5
7
  * Copyright 2026 Google LLC
@@ -8,7 +10,7 @@ const require = topLevelCreateRequire(import.meta.url);
8
10
  import { createEvent } from "../events/event.js";
9
11
  import { ContextCompactionTrigger } from "../plugins/base_plugin.js";
10
12
  import { getActiveEvents } from "./compaction_utils.js";
11
- class AgentControlledContextCompactor {
13
+ const _AgentControlledContextCompactor = class _AgentControlledContextCompactor {
12
14
  constructor(options) {
13
15
  this.trigger = ContextCompactionTrigger.AgentControlled;
14
16
  this.summarizer = options.summarizer;
@@ -66,7 +68,9 @@ class AgentControlledContextCompactor {
66
68
  delete invocationContext.session.state["temp:consolidate_context"];
67
69
  delete invocationContext.session.state["temp:consolidate_context_detail"];
68
70
  }
69
- }
71
+ };
72
+ __name(_AgentControlledContextCompactor, "AgentControlledContextCompactor");
73
+ let AgentControlledContextCompactor = _AgentControlledContextCompactor;
70
74
  export {
71
75
  AgentControlledContextCompactor
72
76
  };
@@ -1,5 +1,7 @@
1
1
  import {createRequire as topLevelCreateRequire} from 'module';
2
2
  const require = topLevelCreateRequire(import.meta.url);
3
+ var __defProp = Object.defineProperty;
4
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
5
  /**
4
6
  * @license
5
7
  * Copyright 2026 Google LLC
@@ -8,7 +10,7 @@ const require = topLevelCreateRequire(import.meta.url);
8
10
  import { isScratchpadEvent } from "../events/compacted_event.js";
9
11
  import { getEventTokens } from "../events/event.js";
10
12
  import { calculateRetainStartIndex } from "./compaction_utils.js";
11
- class AnchoredContextCompactor {
13
+ const _AnchoredContextCompactor = class _AnchoredContextCompactor {
12
14
  constructor(options) {
13
15
  this.tokenThreshold = options.tokenThreshold;
14
16
  this.eventRetentionSize = options.eventRetentionSize;
@@ -93,7 +95,9 @@ class AnchoredContextCompactor {
93
95
  events.length = 0;
94
96
  events.push(...newEventsList);
95
97
  }
96
- }
98
+ };
99
+ __name(_AnchoredContextCompactor, "AnchoredContextCompactor");
100
+ let AnchoredContextCompactor = _AnchoredContextCompactor;
97
101
  export {
98
102
  AnchoredContextCompactor
99
103
  };
@@ -1,5 +1,7 @@
1
1
  import {createRequire as topLevelCreateRequire} from 'module';
2
2
  const require = topLevelCreateRequire(import.meta.url);
3
+ var __defProp = Object.defineProperty;
4
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
5
  /**
4
6
  * @license
5
7
  * Copyright 2026 Google LLC
@@ -19,6 +21,7 @@ function getActiveEvents(events) {
19
21
  )
20
22
  ] : events;
21
23
  }
24
+ __name(getActiveEvents, "getActiveEvents");
22
25
  function calculateRetainStartIndex(rawEvents, eventRetentionSize) {
23
26
  let retainStartIndex = Math.max(0, rawEvents.length - eventRetentionSize);
24
27
  while (retainStartIndex > 0) {
@@ -32,6 +35,7 @@ function calculateRetainStartIndex(rawEvents, eventRetentionSize) {
32
35
  }
33
36
  return retainStartIndex;
34
37
  }
38
+ __name(calculateRetainStartIndex, "calculateRetainStartIndex");
35
39
  export {
36
40
  calculateRetainStartIndex,
37
41
  getActiveEvents
@@ -1,5 +1,7 @@
1
1
  import {createRequire as topLevelCreateRequire} from 'module';
2
2
  const require = topLevelCreateRequire(import.meta.url);
3
+ var __defProp = Object.defineProperty;
4
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
5
  /**
4
6
  * @license
5
7
  * Copyright 2026 Google LLC
@@ -10,7 +12,7 @@ import {
10
12
  } from "../../events/compacted_event.js";
11
13
  import { stringifyContent } from "../../events/event.js";
12
14
  const DEFAULT_PROMPT = "The following is a conversation history between a user and an AI agent. Please summarize the conversation, focusing on key information and decisions made, as well as any unresolved questions or tasks. The summary should be concise and capture the essence of the interaction.";
13
- class LlmSummarizer {
15
+ const _LlmSummarizer = class _LlmSummarizer {
14
16
  /**
15
17
  * @param options - Configuration specifying the LLM and optional prompt.
16
18
  */
@@ -72,7 +74,9 @@ ${formattedEvents}`;
72
74
  compactedContent
73
75
  });
74
76
  }
75
- }
77
+ };
78
+ __name(_LlmSummarizer, "LlmSummarizer");
79
+ let LlmSummarizer = _LlmSummarizer;
76
80
  export {
77
81
  LlmSummarizer
78
82
  };
@@ -1,10 +1,13 @@
1
1
  import {createRequire as topLevelCreateRequire} from 'module';
2
2
  const require = topLevelCreateRequire(import.meta.url);
3
+ var __defProp = Object.defineProperty;
4
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
5
  /**
4
6
  * @license
5
7
  * Copyright 2026 Google LLC
6
8
  * SPDX-License-Identifier: Apache-2.0
7
9
  */
10
+ import { requireAgent } from "../agents/invocation_context.js";
8
11
  import { getContents } from "../agents/processors/content_processor_utils.js";
9
12
  import { isCompactedEvent } from "../events/compacted_event.js";
10
13
  import {
@@ -12,7 +15,7 @@ import {
12
15
  getActiveEvents
13
16
  } from "./compaction_utils.js";
14
17
  const CHARS_PER_TOKEN = 4;
15
- class TokenBasedContextCompactor {
18
+ const _TokenBasedContextCompactor = class _TokenBasedContextCompactor {
16
19
  constructor(options) {
17
20
  this.tokenThreshold = options.tokenThreshold;
18
21
  this.eventRetentionSize = options.eventRetentionSize;
@@ -69,7 +72,9 @@ class TokenBasedContextCompactor {
69
72
  }
70
73
  invocationContext.session.events.push(compactedEvent);
71
74
  }
72
- }
75
+ };
76
+ __name(_TokenBasedContextCompactor, "TokenBasedContextCompactor");
77
+ let TokenBasedContextCompactor = _TokenBasedContextCompactor;
73
78
  function latestPromptTokenCount(activeEvents, invocationContext) {
74
79
  var _a;
75
80
  for (let i = activeEvents.length - 1; i >= 0; i--) {
@@ -80,11 +85,12 @@ function latestPromptTokenCount(activeEvents, invocationContext) {
80
85
  }
81
86
  return estimatePromptTokenCount(activeEvents, invocationContext);
82
87
  }
88
+ __name(latestPromptTokenCount, "latestPromptTokenCount");
83
89
  function estimatePromptTokenCount(activeEvents, invocationContext) {
84
90
  var _a;
85
91
  const contents = getContents(
86
92
  activeEvents,
87
- invocationContext.agent.name,
93
+ requireAgent(invocationContext).name,
88
94
  invocationContext.branch
89
95
  );
90
96
  let totalChars = 0;
@@ -106,6 +112,7 @@ function estimatePromptTokenCount(activeEvents, invocationContext) {
106
112
  }
107
113
  return Math.ceil(totalChars / CHARS_PER_TOKEN);
108
114
  }
115
+ __name(estimatePromptTokenCount, "estimatePromptTokenCount");
109
116
  export {
110
117
  TokenBasedContextCompactor
111
118
  };
@@ -1,12 +1,14 @@
1
1
  import {createRequire as topLevelCreateRequire} from 'module';
2
2
  const require = topLevelCreateRequire(import.meta.url);
3
+ var __defProp = Object.defineProperty;
4
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
5
  /**
4
6
  * @license
5
7
  * Copyright 2026 Google LLC
6
8
  * SPDX-License-Identifier: Apache-2.0
7
9
  */
8
10
  import { hasThoughts, pruneThoughts } from "../events/event.js";
9
- class TrajectoryThoughtPruningCompactor {
11
+ const _TrajectoryThoughtPruningCompactor = class _TrajectoryThoughtPruningCompactor {
10
12
  constructor(options) {
11
13
  if (options.eventRetentionSize < 0) {
12
14
  throw new Error("eventRetentionSize must be a non-negative integer.");
@@ -37,7 +39,9 @@ class TrajectoryThoughtPruningCompactor {
37
39
  }
38
40
  }
39
41
  }
40
- }
42
+ };
43
+ __name(_TrajectoryThoughtPruningCompactor, "TrajectoryThoughtPruningCompactor");
44
+ let TrajectoryThoughtPruningCompactor = _TrajectoryThoughtPruningCompactor;
41
45
  export {
42
46
  TrajectoryThoughtPruningCompactor
43
47
  };
@@ -1,11 +1,13 @@
1
1
  import {createRequire as topLevelCreateRequire} from 'module';
2
2
  const require = topLevelCreateRequire(import.meta.url);
3
+ var __defProp = Object.defineProperty;
4
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
5
  /**
4
6
  * @license
5
7
  * Copyright 2026 Google LLC
6
8
  * SPDX-License-Identifier: Apache-2.0
7
9
  */
8
- class TruncatingContextCompactor {
10
+ const _TruncatingContextCompactor = class _TruncatingContextCompactor {
9
11
  constructor(options) {
10
12
  var _a;
11
13
  this.threshold = options.threshold;
@@ -24,7 +26,9 @@ class TruncatingContextCompactor {
24
26
  const startIndexToRemove = Math.max(0, this.preserveLeadingEvents);
25
27
  events.splice(startIndexToRemove, excess);
26
28
  }
27
- }
29
+ };
30
+ __name(_TruncatingContextCompactor, "TruncatingContextCompactor");
31
+ let TruncatingContextCompactor = _TruncatingContextCompactor;
28
32
  export {
29
33
  TruncatingContextCompactor
30
34
  };
@@ -0,0 +1,71 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
6
+ var __decorateClass = (decorators, target, key, kind) => {
7
+ var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
8
+ for (var i = decorators.length - 1, decorator; i >= 0; i--)
9
+ if (decorator = decorators[i])
10
+ result = (kind ? decorator(target, key, result) : decorator(result)) || result;
11
+ if (kind && result) __defProp(target, key, result);
12
+ return result;
13
+ };
14
+ /**
15
+ * @license
16
+ * Copyright 2026 Google LLC
17
+ * SPDX-License-Identifier: Apache-2.0
18
+ */
19
+ import { experimental } from "../utils/experimental.js";
20
+ let BaseEnvironment = class {
21
+ constructor() {
22
+ /**
23
+ * Backing flag for {@link isInitialized}.
24
+ *
25
+ * Subclasses own this flag: set it in {@link initialize} and clear it in
26
+ * {@link close}.
27
+ */
28
+ this.initialized = false;
29
+ }
30
+ /** Whether the environment has been initialized. */
31
+ get isInitialized() {
32
+ return this.initialized;
33
+ }
34
+ /**
35
+ * Initializes the environment (e.g. creates the working directory).
36
+ *
37
+ * Called before first use. The default implementation is a no-op and leaves
38
+ * {@link isInitialized} `false`. Subclasses must be idempotent and must set
39
+ * {@link initialized}.
40
+ */
41
+ async initialize() {
42
+ }
43
+ /**
44
+ * Releases resources held by the environment.
45
+ *
46
+ * The default implementation is a no-op. Subclasses must be idempotent and
47
+ * must clear {@link initialized}.
48
+ */
49
+ async close() {
50
+ }
51
+ /**
52
+ * Throws if {@link initialize} has not been called.
53
+ *
54
+ * Implementations should call this at the start of every operation that needs
55
+ * a live working directory.
56
+ */
57
+ assertInitialized() {
58
+ if (!this.initialized) {
59
+ throw new Error(
60
+ "Environment is not initialized. Call initialize() first."
61
+ );
62
+ }
63
+ }
64
+ };
65
+ __name(BaseEnvironment, "BaseEnvironment");
66
+ BaseEnvironment = __decorateClass([
67
+ experimental
68
+ ], BaseEnvironment);
69
+ export {
70
+ BaseEnvironment
71
+ };