@google/adk 0.6.1 → 1.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 (415) hide show
  1. package/dist/cjs/agents/base_agent.js +11 -2
  2. package/dist/cjs/agents/context.js +1 -0
  3. package/dist/cjs/agents/functions.js +1 -0
  4. package/dist/cjs/agents/invocation_context.js +1 -0
  5. package/dist/cjs/agents/llm_agent.js +70 -13
  6. package/dist/cjs/agents/loop_agent.js +4 -0
  7. package/dist/cjs/agents/parallel_agent.js +4 -0
  8. package/dist/cjs/agents/processors/code_execution_request_processor.js +2 -0
  9. package/dist/cjs/agents/processors/context_compactor_request_processor.js +9 -0
  10. package/dist/cjs/agents/processors/tool_filter_request_processor.js +73 -0
  11. package/dist/cjs/agents/routed_agent.js +97 -0
  12. package/dist/cjs/auth/auth_handler.js +66 -1
  13. package/dist/cjs/auth/auth_preprocessor.js +178 -0
  14. package/dist/cjs/auth/auth_provider_registry.js +61 -0
  15. package/dist/cjs/auth/base_auth_provider.js +27 -0
  16. package/dist/cjs/auth/credential_service/session_state_credential_service.js +51 -0
  17. package/dist/cjs/auth/oauth2/oauth2_credential_exchanger.js +198 -0
  18. package/dist/cjs/auth/oauth2/oauth2_credential_refresher.js +109 -0
  19. package/dist/cjs/auth/oauth2/oauth2_discovery.js +186 -0
  20. package/dist/cjs/auth/oauth2/oauth2_utils.js +119 -0
  21. package/dist/cjs/auth/refresher/base_credential_refresher.js +44 -0
  22. package/dist/cjs/auth/refresher/credential_refresher_registry.js +68 -0
  23. package/dist/cjs/code_executors/base_code_executor.js +9 -5
  24. package/dist/cjs/code_executors/code_execution_utils.js +19 -0
  25. package/dist/cjs/code_executors/unsafe_local_code_executor.js +241 -0
  26. package/dist/cjs/common.js +69 -0
  27. package/dist/cjs/features/feature_registry.js +141 -0
  28. package/dist/cjs/index.js +83 -113
  29. package/dist/cjs/models/apigee_llm.js +2 -2
  30. package/dist/cjs/models/google_llm.js +18 -53
  31. package/dist/cjs/models/routed_llm.js +99 -0
  32. package/dist/cjs/plugins/base_plugin.js +39 -2
  33. package/dist/cjs/plugins/plugin_manager.js +39 -0
  34. package/dist/cjs/runner/runner.js +31 -3
  35. package/dist/cjs/sessions/db/operations.js +3 -10
  36. package/dist/cjs/skills/loader.js +283 -0
  37. package/dist/cjs/skills/prompt.js +58 -0
  38. package/dist/cjs/skills/skill.js +78 -0
  39. package/dist/cjs/tools/agent_tool.js +11 -4
  40. package/dist/cjs/tools/mcp/mcp_tool.js +7 -3
  41. package/dist/cjs/tools/mcp/mcp_toolset.js +1 -1
  42. package/dist/cjs/tools/skill/list_skills_tool.js +76 -0
  43. package/dist/cjs/tools/skill/load_skill_resource_tool.js +225 -0
  44. package/dist/cjs/tools/skill/load_skill_tool.js +108 -0
  45. package/dist/cjs/tools/skill/run_skill_inline_script_tool.js +146 -0
  46. package/dist/cjs/tools/skill/run_skill_script_tool.js +224 -0
  47. package/dist/cjs/tools/skill/skill_toolset.js +163 -0
  48. package/dist/cjs/tools/url_context_tool.js +73 -0
  49. package/dist/cjs/tools/vertex_ai_search_tool.js +127 -0
  50. package/dist/cjs/utils/experimental.js +74 -0
  51. package/dist/cjs/utils/failover_utils.js +93 -0
  52. package/dist/cjs/utils/file_extension_utils.js +77 -0
  53. package/dist/cjs/utils/file_utils.js +94 -0
  54. package/dist/cjs/utils/model_name.js +8 -2
  55. package/dist/cjs/utils/streaming_utils.js +333 -0
  56. package/dist/cjs/version.js +1 -1
  57. package/dist/esm/a2a/a2a_event.js +2 -0
  58. package/dist/esm/a2a/a2a_remote_agent.js +2 -0
  59. package/dist/esm/a2a/a2a_remote_agent_run_processor.js +2 -0
  60. package/dist/esm/a2a/a2a_remote_agent_utils.js +2 -0
  61. package/dist/esm/a2a/agent_card.js +2 -0
  62. package/dist/esm/a2a/agent_executor.js +2 -0
  63. package/dist/esm/a2a/agent_to_a2a.js +2 -0
  64. package/dist/esm/a2a/event_converter_utils.js +2 -0
  65. package/dist/esm/a2a/event_processor_utils.js +2 -0
  66. package/dist/esm/a2a/executor_context.js +2 -0
  67. package/dist/esm/a2a/metadata_converter_utils.js +2 -0
  68. package/dist/esm/a2a/part_converter_utils.js +2 -0
  69. package/dist/esm/agents/active_streaming_tool.js +2 -0
  70. package/dist/esm/agents/base_agent.js +13 -2
  71. package/dist/esm/agents/context.js +3 -0
  72. package/dist/esm/agents/functions.js +3 -0
  73. package/dist/esm/agents/instructions.js +2 -0
  74. package/dist/esm/agents/invocation_context.js +3 -0
  75. package/dist/esm/agents/live_request_queue.js +2 -0
  76. package/dist/esm/agents/llm_agent.js +72 -13
  77. package/dist/esm/agents/loop_agent.js +6 -0
  78. package/dist/esm/agents/parallel_agent.js +6 -0
  79. package/dist/esm/agents/processors/agent_transfer_llm_request_processor.js +2 -0
  80. package/dist/esm/agents/processors/base_llm_processor.js +2 -0
  81. package/dist/esm/agents/processors/basic_llm_request_processor.js +2 -0
  82. package/dist/esm/agents/processors/code_execution_request_processor.js +5 -0
  83. package/dist/esm/agents/processors/content_processor_utils.js +2 -0
  84. package/dist/esm/agents/processors/content_request_processor.js +2 -0
  85. package/dist/esm/agents/processors/context_compactor_request_processor.js +11 -0
  86. package/dist/esm/agents/processors/identity_llm_request_processor.js +2 -0
  87. package/dist/esm/agents/processors/instructions_llm_request_processor.js +2 -0
  88. package/dist/esm/agents/processors/request_confirmation_llm_request_processor.js +2 -0
  89. package/dist/esm/agents/processors/tool_filter_request_processor.js +44 -0
  90. package/dist/esm/agents/readonly_context.js +2 -0
  91. package/dist/esm/agents/routed_agent.js +70 -0
  92. package/dist/esm/agents/run_config.js +2 -0
  93. package/dist/esm/agents/sequential_agent.js +2 -0
  94. package/dist/esm/agents/transcription_entry.js +2 -0
  95. package/dist/esm/artifacts/base_artifact_service.js +2 -0
  96. package/dist/esm/artifacts/file_artifact_service.js +2 -0
  97. package/dist/esm/artifacts/gcs_artifact_service.js +2 -0
  98. package/dist/esm/artifacts/in_memory_artifact_service.js +2 -0
  99. package/dist/esm/artifacts/registry.js +2 -0
  100. package/dist/esm/auth/auth_credential.js +2 -0
  101. package/dist/esm/auth/auth_handler.js +68 -1
  102. package/dist/esm/auth/auth_preprocessor.js +155 -0
  103. package/dist/esm/auth/auth_provider_registry.js +33 -0
  104. package/dist/esm/auth/auth_schemes.js +2 -0
  105. package/dist/esm/auth/auth_tool.js +2 -0
  106. package/dist/esm/auth/base_auth_provider.js +7 -0
  107. package/dist/esm/auth/credential_service/base_credential_service.js +2 -0
  108. package/dist/esm/auth/credential_service/in_memory_credential_service.js +2 -0
  109. package/dist/esm/auth/credential_service/session_state_credential_service.js +23 -0
  110. package/dist/esm/auth/exchanger/base_credential_exchanger.js +2 -0
  111. package/dist/esm/auth/exchanger/credential_exchanger_registry.js +2 -0
  112. package/dist/esm/auth/oauth2/oauth2_credential_exchanger.js +177 -0
  113. package/dist/esm/auth/oauth2/oauth2_credential_refresher.js +85 -0
  114. package/dist/esm/auth/oauth2/oauth2_discovery.js +156 -0
  115. package/dist/esm/auth/oauth2/oauth2_utils.js +87 -0
  116. package/dist/esm/auth/refresher/base_credential_refresher.js +16 -0
  117. package/dist/esm/auth/refresher/credential_refresher_registry.js +40 -0
  118. package/dist/esm/code_executors/base_code_executor.js +11 -5
  119. package/dist/esm/code_executors/built_in_code_executor.js +2 -0
  120. package/dist/esm/code_executors/code_execution_utils.js +19 -0
  121. package/dist/esm/code_executors/code_executor_context.js +2 -0
  122. package/dist/esm/code_executors/unsafe_local_code_executor.js +205 -0
  123. package/dist/esm/common.js +52 -3
  124. package/dist/esm/context/base_context_compactor.js +2 -0
  125. package/dist/esm/context/summarizers/base_summarizer.js +2 -0
  126. package/dist/esm/context/summarizers/llm_summarizer.js +2 -0
  127. package/dist/esm/context/token_based_context_compactor.js +2 -0
  128. package/dist/esm/context/truncating_context_compactor.js +2 -0
  129. package/dist/esm/events/compacted_event.js +2 -0
  130. package/dist/esm/events/event.js +2 -0
  131. package/dist/esm/events/event_actions.js +2 -0
  132. package/dist/esm/events/structured_events.js +2 -0
  133. package/dist/esm/examples/base_example_provider.js +2 -0
  134. package/dist/esm/examples/example.js +2 -0
  135. package/dist/esm/examples/example_util.js +2 -0
  136. package/dist/esm/features/feature_registry.js +107 -0
  137. package/dist/esm/index.js +45 -119
  138. package/dist/esm/index_web.js +2 -0
  139. package/dist/esm/memory/base_memory_service.js +2 -0
  140. package/dist/esm/memory/in_memory_memory_service.js +2 -0
  141. package/dist/esm/memory/memory_entry.js +2 -0
  142. package/dist/esm/models/apigee_llm.js +4 -2
  143. package/dist/esm/models/base_llm.js +2 -0
  144. package/dist/esm/models/base_llm_connection.js +2 -0
  145. package/dist/esm/models/gemini_llm_connection.js +2 -0
  146. package/dist/esm/models/google_llm.js +20 -54
  147. package/dist/esm/models/llm_request.js +2 -0
  148. package/dist/esm/models/llm_response.js +2 -0
  149. package/dist/esm/models/registry.js +2 -0
  150. package/dist/esm/models/routed_llm.js +73 -0
  151. package/dist/esm/plugins/base_plugin.js +41 -1
  152. package/dist/esm/plugins/logging_plugin.js +2 -0
  153. package/dist/esm/plugins/plugin_manager.js +41 -0
  154. package/dist/esm/plugins/security_plugin.js +2 -0
  155. package/dist/esm/runner/in_memory_runner.js +2 -0
  156. package/dist/esm/runner/runner.js +33 -3
  157. package/dist/esm/sessions/base_session_service.js +2 -0
  158. package/dist/esm/sessions/database_session_service.js +2 -0
  159. package/dist/esm/sessions/db/operations.js +5 -10
  160. package/dist/esm/sessions/db/schema.js +2 -0
  161. package/dist/esm/sessions/in_memory_session_service.js +2 -0
  162. package/dist/esm/sessions/registry.js +2 -0
  163. package/dist/esm/sessions/session.js +2 -0
  164. package/dist/esm/sessions/state.js +2 -0
  165. package/dist/esm/skills/loader.js +244 -0
  166. package/dist/esm/skills/prompt.js +30 -0
  167. package/dist/esm/skills/skill.js +49 -0
  168. package/dist/esm/telemetry/google_cloud.js +2 -0
  169. package/dist/esm/telemetry/setup.js +2 -0
  170. package/dist/esm/telemetry/tracing.js +2 -0
  171. package/dist/esm/tools/agent_tool.js +13 -4
  172. package/dist/esm/tools/base_tool.js +2 -0
  173. package/dist/esm/tools/base_toolset.js +2 -0
  174. package/dist/esm/tools/exit_loop_tool.js +2 -0
  175. package/dist/esm/tools/forwarding_artifact_service.js +2 -0
  176. package/dist/esm/tools/function_tool.js +2 -0
  177. package/dist/esm/tools/google_search_tool.js +2 -0
  178. package/dist/esm/tools/load_artifacts_tool.js +2 -0
  179. package/dist/esm/tools/load_memory_tool.js +2 -0
  180. package/dist/esm/tools/long_running_tool.js +2 -0
  181. package/dist/esm/tools/mcp/mcp_session_manager.js +2 -0
  182. package/dist/esm/tools/mcp/mcp_tool.js +9 -3
  183. package/dist/esm/tools/mcp/mcp_toolset.js +3 -1
  184. package/dist/esm/tools/preload_memory_tool.js +2 -0
  185. package/dist/esm/tools/skill/list_skills_tool.js +50 -0
  186. package/dist/esm/tools/skill/load_skill_resource_tool.js +191 -0
  187. package/dist/esm/tools/skill/load_skill_tool.js +82 -0
  188. package/dist/esm/tools/skill/run_skill_inline_script_tool.js +120 -0
  189. package/dist/esm/tools/skill/run_skill_script_tool.js +192 -0
  190. package/dist/esm/tools/skill/skill_toolset.js +137 -0
  191. package/dist/esm/tools/tool_confirmation.js +2 -0
  192. package/dist/esm/tools/url_context_tool.js +44 -0
  193. package/dist/esm/tools/vertex_ai_search_tool.js +103 -0
  194. package/dist/esm/utils/client_labels.js +2 -0
  195. package/dist/esm/utils/env_aware_utils.js +2 -0
  196. package/dist/esm/utils/experimental.js +46 -0
  197. package/dist/esm/utils/failover_utils.js +65 -0
  198. package/dist/esm/utils/file_extension_utils.js +51 -0
  199. package/dist/esm/utils/file_utils.js +56 -0
  200. package/dist/esm/utils/gemini_schema_util.js +2 -0
  201. package/dist/esm/utils/logger.js +2 -0
  202. package/dist/esm/utils/model_name.js +8 -1
  203. package/dist/esm/utils/object_notation_utils.js +2 -0
  204. package/dist/esm/utils/simple_zod_to_json.js +2 -0
  205. package/dist/esm/utils/streaming_utils.js +307 -0
  206. package/dist/esm/utils/variant_utils.js +2 -0
  207. package/dist/esm/version.js +3 -1
  208. package/dist/types/agents/context.d.ts +1 -0
  209. package/dist/types/agents/invocation_context.d.ts +5 -0
  210. package/dist/types/agents/processors/tool_filter_request_processor.d.ts +14 -0
  211. package/dist/types/agents/routed_agent.d.ts +59 -0
  212. package/dist/types/auth/auth_credential.d.ts +17 -0
  213. package/dist/types/auth/auth_handler.d.ts +1 -0
  214. package/dist/types/auth/auth_preprocessor.d.ts +12 -0
  215. package/dist/types/auth/auth_provider_registry.d.ts +27 -0
  216. package/dist/types/auth/base_auth_provider.d.ts +20 -0
  217. package/dist/types/auth/credential_service/session_state_credential_service.d.ts +20 -0
  218. package/dist/types/auth/exchanger/base_credential_exchanger.d.ts +12 -5
  219. package/dist/types/auth/oauth2/oauth2_credential_exchanger.d.ts +26 -0
  220. package/dist/types/auth/oauth2/oauth2_credential_refresher.d.ts +29 -0
  221. package/dist/types/auth/oauth2/oauth2_discovery.d.ts +38 -0
  222. package/dist/types/auth/oauth2/oauth2_utils.d.ts +56 -0
  223. package/dist/types/auth/refresher/base_credential_refresher.d.ts +38 -0
  224. package/dist/types/auth/refresher/credential_refresher_registry.d.ts +27 -0
  225. package/dist/types/code_executors/base_code_executor.d.ts +4 -4
  226. package/dist/types/code_executors/code_execution_utils.d.ts +29 -1
  227. package/dist/types/code_executors/unsafe_local_code_executor.d.ts +48 -0
  228. package/dist/types/common.d.ts +29 -3
  229. package/dist/types/features/feature_registry.d.ts +66 -0
  230. package/dist/types/index.d.ts +4 -0
  231. package/dist/types/memory/base_memory_service.d.ts +6 -0
  232. package/dist/types/memory/memory_entry.d.ts +11 -5
  233. package/dist/types/models/apigee_llm.d.ts +1 -1
  234. package/dist/types/models/base_llm.d.ts +1 -1
  235. package/dist/types/models/google_llm.d.ts +1 -1
  236. package/dist/types/models/llm_request.d.ts +4 -0
  237. package/dist/types/models/routed_llm.d.ts +38 -0
  238. package/dist/types/plugins/base_plugin.d.ts +49 -0
  239. package/dist/types/plugins/plugin_manager.d.ts +22 -1
  240. package/dist/types/runner/runner.d.ts +1 -0
  241. package/dist/types/skills/loader.d.ts +38 -0
  242. package/dist/types/skills/prompt.d.ts +13 -0
  243. package/dist/types/skills/skill.d.ts +48 -0
  244. package/dist/types/tools/mcp/mcp_tool.d.ts +7 -1
  245. package/dist/types/tools/mcp/mcp_toolset.d.ts +5 -0
  246. package/dist/types/tools/skill/list_skills_tool.d.ts +14 -0
  247. package/dist/types/tools/skill/load_skill_resource_tool.d.ts +15 -0
  248. package/dist/types/tools/skill/load_skill_tool.d.ts +14 -0
  249. package/dist/types/tools/skill/run_skill_inline_script_tool.d.ts +14 -0
  250. package/dist/types/tools/skill/run_skill_script_tool.d.ts +17 -0
  251. package/dist/types/tools/skill/skill_toolset.d.ts +28 -0
  252. package/dist/types/tools/url_context_tool.d.ts +17 -0
  253. package/dist/types/tools/vertex_ai_search_tool.d.ts +55 -0
  254. package/dist/types/utils/experimental.d.ts +11 -0
  255. package/dist/types/utils/failover_utils.d.ts +17 -0
  256. package/dist/types/utils/file_extension_utils.d.ts +21 -0
  257. package/dist/types/utils/file_utils.d.ts +11 -0
  258. package/dist/types/utils/model_name.d.ts +4 -0
  259. package/dist/types/utils/streaming_utils.d.ts +40 -0
  260. package/dist/types/version.d.ts +1 -1
  261. package/dist/web/a2a/a2a_event.js +2 -0
  262. package/dist/web/a2a/a2a_remote_agent.js +2 -0
  263. package/dist/web/a2a/a2a_remote_agent_run_processor.js +2 -0
  264. package/dist/web/a2a/a2a_remote_agent_utils.js +2 -0
  265. package/dist/web/a2a/agent_card.js +2 -0
  266. package/dist/web/a2a/agent_executor.js +2 -0
  267. package/dist/web/a2a/agent_to_a2a.js +2 -0
  268. package/dist/web/a2a/event_converter_utils.js +2 -0
  269. package/dist/web/a2a/event_processor_utils.js +2 -0
  270. package/dist/web/a2a/executor_context.js +2 -0
  271. package/dist/web/a2a/metadata_converter_utils.js +2 -0
  272. package/dist/web/a2a/part_converter_utils.js +2 -0
  273. package/dist/web/agents/active_streaming_tool.js +2 -0
  274. package/dist/web/agents/base_agent.js +13 -2
  275. package/dist/web/agents/context.js +3 -0
  276. package/dist/web/agents/functions.js +3 -0
  277. package/dist/web/agents/instructions.js +2 -0
  278. package/dist/web/agents/invocation_context.js +3 -0
  279. package/dist/web/agents/live_request_queue.js +2 -0
  280. package/dist/web/agents/llm_agent.js +72 -13
  281. package/dist/web/agents/loop_agent.js +6 -0
  282. package/dist/web/agents/parallel_agent.js +6 -0
  283. package/dist/web/agents/processors/agent_transfer_llm_request_processor.js +2 -0
  284. package/dist/web/agents/processors/base_llm_processor.js +2 -0
  285. package/dist/web/agents/processors/basic_llm_request_processor.js +2 -0
  286. package/dist/web/agents/processors/code_execution_request_processor.js +5 -0
  287. package/dist/web/agents/processors/content_processor_utils.js +2 -0
  288. package/dist/web/agents/processors/content_request_processor.js +2 -0
  289. package/dist/web/agents/processors/context_compactor_request_processor.js +11 -0
  290. package/dist/web/agents/processors/identity_llm_request_processor.js +2 -0
  291. package/dist/web/agents/processors/instructions_llm_request_processor.js +2 -0
  292. package/dist/web/agents/processors/request_confirmation_llm_request_processor.js +2 -0
  293. package/dist/web/agents/processors/tool_filter_request_processor.js +62 -0
  294. package/dist/web/agents/readonly_context.js +2 -0
  295. package/dist/web/agents/routed_agent.js +138 -0
  296. package/dist/web/agents/run_config.js +2 -0
  297. package/dist/web/agents/sequential_agent.js +2 -0
  298. package/dist/web/agents/transcription_entry.js +2 -0
  299. package/dist/web/artifacts/base_artifact_service.js +2 -0
  300. package/dist/web/artifacts/file_artifact_service.js +2 -0
  301. package/dist/web/artifacts/gcs_artifact_service.js +2 -0
  302. package/dist/web/artifacts/in_memory_artifact_service.js +2 -0
  303. package/dist/web/artifacts/registry.js +2 -0
  304. package/dist/web/auth/auth_credential.js +2 -0
  305. package/dist/web/auth/auth_handler.js +85 -1
  306. package/dist/web/auth/auth_preprocessor.js +173 -0
  307. package/dist/web/auth/auth_provider_registry.js +33 -0
  308. package/dist/web/auth/auth_schemes.js +2 -0
  309. package/dist/web/auth/auth_tool.js +2 -0
  310. package/dist/web/auth/base_auth_provider.js +7 -0
  311. package/dist/web/auth/credential_service/base_credential_service.js +2 -0
  312. package/dist/web/auth/credential_service/in_memory_credential_service.js +2 -0
  313. package/dist/web/auth/credential_service/session_state_credential_service.js +23 -0
  314. package/dist/web/auth/exchanger/base_credential_exchanger.js +2 -0
  315. package/dist/web/auth/exchanger/credential_exchanger_registry.js +2 -0
  316. package/dist/web/auth/oauth2/oauth2_credential_exchanger.js +188 -0
  317. package/dist/web/auth/oauth2/oauth2_credential_refresher.js +102 -0
  318. package/dist/web/auth/oauth2/oauth2_discovery.js +156 -0
  319. package/dist/web/auth/oauth2/oauth2_utils.js +87 -0
  320. package/dist/web/auth/refresher/base_credential_refresher.js +16 -0
  321. package/dist/web/auth/refresher/credential_refresher_registry.js +40 -0
  322. package/dist/web/code_executors/base_code_executor.js +11 -5
  323. package/dist/web/code_executors/built_in_code_executor.js +2 -0
  324. package/dist/web/code_executors/code_execution_utils.js +19 -0
  325. package/dist/web/code_executors/code_executor_context.js +2 -0
  326. package/dist/web/code_executors/unsafe_local_code_executor.js +203 -0
  327. package/dist/web/common.js +52 -3
  328. package/dist/web/context/base_context_compactor.js +2 -0
  329. package/dist/web/context/summarizers/base_summarizer.js +2 -0
  330. package/dist/web/context/summarizers/llm_summarizer.js +2 -0
  331. package/dist/web/context/token_based_context_compactor.js +2 -0
  332. package/dist/web/context/truncating_context_compactor.js +2 -0
  333. package/dist/web/events/compacted_event.js +2 -0
  334. package/dist/web/events/event.js +2 -0
  335. package/dist/web/events/event_actions.js +2 -0
  336. package/dist/web/events/structured_events.js +2 -0
  337. package/dist/web/examples/base_example_provider.js +2 -0
  338. package/dist/web/examples/example.js +2 -0
  339. package/dist/web/examples/example_util.js +2 -0
  340. package/dist/web/features/feature_registry.js +107 -0
  341. package/dist/web/index.js +45 -13
  342. package/dist/web/index_web.js +2 -0
  343. package/dist/web/memory/base_memory_service.js +2 -0
  344. package/dist/web/memory/in_memory_memory_service.js +2 -0
  345. package/dist/web/memory/memory_entry.js +2 -0
  346. package/dist/web/models/apigee_llm.js +4 -2
  347. package/dist/web/models/base_llm.js +2 -0
  348. package/dist/web/models/base_llm_connection.js +2 -0
  349. package/dist/web/models/gemini_llm_connection.js +2 -0
  350. package/dist/web/models/google_llm.js +37 -59
  351. package/dist/web/models/llm_request.js +2 -0
  352. package/dist/web/models/llm_response.js +2 -0
  353. package/dist/web/models/registry.js +2 -0
  354. package/dist/web/models/routed_llm.js +122 -0
  355. package/dist/web/plugins/base_plugin.js +41 -1
  356. package/dist/web/plugins/logging_plugin.js +2 -0
  357. package/dist/web/plugins/plugin_manager.js +41 -0
  358. package/dist/web/plugins/security_plugin.js +2 -0
  359. package/dist/web/runner/in_memory_runner.js +2 -0
  360. package/dist/web/runner/runner.js +33 -3
  361. package/dist/web/sessions/base_session_service.js +2 -0
  362. package/dist/web/sessions/database_session_service.js +2 -0
  363. package/dist/web/sessions/db/operations.js +5 -10
  364. package/dist/web/sessions/db/schema.js +2 -0
  365. package/dist/web/sessions/in_memory_session_service.js +2 -0
  366. package/dist/web/sessions/registry.js +2 -0
  367. package/dist/web/sessions/session.js +2 -0
  368. package/dist/web/sessions/state.js +2 -0
  369. package/dist/web/skills/loader.js +262 -0
  370. package/dist/web/skills/prompt.js +30 -0
  371. package/dist/web/skills/skill.js +67 -0
  372. package/dist/web/telemetry/google_cloud.js +2 -0
  373. package/dist/web/telemetry/setup.js +2 -0
  374. package/dist/web/telemetry/tracing.js +2 -0
  375. package/dist/web/tools/agent_tool.js +13 -4
  376. package/dist/web/tools/base_tool.js +2 -0
  377. package/dist/web/tools/base_toolset.js +2 -0
  378. package/dist/web/tools/exit_loop_tool.js +2 -0
  379. package/dist/web/tools/forwarding_artifact_service.js +2 -0
  380. package/dist/web/tools/function_tool.js +2 -0
  381. package/dist/web/tools/google_search_tool.js +2 -0
  382. package/dist/web/tools/load_artifacts_tool.js +2 -0
  383. package/dist/web/tools/load_memory_tool.js +2 -0
  384. package/dist/web/tools/long_running_tool.js +2 -0
  385. package/dist/web/tools/mcp/mcp_session_manager.js +2 -0
  386. package/dist/web/tools/mcp/mcp_tool.js +9 -3
  387. package/dist/web/tools/mcp/mcp_toolset.js +3 -1
  388. package/dist/web/tools/preload_memory_tool.js +2 -0
  389. package/dist/web/tools/skill/list_skills_tool.js +50 -0
  390. package/dist/web/tools/skill/load_skill_resource_tool.js +191 -0
  391. package/dist/web/tools/skill/load_skill_tool.js +82 -0
  392. package/dist/web/tools/skill/run_skill_inline_script_tool.js +120 -0
  393. package/dist/web/tools/skill/run_skill_script_tool.js +190 -0
  394. package/dist/web/tools/skill/skill_toolset.js +123 -0
  395. package/dist/web/tools/tool_confirmation.js +2 -0
  396. package/dist/web/tools/url_context_tool.js +44 -0
  397. package/dist/web/tools/vertex_ai_search_tool.js +103 -0
  398. package/dist/web/utils/client_labels.js +2 -0
  399. package/dist/web/utils/env_aware_utils.js +2 -0
  400. package/dist/web/utils/experimental.js +46 -0
  401. package/dist/web/utils/failover_utils.js +96 -0
  402. package/dist/web/utils/file_extension_utils.js +51 -0
  403. package/dist/web/utils/file_utils.js +74 -0
  404. package/dist/web/utils/gemini_schema_util.js +2 -0
  405. package/dist/web/utils/logger.js +2 -0
  406. package/dist/web/utils/model_name.js +8 -1
  407. package/dist/web/utils/object_notation_utils.js +2 -0
  408. package/dist/web/utils/simple_zod_to_json.js +2 -0
  409. package/dist/web/utils/streaming_utils.js +325 -0
  410. package/dist/web/utils/variant_utils.js +2 -0
  411. package/dist/web/version.js +3 -1
  412. package/package.json +20 -18
  413. package/dist/cjs/index.js.map +0 -7
  414. package/dist/esm/index.js.map +0 -7
  415. package/dist/web/index.js.map +0 -7
@@ -0,0 +1,241 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ "use strict";
8
+ var __create = Object.create;
9
+ var __defProp = Object.defineProperty;
10
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
11
+ var __getOwnPropNames = Object.getOwnPropertyNames;
12
+ var __getProtoOf = Object.getPrototypeOf;
13
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
14
+ var __export = (target, all) => {
15
+ for (var name in all)
16
+ __defProp(target, name, { get: all[name], enumerable: true });
17
+ };
18
+ var __copyProps = (to, from, except, desc) => {
19
+ if (from && typeof from === "object" || typeof from === "function") {
20
+ for (let key of __getOwnPropNames(from))
21
+ if (!__hasOwnProp.call(to, key) && key !== except)
22
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
23
+ }
24
+ return to;
25
+ };
26
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
27
+ // If the importer is in node compatibility mode or this is not an ESM
28
+ // file that has been converted to a CommonJS file using a Babel-
29
+ // compatible transform (i.e. "__esModule" has not been set), then set
30
+ // "default" to the CommonJS "module.exports" for node compatibility.
31
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
32
+ mod
33
+ ));
34
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
35
+ var unsafe_local_code_executor_exports = {};
36
+ __export(unsafe_local_code_executor_exports, {
37
+ UnsafeLocalCodeExecutor: () => UnsafeLocalCodeExecutor
38
+ });
39
+ module.exports = __toCommonJS(unsafe_local_code_executor_exports);
40
+ var import_child_process = require("child_process");
41
+ var fs = __toESM(require("node:fs/promises"), 1);
42
+ var os = __toESM(require("node:os"), 1);
43
+ var path = __toESM(require("node:path"), 1);
44
+ var import_file_extension_utils = require("../utils/file_extension_utils.js");
45
+ var import_file_utils = require("../utils/file_utils.js");
46
+ var import_logger = require("../utils/logger.js");
47
+ var import_base_code_executor = require("./base_code_executor.js");
48
+ var import_code_execution_utils = require("./code_execution_utils.js");
49
+ /**
50
+ * @license
51
+ * Copyright 2026 Google LLC
52
+ * SPDX-License-Identifier: Apache-2.0
53
+ */
54
+ const IS_WINDOWS = os.platform() === "win32";
55
+ async function createTempScriptFile(code, language, shellCommandPath) {
56
+ const tempDir = path.join(
57
+ os.tmpdir(),
58
+ "adk_js_unsafe_code_executor",
59
+ Date.now().toString() + "_" + Math.random().toString(36).slice(2)
60
+ );
61
+ await fs.mkdir(tempDir, { recursive: true });
62
+ const ext = getExtensionForLanguage(language, shellCommandPath) || ".js";
63
+ const filePath = path.join(tempDir, `script${ext}`);
64
+ await fs.writeFile(filePath, code);
65
+ return { filePath, tempDir };
66
+ }
67
+ function getExtensionForLanguage(language, shellCommandPath) {
68
+ if (language === import_code_execution_utils.CodeExecutionLanguage.JAVASCRIPT) {
69
+ return ".js";
70
+ }
71
+ if (language === import_code_execution_utils.CodeExecutionLanguage.PYTHON) {
72
+ return ".py";
73
+ }
74
+ if (language === import_code_execution_utils.CodeExecutionLanguage.POWERSHELL) {
75
+ return ".ps1";
76
+ }
77
+ if (language === import_code_execution_utils.CodeExecutionLanguage.WINDOWS_CMD) {
78
+ return ".bat";
79
+ }
80
+ if (language === import_code_execution_utils.CodeExecutionLanguage.SHELL) {
81
+ if (IS_WINDOWS) {
82
+ if (shellCommandPath && shellCommandPath.toLowerCase().includes("cmd")) {
83
+ return ".bat";
84
+ }
85
+ return ".ps1";
86
+ }
87
+ return ".sh";
88
+ }
89
+ return void 0;
90
+ }
91
+ class UnsafeLocalCodeExecutor extends import_base_code_executor.BaseCodeExecutor {
92
+ constructor(options = {}) {
93
+ var _a, _b, _c, _d;
94
+ super();
95
+ this.timeoutSeconds = (_a = options.timeoutSeconds) != null ? _a : 30;
96
+ this.nodeCommandPath = (_b = options.commandPath) != null ? _b : process.execPath;
97
+ this.pythonCommandPath = (_c = options.pythonCommandPath) != null ? _c : IS_WINDOWS ? "python" : "python3";
98
+ this.shellCommandPath = (_d = options.shellCommandPath) != null ? _d : IS_WINDOWS ? "powershell" : "bash";
99
+ this.stateful = false;
100
+ this.optimizeDataFile = false;
101
+ }
102
+ async executeCode(params) {
103
+ var _a;
104
+ const { code, language } = params.codeExecutionInput;
105
+ if (![
106
+ import_code_execution_utils.CodeExecutionLanguage.JAVASCRIPT,
107
+ import_code_execution_utils.CodeExecutionLanguage.PYTHON,
108
+ import_code_execution_utils.CodeExecutionLanguage.SHELL,
109
+ import_code_execution_utils.CodeExecutionLanguage.WINDOWS_CMD,
110
+ import_code_execution_utils.CodeExecutionLanguage.POWERSHELL
111
+ ].includes(language)) {
112
+ return {
113
+ stdout: "",
114
+ stderr: `Unsupported language: ${language}`,
115
+ outputFiles: []
116
+ };
117
+ }
118
+ import_logger.logger.warn(
119
+ "\n====================================================================================\n\u26A0\uFE0F DANGER: UnsafeLocalCodeExecutor is executing code locally on this host machine!\nThis component provides NO sandboxing or container isolation. Arbitrary shell/script\ncommands generated by AI or untrusted sources could lead to serious security risks.\n====================================================================================\n"
120
+ );
121
+ let tempDir;
122
+ try {
123
+ const res = await createTempScriptFile(
124
+ code,
125
+ language,
126
+ this.shellCommandPath
127
+ );
128
+ const filePath = res.filePath;
129
+ tempDir = res.tempDir;
130
+ if (params.codeExecutionInput.inputFiles) {
131
+ await (0, import_file_utils.materializeFiles)(params.codeExecutionInput.inputFiles, tempDir);
132
+ }
133
+ let command = this.nodeCommandPath;
134
+ let args = [filePath];
135
+ if (language === import_code_execution_utils.CodeExecutionLanguage.PYTHON) {
136
+ command = this.pythonCommandPath;
137
+ } else if (language === import_code_execution_utils.CodeExecutionLanguage.SHELL) {
138
+ command = this.shellCommandPath;
139
+ if (this.shellCommandPath.toLowerCase().includes("powershell")) {
140
+ args = ["-NoLogo", "-ExecutionPolicy", "Bypass", "-File", filePath];
141
+ } else if (this.shellCommandPath.toLowerCase().includes("cmd")) {
142
+ args = ["/c", filePath];
143
+ }
144
+ } else if (language === import_code_execution_utils.CodeExecutionLanguage.POWERSHELL) {
145
+ command = IS_WINDOWS ? "powershell" : "pwsh";
146
+ args = ["-NoLogo", "-ExecutionPolicy", "Bypass", "-File", filePath];
147
+ } else if (language === import_code_execution_utils.CodeExecutionLanguage.WINDOWS_CMD) {
148
+ command = "cmd.exe";
149
+ args = ["/c", filePath];
150
+ }
151
+ if (params.codeExecutionInput.args) {
152
+ if (Array.isArray(params.codeExecutionInput.args)) {
153
+ args.push(...params.codeExecutionInput.args);
154
+ } else {
155
+ for (const [k, v] of Object.entries(params.codeExecutionInput.args)) {
156
+ args.push(`--${k}`, String(v));
157
+ }
158
+ }
159
+ }
160
+ const executionResult = await new Promise((resolve) => {
161
+ const child = (0, import_child_process.spawn)(command, args, {
162
+ timeout: this.timeoutSeconds * 1e3,
163
+ killSignal: "SIGKILL",
164
+ cwd: tempDir
165
+ });
166
+ let stdout = "";
167
+ let stderr = "";
168
+ if (child.stdout) {
169
+ child.stdout.on("data", (data) => {
170
+ stdout += data.toString();
171
+ });
172
+ }
173
+ if (child.stderr) {
174
+ child.stderr.on("data", (data) => {
175
+ stderr += data.toString();
176
+ });
177
+ }
178
+ child.on("error", (err) => {
179
+ stderr += `Process error: ${err.message}
180
+ `;
181
+ });
182
+ child.on("close", (exitCode, signal) => {
183
+ if (signal === "SIGKILL" || signal === "SIGTERM") {
184
+ stderr += `
185
+ Code execution timed out after ${this.timeoutSeconds} seconds.`;
186
+ } else if (exitCode !== 0 && exitCode !== null) {
187
+ if (!stderr) {
188
+ stderr = `Exit code ${exitCode}`;
189
+ }
190
+ }
191
+ resolve({ stdout, stderr, exitCode });
192
+ });
193
+ });
194
+ const outputFiles = [];
195
+ try {
196
+ const allFiles = await fs.readdir(tempDir, { recursive: true });
197
+ for (const relativeFilePath of allFiles) {
198
+ const fullPath = path.join(tempDir, relativeFilePath);
199
+ const stat = await fs.lstat(fullPath);
200
+ if (!stat.isFile()) {
201
+ continue;
202
+ }
203
+ if (relativeFilePath === path.basename(filePath)) {
204
+ continue;
205
+ }
206
+ const isInputFile = (_a = params.codeExecutionInput.inputFiles) == null ? void 0 : _a.some(
207
+ (f) => f.name === relativeFilePath
208
+ );
209
+ if (isInputFile) {
210
+ continue;
211
+ }
212
+ const fileContent = await fs.readFile(fullPath);
213
+ const { mimeType, encoding } = (0, import_file_extension_utils.getMimeTypeAndEncoding)(
214
+ path.extname(relativeFilePath)
215
+ );
216
+ outputFiles.push({
217
+ name: relativeFilePath,
218
+ content: fileContent.toString(encoding),
219
+ contentEncoding: encoding,
220
+ mimeType
221
+ });
222
+ }
223
+ } catch (e) {
224
+ import_logger.logger.error(`Error scanning output files: ${e}`);
225
+ }
226
+ return {
227
+ stdout: executionResult.stdout,
228
+ stderr: executionResult.stderr,
229
+ outputFiles
230
+ };
231
+ } finally {
232
+ if (tempDir) {
233
+ await fs.rm(tempDir, { recursive: true, force: true });
234
+ }
235
+ }
236
+ }
237
+ }
238
+ // Annotate the CommonJS export names for ESM import in node:
239
+ 0 && (module.exports = {
240
+ UnsafeLocalCodeExecutor
241
+ });
@@ -26,9 +26,13 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
26
26
  var common_exports = {};
27
27
  __export(common_exports, {
28
28
  ActiveStreamingTool: () => import_active_streaming_tool.ActiveStreamingTool,
29
+ Agent: () => import_llm_agent.LlmAgent,
29
30
  AgentTool: () => import_agent_tool.AgentTool,
31
+ AgentTransferLlmRequestProcessor: () => import_agent_transfer_llm_request_processor.AgentTransferLlmRequestProcessor,
30
32
  ApigeeLlm: () => import_apigee_llm.ApigeeLlm,
31
33
  AuthCredentialTypes: () => import_auth_credential.AuthCredentialTypes,
34
+ AuthHandler: () => import_auth_handler.AuthHandler,
35
+ AuthProviderRegistry: () => import_auth_provider_registry.AuthProviderRegistry,
32
36
  BaseAgent: () => import_base_agent.BaseAgent,
33
37
  BaseCodeExecutor: () => import_base_code_executor.BaseCodeExecutor,
34
38
  BaseExampleProvider: () => import_base_example_provider.BaseExampleProvider,
@@ -41,18 +45,24 @@ __export(common_exports, {
41
45
  BaseToolset: () => import_base_toolset.BaseToolset,
42
46
  BuiltInCodeExecutor: () => import_built_in_code_executor.BuiltInCodeExecutor,
43
47
  CONTENT_REQUEST_PROCESSOR: () => import_content_request_processor.CONTENT_REQUEST_PROCESSOR,
48
+ CodeExecutionLanguage: () => import_code_execution_utils.CodeExecutionLanguage,
44
49
  ContentRequestProcessor: () => import_content_request_processor.ContentRequestProcessor,
45
50
  Context: () => import_context.Context,
51
+ ContextCompactionTrigger: () => import_base_plugin.ContextCompactionTrigger,
46
52
  ContextCompactorRequestProcessor: () => import_context_compactor_request_processor.ContextCompactorRequestProcessor,
53
+ CredentialExchangeError: () => import_base_credential_exchanger.CredentialExchangeError,
54
+ CredentialRefresherRegistry: () => import_credential_refresher_registry.CredentialRefresherRegistry,
47
55
  EXIT_LOOP: () => import_exit_loop_tool.EXIT_LOOP,
48
56
  EventType: () => import_structured_events.EventType,
49
57
  ExitLoopTool: () => import_exit_loop_tool.ExitLoopTool,
58
+ FileContentEncoding: () => import_code_execution_utils.FileContentEncoding,
50
59
  FunctionTool: () => import_function_tool.FunctionTool,
51
60
  GOOGLE_SEARCH: () => import_google_search_tool.GOOGLE_SEARCH,
52
61
  Gemini: () => import_google_llm.Gemini,
53
62
  GoogleLLMVariant: () => import_variant_utils.GoogleLLMVariant,
54
63
  GoogleSearchTool: () => import_google_search_tool.GoogleSearchTool,
55
64
  InMemoryArtifactService: () => import_in_memory_artifact_service.InMemoryArtifactService,
65
+ InMemoryCredentialService: () => import_in_memory_credential_service.InMemoryCredentialService,
56
66
  InMemoryMemoryService: () => import_in_memory_memory_service.InMemoryMemoryService,
57
67
  InMemoryPolicyEngine: () => import_security_plugin.InMemoryPolicyEngine,
58
68
  InMemoryRunner: () => import_in_memory_runner.InMemoryRunner,
@@ -61,15 +71,21 @@ __export(common_exports, {
61
71
  LLMRegistry: () => import_registry.LLMRegistry,
62
72
  LOAD_ARTIFACTS: () => import_load_artifacts_tool.LOAD_ARTIFACTS,
63
73
  LOAD_MEMORY: () => import_load_memory_tool.LOAD_MEMORY,
74
+ ListSkillsTool: () => import_list_skills_tool.ListSkillsTool,
64
75
  LiveRequestQueue: () => import_live_request_queue.LiveRequestQueue,
65
76
  LlmAgent: () => import_llm_agent.LlmAgent,
66
77
  LlmSummarizer: () => import_llm_summarizer.LlmSummarizer,
67
78
  LoadArtifactsTool: () => import_load_artifacts_tool.LoadArtifactsTool,
68
79
  LoadMemoryTool: () => import_load_memory_tool.LoadMemoryTool,
80
+ LoadSkillResourceTool: () => import_load_skill_resource_tool.LoadSkillResourceTool,
81
+ LoadSkillTool: () => import_load_skill_tool.LoadSkillTool,
69
82
  LogLevel: () => import_logger.LogLevel,
70
83
  LoggingPlugin: () => import_logging_plugin.LoggingPlugin,
71
84
  LongRunningFunctionTool: () => import_long_running_tool.LongRunningFunctionTool,
72
85
  LoopAgent: () => import_loop_agent.LoopAgent,
86
+ OAuth2CredentialExchanger: () => import_oauth2_credential_exchanger.OAuth2CredentialExchanger,
87
+ OAuth2DiscoveryManager: () => import_oauth2_discovery.OAuth2DiscoveryManager,
88
+ OAuthGrantType: () => import_auth_schemes.OAuthGrantType,
73
89
  PRELOAD_MEMORY: () => import_preload_memory_tool.PRELOAD_MEMORY,
74
90
  ParallelAgent: () => import_parallel_agent.ParallelAgent,
75
91
  PluginManager: () => import_plugin_manager.PluginManager,
@@ -77,14 +93,21 @@ __export(common_exports, {
77
93
  PreloadMemoryTool: () => import_preload_memory_tool.PreloadMemoryTool,
78
94
  REQUEST_CONFIRMATION_FUNCTION_CALL_NAME: () => import_security_plugin.REQUEST_CONFIRMATION_FUNCTION_CALL_NAME,
79
95
  ReadonlyContext: () => import_readonly_context.ReadonlyContext,
96
+ RoutedAgent: () => import_routed_agent.RoutedAgent,
97
+ RoutedLlm: () => import_routed_llm.RoutedLlm,
80
98
  Runner: () => import_runner.Runner,
81
99
  SecurityPlugin: () => import_security_plugin.SecurityPlugin,
82
100
  SequentialAgent: () => import_sequential_agent.SequentialAgent,
101
+ SessionStateCredentialService: () => import_session_state_credential_service.SessionStateCredentialService,
102
+ SkillToolset: () => import_skill_toolset.SkillToolset,
83
103
  State: () => import_state.State,
84
104
  StreamingMode: () => import_run_config.StreamingMode,
85
105
  TokenBasedContextCompactor: () => import_token_based_context_compactor.TokenBasedContextCompactor,
86
106
  ToolConfirmation: () => import_tool_confirmation.ToolConfirmation,
87
107
  TruncatingContextCompactor: () => import_truncating_context_compactor.TruncatingContextCompactor,
108
+ URL_CONTEXT: () => import_url_context_tool.URL_CONTEXT,
109
+ UrlContextTool: () => import_url_context_tool.UrlContextTool,
110
+ VertexAiSearchTool: () => import_vertex_ai_search_tool.VertexAiSearchTool,
88
111
  createEvent: () => import_event.createEvent,
89
112
  createEventActions: () => import_event_actions.createEventActions,
90
113
  createSession: () => import_session.createSession,
@@ -108,6 +131,7 @@ __export(common_exports, {
108
131
  isLlmAgent: () => import_llm_agent.isLlmAgent,
109
132
  isLoopAgent: () => import_loop_agent.isLoopAgent,
110
133
  isParallelAgent: () => import_parallel_agent.isParallelAgent,
134
+ isRoutedAgent: () => import_routed_agent.isRoutedAgent,
111
135
  isRunner: () => import_runner.isRunner,
112
136
  isSequentialAgent: () => import_sequential_agent.isSequentialAgent,
113
137
  setLogLevel: () => import_logger.setLogLevel,
@@ -127,16 +151,28 @@ var import_live_request_queue = require("./agents/live_request_queue.js");
127
151
  var import_llm_agent = require("./agents/llm_agent.js");
128
152
  var import_loop_agent = require("./agents/loop_agent.js");
129
153
  var import_parallel_agent = require("./agents/parallel_agent.js");
154
+ var import_agent_transfer_llm_request_processor = require("./agents/processors/agent_transfer_llm_request_processor.js");
130
155
  var import_base_llm_processor = require("./agents/processors/base_llm_processor.js");
131
156
  var import_content_request_processor = require("./agents/processors/content_request_processor.js");
132
157
  var import_context_compactor_request_processor = require("./agents/processors/context_compactor_request_processor.js");
133
158
  var import_readonly_context = require("./agents/readonly_context.js");
159
+ var import_routed_agent = require("./agents/routed_agent.js");
134
160
  var import_run_config = require("./agents/run_config.js");
135
161
  var import_sequential_agent = require("./agents/sequential_agent.js");
136
162
  var import_in_memory_artifact_service = require("./artifacts/in_memory_artifact_service.js");
137
163
  var import_auth_credential = require("./auth/auth_credential.js");
164
+ var import_auth_handler = require("./auth/auth_handler.js");
165
+ var import_auth_provider_registry = require("./auth/auth_provider_registry.js");
166
+ var import_auth_schemes = require("./auth/auth_schemes.js");
167
+ var import_in_memory_credential_service = require("./auth/credential_service/in_memory_credential_service.js");
168
+ var import_session_state_credential_service = require("./auth/credential_service/session_state_credential_service.js");
169
+ var import_base_credential_exchanger = require("./auth/exchanger/base_credential_exchanger.js");
170
+ var import_oauth2_credential_exchanger = require("./auth/oauth2/oauth2_credential_exchanger.js");
171
+ var import_oauth2_discovery = require("./auth/oauth2/oauth2_discovery.js");
172
+ var import_credential_refresher_registry = require("./auth/refresher/credential_refresher_registry.js");
138
173
  var import_base_code_executor = require("./code_executors/base_code_executor.js");
139
174
  var import_built_in_code_executor = require("./code_executors/built_in_code_executor.js");
175
+ var import_code_execution_utils = require("./code_executors/code_execution_utils.js");
140
176
  var import_llm_summarizer = require("./context/summarizers/llm_summarizer.js");
141
177
  var import_token_based_context_compactor = require("./context/token_based_context_compactor.js");
142
178
  var import_truncating_context_compactor = require("./context/truncating_context_compactor.js");
@@ -150,6 +186,7 @@ var import_apigee_llm = require("./models/apigee_llm.js");
150
186
  var import_base_llm = require("./models/base_llm.js");
151
187
  var import_google_llm = require("./models/google_llm.js");
152
188
  var import_registry = require("./models/registry.js");
189
+ var import_routed_llm = require("./models/routed_llm.js");
153
190
  var import_base_plugin = require("./plugins/base_plugin.js");
154
191
  var import_logging_plugin = require("./plugins/logging_plugin.js");
155
192
  var import_plugin_manager = require("./plugins/plugin_manager.js");
@@ -171,12 +208,19 @@ var import_load_memory_tool = require("./tools/load_memory_tool.js");
171
208
  var import_long_running_tool = require("./tools/long_running_tool.js");
172
209
  var import_preload_memory_tool = require("./tools/preload_memory_tool.js");
173
210
  var import_tool_confirmation = require("./tools/tool_confirmation.js");
211
+ var import_url_context_tool = require("./tools/url_context_tool.js");
212
+ var import_vertex_ai_search_tool = require("./tools/vertex_ai_search_tool.js");
174
213
  var import_logger = require("./utils/logger.js");
175
214
  var import_model_name = require("./utils/model_name.js");
176
215
  var import_simple_zod_to_json = require("./utils/simple_zod_to_json.js");
177
216
  var import_variant_utils = require("./utils/variant_utils.js");
178
217
  var import_version = require("./version.js");
218
+ var import_list_skills_tool = require("./tools/skill/list_skills_tool.js");
219
+ var import_load_skill_resource_tool = require("./tools/skill/load_skill_resource_tool.js");
220
+ var import_load_skill_tool = require("./tools/skill/load_skill_tool.js");
221
+ var import_skill_toolset = require("./tools/skill/skill_toolset.js");
179
222
  __reExport(common_exports, require("./artifacts/base_artifact_service.js"), module.exports);
223
+ __reExport(common_exports, require("./features/feature_registry.js"), module.exports);
180
224
  __reExport(common_exports, require("./memory/base_memory_service.js"), module.exports);
181
225
  __reExport(common_exports, require("./sessions/base_session_service.js"), module.exports);
182
226
  __reExport(common_exports, require("./tools/base_tool.js"), module.exports);
@@ -188,9 +232,13 @@ __reExport(common_exports, require("./tools/base_tool.js"), module.exports);
188
232
  // Annotate the CommonJS export names for ESM import in node:
189
233
  0 && (module.exports = {
190
234
  ActiveStreamingTool,
235
+ Agent,
191
236
  AgentTool,
237
+ AgentTransferLlmRequestProcessor,
192
238
  ApigeeLlm,
193
239
  AuthCredentialTypes,
240
+ AuthHandler,
241
+ AuthProviderRegistry,
194
242
  BaseAgent,
195
243
  BaseCodeExecutor,
196
244
  BaseExampleProvider,
@@ -203,18 +251,24 @@ __reExport(common_exports, require("./tools/base_tool.js"), module.exports);
203
251
  BaseToolset,
204
252
  BuiltInCodeExecutor,
205
253
  CONTENT_REQUEST_PROCESSOR,
254
+ CodeExecutionLanguage,
206
255
  ContentRequestProcessor,
207
256
  Context,
257
+ ContextCompactionTrigger,
208
258
  ContextCompactorRequestProcessor,
259
+ CredentialExchangeError,
260
+ CredentialRefresherRegistry,
209
261
  EXIT_LOOP,
210
262
  EventType,
211
263
  ExitLoopTool,
264
+ FileContentEncoding,
212
265
  FunctionTool,
213
266
  GOOGLE_SEARCH,
214
267
  Gemini,
215
268
  GoogleLLMVariant,
216
269
  GoogleSearchTool,
217
270
  InMemoryArtifactService,
271
+ InMemoryCredentialService,
218
272
  InMemoryMemoryService,
219
273
  InMemoryPolicyEngine,
220
274
  InMemoryRunner,
@@ -223,15 +277,21 @@ __reExport(common_exports, require("./tools/base_tool.js"), module.exports);
223
277
  LLMRegistry,
224
278
  LOAD_ARTIFACTS,
225
279
  LOAD_MEMORY,
280
+ ListSkillsTool,
226
281
  LiveRequestQueue,
227
282
  LlmAgent,
228
283
  LlmSummarizer,
229
284
  LoadArtifactsTool,
230
285
  LoadMemoryTool,
286
+ LoadSkillResourceTool,
287
+ LoadSkillTool,
231
288
  LogLevel,
232
289
  LoggingPlugin,
233
290
  LongRunningFunctionTool,
234
291
  LoopAgent,
292
+ OAuth2CredentialExchanger,
293
+ OAuth2DiscoveryManager,
294
+ OAuthGrantType,
235
295
  PRELOAD_MEMORY,
236
296
  ParallelAgent,
237
297
  PluginManager,
@@ -239,14 +299,21 @@ __reExport(common_exports, require("./tools/base_tool.js"), module.exports);
239
299
  PreloadMemoryTool,
240
300
  REQUEST_CONFIRMATION_FUNCTION_CALL_NAME,
241
301
  ReadonlyContext,
302
+ RoutedAgent,
303
+ RoutedLlm,
242
304
  Runner,
243
305
  SecurityPlugin,
244
306
  SequentialAgent,
307
+ SessionStateCredentialService,
308
+ SkillToolset,
245
309
  State,
246
310
  StreamingMode,
247
311
  TokenBasedContextCompactor,
248
312
  ToolConfirmation,
249
313
  TruncatingContextCompactor,
314
+ URL_CONTEXT,
315
+ UrlContextTool,
316
+ VertexAiSearchTool,
250
317
  createEvent,
251
318
  createEventActions,
252
319
  createSession,
@@ -270,6 +337,7 @@ __reExport(common_exports, require("./tools/base_tool.js"), module.exports);
270
337
  isLlmAgent,
271
338
  isLoopAgent,
272
339
  isParallelAgent,
340
+ isRoutedAgent,
273
341
  isRunner,
274
342
  isSequentialAgent,
275
343
  setLogLevel,
@@ -279,6 +347,7 @@ __reExport(common_exports, require("./tools/base_tool.js"), module.exports);
279
347
  version,
280
348
  zodObjectToSchema,
281
349
  ...require("./artifacts/base_artifact_service.js"),
350
+ ...require("./features/feature_registry.js"),
282
351
  ...require("./memory/base_memory_service.js"),
283
352
  ...require("./sessions/base_session_service.js"),
284
353
  ...require("./tools/base_tool.js")
@@ -0,0 +1,141 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ "use strict";
8
+ var __defProp = Object.defineProperty;
9
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
10
+ var __getOwnPropNames = Object.getOwnPropertyNames;
11
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
12
+ var __export = (target, all) => {
13
+ for (var name in all)
14
+ __defProp(target, name, { get: all[name], enumerable: true });
15
+ };
16
+ var __copyProps = (to, from, except, desc) => {
17
+ if (from && typeof from === "object" || typeof from === "function") {
18
+ for (let key of __getOwnPropNames(from))
19
+ if (!__hasOwnProp.call(to, key) && key !== except)
20
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
21
+ }
22
+ return to;
23
+ };
24
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
+ var feature_registry_exports = {};
26
+ __export(feature_registry_exports, {
27
+ FeatureName: () => FeatureName,
28
+ FeatureStage: () => FeatureStage,
29
+ getFeatureConfig: () => getFeatureConfig,
30
+ isFeatureEnabled: () => isFeatureEnabled,
31
+ overrideFeatureEnabled: () => overrideFeatureEnabled,
32
+ registerFeature: () => registerFeature,
33
+ withTemporaryFeatureOverride: () => withTemporaryFeatureOverride
34
+ });
35
+ module.exports = __toCommonJS(feature_registry_exports);
36
+ var import_env_aware_utils = require("../utils/env_aware_utils.js");
37
+ var import_logger = require("../utils/logger.js");
38
+ /**
39
+ * @license
40
+ * Copyright 2026 Google LLC
41
+ * SPDX-License-Identifier: Apache-2.0
42
+ */
43
+ var FeatureName = /* @__PURE__ */ ((FeatureName2) => {
44
+ FeatureName2["PROGRESSIVE_SSE_STREAMING"] = "PROGRESSIVE_SSE_STREAMING";
45
+ return FeatureName2;
46
+ })(FeatureName || {});
47
+ var FeatureStage = /* @__PURE__ */ ((FeatureStage2) => {
48
+ FeatureStage2["WIP"] = "wip";
49
+ FeatureStage2["EXPERIMENTAL"] = "experimental";
50
+ FeatureStage2["STABLE"] = "stable";
51
+ return FeatureStage2;
52
+ })(FeatureStage || {});
53
+ const FEATURE_REGISTRY = {
54
+ ["PROGRESSIVE_SSE_STREAMING" /* PROGRESSIVE_SSE_STREAMING */]: {
55
+ stage: "experimental" /* EXPERIMENTAL */,
56
+ defaultOn: false
57
+ }
58
+ };
59
+ const WARNED_FEATURES = /* @__PURE__ */ new Set();
60
+ const FEATURE_OVERRIDES = {};
61
+ function getFeatureConfig(featureName) {
62
+ return FEATURE_REGISTRY[featureName];
63
+ }
64
+ function registerFeature(featureName, config) {
65
+ FEATURE_REGISTRY[featureName] = config;
66
+ }
67
+ function overrideFeatureEnabled(featureName, enabled) {
68
+ const config = getFeatureConfig(featureName);
69
+ if (!config) {
70
+ throw new Error(`Feature ${featureName} is not registered.`);
71
+ }
72
+ if (enabled === void 0) {
73
+ delete FEATURE_OVERRIDES[featureName];
74
+ } else {
75
+ FEATURE_OVERRIDES[featureName] = enabled;
76
+ }
77
+ }
78
+ function isFeatureEnabled(featureName) {
79
+ const config = getFeatureConfig(featureName);
80
+ if (!config) {
81
+ throw new Error(`Feature ${featureName} is not registered.`);
82
+ }
83
+ if (featureName in FEATURE_OVERRIDES) {
84
+ const enabled = FEATURE_OVERRIDES[featureName];
85
+ if (enabled && config.stage !== "stable" /* STABLE */) {
86
+ emitNonStableWarningOnce(featureName, config.stage);
87
+ }
88
+ return enabled;
89
+ }
90
+ const enableVar = `ADK_ENABLE_${featureName}`;
91
+ const disableVar = `ADK_DISABLE_${featureName}`;
92
+ if ((0, import_env_aware_utils.getBooleanEnvVar)(enableVar)) {
93
+ if (config.stage !== "stable" /* STABLE */) {
94
+ emitNonStableWarningOnce(featureName, config.stage);
95
+ }
96
+ return true;
97
+ }
98
+ if ((0, import_env_aware_utils.getBooleanEnvVar)(disableVar)) {
99
+ return false;
100
+ }
101
+ if (config.stage !== "stable" /* STABLE */ && config.defaultOn) {
102
+ emitNonStableWarningOnce(featureName, config.stage);
103
+ }
104
+ return config.defaultOn;
105
+ }
106
+ function emitNonStableWarningOnce(featureName, featureStage) {
107
+ if (!WARNED_FEATURES.has(featureName)) {
108
+ WARNED_FEATURES.add(featureName);
109
+ import_logger.logger.warn(
110
+ `[${featureStage.toUpperCase()}] feature ${featureName} is enabled.`
111
+ );
112
+ }
113
+ }
114
+ async function withTemporaryFeatureOverride(featureName, enabled, callback) {
115
+ const config = getFeatureConfig(featureName);
116
+ if (!config) {
117
+ throw new Error(`Feature ${featureName} is not registered.`);
118
+ }
119
+ const hadOverride = featureName in FEATURE_OVERRIDES;
120
+ const originalValue = FEATURE_OVERRIDES[featureName];
121
+ FEATURE_OVERRIDES[featureName] = enabled;
122
+ try {
123
+ return await callback();
124
+ } finally {
125
+ if (hadOverride) {
126
+ FEATURE_OVERRIDES[featureName] = originalValue;
127
+ } else {
128
+ delete FEATURE_OVERRIDES[featureName];
129
+ }
130
+ }
131
+ }
132
+ // Annotate the CommonJS export names for ESM import in node:
133
+ 0 && (module.exports = {
134
+ FeatureName,
135
+ FeatureStage,
136
+ getFeatureConfig,
137
+ isFeatureEnabled,
138
+ overrideFeatureEnabled,
139
+ registerFeature,
140
+ withTemporaryFeatureOverride
141
+ });