deepagentsdk 0.12.0 → 0.14.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 (37) hide show
  1. package/dist/adapters/elements/index.cjs +478 -288
  2. package/dist/adapters/elements/index.cjs.map +1 -1
  3. package/dist/adapters/elements/index.d.cts +107 -172
  4. package/dist/adapters/elements/index.d.mts +107 -172
  5. package/dist/adapters/elements/index.mjs +471 -284
  6. package/dist/adapters/elements/index.mjs.map +1 -1
  7. package/dist/{types-4g9UvXal.d.mts → agent-D0bKkNI-.d.mts} +352 -3
  8. package/dist/{types-IulnvhFg.d.cts → agent-DwAj5emJ.d.cts} +352 -3
  9. package/dist/{chunk-CbDLau6x.cjs → chunk-C5azi7Hr.cjs} +33 -0
  10. package/dist/cli/index.cjs +12 -12
  11. package/dist/cli/index.cjs.map +1 -1
  12. package/dist/cli/index.mjs +2 -2
  13. package/dist/cli/index.mjs.map +1 -1
  14. package/dist/{agent-Cuks-Idh.cjs → file-saver-BYPKakT4.cjs} +799 -205
  15. package/dist/file-saver-BYPKakT4.cjs.map +1 -0
  16. package/dist/{agent-CrH-He58.mjs → file-saver-Hj5so3dV.mjs} +793 -199
  17. package/dist/file-saver-Hj5so3dV.mjs.map +1 -0
  18. package/dist/index.cjs +83 -73
  19. package/dist/index.cjs.map +1 -1
  20. package/dist/index.d.cts +5 -353
  21. package/dist/index.d.mts +5 -353
  22. package/dist/index.mjs +13 -3
  23. package/dist/index.mjs.map +1 -1
  24. package/dist/{load-B6CA5js_.mjs → load-BBYEnMwz.mjs} +1 -1
  25. package/dist/{load-B6CA5js_.mjs.map → load-BBYEnMwz.mjs.map} +1 -1
  26. package/dist/{load-94gjHorc.mjs → load-BDxe6Cet.mjs} +1 -1
  27. package/dist/{load-79a2H4m0.cjs → load-BrRAKlO6.cjs} +2 -2
  28. package/dist/{load-79a2H4m0.cjs.map → load-BrRAKlO6.cjs.map} +1 -1
  29. package/dist/load-DqllBbDc.cjs +4 -0
  30. package/package.json +1 -1
  31. package/dist/agent-CrH-He58.mjs.map +0 -1
  32. package/dist/agent-Cuks-Idh.cjs.map +0 -1
  33. package/dist/file-saver-BJCqMIb5.mjs +0 -655
  34. package/dist/file-saver-BJCqMIb5.mjs.map +0 -1
  35. package/dist/file-saver-C6O2LAvg.cjs +0 -679
  36. package/dist/file-saver-C6O2LAvg.cjs.map +0 -1
  37. package/dist/load-C2qVmZMp.cjs +0 -3
package/dist/index.cjs CHANGED
@@ -1,7 +1,6 @@
1
- const require_chunk = require('./chunk-CbDLau6x.cjs');
2
- const require_agent = require('./agent-Cuks-Idh.cjs');
3
- const require_file_saver = require('./file-saver-C6O2LAvg.cjs');
4
- const require_load = require('./load-79a2H4m0.cjs');
1
+ const require_chunk = require('./chunk-C5azi7Hr.cjs');
2
+ const require_file_saver = require('./file-saver-BYPKakT4.cjs');
3
+ const require_load = require('./load-BrRAKlO6.cjs');
5
4
  let ai = require("ai");
6
5
  let micromatch = require("micromatch");
7
6
  micromatch = require_chunk.__toESM(micromatch);
@@ -22,6 +21,7 @@ let node_os = require("node:os");
22
21
  node_os = require_chunk.__toESM(node_os);
23
22
 
24
23
  //#region src/types/structured-output.ts
24
+ require_file_saver.init_limits();
25
25
  /**
26
26
  * Type guard for checking if a result has structured output
27
27
  */
@@ -52,6 +52,7 @@ function getEventOutput(event) {
52
52
  /**
53
53
  * FilesystemBackend: Read and write files directly from the filesystem.
54
54
  */
55
+ require_file_saver.init_errors();
55
56
  const SUPPORTS_NOFOLLOW = fs.constants.O_NOFOLLOW !== void 0;
56
57
  /**
57
58
  * Backend that reads and writes files directly from the filesystem.
@@ -94,7 +95,7 @@ var FilesystemBackend = class {
94
95
  * Files larger than this will be rejected.
95
96
  */
96
97
  constructor(options = {}) {
97
- const { rootDir, virtualMode = false, maxFileSizeMb = require_agent.MAX_FILE_SIZE_MB } = options;
98
+ const { rootDir, virtualMode = false, maxFileSizeMb = require_file_saver.MAX_FILE_SIZE_MB } = options;
98
99
  this.cwd = rootDir ? path.resolve(rootDir) : process.cwd();
99
100
  this.virtualMode = virtualMode;
100
101
  this.maxFileSizeBytes = maxFileSizeMb * 1024 * 1024;
@@ -176,12 +177,12 @@ var FilesystemBackend = class {
176
177
  /**
177
178
  * Read file content with line numbers.
178
179
  */
179
- async read(filePath, offset = 0, limit = require_agent.DEFAULT_READ_LIMIT) {
180
+ async read(filePath, offset = 0, limit = require_file_saver.DEFAULT_READ_LIMIT) {
180
181
  try {
181
182
  const resolvedPath = this.resolvePath(filePath);
182
183
  let content;
183
184
  if (SUPPORTS_NOFOLLOW) {
184
- if (!(await fs_promises.stat(resolvedPath)).isFile()) return require_agent.FILE_NOT_FOUND(filePath);
185
+ if (!(await fs_promises.stat(resolvedPath)).isFile()) return require_file_saver.FILE_NOT_FOUND(filePath);
185
186
  const fd = await fs_promises.open(resolvedPath, fs.constants.O_RDONLY | fs.constants.O_NOFOLLOW);
186
187
  try {
187
188
  content = await fd.readFile({ encoding: "utf-8" });
@@ -191,16 +192,16 @@ var FilesystemBackend = class {
191
192
  } else {
192
193
  const stat = await fs_promises.lstat(resolvedPath);
193
194
  if (stat.isSymbolicLink()) return `Error: Symlinks are not allowed: ${filePath}`;
194
- if (!stat.isFile()) return require_agent.FILE_NOT_FOUND(filePath);
195
+ if (!stat.isFile()) return require_file_saver.FILE_NOT_FOUND(filePath);
195
196
  content = await fs_promises.readFile(resolvedPath, "utf-8");
196
197
  }
197
- const emptyMsg = require_agent.checkEmptyContent(content);
198
+ const emptyMsg = require_file_saver.checkEmptyContent(content);
198
199
  if (emptyMsg) return emptyMsg;
199
200
  const lines = content.split("\n");
200
201
  const startIdx = offset;
201
202
  const endIdx = Math.min(startIdx + limit, lines.length);
202
203
  if (startIdx >= lines.length) return `Error: Line offset ${offset} exceeds file length (${lines.length} lines)`;
203
- return require_agent.formatContentWithLineNumbers(lines.slice(startIdx, endIdx), startIdx + 1);
204
+ return require_file_saver.formatContentWithLineNumbers(lines.slice(startIdx, endIdx), startIdx + 1);
204
205
  } catch (e) {
205
206
  return `Error reading file '${filePath}': ${e.message}`;
206
207
  }
@@ -246,7 +247,7 @@ var FilesystemBackend = class {
246
247
  };
247
248
  return {
248
249
  success: false,
249
- error: require_agent.FILE_ALREADY_EXISTS(filePath)
250
+ error: require_file_saver.FILE_ALREADY_EXISTS(filePath)
250
251
  };
251
252
  } catch {}
252
253
  await fs_promises.mkdir(path.dirname(resolvedPath), { recursive: true });
@@ -280,7 +281,7 @@ var FilesystemBackend = class {
280
281
  if (SUPPORTS_NOFOLLOW) {
281
282
  if (!(await fs_promises.stat(resolvedPath)).isFile()) return {
282
283
  success: false,
283
- error: require_agent.FILE_NOT_FOUND(filePath)
284
+ error: require_file_saver.FILE_NOT_FOUND(filePath)
284
285
  };
285
286
  const fd = await fs_promises.open(resolvedPath, fs.constants.O_RDONLY | fs.constants.O_NOFOLLOW);
286
287
  try {
@@ -296,11 +297,11 @@ var FilesystemBackend = class {
296
297
  };
297
298
  if (!stat.isFile()) return {
298
299
  success: false,
299
- error: require_agent.FILE_NOT_FOUND(filePath)
300
+ error: require_file_saver.FILE_NOT_FOUND(filePath)
300
301
  };
301
302
  content = await fs_promises.readFile(resolvedPath, "utf-8");
302
303
  }
303
- const result = require_agent.performStringReplacement(content, oldString, newString, replaceAll);
304
+ const result = require_file_saver.performStringReplacement(content, oldString, newString, replaceAll);
304
305
  if (typeof result === "string") return {
305
306
  success: false,
306
307
  error: result
@@ -686,6 +687,7 @@ var CompositeBackend = class {
686
687
 
687
688
  //#endregion
688
689
  //#region src/backends/persistent.ts
690
+ require_file_saver.init_errors();
689
691
  /**
690
692
  * Simple in-memory implementation of KeyValueStore.
691
693
  *
@@ -928,7 +930,7 @@ var PersistentBackend = class {
928
930
  */
929
931
  async read(filePath, offset = 0, limit = 2e3) {
930
932
  try {
931
- return require_agent.formatReadResponse(await this.readRaw(filePath), offset, limit);
933
+ return require_file_saver.formatReadResponse(await this.readRaw(filePath), offset, limit);
932
934
  } catch (e) {
933
935
  return `Error: ${e.message}`;
934
936
  }
@@ -949,9 +951,9 @@ var PersistentBackend = class {
949
951
  const namespace = this.getNamespace();
950
952
  if (await this.store.get(namespace, filePath)) return {
951
953
  success: false,
952
- error: require_agent.FILE_ALREADY_EXISTS(filePath)
954
+ error: require_file_saver.FILE_ALREADY_EXISTS(filePath)
953
955
  };
954
- const fileData = require_agent.createFileData(content);
956
+ const fileData = require_file_saver.createFileData(content);
955
957
  const storeValue = this.convertFromFileData(fileData);
956
958
  await this.store.put(namespace, filePath, storeValue);
957
959
  return {
@@ -967,17 +969,17 @@ var PersistentBackend = class {
967
969
  const value = await this.store.get(namespace, filePath);
968
970
  if (!value) return {
969
971
  success: false,
970
- error: require_agent.FILE_NOT_FOUND(filePath)
972
+ error: require_file_saver.FILE_NOT_FOUND(filePath)
971
973
  };
972
974
  try {
973
975
  const fileData = this.convertToFileData(value);
974
- const result = require_agent.performStringReplacement(require_agent.fileDataToString(fileData), oldString, newString, replaceAll);
976
+ const result = require_file_saver.performStringReplacement(require_file_saver.fileDataToString(fileData), oldString, newString, replaceAll);
975
977
  if (typeof result === "string") return {
976
978
  success: false,
977
979
  error: result
978
980
  };
979
981
  const [newContent, occurrences] = result;
980
- const newFileData = require_agent.updateFileData(fileData, newContent);
982
+ const newFileData = require_file_saver.updateFileData(fileData, newContent);
981
983
  const storeValue = this.convertFromFileData(newFileData);
982
984
  await this.store.put(namespace, filePath, storeValue);
983
985
  return {
@@ -1004,7 +1006,7 @@ var PersistentBackend = class {
1004
1006
  } catch {
1005
1007
  continue;
1006
1008
  }
1007
- return require_agent.grepMatchesFromFiles(files, pattern, path$1, glob$1);
1009
+ return require_file_saver.grepMatchesFromFiles(files, pattern, path$1, glob$1);
1008
1010
  }
1009
1011
  /**
1010
1012
  * Structured glob matching returning FileInfo objects.
@@ -1018,7 +1020,7 @@ var PersistentBackend = class {
1018
1020
  } catch {
1019
1021
  continue;
1020
1022
  }
1021
- const result = require_agent.globSearchFiles(files, pattern, path$1);
1023
+ const result = require_file_saver.globSearchFiles(files, pattern, path$1);
1022
1024
  if (result === "No files found") return [];
1023
1025
  const paths = result.split("\n");
1024
1026
  const infos = [];
@@ -1045,6 +1047,14 @@ var PersistentBackend = class {
1045
1047
  }
1046
1048
  };
1047
1049
 
1050
+ //#endregion
1051
+ //#region src/tools/index.ts
1052
+ require_file_saver.init_web();
1053
+
1054
+ //#endregion
1055
+ //#region src/utils/index.ts
1056
+ require_file_saver.init_eviction();
1057
+
1048
1058
  //#endregion
1049
1059
  //#region src/checkpointer/memory-saver.ts
1050
1060
  /**
@@ -1376,17 +1386,17 @@ function createAgentMemoryMiddleware(options) {
1376
1386
  }
1377
1387
 
1378
1388
  //#endregion
1379
- exports.BASE_PROMPT = require_agent.BASE_PROMPT;
1389
+ exports.BASE_PROMPT = require_file_saver.BASE_PROMPT;
1380
1390
  exports.BaseSandbox = require_file_saver.BaseSandbox;
1381
1391
  exports.CompositeBackend = CompositeBackend;
1382
- exports.DEFAULT_EVICTION_TOKEN_LIMIT = require_agent.DEFAULT_EVICTION_TOKEN_LIMIT;
1383
- exports.DEFAULT_GENERAL_PURPOSE_DESCRIPTION = require_agent.DEFAULT_GENERAL_PURPOSE_DESCRIPTION;
1384
- exports.DEFAULT_KEEP_MESSAGES = require_agent.DEFAULT_KEEP_MESSAGES;
1385
- exports.DEFAULT_SUBAGENT_PROMPT = require_agent.DEFAULT_SUBAGENT_PROMPT;
1386
- exports.DEFAULT_SUMMARIZATION_THRESHOLD = require_agent.DEFAULT_SUMMARIZATION_THRESHOLD;
1387
- exports.DeepAgent = require_agent.DeepAgent;
1388
- exports.EXECUTE_SYSTEM_PROMPT = require_agent.EXECUTE_SYSTEM_PROMPT;
1389
- exports.FILESYSTEM_SYSTEM_PROMPT = require_agent.FILESYSTEM_SYSTEM_PROMPT;
1392
+ exports.DEFAULT_EVICTION_TOKEN_LIMIT = require_file_saver.DEFAULT_EVICTION_TOKEN_LIMIT;
1393
+ exports.DEFAULT_GENERAL_PURPOSE_DESCRIPTION = require_file_saver.DEFAULT_GENERAL_PURPOSE_DESCRIPTION;
1394
+ exports.DEFAULT_KEEP_MESSAGES = require_file_saver.DEFAULT_KEEP_MESSAGES;
1395
+ exports.DEFAULT_SUBAGENT_PROMPT = require_file_saver.DEFAULT_SUBAGENT_PROMPT;
1396
+ exports.DEFAULT_SUMMARIZATION_THRESHOLD = require_file_saver.DEFAULT_SUMMARIZATION_THRESHOLD;
1397
+ exports.DeepAgent = require_file_saver.DeepAgent;
1398
+ exports.EXECUTE_SYSTEM_PROMPT = require_file_saver.EXECUTE_SYSTEM_PROMPT;
1399
+ exports.FILESYSTEM_SYSTEM_PROMPT = require_file_saver.FILESYSTEM_SYSTEM_PROMPT;
1390
1400
  exports.FileSaver = require_file_saver.FileSaver;
1391
1401
  exports.FilesystemBackend = FilesystemBackend;
1392
1402
  exports.InMemoryStore = InMemoryStore;
@@ -1394,9 +1404,9 @@ exports.KeyValueStoreSaver = KeyValueStoreSaver;
1394
1404
  exports.LocalSandbox = require_file_saver.LocalSandbox;
1395
1405
  exports.MemorySaver = MemorySaver;
1396
1406
  exports.PersistentBackend = PersistentBackend;
1397
- exports.StateBackend = require_agent.StateBackend;
1398
- exports.TASK_SYSTEM_PROMPT = require_agent.TASK_SYSTEM_PROMPT;
1399
- exports.TODO_SYSTEM_PROMPT = require_agent.TODO_SYSTEM_PROMPT;
1407
+ exports.StateBackend = require_file_saver.StateBackend;
1408
+ exports.TASK_SYSTEM_PROMPT = require_file_saver.TASK_SYSTEM_PROMPT;
1409
+ exports.TODO_SYSTEM_PROMPT = require_file_saver.TODO_SYSTEM_PROMPT;
1400
1410
  Object.defineProperty(exports, 'ToolLoopAgent', {
1401
1411
  enumerable: true,
1402
1412
  get: function () {
@@ -1404,37 +1414,37 @@ Object.defineProperty(exports, 'ToolLoopAgent', {
1404
1414
  }
1405
1415
  });
1406
1416
  exports.createAgentMemoryMiddleware = createAgentMemoryMiddleware;
1407
- exports.createDeepAgent = require_agent.createDeepAgent;
1408
- exports.createEditFileTool = require_agent.createEditFileTool;
1409
- exports.createExecuteTool = require_agent.createExecuteTool;
1410
- exports.createExecuteToolFromBackend = require_agent.createExecuteToolFromBackend;
1411
- exports.createFetchUrlTool = require_agent.createFetchUrlTool;
1412
- exports.createFilesystemTools = require_agent.createFilesystemTools;
1413
- exports.createGlobTool = require_agent.createGlobTool;
1414
- exports.createGrepTool = require_agent.createGrepTool;
1415
- exports.createHttpRequestTool = require_agent.createHttpRequestTool;
1416
- exports.createLsTool = require_agent.createLsTool;
1417
- exports.createReadFileTool = require_agent.createReadFileTool;
1418
- exports.createSubagentTool = require_agent.createSubagentTool;
1419
- exports.createTodosTool = require_agent.createTodosTool;
1420
- exports.createToolResultWrapper = require_agent.createToolResultWrapper;
1421
- exports.createWebSearchTool = require_agent.createWebSearchTool;
1422
- exports.createWebTools = require_agent.createWebTools;
1423
- exports.createWriteFileTool = require_agent.createWriteFileTool;
1424
- exports.edit_file = require_agent.edit_file;
1425
- exports.estimateMessagesTokens = require_agent.estimateMessagesTokens;
1426
- exports.estimateTokens = require_agent.estimateTokens;
1417
+ exports.createDeepAgent = require_file_saver.createDeepAgent;
1418
+ exports.createEditFileTool = require_file_saver.createEditFileTool;
1419
+ exports.createExecuteTool = require_file_saver.createExecuteTool;
1420
+ exports.createExecuteToolFromBackend = require_file_saver.createExecuteToolFromBackend;
1421
+ exports.createFetchUrlTool = require_file_saver.createFetchUrlTool;
1422
+ exports.createFilesystemTools = require_file_saver.createFilesystemTools;
1423
+ exports.createGlobTool = require_file_saver.createGlobTool;
1424
+ exports.createGrepTool = require_file_saver.createGrepTool;
1425
+ exports.createHttpRequestTool = require_file_saver.createHttpRequestTool;
1426
+ exports.createLsTool = require_file_saver.createLsTool;
1427
+ exports.createReadFileTool = require_file_saver.createReadFileTool;
1428
+ exports.createSubagentTool = require_file_saver.createSubagentTool;
1429
+ exports.createTodosTool = require_file_saver.createTodosTool;
1430
+ exports.createToolResultWrapper = require_file_saver.createToolResultWrapper;
1431
+ exports.createWebSearchTool = require_file_saver.createWebSearchTool;
1432
+ exports.createWebTools = require_file_saver.createWebTools;
1433
+ exports.createWriteFileTool = require_file_saver.createWriteFileTool;
1434
+ exports.edit_file = require_file_saver.edit_file;
1435
+ exports.estimateMessagesTokens = require_file_saver.estimateMessagesTokens;
1436
+ exports.estimateTokens = require_file_saver.estimateTokens;
1427
1437
  exports.eventHasStructuredOutput = eventHasStructuredOutput;
1428
- exports.evictToolResult = require_agent.evictToolResult;
1429
- exports.execute = require_agent.execute;
1430
- exports.fetch_url = require_agent.fetch_url;
1438
+ exports.evictToolResult = require_file_saver.evictToolResult;
1439
+ exports.execute = require_file_saver.execute;
1440
+ exports.fetch_url = require_file_saver.fetch_url;
1431
1441
  exports.findGitRoot = require_load.findGitRoot;
1432
1442
  exports.getEventOutput = getEventOutput;
1433
1443
  exports.getStructuredOutput = getStructuredOutput;
1434
- exports.getTaskToolDescription = require_agent.getTaskToolDescription;
1435
- exports.glob = require_agent.glob;
1436
- exports.grep = require_agent.grep;
1437
- exports.hasDanglingToolCalls = require_agent.hasDanglingToolCalls;
1444
+ exports.getTaskToolDescription = require_file_saver.getTaskToolDescription;
1445
+ exports.glob = require_file_saver.glob;
1446
+ exports.grep = require_file_saver.grep;
1447
+ exports.hasDanglingToolCalls = require_file_saver.hasDanglingToolCalls;
1438
1448
  exports.hasStructuredOutput = hasStructuredOutput;
1439
1449
  Object.defineProperty(exports, 'hasToolCall', {
1440
1450
  enumerable: true,
@@ -1442,30 +1452,30 @@ Object.defineProperty(exports, 'hasToolCall', {
1442
1452
  return ai.hasToolCall;
1443
1453
  }
1444
1454
  });
1445
- exports.htmlToMarkdown = require_agent.htmlToMarkdown;
1446
- exports.http_request = require_agent.http_request;
1447
- exports.isSandboxBackend = require_agent.isSandboxBackend;
1455
+ exports.htmlToMarkdown = require_file_saver.htmlToMarkdown;
1456
+ exports.http_request = require_file_saver.http_request;
1457
+ exports.isSandboxBackend = require_file_saver.isSandboxBackend;
1448
1458
  exports.listSkills = require_load.listSkills;
1449
- exports.ls = require_agent.ls;
1450
- exports.needsSummarization = require_agent.needsSummarization;
1459
+ exports.ls = require_file_saver.ls;
1460
+ exports.needsSummarization = require_file_saver.needsSummarization;
1451
1461
  exports.parseSkillMetadata = require_load.parseSkillMetadata;
1452
- exports.patchToolCalls = require_agent.patchToolCalls;
1453
- exports.read_file = require_agent.read_file;
1454
- exports.shouldEvict = require_agent.shouldEvict;
1462
+ exports.patchToolCalls = require_file_saver.patchToolCalls;
1463
+ exports.read_file = require_file_saver.read_file;
1464
+ exports.shouldEvict = require_file_saver.shouldEvict;
1455
1465
  Object.defineProperty(exports, 'stepCountIs', {
1456
1466
  enumerable: true,
1457
1467
  get: function () {
1458
1468
  return ai.stepCountIs;
1459
1469
  }
1460
1470
  });
1461
- exports.summarizeIfNeeded = require_agent.summarizeIfNeeded;
1462
- exports.web_search = require_agent.web_search;
1471
+ exports.summarizeIfNeeded = require_file_saver.summarizeIfNeeded;
1472
+ exports.web_search = require_file_saver.web_search;
1463
1473
  Object.defineProperty(exports, 'wrapLanguageModel', {
1464
1474
  enumerable: true,
1465
1475
  get: function () {
1466
1476
  return ai.wrapLanguageModel;
1467
1477
  }
1468
1478
  });
1469
- exports.write_file = require_agent.write_file;
1470
- exports.write_todos = require_agent.write_todos;
1479
+ exports.write_file = require_file_saver.write_file;
1480
+ exports.write_todos = require_file_saver.write_todos;
1471
1481
  //# sourceMappingURL=index.cjs.map