@google/adk 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (566) hide show
  1. package/dist/cjs/a2a/a2a_event.js +0 -29
  2. package/dist/cjs/a2a/a2a_remote_agent.js +8 -5
  3. package/dist/cjs/a2a/a2a_remote_agent_utils.js +104 -2
  4. package/dist/cjs/a2a/agent_card.js +58 -6
  5. package/dist/cjs/a2a/agent_executor.js +10 -3
  6. package/dist/cjs/a2a/agent_to_a2a.js +6 -1
  7. package/dist/cjs/a2a/event_processor_utils.js +1 -1
  8. package/dist/cjs/a2a/executor_context.js +4 -2
  9. package/dist/cjs/a2a/index.js +4 -0
  10. package/dist/cjs/a2a/request_metadata.js +94 -0
  11. package/dist/cjs/agents/base_agent.js +9 -8
  12. package/dist/cjs/agents/context.js +7 -0
  13. package/dist/cjs/agents/functions.js +150 -47
  14. package/dist/cjs/agents/invocation_context.js +1 -0
  15. package/dist/cjs/agents/llm_agent.js +6 -5
  16. package/dist/cjs/agents/loop_agent.js +1 -1
  17. package/dist/cjs/agents/parallel_agent.js +1 -1
  18. package/dist/cjs/agents/processors/agent_transfer_llm_request_processor.js +26 -5
  19. package/dist/cjs/agents/processors/code_execution_request_processor.js +2 -2
  20. package/dist/cjs/agents/processors/content_processor_utils.js +5 -5
  21. package/dist/cjs/agents/processors/content_request_processor.js +4 -1
  22. package/dist/cjs/agents/processors/request_confirmation_llm_request_processor.js +19 -12
  23. package/dist/cjs/agents/processors/request_input_llm_request_processor.js +3 -7
  24. package/dist/cjs/agents/readonly_context.js +6 -0
  25. package/dist/cjs/agents/routed_agent.js +1 -1
  26. package/dist/cjs/agents/sequential_agent.js +1 -1
  27. package/dist/cjs/apps/app.js +1 -1
  28. package/dist/cjs/artifacts/file_artifact_service.js +1 -2
  29. package/dist/cjs/artifacts/scoped_artifact_service.js +9 -0
  30. package/dist/cjs/artifacts/session_artifact_service.js +19 -0
  31. package/dist/cjs/auth/auth_handler.js +44 -8
  32. package/dist/cjs/auth/oauth2/oauth2_credential_refresher.js +1 -1
  33. package/dist/cjs/auth/oauth2/oauth2_utils.js +17 -2
  34. package/dist/cjs/code_executors/base_code_executor.js +1 -1
  35. package/dist/cjs/code_executors/built_in_code_executor.js +1 -1
  36. package/dist/cjs/code_executors/code_execution_utils.js +2 -2
  37. package/dist/cjs/code_executors/container_code_executor.js +186 -0
  38. package/dist/cjs/code_executors/docker_container.js +282 -0
  39. package/dist/cjs/code_executors/unsafe_local_code_executor.js +11 -6
  40. package/dist/cjs/common.js +74 -45
  41. package/dist/cjs/context/agent_controlled_context_compactor.js +10 -5
  42. package/dist/cjs/context/anchored_context_compactor.js +41 -18
  43. package/dist/cjs/context/compaction_utils.js +15 -6
  44. package/dist/cjs/context/token_based_context_compactor.js +10 -2
  45. package/dist/cjs/context/trajectory_thought_pruning_compactor.js +17 -10
  46. package/dist/cjs/context/truncating_context_compactor.js +17 -5
  47. package/dist/cjs/errors/already_exists_error.js +50 -0
  48. package/dist/cjs/errors/input_validation_error.js +50 -0
  49. package/dist/cjs/errors/not_found_error.js +50 -0
  50. package/dist/cjs/errors/session_not_found_error.js +50 -0
  51. package/dist/cjs/errors/tool_execution_error.js +68 -0
  52. package/dist/cjs/events/event.js +1 -1
  53. package/dist/cjs/events/event_actions.js +7 -0
  54. package/dist/cjs/examples/base_example_provider.js +1 -1
  55. package/dist/cjs/index.js +47 -0
  56. package/dist/cjs/index_web.js +2 -0
  57. package/dist/cjs/integrations/agent_registry/agent_registry.js +3 -2
  58. package/dist/cjs/memory/rag_memory_transcript.js +136 -0
  59. package/dist/cjs/memory/vertex_ai_memory_bank_service.js +2 -2
  60. package/dist/cjs/memory/vertex_ai_rag_api.js +120 -0
  61. package/dist/cjs/memory/vertex_ai_rag_memory_service.js +228 -0
  62. package/dist/cjs/models/apigee_llm.js +1 -1
  63. package/dist/cjs/models/base_llm.js +1 -1
  64. package/dist/cjs/models/chrome_prompt_llm.js +304 -0
  65. package/dist/cjs/models/chrome_prompt_utils.js +229 -0
  66. package/dist/cjs/models/google_llm.js +9 -4
  67. package/dist/cjs/models/interactions_utils.js +2 -3
  68. package/dist/cjs/models/registry.js +2 -0
  69. package/dist/cjs/plugins/_reflect_retry_utils.js +142 -0
  70. package/dist/cjs/plugins/reflect_retry_model_plugin.js +274 -0
  71. package/dist/cjs/plugins/reflect_retry_tool_plugin.js +276 -0
  72. package/dist/cjs/runner/runner.js +29 -26
  73. package/dist/cjs/sessions/database_session_service.js +78 -43
  74. package/dist/cjs/sessions/db/operations.js +229 -22
  75. package/dist/cjs/sessions/db/schema.js +113 -159
  76. package/dist/cjs/sessions/registry.js +5 -1
  77. package/dist/cjs/sessions/vertex_ai_session_service.js +2 -2
  78. package/dist/cjs/telemetry/setup.js +1 -1
  79. package/dist/cjs/telemetry/tracing.js +11 -1
  80. package/dist/cjs/tools/agent_tool.js +4 -5
  81. package/dist/cjs/tools/base_tool.js +14 -4
  82. package/dist/cjs/tools/base_toolset.js +4 -4
  83. package/dist/cjs/tools/built_in_tool.js +75 -0
  84. package/dist/cjs/tools/enterprise_web_search_tool.js +3 -6
  85. package/dist/cjs/tools/forwarding_artifact_service.js +18 -13
  86. package/dist/cjs/tools/function_tool.js +6 -3
  87. package/dist/cjs/tools/google_maps_grounding_tool.js +3 -6
  88. package/dist/cjs/tools/google_search_tool.js +3 -6
  89. package/dist/cjs/tools/load_artifacts_tool.js +47 -23
  90. package/dist/cjs/tools/load_web_page.js +6 -172
  91. package/dist/cjs/tools/mcp/load_mcp_resource_tool.js +34 -5
  92. package/dist/cjs/tools/openapi_tool/auth/auth_helpers.js +11 -2
  93. package/dist/cjs/tools/openapi_tool/openapi_spec_parser/operation_parser.js +1 -1
  94. package/dist/cjs/tools/openapi_tool/rest_api_tool.js +16 -18
  95. package/dist/cjs/tools/preload_memory_tool.js +1 -1
  96. package/dist/cjs/tools/resume_inputs.js +27 -0
  97. package/dist/cjs/tools/retrieval/base_retrieval_tool.js +60 -0
  98. package/dist/cjs/tools/retrieval/files_retrieval.js +95 -0
  99. package/dist/cjs/tools/retrieval/llama_index_retrieval.js +57 -0
  100. package/dist/cjs/tools/url_context_tool.js +3 -6
  101. package/dist/cjs/tools/vertex_ai_search_tool.js +4 -8
  102. package/dist/cjs/tools/vertex_rag_retrieval_tool.js +3 -10
  103. package/dist/cjs/utils/crypto_shim.js +16 -0
  104. package/dist/cjs/utils/gemini_schema_util.js +0 -6
  105. package/dist/cjs/utils/logger.js +15 -50
  106. package/dist/cjs/utils/logger_browser.js +86 -0
  107. package/dist/cjs/utils/logger_node.js +119 -0
  108. package/dist/cjs/utils/redact_inline_data.js +46 -0
  109. package/dist/cjs/utils/redact_uri.js +15 -1
  110. package/dist/cjs/utils/schema.js +1 -1
  111. package/dist/cjs/utils/ssrf_guard.js +262 -0
  112. package/dist/cjs/version.js +1 -1
  113. package/dist/cjs/workflow/base_node.js +1 -1
  114. package/dist/cjs/workflow/graph.js +1 -1
  115. package/dist/cjs/workflow/nodes/node_tool.js +2 -11
  116. package/dist/cjs/workflow/request_input.js +1 -1
  117. package/dist/cjs/workflow/run_llm_agent_as_node.js +1 -1
  118. package/dist/cjs/workflow/workflow.js +1 -1
  119. package/dist/esm/a2a/a2a_event.js +0 -28
  120. package/dist/esm/a2a/a2a_remote_agent.js +10 -5
  121. package/dist/esm/a2a/a2a_remote_agent_utils.js +102 -2
  122. package/dist/esm/a2a/agent_card.js +63 -6
  123. package/dist/esm/a2a/agent_executor.js +10 -3
  124. package/dist/esm/a2a/agent_to_a2a.js +8 -2
  125. package/dist/esm/a2a/event_processor_utils.js +1 -2
  126. package/dist/esm/a2a/executor_context.js +4 -2
  127. package/dist/esm/a2a/index.js +7 -1
  128. package/dist/esm/a2a/request_metadata.js +68 -0
  129. package/dist/esm/agents/base_agent.js +9 -8
  130. package/dist/esm/agents/context.js +7 -0
  131. package/dist/esm/agents/functions.js +152 -48
  132. package/dist/esm/agents/invocation_context.js +1 -0
  133. package/dist/esm/agents/llm_agent.js +6 -5
  134. package/dist/esm/agents/loop_agent.js +1 -1
  135. package/dist/esm/agents/parallel_agent.js +1 -1
  136. package/dist/esm/agents/processors/agent_transfer_llm_request_processor.js +26 -5
  137. package/dist/esm/agents/processors/code_execution_request_processor.js +2 -2
  138. package/dist/esm/agents/processors/content_processor_utils.js +5 -5
  139. package/dist/esm/agents/processors/content_request_processor.js +4 -1
  140. package/dist/esm/agents/processors/request_confirmation_llm_request_processor.js +19 -12
  141. package/dist/esm/agents/processors/request_input_llm_request_processor.js +3 -7
  142. package/dist/esm/agents/readonly_context.js +6 -0
  143. package/dist/esm/agents/routed_agent.js +1 -1
  144. package/dist/esm/agents/sequential_agent.js +1 -1
  145. package/dist/esm/apps/app.js +1 -1
  146. package/dist/esm/artifacts/file_artifact_service.js +1 -2
  147. package/dist/esm/artifacts/scoped_artifact_service.js +9 -0
  148. package/dist/esm/artifacts/session_artifact_service.js +12 -0
  149. package/dist/esm/auth/auth_handler.js +47 -8
  150. package/dist/esm/auth/oauth2/oauth2_credential_refresher.js +1 -1
  151. package/dist/esm/auth/oauth2/oauth2_utils.js +15 -2
  152. package/dist/esm/code_executors/base_code_executor.js +1 -1
  153. package/dist/esm/code_executors/built_in_code_executor.js +1 -1
  154. package/dist/esm/code_executors/code_execution_utils.js +2 -2
  155. package/dist/esm/code_executors/container_code_executor.js +155 -0
  156. package/dist/esm/code_executors/docker_container.js +265 -0
  157. package/dist/esm/code_executors/unsafe_local_code_executor.js +11 -6
  158. package/dist/esm/common.js +73 -38
  159. package/dist/esm/context/agent_controlled_context_compactor.js +10 -5
  160. package/dist/esm/context/anchored_context_compactor.js +45 -19
  161. package/dist/esm/context/compaction_utils.js +13 -5
  162. package/dist/esm/context/token_based_context_compactor.js +10 -2
  163. package/dist/esm/context/trajectory_thought_pruning_compactor.js +17 -10
  164. package/dist/esm/context/truncating_context_compactor.js +17 -5
  165. package/dist/esm/errors/already_exists_error.js +23 -0
  166. package/dist/esm/errors/input_validation_error.js +23 -0
  167. package/dist/{web/auth/refresher/base_credential_refresher.js → esm/errors/not_found_error.js} +9 -6
  168. package/dist/esm/errors/session_not_found_error.js +23 -0
  169. package/dist/esm/errors/tool_execution_error.js +40 -0
  170. package/dist/esm/events/event.js +1 -1
  171. package/dist/esm/events/event_actions.js +6 -0
  172. package/dist/esm/examples/base_example_provider.js +1 -1
  173. package/dist/esm/index.js +37 -0
  174. package/dist/esm/index_web.js +2 -0
  175. package/dist/esm/integrations/agent_registry/agent_registry.js +3 -2
  176. package/dist/esm/memory/rag_memory_transcript.js +106 -0
  177. package/dist/esm/memory/vertex_ai_memory_bank_service.js +2 -2
  178. package/dist/esm/memory/vertex_ai_rag_api.js +93 -0
  179. package/dist/esm/memory/vertex_ai_rag_memory_service.js +208 -0
  180. package/dist/esm/models/apigee_llm.js +1 -1
  181. package/dist/esm/models/base_llm.js +1 -1
  182. package/dist/esm/models/chrome_prompt_llm.js +285 -0
  183. package/dist/esm/models/chrome_prompt_utils.js +192 -0
  184. package/dist/esm/models/google_llm.js +9 -4
  185. package/dist/esm/models/interactions_utils.js +2 -3
  186. package/dist/esm/models/registry.js +2 -0
  187. package/dist/esm/plugins/_reflect_retry_utils.js +111 -0
  188. package/dist/esm/plugins/reflect_retry_model_plugin.js +250 -0
  189. package/dist/esm/plugins/reflect_retry_tool_plugin.js +254 -0
  190. package/dist/esm/runner/runner.js +35 -27
  191. package/dist/esm/sessions/database_session_service.js +58 -25
  192. package/dist/esm/sessions/db/operations.js +229 -22
  193. package/dist/esm/sessions/db/schema.js +111 -160
  194. package/dist/esm/sessions/registry.js +5 -1
  195. package/dist/esm/sessions/vertex_ai_session_service.js +1 -1
  196. package/dist/esm/telemetry/setup.js +1 -1
  197. package/dist/esm/telemetry/tracing.js +11 -1
  198. package/dist/esm/tools/agent_tool.js +4 -5
  199. package/dist/esm/tools/base_tool.js +11 -3
  200. package/dist/esm/tools/base_toolset.js +4 -4
  201. package/dist/esm/tools/built_in_tool.js +51 -0
  202. package/dist/esm/tools/enterprise_web_search_tool.js +3 -6
  203. package/dist/esm/tools/forwarding_artifact_service.js +18 -13
  204. package/dist/esm/tools/function_tool.js +6 -3
  205. package/dist/esm/tools/google_maps_grounding_tool.js +3 -6
  206. package/dist/esm/tools/google_search_tool.js +3 -6
  207. package/dist/esm/tools/load_artifacts_tool.js +48 -24
  208. package/dist/esm/tools/load_web_page.js +10 -170
  209. package/dist/esm/tools/mcp/load_mcp_resource_tool.js +34 -5
  210. package/dist/esm/tools/openapi_tool/auth/auth_helpers.js +13 -2
  211. package/dist/esm/tools/openapi_tool/openapi_spec_parser/operation_parser.js +1 -1
  212. package/dist/esm/tools/openapi_tool/rest_api_tool.js +16 -18
  213. package/dist/esm/tools/preload_memory_tool.js +1 -1
  214. package/dist/esm/tools/retrieval/base_retrieval_tool.js +33 -0
  215. package/dist/esm/tools/retrieval/files_retrieval.js +81 -0
  216. package/dist/esm/tools/retrieval/llama_index_retrieval.js +30 -0
  217. package/dist/esm/tools/url_context_tool.js +3 -6
  218. package/dist/esm/tools/vertex_ai_search_tool.js +4 -8
  219. package/dist/esm/tools/vertex_rag_retrieval_tool.js +3 -10
  220. package/dist/esm/utils/crypto_shim.js +14 -0
  221. package/dist/esm/utils/gemini_schema_util.js +0 -6
  222. package/dist/esm/utils/logger.js +14 -40
  223. package/dist/esm/utils/logger_browser.js +58 -0
  224. package/dist/esm/utils/logger_node.js +81 -0
  225. package/dist/esm/utils/redact_inline_data.js +19 -0
  226. package/dist/esm/utils/redact_uri.js +15 -1
  227. package/dist/esm/utils/schema.js +1 -1
  228. package/dist/{web/tools/load_web_page.js → esm/utils/ssrf_guard.js} +95 -107
  229. package/dist/esm/version.js +1 -1
  230. package/dist/esm/workflow/base_node.js +1 -1
  231. package/dist/esm/workflow/graph.js +1 -1
  232. package/dist/esm/workflow/nodes/node_tool.js +2 -11
  233. package/dist/esm/workflow/request_input.js +1 -1
  234. package/dist/esm/workflow/run_llm_agent_as_node.js +1 -1
  235. package/dist/esm/workflow/workflow.js +1 -1
  236. package/dist/types/a2a/a2a_event.d.ts +7 -10
  237. package/dist/types/a2a/a2a_remote_agent.d.ts +5 -0
  238. package/dist/types/a2a/a2a_remote_agent_utils.d.ts +25 -0
  239. package/dist/types/a2a/agent_card.d.ts +9 -0
  240. package/dist/types/a2a/agent_executor.d.ts +1 -1
  241. package/dist/types/a2a/agent_to_a2a.d.ts +2 -0
  242. package/dist/types/a2a/auth.d.ts +5 -1
  243. package/dist/types/a2a/executor_context.d.ts +7 -1
  244. package/dist/types/a2a/index.d.ts +1 -1
  245. package/dist/types/a2a/request_metadata.d.ts +22 -0
  246. package/dist/types/agents/base_agent.d.ts +19 -16
  247. package/dist/types/agents/context.d.ts +8 -0
  248. package/dist/types/agents/functions.d.ts +72 -6
  249. package/dist/types/agents/invocation_context.d.ts +11 -3
  250. package/dist/types/agents/llm_agent.d.ts +9 -7
  251. package/dist/types/agents/processors/agent_transfer_llm_request_processor.d.ts +16 -1
  252. package/dist/types/agents/readonly_context.d.ts +4 -0
  253. package/dist/types/agents/run_config.d.ts +21 -8
  254. package/dist/types/artifacts/scoped_artifact_service.d.ts +13 -0
  255. package/dist/types/artifacts/session_artifact_service.d.ts +8 -1
  256. package/dist/types/auth/auth_credential.d.ts +13 -8
  257. package/dist/types/auth/auth_handler.d.ts +12 -1
  258. package/dist/types/auth/oauth2/oauth2_credential_refresher.d.ts +1 -1
  259. package/dist/types/auth/oauth2/oauth2_utils.d.ts +9 -0
  260. package/dist/types/auth/refresher/base_credential_refresher.d.ts +1 -1
  261. package/dist/types/code_executors/code_execution_utils.d.ts +1 -1
  262. package/dist/types/code_executors/container_code_executor.d.ts +89 -0
  263. package/dist/types/code_executors/docker_container.d.ts +79 -0
  264. package/dist/types/common.d.ts +22 -20
  265. package/dist/types/context/compaction_utils.d.ts +9 -1
  266. package/dist/types/errors/already_exists_error.d.ts +14 -0
  267. package/dist/types/errors/input_validation_error.d.ts +14 -0
  268. package/dist/types/errors/not_found_error.d.ts +14 -0
  269. package/dist/types/errors/session_not_found_error.d.ts +14 -0
  270. package/dist/types/errors/tool_execution_error.d.ts +36 -0
  271. package/dist/types/events/event_actions.d.ts +13 -0
  272. package/dist/types/index.d.ts +22 -1
  273. package/dist/types/memory/rag_memory_transcript.d.ts +55 -0
  274. package/dist/types/memory/vertex_ai_rag_api.d.ts +89 -0
  275. package/dist/types/memory/vertex_ai_rag_memory_service.d.ts +68 -0
  276. package/dist/types/models/chrome_prompt_llm.d.ts +210 -0
  277. package/dist/types/models/chrome_prompt_utils.d.ts +68 -0
  278. package/dist/types/models/google_llm.d.ts +8 -3
  279. package/dist/types/models/registry.d.ts +3 -2
  280. package/dist/types/plugins/_reflect_retry_utils.d.ts +72 -0
  281. package/dist/types/plugins/base_plugin.d.ts +12 -10
  282. package/dist/types/plugins/logging_plugin.d.ts +3 -2
  283. package/dist/types/plugins/reflect_retry_model_plugin.d.ts +132 -0
  284. package/dist/types/plugins/reflect_retry_tool_plugin.d.ts +187 -0
  285. package/dist/types/runner/runner.d.ts +7 -8
  286. package/dist/types/sessions/database_session_service.d.ts +1 -1
  287. package/dist/types/sessions/db/operations.d.ts +13 -1
  288. package/dist/types/sessions/db/schema.d.ts +23 -9
  289. package/dist/types/tools/base_tool.d.ts +11 -0
  290. package/dist/types/tools/base_toolset.d.ts +3 -4
  291. package/dist/types/tools/built_in_tool.d.ts +41 -0
  292. package/dist/types/tools/enterprise_web_search_tool.d.ts +4 -4
  293. package/dist/types/tools/forwarding_artifact_service.d.ts +23 -10
  294. package/dist/types/tools/function_tool.d.ts +42 -9
  295. package/dist/types/tools/google_maps_grounding_tool.d.ts +4 -4
  296. package/dist/types/tools/google_search_tool.d.ts +4 -4
  297. package/dist/types/tools/long_running_tool.d.ts +1 -1
  298. package/dist/types/tools/mcp/mcp_toolset.d.ts +11 -10
  299. package/dist/types/tools/openapi_tool/auth/auth_helpers.d.ts +5 -0
  300. package/dist/types/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.d.ts +0 -1
  301. package/dist/types/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.d.ts +0 -1
  302. package/dist/types/tools/preload_memory_tool.d.ts +1 -1
  303. package/dist/types/tools/resume_inputs.d.ts +25 -0
  304. package/dist/types/tools/retrieval/base_retrieval_tool.d.ts +21 -0
  305. package/dist/types/tools/retrieval/files_retrieval.d.ts +50 -0
  306. package/dist/types/tools/retrieval/llama_index_retrieval.d.ts +62 -0
  307. package/dist/types/tools/url_context_tool.d.ts +4 -4
  308. package/dist/types/tools/vertex_ai_search_tool.d.ts +4 -4
  309. package/dist/types/tools/vertex_rag_retrieval_tool.d.ts +13 -12
  310. package/dist/types/utils/crypto_shim.d.ts +16 -0
  311. package/dist/types/utils/gemini_schema_util.d.ts +5 -7
  312. package/dist/types/utils/logger.d.ts +23 -1
  313. package/dist/types/utils/logger_browser.d.ts +28 -0
  314. package/dist/types/utils/logger_node.d.ts +20 -0
  315. package/dist/types/utils/output_schema_utils.d.ts +3 -3
  316. package/dist/types/utils/redact_inline_data.d.ts +16 -0
  317. package/dist/types/utils/redact_uri.d.ts +12 -8
  318. package/dist/types/utils/ssrf_guard.d.ts +32 -0
  319. package/dist/types/version.d.ts +1 -1
  320. package/dist/web/index_web.js +304 -3
  321. package/dist/web/index_web.js.map +7 -0
  322. package/package.json +17 -14
  323. package/dist/web/a2a/a2a_event.js +0 -290
  324. package/dist/web/a2a/a2a_remote_agent.js +0 -200
  325. package/dist/web/a2a/a2a_remote_agent_run_processor.js +0 -189
  326. package/dist/web/a2a/a2a_remote_agent_utils.js +0 -141
  327. package/dist/web/a2a/agent_card.js +0 -373
  328. package/dist/web/a2a/agent_executor.js +0 -246
  329. package/dist/web/a2a/agent_to_a2a.js +0 -126
  330. package/dist/web/a2a/auth.js +0 -41
  331. package/dist/web/a2a/event_converter_utils.js +0 -242
  332. package/dist/web/a2a/event_processor_utils.js +0 -209
  333. package/dist/web/a2a/executor_context.js +0 -28
  334. package/dist/web/a2a/index.js +0 -20
  335. package/dist/web/a2a/metadata_converter_utils.js +0 -115
  336. package/dist/web/a2a/part_converter_utils.js +0 -201
  337. package/dist/web/agents/active_streaming_tool.js +0 -25
  338. package/dist/web/agents/base_agent.js +0 -462
  339. package/dist/web/agents/context.js +0 -146
  340. package/dist/web/agents/framework_function_calls.js +0 -34
  341. package/dist/web/agents/functions.js +0 -462
  342. package/dist/web/agents/instructions.js +0 -188
  343. package/dist/web/agents/invocation_context.js +0 -126
  344. package/dist/web/agents/live_request_queue.js +0 -151
  345. package/dist/web/agents/llm_agent.js +0 -1514
  346. package/dist/web/agents/loop_agent.js +0 -131
  347. package/dist/web/agents/parallel_agent.js +0 -122
  348. package/dist/web/agents/processors/agent_transfer_llm_request_processor.js +0 -113
  349. package/dist/web/agents/processors/base_llm_processor.js +0 -21
  350. package/dist/web/agents/processors/basic_llm_request_processor.js +0 -84
  351. package/dist/web/agents/processors/code_execution_request_processor.js +0 -381
  352. package/dist/web/agents/processors/content_processor_utils.js +0 -432
  353. package/dist/web/agents/processors/content_request_processor.js +0 -73
  354. package/dist/web/agents/processors/context_compactor_request_processor.js +0 -78
  355. package/dist/web/agents/processors/identity_llm_request_processor.js +0 -59
  356. package/dist/web/agents/processors/instructions_llm_request_processor.js +0 -85
  357. package/dist/web/agents/processors/interactions_request_processor.js +0 -56
  358. package/dist/web/agents/processors/request_confirmation_llm_request_processor.js +0 -393
  359. package/dist/web/agents/processors/request_input_llm_request_processor.js +0 -228
  360. package/dist/web/agents/processors/tool_filter_request_processor.js +0 -72
  361. package/dist/web/agents/readonly_context.js +0 -60
  362. package/dist/web/agents/routed_agent.js +0 -161
  363. package/dist/web/agents/run_config.js +0 -74
  364. package/dist/web/agents/sequential_agent.js +0 -141
  365. package/dist/web/agents/transcription_entry.js +0 -7
  366. package/dist/web/agents/user_input_request.js +0 -135
  367. package/dist/web/apps/app.js +0 -52
  368. package/dist/web/apps/resumability_config.js +0 -33
  369. package/dist/web/artifacts/base_artifact_service.js +0 -7
  370. package/dist/web/artifacts/file_artifact_service.js +0 -568
  371. package/dist/web/artifacts/gcs_artifact_service.js +0 -298
  372. package/dist/web/artifacts/in_memory_artifact_service.js +0 -172
  373. package/dist/web/artifacts/registry.js +0 -36
  374. package/dist/web/artifacts/scoped_artifact_service.js +0 -89
  375. package/dist/web/auth/auth_credential.js +0 -18
  376. package/dist/web/auth/auth_handler.js +0 -151
  377. package/dist/web/auth/auth_preprocessor.js +0 -184
  378. package/dist/web/auth/auth_provider_registry.js +0 -37
  379. package/dist/web/auth/auth_schemes.js +0 -36
  380. package/dist/web/auth/auth_tool.js +0 -7
  381. package/dist/web/auth/base_auth_provider.js +0 -7
  382. package/dist/web/auth/credential_response_binding.js +0 -91
  383. package/dist/web/auth/credential_service/base_credential_service.js +0 -7
  384. package/dist/web/auth/credential_service/in_memory_credential_service.js +0 -50
  385. package/dist/web/auth/credential_service/session_state_credential_service.js +0 -27
  386. package/dist/web/auth/exchanger/base_credential_exchanger.js +0 -16
  387. package/dist/web/auth/exchanger/credential_exchanger_registry.js +0 -35
  388. package/dist/web/auth/oauth2/oauth2_credential_exchanger.js +0 -194
  389. package/dist/web/auth/oauth2/oauth2_credential_refresher.js +0 -105
  390. package/dist/web/auth/oauth2/oauth2_discovery.js +0 -196
  391. package/dist/web/auth/oauth2/oauth2_utils.js +0 -105
  392. package/dist/web/auth/refresher/credential_refresher_registry.js +0 -44
  393. package/dist/web/code_executors/agent_engine_sandbox_code_executor.js +0 -284
  394. package/dist/web/code_executors/base_code_executor.js +0 -68
  395. package/dist/web/code_executors/built_in_code_executor.js +0 -50
  396. package/dist/web/code_executors/code_execution_utils.js +0 -131
  397. package/dist/web/code_executors/code_executor_context.js +0 -174
  398. package/dist/web/code_executors/unsafe_local_code_executor.js +0 -221
  399. package/dist/web/common.js +0 -452
  400. package/dist/web/context/agent_controlled_context_compactor.js +0 -76
  401. package/dist/web/context/anchored_context_compactor.js +0 -120
  402. package/dist/web/context/base_context_compactor.js +0 -7
  403. package/dist/web/context/compaction_utils.js +0 -42
  404. package/dist/web/context/summarizers/base_summarizer.js +0 -7
  405. package/dist/web/context/summarizers/llm_summarizer.js +0 -91
  406. package/dist/web/context/token_based_context_compactor.js +0 -118
  407. package/dist/web/context/trajectory_thought_pruning_compactor.js +0 -47
  408. package/dist/web/context/truncating_context_compactor.js +0 -34
  409. package/dist/web/environment/base_environment.js +0 -71
  410. package/dist/web/environment/local_environment.js +0 -165
  411. package/dist/web/events/compacted_event.js +0 -51
  412. package/dist/web/events/event.js +0 -208
  413. package/dist/web/events/event_actions.js +0 -74
  414. package/dist/web/events/structured_events.js +0 -79
  415. package/dist/web/examples/base_example_provider.js +0 -32
  416. package/dist/web/examples/example.js +0 -7
  417. package/dist/web/examples/example_util.js +0 -83
  418. package/dist/web/features/feature_registry.js +0 -115
  419. package/dist/web/index.js +0 -57
  420. package/dist/web/integrations/agent_registry/agent_registry.js +0 -337
  421. package/dist/web/integrations/agent_registry/agent_registry_mcp_toolset.js +0 -120
  422. package/dist/web/integrations/agent_registry/helpers.js +0 -32
  423. package/dist/web/integrations/agent_registry/types.js +0 -20
  424. package/dist/web/memory/base_memory_service.js +0 -7
  425. package/dist/web/memory/in_memory_memory_service.js +0 -89
  426. package/dist/web/memory/memory_entry.js +0 -7
  427. package/dist/web/memory/vertex_ai_memory_bank_service.js +0 -496
  428. package/dist/web/models/apigee_llm.js +0 -227
  429. package/dist/web/models/base_llm.js +0 -78
  430. package/dist/web/models/base_llm_connection.js +0 -7
  431. package/dist/web/models/gemini_llm_connection.js +0 -183
  432. package/dist/web/models/google_llm.js +0 -396
  433. package/dist/web/models/interactions_utils.js +0 -745
  434. package/dist/web/models/llm_request.js +0 -57
  435. package/dist/web/models/llm_response.js +0 -48
  436. package/dist/web/models/registry.js +0 -100
  437. package/dist/web/models/routed_llm.js +0 -112
  438. package/dist/web/plugins/base_plugin.js +0 -305
  439. package/dist/web/plugins/global_instruction_plugin.js +0 -71
  440. package/dist/web/plugins/logging_plugin.js +0 -241
  441. package/dist/web/plugins/plugin_manager.js +0 -318
  442. package/dist/web/plugins/security_plugin.js +0 -148
  443. package/dist/web/runner/in_memory_runner.js +0 -50
  444. package/dist/web/runner/runner.js +0 -747
  445. package/dist/web/sessions/base_session_service.js +0 -123
  446. package/dist/web/sessions/database_session_service.js +0 -440
  447. package/dist/web/sessions/db/operations.js +0 -124
  448. package/dist/web/sessions/db/schema.js +0 -216
  449. package/dist/web/sessions/in_memory_session_service.js +0 -251
  450. package/dist/web/sessions/registry.js +0 -38
  451. package/dist/web/sessions/session.js +0 -23
  452. package/dist/web/sessions/state.js +0 -159
  453. package/dist/web/sessions/state_write_order.js +0 -74
  454. package/dist/web/sessions/vertex_ai_session_service.js +0 -546
  455. package/dist/web/skills/gcp_skill_registry.js +0 -80
  456. package/dist/web/skills/loader.js +0 -372
  457. package/dist/web/skills/prompt.js +0 -34
  458. package/dist/web/skills/skill.js +0 -67
  459. package/dist/web/skills/skill_registry.js +0 -7
  460. package/dist/web/telemetry/google_cloud.js +0 -99
  461. package/dist/web/telemetry/setup.js +0 -89
  462. package/dist/web/telemetry/tracing.js +0 -304
  463. package/dist/web/tools/agent_tool.js +0 -150
  464. package/dist/web/tools/base_tool.js +0 -116
  465. package/dist/web/tools/base_toolset.js +0 -62
  466. package/dist/web/tools/consolidate_context_tool.js +0 -55
  467. package/dist/web/tools/enterprise_web_search_tool.js +0 -60
  468. package/dist/web/tools/example_tool.js +0 -46
  469. package/dist/web/tools/exit_loop_tool.js +0 -47
  470. package/dist/web/tools/finish_task_tool.js +0 -92
  471. package/dist/web/tools/forwarding_artifact_service.js +0 -51
  472. package/dist/web/tools/function_tool.js +0 -151
  473. package/dist/web/tools/get_user_choice_tool.js +0 -27
  474. package/dist/web/tools/google_maps_grounding_tool.js +0 -59
  475. package/dist/web/tools/google_search_tool.js +0 -55
  476. package/dist/web/tools/load_artifacts_tool.js +0 -159
  477. package/dist/web/tools/load_memory_tool.js +0 -83
  478. package/dist/web/tools/long_running_tool.js +0 -58
  479. package/dist/web/tools/mcp/index.js +0 -11
  480. package/dist/web/tools/mcp/load_mcp_resource_tool.js +0 -111
  481. package/dist/web/tools/mcp/mcp_session_manager.js +0 -114
  482. package/dist/web/tools/mcp/mcp_tool.js +0 -47
  483. package/dist/web/tools/mcp/mcp_toolset.js +0 -144
  484. package/dist/web/tools/openapi_tool/auth/auth_helpers.js +0 -53
  485. package/dist/web/tools/openapi_tool/auth/credential_exchangers/auto_auth_credential_exchanger.js +0 -62
  486. package/dist/web/tools/openapi_tool/auth/credential_exchangers/service_account_exchanger.js +0 -113
  487. package/dist/web/tools/openapi_tool/openapi_spec_parser/openapi_spec_parser.js +0 -242
  488. package/dist/web/tools/openapi_tool/openapi_spec_parser/operation_parser.js +0 -200
  489. package/dist/web/tools/openapi_tool/openapi_spec_parser/tool_auth_handler.js +0 -98
  490. package/dist/web/tools/openapi_tool/openapi_toolset.js +0 -99
  491. package/dist/web/tools/openapi_tool/rest_api_tool.js +0 -247
  492. package/dist/web/tools/preload_memory_tool.js +0 -81
  493. package/dist/web/tools/request_input_tool.js +0 -29
  494. package/dist/web/tools/skill/list_skills_tool.js +0 -52
  495. package/dist/web/tools/skill/load_skill_resource_tool.js +0 -192
  496. package/dist/web/tools/skill/load_skill_tool.js +0 -96
  497. package/dist/web/tools/skill/run_skill_inline_script_tool.js +0 -191
  498. package/dist/web/tools/skill/run_skill_script_tool.js +0 -227
  499. package/dist/web/tools/skill/search_skills_tool.js +0 -84
  500. package/dist/web/tools/skill/skill_toolset.js +0 -185
  501. package/dist/web/tools/tool_confirmation.js +0 -43
  502. package/dist/web/tools/url_context_tool.js +0 -48
  503. package/dist/web/tools/vertex_ai_search_tool.js +0 -107
  504. package/dist/web/tools/vertex_rag_retrieval_tool.js +0 -40
  505. package/dist/web/utils/async_hooks_shim.js +0 -28
  506. package/dist/web/utils/async_queue.js +0 -88
  507. package/dist/web/utils/branch_trie.js +0 -16
  508. package/dist/web/utils/case_utils.js +0 -28
  509. package/dist/web/utils/client_labels.js +0 -70
  510. package/dist/web/utils/crypto_shim.js +0 -18
  511. package/dist/web/utils/deprecated.js +0 -40
  512. package/dist/web/utils/env_aware_utils.js +0 -115
  513. package/dist/web/utils/error_utils.js +0 -101
  514. package/dist/web/utils/experimental.js +0 -54
  515. package/dist/web/utils/failover_utils.js +0 -100
  516. package/dist/web/utils/file_extension_utils.js +0 -55
  517. package/dist/web/utils/file_utils.js +0 -108
  518. package/dist/web/utils/gemini_schema_util.js +0 -177
  519. package/dist/web/utils/genai_schema_to_json.js +0 -80
  520. package/dist/web/utils/live_connection_utils.js +0 -257
  521. package/dist/web/utils/logger.js +0 -140
  522. package/dist/web/utils/model_name.js +0 -75
  523. package/dist/web/utils/object_notation_utils.js +0 -54
  524. package/dist/web/utils/optional_peer.js +0 -38
  525. package/dist/web/utils/output_schema_utils.js +0 -18
  526. package/dist/web/utils/partial_copy.js +0 -26
  527. package/dist/web/utils/redact_uri.js +0 -39
  528. package/dist/web/utils/schema.js +0 -167
  529. package/dist/web/utils/simple_zod_to_json.js +0 -134
  530. package/dist/web/utils/streaming_utils.js +0 -438
  531. package/dist/web/utils/task.js +0 -38
  532. package/dist/web/utils/variant_utils.js +0 -23
  533. package/dist/web/utils/vertex_ai_utils.js +0 -27
  534. package/dist/web/version.js +0 -11
  535. package/dist/web/workflow/base_node.js +0 -215
  536. package/dist/web/workflow/branch_path.js +0 -77
  537. package/dist/web/workflow/dynamic_node_scheduler.js +0 -202
  538. package/dist/web/workflow/errors.js +0 -140
  539. package/dist/web/workflow/graph.js +0 -127
  540. package/dist/web/workflow/index.js +0 -80
  541. package/dist/web/workflow/node.js +0 -87
  542. package/dist/web/workflow/node_builders.js +0 -40
  543. package/dist/web/workflow/node_context.js +0 -236
  544. package/dist/web/workflow/node_error_event.js +0 -86
  545. package/dist/web/workflow/node_runner.js +0 -481
  546. package/dist/web/workflow/node_state.js +0 -43
  547. package/dist/web/workflow/node_status.js +0 -20
  548. package/dist/web/workflow/nodes/function_node.js +0 -221
  549. package/dist/web/workflow/nodes/join_node.js +0 -47
  550. package/dist/web/workflow/nodes/node_tool.js +0 -131
  551. package/dist/web/workflow/nodes/parallel_worker.js +0 -120
  552. package/dist/web/workflow/nodes/tool_node.js +0 -126
  553. package/dist/web/workflow/request_input.js +0 -36
  554. package/dist/web/workflow/retry_config.js +0 -43
  555. package/dist/web/workflow/run_llm_agent_as_node.js +0 -266
  556. package/dist/web/workflow/run_node_as_invocation.js +0 -170
  557. package/dist/web/workflow/schedule_dynamic_node.js +0 -26
  558. package/dist/web/workflow/trigger.js +0 -7
  559. package/dist/web/workflow/utils/graph_parser.js +0 -188
  560. package/dist/web/workflow/utils/graph_validation.js +0 -189
  561. package/dist/web/workflow/utils/hitl_utils.js +0 -239
  562. package/dist/web/workflow/utils/rehydration_utils.js +0 -342
  563. package/dist/web/workflow/utils/retry_utils.js +0 -82
  564. package/dist/web/workflow/utils/workflow_graph_utils.js +0 -115
  565. package/dist/web/workflow/workflow.js +0 -529
  566. /package/dist/{web/artifacts/session_artifact_service.js → esm/tools/resume_inputs.js} +0 -0
@@ -1,745 +0,0 @@
1
- import {createRequire as topLevelCreateRequire} from 'module';
2
- const require = topLevelCreateRequire(import.meta.url);
3
- var __defProp = Object.defineProperty;
4
- var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
5
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
6
- var __await = function(promise, isYieldStar) {
7
- this[0] = promise;
8
- this[1] = isYieldStar;
9
- };
10
- var __asyncGenerator = (__this, __arguments, generator) => {
11
- var resume = (k, v, yes, no) => {
12
- try {
13
- var x = generator[k](v), isAwait = (v = x.value) instanceof __await, done = x.done;
14
- 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));
15
- } catch (e) {
16
- no(e);
17
- }
18
- }, method = (k) => it[k] = (x) => new Promise((yes, no) => resume(k, x, yes, no)), it = {};
19
- return generator = generator.apply(__this, __arguments), it[__knownSymbol("asyncIterator")] = () => it, method("next"), method("throw"), method("return"), it;
20
- };
21
- 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);
22
- /**
23
- * @license
24
- * Copyright 2026 Google LLC
25
- * SPDX-License-Identifier: Apache-2.0
26
- */
27
- import {
28
- Outcome
29
- } from "@google/genai";
30
- import { logger } from "../utils/logger.js";
31
- function getInteractionMediaType(mimeType) {
32
- switch (mimeType.split("/")[0]) {
33
- case "image":
34
- return "image";
35
- case "audio":
36
- return "audio";
37
- case "video":
38
- return "video";
39
- default:
40
- return "document";
41
- }
42
- }
43
- __name(getInteractionMediaType, "getInteractionMediaType");
44
- function getLatestUserContents(contents) {
45
- if (!contents || contents.length === 0) {
46
- return [];
47
- }
48
- const latestUserContents = [];
49
- for (let i = contents.length - 1; i >= 0; i--) {
50
- const content = contents[i];
51
- if (content.role === "user") {
52
- latestUserContents.unshift(content);
53
- } else {
54
- break;
55
- }
56
- }
57
- let hasFunctionResult = false;
58
- for (const content of latestUserContents) {
59
- if (content.parts) {
60
- for (const part of content.parts) {
61
- if (part.functionResponse !== void 0 && part.functionResponse !== null) {
62
- hasFunctionResult = true;
63
- break;
64
- }
65
- }
66
- }
67
- if (hasFunctionResult) {
68
- break;
69
- }
70
- }
71
- if (hasFunctionResult && contents.length > latestUserContents.length) {
72
- const userStartIdx = contents.length - latestUserContents.length;
73
- if (userStartIdx > 0) {
74
- const precedingContent = contents[userStartIdx - 1];
75
- if (precedingContent.role === "model" && precedingContent.parts) {
76
- for (const part of precedingContent.parts) {
77
- if (part.functionCall !== void 0 && part.functionCall !== null) {
78
- return [precedingContent, ...latestUserContents];
79
- }
80
- }
81
- }
82
- }
83
- }
84
- return latestUserContents;
85
- }
86
- __name(getLatestUserContents, "getLatestUserContents");
87
- function convertPartToMediaContent(part) {
88
- if (part.text !== void 0 && part.text !== null) {
89
- return { type: "text", text: part.text };
90
- }
91
- if (part.inlineData !== void 0 && part.inlineData !== null) {
92
- const mimeType = part.inlineData.mimeType || "";
93
- return {
94
- type: getInteractionMediaType(mimeType),
95
- data: part.inlineData.data,
96
- mime_type: mimeType
97
- };
98
- }
99
- if (part.fileData !== void 0 && part.fileData !== null) {
100
- const mimeType = part.fileData.mimeType || "";
101
- return {
102
- type: getInteractionMediaType(mimeType),
103
- uri: part.fileData.fileUri,
104
- mime_type: mimeType
105
- };
106
- }
107
- return null;
108
- }
109
- __name(convertPartToMediaContent, "convertPartToMediaContent");
110
- function convertContentToSteps(content) {
111
- const steps = [];
112
- const role = content.role || "user";
113
- if (role === "user") {
114
- const mediaContents = [];
115
- if (content.parts) {
116
- for (const part of content.parts) {
117
- if (part.functionResponse) {
118
- steps.push({
119
- type: "function_result",
120
- call_id: part.functionResponse.id || "",
121
- name: part.functionResponse.name || "",
122
- result: part.functionResponse.response
123
- });
124
- } else if (part.codeExecutionResult) {
125
- const isError = part.codeExecutionResult.outcome === Outcome.OUTCOME_FAILED || part.codeExecutionResult.outcome === Outcome.OUTCOME_DEADLINE_EXCEEDED;
126
- steps.push({
127
- type: "code_execution_result",
128
- call_id: "",
129
- result: part.codeExecutionResult.output || "",
130
- is_error: isError
131
- });
132
- } else {
133
- const mediaContent = convertPartToMediaContent(part);
134
- if (mediaContent) {
135
- mediaContents.push(mediaContent);
136
- }
137
- }
138
- }
139
- }
140
- if (mediaContents.length > 0) {
141
- steps.push({
142
- type: "user_input",
143
- content: mediaContents
144
- });
145
- }
146
- } else if (role === "model") {
147
- const mediaContents = [];
148
- if (content.parts) {
149
- for (const part of content.parts) {
150
- if (part.functionCall) {
151
- const step = {
152
- type: "function_call",
153
- id: part.functionCall.id || "",
154
- name: part.functionCall.name || "",
155
- arguments: part.functionCall.args || {}
156
- };
157
- if (part.thoughtSignature) {
158
- step.signature = part.thoughtSignature;
159
- }
160
- steps.push(step);
161
- } else if (part.executableCode) {
162
- steps.push({
163
- type: "code_execution_call",
164
- id: "",
165
- arguments: {
166
- code: part.executableCode.code || "",
167
- language: "python"
168
- }
169
- });
170
- } else if (part.thought) {
171
- const step = {
172
- type: "thought"
173
- };
174
- if (part.thoughtSignature) {
175
- step.signature = part.thoughtSignature;
176
- }
177
- steps.push(step);
178
- } else {
179
- const mediaContent = convertPartToMediaContent(part);
180
- if (mediaContent) {
181
- mediaContents.push(mediaContent);
182
- }
183
- }
184
- }
185
- }
186
- if (mediaContents.length > 0) {
187
- steps.push({
188
- type: "model_output",
189
- content: mediaContents
190
- });
191
- }
192
- }
193
- return steps;
194
- }
195
- __name(convertContentToSteps, "convertContentToSteps");
196
- function convertMediaContentToPart(content) {
197
- if (content.type === "text") {
198
- return { text: content.text || "" };
199
- }
200
- if (content.type === "image" || content.type === "audio" || content.type === "video" || content.type === "document") {
201
- const media = content;
202
- if (media.data) {
203
- return {
204
- inlineData: {
205
- data: media.data,
206
- mimeType: media.mime_type || ""
207
- }
208
- };
209
- } else if (media.uri) {
210
- return {
211
- fileData: {
212
- fileUri: media.uri,
213
- mimeType: media.mime_type || ""
214
- }
215
- };
216
- }
217
- }
218
- return null;
219
- }
220
- __name(convertMediaContentToPart, "convertMediaContentToPart");
221
- function convertStepToParts(step) {
222
- if (!step || !step.type) {
223
- return [];
224
- }
225
- switch (step.type) {
226
- case "model_output": {
227
- const modelOutputStep = step;
228
- const parts = [];
229
- if (modelOutputStep.content) {
230
- for (const content of modelOutputStep.content) {
231
- const part = convertMediaContentToPart(content);
232
- if (part) {
233
- parts.push(part);
234
- }
235
- }
236
- }
237
- return parts;
238
- }
239
- case "user_input": {
240
- const userInputStep = step;
241
- const parts = [];
242
- if (userInputStep.content) {
243
- for (const content of userInputStep.content) {
244
- const part = convertMediaContentToPart(content);
245
- if (part) {
246
- parts.push(part);
247
- }
248
- }
249
- }
250
- return parts;
251
- }
252
- case "function_call": {
253
- const functionCallStep = step;
254
- const part = {
255
- functionCall: {
256
- id: functionCallStep.id,
257
- name: functionCallStep.name,
258
- args: functionCallStep.arguments || {}
259
- }
260
- };
261
- if (functionCallStep.signature) {
262
- part.thoughtSignature = functionCallStep.signature;
263
- }
264
- return [part];
265
- }
266
- case "function_result": {
267
- const functionResultStep = step;
268
- const result = functionResultStep.result;
269
- return [
270
- {
271
- functionResponse: {
272
- id: functionResultStep.call_id,
273
- name: functionResultStep.name || "",
274
- response: typeof result === "object" && result !== null ? result : { output: result }
275
- }
276
- }
277
- ];
278
- }
279
- case "code_execution_call": {
280
- const codeExecutionCallStep = step;
281
- const args = codeExecutionCallStep.arguments || {};
282
- return [
283
- {
284
- executableCode: {
285
- code: args.code || "",
286
- language: (args.language || "PYTHON").toUpperCase()
287
- }
288
- }
289
- ];
290
- }
291
- case "code_execution_result": {
292
- const codeExecutionResultStep = step;
293
- return [
294
- {
295
- codeExecutionResult: {
296
- output: codeExecutionResultStep.result || "",
297
- outcome: codeExecutionResultStep.is_error ? Outcome.OUTCOME_FAILED : Outcome.OUTCOME_OK
298
- }
299
- }
300
- ];
301
- }
302
- case "thought": {
303
- const thoughtStep = step;
304
- const part = {
305
- thought: true
306
- };
307
- if (thoughtStep.signature) {
308
- part.thoughtSignature = thoughtStep.signature;
309
- }
310
- return [part];
311
- }
312
- default:
313
- return [];
314
- }
315
- }
316
- __name(convertStepToParts, "convertStepToParts");
317
- function convertToolsConfigToInteractionsFormat(config) {
318
- if (!config.tools) {
319
- return [];
320
- }
321
- const interactionTools = [];
322
- for (const tool of config.tools) {
323
- const t = tool;
324
- if (t.functionDeclarations) {
325
- for (const funcDecl of t.functionDeclarations) {
326
- const funcTool = {
327
- type: "function",
328
- name: funcDecl.name
329
- };
330
- if (funcDecl.description) {
331
- funcTool.description = funcDecl.description;
332
- }
333
- if (funcDecl.parameters) {
334
- if (funcDecl.parameters.properties) {
335
- const props = {};
336
- for (const [k, v] of Object.entries(
337
- funcDecl.parameters.properties
338
- )) {
339
- props[k] = JSON.parse(JSON.stringify(v));
340
- }
341
- funcTool.parameters = {
342
- type: "object",
343
- properties: props,
344
- required: funcDecl.parameters.required ? [...funcDecl.parameters.required] : void 0
345
- };
346
- }
347
- } else if (funcDecl.parametersJsonSchema) {
348
- funcTool.parameters = funcDecl.parametersJsonSchema;
349
- }
350
- interactionTools.push(funcTool);
351
- }
352
- }
353
- if (t.googleSearch) {
354
- interactionTools.push({ type: "google_search" });
355
- }
356
- if (t.codeExecution) {
357
- interactionTools.push({ type: "code_execution" });
358
- }
359
- if (t.urlContext) {
360
- interactionTools.push({ type: "url_context" });
361
- }
362
- }
363
- return interactionTools;
364
- }
365
- __name(convertToolsConfigToInteractionsFormat, "convertToolsConfigToInteractionsFormat");
366
- function findLastPart(parts, predicate) {
367
- for (let i = parts.length - 1; i >= 0; i--) {
368
- if (predicate(parts[i])) {
369
- return parts[i];
370
- }
371
- }
372
- return void 0;
373
- }
374
- __name(findLastPart, "findLastPart");
375
- function getLatestModelParts(steps) {
376
- if (!steps || steps.length === 0) {
377
- return [];
378
- }
379
- const latestParts = [];
380
- for (let i = steps.length - 1; i >= 0; i--) {
381
- const step = steps[i];
382
- if (step.type === "user_input" || step.type === "function_result" || step.type === "code_execution_result") {
383
- break;
384
- }
385
- const parts = convertStepToParts(step);
386
- latestParts.unshift(...parts);
387
- }
388
- return latestParts;
389
- }
390
- __name(getLatestModelParts, "getLatestModelParts");
391
- function convertInteractionToLlmResponse(interaction) {
392
- if (interaction.status === "failed") {
393
- let errorMsg = "Unknown error";
394
- let errorCode = "UNKNOWN_ERROR";
395
- if (interaction.error) {
396
- errorMsg = interaction.error.message || errorMsg;
397
- errorCode = interaction.error.code || errorCode;
398
- }
399
- return {
400
- errorCode,
401
- errorMessage: errorMsg,
402
- interactionId: interaction.id
403
- };
404
- }
405
- const parts = getLatestModelParts(interaction.steps || []);
406
- let content = void 0;
407
- if (parts.length > 0) {
408
- content = { role: "model", parts };
409
- }
410
- let usageMetadata = void 0;
411
- if (interaction.usage) {
412
- const inputTokens = interaction.usage.total_input_tokens || 0;
413
- const outputTokens = interaction.usage.total_output_tokens || 0;
414
- usageMetadata = {
415
- promptTokenCount: inputTokens,
416
- candidatesTokenCount: outputTokens,
417
- totalTokenCount: inputTokens + outputTokens
418
- };
419
- }
420
- let finishReason = void 0;
421
- if (interaction.status === "completed" || interaction.status === "requires_action") {
422
- finishReason = "STOP";
423
- }
424
- return {
425
- content,
426
- usageMetadata,
427
- finishReason,
428
- turnComplete: interaction.status === "completed" || interaction.status === "requires_action",
429
- interactionId: interaction.id
430
- };
431
- }
432
- __name(convertInteractionToLlmResponse, "convertInteractionToLlmResponse");
433
- function convertInteractionEventToLlmResponse(event, aggregatedParts, interactionId) {
434
- var _a, _b;
435
- const eventType = event.event_type || event.eventType;
436
- if (eventType === "step.start") {
437
- const stepStart = event;
438
- const step = stepStart.step;
439
- if (step.type === "function_call") {
440
- const fcStep = step;
441
- const part = {
442
- functionCall: {
443
- id: fcStep.id,
444
- name: fcStep.name,
445
- args: {}
446
- },
447
- partMetadata: {
448
- accumulatedArgs: "",
449
- isComplete: false
450
- }
451
- };
452
- if (fcStep.signature) {
453
- part.thoughtSignature = fcStep.signature;
454
- }
455
- aggregatedParts.push(part);
456
- return null;
457
- }
458
- if (step.type === "thought") {
459
- const part = {
460
- thought: true,
461
- partMetadata: {
462
- isComplete: false
463
- }
464
- };
465
- if (step.signature) {
466
- part.thoughtSignature = step.signature;
467
- }
468
- aggregatedParts.push(part);
469
- return null;
470
- }
471
- } else if (eventType === "step.delta") {
472
- const stepDelta = event;
473
- const delta = stepDelta.delta;
474
- if (!delta) {
475
- return null;
476
- }
477
- if (delta.type === "text") {
478
- const text = delta.text || "";
479
- if (text) {
480
- const part = { text };
481
- aggregatedParts.push(part);
482
- return {
483
- content: { role: "model", parts: [part] },
484
- partial: true,
485
- turnComplete: false,
486
- interactionId
487
- };
488
- }
489
- } else if (delta.type === "arguments_delta") {
490
- const activePart = findLastPart(
491
- aggregatedParts,
492
- (p) => !!(p.functionCall && p.partMetadata && !p.partMetadata.isComplete)
493
- );
494
- if (activePart && activePart.partMetadata && delta.arguments) {
495
- activePart.partMetadata.accumulatedArgs = activePart.partMetadata.accumulatedArgs + delta.arguments;
496
- }
497
- return null;
498
- } else if (delta.type === "thought_signature") {
499
- const activePart = findLastPart(
500
- aggregatedParts,
501
- (p) => !!((p.thought || p.functionCall) && p.partMetadata && !p.partMetadata.isComplete)
502
- );
503
- if (activePart && delta.signature) {
504
- activePart.thoughtSignature = delta.signature;
505
- }
506
- return null;
507
- } else if (delta.type === "image" || delta.type === "audio" || delta.type === "video" || delta.type === "document") {
508
- const part = convertMediaContentToPart(delta);
509
- if (part) {
510
- aggregatedParts.push(part);
511
- return {
512
- content: { role: "model", parts: [part] },
513
- partial: false,
514
- turnComplete: false,
515
- interactionId
516
- };
517
- }
518
- }
519
- } else if (eventType === "step.stop") {
520
- const activePart = findLastPart(
521
- aggregatedParts,
522
- (p) => !!(p.partMetadata && !p.partMetadata.isComplete)
523
- );
524
- if (activePart && activePart.partMetadata) {
525
- activePart.partMetadata.isComplete = true;
526
- if (activePart.functionCall) {
527
- const accumulatedArgs = activePart.partMetadata.accumulatedArgs;
528
- try {
529
- activePart.functionCall.args = accumulatedArgs ? JSON.parse(accumulatedArgs) : {};
530
- } catch (e) {
531
- logger.error(
532
- "Failed to parse accumulated arguments: ".concat(accumulatedArgs),
533
- e
534
- );
535
- activePart.functionCall.args = {};
536
- }
537
- delete activePart.partMetadata;
538
- return {
539
- content: { role: "model", parts: [activePart] },
540
- partial: false,
541
- turnComplete: false,
542
- interactionId
543
- };
544
- }
545
- if (activePart.thought) {
546
- delete activePart.partMetadata;
547
- return null;
548
- }
549
- }
550
- } else if (eventType === "interaction.completed") {
551
- return {
552
- content: aggregatedParts.length > 0 ? { role: "model", parts: [...aggregatedParts] } : void 0,
553
- partial: false,
554
- turnComplete: true,
555
- finishReason: "STOP",
556
- interactionId
557
- };
558
- } else if (eventType === "interaction.status_update") {
559
- const statusUpdate = event;
560
- const status = statusUpdate.status;
561
- if (status === "completed" || status === "requires_action") {
562
- return {
563
- content: aggregatedParts.length > 0 ? { role: "model", parts: [...aggregatedParts] } : void 0,
564
- partial: false,
565
- turnComplete: true,
566
- finishReason: "STOP",
567
- interactionId
568
- };
569
- } else if (status === "failed") {
570
- const error = statusUpdate.error;
571
- return {
572
- errorCode: error ? error.code : "UNKNOWN_ERROR",
573
- errorMessage: error ? error.message : "Unknown error",
574
- turnComplete: true,
575
- interactionId
576
- };
577
- }
578
- } else if (eventType === "error") {
579
- return {
580
- errorCode: ((_a = event.error) == null ? void 0 : _a.code) || event.code || "UNKNOWN_ERROR",
581
- errorMessage: ((_b = event.error) == null ? void 0 : _b.message) || event.message || "Unknown error",
582
- turnComplete: true,
583
- interactionId
584
- };
585
- }
586
- return null;
587
- }
588
- __name(convertInteractionEventToLlmResponse, "convertInteractionEventToLlmResponse");
589
- function buildGenerationConfig(config) {
590
- const generationConfig = {};
591
- if (config.temperature !== void 0 && config.temperature !== null) {
592
- generationConfig["temperature"] = config.temperature;
593
- }
594
- if (config.topP !== void 0 && config.topP !== null) {
595
- generationConfig["top_p"] = config.topP;
596
- }
597
- if (config.topK !== void 0 && config.topK !== null) {
598
- generationConfig["top_k"] = config.topK;
599
- }
600
- if (config.maxOutputTokens !== void 0 && config.maxOutputTokens !== null) {
601
- generationConfig["max_output_tokens"] = config.maxOutputTokens;
602
- }
603
- if (config.stopSequences) {
604
- generationConfig["stop_sequences"] = config.stopSequences;
605
- }
606
- if (config.presencePenalty !== void 0 && config.presencePenalty !== null) {
607
- generationConfig["presence_penalty"] = config.presencePenalty;
608
- }
609
- if (config.frequencyPenalty !== void 0 && config.frequencyPenalty !== null) {
610
- generationConfig["frequency_penalty"] = config.frequencyPenalty;
611
- }
612
- return generationConfig;
613
- }
614
- __name(buildGenerationConfig, "buildGenerationConfig");
615
- function extractSystemInstruction(config) {
616
- const systemInstruction = config.systemInstruction;
617
- if (!systemInstruction) {
618
- return void 0;
619
- }
620
- if (typeof systemInstruction === "string") {
621
- return systemInstruction;
622
- }
623
- if (typeof systemInstruction === "object" && "parts" in systemInstruction && Array.isArray(systemInstruction.parts)) {
624
- const texts = [];
625
- for (const part of systemInstruction.parts) {
626
- const p = part;
627
- if (p.text) {
628
- texts.push(p.text);
629
- }
630
- }
631
- return texts.length > 0 ? texts.join("\n") : void 0;
632
- }
633
- return void 0;
634
- }
635
- __name(extractSystemInstruction, "extractSystemInstruction");
636
- function extractStreamInteractionId(event) {
637
- if (event.interaction_id || event.interactionId) {
638
- return event.interaction_id || event.interactionId;
639
- }
640
- if (event.interaction && event.interaction.id) {
641
- return event.interaction.id;
642
- }
643
- if (event.event_type === "interaction" || event.eventType === "interaction") {
644
- return event.id;
645
- }
646
- return void 0;
647
- }
648
- __name(extractStreamInteractionId, "extractStreamInteractionId");
649
- function generateContentViaInteractions(apiClient, llmRequest, stream) {
650
- return __asyncGenerator(this, null, function* () {
651
- let contents = llmRequest.contents;
652
- if (llmRequest.previousInteractionId && contents) {
653
- contents = getLatestUserContents(contents);
654
- }
655
- const inputSteps = [];
656
- if (contents) {
657
- for (const content of contents) {
658
- inputSteps.push(...convertContentToSteps(content));
659
- }
660
- }
661
- const interactionTools = convertToolsConfigToInteractionsFormat(
662
- llmRequest.config || {}
663
- );
664
- const systemInstruction = extractSystemInstruction(llmRequest.config || {});
665
- const generationConfig = buildGenerationConfig(llmRequest.config || {});
666
- const previousInteractionId = llmRequest.previousInteractionId;
667
- logger.info(
668
- "Sending request via interactions API, model: ".concat(llmRequest.model, ", stream: ").concat(stream, ", previous_interaction_id: ").concat(previousInteractionId)
669
- );
670
- let currentInteractionId = previousInteractionId;
671
- if (stream) {
672
- const responses = yield new __await(apiClient.interactions.create({
673
- model: llmRequest.model || "gemini-2.5-flash",
674
- input: inputSteps,
675
- stream: true,
676
- system_instruction: systemInstruction,
677
- tools: interactionTools.length > 0 ? interactionTools : void 0,
678
- generation_config: Object.keys(generationConfig).length > 0 ? generationConfig : void 0,
679
- previous_interaction_id: previousInteractionId
680
- }));
681
- const aggregatedParts = [];
682
- try {
683
- for (var iter = __forAwait(responses), more, temp, error; more = !(temp = yield new __await(iter.next())).done; more = false) {
684
- const event = temp.value;
685
- const sseEvent = event;
686
- const interactionId = extractStreamInteractionId(sseEvent);
687
- if (interactionId) {
688
- currentInteractionId = interactionId;
689
- }
690
- const llmResponse = convertInteractionEventToLlmResponse(
691
- sseEvent,
692
- aggregatedParts,
693
- currentInteractionId
694
- );
695
- if (llmResponse) {
696
- yield llmResponse;
697
- }
698
- }
699
- } catch (temp) {
700
- error = [temp];
701
- } finally {
702
- try {
703
- more && (temp = iter.return) && (yield new __await(temp.call(iter)));
704
- } finally {
705
- if (error)
706
- throw error[0];
707
- }
708
- }
709
- if (aggregatedParts.length > 0) {
710
- yield {
711
- content: { role: "model", parts: aggregatedParts },
712
- partial: false,
713
- turnComplete: true,
714
- finishReason: "STOP",
715
- interactionId: currentInteractionId
716
- };
717
- }
718
- } else {
719
- const interaction = yield new __await(apiClient.interactions.create({
720
- model: llmRequest.model || "gemini-2.5-flash",
721
- input: inputSteps,
722
- stream: false,
723
- system_instruction: systemInstruction,
724
- tools: interactionTools.length > 0 ? interactionTools : void 0,
725
- generation_config: Object.keys(generationConfig).length > 0 ? generationConfig : void 0,
726
- previous_interaction_id: previousInteractionId
727
- }));
728
- logger.info("Interaction response received from the model.");
729
- yield convertInteractionToLlmResponse(interaction);
730
- }
731
- });
732
- }
733
- __name(generateContentViaInteractions, "generateContentViaInteractions");
734
- export {
735
- buildGenerationConfig,
736
- convertContentToSteps,
737
- convertInteractionEventToLlmResponse,
738
- convertInteractionToLlmResponse,
739
- convertStepToParts,
740
- convertToolsConfigToInteractionsFormat,
741
- extractSystemInstruction,
742
- generateContentViaInteractions,
743
- getLatestModelParts,
744
- getLatestUserContents
745
- };