@librechat/agents 3.7.20 → 3.7.22

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 (81) hide show
  1. package/dist/cjs/graphs/Graph.cjs +21 -4
  2. package/dist/cjs/graphs/Graph.cjs.map +1 -1
  3. package/dist/cjs/llm/invoke.cjs +21 -6
  4. package/dist/cjs/llm/invoke.cjs.map +1 -1
  5. package/dist/cjs/main.cjs +2 -0
  6. package/dist/cjs/stream.cjs +38 -1
  7. package/dist/cjs/stream.cjs.map +1 -1
  8. package/dist/cjs/tools/BashExecutor.cjs +3 -2
  9. package/dist/cjs/tools/BashExecutor.cjs.map +1 -1
  10. package/dist/cjs/tools/BashProgrammaticToolCalling.cjs +2 -1
  11. package/dist/cjs/tools/BashProgrammaticToolCalling.cjs.map +1 -1
  12. package/dist/cjs/tools/CodeExecutor.cjs +27 -10
  13. package/dist/cjs/tools/CodeExecutor.cjs.map +1 -1
  14. package/dist/cjs/tools/ProgrammaticToolCalling.cjs +6 -5
  15. package/dist/cjs/tools/ProgrammaticToolCalling.cjs.map +1 -1
  16. package/dist/cjs/tools/ToolNode.cjs +95 -18
  17. package/dist/cjs/tools/ToolNode.cjs.map +1 -1
  18. package/dist/cjs/tools/ToolSearch.cjs +130 -24
  19. package/dist/cjs/tools/ToolSearch.cjs.map +1 -1
  20. package/dist/cjs/tools/diagnostics.cjs +26 -0
  21. package/dist/cjs/tools/diagnostics.cjs.map +1 -0
  22. package/dist/cjs/tools/local/resolveLocalExecutionTools.cjs +1 -1
  23. package/dist/cjs/tools/preparedSubagents.cjs +129 -0
  24. package/dist/cjs/tools/preparedSubagents.cjs.map +1 -0
  25. package/dist/cjs/tools/search/rerankers.cjs +6 -4
  26. package/dist/cjs/tools/search/rerankers.cjs.map +1 -1
  27. package/dist/cjs/tools/search/search.cjs +14 -2
  28. package/dist/cjs/tools/search/search.cjs.map +1 -1
  29. package/dist/cjs/tools/search/tool.cjs +1 -1
  30. package/dist/esm/graphs/Graph.mjs +21 -4
  31. package/dist/esm/graphs/Graph.mjs.map +1 -1
  32. package/dist/esm/llm/invoke.mjs +21 -6
  33. package/dist/esm/llm/invoke.mjs.map +1 -1
  34. package/dist/esm/main.mjs +2 -2
  35. package/dist/esm/stream.mjs +39 -2
  36. package/dist/esm/stream.mjs.map +1 -1
  37. package/dist/esm/tools/BashExecutor.mjs +3 -2
  38. package/dist/esm/tools/BashExecutor.mjs.map +1 -1
  39. package/dist/esm/tools/BashProgrammaticToolCalling.mjs +2 -1
  40. package/dist/esm/tools/BashProgrammaticToolCalling.mjs.map +1 -1
  41. package/dist/esm/tools/CodeExecutor.mjs +27 -10
  42. package/dist/esm/tools/CodeExecutor.mjs.map +1 -1
  43. package/dist/esm/tools/ProgrammaticToolCalling.mjs +6 -5
  44. package/dist/esm/tools/ProgrammaticToolCalling.mjs.map +1 -1
  45. package/dist/esm/tools/ToolNode.mjs +95 -18
  46. package/dist/esm/tools/ToolNode.mjs.map +1 -1
  47. package/dist/esm/tools/ToolSearch.mjs +129 -25
  48. package/dist/esm/tools/ToolSearch.mjs.map +1 -1
  49. package/dist/esm/tools/diagnostics.mjs +25 -0
  50. package/dist/esm/tools/diagnostics.mjs.map +1 -0
  51. package/dist/esm/tools/local/resolveLocalExecutionTools.mjs +1 -1
  52. package/dist/esm/tools/preparedSubagents.mjs +128 -0
  53. package/dist/esm/tools/preparedSubagents.mjs.map +1 -0
  54. package/dist/esm/tools/search/rerankers.mjs +6 -5
  55. package/dist/esm/tools/search/rerankers.mjs.map +1 -1
  56. package/dist/esm/tools/search/search.mjs +14 -2
  57. package/dist/esm/tools/search/search.mjs.map +1 -1
  58. package/dist/esm/tools/search/tool.mjs +1 -1
  59. package/dist/types/graphs/Graph.d.ts +6 -1
  60. package/dist/types/tools/CodeExecutor.d.ts +13 -2
  61. package/dist/types/tools/ToolNode.d.ts +13 -1
  62. package/dist/types/tools/ToolSearch.d.ts +46 -2
  63. package/dist/types/tools/diagnostics.d.ts +52 -0
  64. package/dist/types/tools/preparedSubagents.d.ts +26 -0
  65. package/dist/types/tools/search/rerankers.d.ts +10 -0
  66. package/dist/types/types/tools.d.ts +17 -0
  67. package/package.json +3 -2
  68. package/src/graphs/Graph.ts +63 -5
  69. package/src/llm/invoke.ts +35 -8
  70. package/src/stream.ts +70 -1
  71. package/src/tools/BashExecutor.ts +9 -4
  72. package/src/tools/BashProgrammaticToolCalling.ts +6 -3
  73. package/src/tools/CodeExecutor.ts +88 -15
  74. package/src/tools/ProgrammaticToolCalling.ts +24 -12
  75. package/src/tools/ToolNode.ts +189 -43
  76. package/src/tools/ToolSearch.ts +278 -28
  77. package/src/tools/diagnostics.ts +107 -0
  78. package/src/tools/preparedSubagents.ts +228 -0
  79. package/src/tools/search/rerankers.ts +18 -3
  80. package/src/tools/search/search.ts +30 -5
  81. package/src/types/tools.ts +17 -0
@@ -124,6 +124,55 @@ function extractMcpServerName(toolName) {
124
124
  function isFromMcpServer(toolName, serverName) {
125
125
  return extractMcpServerName(toolName) === serverName;
126
126
  }
127
+ function canonicalizeServerName(serverName) {
128
+ return serverName.trim().toLowerCase().normalize("NFC").replace(/[-_. ]+/g, "-");
129
+ }
130
+ function canonicalizeWithoutMcpPrefix(requested) {
131
+ const match = /^mcp[-_. ]+(.+)$/i.exec(requested.trim());
132
+ if (match === null) return;
133
+ const key = canonicalizeServerName(match[1]);
134
+ return key === "" ? void 0 : key;
135
+ }
136
+ function resolveServerFilters(requested, available) {
137
+ const exact = new Set(available);
138
+ const canonical = /* @__PURE__ */ new Map();
139
+ for (const name of available) {
140
+ const key = canonicalizeServerName(name);
141
+ if (key === "") continue;
142
+ const bucket = canonical.get(key);
143
+ if (bucket === void 0) canonical.set(key, [name]);
144
+ else bucket.push(name);
145
+ }
146
+ const resolved = [];
147
+ const unresolved = [];
148
+ for (const want of requested) {
149
+ if (exact.has(want)) {
150
+ resolved.push(want);
151
+ continue;
152
+ }
153
+ const key = canonicalizeServerName(want);
154
+ if (key === "") {
155
+ unresolved.push(want);
156
+ continue;
157
+ }
158
+ const direct = canonical.get(key);
159
+ if (direct !== void 0) {
160
+ resolved.push(...direct);
161
+ continue;
162
+ }
163
+ const strippedKey = canonicalizeWithoutMcpPrefix(want);
164
+ const stripped = strippedKey === void 0 ? void 0 : canonical.get(strippedKey);
165
+ if (stripped !== void 0) {
166
+ resolved.push(...stripped);
167
+ continue;
168
+ }
169
+ unresolved.push(want);
170
+ }
171
+ return {
172
+ resolved: Array.from(new Set(resolved)),
173
+ unresolved
174
+ };
175
+ }
127
176
  function isFromAnyMcpServer(toolName, serverNames) {
128
177
  const toolServer = extractMcpServerName(toolName);
129
178
  if (toolServer === void 0) return false;
@@ -414,7 +463,7 @@ function parseSearchResults(stdout) {
414
463
  const jsonMatch = stdout.trim();
415
464
  return JSON.parse(jsonMatch);
416
465
  }
417
- function formatSearchResults(searchResponse, nameFormat = "full") {
466
+ function formatSearchResults(searchResponse, nameFormat = "full", notes = []) {
418
467
  const { tool_references, total_tools_searched, pattern_used } = searchResponse;
419
468
  const useFullName = nameFormat === "full";
420
469
  const output = {
@@ -426,7 +475,8 @@ function formatSearchResults(searchResponse, nameFormat = "full") {
426
475
  snippet: ref.snippet
427
476
  })),
428
477
  total_searched: total_tools_searched,
429
- query: pattern_used
478
+ query: pattern_used,
479
+ ...notes.length > 0 ? { notes } : {}
430
480
  };
431
481
  return JSON.stringify(output, null, 2);
432
482
  }
@@ -458,7 +508,7 @@ function getDeferredToolsListing(toolRegistry, onlyDeferred) {
458
508
  if (serverNames.length === 0) return "";
459
509
  return serverNames.map((server) => `${server}: ${toolsByServer[server].join(", ")}`).join("\n");
460
510
  }
461
- function formatServerListing(tools, serverNames, nameFormat = "full") {
511
+ function formatServerListing(tools, serverNames, nameFormat = "full", notes = []) {
462
512
  const servers = Array.isArray(serverNames) ? serverNames : [serverNames];
463
513
  const useFullName = nameFormat === "full";
464
514
  if (tools.length === 0) return JSON.stringify({
@@ -466,6 +516,7 @@ function formatServerListing(tools, serverNames, nameFormat = "full") {
466
516
  servers,
467
517
  total_tools: 0,
468
518
  tools_by_server: {},
519
+ ...notes.length > 0 ? { notes } : {},
469
520
  hint: "No tools found from the specified MCP server(s)."
470
521
  }, null, 2);
471
522
  const toolsByServer = {};
@@ -483,6 +534,7 @@ function formatServerListing(tools, serverNames, nameFormat = "full") {
483
534
  servers,
484
535
  total_tools: tools.length,
485
536
  tools_by_server: toolsByServer,
537
+ ...notes.length > 0 ? { notes } : {},
486
538
  hint: `To use a tool, search for it by name (e.g., query: "${exampleToolName}") to load it.`
487
539
  };
488
540
  return JSON.stringify(output, null, 2);
@@ -516,39 +568,89 @@ ${deferredToolsListing}` : "";
516
568
  error: "No tool registry provided"
517
569
  }
518
570
  }];
519
- const deferredTools = Array.from(toolRegistry.values()).filter((lcTool) => {
520
- if (onlyDeferred === true && lcTool.defer_loading !== true) return false;
521
- if (hasServerFilter && !isFromAnyMcpServer(lcTool.name, serverFilters)) return false;
522
- return true;
523
- }).map((lcTool) => ({
571
+ const registeredServers = hasServerFilter ? /* @__PURE__ */ new Set() : void 0;
572
+ const searchableServers = hasServerFilter ? /* @__PURE__ */ new Set() : void 0;
573
+ const staged = hasServerFilter ? [] : void 0;
574
+ const deferredTools = [];
575
+ let searchableCount = 0;
576
+ const describeTool = (lcTool) => ({
524
577
  name: lcTool.name,
525
578
  description: lcTool.description ?? "",
526
579
  parameters: simplifyParametersForSearch(lcTool.parameters)
527
- }));
528
- if (deferredTools.length === 0) return [`No tools available to search${hasServerFilter ? ` from MCP server(s): ${serverFilters.join(", ")}` : ""}. The tool registry is empty or no matching deferred tools are registered.`, {
529
- tool_references: [],
530
- metadata: {
531
- total_searched: 0,
532
- pattern: query,
533
- mcp_server: serverFilters
580
+ });
581
+ for (const lcTool of toolRegistry.values()) {
582
+ let server;
583
+ if (hasServerFilter) {
584
+ server = extractMcpServerName(lcTool.name);
585
+ if (server !== void 0 && server !== "") registeredServers?.add(server);
586
+ else server = void 0;
534
587
  }
535
- }];
536
- if (hasServerFilter && query === "") return [formatServerListing(deferredTools, serverFilters, mcpNameFormat), {
588
+ if (onlyDeferred === true && lcTool.defer_loading !== true) continue;
589
+ searchableCount += 1;
590
+ if (staged === void 0) {
591
+ deferredTools.push(describeTool(lcTool));
592
+ continue;
593
+ }
594
+ staged.push(lcTool);
595
+ if (server !== void 0) searchableServers?.add(server);
596
+ }
597
+ const availableServers = searchableServers === void 0 ? [] : Array.from(searchableServers).sort();
598
+ const { resolved: matchedServers, unresolved: unknownServers } = hasServerFilter ? resolveServerFilters(serverFilters, registeredServers === void 0 ? [] : Array.from(registeredServers)) : {
599
+ resolved: [],
600
+ unresolved: []
601
+ };
602
+ const activeServers = matchedServers.filter((name) => searchableServers?.has(name) === true);
603
+ const idleServers = matchedServers.filter((name) => searchableServers?.has(name) !== true);
604
+ const filterNotes = [];
605
+ if (unknownServers.length > 0) filterNotes.push(`No MCP server matched: ${unknownServers.join(", ")}.`);
606
+ if (idleServers.length > 0) filterNotes.push(`Registered with no tools left to search: ${idleServers.join(", ")}.`);
607
+ const filterNotice = filterNotes.length > 0 ? `Note: ${filterNotes.join(" ")}\n\n` : "";
608
+ const filterMetadata = {
609
+ ...unknownServers.length > 0 ? { unmatched_mcp_servers: unknownServers } : {},
610
+ ...idleServers.length > 0 ? { idle_mcp_servers: idleServers } : {}
611
+ };
612
+ if (staged !== void 0) {
613
+ for (const lcTool of staged) if (isFromAnyMcpServer(lcTool.name, activeServers)) deferredTools.push(describeTool(lcTool));
614
+ }
615
+ if (deferredTools.length === 0) {
616
+ let message;
617
+ if (hasServerFilter && (unknownServers.length > 0 || idleServers.length > 0)) {
618
+ const parts = [];
619
+ if (unknownServers.length > 0) parts.push(`No MCP server matched: ${unknownServers.join(", ")}.`);
620
+ if (idleServers.length > 0) parts.push(`Registered with no tools left to search: ${idleServers.join(", ")}.`);
621
+ parts.push(`Server(s) with searchable tools: ${availableServers.length > 0 ? availableServers.join(", ") : "(none)"}.`);
622
+ message = parts.join(" ");
623
+ } else if (searchableCount === 0) message = "No tools available to search. The tool registry is empty or no deferred tools are registered.";
624
+ else message = `No tools available to search${hasServerFilter ? ` from MCP server(s): ${serverFilters.join(", ")}` : ""}. The tool registry is empty or no matching deferred tools are registered.`;
625
+ return [message, {
626
+ tool_references: [],
627
+ metadata: {
628
+ total_searched: 0,
629
+ pattern: query,
630
+ mcp_server: serverFilters,
631
+ ...hasServerFilter ? { available_mcp_servers: availableServers } : {},
632
+ ...filterMetadata
633
+ }
634
+ }];
635
+ }
636
+ if (hasServerFilter && query === "") return [formatServerListing(deferredTools, activeServers, mcpNameFormat, filterNotes), {
537
637
  tool_references: [],
538
638
  metadata: {
539
639
  total_available: deferredTools.length,
540
640
  mcp_server: serverFilters,
541
- listing_mode: true
641
+ listing_mode: true,
642
+ ...filterMetadata
542
643
  }
543
644
  }];
544
645
  if (mode === "local") {
545
646
  const searchResponse = performLocalSearch(deferredTools, query, fields, max_results);
546
- return [formatSearchResults(searchResponse, mcpNameFormat), {
647
+ return [formatSearchResults(searchResponse, mcpNameFormat, filterNotes), {
547
648
  tool_references: searchResponse.tool_references,
548
649
  metadata: {
549
650
  total_searched: searchResponse.total_tools_searched,
550
651
  pattern: searchResponse.pattern_used,
551
- mcp_server: serverFilters.length > 0 ? serverFilters : void 0
652
+ mcp_server: serverFilters.length > 0 ? serverFilters : void 0,
653
+ ...filterMetadata
552
654
  }
553
655
  }];
554
656
  }
@@ -575,19 +677,21 @@ ${deferredToolsListing}` : "";
575
677
  if (!response.ok) throw new Error(`HTTP error! status: ${response.status}`);
576
678
  const result = await response.json();
577
679
  if (result.stderr && result.stderr.trim()) console.warn("[ToolSearch] stderr:", result.stderr);
578
- if (!result.stdout || !result.stdout.trim()) return [`${warningMessage}No tools matched the pattern "${sanitizedPattern}".\nTotal tools searched: ${deferredTools.length}`, {
680
+ if (!result.stdout || !result.stdout.trim()) return [`${filterNotice}${warningMessage}No tools matched the pattern "${sanitizedPattern}".\nTotal tools searched: ${deferredTools.length}`, {
579
681
  tool_references: [],
580
682
  metadata: {
581
683
  total_searched: deferredTools.length,
582
- pattern: sanitizedPattern
684
+ pattern: sanitizedPattern,
685
+ ...filterMetadata
583
686
  }
584
687
  }];
585
688
  const searchResponse = parseSearchResults(result.stdout);
586
- return [`${warningMessage}${formatSearchResults(searchResponse, mcpNameFormat)}`, {
689
+ return [`${warningMessage}${formatSearchResults(searchResponse, mcpNameFormat, filterNotes)}`, {
587
690
  tool_references: searchResponse.tool_references,
588
691
  metadata: {
589
692
  total_searched: searchResponse.total_tools_searched,
590
- pattern: searchResponse.pattern_used
693
+ pattern: searchResponse.pattern_used,
694
+ ...filterMetadata
591
695
  }
592
696
  }];
593
697
  } catch (error) {
@@ -616,6 +720,6 @@ ${mcpNote}${toolsListSection}
616
720
  });
617
721
  }
618
722
  //#endregion
619
- export { ToolSearchToolDefinition, ToolSearchToolDescription, ToolSearchToolName, ToolSearchToolSchema, countNestedGroups, createToolSearch, escapeRegexSpecialChars, extractMcpServerName, formatServerListing, getAvailableMcpServers, getBaseToolName, getDeferredToolsListing, hasNestedQuantifiers, isDangerousPattern, isFromAnyMcpServer, isFromMcpServer, normalizeServerFilter, performLocalSearch, sanitizeRegex };
723
+ export { ToolSearchToolDefinition, ToolSearchToolDescription, ToolSearchToolName, ToolSearchToolSchema, canonicalizeServerName, countNestedGroups, createToolSearch, escapeRegexSpecialChars, extractMcpServerName, formatServerListing, getAvailableMcpServers, getBaseToolName, getDeferredToolsListing, hasNestedQuantifiers, isDangerousPattern, isFromAnyMcpServer, isFromMcpServer, normalizeServerFilter, performLocalSearch, resolveServerFilters, sanitizeRegex };
620
724
 
621
725
  //# sourceMappingURL=ToolSearch.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ToolSearch.mjs","names":["params"],"sources":["../../../src/tools/ToolSearch.ts"],"mappings":"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"}
1
+ {"version":3,"file":"ToolSearch.mjs","names":["params"],"sources":["../../../src/tools/ToolSearch.ts"],"mappings":"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BAAkB;GACpB,OAAO,IACL,mBAAmB,mBACnB,mBAAmB,iBACnB;IACA,qBAAqB;IACrB,kBAAkB;GACpB,OAAO,IAAI,eAAe,WAAW,eAAe,GAAG;IACrD,qBAAqB;IACrB,kBAAkB,KAAK,IAAI,iBAAiB,GAAI;GAClD;EACF;EAEA,IAAI,CAAC,kBAAkB,uBAAuB,GAAG;EAEjD,MAAM,EAAE,OAAO,YAAY,iBAAiB,MAAM,IAAI,aAAa,MAAM;EACzE,QAAQ,KAAK;GACX,QAAQ;IACN,WAAW,MAAM,EAAE,CAAC;IACpB,aAAa;IACb,eAAe;IACf;GACF;GACA;EACF,CAAC;CACH;CAEA,QAAQ,MACL,GAAG,MACF,EAAE,qBAAqB,EAAE,sBACzB,EAAE,OAAO,cAAc,EAAE,OAAO,WACpC;CAGA,OAAO;EACL,iBAHiB,QAAQ,MAAM,GAAG,UAAU,CAAC,CAAC,KAAK,EAAE,aAAa,MAGxC;EAC1B,sBAAsB,MAAM;EAC5B,cAAc;CAChB;AACF;AAWA,SAAS,qBACP,eACA,QACA,YACA,kBACQ;CAiFR,OAAO;EA/EL;EACA,iBAAiB,KAAK,UAAU,aAAa,IAAI;EACjD,wBAAwB,KAAK,UAAU,MAAM,IAAI;EACjD,sBAAsB,aAAa;EACnC,mBAAmB,KAAK,UAAU,gBAAgB,IAAI;EACtD;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CAES,CAAC,CAAC,KAAK,IAAI;AACxB;AAOA,SAAS,mBAAmB,QAAsC;CAChE,MAAM,YAAY,OAAO,KAAK;CAE9B,OADe,KAAK,MAAM,SACd;AACd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"}
@@ -0,0 +1,25 @@
1
+ //#region src/tools/diagnostics.ts
2
+ const KNOWN_ERROR_TYPES = [
3
+ ["SyntaxError", SyntaxError],
4
+ ["TypeError", TypeError],
5
+ ["RangeError", RangeError],
6
+ ["ReferenceError", ReferenceError],
7
+ ["URIError", URIError],
8
+ ["EvalError", EvalError]
9
+ ];
10
+ function describeCodeApiError(error) {
11
+ try {
12
+ if (!(error instanceof Error)) return { type: typeof error };
13
+ for (const [label, constructor] of KNOWN_ERROR_TYPES) if (error instanceof constructor) return { type: label };
14
+ return { type: "Error" };
15
+ } catch {
16
+ return { type: "UndescribableError" };
17
+ }
18
+ }
19
+ function logCodeApiDiagnostic(source, level, message, detail) {
20
+ console[level](`[${source}] ${message}`, detail);
21
+ }
22
+ //#endregion
23
+ export { describeCodeApiError, logCodeApiDiagnostic };
24
+
25
+ //# sourceMappingURL=diagnostics.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostics.mjs","names":[],"sources":["../../../src/tools/diagnostics.ts"],"mappings":";AA2BA,MAAM,oBAEF;CACF,CAAC,eAAe,WAAW;CAC3B,CAAC,aAAa,SAAS;CACvB,CAAC,cAAc,UAAU;CACzB,CAAC,kBAAkB,cAAc;CACjC,CAAC,YAAY,QAAQ;CACrB,CAAC,aAAa,SAAS;AACzB;AAiCA,SAAgB,qBAAqB,OAEnC;CACA,IAAI;EACF,IAAI,EAAE,iBAAiB,QACrB,OAAO,EAAE,MAAM,OAAO,MAAM;EAE9B,KAAK,MAAM,CAAC,OAAO,gBAAgB,mBACjC,IAAI,iBAAiB,aACnB,OAAO,EAAE,MAAM,MAAM;EAGzB,OAAO,EAAE,MAAM,QAAQ;CACzB,QAAQ;EACN,OAAO,EAAE,MAAM,qBAAqB;CACtC;AACF;AAaA,SAAgB,qBACd,QACA,OACA,SACA,QACM;CAEN,QAAQ,MAAM,CAAC,IAAI,OAAO,IAAI,WAAW,MAAM;AACjD"}
@@ -1,11 +1,11 @@
1
1
  import { CODE_EXECUTION_TOOLS, LOCAL_CODING_BUNDLE_NAMES } from "../../common/enum.mjs";
2
2
  import "../../common/index.mjs";
3
+ import { allowsToolCaller, isToolDefinitionActive } from "../CallerCapabilities.mjs";
3
4
  import { createLocalBashProgrammaticToolCallingTool, createLocalProgrammaticToolCallingTool } from "./LocalProgrammaticToolCalling.mjs";
4
5
  import { createLocalBashExecutionTool, createLocalCodeExecutionTool } from "./LocalExecutionTools.mjs";
5
6
  import { createLocalCodingToolBundle, createLocalCodingToolDefinitions, createLocalCodingTools } from "./LocalCodingTools.mjs";
6
7
  import { CLOUDFLARE_CODING_TOOL_NAMES, createCloudflareCodingToolBundle, createCloudflareCodingTools, createCloudflareExecutionTool } from "../cloudflare/CloudflareSandboxTools.mjs";
7
8
  import "../cloudflare/index.mjs";
8
- import { allowsToolCaller, isToolDefinitionActive } from "../CallerCapabilities.mjs";
9
9
  //#region src/tools/local/resolveLocalExecutionTools.ts
10
10
  function shouldUseLocalExecution(config) {
11
11
  return config?.engine === "local";
@@ -0,0 +1,128 @@
1
+ import { normalizeError, stableStringify } from "./eagerEventExecution.mjs";
2
+ //#region src/tools/preparedSubagents.ts
3
+ var PreparedSubagentError = class extends Error {
4
+ constructor(message, options) {
5
+ super(message, options);
6
+ this.name = "PreparedSubagentError";
7
+ }
8
+ };
9
+ const PREPARED_INVOCATION = Symbol("prepared-subagent-invocation");
10
+ var PreparedSubagents = class {
11
+ attempts = /* @__PURE__ */ new Map();
12
+ reservations = /* @__PURE__ */ new Map();
13
+ running = /* @__PURE__ */ new Set();
14
+ epoch = 0;
15
+ begin(attempt, config = {}) {
16
+ this.attempts.set(attempt, {
17
+ keys: /* @__PURE__ */ new Set(),
18
+ cancelled: false,
19
+ config: {
20
+ ...config,
21
+ configurable: { ...config.configurable },
22
+ metadata: { ...config.metadata }
23
+ }
24
+ });
25
+ }
26
+ getConfig(attempt) {
27
+ const entry = this.attempts.get(attempt);
28
+ return entry?.cancelled === false ? entry.config : void 0;
29
+ }
30
+ isOpen(attempt) {
31
+ return this.attempts.get(attempt)?.cancelled === false;
32
+ }
33
+ start(attempt, owner, call, capacity, invoke) {
34
+ const entries = this.attempts.get(attempt);
35
+ if (entries == null || entries.cancelled || call.id == null || call.id === "") return false;
36
+ const key = JSON.stringify([owner, call.id]);
37
+ const canonical = fingerprint(call);
38
+ const previous = this.reservations.get(key);
39
+ if (previous != null) {
40
+ if (previous.attempt !== attempt || previous.fingerprint !== canonical) throw new PreparedSubagentError("Conflicting eager subagent call identity.");
41
+ return false;
42
+ }
43
+ if (!Number.isSafeInteger(capacity) || capacity <= 0 || this.reservations.size >= capacity || this.running.size >= capacity) return false;
44
+ const controller = new AbortController();
45
+ this.running.add(controller);
46
+ const reservation = {
47
+ token: Symbol(),
48
+ attempt,
49
+ callId: call.id,
50
+ fingerprint: canonical,
51
+ controller,
52
+ committed: false,
53
+ outcome: Promise.resolve().then(() => {
54
+ controller.signal.throwIfAborted();
55
+ return invoke(controller.signal);
56
+ }).then((output) => ({ output }), (error) => ({ error: normalizeError(error) })).finally(() => {
57
+ this.running.delete(controller);
58
+ })
59
+ };
60
+ entries.keys.add(key);
61
+ this.reservations.set(key, reservation);
62
+ return true;
63
+ }
64
+ finish(attempt, calls, cause) {
65
+ const entries = this.attempts.get(attempt);
66
+ this.attempts.delete(attempt);
67
+ if (entries == null || entries.keys.size === 0) return;
68
+ const finalCalls = new Map(calls?.map((call) => [call.id, call]));
69
+ for (const key of entries.keys) {
70
+ const record = this.reservations.get(key);
71
+ const finalCall = record == null ? void 0 : finalCalls.get(record.callId);
72
+ if (entries.cancelled || record == null || record.attempt !== attempt || finalCall == null || fingerprint(finalCall) !== record.fingerprint) {
73
+ const error = new PreparedSubagentError("The model attempt ended or changed after a subagent started; refusing automatic retry.", { cause });
74
+ for (const pendingKey of entries.keys) {
75
+ const pending = this.reservations.get(pendingKey);
76
+ if (pending?.attempt === attempt) {
77
+ pending.controller.abort(error);
78
+ this.reservations.delete(pendingKey);
79
+ }
80
+ }
81
+ throw error;
82
+ }
83
+ record.committed = true;
84
+ finalCall[PREPARED_INVOCATION] = record.token;
85
+ }
86
+ }
87
+ owns(owner, call) {
88
+ const record = this.reservations.get(JSON.stringify([owner, call.id]));
89
+ return record != null && call[PREPARED_INVOCATION] === record.token;
90
+ }
91
+ take(owner, call) {
92
+ const key = JSON.stringify([owner, call.id]);
93
+ const record = this.reservations.get(key);
94
+ const token = call[PREPARED_INVOCATION];
95
+ if (record == null && token == null) return;
96
+ if (record == null || token !== record.token) return Promise.reject(new PreparedSubagentError("Eager subagent invocation is no longer owned by this call."));
97
+ this.reservations.delete(key);
98
+ if (!record.committed || record.fingerprint !== fingerprint(call)) {
99
+ const error = new PreparedSubagentError("Subagent arguments changed after eager invocation.");
100
+ record.controller.abort(error);
101
+ return Promise.reject(error);
102
+ }
103
+ const epoch = this.epoch;
104
+ return record.outcome.then((result) => {
105
+ if (this.epoch !== epoch) throw new PreparedSubagentError("Eager subagent result belongs to a retired run.");
106
+ record.controller.signal.throwIfAborted();
107
+ if ("error" in result) throw result.error;
108
+ return result.output;
109
+ });
110
+ }
111
+ clear() {
112
+ this.epoch++;
113
+ const reason = new PreparedSubagentError("Eager subagent execution was cancelled.");
114
+ for (const controller of this.running) controller.abort(reason);
115
+ this.reservations.clear();
116
+ for (const attempt of this.attempts.values()) attempt.cancelled = true;
117
+ }
118
+ };
119
+ function fingerprint(call) {
120
+ return stableStringify({
121
+ name: call.name,
122
+ args: call.args
123
+ });
124
+ }
125
+ //#endregion
126
+ export { PreparedSubagentError, PreparedSubagents };
127
+
128
+ //# sourceMappingURL=preparedSubagents.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preparedSubagents.mjs","names":[],"sources":["../../../src/tools/preparedSubagents.ts"],"mappings":"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"}
@@ -7,6 +7,10 @@ const DEFAULT_COHERE_API_URL = "https://api.cohere.com/v2/rerank";
7
7
  const DEFAULT_RERANKER_TIMEOUT = 1e4;
8
8
  const getDefaultJinaApiUrl = () => process.env.JINA_API_URL != null && process.env.JINA_API_URL !== "" ? process.env.JINA_API_URL : DEFAULT_JINA_API_URL;
9
9
  const getDefaultCohereApiUrl = () => process.env.COHERE_API_URL != null && process.env.COHERE_API_URL !== "" ? process.env.COHERE_API_URL : DEFAULT_COHERE_API_URL;
10
+ const getDefaultRanking = (documents, topK) => documents.slice(0, Math.min(topK, documents.length)).map((doc) => ({
11
+ text: doc,
12
+ score: 0
13
+ }));
10
14
  var BaseReranker = class {
11
15
  apiKey;
12
16
  logger;
@@ -15,10 +19,7 @@ var BaseReranker = class {
15
19
  this.logger = logger || createDefaultLogger();
16
20
  }
17
21
  getDefaultRanking(documents, topK) {
18
- return documents.slice(0, Math.min(topK, documents.length)).map((doc) => ({
19
- text: doc,
20
- score: 0
21
- }));
22
+ return getDefaultRanking(documents, topK);
22
23
  }
23
24
  localMetrics() {
24
25
  this.ownMetrics ??= createSearchMetrics(this.logger, true);
@@ -318,6 +319,6 @@ const createReranker = (config) => {
318
319
  }
319
320
  };
320
321
  //#endregion
321
- export { createReranker };
322
+ export { createReranker, getDefaultRanking };
322
323
 
323
324
  //# sourceMappingURL=rerankers.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"rerankers.mjs","names":[],"sources":["../../../../src/tools/search/rerankers.ts"],"mappings":"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"}
1
+ {"version":3,"file":"rerankers.mjs","names":[],"sources":["../../../../src/tools/search/rerankers.ts"],"mappings":"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"}
@@ -3,6 +3,7 @@ import { createKeenableAPI } from "./keenable-search.mjs";
3
3
  import { createTavilyAPI } from "./tavily-search.mjs";
4
4
  import { createSearchMetrics } from "./metrics.mjs";
5
5
  import { createCrwAPI } from "./crw-search.mjs";
6
+ import { getDefaultRanking } from "./rerankers.mjs";
6
7
  import axios from "axios";
7
8
  import { RecursiveCharacterTextSplitter } from "@langchain/textsplitters";
8
9
  //#region src/tools/search/search.ts
@@ -66,15 +67,16 @@ function createSourceUpdateCallback(sourceMap) {
66
67
  });
67
68
  };
68
69
  }
70
+ const NO_RERANKER_PROVIDER = "none";
69
71
  const getHighlights = async ({ query, content, reranker, metrics, topResults = 5, maxContentLength = DEFAULT_MAX_CONTENT_LENGTH, chunkOptions }) => {
70
- if (!content || !reranker) return;
72
+ if (!content) return;
71
73
  const chunkStartedAt = Date.now();
72
74
  let documents;
73
75
  try {
74
76
  documents = await chunker.splitText(truncateContent(content, maxContentLength), chunkOptions);
75
77
  } catch (error) {
76
78
  metrics.recordRerank({
77
- provider: reranker.provider,
79
+ provider: reranker?.provider ?? NO_RERANKER_PROVIDER,
78
80
  chunks: 0,
79
81
  results: 0,
80
82
  durationMs: Date.now() - chunkStartedAt,
@@ -83,6 +85,16 @@ const getHighlights = async ({ query, content, reranker, metrics, topResults = 5
83
85
  });
84
86
  return;
85
87
  }
88
+ if (!reranker) {
89
+ const highlights = getDefaultRanking(documents, topResults);
90
+ metrics.recordRerank({
91
+ provider: NO_RERANKER_PROVIDER,
92
+ chunks: documents.length,
93
+ results: highlights.length,
94
+ durationMs: Date.now() - chunkStartedAt
95
+ });
96
+ return highlights;
97
+ }
86
98
  const rerankStartedAt = Date.now();
87
99
  try {
88
100
  return await reranker.rerank(query, documents, topResults, metrics);