@librechat/agents 3.7.21 → 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.
- package/dist/cjs/graphs/Graph.cjs +21 -4
- package/dist/cjs/graphs/Graph.cjs.map +1 -1
- package/dist/cjs/llm/invoke.cjs +21 -6
- package/dist/cjs/llm/invoke.cjs.map +1 -1
- package/dist/cjs/main.cjs +2 -0
- package/dist/cjs/stream.cjs +38 -1
- package/dist/cjs/stream.cjs.map +1 -1
- package/dist/cjs/tools/ToolNode.cjs +95 -18
- package/dist/cjs/tools/ToolNode.cjs.map +1 -1
- package/dist/cjs/tools/ToolSearch.cjs +130 -24
- package/dist/cjs/tools/ToolSearch.cjs.map +1 -1
- package/dist/cjs/tools/local/resolveLocalExecutionTools.cjs +1 -1
- package/dist/cjs/tools/preparedSubagents.cjs +129 -0
- package/dist/cjs/tools/preparedSubagents.cjs.map +1 -0
- package/dist/esm/graphs/Graph.mjs +21 -4
- package/dist/esm/graphs/Graph.mjs.map +1 -1
- package/dist/esm/llm/invoke.mjs +21 -6
- package/dist/esm/llm/invoke.mjs.map +1 -1
- package/dist/esm/main.mjs +2 -2
- package/dist/esm/stream.mjs +39 -2
- package/dist/esm/stream.mjs.map +1 -1
- package/dist/esm/tools/ToolNode.mjs +95 -18
- package/dist/esm/tools/ToolNode.mjs.map +1 -1
- package/dist/esm/tools/ToolSearch.mjs +129 -25
- package/dist/esm/tools/ToolSearch.mjs.map +1 -1
- package/dist/esm/tools/local/resolveLocalExecutionTools.mjs +1 -1
- package/dist/esm/tools/preparedSubagents.mjs +128 -0
- package/dist/esm/tools/preparedSubagents.mjs.map +1 -0
- package/dist/types/graphs/Graph.d.ts +6 -1
- package/dist/types/tools/ToolNode.d.ts +13 -1
- package/dist/types/tools/ToolSearch.d.ts +46 -2
- package/dist/types/tools/preparedSubagents.d.ts +26 -0
- package/dist/types/types/tools.d.ts +17 -0
- package/package.json +1 -1
- package/src/graphs/Graph.ts +63 -5
- package/src/llm/invoke.ts +35 -8
- package/src/stream.ts +70 -1
- package/src/tools/ToolNode.ts +189 -43
- package/src/tools/ToolSearch.ts +278 -28
- package/src/tools/preparedSubagents.ts +228 -0
- package/src/types/tools.ts +17 -0
|
@@ -127,6 +127,55 @@ function extractMcpServerName(toolName) {
|
|
|
127
127
|
function isFromMcpServer(toolName, serverName) {
|
|
128
128
|
return extractMcpServerName(toolName) === serverName;
|
|
129
129
|
}
|
|
130
|
+
function canonicalizeServerName(serverName) {
|
|
131
|
+
return serverName.trim().toLowerCase().normalize("NFC").replace(/[-_. ]+/g, "-");
|
|
132
|
+
}
|
|
133
|
+
function canonicalizeWithoutMcpPrefix(requested) {
|
|
134
|
+
const match = /^mcp[-_. ]+(.+)$/i.exec(requested.trim());
|
|
135
|
+
if (match === null) return;
|
|
136
|
+
const key = canonicalizeServerName(match[1]);
|
|
137
|
+
return key === "" ? void 0 : key;
|
|
138
|
+
}
|
|
139
|
+
function resolveServerFilters(requested, available) {
|
|
140
|
+
const exact = new Set(available);
|
|
141
|
+
const canonical = /* @__PURE__ */ new Map();
|
|
142
|
+
for (const name of available) {
|
|
143
|
+
const key = canonicalizeServerName(name);
|
|
144
|
+
if (key === "") continue;
|
|
145
|
+
const bucket = canonical.get(key);
|
|
146
|
+
if (bucket === void 0) canonical.set(key, [name]);
|
|
147
|
+
else bucket.push(name);
|
|
148
|
+
}
|
|
149
|
+
const resolved = [];
|
|
150
|
+
const unresolved = [];
|
|
151
|
+
for (const want of requested) {
|
|
152
|
+
if (exact.has(want)) {
|
|
153
|
+
resolved.push(want);
|
|
154
|
+
continue;
|
|
155
|
+
}
|
|
156
|
+
const key = canonicalizeServerName(want);
|
|
157
|
+
if (key === "") {
|
|
158
|
+
unresolved.push(want);
|
|
159
|
+
continue;
|
|
160
|
+
}
|
|
161
|
+
const direct = canonical.get(key);
|
|
162
|
+
if (direct !== void 0) {
|
|
163
|
+
resolved.push(...direct);
|
|
164
|
+
continue;
|
|
165
|
+
}
|
|
166
|
+
const strippedKey = canonicalizeWithoutMcpPrefix(want);
|
|
167
|
+
const stripped = strippedKey === void 0 ? void 0 : canonical.get(strippedKey);
|
|
168
|
+
if (stripped !== void 0) {
|
|
169
|
+
resolved.push(...stripped);
|
|
170
|
+
continue;
|
|
171
|
+
}
|
|
172
|
+
unresolved.push(want);
|
|
173
|
+
}
|
|
174
|
+
return {
|
|
175
|
+
resolved: Array.from(new Set(resolved)),
|
|
176
|
+
unresolved
|
|
177
|
+
};
|
|
178
|
+
}
|
|
130
179
|
function isFromAnyMcpServer(toolName, serverNames) {
|
|
131
180
|
const toolServer = extractMcpServerName(toolName);
|
|
132
181
|
if (toolServer === void 0) return false;
|
|
@@ -417,7 +466,7 @@ function parseSearchResults(stdout) {
|
|
|
417
466
|
const jsonMatch = stdout.trim();
|
|
418
467
|
return JSON.parse(jsonMatch);
|
|
419
468
|
}
|
|
420
|
-
function formatSearchResults(searchResponse, nameFormat = "full") {
|
|
469
|
+
function formatSearchResults(searchResponse, nameFormat = "full", notes = []) {
|
|
421
470
|
const { tool_references, total_tools_searched, pattern_used } = searchResponse;
|
|
422
471
|
const useFullName = nameFormat === "full";
|
|
423
472
|
const output = {
|
|
@@ -429,7 +478,8 @@ function formatSearchResults(searchResponse, nameFormat = "full") {
|
|
|
429
478
|
snippet: ref.snippet
|
|
430
479
|
})),
|
|
431
480
|
total_searched: total_tools_searched,
|
|
432
|
-
query: pattern_used
|
|
481
|
+
query: pattern_used,
|
|
482
|
+
...notes.length > 0 ? { notes } : {}
|
|
433
483
|
};
|
|
434
484
|
return JSON.stringify(output, null, 2);
|
|
435
485
|
}
|
|
@@ -461,7 +511,7 @@ function getDeferredToolsListing(toolRegistry, onlyDeferred) {
|
|
|
461
511
|
if (serverNames.length === 0) return "";
|
|
462
512
|
return serverNames.map((server) => `${server}: ${toolsByServer[server].join(", ")}`).join("\n");
|
|
463
513
|
}
|
|
464
|
-
function formatServerListing(tools, serverNames, nameFormat = "full") {
|
|
514
|
+
function formatServerListing(tools, serverNames, nameFormat = "full", notes = []) {
|
|
465
515
|
const servers = Array.isArray(serverNames) ? serverNames : [serverNames];
|
|
466
516
|
const useFullName = nameFormat === "full";
|
|
467
517
|
if (tools.length === 0) return JSON.stringify({
|
|
@@ -469,6 +519,7 @@ function formatServerListing(tools, serverNames, nameFormat = "full") {
|
|
|
469
519
|
servers,
|
|
470
520
|
total_tools: 0,
|
|
471
521
|
tools_by_server: {},
|
|
522
|
+
...notes.length > 0 ? { notes } : {},
|
|
472
523
|
hint: "No tools found from the specified MCP server(s)."
|
|
473
524
|
}, null, 2);
|
|
474
525
|
const toolsByServer = {};
|
|
@@ -486,6 +537,7 @@ function formatServerListing(tools, serverNames, nameFormat = "full") {
|
|
|
486
537
|
servers,
|
|
487
538
|
total_tools: tools.length,
|
|
488
539
|
tools_by_server: toolsByServer,
|
|
540
|
+
...notes.length > 0 ? { notes } : {},
|
|
489
541
|
hint: `To use a tool, search for it by name (e.g., query: "${exampleToolName}") to load it.`
|
|
490
542
|
};
|
|
491
543
|
return JSON.stringify(output, null, 2);
|
|
@@ -526,39 +578,89 @@ ${mcpNote}${toolsListSection}
|
|
|
526
578
|
error: "No tool registry provided"
|
|
527
579
|
}
|
|
528
580
|
}];
|
|
529
|
-
const
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
581
|
+
const registeredServers = hasServerFilter ? /* @__PURE__ */ new Set() : void 0;
|
|
582
|
+
const searchableServers = hasServerFilter ? /* @__PURE__ */ new Set() : void 0;
|
|
583
|
+
const staged = hasServerFilter ? [] : void 0;
|
|
584
|
+
const deferredTools = [];
|
|
585
|
+
let searchableCount = 0;
|
|
586
|
+
const describeTool = (lcTool) => ({
|
|
534
587
|
name: lcTool.name,
|
|
535
588
|
description: lcTool.description ?? "",
|
|
536
589
|
parameters: simplifyParametersForSearch(lcTool.parameters)
|
|
537
|
-
})
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
590
|
+
});
|
|
591
|
+
for (const lcTool of toolRegistry.values()) {
|
|
592
|
+
let server;
|
|
593
|
+
if (hasServerFilter) {
|
|
594
|
+
server = extractMcpServerName(lcTool.name);
|
|
595
|
+
if (server !== void 0 && server !== "") registeredServers?.add(server);
|
|
596
|
+
else server = void 0;
|
|
544
597
|
}
|
|
545
|
-
|
|
546
|
-
|
|
598
|
+
if (onlyDeferred === true && lcTool.defer_loading !== true) continue;
|
|
599
|
+
searchableCount += 1;
|
|
600
|
+
if (staged === void 0) {
|
|
601
|
+
deferredTools.push(describeTool(lcTool));
|
|
602
|
+
continue;
|
|
603
|
+
}
|
|
604
|
+
staged.push(lcTool);
|
|
605
|
+
if (server !== void 0) searchableServers?.add(server);
|
|
606
|
+
}
|
|
607
|
+
const availableServers = searchableServers === void 0 ? [] : Array.from(searchableServers).sort();
|
|
608
|
+
const { resolved: matchedServers, unresolved: unknownServers } = hasServerFilter ? resolveServerFilters(serverFilters, registeredServers === void 0 ? [] : Array.from(registeredServers)) : {
|
|
609
|
+
resolved: [],
|
|
610
|
+
unresolved: []
|
|
611
|
+
};
|
|
612
|
+
const activeServers = matchedServers.filter((name) => searchableServers?.has(name) === true);
|
|
613
|
+
const idleServers = matchedServers.filter((name) => searchableServers?.has(name) !== true);
|
|
614
|
+
const filterNotes = [];
|
|
615
|
+
if (unknownServers.length > 0) filterNotes.push(`No MCP server matched: ${unknownServers.join(", ")}.`);
|
|
616
|
+
if (idleServers.length > 0) filterNotes.push(`Registered with no tools left to search: ${idleServers.join(", ")}.`);
|
|
617
|
+
const filterNotice = filterNotes.length > 0 ? `Note: ${filterNotes.join(" ")}\n\n` : "";
|
|
618
|
+
const filterMetadata = {
|
|
619
|
+
...unknownServers.length > 0 ? { unmatched_mcp_servers: unknownServers } : {},
|
|
620
|
+
...idleServers.length > 0 ? { idle_mcp_servers: idleServers } : {}
|
|
621
|
+
};
|
|
622
|
+
if (staged !== void 0) {
|
|
623
|
+
for (const lcTool of staged) if (isFromAnyMcpServer(lcTool.name, activeServers)) deferredTools.push(describeTool(lcTool));
|
|
624
|
+
}
|
|
625
|
+
if (deferredTools.length === 0) {
|
|
626
|
+
let message;
|
|
627
|
+
if (hasServerFilter && (unknownServers.length > 0 || idleServers.length > 0)) {
|
|
628
|
+
const parts = [];
|
|
629
|
+
if (unknownServers.length > 0) parts.push(`No MCP server matched: ${unknownServers.join(", ")}.`);
|
|
630
|
+
if (idleServers.length > 0) parts.push(`Registered with no tools left to search: ${idleServers.join(", ")}.`);
|
|
631
|
+
parts.push(`Server(s) with searchable tools: ${availableServers.length > 0 ? availableServers.join(", ") : "(none)"}.`);
|
|
632
|
+
message = parts.join(" ");
|
|
633
|
+
} else if (searchableCount === 0) message = "No tools available to search. The tool registry is empty or no deferred tools are registered.";
|
|
634
|
+
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.`;
|
|
635
|
+
return [message, {
|
|
636
|
+
tool_references: [],
|
|
637
|
+
metadata: {
|
|
638
|
+
total_searched: 0,
|
|
639
|
+
pattern: query,
|
|
640
|
+
mcp_server: serverFilters,
|
|
641
|
+
...hasServerFilter ? { available_mcp_servers: availableServers } : {},
|
|
642
|
+
...filterMetadata
|
|
643
|
+
}
|
|
644
|
+
}];
|
|
645
|
+
}
|
|
646
|
+
if (hasServerFilter && query === "") return [formatServerListing(deferredTools, activeServers, mcpNameFormat, filterNotes), {
|
|
547
647
|
tool_references: [],
|
|
548
648
|
metadata: {
|
|
549
649
|
total_available: deferredTools.length,
|
|
550
650
|
mcp_server: serverFilters,
|
|
551
|
-
listing_mode: true
|
|
651
|
+
listing_mode: true,
|
|
652
|
+
...filterMetadata
|
|
552
653
|
}
|
|
553
654
|
}];
|
|
554
655
|
if (mode === "local") {
|
|
555
656
|
const searchResponse = performLocalSearch(deferredTools, query, fields, max_results);
|
|
556
|
-
return [formatSearchResults(searchResponse, mcpNameFormat), {
|
|
657
|
+
return [formatSearchResults(searchResponse, mcpNameFormat, filterNotes), {
|
|
557
658
|
tool_references: searchResponse.tool_references,
|
|
558
659
|
metadata: {
|
|
559
660
|
total_searched: searchResponse.total_tools_searched,
|
|
560
661
|
pattern: searchResponse.pattern_used,
|
|
561
|
-
mcp_server: serverFilters.length > 0 ? serverFilters : void 0
|
|
662
|
+
mcp_server: serverFilters.length > 0 ? serverFilters : void 0,
|
|
663
|
+
...filterMetadata
|
|
562
664
|
}
|
|
563
665
|
}];
|
|
564
666
|
}
|
|
@@ -585,19 +687,21 @@ ${mcpNote}${toolsListSection}
|
|
|
585
687
|
if (!response.ok) throw new Error(`HTTP error! status: ${response.status}`);
|
|
586
688
|
const result = await response.json();
|
|
587
689
|
if (result.stderr && result.stderr.trim()) console.warn("[ToolSearch] stderr:", result.stderr);
|
|
588
|
-
if (!result.stdout || !result.stdout.trim()) return [`${warningMessage}No tools matched the pattern "${sanitizedPattern}".\nTotal tools searched: ${deferredTools.length}`, {
|
|
690
|
+
if (!result.stdout || !result.stdout.trim()) return [`${filterNotice}${warningMessage}No tools matched the pattern "${sanitizedPattern}".\nTotal tools searched: ${deferredTools.length}`, {
|
|
589
691
|
tool_references: [],
|
|
590
692
|
metadata: {
|
|
591
693
|
total_searched: deferredTools.length,
|
|
592
|
-
pattern: sanitizedPattern
|
|
694
|
+
pattern: sanitizedPattern,
|
|
695
|
+
...filterMetadata
|
|
593
696
|
}
|
|
594
697
|
}];
|
|
595
698
|
const searchResponse = parseSearchResults(result.stdout);
|
|
596
|
-
return [`${warningMessage}${formatSearchResults(searchResponse, mcpNameFormat)}`, {
|
|
699
|
+
return [`${warningMessage}${formatSearchResults(searchResponse, mcpNameFormat, filterNotes)}`, {
|
|
597
700
|
tool_references: searchResponse.tool_references,
|
|
598
701
|
metadata: {
|
|
599
702
|
total_searched: searchResponse.total_tools_searched,
|
|
600
|
-
pattern: searchResponse.pattern_used
|
|
703
|
+
pattern: searchResponse.pattern_used,
|
|
704
|
+
...filterMetadata
|
|
601
705
|
}
|
|
602
706
|
}];
|
|
603
707
|
} catch (error) {
|
|
@@ -624,6 +728,7 @@ exports.ToolSearchToolDefinition = ToolSearchToolDefinition;
|
|
|
624
728
|
exports.ToolSearchToolDescription = ToolSearchToolDescription;
|
|
625
729
|
exports.ToolSearchToolName = ToolSearchToolName;
|
|
626
730
|
exports.ToolSearchToolSchema = ToolSearchToolSchema;
|
|
731
|
+
exports.canonicalizeServerName = canonicalizeServerName;
|
|
627
732
|
exports.countNestedGroups = countNestedGroups;
|
|
628
733
|
exports.createToolSearch = createToolSearch;
|
|
629
734
|
exports.escapeRegexSpecialChars = escapeRegexSpecialChars;
|
|
@@ -638,6 +743,7 @@ exports.isFromAnyMcpServer = isFromAnyMcpServer;
|
|
|
638
743
|
exports.isFromMcpServer = isFromMcpServer;
|
|
639
744
|
exports.normalizeServerFilter = normalizeServerFilter;
|
|
640
745
|
exports.performLocalSearch = performLocalSearch;
|
|
746
|
+
exports.resolveServerFilters = resolveServerFilters;
|
|
641
747
|
exports.sanitizeRegex = sanitizeRegex;
|
|
642
748
|
|
|
643
749
|
//# sourceMappingURL=ToolSearch.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolSearch.cjs","names":["okapibm25Module","INTENT_PROPERTY","buildCodeApiEndpoint","getCodeBaseURL","params","resolveFetchProxyAgent"],"sources":["../../../src/tools/ToolSearch.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ToolSearch.cjs","names":["okapibm25Module","INTENT_PROPERTY","buildCodeApiEndpoint","getCodeBaseURL","params","resolveFetchProxyAgent"],"sources":["../../../src/tools/ToolSearch.ts"],"mappings":";;;;;;;;;;;;;AAUA,SAAS,kBAA0B;CACjC,MAAM,MAAMA;CAGZ,IAAI,OAAO,QAAQ,YAAY,OAAO;CACtC,IAAI,OAAO,IAAI,YAAY,YAAY,OAAO,IAAI;CAClD,IAAI,IAAI,WAAW,QAAQ,OAAO,IAAI,QAAQ,YAAY,YACxD,OAAO,IAAI,QAAQ;CACrB,MAAM,IAAI,MAAM,uDAAuD;AACzE;AAEA,MAAM,OAAO,gBAAgB;mBAStB;AAGP,MAAM,qBAAqB;AAE3B,MAAa,qBAAA;AAEb,MAAa,4BACX;AAEF,MAAM,0BACJ;AACF,MAAM,0BACJ;AACF,MAAM,qBACJ;AACF,MAAM,0BAA0B;AAChC,MAAM,sBAAsB;AAC5B,MAAM,yBACJ;AAEF,MAAa,uBAAuB;CAClC,MAAM;CACN,YAAY;EACV,QAAQ,EAAE,GAAGC,kBAAAA,gBAAgB;EAC7B,OAAO;GACL,MAAM;GACN,WAAW;GACX,SAAS;GACT,aAAa;EACf;EACA,QAAQ;GACN,MAAM;GACN,OAAO;IAAE,MAAM;IAAU,MAAM;KAAC;KAAQ;KAAe;IAAY;GAAE;GACrE,SAAS,CAAC,QAAQ,aAAa;GAC/B,aAAa;EACf;EACA,aAAa;GACX,MAAM;GACN,SAAS;GACT,SAAS;GACT,SAAS;GACT,aAAa;EACf;EACA,YAAY;GACV,OAAO,CAAC,EAAE,MAAM,SAAS,GAAG;IAAE,MAAM;IAAS,OAAO,EAAE,MAAM,SAAS;GAAE,CAAC;GACxE,aAAa;EACf;CACF;CACA,UAAU,CAAC;AACb;AAEA,MAAa,2BAA2B;CACtC,MAAM;CACN,aAAa;CACb,QAAQ;AACV;AAGA,MAAM,uBAAuB;AAG7B,MAAM,iBAAiB;AAsBvB,SAAS,uBAAuB,MAA0C;CACxE,MAAM,mBACJ,SAAS,UAAU,0BAA0B;CAE/C,OAAO;EACL,MAAM;EACN,YAAY;GACV,QAAQ,EAAE,GAAGA,kBAAAA,gBAAgB;GAC7B,OAAO;IACL,MAAM;IACN,WAAW;IACX,SAAS;IACT,aAAa;GACf;GACA,QAAQ;IACN,MAAM;IACN,OAAO;KAAE,MAAM;KAAU,MAAM;MAAC;MAAQ;MAAe;KAAY;IAAE;IACrE,SAAS,CAAC,QAAQ,aAAa;IAC/B,aAAa;GACf;GACA,aAAa;IACX,MAAM;IACN,SAAS;IACT,SAAS;IACT,SAAS;IACT,aAAa;GACf;GACA,YAAY;IACV,OAAO,CACL,EAAE,MAAM,SAAS,GACjB;KAAE,MAAM;KAAS,OAAO,EAAE,MAAM,SAAS;IAAE,CAC7C;IACA,aAAa;GACf;EACF;EACA,UAAU,CAAC;CACb;AACF;AAQA,SAAS,qBAAqB,UAAsC;CAClE,MAAM,iBAAiB,SAAS,QAAA,OAA+B;CAC/D,IAAI,mBAAmB,IACrB;CAEF,OAAO,SAAS,UAAU,iBAAA,CAA+C;AAC3E;AAQA,SAAS,gBAAgB,UAAkB,YAA6B;CAEtE,OADmB,qBAAqB,QACxB,MAAM;AACxB;AAsBA,SAAS,uBAAuB,YAA4B;CAC1D,OAAO,WACJ,KAAK,CAAC,CACN,YAAY,CAAC,CACb,UAAU,KAAK,CAAC,CAChB,QAAQ,YAAY,GAAG;AAC5B;AAYA,SAAS,6BAA6B,WAAuC;CAC3E,MAAM,QAAQ,oBAAoB,KAAK,UAAU,KAAK,CAAC;CACvD,IAAI,UAAU,MACZ;CAEF,MAAM,MAAM,uBAAuB,MAAM,EAAE;CAC3C,OAAO,QAAQ,KAAK,KAAA,IAAY;AAClC;AAmBA,SAAS,qBACP,WACA,WAC8C;CAC9C,MAAM,QAAQ,IAAI,IAAI,SAAS;CAC/B,MAAM,4BAAY,IAAI,IAAsB;CAC5C,KAAK,MAAM,QAAQ,WAAW;EAC5B,MAAM,MAAM,uBAAuB,IAAI;EAIvC,IAAI,QAAQ,IACV;EAEF,MAAM,SAAS,UAAU,IAAI,GAAG;EAChC,IAAI,WAAW,KAAA,GACb,UAAU,IAAI,KAAK,CAAC,IAAI,CAAC;OAEzB,OAAO,KAAK,IAAI;CAEpB;CAEA,MAAM,WAAqB,CAAC;CAC5B,MAAM,aAAuB,CAAC;CAC9B,KAAK,MAAM,QAAQ,WAAW;EAC5B,IAAI,MAAM,IAAI,IAAI,GAAG;GACnB,SAAS,KAAK,IAAI;GAClB;EACF;EACA,MAAM,MAAM,uBAAuB,IAAI;EACvC,IAAI,QAAQ,IAAI;GACd,WAAW,KAAK,IAAI;GACpB;EACF;EACA,MAAM,SAAS,UAAU,IAAI,GAAG;EAChC,IAAI,WAAW,KAAA,GAAW;GACxB,SAAS,KAAK,GAAG,MAAM;GACvB;EACF;EACA,MAAM,cAAc,6BAA6B,IAAI;EACrD,MAAM,WACJ,gBAAgB,KAAA,IAAY,KAAA,IAAY,UAAU,IAAI,WAAW;EACnE,IAAI,aAAa,KAAA,GAAW;GAC1B,SAAS,KAAK,GAAG,QAAQ;GACzB;EACF;EACA,WAAW,KAAK,IAAI;CACtB;CAEA,OAAO;EAAE,UAAU,MAAM,KAAK,IAAI,IAAI,QAAQ,CAAC;EAAG;CAAW;AAC/D;AAQA,SAAS,mBAAmB,UAAkB,aAAgC;CAC5E,MAAM,aAAa,qBAAqB,QAAQ;CAChD,IAAI,eAAe,KAAA,GACjB,OAAO;CAET,OAAO,YAAY,SAAS,UAAU;AACxC;AAOA,SAAS,sBACP,cACU;CACV,IAAI,iBAAiB,KAAA,GACnB,OAAO,CAAC;CAEV,IAAI,OAAO,iBAAiB,UAC1B,OAAO,iBAAiB,KAAK,CAAC,IAAI,CAAC,YAAY;CAEjD,OAAO,aAAa,QAAQ,MAAM,MAAM,EAAE;AAC5C;AAQA,SAAS,uBACP,cACA,eAAwB,MACd;CACV,IAAI,CAAC,cACH,OAAO,CAAC;CAGV,MAAM,0BAAU,IAAI,IAAY;CAChC,KAAK,MAAM,GAAG,YAAY,cAAc;EACtC,IAAI,gBAAgB,QAAQ,kBAAkB,MAC5C;EAEF,MAAM,SAAS,qBAAqB,QAAQ,IAAI;EAChD,IAAI,WAAW,KAAA,KAAa,WAAW,IACrC,QAAQ,IAAI,MAAM;CAEtB;CAEA,OAAO,MAAM,KAAK,OAAO,CAAC,CAAC,KAAK;AAClC;AAOA,SAAS,wBAAwB,SAAyB;CACxD,OAAO,QAAQ,QAAQ,uBAAuB,MAAM;AACtD;AAOA,SAAS,kBAAkB,SAAyB;CAClD,IAAI,WAAW;CACf,IAAI,eAAe;CAEnB,KAAK,IAAI,IAAI,GAAG,IAAI,QAAQ,QAAQ,KAClC,IAAI,QAAQ,OAAO,QAAQ,MAAM,KAAK,QAAQ,IAAI,OAAO,OAAO;EAC9D;EACA,WAAW,KAAK,IAAI,UAAU,YAAY;CAC5C,OAAO,IAAI,QAAQ,OAAO,QAAQ,MAAM,KAAK,QAAQ,IAAI,OAAO,OAC9D,eAAe,KAAK,IAAI,GAAG,eAAe,CAAC;CAI/C,OAAO;AACT;AAQA,SAAS,qBAAqB,SAA0B;CAEtD,OAAO,0BAAwB,KAAK,OAAO;AAC7C;AAOA,SAAS,mBAAmB,SAA0B;CACpD,IAAI,qBAAqB,OAAO,GAC9B,OAAO;CAGT,IAAI,kBAAkB,OAAO,IAAI,sBAC/B,OAAO;CAaT,KAAK,MAAM,aAAa;EATtB;EACA;EACA;EACA;EACA;EACA;EACA;CAGsC,GACtC,IAAI,UAAU,KAAK,OAAO,GACxB,OAAO;CAIX,OAAO;AACT;AAQA,SAAS,cAAc,SAAwD;CAC7E,IAAI,mBAAmB,OAAO,GAC5B,OAAO;EACL,MAAM,wBAAwB,OAAO;EACrC,YAAY;CACd;CAGF,IAAI;EACF,IAAI,OAAO,OAAO;EAClB,OAAO;GAAE,MAAM;GAAS,YAAY;EAAM;CAC5C,QAAQ;EACN,OAAO;GACL,MAAM,wBAAwB,OAAO;GACrC,YAAY;EACd;CACF;AACF;AAQA,SAAS,4BACP,YAC8B;CAC9B,IAAI,CAAC,YACH;CAGF,IAAI,WAAW,YACb,OAAO;EACL,MAAM,WAAW;EACjB,YAAY,OAAO,YACjB,OAAO,QAAQ,WAAW,UAAU,CAAC,CAAC,KAAK,CAAC,KAAK,WAAW,CAC1D,KACA,EAAE,MAAO,MAA2B,KAAK,CAC3C,CAAC,CACH;CACF;CAGF,OAAO,EAAE,MAAM,WAAW,KAAK;AACjC;AAMA,SAAS,iBAAiB,SAA2B;CACnD,MAAM,cAAc,QACjB,QAAQ,sBAAsB,OAAO,CAAC,CACtC,QAAQ,yBAAyB,OAAO,CAAC,CACzC,YAAY,CAAC,CACb,MAAM,KAAK,CAAC,CACZ,OAAO,OAAO;CAEjB,IAAI,YAAY,SAAS,GAAG,OAAO;CAEnC,MAAM,eAAyB,CAAC;CAChC,IAAI,SAAS;CACb,KAAK,MAAM,SAAS,aAAa;EAC/B,IAAI,MAAM,WAAW,GAAG;GACtB,UAAU;GACV;EACF;EACA,aAAa,KAAK,GAAG,SAAS,OAAO;EACrC,SAAS;CACX;CAEA,IAAI,UAAU,aAAa,SAAS,GAClC,aAAa,aAAa,SAAS,MAAM;CAE3C,OAAO,aAAa,SAAS,IAAI,eAAe,CAAC,MAAM;AACzD;AAQA,SAAS,SAAS,MAAwB;CACxC,OAAO,KACJ,MAAM,eAAe,CAAC,CACtB,OAAO,OAAO,CAAC,CACf,QAAQ,gBAAgB;AAC7B;AAQA,SAAS,mBAAmB,MAAsB,QAA0B;CAC1E,MAAM,QAAkB,CAAC;CAEzB,IAAI,OAAO,SAAS,MAAM,GAAG;EAC3B,MAAM,WAAW,KAAK,KAAK,QAAQ,MAAM,GAAG;EAC5C,MAAM,KAAK,UAAU,QAAQ;CAC/B;CAEA,IAAI,OAAO,SAAS,aAAa,KAAK,KAAK,aACzC,MAAM,KAAK,KAAK,WAAW;CAG7B,IAAI,OAAO,SAAS,YAAY,KAAK,KAAK,YAAY,YAAY;EAChE,MAAM,aAAa,OAAO,KAAK,KAAK,WAAW,UAAU,CAAC,CAAC,KAAK,GAAG;EACnE,MAAM,KAAK,UAAU;CACvB;CAEA,OAAO,SAAS,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG;AAC3C;AASA,SAAS,iBACP,MACA,aACA,QACoC;CACpC,IAAI,OAAO,SAAS,MAAM,GAAG;EAC3B,MAAM,YAAY,KAAK,KAAK,YAAY;EACxC,KAAK,MAAM,SAAS,aAClB,IAAI,UAAU,SAAS,KAAK,GAC1B,OAAO;GAAE,OAAO;GAAQ,SAAS,KAAK;EAAK;CAGjD;CAEA,IAAI,OAAO,SAAS,aAAa,KAAK,KAAK,aAAa;EACtD,MAAM,YAAY,KAAK,YAAY,YAAY;EAC/C,KAAK,MAAM,SAAS,aAClB,IAAI,UAAU,SAAS,KAAK,GAC1B,OAAO;GACL,OAAO;GACP,SAAS,KAAK,YAAY,UAAU,GAAG,GAAG;EAC5C;CAGN;CAEA,IAAI,OAAO,SAAS,YAAY,KAAK,KAAK,YAAY,YAAY;EAChE,MAAM,aAAa,OAAO,KAAK,KAAK,WAAW,UAAU;EACzD,MAAM,aAAa,WAAW,KAAK,GAAG,CAAC,CAAC,YAAY;EACpD,KAAK,MAAM,SAAS,aAClB,IAAI,WAAW,SAAS,KAAK,GAC3B,OAAO;GAAE,OAAO;GAAc,SAAS,WAAW,KAAK,IAAI;EAAE;CAGnE;CAKA,OAAO;EAAE,OAAO;EAAW,SAHH,KAAK,cACzB,KAAK,YAAY,UAAU,GAAG,GAAG,IACjC,KAAK;CAC2C;AACtD;AAYA,SAAS,mBACP,OACA,OACA,QACA,YACsB;CACtB,IAAI,MAAM,WAAW,GACnB,OAAO;EACL,iBAAiB,CAAC;EAClB,sBAAsB;EACtB,cAAc;CAChB;CAGF,MAAM,cAAc,SAAS,KAAK;CAElC,IAAI,YAAY,WAAW,GAYzB,OAAO;EACL,iBAZe,MACd,MAAM,CAAC,CACP,MAAM,GAAG,MAAM,EAAE,KAAK,cAAc,EAAE,IAAI,CAAC,CAAC,CAC5C,MAAM,GAAG,UAAU,CAAC,CACpB,KAAK,UAAU;GACd,WAAW,KAAK;GAChB,aAAa;GACb,eAAe;GACf,SAAS,KAAK,YAAY,UAAU,GAAG,GAAG,KAAK,KAAK;EACtD,EAGwB;EACxB,sBAAsB,MAAM;EAC5B,cAAc;CAChB;CAIF,MAAM,SAAS,KADG,MAAM,KAAK,SAAS,mBAAmB,MAAM,MAAM,CACzC,GAAG,aAAa;EAAE,IAAI;EAAK,GAAG;CAAK,CAAC;CAEhE,MAAM,WAAW,KAAK,IAAI,GAAG,OAAO,QAAQ,MAAM,IAAI,CAAC,GAAG,CAAC;CAC3D,MAAM,aAAa,MAAM,YAAY,CAAC,CAAC,KAAK;CAC5C,MAAM,kBAAkB,YAAY,KAAK,EAAE;CAC3C,MAAM,qBAAqB,OAAO,SAAS,MAAM;CAEjD,MAAM,UAGD,CAAC;CACN,KAAK,IAAI,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;EACrC,MAAM,QAAQ,OAAO;EACrB,MAAM,iBAAiB,OAAO,SAAS,KAAK,KAAK,QAAQ;EACzD,IAAI,qBAAqB;EACzB,IAAI,kBAAkB,iBAAiB,KAAK,IAAI,QAAQ,UAAU,CAAG,IAAI;EAEzE,IAAI,oBAAoB;GACtB,MAAM,cAAc,gBAAgB,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,YAAY;GAC/D,MAAM,cAAc,MAAM,EAAE,CAAC,KAAK,YAAY;GAC9C,MAAM,iBAAiB,SAAS,WAAW,CAAC,CAAC,KAAK,EAAE;GACpD,MAAM,iBAAiB,SAAS,WAAW,CAAC,CAAC,KAAK,EAAE;GAEpD,IAAI,gBAAgB,YAAY;IAC9B,qBAAqB;IACrB,kBAAkB;GACpB,OAAO,IAAI,gBAAgB,YAAY;IACrC,qBAAqB;IACrB,kBAAkB;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,KAA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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
const require_enum = require("../../common/enum.cjs");
|
|
2
2
|
require("../../common/index.cjs");
|
|
3
|
+
const require_CallerCapabilities = require("../CallerCapabilities.cjs");
|
|
3
4
|
const require_LocalProgrammaticToolCalling = require("./LocalProgrammaticToolCalling.cjs");
|
|
4
5
|
const require_LocalExecutionTools = require("./LocalExecutionTools.cjs");
|
|
5
6
|
const require_LocalCodingTools = require("./LocalCodingTools.cjs");
|
|
6
7
|
const require_CloudflareSandboxTools = require("../cloudflare/CloudflareSandboxTools.cjs");
|
|
7
8
|
require("../cloudflare/index.cjs");
|
|
8
|
-
const require_CallerCapabilities = require("../CallerCapabilities.cjs");
|
|
9
9
|
//#region src/tools/local/resolveLocalExecutionTools.ts
|
|
10
10
|
function shouldUseLocalExecution(config) {
|
|
11
11
|
return config?.engine === "local";
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
const require_eagerEventExecution = require("./eagerEventExecution.cjs");
|
|
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: require_eagerEventExecution.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 require_eagerEventExecution.stableStringify({
|
|
121
|
+
name: call.name,
|
|
122
|
+
args: call.args
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
//#endregion
|
|
126
|
+
exports.PreparedSubagentError = PreparedSubagentError;
|
|
127
|
+
exports.PreparedSubagents = PreparedSubagents;
|
|
128
|
+
|
|
129
|
+
//# sourceMappingURL=preparedSubagents.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preparedSubagents.cjs","names":["normalizeError","stableStringify"],"sources":["../../../src/tools/preparedSubagents.ts"],"mappings":"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"}
|
|
@@ -43,6 +43,7 @@ import { joinKeys, resetIfNotEmpty } from "../utils/graph.mjs";
|
|
|
43
43
|
import { RUN_BREAKER_SCOPE_CONFIG_KEY, STREAM_LIMIT_EPOCH_KEY, StreamLimitExceededError, resolveStreamLimits, sweepStaleStreamLimitEntries } from "../llm/streamLimits.mjs";
|
|
44
44
|
import { handleToolCalls } from "../tools/handlers.mjs";
|
|
45
45
|
import { ToolOutputReferenceRegistry, annotateMessagesForLLM } from "../tools/toolOutputReferences.mjs";
|
|
46
|
+
import { PreparedSubagentError, PreparedSubagents } from "../tools/preparedSubagents.mjs";
|
|
46
47
|
import { HandlerRegistry } from "../events.mjs";
|
|
47
48
|
import { sleep } from "../utils/run.mjs";
|
|
48
49
|
import "../utils/index.mjs";
|
|
@@ -336,6 +337,7 @@ var Graph = class {
|
|
|
336
337
|
_toolOutputRegistry;
|
|
337
338
|
sessions = /* @__PURE__ */ new Map();
|
|
338
339
|
clearHeavyState() {
|
|
340
|
+
this.preparedSubagents.clear();
|
|
339
341
|
this.config = void 0;
|
|
340
342
|
this.signal = void 0;
|
|
341
343
|
this.callerSignal = void 0;
|
|
@@ -508,6 +510,8 @@ var Graph = class {
|
|
|
508
510
|
_fileCheckpointer;
|
|
509
511
|
_compiledToolNodes = /* @__PURE__ */ new Set();
|
|
510
512
|
_subagentExecutors = /* @__PURE__ */ new Set();
|
|
513
|
+
preparedSubagents = new PreparedSubagents();
|
|
514
|
+
subagentToolNodes = /* @__PURE__ */ new Map();
|
|
511
515
|
getOrCreateFileCheckpointer() {
|
|
512
516
|
if (this._fileCheckpointer != null) return this._fileCheckpointer;
|
|
513
517
|
if (this.toolExecution?.engine === "local" && this.toolExecution.local?.fileCheckpointing === true) {
|
|
@@ -560,8 +564,8 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
560
564
|
});
|
|
561
565
|
activeStreamLimitGenerations;
|
|
562
566
|
resolveTrippedBreakerReason(breakerSignal = this.breakerAbort.signal) {
|
|
563
|
-
if (breakerSignal.aborted && breakerSignal.reason instanceof StreamLimitExceededError) return breakerSignal.reason;
|
|
564
|
-
if (this.signal?.aborted === true && this.signal.reason instanceof StreamLimitExceededError) return this.signal.reason;
|
|
567
|
+
if (breakerSignal.aborted && (breakerSignal.reason instanceof StreamLimitExceededError || breakerSignal.reason instanceof PreparedSubagentError)) return breakerSignal.reason;
|
|
568
|
+
if (this.signal?.aborted === true && (this.signal.reason instanceof StreamLimitExceededError || this.signal.reason instanceof PreparedSubagentError)) return this.signal.reason;
|
|
565
569
|
}
|
|
566
570
|
preemptSealBudgetUsed = 0;
|
|
567
571
|
preemptSealCount = 0;
|
|
@@ -608,6 +612,7 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
608
612
|
this.langfuseScopeRunId = `${this.runId ?? "graph"}:${nanoid()}`;
|
|
609
613
|
}
|
|
610
614
|
resetValues(keepContent, checkpointScope) {
|
|
615
|
+
this.preparedSubagents.clear();
|
|
611
616
|
this.resetSubagentCheckpointThreadIds();
|
|
612
617
|
this.messages = [];
|
|
613
618
|
this.hasRestoredCheckpointMessages = false;
|
|
@@ -1092,6 +1097,16 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
1092
1097
|
for (const step of this.contentData) if (step.agentId != null && step.agentId !== "" && Number.isFinite(step.index)) contentPartAgentMap.set(step.index, step.agentId);
|
|
1093
1098
|
return contentPartAgentMap;
|
|
1094
1099
|
}
|
|
1100
|
+
canPrestartSubagents(agentContext) {
|
|
1101
|
+
if (this.eagerEventToolExecution?.enabled !== true || (this.eagerEventToolExecution.maxPendingSubagents ?? 4) <= 0 || this.compileOptions?.checkpointer != null || this.humanInTheLoop?.enabled === true || (this.interruptingToolNames?.length ?? 0) > 0 || agentContext == null || !this.subagentToolNodes.has(agentContext.agentId)) return false;
|
|
1102
|
+
const graphTools = agentContext.graphTools;
|
|
1103
|
+
return graphTools?.length === 1 && graphTools[0].name === "subagent" && SUBAGENT_REPLAY_CONTROLLER in graphTools[0];
|
|
1104
|
+
}
|
|
1105
|
+
prestartSubagent(call, attempt, agentContext) {
|
|
1106
|
+
const config = this.preparedSubagents.getConfig(attempt);
|
|
1107
|
+
if (!this.canPrestartSubagents(agentContext) || config == null || agentContext == null) return;
|
|
1108
|
+
this.subagentToolNodes.get(agentContext.agentId)?.prestartSubagent(call, attempt, config, this.eagerEventToolExecution?.maxPendingSubagents ?? 4);
|
|
1109
|
+
}
|
|
1095
1110
|
initializeTools({ currentTools, currentToolMap, agentContext }) {
|
|
1096
1111
|
const toolDefinitions = agentContext?.toolDefinitions;
|
|
1097
1112
|
const eventDrivenMode = toolDefinitions != null && toolDefinitions.length > 0;
|
|
@@ -1137,6 +1152,7 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
1137
1152
|
hookRegistry: this.hookRegistry,
|
|
1138
1153
|
humanInTheLoop: this.humanInTheLoop,
|
|
1139
1154
|
eagerEventToolExecution: this.eagerEventToolExecution,
|
|
1155
|
+
preparedSubagents: this.preparedSubagents,
|
|
1140
1156
|
codeSessionToolNames: this.codeSessionToolNames,
|
|
1141
1157
|
eagerEventToolExecutions: this.eagerEventToolExecutions,
|
|
1142
1158
|
eagerEventToolUsageCount: this.getEagerEventToolUsageCount(agentContext?.agentId),
|
|
@@ -1158,6 +1174,7 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
1158
1174
|
errorHandler: (data, metadata) => StandardGraph.handleToolCallErrorStatic(this, data, metadata)
|
|
1159
1175
|
});
|
|
1160
1176
|
this.registerCompiledToolNode(node);
|
|
1177
|
+
if (agentContext != null) this.subagentToolNodes.set(agentContext.agentId, node);
|
|
1161
1178
|
return node;
|
|
1162
1179
|
}
|
|
1163
1180
|
const graphTools = agentContext?.graphTools;
|
|
@@ -1703,7 +1720,7 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
1703
1720
|
graph: this,
|
|
1704
1721
|
metadata
|
|
1705
1722
|
});
|
|
1706
|
-
if (primaryError instanceof StreamLimitExceededError) {
|
|
1723
|
+
if (primaryError instanceof StreamLimitExceededError || primaryError instanceof PreparedSubagentError) {
|
|
1707
1724
|
attemptBreaker.abort(primaryError);
|
|
1708
1725
|
throw primaryError;
|
|
1709
1726
|
}
|
|
@@ -1811,7 +1828,7 @@ var StandardGraph = class StandardGraph extends Graph {
|
|
|
1811
1828
|
}
|
|
1812
1829
|
}));
|
|
1813
1830
|
} catch (fallbackError) {
|
|
1814
|
-
if (fallbackError instanceof StreamLimitExceededError) {
|
|
1831
|
+
if (fallbackError instanceof StreamLimitExceededError || fallbackError instanceof PreparedSubagentError) {
|
|
1815
1832
|
attemptBreaker.abort(fallbackError);
|
|
1816
1833
|
throw fallbackError;
|
|
1817
1834
|
}
|