@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,194 +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 { logger } from "../../utils/logger.js";
29
- import {
30
- getOAuthGrantTypeFromFlow,
31
- OAuthGrantType
32
- } from "../auth_schemes.js";
33
- import {
34
- CredentialExchangeError
35
- } from "../exchanger/base_credential_exchanger.js";
36
- import {
37
- createOAuth2TokenRequestBody,
38
- fetchOAuth2Tokens,
39
- getTokenEndpoint,
40
- parseAuthorizationCode
41
- } from "./oauth2_utils.js";
42
- const _OAuth2CredentialExchanger = class _OAuth2CredentialExchanger {
43
- async exchange({
44
- authCredential,
45
- authScheme
46
- }) {
47
- var _a;
48
- if (!authScheme) {
49
- throw new CredentialExchangeError(
50
- "authScheme is required for OAuth2 credential exchange"
51
- );
52
- }
53
- if ((_a = authCredential.oauth2) == null ? void 0 : _a.accessToken) {
54
- return {
55
- credential: authCredential,
56
- wasExchanged: false
57
- };
58
- }
59
- const grantType = determineGrantType(authScheme);
60
- if (grantType === OAuthGrantType.CLIENT_CREDENTIALS) {
61
- return exchangeClientCredentials({ authCredential, authScheme });
62
- }
63
- if (grantType === OAuthGrantType.AUTHORIZATION_CODE) {
64
- return exchangeAuthorizationCode({ authCredential, authScheme });
65
- }
66
- logger.warn("Unsupported OAuth2 grant type: ".concat(grantType));
67
- return {
68
- credential: authCredential,
69
- wasExchanged: false
70
- };
71
- }
72
- };
73
- __name(_OAuth2CredentialExchanger, "OAuth2CredentialExchanger");
74
- let OAuth2CredentialExchanger = _OAuth2CredentialExchanger;
75
- function determineGrantType(authScheme) {
76
- var _a;
77
- if ("flows" in authScheme && authScheme.flows) {
78
- return getOAuthGrantTypeFromFlow(authScheme.flows);
79
- }
80
- if (authScheme.grantTypesSupported) {
81
- const oidcScheme = authScheme;
82
- if ((_a = oidcScheme.grantTypesSupported) == null ? void 0 : _a.includes("client_credentials")) {
83
- return OAuthGrantType.CLIENT_CREDENTIALS;
84
- }
85
- return OAuthGrantType.AUTHORIZATION_CODE;
86
- }
87
- return void 0;
88
- }
89
- __name(determineGrantType, "determineGrantType");
90
- async function exchangeClientCredentials({
91
- authCredential,
92
- authScheme
93
- }) {
94
- var _a, _b;
95
- const tokenEndpoint = getTokenEndpoint(authScheme);
96
- if (!tokenEndpoint) {
97
- throw new CredentialExchangeError(
98
- "Token endpoint not found in auth scheme."
99
- );
100
- }
101
- if (!((_a = authCredential.oauth2) == null ? void 0 : _a.clientId) || !((_b = authCredential.oauth2) == null ? void 0 : _b.clientSecret)) {
102
- throw new CredentialExchangeError(
103
- "clientId and clientSecret are required for client credentials exchange."
104
- );
105
- }
106
- const body = createOAuth2TokenRequestBody({
107
- grantType: "client_credentials",
108
- clientId: authCredential.oauth2.clientId,
109
- clientSecret: authCredential.oauth2.clientSecret
110
- });
111
- try {
112
- const oauth2Auth = await fetchOAuth2Tokens(tokenEndpoint, body);
113
- return {
114
- credential: __spreadProps(__spreadValues({}, authCredential), {
115
- oauth2: __spreadValues(__spreadValues({}, authCredential.oauth2), oauth2Auth)
116
- }),
117
- wasExchanged: true
118
- };
119
- } catch (error) {
120
- throw new CredentialExchangeError(
121
- "Failed to exchange tokens: ".concat(error instanceof Error ? error.message : String(error))
122
- );
123
- }
124
- }
125
- __name(exchangeClientCredentials, "exchangeClientCredentials");
126
- async function exchangeAuthorizationCode({
127
- authCredential,
128
- authScheme
129
- }) {
130
- var _a, _b, _c, _d;
131
- const tokenEndpoint = getTokenEndpoint(authScheme);
132
- if (!tokenEndpoint) {
133
- throw new CredentialExchangeError(
134
- "Token endpoint not found in auth scheme."
135
- );
136
- }
137
- if (!((_a = authCredential.oauth2) == null ? void 0 : _a.clientId) || !((_b = authCredential.oauth2) == null ? void 0 : _b.clientSecret) || !((_c = authCredential.oauth2) == null ? void 0 : _c.authCode) && !((_d = authCredential.oauth2) == null ? void 0 : _d.authResponseUri)) {
138
- throw new CredentialExchangeError(
139
- "clientId, clientSecret, and either authCode or authResponseUri are required for authorization code exchange."
140
- );
141
- }
142
- let code = authCredential.oauth2.authCode;
143
- if (!code && authCredential.oauth2.authResponseUri) {
144
- code = parseAuthorizationCode(authCredential.oauth2.authResponseUri);
145
- }
146
- if (authCredential.oauth2.authResponseUri && authCredential.oauth2.state) {
147
- try {
148
- const url = new URL(authCredential.oauth2.authResponseUri);
149
- const receivedState = url.searchParams.get("state") || void 0;
150
- if (authCredential.oauth2.state !== receivedState) {
151
- throw new CredentialExchangeError(
152
- "State mismatch detected. Potential CSRF attack."
153
- );
154
- }
155
- } catch (e) {
156
- throw new CredentialExchangeError(
157
- "Failed to parse authResponseUri for state validation: ".concat(e instanceof Error ? e.message : String(e))
158
- );
159
- }
160
- }
161
- if (!code) {
162
- throw new CredentialExchangeError(
163
- "Authorization code not found in auth response."
164
- );
165
- }
166
- const body = createOAuth2TokenRequestBody({
167
- grantType: "authorization_code",
168
- clientId: authCredential.oauth2.clientId,
169
- clientSecret: authCredential.oauth2.clientSecret,
170
- code,
171
- redirectUri: authCredential.oauth2.redirectUri,
172
- codeVerifier: authCredential.oauth2.codeVerifier
173
- });
174
- try {
175
- const oauth2Auth = await fetchOAuth2Tokens(tokenEndpoint, body);
176
- return {
177
- credential: __spreadProps(__spreadValues({}, authCredential), {
178
- oauth2: __spreadValues(__spreadValues({}, authCredential.oauth2), oauth2Auth)
179
- }),
180
- wasExchanged: true
181
- };
182
- } catch (error) {
183
- throw new CredentialExchangeError(
184
- "Failed to exchange tokens: ".concat(error instanceof Error ? error.message : String(error))
185
- );
186
- }
187
- }
188
- __name(exchangeAuthorizationCode, "exchangeAuthorizationCode");
189
- export {
190
- OAuth2CredentialExchanger,
191
- determineGrantType,
192
- exchangeAuthorizationCode,
193
- exchangeClientCredentials
194
- };
@@ -1,105 +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 { logger } from "../../utils/logger.js";
29
- import {
30
- fetchOAuth2Tokens,
31
- getTokenEndpoint,
32
- isTokenExpired
33
- } from "./oauth2_utils.js";
34
- const _OAuth2CredentialRefresher = class _OAuth2CredentialRefresher {
35
- /**
36
- * Check if the OAuth2 credential needs to be refreshed.
37
- *
38
- * @param authCredential The OAuth2 credential to check.
39
- * @param authScheme The OAuth2 authentication scheme (optional).
40
- * @returns True if the credential needs to be refreshed, False otherwise.
41
- */
42
- async isRefreshNeeded(authCredential) {
43
- if (!authCredential.oauth2) {
44
- return false;
45
- }
46
- if (authCredential.oauth2 && authCredential.oauth2.expiresAt) {
47
- return isTokenExpired(authCredential.oauth2);
48
- }
49
- return false;
50
- }
51
- /**
52
- * Refresh the OAuth2 credential.
53
- *
54
- * @param authCredential The OAuth2 credential to refresh.
55
- * @param authScheme The OAuth2 authentication scheme.
56
- * @returns The refreshed credential.
57
- */
58
- async refresh(authCredential, authScheme) {
59
- if (!authCredential.oauth2 || !authScheme) {
60
- return authCredential;
61
- }
62
- if (!authCredential.oauth2.refreshToken) {
63
- logger.warn("No refresh token available to refresh credential");
64
- return authCredential;
65
- }
66
- const isNeeded = await this.isRefreshNeeded(authCredential);
67
- if (!isNeeded) {
68
- return authCredential;
69
- }
70
- const tokenEndpoint = getTokenEndpoint(authScheme);
71
- if (!tokenEndpoint) {
72
- logger.warn("Token endpoint not found in auth scheme.");
73
- return authCredential;
74
- }
75
- if (!authCredential.oauth2.clientId || !authCredential.oauth2.clientSecret) {
76
- logger.warn("clientId and clientSecret are required for token refresh.");
77
- return authCredential;
78
- }
79
- const body = new URLSearchParams();
80
- body.set("grant_type", "refresh_token");
81
- body.set("refresh_token", authCredential.oauth2.refreshToken);
82
- body.set("client_id", authCredential.oauth2.clientId);
83
- body.set("client_secret", authCredential.oauth2.clientSecret);
84
- try {
85
- const data = await fetchOAuth2Tokens(tokenEndpoint, body);
86
- const updatedOAuth2 = __spreadProps(__spreadValues({}, authCredential.oauth2), {
87
- accessToken: data.accessToken || authCredential.oauth2.accessToken,
88
- refreshToken: data.refreshToken || authCredential.oauth2.refreshToken,
89
- expiresIn: data.expiresIn,
90
- expiresAt: data.expiresAt || authCredential.oauth2.expiresAt
91
- });
92
- return __spreadProps(__spreadValues({}, authCredential), {
93
- oauth2: updatedOAuth2
94
- });
95
- } catch (error) {
96
- logger.error("Failed to refresh tokens:", error);
97
- return authCredential;
98
- }
99
- }
100
- };
101
- __name(_OAuth2CredentialRefresher, "OAuth2CredentialRefresher");
102
- let OAuth2CredentialRefresher = _OAuth2CredentialRefresher;
103
- export {
104
- OAuth2CredentialRefresher
105
- };
@@ -1,196 +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 2026 Google LLC
8
- * SPDX-License-Identifier: Apache-2.0
9
- */
10
- import { z } from "zod";
11
- import { logger } from "../../utils/logger.js";
12
- const AuthorizationServerMetadataSchema = z.object({
13
- issuer: z.string(),
14
- authorization_endpoint: z.string(),
15
- token_endpoint: z.string(),
16
- scopes_supported: z.array(z.string()).optional(),
17
- registration_endpoint: z.string().optional()
18
- });
19
- const ProtectedResourceMetadataSchema = z.object({
20
- resource: z.string(),
21
- authorization_servers: z.array(z.string()).default([])
22
- });
23
- const _OAuth2DiscoveryManager = class _OAuth2DiscoveryManager {
24
- /**
25
- * Discovers the OAuth2 authorization server metadata.
26
- */
27
- async discoverAuthServerMetadata(issuerUrl) {
28
- if (!validateDiscoveryUrl(issuerUrl)) {
29
- return void 0;
30
- }
31
- let baseUrl;
32
- let path;
33
- try {
34
- const url = new URL(issuerUrl);
35
- baseUrl = "".concat(url.protocol, "//").concat(url.host);
36
- path = url.pathname;
37
- } catch (e) {
38
- logger.warn("Failed to parse issuerUrl ".concat(issuerUrl, ": ").concat(e));
39
- return void 0;
40
- }
41
- const endpointsToTry = [];
42
- if (path && path !== "/") {
43
- endpointsToTry.push(
44
- "".concat(baseUrl, "/.well-known/oauth-authorization-server").concat(path),
45
- "".concat(baseUrl, "/.well-known/openid-configuration").concat(path),
46
- "".concat(baseUrl).concat(path, "/.well-known/openid-configuration")
47
- );
48
- } else {
49
- endpointsToTry.push(
50
- "".concat(baseUrl, "/.well-known/oauth-authorization-server"),
51
- "".concat(baseUrl, "/.well-known/openid-configuration")
52
- );
53
- }
54
- for (const endpoint of endpointsToTry) {
55
- try {
56
- const response = await fetch(endpoint, {
57
- method: "GET",
58
- headers: {
59
- Accept: "application/json"
60
- },
61
- // Never follow redirects: validateDiscoveryUrl only checks the
62
- // initial URL, so following a 3xx would let a validated host
63
- // redirect discovery to a private/cloud-metadata address (CWE-918).
64
- redirect: "error"
65
- });
66
- if (!response.ok) {
67
- continue;
68
- }
69
- const data = await response.json();
70
- const metadata = AuthorizationServerMetadataSchema.parse(data);
71
- if (metadata.issuer.replace(/\/$/, "") === issuerUrl.replace(/\/$/, "")) {
72
- return metadata;
73
- } else {
74
- logger.warn(
75
- "Issuer in metadata ".concat(metadata.issuer, " does not match issuerUrl ").concat(issuerUrl)
76
- );
77
- }
78
- } catch (e) {
79
- logger.debug("Failed to fetch metadata from ".concat(endpoint, ": ").concat(e));
80
- }
81
- }
82
- return void 0;
83
- }
84
- /**
85
- * Discovers the OAuth2 protected resource metadata.
86
- */
87
- async discoverResourceMetadata(resourceUrl) {
88
- if (!validateDiscoveryUrl(resourceUrl)) {
89
- return void 0;
90
- }
91
- let baseUrl;
92
- let path;
93
- try {
94
- const url = new URL(resourceUrl);
95
- baseUrl = "".concat(url.protocol, "//").concat(url.host);
96
- path = url.pathname;
97
- } catch (e) {
98
- logger.warn("Failed to parse resourceUrl ".concat(resourceUrl, ": ").concat(e));
99
- return void 0;
100
- }
101
- let wellKnownEndpoint;
102
- if (path && path !== "/") {
103
- wellKnownEndpoint = "".concat(baseUrl, "/.well-known/oauth-protected-resource").concat(path);
104
- } else {
105
- wellKnownEndpoint = "".concat(baseUrl, "/.well-known/oauth-protected-resource");
106
- }
107
- try {
108
- const response = await fetch(wellKnownEndpoint, {
109
- method: "GET",
110
- headers: {
111
- Accept: "application/json"
112
- },
113
- // Never follow redirects: validateDiscoveryUrl only checks the
114
- // initial URL, so following a 3xx would let a validated host
115
- // redirect discovery to a private/cloud-metadata address (CWE-918).
116
- redirect: "error"
117
- });
118
- if (!response.ok) {
119
- return void 0;
120
- }
121
- const data = await response.json();
122
- const metadata = ProtectedResourceMetadataSchema.parse(data);
123
- if (metadata.resource.replace(/\/$/, "") === resourceUrl.replace(/\/$/, "")) {
124
- return metadata;
125
- } else {
126
- logger.warn(
127
- "Resource in metadata ".concat(metadata.resource, " does not match resourceUrl ").concat(resourceUrl)
128
- );
129
- }
130
- } catch (e) {
131
- logger.debug("Failed to fetch metadata from ".concat(wellKnownEndpoint, ": ").concat(e));
132
- }
133
- return void 0;
134
- }
135
- };
136
- __name(_OAuth2DiscoveryManager, "OAuth2DiscoveryManager");
137
- let OAuth2DiscoveryManager = _OAuth2DiscoveryManager;
138
- function normaliseHostname(raw) {
139
- const stripped = raw.replace(/^\[|\]$/g, "");
140
- const m = stripped.match(/^::ffff:([0-9a-f]{1,4}):([0-9a-f]{1,4})$/i);
141
- if (m) {
142
- const hi = parseInt(m[1], 16);
143
- const lo = parseInt(m[2], 16);
144
- return [hi >> 8 & 255, hi & 255, lo >> 8 & 255, lo & 255].join(".");
145
- }
146
- const mDot = stripped.match(/^::ffff:(\d+\.\d+\.\d+\.\d+)$/i);
147
- if (mDot) return mDot[1];
148
- return raw;
149
- }
150
- __name(normaliseHostname, "normaliseHostname");
151
- function validateDiscoveryUrl(urlStr) {
152
- try {
153
- const url = new URL(urlStr);
154
- if (url.protocol !== "https:") {
155
- logger.warn("Unsafe protocol for discovery URL: ".concat(url.protocol));
156
- return false;
157
- }
158
- const host = normaliseHostname(url.hostname.toLowerCase());
159
- if (host === "localhost" || host === "metadata.google.internal" || host === "metadata.goog" || host.startsWith("127.") || host === "[::1]" || host === "[::]" || host === "0.0.0.0" || host.startsWith("10.") || host.startsWith("192.168.") || host.startsWith("169.254.")) {
160
- logger.warn("Unsafe host for discovery URL: ".concat(host));
161
- return false;
162
- }
163
- const match = host.match(/^172\.(\d+)\./);
164
- if (match) {
165
- const secondOctet = parseInt(match[1], 10);
166
- if (secondOctet >= 16 && secondOctet <= 31) {
167
- logger.warn("Unsafe host for discovery URL: ".concat(host));
168
- return false;
169
- }
170
- }
171
- const cgnatMatch = host.match(/^100\.(\d+)\./);
172
- if (cgnatMatch) {
173
- const secondOctet = parseInt(cgnatMatch[1], 10);
174
- if (secondOctet >= 64 && secondOctet <= 127) {
175
- logger.warn("Unsafe host for discovery URL: ".concat(host));
176
- return false;
177
- }
178
- }
179
- if (/^\[(f[cd][0-9a-f]{2}|fe[89ab][0-9a-f]):/i.test(url.hostname)) {
180
- logger.warn("Unsafe host for discovery URL: ".concat(url.hostname));
181
- return false;
182
- }
183
- return true;
184
- } catch (e) {
185
- logger.warn("Failed to parse URL for validation ".concat(urlStr, ": ").concat(e));
186
- return false;
187
- }
188
- }
189
- __name(validateDiscoveryUrl, "validateDiscoveryUrl");
190
- export {
191
- AuthorizationServerMetadataSchema,
192
- OAuth2DiscoveryManager,
193
- ProtectedResourceMetadataSchema,
194
- normaliseHostname,
195
- validateDiscoveryUrl
196
- };
@@ -1,105 +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 2026 Google LLC
8
- * SPDX-License-Identifier: Apache-2.0
9
- */
10
- import { logger } from "../../utils/logger.js";
11
- import { validateDiscoveryUrl } from "./oauth2_discovery.js";
12
- function getTokenEndpoint(authScheme) {
13
- if (authScheme.type === "openIdConnect" && authScheme.tokenEndpoint) {
14
- return authScheme.tokenEndpoint;
15
- }
16
- if (authScheme.type === "oauth2" && authScheme.flows) {
17
- const flows = authScheme.flows;
18
- const flow = flows.authorizationCode || flows.clientCredentials || flows.password || flows.implicit;
19
- if (flow && "tokenUrl" in flow) {
20
- return flow.tokenUrl;
21
- }
22
- }
23
- return void 0;
24
- }
25
- __name(getTokenEndpoint, "getTokenEndpoint");
26
- async function fetchOAuth2Tokens(endpoint, body) {
27
- if (!validateDiscoveryUrl(endpoint)) {
28
- throw new Error(
29
- "SSRF protection: OAuth2 token endpoint '".concat(endpoint, "' is not allowed. Must use HTTPS and must not target private/loopback/cloud-metadata addresses.")
30
- );
31
- }
32
- try {
33
- const response = await fetch(endpoint, {
34
- method: "POST",
35
- headers: {
36
- "Content-Type": "application/x-www-form-urlencoded"
37
- },
38
- body: body.toString(),
39
- // Never follow redirects: the SSRF blocklist only validates `endpoint`,
40
- // so a validated host that responds with a 3xx could otherwise redirect
41
- // this credential-bearing POST (client_secret/refresh_token) to a
42
- // private/cloud-metadata address (CWE-918).
43
- redirect: "error"
44
- });
45
- if (!response.ok) {
46
- throw new Error("Token request failed with status ".concat(response.status));
47
- }
48
- const data = await response.json();
49
- return {
50
- accessToken: data.access_token,
51
- refreshToken: data.refresh_token,
52
- idToken: data.id_token,
53
- expiresIn: data.expires_in,
54
- expiresAt: data.expires_in ? Date.now() + data.expires_in * 1e3 : void 0
55
- };
56
- } catch (e) {
57
- logger.error("Failed to fetch OAuth2 tokens: ".concat(e));
58
- throw e;
59
- }
60
- }
61
- __name(fetchOAuth2Tokens, "fetchOAuth2Tokens");
62
- function parseAuthorizationCode(uri) {
63
- try {
64
- const url = new URL(uri);
65
- return url.searchParams.get("code") || void 0;
66
- } catch (e) {
67
- logger.warn("Failed to parse authorization URI ".concat(uri, ": ").concat(e));
68
- return void 0;
69
- }
70
- }
71
- __name(parseAuthorizationCode, "parseAuthorizationCode");
72
- function createOAuth2TokenRequestBody(params) {
73
- const body = new URLSearchParams();
74
- body.set("grant_type", params.grantType);
75
- body.set("client_id", params.clientId);
76
- body.set("client_secret", params.clientSecret);
77
- if (params.grantType === "authorization_code") {
78
- body.set("code", params.code);
79
- if (params.redirectUri) {
80
- body.set("redirect_uri", params.redirectUri);
81
- }
82
- if (params.codeVerifier) {
83
- body.set("code_verifier", params.codeVerifier);
84
- }
85
- } else if (params.grantType === "refresh_token") {
86
- body.set("refresh_token", params.refreshToken);
87
- }
88
- return body;
89
- }
90
- __name(createOAuth2TokenRequestBody, "createOAuth2TokenRequestBody");
91
- function isTokenExpired(token, leeway = 60) {
92
- if (typeof token.expiresAt !== "number") {
93
- return false;
94
- }
95
- const expirationThreshold = token.expiresAt - leeway * 1e3;
96
- return expirationThreshold < Date.now();
97
- }
98
- __name(isTokenExpired, "isTokenExpired");
99
- export {
100
- createOAuth2TokenRequestBody,
101
- fetchOAuth2Tokens,
102
- getTokenEndpoint,
103
- isTokenExpired,
104
- parseAuthorizationCode
105
- };
@@ -1,44 +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 2026 Google LLC
8
- * SPDX-License-Identifier: Apache-2.0
9
- */
10
- import { AuthCredentialTypes } from "../auth_credential.js";
11
- const _CredentialRefresherRegistry = class _CredentialRefresherRegistry {
12
- constructor() {
13
- this.refreshers = {
14
- [AuthCredentialTypes.API_KEY]: void 0,
15
- [AuthCredentialTypes.HTTP]: void 0,
16
- [AuthCredentialTypes.OAUTH2]: void 0,
17
- [AuthCredentialTypes.OPEN_ID_CONNECT]: void 0,
18
- [AuthCredentialTypes.SERVICE_ACCOUNT]: void 0
19
- };
20
- }
21
- /**
22
- * Register a refresher instance for a credential type.
23
- *
24
- * @param credentialType The credential type to register for.
25
- * @param refresherInstance The refresher instance to register.
26
- */
27
- register(credentialType, refresherInstance) {
28
- this.refreshers[credentialType] = refresherInstance;
29
- }
30
- /**
31
- * Get the refresher instance for a credential type.
32
- *
33
- * @param credentialType The credential type to get refresher for.
34
- * @returns The refresher instance if registered, undefined otherwise.
35
- */
36
- getRefresher(credentialType) {
37
- return this.refreshers[credentialType];
38
- }
39
- };
40
- __name(_CredentialRefresherRegistry, "CredentialRefresherRegistry");
41
- let CredentialRefresherRegistry = _CredentialRefresherRegistry;
42
- export {
43
- CredentialRefresherRegistry
44
- };