@librechat/agents 3.2.46 → 3.2.52
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/MultiAgentGraph.cjs +6 -6
- package/dist/cjs/graphs/MultiAgentGraph.cjs.map +1 -1
- package/dist/cjs/llm/anthropic/index.cjs +4 -3
- package/dist/cjs/llm/anthropic/index.cjs.map +1 -1
- package/dist/cjs/llm/anthropic/utils/tools.cjs +2 -1
- package/dist/cjs/llm/anthropic/utils/tools.cjs.map +1 -1
- package/dist/cjs/llm/bedrock/cachePoints.cjs +28 -0
- package/dist/cjs/llm/bedrock/cachePoints.cjs.map +1 -0
- package/dist/cjs/llm/bedrock/index.cjs +10 -1
- package/dist/cjs/llm/bedrock/index.cjs.map +1 -1
- package/dist/cjs/llm/openrouter/index.cjs.map +1 -1
- package/dist/cjs/run.cjs +21 -3
- package/dist/cjs/run.cjs.map +1 -1
- package/dist/cjs/tools/ToolNode.cjs +26 -5
- package/dist/cjs/tools/ToolNode.cjs.map +1 -1
- package/dist/esm/graphs/MultiAgentGraph.mjs +7 -7
- package/dist/esm/graphs/MultiAgentGraph.mjs.map +1 -1
- package/dist/esm/llm/anthropic/index.mjs +4 -3
- package/dist/esm/llm/anthropic/index.mjs.map +1 -1
- package/dist/esm/llm/anthropic/utils/tools.mjs +2 -1
- package/dist/esm/llm/anthropic/utils/tools.mjs.map +1 -1
- package/dist/esm/llm/bedrock/cachePoints.mjs +28 -0
- package/dist/esm/llm/bedrock/cachePoints.mjs.map +1 -0
- package/dist/esm/llm/bedrock/index.mjs +10 -1
- package/dist/esm/llm/bedrock/index.mjs.map +1 -1
- package/dist/esm/llm/openrouter/index.mjs.map +1 -1
- package/dist/esm/run.mjs +21 -3
- package/dist/esm/run.mjs.map +1 -1
- package/dist/esm/tools/ToolNode.mjs +26 -5
- package/dist/esm/tools/ToolNode.mjs.map +1 -1
- package/dist/types/llm/anthropic/utils/tools.d.ts +1 -1
- package/dist/types/llm/bedrock/cachePoints.d.ts +9 -0
- package/dist/types/run.d.ts +15 -1
- package/dist/types/tools/ToolNode.d.ts +9 -2
- package/package.json +16 -21
- package/src/graphs/MultiAgentGraph.ts +7 -12
- package/src/llm/anthropic/index.ts +13 -2
- package/src/llm/anthropic/inherited-content-utils.spec.ts +244 -0
- package/src/llm/anthropic/inherited-stream-events.spec.ts +752 -0
- package/src/llm/anthropic/inherited-strict.spec.ts +302 -0
- package/src/llm/anthropic/llm.spec.ts +65 -0
- package/src/llm/anthropic/utils/tools.ts +7 -1
- package/src/llm/bedrock/cachePoints.ts +86 -0
- package/src/llm/bedrock/index.ts +9 -0
- package/src/llm/bedrock/inherited-cache.spec.ts +144 -0
- package/src/llm/bedrock/inherited.spec.ts +724 -0
- package/src/llm/google/inherited-stream-events.spec.ts +350 -0
- package/src/llm/openai/inherited-deepseek.spec.ts +347 -0
- package/src/llm/openai/inherited-xai.spec.ts +416 -0
- package/src/llm/openai/llm.spec.ts +1568 -0
- package/src/llm/openrouter/index.ts +1 -3
- package/src/llm/vertexai/inherited-stream-events.spec.ts +271 -0
- package/src/run.ts +31 -3
- package/src/scripts/handoff-test.ts +5 -6
- package/src/tools/ToolNode.ts +43 -5
- package/src/tools/__tests__/ToolNode.runtimeState.test.ts +120 -0
- package/src/tools/__tests__/hitl.test.ts +162 -0
|
@@ -470,7 +470,7 @@ var ToolNode = class extends RunnableCallable {
|
|
|
470
470
|
* substitutions. Omit when no registration should occur.
|
|
471
471
|
*/
|
|
472
472
|
async runTool(call, config, batchContext = {}) {
|
|
473
|
-
const { batchIndex, turn, batchScopeId, resolvedArgsByCallId, preBatchSnapshot } = batchContext;
|
|
473
|
+
const { batchIndex, turn, batchScopeId, resolvedArgsByCallId, preBatchSnapshot, runInput } = batchContext;
|
|
474
474
|
const tool = this.toolMap.get(call.name);
|
|
475
475
|
const registry = this.toolOutputRegistry;
|
|
476
476
|
let resolveFn;
|
|
@@ -578,7 +578,24 @@ var ToolNode = class extends RunnableCallable {
|
|
|
578
578
|
if (codeSession?.files != null && codeSession.files.length > 0) invokeParams._injected_files = codeSession.files.map((file) => toInjectedFileRef(file, execSessionId));
|
|
579
579
|
}
|
|
580
580
|
}
|
|
581
|
-
|
|
581
|
+
/**
|
|
582
|
+
* Forward the graph state as langgraph 1.4's `runtime.state` so
|
|
583
|
+
* tools can read it off their second argument instead of the
|
|
584
|
+
* deprecated `getCurrentTaskInput()` (which relies on
|
|
585
|
+
* `node:async_hooks` and is browser-incompatible). Shape mirrors
|
|
586
|
+
* langgraph's prebuilt ToolNode runtime exactly.
|
|
587
|
+
*/
|
|
588
|
+
const lgConfig = config;
|
|
589
|
+
const runtime = {
|
|
590
|
+
...config,
|
|
591
|
+
state: runInput,
|
|
592
|
+
toolCallId: call.id ?? "",
|
|
593
|
+
config,
|
|
594
|
+
context: lgConfig.context,
|
|
595
|
+
store: lgConfig.store ?? null,
|
|
596
|
+
writer: lgConfig.writer ?? config.configurable?.writer ?? null
|
|
597
|
+
};
|
|
598
|
+
const output = await tool.invoke(invokeParams, runtime);
|
|
582
599
|
if (isCommand(output)) return output;
|
|
583
600
|
if (isBaseMessage(output) && output._getType() === "tool") {
|
|
584
601
|
const toolMsg = output;
|
|
@@ -1924,12 +1941,14 @@ var ToolNode = class extends RunnableCallable {
|
|
|
1924
1941
|
batchScopeId
|
|
1925
1942
|
});
|
|
1926
1943
|
const directAdditionalContexts = [];
|
|
1944
|
+
const { lg_tool_call: _sendToolCall, ...sendState } = input;
|
|
1927
1945
|
const sendOutput = await this.runDirectToolWithLifecycleHooks(input.lg_tool_call, config, {
|
|
1928
1946
|
batchIndex: 0,
|
|
1929
1947
|
turn,
|
|
1930
1948
|
batchScopeId,
|
|
1931
1949
|
resolvedArgsByCallId,
|
|
1932
|
-
additionalContextsSink: directAdditionalContexts
|
|
1950
|
+
additionalContextsSink: directAdditionalContexts,
|
|
1951
|
+
runInput: sendState
|
|
1933
1952
|
});
|
|
1934
1953
|
outputs = directAdditionalContexts.length > 0 ? [sendOutput, new HumanMessage({
|
|
1935
1954
|
content: directAdditionalContexts.join("\n\n"),
|
|
@@ -2030,7 +2049,8 @@ var ToolNode = class extends RunnableCallable {
|
|
|
2030
2049
|
batchScopeId,
|
|
2031
2050
|
resolvedArgsByCallId,
|
|
2032
2051
|
preBatchSnapshot,
|
|
2033
|
-
additionalContextsSink: directAdditionalContexts
|
|
2052
|
+
additionalContextsSink: directAdditionalContexts,
|
|
2053
|
+
runInput: input
|
|
2034
2054
|
}))) : [];
|
|
2035
2055
|
if (directCalls.length > 0 && directOutputs.length > 0) await this.handleRunToolCompletions(directCalls, directOutputs, config, resolvedArgsByCallId);
|
|
2036
2056
|
const eventResult = eventCalls.length > 0 ? await this.dispatchToolEvents(eventCalls, config, {
|
|
@@ -2065,7 +2085,8 @@ var ToolNode = class extends RunnableCallable {
|
|
|
2065
2085
|
batchScopeId,
|
|
2066
2086
|
resolvedArgsByCallId,
|
|
2067
2087
|
preBatchSnapshot,
|
|
2068
|
-
additionalContextsSink: directAdditionalContexts
|
|
2088
|
+
additionalContextsSink: directAdditionalContexts,
|
|
2089
|
+
runInput: input
|
|
2069
2090
|
})));
|
|
2070
2091
|
await this.handleRunToolCompletions(filteredCalls, toolOutputs, config, resolvedArgsByCallId);
|
|
2071
2092
|
outputs = directAdditionalContexts.length > 0 ? [...toolOutputs, new HumanMessage({
|