@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,123 +0,0 @@
1
- import {createRequire as topLevelCreateRequire} from 'module';
2
- const require = topLevelCreateRequire(import.meta.url);
3
- var __defProp = Object.defineProperty;
4
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
5
- /**
6
- * @license
7
- * Copyright 2025 Google LLC
8
- * SPDX-License-Identifier: Apache-2.0
9
- */
10
- import { cloneDeep } from "lodash-es";
11
- import { State } from "./state.js";
12
- import { carryDeltaStamps, shouldApplyDeltaWrite } from "./state_write_order.js";
13
- const _BaseSessionService = class _BaseSessionService {
14
- /**
15
- * Gets a session or creates one if it doesn't exist.
16
- *
17
- * @param request The request to get or create a session.
18
- * @return A promise that resolves to the session instance.
19
- */
20
- async getOrCreateSession(request) {
21
- if (!request.sessionId) {
22
- return this.createSession(request);
23
- }
24
- const session = await this.getSession({
25
- appName: request.appName,
26
- userId: request.userId,
27
- sessionId: request.sessionId
28
- });
29
- if (session) {
30
- return session;
31
- }
32
- return this.createSession(request);
33
- }
34
- /**
35
- * Appends an event to a session.
36
- *
37
- * @param request The request to append an event.
38
- * @return A promise that resolves to the event that was appended.
39
- */
40
- async appendEvent({ session, event }) {
41
- if (event.partial) {
42
- return event;
43
- }
44
- event = trimTempDeltaState(event);
45
- this.updateSessionState({ session, event });
46
- const index = session.events.findIndex((e) => e.id === event.id);
47
- if (index >= 0) {
48
- session.events[index] = event;
49
- } else {
50
- session.events.push(event);
51
- }
52
- return event;
53
- }
54
- /**
55
- * Updates the session state based on the event.
56
- *
57
- * @param request The request to update the session state.
58
- */
59
- updateSessionState({ session, event }) {
60
- if (!event.actions || !event.actions.stateDelta) {
61
- return;
62
- }
63
- for (const [key, value] of Object.entries(event.actions.stateDelta)) {
64
- if (key.startsWith(State.TEMP_PREFIX)) {
65
- continue;
66
- }
67
- if (!shouldApplyDeltaWrite(session.state, event.actions.stateDelta, key)) {
68
- continue;
69
- }
70
- Object.defineProperty(session.state, key, {
71
- value,
72
- writable: true,
73
- enumerable: true,
74
- configurable: true
75
- });
76
- }
77
- }
78
- };
79
- __name(_BaseSessionService, "BaseSessionService");
80
- let BaseSessionService = _BaseSessionService;
81
- function trimTempDeltaState(event) {
82
- if (!event.actions || !event.actions.stateDelta) {
83
- return event;
84
- }
85
- const stateDelta = event.actions.stateDelta;
86
- const filteredStateDelta = /* @__PURE__ */ Object.create(null);
87
- for (const [key, value] of Object.entries(stateDelta)) {
88
- if (!key.startsWith(State.TEMP_PREFIX)) {
89
- filteredStateDelta[key] = value;
90
- }
91
- }
92
- carryDeltaStamps(stateDelta, filteredStateDelta);
93
- event.actions.stateDelta = filteredStateDelta;
94
- return event;
95
- }
96
- __name(trimTempDeltaState, "trimTempDeltaState");
97
- function trimTempState(state) {
98
- const filteredState = /* @__PURE__ */ Object.create(null);
99
- for (const [key, value] of Object.entries(state)) {
100
- if (!key.startsWith(State.TEMP_PREFIX)) {
101
- filteredState[key] = value;
102
- }
103
- }
104
- return filteredState;
105
- }
106
- __name(trimTempState, "trimTempState");
107
- function mergeStates(appState = {}, userState = {}, sessionState = {}) {
108
- const merged = cloneDeep(sessionState);
109
- for (const [k, v] of Object.entries(appState)) {
110
- merged[State.APP_PREFIX + k] = v;
111
- }
112
- for (const [k, v] of Object.entries(userState)) {
113
- merged[State.USER_PREFIX + k] = v;
114
- }
115
- return merged;
116
- }
117
- __name(mergeStates, "mergeStates");
118
- export {
119
- BaseSessionService,
120
- mergeStates,
121
- trimTempDeltaState,
122
- trimTempState
123
- };
@@ -1,440 +0,0 @@
1
- import {createRequire as topLevelCreateRequire} from 'module';
2
- const require = topLevelCreateRequire(import.meta.url);
3
- var __defProp = Object.defineProperty;
4
- var __defProps = Object.defineProperties;
5
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
- var __spreadValues = (a, b) => {
11
- for (var prop in b || (b = {}))
12
- if (__hasOwnProp.call(b, prop))
13
- __defNormalProp(a, prop, b[prop]);
14
- if (__getOwnPropSymbols)
15
- for (var prop of __getOwnPropSymbols(b)) {
16
- if (__propIsEnum.call(b, prop))
17
- __defNormalProp(a, prop, b[prop]);
18
- }
19
- return a;
20
- };
21
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
22
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
23
- /**
24
- * @license
25
- * Copyright 2026 Google LLC
26
- * SPDX-License-Identifier: Apache-2.0
27
- */
28
- import {
29
- LockMode,
30
- MikroORM
31
- } from "@mikro-orm/core";
32
- import { randomUUID } from "../utils/env_aware_utils.js";
33
- import {
34
- BaseSessionService,
35
- mergeStates,
36
- trimTempDeltaState
37
- } from "./base_session_service.js";
38
- import {
39
- ensureDatabaseCreated,
40
- getConnectionOptionsFromUri,
41
- validateDatabaseSchemaVersion
42
- } from "./db/operations.js";
43
- import {
44
- ENTITIES,
45
- StorageAppState,
46
- StorageEvent,
47
- StorageSession,
48
- StorageUserState
49
- } from "./db/schema.js";
50
- import { createSession } from "./session.js";
51
- import { State } from "./state.js";
52
- function isDatabaseConnectionString(uri) {
53
- if (!uri) {
54
- return false;
55
- }
56
- return uri.startsWith("postgres://") || uri.startsWith("postgresql://") || uri.startsWith("mysql://") || uri.startsWith("mariadb://") || uri.startsWith("mssql://") || uri.startsWith("sqlite://");
57
- }
58
- __name(isDatabaseConnectionString, "isDatabaseConnectionString");
59
- const _DatabaseSessionService = class _DatabaseSessionService extends BaseSessionService {
60
- constructor(connectionStringOrOptions) {
61
- super();
62
- this.initialized = false;
63
- if (typeof connectionStringOrOptions === "string") {
64
- this.connectionString = connectionStringOrOptions;
65
- } else {
66
- if (!connectionStringOrOptions.driver) {
67
- throw new Error("Driver is required when passing options object.");
68
- }
69
- this.options = __spreadProps(__spreadValues({}, connectionStringOrOptions), {
70
- entities: ENTITIES
71
- });
72
- }
73
- }
74
- async init() {
75
- if (this.initialized) {
76
- return;
77
- }
78
- if (this.connectionString && (!this.options || !this.options.driver)) {
79
- this.options = await getConnectionOptionsFromUri(this.connectionString);
80
- }
81
- this.orm = await MikroORM.init(this.options);
82
- await ensureDatabaseCreated(this.orm);
83
- await validateDatabaseSchemaVersion(this.orm);
84
- this.initialized = true;
85
- }
86
- async createSession({
87
- appName,
88
- userId,
89
- state,
90
- sessionId
91
- }) {
92
- await this.init();
93
- const em = this.orm.em.fork();
94
- const id = sessionId || randomUUID();
95
- const now = /* @__PURE__ */ new Date();
96
- const existing = await em.findOne(StorageSession, {
97
- id,
98
- appName,
99
- userId
100
- });
101
- if (existing) {
102
- throw new Error("Session with id ".concat(id, " already exists."));
103
- }
104
- let appStateModel = await em.findOne(StorageAppState, { appName });
105
- if (!appStateModel) {
106
- appStateModel = em.create(StorageAppState, {
107
- appName,
108
- state: {},
109
- updateTime: now
110
- });
111
- em.persist(appStateModel);
112
- }
113
- let userStateModel = await em.findOne(StorageUserState, { appName, userId });
114
- if (!userStateModel) {
115
- userStateModel = em.create(StorageUserState, {
116
- appName,
117
- userId,
118
- state: {}
119
- });
120
- em.persist(userStateModel);
121
- }
122
- const appStateDelta = {};
123
- const userStateDelta = {};
124
- const sessionState = {};
125
- if (state) {
126
- for (const [key, value] of Object.entries(state)) {
127
- if (key.startsWith(State.APP_PREFIX)) {
128
- appStateDelta[key.replace(State.APP_PREFIX, "")] = value;
129
- } else if (key.startsWith(State.USER_PREFIX)) {
130
- userStateDelta[key.replace(State.USER_PREFIX, "")] = value;
131
- } else if (!key.startsWith(State.TEMP_PREFIX)) {
132
- sessionState[key] = value;
133
- }
134
- }
135
- }
136
- if (Object.keys(appStateDelta).length > 0) {
137
- appStateModel.state = __spreadValues(__spreadValues({}, appStateModel.state), appStateDelta);
138
- }
139
- if (Object.keys(userStateDelta).length > 0) {
140
- userStateModel.state = __spreadValues(__spreadValues({}, userStateModel.state), userStateDelta);
141
- }
142
- const storageSession = em.create(StorageSession, {
143
- id,
144
- appName,
145
- userId,
146
- state: sessionState,
147
- createTime: now,
148
- updateTime: now
149
- });
150
- em.persist(storageSession);
151
- await em.flush();
152
- const mergedState = mergeStates(
153
- appStateModel.state,
154
- userStateModel.state,
155
- sessionState
156
- );
157
- return createSession({
158
- id,
159
- appName,
160
- userId,
161
- state: mergedState,
162
- events: [],
163
- lastUpdateTime: storageSession.createTime.getTime()
164
- });
165
- }
166
- async getSession({
167
- appName,
168
- userId,
169
- sessionId,
170
- config
171
- }) {
172
- await this.init();
173
- const em = this.orm.em.fork();
174
- const storageSession = await em.findOne(StorageSession, {
175
- appName,
176
- userId,
177
- id: sessionId
178
- });
179
- if (!storageSession) {
180
- return void 0;
181
- }
182
- const eventWhere = {
183
- appName,
184
- userId,
185
- sessionId
186
- };
187
- if (config == null ? void 0 : config.afterTimestamp) {
188
- eventWhere.timestamp = { $gt: new Date(config.afterTimestamp) };
189
- }
190
- const storageEvents = await em.find(StorageEvent, eventWhere, {
191
- orderBy: { timestamp: "DESC" },
192
- limit: config == null ? void 0 : config.numRecentEvents
193
- });
194
- storageEvents.reverse();
195
- const appStateModel = await em.findOne(StorageAppState, { appName });
196
- const userStateModel = await em.findOne(StorageUserState, {
197
- appName,
198
- userId
199
- });
200
- const mergedState = mergeStates(
201
- (appStateModel == null ? void 0 : appStateModel.state) || {},
202
- (userStateModel == null ? void 0 : userStateModel.state) || {},
203
- storageSession.state
204
- );
205
- return createSession({
206
- id: sessionId,
207
- appName,
208
- userId,
209
- state: mergedState,
210
- events: storageEvents.map((se) => se.eventData),
211
- lastUpdateTime: storageSession.updateTime.getTime()
212
- });
213
- }
214
- async listSessions({
215
- appName,
216
- userId,
217
- limit,
218
- offset,
219
- page,
220
- order
221
- }) {
222
- await this.init();
223
- const em = this.orm.em.fork();
224
- const where = { appName };
225
- if (userId) {
226
- where.userId = userId;
227
- }
228
- const orderBy = order === "asc" ? { updateTime: "ASC", id: "ASC" } : order === "desc" ? { updateTime: "DESC", id: "ASC" } : void 0;
229
- let storageSessions;
230
- let paginationMeta;
231
- if (limit !== void 0) {
232
- const totalItems = await em.count(StorageSession, where);
233
- const totalPages = limit === 0 ? 0 : Math.ceil(totalItems / limit);
234
- let effectiveOffset;
235
- let effectivePage;
236
- if (page !== void 0) {
237
- effectiveOffset = (page - 1) * limit;
238
- effectivePage = page;
239
- } else {
240
- effectiveOffset = offset != null ? offset : 0;
241
- effectivePage = limit === 0 ? 1 : Math.floor(effectiveOffset / limit) + 1;
242
- }
243
- storageSessions = await em.find(StorageSession, where, {
244
- orderBy,
245
- limit,
246
- offset: effectiveOffset
247
- });
248
- paginationMeta = { page: effectivePage, limit, totalItems, totalPages };
249
- } else if (offset) {
250
- const totalItems = await em.count(StorageSession, where);
251
- storageSessions = await em.find(StorageSession, where, {
252
- orderBy,
253
- offset
254
- });
255
- paginationMeta = {
256
- page: 1,
257
- limit: totalItems,
258
- totalItems,
259
- totalPages: totalItems === 0 ? 0 : 1
260
- };
261
- } else {
262
- storageSessions = await em.find(StorageSession, where, { orderBy });
263
- const totalItems = storageSessions.length;
264
- paginationMeta = {
265
- page: 1,
266
- limit: totalItems,
267
- totalItems,
268
- totalPages: totalItems === 0 ? 0 : 1
269
- };
270
- }
271
- const appStateModel = await em.findOne(StorageAppState, { appName });
272
- const appState = (appStateModel == null ? void 0 : appStateModel.state) || {};
273
- const userStateMap = {};
274
- if (userId) {
275
- const u = await em.findOne(StorageUserState, { appName, userId });
276
- if (u) userStateMap[userId] = u.state;
277
- } else {
278
- const allUserStates = await em.find(StorageUserState, { appName });
279
- for (const u of allUserStates) {
280
- userStateMap[u.userId] = u.state;
281
- }
282
- }
283
- const sessions = storageSessions.map((ss) => {
284
- const uState = userStateMap[ss.userId] || {};
285
- const merged = mergeStates(appState, uState, ss.state);
286
- return createSession({
287
- id: ss.id,
288
- appName: ss.appName,
289
- userId: ss.userId,
290
- state: merged,
291
- events: [],
292
- lastUpdateTime: ss.updateTime.getTime()
293
- });
294
- });
295
- return __spreadValues({ sessions }, paginationMeta);
296
- }
297
- async deleteSession({
298
- appName,
299
- userId,
300
- sessionId
301
- }) {
302
- await this.init();
303
- const em = this.orm.em.fork();
304
- await em.nativeDelete(StorageSession, { appName, userId, id: sessionId });
305
- await em.nativeDelete(StorageEvent, { appName, userId, sessionId });
306
- }
307
- async appendEvent({
308
- session,
309
- event
310
- }) {
311
- await this.init();
312
- const em = this.orm.em.fork();
313
- if (event.partial) {
314
- return event;
315
- }
316
- const trimmedEvent = trimTempDeltaState(event);
317
- await em.transactional(async (txEm) => {
318
- const storageSession = await txEm.findOne(
319
- StorageSession,
320
- {
321
- appName: session.appName,
322
- userId: session.userId,
323
- id: session.id
324
- },
325
- { lockMode: LockMode.PESSIMISTIC_WRITE }
326
- );
327
- if (!storageSession) {
328
- throw new Error("Session ".concat(session.id, " not found for appendEvent"));
329
- }
330
- let appStateModel = await txEm.findOne(StorageAppState, {
331
- appName: session.appName
332
- });
333
- if (!appStateModel) {
334
- appStateModel = txEm.create(StorageAppState, {
335
- appName: session.appName,
336
- state: {},
337
- updateTime: /* @__PURE__ */ new Date()
338
- });
339
- txEm.persist(appStateModel);
340
- }
341
- let userStateModel = await txEm.findOne(StorageUserState, {
342
- appName: session.appName,
343
- userId: session.userId
344
- });
345
- if (!userStateModel) {
346
- userStateModel = txEm.create(StorageUserState, {
347
- appName: session.appName,
348
- userId: session.userId,
349
- state: {}
350
- });
351
- txEm.persist(userStateModel);
352
- }
353
- if (storageSession.updateTime.getTime() > session.lastUpdateTime) {
354
- const events = await txEm.find(
355
- StorageEvent,
356
- {
357
- appName: session.appName,
358
- userId: session.userId,
359
- sessionId: session.id
360
- },
361
- { orderBy: { timestamp: "ASC" } }
362
- );
363
- const mergedState = mergeStates(
364
- appStateModel.state,
365
- userStateModel.state,
366
- storageSession.state
367
- );
368
- session.state = mergedState;
369
- session.events = events.map((e) => e.eventData);
370
- }
371
- if (event.actions && event.actions.stateDelta) {
372
- const appDelta = {};
373
- const userDelta = {};
374
- const sessionDelta = {};
375
- for (const [key, value] of Object.entries(event.actions.stateDelta)) {
376
- if (key.startsWith(State.APP_PREFIX)) {
377
- appDelta[key.replace(State.APP_PREFIX, "")] = value;
378
- } else if (key.startsWith(State.USER_PREFIX)) {
379
- userDelta[key.replace(State.USER_PREFIX, "")] = value;
380
- } else if (!key.startsWith(State.TEMP_PREFIX)) {
381
- sessionDelta[key] = value;
382
- }
383
- }
384
- if (Object.keys(appDelta).length > 0) {
385
- appStateModel.state = __spreadValues(__spreadValues({}, appStateModel.state), appDelta);
386
- }
387
- if (Object.keys(userDelta).length > 0) {
388
- userStateModel.state = __spreadValues(__spreadValues({}, userStateModel.state), userDelta);
389
- }
390
- if (Object.keys(sessionDelta).length > 0) {
391
- storageSession.state = __spreadValues(__spreadValues({}, storageSession.state), sessionDelta);
392
- }
393
- }
394
- const existingStorageEvent = await txEm.findOne(StorageEvent, {
395
- id: trimmedEvent.id,
396
- appName: session.appName,
397
- userId: session.userId,
398
- sessionId: session.id
399
- });
400
- if (existingStorageEvent) {
401
- existingStorageEvent.eventData = trimmedEvent;
402
- existingStorageEvent.timestamp = new Date(trimmedEvent.timestamp);
403
- txEm.persist(existingStorageEvent);
404
- } else {
405
- const newStorageEvent = txEm.create(StorageEvent, {
406
- id: trimmedEvent.id,
407
- appName: session.appName,
408
- userId: session.userId,
409
- sessionId: session.id,
410
- invocationId: trimmedEvent.invocationId,
411
- timestamp: new Date(trimmedEvent.timestamp),
412
- eventData: trimmedEvent
413
- });
414
- txEm.persist(newStorageEvent);
415
- }
416
- await txEm.commit();
417
- storageSession.updateTime = new Date(event.timestamp);
418
- const newMergedState = mergeStates(
419
- appStateModel.state,
420
- userStateModel.state,
421
- storageSession.state
422
- );
423
- session.state = newMergedState;
424
- const index = session.events.findIndex((e) => e.id === event.id);
425
- if (index >= 0) {
426
- session.events[index] = event;
427
- } else {
428
- session.events.push(event);
429
- }
430
- session.lastUpdateTime = storageSession.updateTime.getTime();
431
- });
432
- return event;
433
- }
434
- };
435
- __name(_DatabaseSessionService, "DatabaseSessionService");
436
- let DatabaseSessionService = _DatabaseSessionService;
437
- export {
438
- DatabaseSessionService,
439
- isDatabaseConnectionString
440
- };
@@ -1,124 +0,0 @@
1
- import {createRequire as topLevelCreateRequire} from 'module';
2
- const require = topLevelCreateRequire(import.meta.url);
3
- var __create = Object.create;
4
- var __defProp = Object.defineProperty;
5
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getProtoOf = Object.getPrototypeOf;
8
- var __hasOwnProp = Object.prototype.hasOwnProperty;
9
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
19
- // If the importer is in node compatibility mode or this is not an ESM
20
- // file that has been converted to a CommonJS file using a Babel-
21
- // compatible transform (i.e. "__esModule" has not been set), then set
22
- // "default" to the CommonJS "module.exports" for node compatibility.
23
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
24
- mod
25
- ));
26
- /**
27
- * @license
28
- * Copyright 2026 Google LLC
29
- * SPDX-License-Identifier: Apache-2.0
30
- */
31
- import { loadOptionalPeer } from "../../utils/optional_peer.js";
32
- import { redactUriPassword } from "../../utils/redact_uri.js";
33
- import {
34
- ENTITIES,
35
- SCHEMA_VERSION_1_JSON,
36
- SCHEMA_VERSION_KEY,
37
- StorageMetadata
38
- } from "./schema.js";
39
- function driverPeer(packageName, scheme) {
40
- return {
41
- packageName,
42
- feature: 'DatabaseSessionService with a "'.concat(scheme, '" connection string')
43
- };
44
- }
45
- __name(driverPeer, "driverPeer");
46
- async function getConnectionOptionsFromUri(uri) {
47
- let driver;
48
- if (uri.startsWith("postgres://") || uri.startsWith("postgresql://")) {
49
- const { PostgreSqlDriver } = await loadOptionalPeer(
50
- driverPeer("@mikro-orm/postgresql", "postgres"),
51
- () => Promise.resolve().then(() => __toESM(require("@mikro-orm/postgresql"), 1))
52
- );
53
- driver = PostgreSqlDriver;
54
- } else if (uri.startsWith("mysql://")) {
55
- const { MySqlDriver } = await loadOptionalPeer(
56
- driverPeer("@mikro-orm/mysql", "mysql"),
57
- () => Promise.resolve().then(() => __toESM(require("@mikro-orm/mysql"), 1))
58
- );
59
- driver = MySqlDriver;
60
- } else if (uri.startsWith("mariadb://")) {
61
- const { MariaDbDriver } = await loadOptionalPeer(
62
- driverPeer("@mikro-orm/mariadb", "mariadb"),
63
- () => Promise.resolve().then(() => __toESM(require("@mikro-orm/mariadb"), 1))
64
- );
65
- driver = MariaDbDriver;
66
- } else if (uri.startsWith("sqlite://")) {
67
- const { SqliteDriver } = await loadOptionalPeer(
68
- driverPeer("@mikro-orm/sqlite", "sqlite"),
69
- () => Promise.resolve().then(() => __toESM(require("@mikro-orm/sqlite"), 1))
70
- );
71
- driver = SqliteDriver;
72
- } else if (uri.startsWith("mssql://")) {
73
- const { MsSqlDriver } = await loadOptionalPeer(
74
- driverPeer("@mikro-orm/mssql", "mssql"),
75
- () => Promise.resolve().then(() => __toESM(require("@mikro-orm/mssql"), 1))
76
- );
77
- driver = MsSqlDriver;
78
- } else {
79
- throw new Error("Unsupported database URI: ".concat(redactUriPassword(uri)));
80
- }
81
- if (uri.startsWith("sqlite://")) {
82
- return {
83
- entities: ENTITIES,
84
- dbName: uri === "sqlite://:memory:" ? ":memory:" : uri.substring("sqlite://".length),
85
- driver
86
- };
87
- }
88
- return {
89
- entities: ENTITIES,
90
- clientUrl: uri,
91
- driver
92
- };
93
- }
94
- __name(getConnectionOptionsFromUri, "getConnectionOptionsFromUri");
95
- async function ensureDatabaseCreated(orm) {
96
- await orm.schema.ensureDatabase();
97
- await orm.schema.updateSchema({ safe: true });
98
- }
99
- __name(ensureDatabaseCreated, "ensureDatabaseCreated");
100
- async function validateDatabaseSchemaVersion(orm) {
101
- const em = orm.em.fork();
102
- const existing = await em.findOne(StorageMetadata, {
103
- key: SCHEMA_VERSION_KEY
104
- });
105
- if (existing) {
106
- if (existing.value !== SCHEMA_VERSION_1_JSON) {
107
- throw new Error(
108
- "ADK Database schema version ".concat(existing.value, " is not compatible.")
109
- );
110
- }
111
- return;
112
- }
113
- const newVersion = em.create(StorageMetadata, {
114
- key: SCHEMA_VERSION_KEY,
115
- value: SCHEMA_VERSION_1_JSON
116
- });
117
- await em.persist(newVersion).flush();
118
- }
119
- __name(validateDatabaseSchemaVersion, "validateDatabaseSchemaVersion");
120
- export {
121
- ensureDatabaseCreated,
122
- getConnectionOptionsFromUri,
123
- validateDatabaseSchemaVersion
124
- };