@iqai/adk-cli 0.3.22 → 0.3.24

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 (49) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/http/bootstrap.d.ts.map +1 -1
  3. package/dist/http/bootstrap.js +44 -18
  4. package/dist/http/bootstrap.js.map +1 -1
  5. package/dist/http/providers/agent-loader/build-utils.d.ts +7 -0
  6. package/dist/http/providers/agent-loader/build-utils.d.ts.map +1 -0
  7. package/dist/http/providers/agent-loader/build-utils.js +52 -0
  8. package/dist/http/providers/agent-loader/build-utils.js.map +1 -0
  9. package/dist/http/providers/agent-loader/env.d.ts +3 -0
  10. package/dist/http/providers/agent-loader/env.d.ts.map +1 -0
  11. package/dist/http/providers/agent-loader/env.js +44 -0
  12. package/dist/http/providers/agent-loader/env.js.map +1 -0
  13. package/dist/http/providers/agent-loader/path-plugin.d.ts +7 -0
  14. package/dist/http/providers/agent-loader/path-plugin.d.ts.map +1 -0
  15. package/dist/http/providers/agent-loader/path-plugin.js +72 -0
  16. package/dist/http/providers/agent-loader/path-plugin.js.map +1 -0
  17. package/dist/http/providers/agent-loader/resolver.d.ts +3 -0
  18. package/dist/http/providers/agent-loader/resolver.d.ts.map +1 -0
  19. package/dist/http/providers/agent-loader/resolver.js +148 -0
  20. package/dist/http/providers/agent-loader/resolver.js.map +1 -0
  21. package/dist/http/providers/agent-loader/tsconfig.d.ts +4 -0
  22. package/dist/http/providers/agent-loader/tsconfig.d.ts.map +1 -0
  23. package/dist/http/providers/agent-loader/tsconfig.js +32 -0
  24. package/dist/http/providers/agent-loader/tsconfig.js.map +1 -0
  25. package/dist/http/providers/agent-loader/utils.d.ts +2 -0
  26. package/dist/http/providers/agent-loader/utils.d.ts.map +1 -0
  27. package/dist/http/providers/agent-loader/utils.js +7 -0
  28. package/dist/http/providers/agent-loader/utils.js.map +1 -0
  29. package/dist/http/providers/agent-loader.service.d.ts +4 -53
  30. package/dist/http/providers/agent-loader.service.d.ts.map +1 -1
  31. package/dist/http/providers/agent-loader.service.js +23 -372
  32. package/dist/http/providers/agent-loader.service.js.map +1 -1
  33. package/dist/http/providers/agent-manager/sessions.d.ts +36 -0
  34. package/dist/http/providers/agent-manager/sessions.d.ts.map +1 -0
  35. package/dist/http/providers/agent-manager/sessions.js +114 -0
  36. package/dist/http/providers/agent-manager/sessions.js.map +1 -0
  37. package/dist/http/providers/agent-manager/state.d.ts +8 -0
  38. package/dist/http/providers/agent-manager/state.d.ts.map +1 -0
  39. package/dist/http/providers/agent-manager/state.js +72 -0
  40. package/dist/http/providers/agent-manager/state.js.map +1 -0
  41. package/dist/http/providers/agent-manager.service.d.ts +13 -52
  42. package/dist/http/providers/agent-manager.service.d.ts.map +1 -1
  43. package/dist/http/providers/agent-manager.service.js +63 -234
  44. package/dist/http/providers/agent-manager.service.js.map +1 -1
  45. package/dist/http/sessions/sessions.service.d.ts +2 -1
  46. package/dist/http/sessions/sessions.service.d.ts.map +1 -1
  47. package/dist/http/sessions/sessions.service.js +18 -6
  48. package/dist/http/sessions/sessions.service.js.map +1 -1
  49. package/package.json +1 -1
@@ -24,63 +24,14 @@ export declare class AgentLoader {
24
24
  * Normalize path to use forward slashes (cross-platform)
25
25
  */
26
26
  private normalizePath;
27
- /**
28
- * Parse TypeScript path mappings from tsconfig.json
29
- */
30
- private parseTsConfigPaths;
31
- /**
32
- * Create an esbuild plugin to handle TypeScript path mappings and relative imports
33
- */
34
- private createPathMappingPlugin;
35
- /**
36
- * Check if a rebuild is needed based on file modification times
37
- */
38
- private isRebuildNeeded;
39
27
  /**
40
28
  * Import a TypeScript file by compiling it on-demand
29
+ * @param filePath - Path to the TypeScript file
30
+ * @param providedProjectRoot - Optional project root path
31
+ * @param forceInvalidateCache - Force cache invalidation (full reload)
41
32
  */
42
- importTypeScriptFile(filePath: string, providedProjectRoot?: string): Promise<ModuleExport>;
33
+ importTypeScriptFile(filePath: string, providedProjectRoot?: string, forceInvalidateCache?: boolean): Promise<ModuleExport>;
43
34
  loadEnvironmentVariables(agentFilePath: string): void;
44
- /**
45
- * Type guard to check if object is likely a BaseAgent instance
46
- */
47
- private isLikelyAgentInstance;
48
- /**
49
- * Type guard to check if object is an AgentBuilder
50
- */
51
- private isAgentBuilder;
52
- /**
53
- * Type guard to check if object is a BuiltAgent
54
- */
55
- private isBuiltAgent;
56
- /**
57
- * Type guard to check if value is a primitive type
58
- */
59
- private isPrimitive;
60
- /**
61
- * Safely invoke a function, handling both sync and async results
62
- */
63
- private invokeFunctionSafely;
64
- /**
65
- * Extract BaseAgent from different possible types
66
- * Returns both the agent and the full built context (if available)
67
- *
68
- * Note: `unknown` here is legitimate - we're dynamically inspecting module exports
69
- * from dynamically loaded code where the actual types are determined at runtime.
70
- */
71
- private extractBaseAgent;
72
- /**
73
- * Search through module exports to find potential agent exports
74
- */
75
- private scanModuleExports;
76
35
  resolveAgentExport(mod: ModuleExport): Promise<AgentExportResult>;
77
- /**
78
- * Try to resolve a direct candidate (not from scanning exports)
79
- */
80
- private tryResolvingDirectCandidate;
81
- /**
82
- * Try to resolve a function candidate by invoking it
83
- */
84
- private tryResolvingFunctionCandidate;
85
36
  }
86
37
  //# sourceMappingURL=agent-loader.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-loader.service.d.ts","sourceRoot":"","sources":["../../../src/http/providers/agent-loader.service.ts"],"names":[],"mappings":"AAaA,OAAO,EAAc,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,KAAK,EACX,iBAAiB,EAKjB,YAAY,EAGZ,MAAM,sBAAsB,CAAC;AAK9B,qBACa,WAAW;IAMX,OAAO,CAAC,KAAK;IALzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAS;IAC9C,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAqB;IACpD,OAAO,CAAC,MAAM,CAAC,YAAY,CAAqB;gBAE5B,KAAK,UAAQ;IAKjC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAiB/B;;;OAGG;IACH,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,IAAI;IAoCjE;;OAEG;IACH,OAAO,CAAC,cAAc;IAKtB;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA+B1B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAkF/B;;OAEG;IACH,OAAO,CAAC,eAAe;IAsCvB;;OAEG;IACG,oBAAoB,CACzB,QAAQ,EAAE,MAAM,EAChB,mBAAmB,CAAC,EAAE,MAAM,GAC1B,OAAO,CAAC,YAAY,CAAC;IA0LxB,wBAAwB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IA6CrD;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAS7B;;OAEG;IACH,OAAO,CAAC,cAAc;IAStB;;OAEG;IACH,OAAO,CAAC,YAAY;IAUpB;;OAEG;IACH,OAAO,CAAC,WAAW;IAMnB;;OAEG;YACW,oBAAoB;IAgBlC;;;;;;OAMG;YACW,gBAAgB;IAoB9B;;OAEG;YACW,iBAAiB;IA8DzB,kBAAkB,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAkCvE;;OAEG;YACW,2BAA2B;IA4BzC;;OAEG;YACW,6BAA6B;CAmC3C"}
1
+ {"version":3,"file":"agent-loader.service.d.ts","sourceRoot":"","sources":["../../../src/http/providers/agent-loader.service.ts"],"names":[],"mappings":"AAKA,OAAO,EAAc,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAUpD,OAAO,KAAK,EACX,iBAAiB,EACjB,YAAY,EAEZ,MAAM,sBAAsB,CAAC;AAI9B,qBACa,WAAW;IAMX,OAAO,CAAC,KAAK;IALzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAS;IAC9C,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAqB;IACpD,OAAO,CAAC,MAAM,CAAC,YAAY,CAAqB;gBAE5B,KAAK,UAAQ;IAKjC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAiB/B;;;OAGG;IACH,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,IAAI;IAoCjE;;OAEG;IACH,OAAO,CAAC,cAAc;IAKtB;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;;;;OAKG;IACG,oBAAoB,CACzB,QAAQ,EAAE,MAAM,EAChB,mBAAmB,CAAC,EAAE,MAAM,EAC5B,oBAAoB,CAAC,EAAE,OAAO,GAC5B,OAAO,CAAC,YAAY,CAAC;IAkLxB,wBAAwB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IAI/C,kBAAkB,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAGvE"}
@@ -51,7 +51,11 @@ const node_path_1 = require("node:path");
51
51
  const node_url_1 = require("node:url");
52
52
  const common_1 = require("@nestjs/common");
53
53
  const find_project_root_1 = require("../../common/find-project-root");
54
- const agent_loader_types_1 = require("./agent-loader.types");
54
+ const build_utils_1 = require("./agent-loader/build-utils");
55
+ const env_1 = require("./agent-loader/env");
56
+ const path_plugin_1 = require("./agent-loader/path-plugin");
57
+ const resolver_1 = require("./agent-loader/resolver");
58
+ const utils_1 = require("./agent-loader/utils");
55
59
  const ADK_CACHE_DIR = ".adk-cache";
56
60
  let AgentLoader = class AgentLoader {
57
61
  static { AgentLoader_1 = this; }
@@ -136,134 +140,13 @@ let AgentLoader = class AgentLoader {
136
140
  normalizePath(path) {
137
141
  return path.replace(/\\/g, "/");
138
142
  }
139
- /**
140
- * Parse TypeScript path mappings from tsconfig.json
141
- */
142
- parseTsConfigPaths(projectRoot) {
143
- const tsconfigPath = (0, node_path_1.join)(projectRoot, "tsconfig.json");
144
- if (!(0, node_fs_1.existsSync)(tsconfigPath)) {
145
- return {};
146
- }
147
- try {
148
- const tsconfigContent = (0, node_fs_1.readFileSync)(tsconfigPath, "utf-8");
149
- const tsconfigJson = JSON.parse(tsconfigContent);
150
- const parsed = agent_loader_types_1.TsConfigSchema.safeParse(tsconfigJson);
151
- if (!parsed.success) {
152
- this.logger.warn(`Invalid tsconfig.json structure: ${parsed.error.message}`);
153
- return {};
154
- }
155
- const compilerOptions = parsed.data.compilerOptions || {};
156
- return {
157
- baseUrl: compilerOptions.baseUrl,
158
- paths: compilerOptions.paths,
159
- };
160
- }
161
- catch (error) {
162
- this.logger.warn(`Failed to parse tsconfig.json: ${error instanceof Error ? error.message : String(error)}`);
163
- return {};
164
- }
165
- }
166
- /**
167
- * Create an esbuild plugin to handle TypeScript path mappings and relative imports
168
- */
169
- createPathMappingPlugin(projectRoot) {
170
- const { baseUrl, paths } = this.parseTsConfigPaths(projectRoot);
171
- const resolvedBaseUrl = baseUrl
172
- ? (0, node_path_1.resolve)(projectRoot, baseUrl)
173
- : projectRoot;
174
- const logger = this.logger;
175
- const quiet = this.quiet;
176
- const normalizePath = this.normalizePath.bind(this);
177
- return {
178
- name: "typescript-path-mapping",
179
- setup(build) {
180
- build.onResolve({ filter: /.*/ }, (args) => {
181
- if (!quiet) {
182
- logger.debug(`Resolving import: "${args.path}" from "${args.importer || "unknown"}"`);
183
- }
184
- if (paths && !args.path.startsWith(".") && !(0, node_path_1.isAbsolute)(args.path)) {
185
- for (const [alias, mappings] of Object.entries(paths)) {
186
- const aliasPattern = alias.replace("*", "(.*)");
187
- const aliasRegex = new RegExp(`^${aliasPattern}$`);
188
- const match = args.path.match(aliasRegex);
189
- if (match) {
190
- for (const mapping of mappings) {
191
- let resolvedPath = mapping;
192
- if (match[1] && mapping.includes("*")) {
193
- resolvedPath = mapping.replace("*", match[1]);
194
- }
195
- const fullPath = (0, node_path_1.normalize)((0, node_path_1.resolve)(resolvedBaseUrl, resolvedPath));
196
- const extensions = [".ts", ".js", ".tsx", ".jsx", ""];
197
- for (const ext of extensions) {
198
- const pathWithExt = ext ? fullPath + ext : fullPath;
199
- if ((0, node_fs_1.existsSync)(pathWithExt)) {
200
- logger.debug(`Path mapping resolved: ${args.path} -> ${pathWithExt}`);
201
- return { path: normalizePath(pathWithExt) };
202
- }
203
- }
204
- }
205
- }
206
- }
207
- }
208
- if (args.path === "env" && baseUrl) {
209
- const envPath = (0, node_path_1.resolve)(resolvedBaseUrl, "env");
210
- const extensions = [".ts", ".js"];
211
- for (const ext of extensions) {
212
- const pathWithExt = (0, node_path_1.normalize)(envPath + ext);
213
- if ((0, node_fs_1.existsSync)(pathWithExt)) {
214
- logger.debug(`Direct env import resolved: ${args.path} -> ${pathWithExt}`);
215
- return { path: normalizePath(pathWithExt) };
216
- }
217
- }
218
- }
219
- if (baseUrl && args.path.startsWith("../")) {
220
- const relativePath = args.path.replace("../", "");
221
- const fullPath = (0, node_path_1.resolve)(resolvedBaseUrl, relativePath);
222
- const extensions = [".ts", ".js", ".tsx", ".jsx", ""];
223
- for (const ext of extensions) {
224
- const pathWithExt = (0, node_path_1.normalize)(ext ? fullPath + ext : fullPath);
225
- if ((0, node_fs_1.existsSync)(pathWithExt)) {
226
- logger.debug(`Relative import resolved via baseUrl: ${args.path} -> ${pathWithExt}`);
227
- return { path: normalizePath(pathWithExt) };
228
- }
229
- }
230
- }
231
- return;
232
- });
233
- },
234
- };
235
- }
236
- /**
237
- * Check if a rebuild is needed based on file modification times
238
- */
239
- isRebuildNeeded(outFile, sourceFile, tsconfigPath) {
240
- if (!(0, node_fs_1.existsSync)(outFile)) {
241
- return true;
242
- }
243
- try {
244
- const outStat = (0, node_fs_1.statSync)(outFile);
245
- const srcStat = (0, node_fs_1.statSync)(sourceFile);
246
- const tsconfigMtime = (0, node_fs_1.existsSync)(tsconfigPath)
247
- ? (0, node_fs_1.statSync)(tsconfigPath).mtimeMs
248
- : 0;
249
- const needRebuild = !(outStat.mtimeMs >= srcStat.mtimeMs && outStat.mtimeMs >= tsconfigMtime);
250
- if (!needRebuild && !this.quiet) {
251
- this.logger.debug(`Reusing cached build: ${outFile}`);
252
- }
253
- return needRebuild;
254
- }
255
- catch (error) {
256
- // Log the error to help diagnose cache issues
257
- if (!this.quiet) {
258
- this.logger.warn(`Failed to check cache freshness for ${outFile}: ${error instanceof Error ? error.message : String(error)}. Forcing rebuild.`);
259
- }
260
- return true;
261
- }
262
- }
263
143
  /**
264
144
  * Import a TypeScript file by compiling it on-demand
145
+ * @param filePath - Path to the TypeScript file
146
+ * @param providedProjectRoot - Optional project root path
147
+ * @param forceInvalidateCache - Force cache invalidation (full reload)
265
148
  */
266
- async importTypeScriptFile(filePath, providedProjectRoot) {
149
+ async importTypeScriptFile(filePath, providedProjectRoot, forceInvalidateCache) {
267
150
  // Normalize the input file path
268
151
  const normalizedFilePath = (0, node_path_1.normalize)((0, node_path_1.resolve)(filePath));
269
152
  const projectRoot = providedProjectRoot ?? (0, find_project_root_1.findProjectRoot)((0, node_path_1.dirname)(normalizedFilePath));
@@ -285,29 +168,19 @@ let AgentLoader = class AgentLoader {
285
168
  // Define tsconfigPath once for reuse
286
169
  const tsconfigPath = (0, node_path_1.join)(projectRoot, "tsconfig.json");
287
170
  // Check if we need to rebuild
288
- const needRebuild = this.isRebuildNeeded(outFile, normalizedFilePath, tsconfigPath);
171
+ // Force rebuild if explicitly requested (e.g., initial state changed)
172
+ const needRebuild = forceInvalidateCache ||
173
+ (0, build_utils_1.isRebuildNeeded)(outFile, normalizedFilePath, tsconfigPath, this.logger, this.quiet);
174
+ if (forceInvalidateCache && !this.quiet) {
175
+ this.logger.log(`Forcing cache invalidation for ${normalizedFilePath}`);
176
+ }
289
177
  const ALWAYS_EXTERNAL_SCOPES = ["@iqai/"];
290
178
  const alwaysExternal = ["@iqai/adk"];
291
- const plugin = {
292
- name: "externalize-bare-imports",
293
- setup(build) {
294
- build.onResolve({ filter: /.*/ }, (args) => {
295
- const isWindowsAbsolutePath = /^[a-zA-Z]:/.test(args.path);
296
- if (args.path.startsWith(".") ||
297
- args.path.startsWith("/") ||
298
- args.path.startsWith("..") ||
299
- isWindowsAbsolutePath) {
300
- return;
301
- }
302
- if (ALWAYS_EXTERNAL_SCOPES.some((s) => args.path.startsWith(s)) ||
303
- alwaysExternal.includes(args.path)) {
304
- return { path: args.path, external: true };
305
- }
306
- return { path: args.path, external: true };
307
- });
308
- },
309
- };
310
- const pathMappingPlugin = this.createPathMappingPlugin(projectRoot);
179
+ const plugin = (0, build_utils_1.createExternalizePlugin)(alwaysExternal, ALWAYS_EXTERNAL_SCOPES);
180
+ const pathMappingPlugin = (0, path_plugin_1.createPathMappingPlugin)(projectRoot, {
181
+ logger: this.logger,
182
+ quiet: this.quiet,
183
+ });
311
184
  const plugins = [pathMappingPlugin, plugin];
312
185
  if (needRebuild) {
313
186
  // Delete old cache file before rebuilding to avoid stale cache on build failure
@@ -325,7 +198,7 @@ let AgentLoader = class AgentLoader {
325
198
  }
326
199
  }
327
200
  await build({
328
- entryPoints: [this.normalizePath(normalizedFilePath)],
201
+ entryPoints: [(0, utils_1.normalizePathForEsbuild)(normalizedFilePath)],
329
202
  outfile: outFile,
330
203
  bundle: true,
331
204
  format: "cjs",
@@ -403,232 +276,10 @@ let AgentLoader = class AgentLoader {
403
276
  }
404
277
  }
405
278
  loadEnvironmentVariables(agentFilePath) {
406
- // Normalize the path first
407
- const normalizedAgentPath = (0, node_path_1.normalize)((0, node_path_1.resolve)(agentFilePath));
408
- const projectRoot = (0, find_project_root_1.findProjectRoot)((0, node_path_1.dirname)(normalizedAgentPath));
409
- // Check for multiple env files in priority order
410
- const envFiles = [
411
- ".env.local",
412
- ".env.development.local",
413
- ".env.production.local",
414
- ".env.development",
415
- ".env.production",
416
- ".env",
417
- ];
418
- for (const envFile of envFiles) {
419
- const envPath = (0, node_path_1.join)(projectRoot, envFile);
420
- if ((0, node_fs_1.existsSync)(envPath)) {
421
- try {
422
- const envContent = (0, node_fs_1.readFileSync)(envPath, "utf8");
423
- const envLines = envContent.split("\n");
424
- for (const line of envLines) {
425
- const trimmedLine = line.trim();
426
- if (trimmedLine && !trimmedLine.startsWith("#")) {
427
- const [key, ...valueParts] = trimmedLine.split("=");
428
- if (key && valueParts.length > 0) {
429
- const value = valueParts.join("=").replace(/^"(.*)"$/, "$1");
430
- // Set environment variables in current process (only if not already set)
431
- if (!process.env[key.trim()]) {
432
- process.env[key.trim()] = value.trim();
433
- }
434
- }
435
- }
436
- }
437
- }
438
- catch (error) {
439
- this.logger.warn(`Warning: Could not load ${envFile} file: ${error instanceof Error ? error.message : String(error)}`);
440
- }
441
- }
442
- }
443
- }
444
- /**
445
- * Type guard to check if object is likely a BaseAgent instance
446
- */
447
- isLikelyAgentInstance(obj) {
448
- return (obj != null &&
449
- typeof obj === "object" &&
450
- typeof obj.name === "string" &&
451
- typeof obj.runAsync === "function");
452
- }
453
- /**
454
- * Type guard to check if object is an AgentBuilder
455
- */
456
- isAgentBuilder(obj) {
457
- return (obj != null &&
458
- typeof obj === "object" &&
459
- typeof obj.build === "function" &&
460
- typeof obj.withModel === "function");
461
- }
462
- /**
463
- * Type guard to check if object is a BuiltAgent
464
- */
465
- isBuiltAgent(obj) {
466
- return (obj != null &&
467
- typeof obj === "object" &&
468
- "agent" in obj &&
469
- "runner" in obj &&
470
- "session" in obj);
471
- }
472
- /**
473
- * Type guard to check if value is a primitive type
474
- */
475
- isPrimitive(v) {
476
- return v == null || ["string", "number", "boolean"].includes(typeof v);
477
- }
478
- /**
479
- * Safely invoke a function, handling both sync and async results
480
- */
481
- async invokeFunctionSafely(fn) {
482
- let result = fn();
483
- if (result && typeof result === "object" && "then" in result) {
484
- try {
485
- result = await result;
486
- }
487
- catch (e) {
488
- throw new Error(`Failed to await function result: ${e instanceof Error ? e.message : String(e)}`);
489
- }
490
- }
491
- return result;
492
- }
493
- /**
494
- * Extract BaseAgent from different possible types
495
- * Returns both the agent and the full built context (if available)
496
- *
497
- * Note: `unknown` here is legitimate - we're dynamically inspecting module exports
498
- * from dynamically loaded code where the actual types are determined at runtime.
499
- */
500
- async extractBaseAgent(item) {
501
- if (this.isLikelyAgentInstance(item)) {
502
- return { agent: item };
503
- }
504
- if (this.isAgentBuilder(item)) {
505
- const built = await item.build();
506
- return { agent: built.agent, builtAgent: built };
507
- }
508
- if (this.isBuiltAgent(item)) {
509
- const builtItem = item;
510
- return {
511
- agent: builtItem.agent,
512
- builtAgent: builtItem,
513
- };
514
- }
515
- return null;
516
- }
517
- /**
518
- * Search through module exports to find potential agent exports
519
- */
520
- async scanModuleExports(mod) {
521
- for (const [key, value] of Object.entries(mod)) {
522
- if (key === "default")
523
- continue;
524
- const keyLower = key.toLowerCase();
525
- if (this.isPrimitive(value))
526
- continue;
527
- const result = await this.extractBaseAgent(value);
528
- if (result) {
529
- return result;
530
- }
531
- if (value && typeof value === "object" && "agent" in value) {
532
- const container = value;
533
- const containerResult = await this.extractBaseAgent(container.agent);
534
- if (containerResult) {
535
- return containerResult;
536
- }
537
- }
538
- if (typeof value === "function" &&
539
- (() => {
540
- if (/(agent|build|create)/i.test(keyLower))
541
- return true;
542
- const fnLike = value;
543
- const fnName = fnLike?.name;
544
- return !!(fnName && /(agent|build|create)/i.test(fnName.toLowerCase()));
545
- })()) {
546
- try {
547
- const functionResult = await this.invokeFunctionSafely(value);
548
- const result = await this.extractBaseAgent(functionResult);
549
- if (result) {
550
- return result;
551
- }
552
- if (functionResult &&
553
- typeof functionResult === "object" &&
554
- "agent" in functionResult) {
555
- const containerResult = await this.extractBaseAgent(functionResult.agent);
556
- if (containerResult) {
557
- return containerResult;
558
- }
559
- }
560
- }
561
- catch (_e) {
562
- // Swallow and continue searching
563
- }
564
- }
565
- }
566
- return null;
279
+ (0, env_1.loadEnvironmentVariables)(agentFilePath, this.logger);
567
280
  }
568
281
  async resolveAgentExport(mod) {
569
- const moduleDefault = mod.default && typeof mod.default === "object"
570
- ? mod.default
571
- : undefined;
572
- const candidateToResolve = mod.agent ?? moduleDefault?.agent ?? moduleDefault ?? mod;
573
- const directResult = await this.tryResolvingDirectCandidate(candidateToResolve, mod);
574
- if (directResult) {
575
- return directResult;
576
- }
577
- const exportResult = await this.scanModuleExports(mod);
578
- if (exportResult) {
579
- return exportResult;
580
- }
581
- if (typeof candidateToResolve === "function") {
582
- const functionResult = await this.tryResolvingFunctionCandidate(candidateToResolve);
583
- if (functionResult) {
584
- return functionResult;
585
- }
586
- }
587
- throw new Error("No agent export resolved (expected BaseAgent, AgentBuilder, or BuiltAgent)");
588
- }
589
- /**
590
- * Try to resolve a direct candidate (not from scanning exports)
591
- */
592
- async tryResolvingDirectCandidate(candidateToResolve, mod) {
593
- if (this.isPrimitive(candidateToResolve) ||
594
- (candidateToResolve && candidateToResolve === mod)) {
595
- return null;
596
- }
597
- const result = await this.extractBaseAgent(candidateToResolve);
598
- if (result) {
599
- return result;
600
- }
601
- if (candidateToResolve &&
602
- typeof candidateToResolve === "object" &&
603
- "agent" in candidateToResolve) {
604
- const container = candidateToResolve;
605
- return await this.extractBaseAgent(container.agent);
606
- }
607
- return null;
608
- }
609
- /**
610
- * Try to resolve a function candidate by invoking it
611
- */
612
- async tryResolvingFunctionCandidate(functionCandidate) {
613
- try {
614
- const functionResult = await this.invokeFunctionSafely(functionCandidate);
615
- const result = await this.extractBaseAgent(functionResult);
616
- if (result) {
617
- return result;
618
- }
619
- if (functionResult &&
620
- typeof functionResult === "object" &&
621
- "agent" in functionResult) {
622
- const containerResult = await this.extractBaseAgent(functionResult.agent);
623
- if (containerResult) {
624
- return containerResult;
625
- }
626
- }
627
- }
628
- catch (e) {
629
- throw new Error(`Failed executing exported agent function: ${e instanceof Error ? e.message : String(e)}`);
630
- }
631
- return null;
282
+ return (0, resolver_1.resolveAgentExport)(mod);
632
283
  }
633
284
  };
634
285
  exports.AgentLoader = AgentLoader;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-loader.service.js","sourceRoot":"","sources":["../../../src/http/providers/agent-loader.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-loader.service.js","sourceRoot":"","sources":["../../../src/http/providers/agent-loader.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { BaseAgent, BuiltAgent, EnhancedRunner, InMemorySessionService, Session } from "@iqai/adk";
2
+ import type { Agent } from "../../../common/types";
3
+ import type { SessionState } from "../agent-loader.types";
4
+ export declare function hashState(state: SessionState | undefined): string;
5
+ export declare function getExistingSession(sessionService: InMemorySessionService, agentPath: string, sessionId: string, logger: {
6
+ log: (...args: any[]) => void;
7
+ warn: (...args: any[]) => void;
8
+ }): Promise<Session>;
9
+ export declare function getOrCreateSession(sessionService: InMemorySessionService, agentPath: string, agentResult: {
10
+ agent: BaseAgent;
11
+ builtAgent?: BuiltAgent;
12
+ }, extractInitialStateFn: (r: {
13
+ agent: BaseAgent;
14
+ builtAgent?: BuiltAgent;
15
+ }) => SessionState | undefined, logger: {
16
+ log: (...args: any[]) => void;
17
+ }): Promise<Session>;
18
+ export declare function createRunnerWithSession(sessionService: InMemorySessionService, baseAgent: BaseAgent, sessionToUse: Session, agentPath: string): Promise<EnhancedRunner>;
19
+ export declare function storeLoadedAgent(sessionService: InMemorySessionService, agentPath: string, agentResult: {
20
+ agent: BaseAgent;
21
+ builtAgent?: BuiltAgent;
22
+ }, runner: EnhancedRunner, sessionToUse: Session, agent: Agent, setLoaded: (path: string, payload: {
23
+ agent: BaseAgent;
24
+ runner: EnhancedRunner;
25
+ sessionId: string;
26
+ userId: string;
27
+ appName: string;
28
+ }) => void, logger: {
29
+ log: (...args: any[]) => void;
30
+ error: (...args: any[]) => void;
31
+ }, setBuilt?: (path: string, built: BuiltAgent) => void): Promise<void>;
32
+ export declare function clearAgentSessions(sessionService: InMemorySessionService, agentPath: string, logger: {
33
+ log: (...args: any[]) => void;
34
+ warn: (...args: any[]) => void;
35
+ }): Promise<void>;
36
+ //# sourceMappingURL=sessions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../../src/http/providers/agent-manager/sessions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,SAAS,EACT,UAAU,EACV,cAAc,EACd,sBAAsB,EACtB,OAAO,EACP,MAAM,WAAW,CAAC;AAGnB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D,wBAAgB,SAAS,CAAC,KAAK,EAAE,YAAY,GAAG,SAAS,GAAG,MAAM,CAGjE;AAED,wBAAsB,kBAAkB,CACvC,cAAc,EAAE,sBAAsB,EACtC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE;IAAE,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;CAAE,GACvE,OAAO,CAAC,OAAO,CAAC,CAelB;AAED,wBAAsB,kBAAkB,CACvC,cAAc,EAAE,sBAAsB,EACtC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,UAAU,CAAC,EAAE,UAAU,CAAA;CAAE,EAC1D,qBAAqB,EAAE,CAAC,CAAC,EAAE;IAC1B,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,CAAC,EAAE,UAAU,CAAC;CACxB,KAAK,YAAY,GAAG,SAAS,EAC9B,MAAM,EAAE;IAAE,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;CAAE,GACvC,OAAO,CAAC,OAAO,CAAC,CAoClB;AAED,wBAAsB,uBAAuB,CAC5C,cAAc,EAAE,sBAAsB,EACtC,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,OAAO,EACrB,SAAS,EAAE,MAAM,GACf,OAAO,CAAC,cAAc,CAAC,CAYzB;AAED,wBAAsB,gBAAgB,CACrC,cAAc,EAAE,sBAAsB,EACtC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,UAAU,CAAC,EAAE,UAAU,CAAA;CAAE,EAC1D,MAAM,EAAE,cAAc,EACtB,YAAY,EAAE,OAAO,EACrB,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,CACV,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;IACR,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CAChB,KACG,IAAI,EACT,MAAM,EAAE;IAAE,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;CAAE,EAC1E,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,KAAK,IAAI,GAClD,OAAO,CAAC,IAAI,CAAC,CAsCf;AAED,wBAAsB,kBAAkB,CACvC,cAAc,EAAE,sBAAsB,EACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE;IAAE,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;CAAE,GACvE,OAAO,CAAC,IAAI,CAAC,CAoBf"}