@librechat/agents 3.7.11 → 3.7.12
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/main.cjs +2 -0
- package/dist/cjs/messages/format.cjs +6 -34
- package/dist/cjs/messages/format.cjs.map +1 -1
- package/dist/cjs/tools/BashProgrammaticToolCalling.cjs +22 -6
- package/dist/cjs/tools/BashProgrammaticToolCalling.cjs.map +1 -1
- package/dist/cjs/tools/ProgrammaticCallerPolicy.cjs +10 -0
- package/dist/cjs/tools/ProgrammaticCallerPolicy.cjs.map +1 -1
- package/dist/cjs/tools/ProgrammaticToolCalling.cjs +43 -6
- package/dist/cjs/tools/ProgrammaticToolCalling.cjs.map +1 -1
- package/dist/cjs/tools/local/LocalProgrammaticToolCalling.cjs +5 -3
- package/dist/cjs/tools/local/LocalProgrammaticToolCalling.cjs.map +1 -1
- package/dist/esm/main.mjs +2 -2
- package/dist/esm/messages/format.mjs +6 -34
- package/dist/esm/messages/format.mjs.map +1 -1
- package/dist/esm/tools/BashProgrammaticToolCalling.mjs +23 -7
- package/dist/esm/tools/BashProgrammaticToolCalling.mjs.map +1 -1
- package/dist/esm/tools/ProgrammaticCallerPolicy.mjs +10 -1
- package/dist/esm/tools/ProgrammaticCallerPolicy.mjs.map +1 -1
- package/dist/esm/tools/ProgrammaticToolCalling.mjs +42 -7
- package/dist/esm/tools/ProgrammaticToolCalling.mjs.map +1 -1
- package/dist/esm/tools/local/LocalProgrammaticToolCalling.mjs +5 -3
- package/dist/esm/tools/local/LocalProgrammaticToolCalling.mjs.map +1 -1
- package/dist/types/messages/format.d.ts +2 -1
- package/dist/types/tools/ProgrammaticCallerPolicy.d.ts +12 -0
- package/dist/types/tools/ProgrammaticToolCalling.d.ts +35 -0
- package/package.json +1 -1
- package/src/messages/format.ts +23 -70
- package/src/tools/BashProgrammaticToolCalling.ts +57 -19
- package/src/tools/ProgrammaticCallerPolicy.ts +31 -0
- package/src/tools/ProgrammaticToolCalling.ts +132 -19
- package/src/tools/local/LocalProgrammaticToolCalling.ts +19 -8
|
@@ -4,8 +4,8 @@ import { resolveFetchProxyAgent } from "../utils/proxy.mjs";
|
|
|
4
4
|
import { INTENT_PROPERTY } from "./intentArg.mjs";
|
|
5
5
|
import { appendCodeSessionFileSummary } from "./CodeSessionFileSummary.mjs";
|
|
6
6
|
import { CODE_ARTIFACT_PATH_GUIDANCE, CodeApiRequestError, addCodeApiExecutionProfileHeader, appendFailedExecutionFileReminder, appendTmpScratchReminder, buildCodeApiEndpoint, buildCodeApiExecutionErrorMessage, buildCodeApiHttpErrorMessage, emptyOutputMessage, getCodeBaseURL, normalizeCodeApiRequestError, resolveCodeApiAuthHeaders, selectRuntimeSessionHint } from "./CodeExecutor.mjs";
|
|
7
|
+
import { assertUnambiguousIdentifiers, projectProgrammaticToolMap, resolveProgrammaticToolDefinitions, selectProgrammaticTools } from "./ProgrammaticCallerPolicy.mjs";
|
|
7
8
|
import { clampCodeApiRunTimeoutMs, createCodeApiRunTimeoutSchema, resolveCodeApiRunTimeoutMs } from "./ptcTimeout.mjs";
|
|
8
|
-
import { projectProgrammaticToolMap, resolveProgrammaticToolDefinitions, selectProgrammaticTools } from "./ProgrammaticCallerPolicy.mjs";
|
|
9
9
|
import { tool } from "@langchain/core/tools";
|
|
10
10
|
import { config } from "dotenv";
|
|
11
11
|
import fetch from "node-fetch";
|
|
@@ -49,7 +49,7 @@ Your code is auto-wrapped in async context. Just write logic with await—no boi
|
|
|
49
49
|
${EXAMPLES}
|
|
50
50
|
|
|
51
51
|
${CORE_RULES}`;
|
|
52
|
-
const TOOL_MANIFEST_DESCRIPTION = "Exact registered tool names used by the code. Required when direct-only tools are configured; validated before execution starts.";
|
|
52
|
+
const TOOL_MANIFEST_DESCRIPTION = "Exact registered tool names used by the code. Required when direct-only tools are configured; validated before execution starts. Pass [] when the code calls no tools at all.";
|
|
53
53
|
function createProgrammaticToolCallingSchema(maxRunTimeoutMs = DEFAULT_RUN_TIMEOUT_MS) {
|
|
54
54
|
return {
|
|
55
55
|
type: "object",
|
|
@@ -415,6 +415,25 @@ function formatCompletedResponse(response, sourceCode = "") {
|
|
|
415
415
|
} : {}
|
|
416
416
|
}];
|
|
417
417
|
}
|
|
418
|
+
function wrapPythonForPlainExecution(userCode) {
|
|
419
|
+
return `async def __user_main__():
|
|
420
|
+
"""Auto-generated wrapper for user code to support top-level await"""
|
|
421
|
+
${userCode.split("\n").map((line) => line.trim() === "" ? "" : ` ${line}`).join("\n")}\n
|
|
422
|
+
if __name__ == "__main__":
|
|
423
|
+
import asyncio
|
|
424
|
+
asyncio.run(__user_main__())
|
|
425
|
+
`;
|
|
426
|
+
}
|
|
427
|
+
async function runPlainExecution(args) {
|
|
428
|
+
return formatCompletedResponse(await makeRequest(buildCodeApiEndpoint(args.baseUrl, "exec"), {
|
|
429
|
+
lang: args.lang,
|
|
430
|
+
code: args.lang === "py" ? wrapPythonForPlainExecution(args.code) : args.code,
|
|
431
|
+
...args.timeout != null ? { timeout: args.timeout } : {},
|
|
432
|
+
...args.sessionId != null && args.sessionId !== "" ? { session_id: args.sessionId } : {},
|
|
433
|
+
...args.files != null && args.files.length > 0 ? { files: args.files } : {},
|
|
434
|
+
...args.runtimeSessionHint != null ? { runtime_session_hint: args.runtimeSessionHint } : {}
|
|
435
|
+
}, args.proxy, args.authHeaders, args.executionProfile), args.code);
|
|
436
|
+
}
|
|
418
437
|
function createProgrammaticToolCallingTool(initParams = {}) {
|
|
419
438
|
const baseUrl = initParams.baseUrl ?? getCodeBaseURL();
|
|
420
439
|
const maxRoundTrips = initParams.maxRoundTrips ?? DEFAULT_MAX_ROUND_TRIPS;
|
|
@@ -436,17 +455,33 @@ function createProgrammaticToolCallingTool(initParams = {}) {
|
|
|
436
455
|
disallowedToolDefs,
|
|
437
456
|
programmaticToolName
|
|
438
457
|
});
|
|
439
|
-
|
|
440
|
-
if (
|
|
441
|
-
|
|
458
|
+
const needsNoTools = effectiveTools.length === 0 && (params.tool_manifest?.length === 0 || toolDefs != null || disallowedToolDefs != null);
|
|
459
|
+
if (!needsNoTools) {
|
|
460
|
+
if (toolMap == null || toolMap.size === 0) throw new Error("No toolMap provided. ToolNode should inject this from AgentContext when invoked through the graph.");
|
|
461
|
+
if (toolDefs == null || toolDefs.length === 0) throw new Error("No tool definitions provided. Either pass tools in the input or ensure ToolNode injects toolDefs.");
|
|
462
|
+
}
|
|
463
|
+
assertUnambiguousIdentifiers(effectiveTools, normalizeToPythonIdentifier, programmaticToolName);
|
|
464
|
+
const effectiveToolMap = projectProgrammaticToolMap(toolMap ?? /* @__PURE__ */ new Map(), effectiveTools);
|
|
442
465
|
let roundTrip = 0;
|
|
443
466
|
try {
|
|
444
|
-
if (debug) console.log(`[PTC Debug] Sending ${effectiveTools.length} tools to API (selected from ${toolDefs
|
|
467
|
+
if (debug) console.log(`[PTC Debug] Sending ${effectiveTools.length} tools to API (selected from ${toolDefs?.length ?? 0})`);
|
|
445
468
|
let files;
|
|
446
469
|
if (_injected_files && _injected_files.length > 0) files = _injected_files;
|
|
447
470
|
else if (session_id != null && session_id.length > 0) console.debug(`[ProgrammaticToolCalling] No injected files for session_id=${session_id} — exec will run without input files`);
|
|
448
471
|
const selectedRuntimeSessionHint = selectRuntimeSessionHint(initParams.runtimeSessionHint, _runtime_session_hint);
|
|
449
472
|
const runtimeSessionHint = initParams.executionProfile !== "default" && typeof selectedRuntimeSessionHint === "string" && selectedRuntimeSessionHint !== "" ? selectedRuntimeSessionHint : void 0;
|
|
473
|
+
if (needsNoTools) return await runPlainExecution({
|
|
474
|
+
baseUrl,
|
|
475
|
+
lang: "py",
|
|
476
|
+
code,
|
|
477
|
+
timeout,
|
|
478
|
+
sessionId: session_id,
|
|
479
|
+
files,
|
|
480
|
+
runtimeSessionHint,
|
|
481
|
+
proxy,
|
|
482
|
+
authHeaders: initParams.authHeaders,
|
|
483
|
+
executionProfile: initParams.executionProfile
|
|
484
|
+
});
|
|
450
485
|
let response = await makeRequest(EXEC_ENDPOINT, {
|
|
451
486
|
code,
|
|
452
487
|
tools: effectiveTools,
|
|
@@ -480,6 +515,6 @@ function createProgrammaticToolCallingTool(initParams = {}) {
|
|
|
480
515
|
});
|
|
481
516
|
}
|
|
482
517
|
//#endregion
|
|
483
|
-
export { ProgrammaticToolCallingDefinition, ProgrammaticToolCallingDescription, ProgrammaticToolCallingName, ProgrammaticToolCallingSchema, createProgrammaticToolCallingSchema, createProgrammaticToolCallingTool, executeTools, extractUsedToolNames, fetchSessionFiles, filterToolsByUsage, formatCompletedResponse, makeRequest, normalizeToPythonIdentifier, unwrapToolResponse };
|
|
518
|
+
export { ProgrammaticToolCallingDefinition, ProgrammaticToolCallingDescription, ProgrammaticToolCallingName, ProgrammaticToolCallingSchema, createProgrammaticToolCallingSchema, createProgrammaticToolCallingTool, executeTools, extractUsedToolNames, fetchSessionFiles, filterToolsByUsage, formatCompletedResponse, makeRequest, normalizeToPythonIdentifier, runPlainExecution, unwrapToolResponse, wrapPythonForPlainExecution };
|
|
484
519
|
|
|
485
520
|
//# sourceMappingURL=ProgrammaticToolCalling.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProgrammaticToolCalling.mjs","names":["obj"],"sources":["../../../src/tools/ProgrammaticToolCalling.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ProgrammaticToolCalling.mjs","names":["obj"],"sources":["../../../src/tools/ProgrammaticToolCalling.ts"],"mappings":"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"}
|
|
@@ -354,9 +354,11 @@ async function runLocalProgrammaticTool(args) {
|
|
|
354
354
|
disallowedToolDefs,
|
|
355
355
|
programmaticToolName: runnerName
|
|
356
356
|
});
|
|
357
|
-
if (
|
|
358
|
-
|
|
359
|
-
|
|
357
|
+
if (!(selectedTools.length === 0 && (args.params.tool_manifest?.length === 0 || toolDefs != null || disallowedToolDefs != null))) {
|
|
358
|
+
if (toolMap == null || toolMap.size === 0) throw new Error("No toolMap provided for local programmatic execution.");
|
|
359
|
+
if (toolDefs == null || toolDefs.length === 0) throw new Error("No tool definitions provided for local programmatic execution.");
|
|
360
|
+
}
|
|
361
|
+
const { effectiveTools, effectiveMap } = createEffectiveToolMap(toolMap ?? /* @__PURE__ */ new Map(), selectedTools);
|
|
360
362
|
const bridge = await createToolBridge(effectiveMap, hookContext);
|
|
361
363
|
try {
|
|
362
364
|
const timeoutMs = args.params.timeout ?? args.localConfig.timeoutMs ?? DEFAULT_TIMEOUT;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocalProgrammaticToolCalling.mjs","names":[],"sources":["../../../../src/tools/local/LocalProgrammaticToolCalling.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"LocalProgrammaticToolCalling.mjs","names":[],"sources":["../../../../src/tools/local/LocalProgrammaticToolCalling.ts"],"mappings":"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"}
|
|
@@ -142,7 +142,8 @@ type SummaryTokenAdjustment = {
|
|
|
142
142
|
*
|
|
143
143
|
* @param payload - The array of messages to format.
|
|
144
144
|
* @param indexTokenCountMap - Optional map of message indices to token counts.
|
|
145
|
-
* @param tools - Optional set of tool names
|
|
145
|
+
* @param tools - Optional set of host-managed tool names allowed in the request. SDK-managed tool
|
|
146
|
+
* names are preserved independently.
|
|
146
147
|
* @param skills - Optional map of skill name to body for reconstructing skill HumanMessages.
|
|
147
148
|
* @param options - Optional formatting options (provider, skipSkillBodyNames).
|
|
148
149
|
* @returns - Object containing formatted messages and updated indexTokenCountMap if provided.
|
|
@@ -12,6 +12,18 @@ export declare function resolveProgrammaticToolDefinitions(context: Partial<t.Pr
|
|
|
12
12
|
}): t.LCTool[] | undefined;
|
|
13
13
|
export declare function projectProgrammaticToolMap(toolMap: t.ToolMap, selectedToolDefs: readonly t.LCTool[]): t.ToolMap;
|
|
14
14
|
export declare function assertDisallowedToolUsage(disallowedNames: ReadonlySet<string>, programmaticToolName: string): void;
|
|
15
|
+
/**
|
|
16
|
+
* Rejects a stub set holding two tools that collapse to one runtime identifier.
|
|
17
|
+
*
|
|
18
|
+
* Stub generation binds by identifier, so such tools are indistinguishable once
|
|
19
|
+
* emitted — the generated program defines both and the later one wins. Failing
|
|
20
|
+
* beats dispatching by declaration order.
|
|
21
|
+
*
|
|
22
|
+
* Called on the set each backend actually emits, not on the selection: a
|
|
23
|
+
* definition dropped before codegen never binds an identifier, so a collision
|
|
24
|
+
* among such definitions is not a conflict.
|
|
25
|
+
*/
|
|
26
|
+
export declare function assertUnambiguousIdentifiers(selectedToolDefs: readonly t.LCTool[], normalizeIdentifier: (name: string) => string, programmaticToolName: string): void;
|
|
15
27
|
export declare function selectProgrammaticTools(args: {
|
|
16
28
|
requestedToolNames?: string[];
|
|
17
29
|
allowedToolDefs?: t.LCTool[];
|
|
@@ -95,6 +95,41 @@ export declare function executeTools(toolCalls: t.PTCToolCall[], toolMap: t.Tool
|
|
|
95
95
|
* @returns Tuple of [formatted string, artifact]
|
|
96
96
|
*/
|
|
97
97
|
export declare function formatCompletedResponse(response: t.ProgrammaticExecutionResponse, sourceCode?: string): [string, t.ProgrammaticExecutionArtifact];
|
|
98
|
+
/**
|
|
99
|
+
* Mirrors the Code API's programmatic Python wrapper (`wrapUserCodeInAsync`).
|
|
100
|
+
*
|
|
101
|
+
* The programmatic contract promises top-level `await` works; plain `/exec`
|
|
102
|
+
* applies no wrapper, so forwarding source unchanged would turn valid
|
|
103
|
+
* programmatic input into a SyntaxError. The wrapper is self-contained, so a
|
|
104
|
+
* later divergence in the Code API's own copy cannot break this path.
|
|
105
|
+
*/
|
|
106
|
+
export declare function wrapPythonForPlainExecution(userCode: string): string;
|
|
107
|
+
/**
|
|
108
|
+
* Runs code that selected no tools through plain `/exec`.
|
|
109
|
+
*
|
|
110
|
+
* `/exec/programmatic` rejects an empty tool manifest outright, and the sandbox
|
|
111
|
+
* has nothing to inject for such a call anyway — no stubs, no replay round
|
|
112
|
+
* trips. Routing it here makes a tool-free programmatic call behave exactly like
|
|
113
|
+
* the equivalent `execute_code`, against every deployed Code API, instead of
|
|
114
|
+
* failing with a rejection the model cannot act on.
|
|
115
|
+
*/
|
|
116
|
+
export declare function runPlainExecution(args: {
|
|
117
|
+
baseUrl: string;
|
|
118
|
+
lang: 'bash' | 'py';
|
|
119
|
+
code: string;
|
|
120
|
+
/**
|
|
121
|
+
* Forwarded so the model-supplied cap applies as soon as the Code API honors
|
|
122
|
+
* it on `/exec`, which does not read `timeout` today. Session affinity and
|
|
123
|
+
* input files are honored there, so those ride the same body.
|
|
124
|
+
*/
|
|
125
|
+
timeout?: number;
|
|
126
|
+
sessionId?: string;
|
|
127
|
+
files?: t.CodeEnvFile[];
|
|
128
|
+
runtimeSessionHint?: string;
|
|
129
|
+
proxy?: string;
|
|
130
|
+
authHeaders?: t.CodeApiAuthHeaders;
|
|
131
|
+
executionProfile?: t.CodeApiExecutionProfile;
|
|
132
|
+
}): Promise<[string, t.ProgrammaticExecutionArtifact]>;
|
|
98
133
|
/**
|
|
99
134
|
* Creates a Programmatic Tool Calling tool for complex multi-tool workflows.
|
|
100
135
|
*
|
package/package.json
CHANGED
package/src/messages/format.ts
CHANGED
|
@@ -2771,12 +2771,22 @@ function extractSkillName(args: unknown): string | undefined {
|
|
|
2771
2771
|
return typeof name === 'string' && name !== '' ? name : undefined;
|
|
2772
2772
|
}
|
|
2773
2773
|
|
|
2774
|
+
function isSdkManagedToolName(name: unknown): name is string {
|
|
2775
|
+
return (
|
|
2776
|
+
typeof name === 'string' &&
|
|
2777
|
+
(name === Constants.SUBAGENT ||
|
|
2778
|
+
name === 'conditional_transfer' ||
|
|
2779
|
+
name.startsWith(Constants.LC_TRANSFER_TO_))
|
|
2780
|
+
);
|
|
2781
|
+
}
|
|
2782
|
+
|
|
2774
2783
|
/**
|
|
2775
2784
|
* Formats an array of messages for LangChain, handling tool calls and creating ToolMessage instances.
|
|
2776
2785
|
*
|
|
2777
2786
|
* @param payload - The array of messages to format.
|
|
2778
2787
|
* @param indexTokenCountMap - Optional map of message indices to token counts.
|
|
2779
|
-
* @param tools - Optional set of tool names
|
|
2788
|
+
* @param tools - Optional set of host-managed tool names allowed in the request. SDK-managed tool
|
|
2789
|
+
* names are preserved independently.
|
|
2780
2790
|
* @param skills - Optional map of skill name to body for reconstructing skill HumanMessages.
|
|
2781
2791
|
* @param options - Optional formatting options (provider, skipSkillBodyNames).
|
|
2782
2792
|
* @returns - Object containing formatted messages and updated indexTokenCountMap if provided.
|
|
@@ -2957,8 +2967,8 @@ export const formatAgentMessages = (
|
|
|
2957
2967
|
|
|
2958
2968
|
/**
|
|
2959
2969
|
* If tools set is provided, process tool_calls:
|
|
2960
|
-
* - Keep valid tool_calls (tools in the set or dynamically discovered)
|
|
2961
|
-
* -
|
|
2970
|
+
* - Keep valid tool_calls (tools in the set, SDK-managed, or dynamically discovered)
|
|
2971
|
+
* - Omit invalid tool_calls without exposing their output as assistant-authored text
|
|
2962
2972
|
* - Dynamically expand the set when tool_search results are encountered
|
|
2963
2973
|
*/
|
|
2964
2974
|
let processedMessage = message;
|
|
@@ -2977,8 +2987,6 @@ export const formatAgentMessages = (
|
|
|
2977
2987
|
const filteredContent: typeof content = [];
|
|
2978
2988
|
const filteredSourceContentPartIndices: SourceContentPartIndices[] = [];
|
|
2979
2989
|
const invalidToolCallIds = new Set<string>();
|
|
2980
|
-
const invalidToolStrings: string[] = [];
|
|
2981
|
-
const invalidToolSourceContentPartIndices: number[] = [];
|
|
2982
2990
|
|
|
2983
2991
|
for (let partIndex = 0; partIndex < content.length; partIndex++) {
|
|
2984
2992
|
const part = content[partIndex] as
|
|
@@ -3029,7 +3037,10 @@ export const formatAgentMessages = (
|
|
|
3029
3037
|
}
|
|
3030
3038
|
}
|
|
3031
3039
|
|
|
3032
|
-
if (
|
|
3040
|
+
if (
|
|
3041
|
+
discoveredTools.has(toolName) ||
|
|
3042
|
+
isSdkManagedToolName(toolName)
|
|
3043
|
+
) {
|
|
3033
3044
|
filteredContent.push(part);
|
|
3034
3045
|
filteredSourceContentPartIndices.push(partSourceContentIndices);
|
|
3035
3046
|
if (
|
|
@@ -3042,20 +3053,11 @@ export const formatAgentMessages = (
|
|
|
3042
3053
|
(pendingSkillNames ??= new Set()).add(skillName);
|
|
3043
3054
|
}
|
|
3044
3055
|
}
|
|
3045
|
-
} else
|
|
3046
|
-
|
|
3047
|
-
|
|
3048
|
-
|
|
3049
|
-
|
|
3050
|
-
) {
|
|
3051
|
-
invalidToolCallIds.add(part.tool_call.id);
|
|
3052
|
-
}
|
|
3053
|
-
const output = part.tool_call.output ?? '';
|
|
3054
|
-
invalidToolStrings.push(`Tool: ${toolName}, ${output}`);
|
|
3055
|
-
appendSourceContentPartIndices(
|
|
3056
|
-
invalidToolSourceContentPartIndices,
|
|
3057
|
-
partSourceContentIndices
|
|
3058
|
-
);
|
|
3056
|
+
} else if (
|
|
3057
|
+
typeof part.tool_call.id === 'string' &&
|
|
3058
|
+
part.tool_call.id !== ''
|
|
3059
|
+
) {
|
|
3060
|
+
invalidToolCallIds.add(part.tool_call.id);
|
|
3059
3061
|
}
|
|
3060
3062
|
}
|
|
3061
3063
|
|
|
@@ -3076,57 +3078,8 @@ export const formatAgentMessages = (
|
|
|
3076
3078
|
}
|
|
3077
3079
|
}
|
|
3078
3080
|
|
|
3079
|
-
/** Append invalid tool strings to the content for context preservation */
|
|
3080
|
-
if (invalidToolStrings.length > 0) {
|
|
3081
|
-
/** Find the last text part or create one */
|
|
3082
|
-
let lastTextPartIndex = -1;
|
|
3083
|
-
for (let j = filteredContent.length - 1; j >= 0; j--) {
|
|
3084
|
-
if (filteredContent[j].type === ContentTypes.TEXT) {
|
|
3085
|
-
lastTextPartIndex = j;
|
|
3086
|
-
break;
|
|
3087
|
-
}
|
|
3088
|
-
}
|
|
3089
|
-
|
|
3090
|
-
const invalidToolText = invalidToolStrings.join('\n');
|
|
3091
|
-
if (lastTextPartIndex >= 0) {
|
|
3092
|
-
const lastTextPart = filteredContent[lastTextPartIndex] as {
|
|
3093
|
-
type: string;
|
|
3094
|
-
[ContentTypes.TEXT]?: string;
|
|
3095
|
-
text?: string;
|
|
3096
|
-
};
|
|
3097
|
-
const existingText =
|
|
3098
|
-
lastTextPart[ContentTypes.TEXT] ?? lastTextPart.text ?? '';
|
|
3099
|
-
filteredContent[lastTextPartIndex] = {
|
|
3100
|
-
...lastTextPart,
|
|
3101
|
-
[ContentTypes.TEXT]: existingText
|
|
3102
|
-
? `${existingText}\n${invalidToolText}`
|
|
3103
|
-
: invalidToolText,
|
|
3104
|
-
};
|
|
3105
|
-
const lastTextSourceContentPartIndices =
|
|
3106
|
-
filteredSourceContentPartIndices[lastTextPartIndex];
|
|
3107
|
-
filteredSourceContentPartIndices[lastTextPartIndex] = [
|
|
3108
|
-
...(typeof lastTextSourceContentPartIndices === 'number'
|
|
3109
|
-
? [lastTextSourceContentPartIndices]
|
|
3110
|
-
: lastTextSourceContentPartIndices),
|
|
3111
|
-
...invalidToolSourceContentPartIndices,
|
|
3112
|
-
];
|
|
3113
|
-
} else {
|
|
3114
|
-
/** No text part exists, create one */
|
|
3115
|
-
filteredContent.push({
|
|
3116
|
-
type: ContentTypes.TEXT,
|
|
3117
|
-
[ContentTypes.TEXT]: invalidToolText,
|
|
3118
|
-
});
|
|
3119
|
-
filteredSourceContentPartIndices.push(
|
|
3120
|
-
invalidToolSourceContentPartIndices
|
|
3121
|
-
);
|
|
3122
|
-
}
|
|
3123
|
-
}
|
|
3124
|
-
|
|
3125
3081
|
/** Use filtered content if we made any changes */
|
|
3126
|
-
if (
|
|
3127
|
-
filteredContent.length !== content.length ||
|
|
3128
|
-
invalidToolStrings.length > 0
|
|
3129
|
-
) {
|
|
3082
|
+
if (filteredContent.length !== content.length) {
|
|
3130
3083
|
processedMessage = { ...message, content: filteredContent };
|
|
3131
3084
|
processedSourceContentPartIndices = filteredSourceContentPartIndices;
|
|
3132
3085
|
}
|
|
@@ -14,11 +14,7 @@ import {
|
|
|
14
14
|
selectRuntimeSessionHint,
|
|
15
15
|
} from './CodeExecutor';
|
|
16
16
|
import {
|
|
17
|
-
|
|
18
|
-
executeTools,
|
|
19
|
-
formatCompletedResponse,
|
|
20
|
-
} from './ProgrammaticToolCalling';
|
|
21
|
-
import {
|
|
17
|
+
assertUnambiguousIdentifiers,
|
|
22
18
|
projectProgrammaticToolMap,
|
|
23
19
|
resolveProgrammaticToolDefinitions,
|
|
24
20
|
selectProgrammaticTools,
|
|
@@ -29,6 +25,12 @@ import {
|
|
|
29
25
|
createCodeApiRunTimeoutSchema,
|
|
30
26
|
resolveCodeApiRunTimeoutMs,
|
|
31
27
|
} from './ptcTimeout';
|
|
28
|
+
import {
|
|
29
|
+
makeRequest,
|
|
30
|
+
executeTools,
|
|
31
|
+
runPlainExecution,
|
|
32
|
+
formatCompletedResponse,
|
|
33
|
+
} from './ProgrammaticToolCalling';
|
|
32
34
|
import { INTENT_PROPERTY } from '@/tools/intentArg';
|
|
33
35
|
import { Constants } from '@/common';
|
|
34
36
|
|
|
@@ -117,7 +119,7 @@ ${CORE_RULES}`;
|
|
|
117
119
|
|
|
118
120
|
const TOOL_MANIFEST_DESCRIPTION =
|
|
119
121
|
'Exact registered tool names used by the code. Required when direct-only tools are configured; ' +
|
|
120
|
-
'validated before execution starts.';
|
|
122
|
+
'validated before execution starts. Pass [] when the code calls no tools at all.';
|
|
121
123
|
|
|
122
124
|
// ============================================================================
|
|
123
125
|
// Schema
|
|
@@ -361,22 +363,41 @@ export function createBashProgrammaticToolCallingTool(
|
|
|
361
363
|
programmaticToolName,
|
|
362
364
|
});
|
|
363
365
|
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
366
|
+
/* These guard the replay path only. A call that selected no tools never
|
|
367
|
+
* replays, and event-driven ToolNode configurations legitimately inject
|
|
368
|
+
* an empty toolMap/toolDefs. Injected context is still required to
|
|
369
|
+
* conclude that — with nothing injected at all, an empty selection means
|
|
370
|
+
* the host wired the tool up wrong. */
|
|
371
|
+
const needsNoTools =
|
|
372
|
+
effectiveTools.length === 0 &&
|
|
373
|
+
(params.tool_manifest?.length === 0 ||
|
|
374
|
+
toolDefs != null ||
|
|
375
|
+
disallowedToolDefs != null);
|
|
376
|
+
|
|
377
|
+
if (!needsNoTools) {
|
|
378
|
+
if (toolMap == null || toolMap.size === 0) {
|
|
379
|
+
throw new Error(
|
|
380
|
+
'No toolMap provided. ' +
|
|
381
|
+
'ToolNode should inject this from AgentContext when invoked through the graph.'
|
|
382
|
+
);
|
|
383
|
+
}
|
|
370
384
|
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
385
|
+
if (toolDefs == null || toolDefs.length === 0) {
|
|
386
|
+
throw new Error(
|
|
387
|
+
'No tool definitions provided. ' +
|
|
388
|
+
'Either pass tools in the input or ensure ToolNode injects toolDefs.'
|
|
389
|
+
);
|
|
390
|
+
}
|
|
376
391
|
}
|
|
377
392
|
|
|
393
|
+
assertUnambiguousIdentifiers(
|
|
394
|
+
effectiveTools,
|
|
395
|
+
normalizeToBashIdentifier,
|
|
396
|
+
programmaticToolName
|
|
397
|
+
);
|
|
398
|
+
|
|
378
399
|
const effectiveToolMap = projectProgrammaticToolMap(
|
|
379
|
-
toolMap,
|
|
400
|
+
toolMap ?? new Map(),
|
|
380
401
|
effectiveTools
|
|
381
402
|
);
|
|
382
403
|
|
|
@@ -391,7 +412,7 @@ export function createBashProgrammaticToolCallingTool(
|
|
|
391
412
|
// eslint-disable-next-line no-console
|
|
392
413
|
console.log(
|
|
393
414
|
`[BashPTC Debug] Sending ${effectiveTools.length} tools to API ` +
|
|
394
|
-
`(selected from ${toolDefs
|
|
415
|
+
`(selected from ${toolDefs?.length ?? 0})`
|
|
395
416
|
);
|
|
396
417
|
}
|
|
397
418
|
|
|
@@ -423,6 +444,23 @@ export function createBashProgrammaticToolCallingTool(
|
|
|
423
444
|
? selectedRuntimeSessionHint
|
|
424
445
|
: undefined;
|
|
425
446
|
|
|
447
|
+
/* Raw `code`, not `preparedCode`: the `$!` guard exists for the
|
|
448
|
+
* programmatic replay wrapper, which plain `/exec` never applies. */
|
|
449
|
+
if (needsNoTools) {
|
|
450
|
+
return await runPlainExecution({
|
|
451
|
+
baseUrl,
|
|
452
|
+
lang: 'bash',
|
|
453
|
+
code,
|
|
454
|
+
timeout,
|
|
455
|
+
sessionId: session_id,
|
|
456
|
+
files,
|
|
457
|
+
runtimeSessionHint,
|
|
458
|
+
proxy,
|
|
459
|
+
authHeaders: initParams.authHeaders,
|
|
460
|
+
executionProfile: initParams.executionProfile,
|
|
461
|
+
});
|
|
462
|
+
}
|
|
463
|
+
|
|
426
464
|
let response = await makeRequest(
|
|
427
465
|
EXEC_ENDPOINT,
|
|
428
466
|
{
|
|
@@ -43,6 +43,37 @@ export function assertDisallowedToolUsage(
|
|
|
43
43
|
);
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
+
/**
|
|
47
|
+
* Rejects a stub set holding two tools that collapse to one runtime identifier.
|
|
48
|
+
*
|
|
49
|
+
* Stub generation binds by identifier, so such tools are indistinguishable once
|
|
50
|
+
* emitted — the generated program defines both and the later one wins. Failing
|
|
51
|
+
* beats dispatching by declaration order.
|
|
52
|
+
*
|
|
53
|
+
* Called on the set each backend actually emits, not on the selection: a
|
|
54
|
+
* definition dropped before codegen never binds an identifier, so a collision
|
|
55
|
+
* among such definitions is not a conflict.
|
|
56
|
+
*/
|
|
57
|
+
export function assertUnambiguousIdentifiers(
|
|
58
|
+
selectedToolDefs: readonly t.LCTool[],
|
|
59
|
+
normalizeIdentifier: (name: string) => string,
|
|
60
|
+
programmaticToolName: string
|
|
61
|
+
): void {
|
|
62
|
+
const seen = new Map<string, string>();
|
|
63
|
+
for (const toolDef of selectedToolDefs) {
|
|
64
|
+
const identifier = normalizeIdentifier(toolDef.name);
|
|
65
|
+
const prior = seen.get(identifier);
|
|
66
|
+
if (prior != null && prior !== toolDef.name) {
|
|
67
|
+
throw new Error(
|
|
68
|
+
`Tools "${prior}" and "${toolDef.name}" both become "${identifier}" in ` +
|
|
69
|
+
`the sandbox, so "${programmaticToolName}" cannot tell which one the ` +
|
|
70
|
+
'code means. Call them directly, or rename one.'
|
|
71
|
+
);
|
|
72
|
+
}
|
|
73
|
+
seen.set(identifier, toolDef.name);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
46
77
|
export function selectProgrammaticTools(args: {
|
|
47
78
|
requestedToolNames?: string[];
|
|
48
79
|
allowedToolDefs?: t.LCTool[];
|