@paean-ai/adk 0.2.13 → 0.2.15

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 (254) hide show
  1. package/dist/cjs/index.js +11 -11
  2. package/dist/cjs/index.js.map +3 -3
  3. package/dist/esm/index.js +11 -11
  4. package/dist/esm/index.js.map +3 -3
  5. package/dist/types/agents/llm_agent.d.ts +4 -0
  6. package/dist/web/index.js +1 -1
  7. package/dist/web/index.js.map +3 -3
  8. package/package.json +3 -3
  9. package/dist/cjs/agents/active_streaming_tool.js +0 -44
  10. package/dist/cjs/agents/base_agent.js +0 -245
  11. package/dist/cjs/agents/base_llm_processor.js +0 -44
  12. package/dist/cjs/agents/callback_context.js +0 -98
  13. package/dist/cjs/agents/content_processor_utils.js +0 -346
  14. package/dist/cjs/agents/functions.js +0 -385
  15. package/dist/cjs/agents/instructions.js +0 -110
  16. package/dist/cjs/agents/invocation_context.js +0 -107
  17. package/dist/cjs/agents/live_request_queue.js +0 -136
  18. package/dist/cjs/agents/llm_agent.js +0 -1212
  19. package/dist/cjs/agents/loop_agent.js +0 -68
  20. package/dist/cjs/agents/parallel_agent.js +0 -78
  21. package/dist/cjs/agents/readonly_context.js +0 -68
  22. package/dist/cjs/agents/run_config.js +0 -70
  23. package/dist/cjs/agents/sequential_agent.js +0 -84
  24. package/dist/cjs/agents/transcription_entry.js +0 -27
  25. package/dist/cjs/artifacts/base_artifact_service.js +0 -27
  26. package/dist/cjs/artifacts/gcs_artifact_service.js +0 -140
  27. package/dist/cjs/artifacts/in_memory_artifact_service.js +0 -119
  28. package/dist/cjs/auth/auth_credential.js +0 -46
  29. package/dist/cjs/auth/auth_handler.js +0 -92
  30. package/dist/cjs/auth/auth_schemes.js +0 -62
  31. package/dist/cjs/auth/auth_tool.js +0 -27
  32. package/dist/cjs/auth/credential_service/base_credential_service.js +0 -27
  33. package/dist/cjs/auth/credential_service/in_memory_credential_service.js +0 -63
  34. package/dist/cjs/auth/exchanger/base_credential_exchanger.js +0 -40
  35. package/dist/cjs/auth/exchanger/credential_exchanger_registry.js +0 -59
  36. package/dist/cjs/code_executors/base_code_executor.js +0 -76
  37. package/dist/cjs/code_executors/built_in_code_executor.js +0 -58
  38. package/dist/cjs/code_executors/code_execution_utils.js +0 -142
  39. package/dist/cjs/code_executors/code_executor_context.js +0 -198
  40. package/dist/cjs/common.js +0 -181
  41. package/dist/cjs/events/event.js +0 -119
  42. package/dist/cjs/events/event_actions.js +0 -83
  43. package/dist/cjs/examples/base_example_provider.js +0 -40
  44. package/dist/cjs/examples/example.js +0 -27
  45. package/dist/cjs/examples/example_util.js +0 -107
  46. package/dist/cjs/index_web.js +0 -33
  47. package/dist/cjs/memory/base_memory_service.js +0 -27
  48. package/dist/cjs/memory/in_memory_memory_service.js +0 -97
  49. package/dist/cjs/memory/memory_entry.js +0 -27
  50. package/dist/cjs/models/base_llm.js +0 -95
  51. package/dist/cjs/models/base_llm_connection.js +0 -27
  52. package/dist/cjs/models/gemini_llm_connection.js +0 -132
  53. package/dist/cjs/models/google_llm.js +0 -559
  54. package/dist/cjs/models/llm_request.js +0 -82
  55. package/dist/cjs/models/llm_response.js +0 -71
  56. package/dist/cjs/models/registry.js +0 -121
  57. package/dist/cjs/plugins/base_plugin.js +0 -236
  58. package/dist/cjs/plugins/logging_plugin.js +0 -222
  59. package/dist/cjs/plugins/plugin_manager.js +0 -239
  60. package/dist/cjs/plugins/security_plugin.js +0 -153
  61. package/dist/cjs/runner/in_memory_runner.js +0 -58
  62. package/dist/cjs/runner/runner.js +0 -277
  63. package/dist/cjs/sessions/base_session_service.js +0 -71
  64. package/dist/cjs/sessions/in_memory_session_service.js +0 -184
  65. package/dist/cjs/sessions/session.js +0 -48
  66. package/dist/cjs/sessions/state.js +0 -101
  67. package/dist/cjs/telemetry/google_cloud.js +0 -85
  68. package/dist/cjs/telemetry/setup.js +0 -97
  69. package/dist/cjs/telemetry/tracing.js +0 -231
  70. package/dist/cjs/tools/agent_tool.js +0 -134
  71. package/dist/cjs/tools/base_tool.js +0 -107
  72. package/dist/cjs/tools/base_toolset.js +0 -76
  73. package/dist/cjs/tools/forwarding_artifact_service.js +0 -71
  74. package/dist/cjs/tools/function_tool.js +0 -101
  75. package/dist/cjs/tools/google_search_tool.js +0 -76
  76. package/dist/cjs/tools/long_running_tool.js +0 -63
  77. package/dist/cjs/tools/mcp/mcp_session_manager.js +0 -65
  78. package/dist/cjs/tools/mcp/mcp_tool.js +0 -65
  79. package/dist/cjs/tools/mcp/mcp_toolset.js +0 -61
  80. package/dist/cjs/tools/tool_confirmation.js +0 -49
  81. package/dist/cjs/tools/tool_context.js +0 -129
  82. package/dist/cjs/utils/client_labels.js +0 -56
  83. package/dist/cjs/utils/deep_clone.js +0 -44
  84. package/dist/cjs/utils/env_aware_utils.js +0 -83
  85. package/dist/cjs/utils/gemini_schema_util.js +0 -88
  86. package/dist/cjs/utils/logger.js +0 -121
  87. package/dist/cjs/utils/model_name.js +0 -76
  88. package/dist/cjs/utils/simple_zod_to_json.js +0 -191
  89. package/dist/cjs/utils/variant_utils.js +0 -55
  90. package/dist/cjs/version.js +0 -39
  91. package/dist/esm/agents/active_streaming_tool.js +0 -14
  92. package/dist/esm/agents/base_agent.js +0 -214
  93. package/dist/esm/agents/base_llm_processor.js +0 -13
  94. package/dist/esm/agents/callback_context.js +0 -68
  95. package/dist/esm/agents/content_processor_utils.js +0 -315
  96. package/dist/esm/agents/functions.js +0 -344
  97. package/dist/esm/agents/instructions.js +0 -80
  98. package/dist/esm/agents/invocation_context.js +0 -76
  99. package/dist/esm/agents/live_request_queue.js +0 -106
  100. package/dist/esm/agents/llm_agent.js +0 -1180
  101. package/dist/esm/agents/loop_agent.js +0 -38
  102. package/dist/esm/agents/parallel_agent.js +0 -48
  103. package/dist/esm/agents/readonly_context.js +0 -38
  104. package/dist/esm/agents/run_config.js +0 -39
  105. package/dist/esm/agents/sequential_agent.js +0 -54
  106. package/dist/esm/agents/transcription_entry.js +0 -5
  107. package/dist/esm/artifacts/base_artifact_service.js +0 -5
  108. package/dist/esm/artifacts/gcs_artifact_service.js +0 -110
  109. package/dist/esm/artifacts/in_memory_artifact_service.js +0 -89
  110. package/dist/esm/auth/auth_credential.js +0 -16
  111. package/dist/esm/auth/auth_handler.js +0 -62
  112. package/dist/esm/auth/auth_schemes.js +0 -31
  113. package/dist/esm/auth/auth_tool.js +0 -5
  114. package/dist/esm/auth/credential_service/base_credential_service.js +0 -5
  115. package/dist/esm/auth/credential_service/in_memory_credential_service.js +0 -33
  116. package/dist/esm/auth/exchanger/base_credential_exchanger.js +0 -10
  117. package/dist/esm/auth/exchanger/credential_exchanger_registry.js +0 -29
  118. package/dist/esm/code_executors/base_code_executor.js +0 -46
  119. package/dist/esm/code_executors/built_in_code_executor.js +0 -28
  120. package/dist/esm/code_executors/code_execution_utils.js +0 -108
  121. package/dist/esm/code_executors/code_executor_context.js +0 -168
  122. package/dist/esm/common.js +0 -98
  123. package/dist/esm/events/event.js +0 -83
  124. package/dist/esm/events/event_actions.js +0 -52
  125. package/dist/esm/examples/base_example_provider.js +0 -10
  126. package/dist/esm/examples/example.js +0 -5
  127. package/dist/esm/examples/example_util.js +0 -76
  128. package/dist/esm/index_web.js +0 -6
  129. package/dist/esm/memory/base_memory_service.js +0 -5
  130. package/dist/esm/memory/in_memory_memory_service.js +0 -67
  131. package/dist/esm/memory/memory_entry.js +0 -5
  132. package/dist/esm/models/base_llm.js +0 -64
  133. package/dist/esm/models/base_llm_connection.js +0 -5
  134. package/dist/esm/models/gemini_llm_connection.js +0 -102
  135. package/dist/esm/models/google_llm.js +0 -533
  136. package/dist/esm/models/llm_request.js +0 -50
  137. package/dist/esm/models/llm_response.js +0 -41
  138. package/dist/esm/models/registry.js +0 -91
  139. package/dist/esm/plugins/base_plugin.js +0 -206
  140. package/dist/esm/plugins/logging_plugin.js +0 -192
  141. package/dist/esm/plugins/plugin_manager.js +0 -209
  142. package/dist/esm/plugins/security_plugin.js +0 -119
  143. package/dist/esm/runner/in_memory_runner.js +0 -28
  144. package/dist/esm/runner/runner.js +0 -247
  145. package/dist/esm/sessions/base_session_service.js +0 -41
  146. package/dist/esm/sessions/in_memory_session_service.js +0 -154
  147. package/dist/esm/sessions/session.js +0 -18
  148. package/dist/esm/sessions/state.js +0 -71
  149. package/dist/esm/telemetry/google_cloud.js +0 -54
  150. package/dist/esm/telemetry/setup.js +0 -67
  151. package/dist/esm/telemetry/tracing.js +0 -195
  152. package/dist/esm/tools/agent_tool.js +0 -104
  153. package/dist/esm/tools/base_tool.js +0 -77
  154. package/dist/esm/tools/base_toolset.js +0 -46
  155. package/dist/esm/tools/forwarding_artifact_service.js +0 -41
  156. package/dist/esm/tools/function_tool.js +0 -71
  157. package/dist/esm/tools/google_search_tool.js +0 -46
  158. package/dist/esm/tools/long_running_tool.js +0 -33
  159. package/dist/esm/tools/mcp/mcp_session_manager.js +0 -35
  160. package/dist/esm/tools/mcp/mcp_tool.js +0 -35
  161. package/dist/esm/tools/mcp/mcp_toolset.js +0 -31
  162. package/dist/esm/tools/tool_confirmation.js +0 -19
  163. package/dist/esm/tools/tool_context.js +0 -99
  164. package/dist/esm/utils/client_labels.js +0 -26
  165. package/dist/esm/utils/deep_clone.js +0 -14
  166. package/dist/esm/utils/env_aware_utils.js +0 -49
  167. package/dist/esm/utils/gemini_schema_util.js +0 -58
  168. package/dist/esm/utils/logger.js +0 -89
  169. package/dist/esm/utils/model_name.js +0 -41
  170. package/dist/esm/utils/simple_zod_to_json.js +0 -160
  171. package/dist/esm/utils/variant_utils.js +0 -24
  172. package/dist/esm/version.js +0 -9
  173. package/dist/web/agents/active_streaming_tool.js +0 -14
  174. package/dist/web/agents/base_agent.js +0 -265
  175. package/dist/web/agents/base_llm_processor.js +0 -13
  176. package/dist/web/agents/callback_context.js +0 -68
  177. package/dist/web/agents/content_processor_utils.js +0 -315
  178. package/dist/web/agents/functions.js +0 -344
  179. package/dist/web/agents/instructions.js +0 -80
  180. package/dist/web/agents/invocation_context.js +0 -76
  181. package/dist/web/agents/live_request_queue.js +0 -124
  182. package/dist/web/agents/llm_agent.js +0 -1310
  183. package/dist/web/agents/loop_agent.js +0 -71
  184. package/dist/web/agents/parallel_agent.js +0 -83
  185. package/dist/web/agents/readonly_context.js +0 -38
  186. package/dist/web/agents/run_config.js +0 -54
  187. package/dist/web/agents/sequential_agent.js +0 -99
  188. package/dist/web/agents/transcription_entry.js +0 -5
  189. package/dist/web/artifacts/base_artifact_service.js +0 -5
  190. package/dist/web/artifacts/gcs_artifact_service.js +0 -126
  191. package/dist/web/artifacts/in_memory_artifact_service.js +0 -89
  192. package/dist/web/auth/auth_credential.js +0 -16
  193. package/dist/web/auth/auth_handler.js +0 -62
  194. package/dist/web/auth/auth_schemes.js +0 -31
  195. package/dist/web/auth/auth_tool.js +0 -5
  196. package/dist/web/auth/credential_service/base_credential_service.js +0 -5
  197. package/dist/web/auth/credential_service/in_memory_credential_service.js +0 -33
  198. package/dist/web/auth/exchanger/base_credential_exchanger.js +0 -10
  199. package/dist/web/auth/exchanger/credential_exchanger_registry.js +0 -29
  200. package/dist/web/code_executors/base_code_executor.js +0 -46
  201. package/dist/web/code_executors/built_in_code_executor.js +0 -28
  202. package/dist/web/code_executors/code_execution_utils.js +0 -105
  203. package/dist/web/code_executors/code_executor_context.js +0 -168
  204. package/dist/web/common.js +0 -98
  205. package/dist/web/events/event.js +0 -101
  206. package/dist/web/events/event_actions.js +0 -67
  207. package/dist/web/examples/base_example_provider.js +0 -10
  208. package/dist/web/examples/example.js +0 -5
  209. package/dist/web/examples/example_util.js +0 -75
  210. package/dist/web/index_web.js +0 -6
  211. package/dist/web/memory/base_memory_service.js +0 -5
  212. package/dist/web/memory/in_memory_memory_service.js +0 -67
  213. package/dist/web/memory/memory_entry.js +0 -5
  214. package/dist/web/models/base_llm.js +0 -64
  215. package/dist/web/models/base_llm_connection.js +0 -5
  216. package/dist/web/models/gemini_llm_connection.js +0 -120
  217. package/dist/web/models/google_llm.js +0 -574
  218. package/dist/web/models/llm_request.js +0 -50
  219. package/dist/web/models/llm_response.js +0 -41
  220. package/dist/web/models/registry.js +0 -91
  221. package/dist/web/plugins/base_plugin.js +0 -206
  222. package/dist/web/plugins/logging_plugin.js +0 -192
  223. package/dist/web/plugins/plugin_manager.js +0 -209
  224. package/dist/web/plugins/security_plugin.js +0 -119
  225. package/dist/web/runner/in_memory_runner.js +0 -28
  226. package/dist/web/runner/runner.js +0 -278
  227. package/dist/web/sessions/base_session_service.js +0 -41
  228. package/dist/web/sessions/in_memory_session_service.js +0 -154
  229. package/dist/web/sessions/session.js +0 -18
  230. package/dist/web/sessions/state.js +0 -87
  231. package/dist/web/telemetry/google_cloud.js +0 -54
  232. package/dist/web/telemetry/setup.js +0 -67
  233. package/dist/web/telemetry/tracing.js +0 -210
  234. package/dist/web/tools/agent_tool.js +0 -118
  235. package/dist/web/tools/base_tool.js +0 -77
  236. package/dist/web/tools/base_toolset.js +0 -46
  237. package/dist/web/tools/forwarding_artifact_service.js +0 -41
  238. package/dist/web/tools/function_tool.js +0 -71
  239. package/dist/web/tools/google_search_tool.js +0 -46
  240. package/dist/web/tools/long_running_tool.js +0 -50
  241. package/dist/web/tools/mcp/mcp_session_manager.js +0 -35
  242. package/dist/web/tools/mcp/mcp_tool.js +0 -35
  243. package/dist/web/tools/mcp/mcp_toolset.js +0 -31
  244. package/dist/web/tools/tool_confirmation.js +0 -19
  245. package/dist/web/tools/tool_context.js +0 -99
  246. package/dist/web/utils/client_labels.js +0 -26
  247. package/dist/web/utils/deep_clone.js +0 -14
  248. package/dist/web/utils/env_aware_utils.js +0 -49
  249. package/dist/web/utils/gemini_schema_util.js +0 -58
  250. package/dist/web/utils/logger.js +0 -89
  251. package/dist/web/utils/model_name.js +0 -41
  252. package/dist/web/utils/simple_zod_to_json.js +0 -174
  253. package/dist/web/utils/variant_utils.js +0 -24
  254. package/dist/web/version.js +0 -9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paean-ai/adk",
3
- "version": "0.2.13",
3
+ "version": "0.2.15",
4
4
  "description": "Google ADK JS (paean-ai fork with streaming fixes)",
5
5
  "author": "paean-ai",
6
6
  "license": "Apache-2.0",
@@ -29,14 +29,14 @@
29
29
  },
30
30
  "scripts": {
31
31
  "clean": "rm -rf dist",
32
- "clean:all": "npm run clean && rm -rf node_modules",
32
+ "clean:all": "bun run clean && rm -rf node_modules",
33
33
  "build": "tsc --emitDeclarationOnly && node ./build.js",
34
34
  "build:bundle": "tsc --emitDeclarationOnly && node ./build.js --bundle",
35
35
  "build:watch": "concurrently \"tsc --noEmit --watch --preserveWatchOutput\" \"node ./build.js --watch\"",
36
36
  "test": "vitest",
37
37
  "lint": "eslint 'src/**/*.ts'",
38
38
  "format": "prettier --write 'src/**/*.ts'",
39
- "prepublishOnly": "npm run build:bundle"
39
+ "prepublishOnly": "bun run build:bundle"
40
40
  },
41
41
  "dependencies": {
42
42
  "@google/genai": "1.32.0",
@@ -1,44 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2025 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 active_streaming_tool_exports = {};
26
- __export(active_streaming_tool_exports, {
27
- ActiveStreamingTool: () => ActiveStreamingTool
28
- });
29
- module.exports = __toCommonJS(active_streaming_tool_exports);
30
- /**
31
- * @license
32
- * Copyright 2025 Google LLC
33
- * SPDX-License-Identifier: Apache-2.0
34
- */
35
- class ActiveStreamingTool {
36
- constructor(params = {}) {
37
- this.task = params.task;
38
- this.stream = params.stream;
39
- }
40
- }
41
- // Annotate the CommonJS export names for ESM import in node:
42
- 0 && (module.exports = {
43
- ActiveStreamingTool
44
- });
@@ -1,245 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2025 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 base_agent_exports = {};
26
- __export(base_agent_exports, {
27
- BaseAgent: () => BaseAgent,
28
- getCannonicalCallback: () => getCannonicalCallback
29
- });
30
- module.exports = __toCommonJS(base_agent_exports);
31
- var import_api = require("@opentelemetry/api");
32
- var import_event = require("../events/event.js");
33
- var import_callback_context = require("./callback_context.js");
34
- var import_invocation_context = require("./invocation_context.js");
35
- /**
36
- * @license
37
- * Copyright 2025 Google LLC
38
- * SPDX-License-Identifier: Apache-2.0
39
- */
40
- class BaseAgent {
41
- constructor(config) {
42
- this.name = validateAgentName(config.name);
43
- this.description = config.description;
44
- this.parentAgent = config.parentAgent;
45
- this.subAgents = config.subAgents || [];
46
- this.rootAgent = getRootAgent(this);
47
- this.beforeAgentCallback = getCannonicalCallback(config.beforeAgentCallback);
48
- this.afterAgentCallback = getCannonicalCallback(config.afterAgentCallback);
49
- this.setParentAgentForSubAgents();
50
- }
51
- /**
52
- * Entry method to run an agent via text-based conversation.
53
- *
54
- * @param parentContext The invocation context of the parent agent.
55
- * @yields The events generated by the agent.
56
- * @returns An AsyncGenerator that yields the events generated by the agent.
57
- */
58
- async *runAsync(parentContext) {
59
- const span = import_api.trace.getTracer("gcp.vertex.agent").startSpan(`agent_run [${this.name}]`);
60
- try {
61
- const context = this.createInvocationContext(parentContext);
62
- const beforeAgentCallbackEvent = await this.handleBeforeAgentCallback(context);
63
- if (beforeAgentCallbackEvent) {
64
- yield beforeAgentCallbackEvent;
65
- }
66
- if (context.endInvocation) {
67
- return;
68
- }
69
- for await (const event of this.runAsyncImpl(context)) {
70
- yield event;
71
- }
72
- if (context.endInvocation) {
73
- return;
74
- }
75
- const afterAgentCallbackEvent = await this.handleAfterAgentCallback(context);
76
- if (afterAgentCallbackEvent) {
77
- yield afterAgentCallbackEvent;
78
- }
79
- } finally {
80
- span.end();
81
- }
82
- }
83
- /**
84
- * Entry method to run an agent via video/audio-based conversation.
85
- *
86
- * @param parentContext The invocation context of the parent agent.
87
- * @yields The events generated by the agent.
88
- * @returns An AsyncGenerator that yields the events generated by the agent.
89
- */
90
- async *runLive(parentContext) {
91
- const span = import_api.trace.getTracer("gcp.vertex.agent").startSpan(`agent_run [${this.name}]`);
92
- try {
93
- throw new Error("Live mode is not implemented yet.");
94
- } finally {
95
- span.end();
96
- }
97
- }
98
- /**
99
- * Finds the agent with the given name in this agent and its descendants.
100
- *
101
- * @param name The name of the agent to find.
102
- * @return The agent with the given name, or undefined if not found.
103
- */
104
- findAgent(name) {
105
- if (this.name === name) {
106
- return this;
107
- }
108
- return this.findSubAgent(name);
109
- }
110
- /**
111
- * Finds the agent with the given name in this agent's descendants.
112
- *
113
- * @param name The name of the agent to find.
114
- * @return The agent with the given name, or undefined if not found.
115
- */
116
- findSubAgent(name) {
117
- for (const subAgent of this.subAgents) {
118
- const result = subAgent.findAgent(name);
119
- if (result) {
120
- return result;
121
- }
122
- }
123
- return void 0;
124
- }
125
- /**
126
- * Creates an invocation context for this agent.
127
- *
128
- * @param parentContext The invocation context of the parent agent.
129
- * @return The invocation context for this agent.
130
- */
131
- createInvocationContext(parentContext) {
132
- return new import_invocation_context.InvocationContext({
133
- ...parentContext,
134
- agent: this
135
- });
136
- }
137
- /**
138
- * Runs the before agent callback if it exists.
139
- *
140
- * @param invocationContext The invocation context of the agent.
141
- * @return The event to return to the user, or undefined if no event is
142
- * generated.
143
- */
144
- async handleBeforeAgentCallback(invocationContext) {
145
- if (this.beforeAgentCallback.length === 0) {
146
- return void 0;
147
- }
148
- const callbackContext = new import_callback_context.CallbackContext({ invocationContext });
149
- for (const callback of this.beforeAgentCallback) {
150
- const content = await callback(callbackContext);
151
- if (content) {
152
- invocationContext.endInvocation = true;
153
- return (0, import_event.createEvent)({
154
- invocationId: invocationContext.invocationId,
155
- author: this.name,
156
- branch: invocationContext.branch,
157
- content,
158
- actions: callbackContext.eventActions
159
- });
160
- }
161
- }
162
- if (callbackContext.state.hasDelta()) {
163
- return (0, import_event.createEvent)({
164
- invocationId: invocationContext.invocationId,
165
- author: this.name,
166
- branch: invocationContext.branch,
167
- actions: callbackContext.eventActions
168
- });
169
- }
170
- return void 0;
171
- }
172
- /**
173
- * Runs the after agent callback if it exists.
174
- *
175
- * @param invocationContext The invocation context of the agent.
176
- * @return The event to return to the user, or undefined if no event is
177
- * generated.
178
- */
179
- async handleAfterAgentCallback(invocationContext) {
180
- if (this.afterAgentCallback.length === 0) {
181
- return void 0;
182
- }
183
- const callbackContext = new import_callback_context.CallbackContext({ invocationContext });
184
- for (const callback of this.afterAgentCallback) {
185
- const content = await callback(callbackContext);
186
- if (content) {
187
- return (0, import_event.createEvent)({
188
- invocationId: invocationContext.invocationId,
189
- author: this.name,
190
- branch: invocationContext.branch,
191
- content,
192
- actions: callbackContext.eventActions
193
- });
194
- }
195
- }
196
- if (callbackContext.state.hasDelta()) {
197
- return (0, import_event.createEvent)({
198
- invocationId: invocationContext.invocationId,
199
- author: this.name,
200
- branch: invocationContext.branch,
201
- actions: callbackContext.eventActions
202
- });
203
- }
204
- return void 0;
205
- }
206
- setParentAgentForSubAgents() {
207
- for (const subAgent of this.subAgents) {
208
- if (subAgent.parentAgent) {
209
- throw new Error(`Agent "${subAgent.name}" already has a parent agent, current parent: "${subAgent.parentAgent.name}", trying to add: "${this.name}"`);
210
- }
211
- subAgent.parentAgent = this;
212
- }
213
- }
214
- }
215
- function validateAgentName(name) {
216
- if (!isIdentifier(name)) {
217
- throw new Error(`Found invalid agent name: "${name}". Agent name must be a valid identifier. It should start with a letter (a-z, A-Z) or an underscore (_), and can only contain letters, digits (0-9), and underscores.`);
218
- }
219
- if (name === "user") {
220
- throw new Error(
221
- `Agent name cannot be 'user'. 'user' is reserved for end-user's input.`
222
- );
223
- }
224
- return name;
225
- }
226
- function isIdentifier(str) {
227
- return /^[\p{ID_Start}$_][\p{ID_Continue}$_]*$/u.test(str);
228
- }
229
- function getRootAgent(rootAgent) {
230
- while (rootAgent.parentAgent) {
231
- rootAgent = rootAgent.parentAgent;
232
- }
233
- return rootAgent;
234
- }
235
- function getCannonicalCallback(callbacks) {
236
- if (!callbacks) {
237
- return [];
238
- }
239
- return Array.isArray(callbacks) ? callbacks : [callbacks];
240
- }
241
- // Annotate the CommonJS export names for ESM import in node:
242
- 0 && (module.exports = {
243
- BaseAgent,
244
- getCannonicalCallback
245
- });
@@ -1,44 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2025 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 base_llm_processor_exports = {};
26
- __export(base_llm_processor_exports, {
27
- BaseLlmRequestProcessor: () => BaseLlmRequestProcessor,
28
- BaseLlmResponseProcessor: () => BaseLlmResponseProcessor
29
- });
30
- module.exports = __toCommonJS(base_llm_processor_exports);
31
- /**
32
- * @license
33
- * Copyright 2025 Google LLC
34
- * SPDX-License-Identifier: Apache-2.0
35
- */
36
- class BaseLlmRequestProcessor {
37
- }
38
- class BaseLlmResponseProcessor {
39
- }
40
- // Annotate the CommonJS export names for ESM import in node:
41
- 0 && (module.exports = {
42
- BaseLlmRequestProcessor,
43
- BaseLlmResponseProcessor
44
- });
@@ -1,98 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2025 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 callback_context_exports = {};
26
- __export(callback_context_exports, {
27
- CallbackContext: () => CallbackContext
28
- });
29
- module.exports = __toCommonJS(callback_context_exports);
30
- var import_event_actions = require("../events/event_actions.js");
31
- var import_state = require("../sessions/state.js");
32
- var import_readonly_context = require("./readonly_context.js");
33
- /**
34
- * @license
35
- * Copyright 2025 Google LLC
36
- * SPDX-License-Identifier: Apache-2.0
37
- */
38
- class CallbackContext extends import_readonly_context.ReadonlyContext {
39
- constructor({ invocationContext, eventActions }) {
40
- super(invocationContext);
41
- this.eventActions = eventActions || (0, import_event_actions.createEventActions)();
42
- this._state = new import_state.State(
43
- invocationContext.session.state,
44
- this.eventActions.stateDelta
45
- );
46
- }
47
- /**
48
- * The delta-aware state of the current session.
49
- */
50
- get state() {
51
- return this._state;
52
- }
53
- /**
54
- * Loads an artifact attached to the current session.
55
- *
56
- * @param filename The filename of the artifact.
57
- * @param version The version of the artifact. If not provided, the latest
58
- * version will be used.
59
- * @return A promise that resolves to the loaded artifact.
60
- */
61
- loadArtifact(filename, version) {
62
- if (!this.invocationContext.artifactService) {
63
- throw new Error("Artifact service is not initialized.");
64
- }
65
- return this.invocationContext.artifactService.loadArtifact({
66
- appName: this.invocationContext.appName,
67
- userId: this.invocationContext.userId,
68
- sessionId: this.invocationContext.session.id,
69
- filename,
70
- version
71
- });
72
- }
73
- /**
74
- * Saves an artifact attached to the current session.
75
- *
76
- * @param filename The filename of the artifact.
77
- * @param artifact The artifact to save.
78
- * @return A promise that resolves to the version of the saved artifact.
79
- */
80
- async saveArtifact(filename, artifact) {
81
- if (!this.invocationContext.artifactService) {
82
- throw new Error("Artifact service is not initialized.");
83
- }
84
- const version = await this.invocationContext.artifactService.saveArtifact({
85
- appName: this.invocationContext.appName,
86
- userId: this.invocationContext.userId,
87
- sessionId: this.invocationContext.session.id,
88
- filename,
89
- artifact
90
- });
91
- this.eventActions.artifactDelta[filename] = version;
92
- return version;
93
- }
94
- }
95
- // Annotate the CommonJS export names for ESM import in node:
96
- 0 && (module.exports = {
97
- CallbackContext
98
- });