@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
@@ -11,7 +11,7 @@ import { Event } from '../events/event.js';
11
11
  import { LlmRequest } from '../models/llm_request.js';
12
12
  import { LlmResponse } from '../models/llm_response.js';
13
13
  import { BaseTool } from '../tools/base_tool.js';
14
- import { BasePlugin } from './base_plugin.js';
14
+ import { BasePlugin, ContextCompactionTrigger } from './base_plugin.js';
15
15
  /**
16
16
  * Manages the registration and execution of plugins.
17
17
  *
@@ -103,6 +103,27 @@ export declare class PluginManager {
103
103
  agent: BaseAgent;
104
104
  callbackContext: Context;
105
105
  }): Promise<Content | undefined>;
106
+ /**
107
+ * Runs the `beforeToolSelection` for all plugins.
108
+ */
109
+ runBeforeToolSelection({ callbackContext, tools, }: {
110
+ callbackContext: Context;
111
+ tools: Readonly<Record<string, BaseTool>>;
112
+ }): Promise<Readonly<Record<string, BaseTool>> | undefined>;
113
+ /**
114
+ * Runs the `beforeContextCompaction` for all plugins.
115
+ */
116
+ runBeforeContextCompaction({ invocationContext, trigger, }: {
117
+ invocationContext: InvocationContext;
118
+ trigger: ContextCompactionTrigger;
119
+ }): Promise<void>;
120
+ /**
121
+ * Runs the `afterContextCompaction` for all plugins.
122
+ */
123
+ runAfterContextCompaction({ invocationContext, trigger, }: {
124
+ invocationContext: InvocationContext;
125
+ trigger: ContextCompactionTrigger;
126
+ }): Promise<void>;
106
127
  /**
107
128
  * Runs the `beforeToolCallback` for all plugins.
108
129
  */
@@ -84,6 +84,7 @@ export declare class Runner {
84
84
  newMessage: Content;
85
85
  stateDelta?: Record<string, unknown>;
86
86
  runConfig?: RunConfig;
87
+ abortSignal?: AbortSignal;
87
88
  }): AsyncGenerator<Event, void, undefined>;
88
89
  /**
89
90
  * Saves artifacts from the message parts and replaces the inline data with
@@ -0,0 +1,38 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Frontmatter, Skill } from './skill.js';
7
+ /**
8
+ * Parses SKILL.md from a raw content string, extracting the YAML frontmatter and the body.
9
+ *
10
+ * @param content - The raw content of the SKILL.md file.
11
+ * @returns An object containing the parsed frontmatter and the remaining markdown body.
12
+ * @throws {Error} If the content is not properly formatted with YAML frontmatter.
13
+ */
14
+ export declare function parseSkillMdContent(content: string): {
15
+ frontmatter: Frontmatter;
16
+ body: string;
17
+ };
18
+ /**
19
+ * Load a complete skill, including its instructions and resources, from a directory.
20
+ *
21
+ * @param skillDir - The path to the directory containing the skill definition.
22
+ * @returns A promise that resolves to the fully loaded Skill object.
23
+ */
24
+ export declare function loadSkillFromDir(skillDir: string): Promise<Skill>;
25
+ /**
26
+ * Validates a skill directory structure and frontmatter without fully loading all resources.
27
+ *
28
+ * @param skillDir - The path to the skill directory to validate.
29
+ * @returns A promise that resolves to an array of validation error messages, or an empty array if valid.
30
+ */
31
+ export declare function validateSkillDir(skillDir: string): Promise<string[]>;
32
+ /**
33
+ * Loads all skills located within subdirectories of a given base path.
34
+ *
35
+ * @param skillsBasePath - The base directory containing individual skill subdirectories.
36
+ * @returns A promise that resolves to a map of skill names to their corresponding Skill objects.
37
+ */
38
+ export declare function loadAllSkillsInDir(skillsBasePath: string): Promise<Record<string, Skill>>;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Frontmatter, Skill } from './skill.js';
7
+ /**
8
+ * Formats available skills into a standard XML string.
9
+ *
10
+ * @param skills A list of skill frontmatter or full skill objects.
11
+ * @returns XML string with <available_skills> block.
12
+ */
13
+ export declare function formatSkillsAsXml(skills: Array<Skill | Frontmatter>): string;
@@ -0,0 +1,48 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { z } from 'zod';
7
+ export declare const SNAKE_OR_KEBAB_NAME_PATTERN: RegExp;
8
+ /**
9
+ * Schema and Type for Skill Frontmatter metadata.
10
+ */
11
+ export declare const FrontmatterSchema: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{
12
+ name: z.ZodString;
13
+ description: z.ZodString;
14
+ license: z.ZodOptional<z.ZodString>;
15
+ compatibility: z.ZodOptional<z.ZodString>;
16
+ 'allowed-tools': z.ZodOptional<z.ZodString>;
17
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodAny>>;
18
+ }, z.core.$loose>>;
19
+ export interface Frontmatter {
20
+ name: string;
21
+ description: string;
22
+ license?: string;
23
+ compatibility?: string;
24
+ allowedTools?: string;
25
+ metadata?: Record<string, unknown>;
26
+ }
27
+ /**
28
+ * Wrapper for script content.
29
+ */
30
+ export interface Script {
31
+ src: string;
32
+ }
33
+ /**
34
+ * L3 skill content: additional instructions, assets, and scripts.
35
+ */
36
+ export interface Resources {
37
+ references?: Record<string, string | Buffer>;
38
+ assets?: Record<string, string | Buffer>;
39
+ scripts?: Record<string, Script>;
40
+ }
41
+ /**
42
+ * Complete skill representation including frontmatter, instructions, and resources.
43
+ */
44
+ export interface Skill {
45
+ frontmatter: Frontmatter;
46
+ instructions: string;
47
+ resources?: Resources;
48
+ }
@@ -20,11 +20,17 @@ import { MCPSessionManager } from './mcp_session_manager.js';
20
20
  * invoked, which in turn establishes an MCP session, sends a `callTool`
21
21
  * request with the provided arguments, and returns the result from the
22
22
  * remote tool.
23
+ *
24
+ * The originalName parameter allows the tool to track the native tool name
25
+ * exposed by the MCP server. This is critical when the toolset applies a
26
+ * prefix to tool names (e.g., for LLM namespace disambiguation), ensuring
27
+ * the correct original name is used when executing on the server.
23
28
  */
24
29
  export declare class MCPTool extends BaseTool {
25
30
  private readonly mcpTool;
26
31
  private readonly mcpSessionManager;
27
- constructor(mcpTool: Tool, mcpSessionManager: MCPSessionManager);
32
+ private readonly originalName;
33
+ constructor(mcpTool: Tool, mcpSessionManager: MCPSessionManager, originalName?: string);
28
34
  _getDeclaration(): FunctionDeclaration;
29
35
  runAsync(request: RunAsyncToolRequest): Promise<unknown>;
30
36
  }
@@ -17,6 +17,11 @@ import { MCPConnectionParams } from './mcp_session_manager.js';
17
17
  * The toolset can be configured with a filter to selectively expose a subset
18
18
  * of the tools provided by the MCP server.
19
19
  *
20
+ * It can also be configured with a prefix. If provided, all tools discovered
21
+ * from the MCP server will have their names prefixed with `${prefix}_`. When the
22
+ * LLM invokes the prefixed tool, this toolset transparently strips the prefix
23
+ * before sending the request to the underlying MCP server.
24
+ *
20
25
  * Usage:
21
26
  * import { MCPToolset } from '@google/adk';
22
27
  * import { StreamableHTTPConnectionParamsSchema } from '@google/adk';
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { FunctionDeclaration } from '@google/genai';
7
+ import { BaseTool, RunAsyncToolRequest } from '../base_tool.js';
8
+ import { SkillToolset } from './skill_toolset.js';
9
+ export declare class ListSkillsTool extends BaseTool {
10
+ private toolset;
11
+ constructor(toolset: SkillToolset);
12
+ _getDeclaration(): FunctionDeclaration;
13
+ runAsync(_request: RunAsyncToolRequest): Promise<unknown>;
14
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { FunctionDeclaration } from '@google/genai';
7
+ import { BaseTool, RunAsyncToolRequest, ToolProcessLlmRequest } from '../base_tool.js';
8
+ import { SkillToolset } from './skill_toolset.js';
9
+ export declare class LoadSkillResourceTool extends BaseTool {
10
+ private toolset;
11
+ constructor(toolset: SkillToolset);
12
+ _getDeclaration(): FunctionDeclaration;
13
+ runAsync({ args }: RunAsyncToolRequest): Promise<unknown>;
14
+ processLlmRequest(request: ToolProcessLlmRequest): Promise<void>;
15
+ }
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { FunctionDeclaration } from '@google/genai';
7
+ import { BaseTool, RunAsyncToolRequest } from '../base_tool.js';
8
+ import { SkillToolset } from './skill_toolset.js';
9
+ export declare class LoadSkillTool extends BaseTool {
10
+ private toolset;
11
+ constructor(toolset: SkillToolset);
12
+ _getDeclaration(): FunctionDeclaration;
13
+ runAsync({ args, toolContext, }: RunAsyncToolRequest): Promise<unknown>;
14
+ }
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { FunctionDeclaration } from '@google/genai';
7
+ import { BaseTool, RunAsyncToolRequest } from '../base_tool.js';
8
+ import { SkillToolset } from './skill_toolset.js';
9
+ export declare class RunSkillInlineScriptTool extends BaseTool {
10
+ private toolset;
11
+ constructor(toolset: SkillToolset);
12
+ _getDeclaration(): FunctionDeclaration;
13
+ runAsync({ args, toolContext, }: RunAsyncToolRequest): Promise<unknown>;
14
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { FunctionDeclaration } from '@google/genai';
7
+ import { File } from '../../code_executors/code_execution_utils.js';
8
+ import { Skill } from '../../skills/skill.js';
9
+ import { BaseTool, RunAsyncToolRequest } from '../base_tool.js';
10
+ import { SkillToolset } from './skill_toolset.js';
11
+ export declare class RunSkillScriptTool extends BaseTool {
12
+ private toolset;
13
+ constructor(toolset: SkillToolset);
14
+ _getDeclaration(): FunctionDeclaration;
15
+ runAsync({ args, toolContext, }: RunAsyncToolRequest): Promise<unknown>;
16
+ }
17
+ export declare function getSkillResourceFiles(skill: Skill): File[];
@@ -0,0 +1,28 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Context } from '../../agents/context.js';
7
+ import { ReadonlyContext } from '../../agents/readonly_context.js';
8
+ import { BaseCodeExecutor } from '../../code_executors/base_code_executor.js';
9
+ import { LlmRequest } from '../../models/llm_request.js';
10
+ import { Skill } from '../../skills/skill.js';
11
+ import { BaseTool } from '../base_tool.js';
12
+ import { BaseToolset } from '../base_toolset.js';
13
+ export declare class SkillToolset extends BaseToolset {
14
+ skills: Record<string, Skill>;
15
+ private tools;
16
+ additionalTools: Array<BaseTool | BaseToolset>;
17
+ codeExecutor?: BaseCodeExecutor;
18
+ private toolCache;
19
+ constructor(skills: Record<string, Skill> | Skill[], options?: {
20
+ codeExecutor?: BaseCodeExecutor;
21
+ additionalTools?: Array<BaseTool | BaseToolset>;
22
+ });
23
+ getTools(context?: ReadonlyContext): Promise<BaseTool[]>;
24
+ close(): Promise<void>;
25
+ getSkill(name: string): Skill | undefined;
26
+ processLlmRequest(toolContext: Context, llmRequest: LlmRequest): Promise<void>;
27
+ private resolveAdditionalTools;
28
+ }
@@ -0,0 +1,17 @@
1
+ import { BaseTool, ToolProcessLlmRequest } from './base_tool.js';
2
+ /**
3
+ * A built-in tool that allows Gemini 2+ models to retrieve content from URLs
4
+ * provided in the conversation.
5
+ *
6
+ * This tool operates internally within the model and does not require or
7
+ * perform local code execution.
8
+ */
9
+ export declare class UrlContextTool extends BaseTool {
10
+ constructor();
11
+ runAsync(): Promise<unknown>;
12
+ processLlmRequest({ llmRequest, }: ToolProcessLlmRequest): Promise<void>;
13
+ }
14
+ /**
15
+ * A global instance of {@link UrlContextTool}.
16
+ */
17
+ export declare const URL_CONTEXT: UrlContextTool;
@@ -0,0 +1,55 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { ReadonlyContext } from '../agents/readonly_context.js';
7
+ import { BaseTool, ToolProcessLlmRequest } from './base_tool.js';
8
+ export interface VertexAISearchDataStoreSpec {
9
+ dataStore?: string;
10
+ }
11
+ export interface VertexAISearchConfig {
12
+ datastore?: string;
13
+ dataStoreSpecs?: VertexAISearchDataStoreSpec[];
14
+ engine?: string;
15
+ filter?: string;
16
+ maxResults?: number;
17
+ }
18
+ export interface BaseVertexAiSearchToolParams {
19
+ filter?: string;
20
+ maxResults?: number;
21
+ bypassMultiToolsLimit?: boolean;
22
+ }
23
+ export interface DataStoreParams extends BaseVertexAiSearchToolParams {
24
+ dataStoreId: string;
25
+ searchEngineId?: never;
26
+ dataStoreSpecs?: never;
27
+ }
28
+ export interface SearchEngineParams extends BaseVertexAiSearchToolParams {
29
+ searchEngineId: string;
30
+ dataStoreId?: never;
31
+ dataStoreSpecs?: VertexAISearchDataStoreSpec[];
32
+ }
33
+ export type VertexAiSearchToolParams = DataStoreParams | SearchEngineParams;
34
+ /**
35
+ * A built-in tool using Vertex AI Search.
36
+ */
37
+ export declare class VertexAiSearchTool extends BaseTool {
38
+ readonly dataStoreId?: string;
39
+ readonly dataStoreSpecs?: VertexAISearchDataStoreSpec[];
40
+ readonly searchEngineId?: string;
41
+ readonly filter?: string;
42
+ readonly maxResults?: number;
43
+ readonly bypassMultiToolsLimit: boolean;
44
+ constructor(params: VertexAiSearchToolParams);
45
+ runAsync(): Promise<unknown>;
46
+ /**
47
+ * Builds the VertexAISearch configuration.
48
+ *
49
+ * Override this method in a subclass to dynamically customize the search
50
+ * configuration based on the context (e.g., set filter based on session
51
+ * state).
52
+ */
53
+ protected buildVertexAiSearchConfig(_readonlyContext: ReadonlyContext): VertexAISearchConfig;
54
+ processLlmRequest({ toolContext, llmRequest, }: ToolProcessLlmRequest): Promise<void>;
55
+ }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Decorator to mark classes and methods as experimental.
8
+ * Logs a warning once per item when the class is instantiated or the method is called.
9
+ */
10
+ export type Constructor = new (...args: unknown[]) => any;
11
+ export declare function experimental<T extends Constructor | object, P extends string | symbol | undefined = undefined>(target: T, propertyKey?: P, descriptor?: PropertyDescriptor): P extends undefined ? T : PropertyDescriptor;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Type definition for a function that selects an item based on the context.
8
+ */
9
+ export type Router<T, C> = (items: Readonly<Record<string, T>>, context: C, errorContext?: {
10
+ failedKeys: ReadonlySet<string>;
11
+ lastError: unknown;
12
+ }) => Promise<string | undefined> | string | undefined;
13
+ /**
14
+ * Runs a core operation with selection and failover support.
15
+ * Internal helper to unify Promise and Generator logic.
16
+ */
17
+ export declare function runWithRouting<T, C, TYield>(items: Readonly<Record<string, T>>, context: C, router: Router<T, C>, runFn: (item: T) => AsyncGenerator<TYield, void, void> | Promise<TYield>): AsyncGenerator<TYield, void, void>;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { CodeExecutionLanguage, FileContentEncoding } from '../code_executors/code_execution_utils.js';
7
+ /**
8
+ * Gets the MIME type and file content encoding for a given file extension.
9
+ * @param ext The file extension (e.g., '.js', '.png').
10
+ * @returns An object containing the mimeType and encoding.
11
+ */
12
+ export declare function getMimeTypeAndEncoding(ext: string): {
13
+ mimeType: string;
14
+ encoding: FileContentEncoding;
15
+ };
16
+ /**
17
+ * Gets the code execution language for a given file extension.
18
+ * @param ext The file extension (e.g., '.js', '.py').
19
+ * @returns The code execution language.
20
+ */
21
+ export declare function getScriptLanguageByExtension(ext: string): CodeExecutionLanguage;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { File } from '../code_executors/code_execution_utils.js';
7
+ /**
8
+ * Creates files with the given paths in the current working directory.
9
+ * @param files The files to materialize.
10
+ */
11
+ export declare function materializeFiles(files: File[], dir?: string): Promise<File[]>;
@@ -32,3 +32,7 @@ export declare function isGemini1Model(modelString: string): boolean;
32
32
  * @return true if it's a Gemini 2.x model, false otherwise.
33
33
  */
34
34
  export declare function isGemini2OrAbove(modelString: string): boolean;
35
+ /**
36
+ * Returns True when Gemini model-id validation should be bypassed.
37
+ */
38
+ export declare function isGeminiModelIdCheckDisabled(): boolean;
@@ -0,0 +1,40 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { GenerateContentResponse } from '@google/genai';
7
+ import { LlmResponse } from '../models/llm_response.js';
8
+ /**
9
+ * Aggregates partial streaming responses.
10
+ *
11
+ * It aggregates content from partial responses, and generates LlmResponses for
12
+ * individual (partial) model responses, as well as for aggregated content.
13
+ */
14
+ export declare class StreamingResponseAggregator {
15
+ private readonly isProgressiveMode;
16
+ private usageMetadata?;
17
+ private groundingMetadata?;
18
+ private citationMetadata?;
19
+ private response?;
20
+ private text;
21
+ private thoughtText;
22
+ private partsSequence;
23
+ private currentTextBuffer;
24
+ private currentTextIsThought?;
25
+ private finishReason?;
26
+ private currentFcName?;
27
+ private currentFcArgs;
28
+ private currentFcId?;
29
+ private currentThoughtSignature?;
30
+ private lastThoughtSignature?;
31
+ constructor(isProgressiveMode?: boolean);
32
+ private flushTextBufferToSequence;
33
+ private getValueFromPartialArg;
34
+ private setValueByJsonPath;
35
+ private flushFunctionCallToSequence;
36
+ private processStreamingFunctionCall;
37
+ private processFunctionCallPart;
38
+ processResponse(response: GenerateContentResponse): AsyncGenerator<LlmResponse, void, void>;
39
+ close(): LlmResponse | undefined;
40
+ }
@@ -3,4 +3,4 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- export declare const version = "0.6.1";
6
+ export declare const version = "1.1.0";
@@ -1,3 +1,5 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
1
3
  /**
2
4
  * @license
3
5
  * Copyright 2026 Google LLC
@@ -1,3 +1,5 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
1
3
  var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
2
4
  var __await = function(promise, isYieldStar) {
3
5
  this[0] = promise;
@@ -1,3 +1,5 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
1
3
  /**
2
4
  * @license
3
5
  * Copyright 2026 Google LLC
@@ -1,3 +1,5 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
1
3
  /**
2
4
  * @license
3
5
  * Copyright 2026 Google LLC
@@ -1,3 +1,5 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
1
3
  /**
2
4
  * @license
3
5
  * Copyright 2026 Google LLC
@@ -1,3 +1,5 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
1
3
  var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
2
4
  var __forAwait = (obj, it, method) => (it = obj[__knownSymbol("asyncIterator")]) ? it.call(obj) : (obj = obj[__knownSymbol("iterator")](), it = {}, method = (key, fn) => (fn = obj[key]) && (it[key] = (arg) => new Promise((yes, no, done) => (arg = fn.call(obj, arg), done = arg.done, Promise.resolve(arg.value).then((value) => yes({ value, done }), no)))), method("next"), method("return"), it);
3
5
  /**
@@ -1,3 +1,5 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
1
3
  /**
2
4
  * @license
3
5
  * Copyright 2026 Google LLC
@@ -1,3 +1,5 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
1
3
  var __defProp = Object.defineProperty;
2
4
  var __defProps = Object.defineProperties;
3
5
  var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
@@ -1,3 +1,5 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
1
3
  var __defProp = Object.defineProperty;
2
4
  var __defProps = Object.defineProperties;
3
5
  var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
@@ -1,3 +1,5 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
1
3
  /**
2
4
  * @license
3
5
  * Copyright 2026 Google LLC
@@ -1,3 +1,5 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
1
3
  var __defProp = Object.defineProperty;
2
4
  var __defProps = Object.defineProperties;
3
5
  var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
@@ -1,3 +1,5 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
1
3
  /**
2
4
  * @license
3
5
  * Copyright 2026 Google LLC
@@ -1,3 +1,5 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
1
3
  /**
2
4
  * @license
3
5
  * Copyright 2025 Google LLC
@@ -1,3 +1,5 @@
1
+ import {createRequire as topLevelCreateRequire} from 'module';
2
+ const require = topLevelCreateRequire(import.meta.url);
1
3
  var __defProp = Object.defineProperty;
2
4
  var __defProps = Object.defineProperties;
3
5
  var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
@@ -125,12 +127,13 @@ class BaseAgent {
125
127
  this,
126
128
  function() {
127
129
  return __asyncGenerator(this, null, function* () {
130
+ var _a2, _b;
128
131
  const context2 = this.createInvocationContext(parentContext);
129
132
  const beforeAgentCallbackEvent = yield new __await(this.handleBeforeAgentCallback(context2));
130
133
  if (beforeAgentCallbackEvent) {
131
134
  yield beforeAgentCallbackEvent;
132
135
  }
133
- if (context2.endInvocation) {
136
+ if (context2.endInvocation || ((_a2 = parentContext.abortSignal) == null ? void 0 : _a2.aborted)) {
134
137
  return;
135
138
  }
136
139
  traceAgentInvocation({ agent: this, invocationContext: context2 });
@@ -149,7 +152,7 @@ class BaseAgent {
149
152
  throw error[0];
150
153
  }
151
154
  }
152
- if (context2.endInvocation) {
155
+ if (context2.endInvocation || ((_b = parentContext.abortSignal) == null ? void 0 : _b.aborted)) {
153
156
  return;
154
157
  }
155
158
  const afterAgentCallbackEvent = yield new __await(this.handleAfterAgentCallback(context2));
@@ -236,12 +239,16 @@ class BaseAgent {
236
239
  * generated.
237
240
  */
238
241
  async handleBeforeAgentCallback(invocationContext) {
242
+ var _a2;
239
243
  if (this.beforeAgentCallback.length === 0) {
240
244
  return void 0;
241
245
  }
242
246
  const callbackContext = new Context({ invocationContext });
243
247
  for (const callback of this.beforeAgentCallback) {
244
248
  const content = await callback(callbackContext);
249
+ if ((_a2 = invocationContext.abortSignal) == null ? void 0 : _a2.aborted) {
250
+ return;
251
+ }
245
252
  if (content) {
246
253
  invocationContext.endInvocation = true;
247
254
  return createEvent({
@@ -271,12 +278,16 @@ class BaseAgent {
271
278
  * generated.
272
279
  */
273
280
  async handleAfterAgentCallback(invocationContext) {
281
+ var _a2;
274
282
  if (this.afterAgentCallback.length === 0) {
275
283
  return void 0;
276
284
  }
277
285
  const callbackContext = new Context({ invocationContext });
278
286
  for (const callback of this.afterAgentCallback) {
279
287
  const content = await callback(callbackContext);
288
+ if ((_a2 = invocationContext.abortSignal) == null ? void 0 : _a2.aborted) {
289
+ return;
290
+ }
280
291
  if (content) {
281
292
  return createEvent({
282
293
  invocationId: invocationContext.invocationId,