@librechat/agents 3.6.16 → 3.7.1
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/_virtual/_rolldown/runtime.cjs +10 -0
- package/dist/cjs/agents/AgentContext.cjs +11 -2
- package/dist/cjs/agents/AgentContext.cjs.map +1 -1
- package/dist/cjs/graphs/Graph.cjs +12 -9
- package/dist/cjs/graphs/Graph.cjs.map +1 -1
- package/dist/cjs/lazyRequire.cjs +33 -0
- package/dist/cjs/lazyRequire.cjs.map +1 -0
- package/dist/cjs/llm/anthropic/index.cjs +13 -0
- package/dist/cjs/llm/anthropic/index.cjs.map +1 -1
- package/dist/cjs/llm/bedrock/index.cjs +10 -1
- package/dist/cjs/llm/bedrock/index.cjs.map +1 -1
- package/dist/cjs/llm/bedrock/toolCache.cjs +3 -2
- package/dist/cjs/llm/bedrock/toolCache.cjs.map +1 -1
- package/dist/cjs/llm/google/index.cjs +10 -1
- package/dist/cjs/llm/google/index.cjs.map +1 -1
- package/dist/cjs/llm/init.cjs +6 -4
- package/dist/cjs/llm/init.cjs.map +1 -1
- package/dist/cjs/llm/invoke.cjs +56 -9
- package/dist/cjs/llm/invoke.cjs.map +1 -1
- package/dist/cjs/llm/mistral/index.cjs +9 -0
- package/dist/cjs/llm/mistral/index.cjs.map +1 -1
- package/dist/cjs/llm/openai/index.cjs +42 -2
- package/dist/cjs/llm/openai/index.cjs.map +1 -1
- package/dist/cjs/llm/openrouter/index.cjs +12 -3
- package/dist/cjs/llm/openrouter/index.cjs.map +1 -1
- package/dist/cjs/llm/openrouter/toolCache.cjs +3 -2
- package/dist/cjs/llm/openrouter/toolCache.cjs.map +1 -1
- package/dist/cjs/llm/providerRegistry.cjs +15 -3
- package/dist/cjs/llm/providerRegistry.cjs.map +1 -1
- package/dist/cjs/llm/providers.cjs +18 -22
- package/dist/cjs/llm/providers.cjs.map +1 -1
- package/dist/cjs/llm/providers.eager.cjs +21 -0
- package/dist/cjs/llm/providers.eager.cjs.map +1 -0
- package/dist/cjs/llm/vertexai/index.cjs +17 -0
- package/dist/cjs/llm/vertexai/index.cjs.map +1 -1
- package/dist/cjs/main.cjs +19 -11
- package/dist/cjs/messages/content.cjs +8 -5
- package/dist/cjs/messages/content.cjs.map +1 -1
- package/dist/cjs/messages/core.cjs +9 -4
- package/dist/cjs/messages/core.cjs.map +1 -1
- package/dist/cjs/messages/format.cjs +15 -5
- package/dist/cjs/messages/format.cjs.map +1 -1
- package/dist/cjs/messages/index.cjs +2 -1
- package/dist/cjs/messages/projectionInvariant.cjs +74 -0
- package/dist/cjs/messages/projectionInvariant.cjs.map +1 -0
- package/dist/cjs/messages/provenance.cjs +30 -8
- package/dist/cjs/messages/provenance.cjs.map +1 -1
- package/dist/cjs/messages/prune.cjs +42 -8
- package/dist/cjs/messages/prune.cjs.map +1 -1
- package/dist/cjs/messages/recency.cjs +202 -7
- package/dist/cjs/messages/recency.cjs.map +1 -1
- package/dist/cjs/messages/toolResultTypes.cjs +1 -0
- package/dist/cjs/run.cjs +7 -2
- package/dist/cjs/run.cjs.map +1 -1
- package/dist/cjs/session/AgentSession.cjs +4 -23
- package/dist/cjs/session/AgentSession.cjs.map +1 -1
- package/dist/cjs/session/deriveMessages.cjs +25 -0
- package/dist/cjs/session/deriveMessages.cjs.map +1 -0
- package/dist/cjs/session/index.cjs +1 -0
- package/dist/cjs/summarization/node.cjs +13 -6
- package/dist/cjs/summarization/node.cjs.map +1 -1
- package/dist/cjs/tools/Calculator.cjs +7 -4
- package/dist/cjs/tools/Calculator.cjs.map +1 -1
- package/dist/cjs/tools/CodeExecutor.cjs +1 -1
- package/dist/cjs/tools/subagent/InMemorySubagentTaskStore.cjs +65 -8
- package/dist/cjs/tools/subagent/InMemorySubagentTaskStore.cjs.map +1 -1
- package/dist/cjs/utils/llm.cjs +16 -0
- package/dist/cjs/utils/llm.cjs.map +1 -1
- package/dist/esm/_virtual/_rolldown/runtime.mjs +14 -0
- package/dist/esm/agents/AgentContext.mjs +11 -2
- package/dist/esm/agents/AgentContext.mjs.map +1 -1
- package/dist/esm/graphs/Graph.mjs +12 -9
- package/dist/esm/graphs/Graph.mjs.map +1 -1
- package/dist/esm/lazyRequire.mjs +30 -0
- package/dist/esm/lazyRequire.mjs.map +1 -0
- package/dist/esm/llm/anthropic/index.mjs +6 -1
- package/dist/esm/llm/anthropic/index.mjs.map +1 -1
- package/dist/esm/llm/bedrock/index.mjs +4 -2
- package/dist/esm/llm/bedrock/index.mjs.map +1 -1
- package/dist/esm/llm/bedrock/toolCache.mjs +3 -2
- package/dist/esm/llm/bedrock/toolCache.mjs.map +1 -1
- package/dist/esm/llm/google/index.mjs +4 -2
- package/dist/esm/llm/google/index.mjs.map +1 -1
- package/dist/esm/llm/init.mjs +7 -5
- package/dist/esm/llm/init.mjs.map +1 -1
- package/dist/esm/llm/invoke.mjs +56 -9
- package/dist/esm/llm/invoke.mjs.map +1 -1
- package/dist/esm/llm/mistral/index.mjs +3 -1
- package/dist/esm/llm/mistral/index.mjs.map +1 -1
- package/dist/esm/llm/openai/index.mjs +32 -10
- package/dist/esm/llm/openai/index.mjs.map +1 -1
- package/dist/esm/llm/openrouter/index.mjs +3 -1
- package/dist/esm/llm/openrouter/index.mjs.map +1 -1
- package/dist/esm/llm/openrouter/toolCache.mjs +3 -2
- package/dist/esm/llm/openrouter/toolCache.mjs.map +1 -1
- package/dist/esm/llm/providerRegistry.mjs +15 -3
- package/dist/esm/llm/providerRegistry.mjs.map +1 -1
- package/dist/esm/llm/providers.eager.mjs +22 -0
- package/dist/esm/llm/providers.eager.mjs.map +1 -0
- package/dist/esm/llm/providers.mjs +19 -23
- package/dist/esm/llm/providers.mjs.map +1 -1
- package/dist/esm/llm/vertexai/index.mjs +8 -1
- package/dist/esm/llm/vertexai/index.mjs.map +1 -1
- package/dist/esm/main.mjs +10 -11
- package/dist/esm/messages/content.mjs +8 -6
- package/dist/esm/messages/content.mjs.map +1 -1
- package/dist/esm/messages/core.mjs +9 -5
- package/dist/esm/messages/core.mjs.map +1 -1
- package/dist/esm/messages/format.mjs +16 -6
- package/dist/esm/messages/format.mjs.map +1 -1
- package/dist/esm/messages/index.mjs +2 -1
- package/dist/esm/messages/projectionInvariant.mjs +72 -0
- package/dist/esm/messages/projectionInvariant.mjs.map +1 -0
- package/dist/esm/messages/provenance.mjs +30 -9
- package/dist/esm/messages/provenance.mjs.map +1 -1
- package/dist/esm/messages/prune.mjs +42 -9
- package/dist/esm/messages/prune.mjs.map +1 -1
- package/dist/esm/messages/recency.mjs +201 -8
- package/dist/esm/messages/recency.mjs.map +1 -1
- package/dist/esm/messages/toolResultTypes.mjs +1 -1
- package/dist/esm/run.mjs +8 -3
- package/dist/esm/run.mjs.map +1 -1
- package/dist/esm/session/AgentSession.mjs +4 -23
- package/dist/esm/session/AgentSession.mjs.map +1 -1
- package/dist/esm/session/deriveMessages.mjs +25 -0
- package/dist/esm/session/deriveMessages.mjs.map +1 -0
- package/dist/esm/session/index.mjs +1 -0
- package/dist/esm/summarization/node.mjs +14 -7
- package/dist/esm/summarization/node.mjs.map +1 -1
- package/dist/esm/tools/Calculator.mjs +7 -2
- package/dist/esm/tools/Calculator.mjs.map +1 -1
- package/dist/esm/tools/CodeExecutor.mjs +1 -1
- package/dist/esm/tools/subagent/InMemorySubagentTaskStore.mjs +65 -8
- package/dist/esm/tools/subagent/InMemorySubagentTaskStore.mjs.map +1 -1
- package/dist/esm/utils/llm.mjs +15 -1
- package/dist/esm/utils/llm.mjs.map +1 -1
- package/dist/types/agents/AgentContext.d.ts +6 -1
- package/dist/types/index.d.ts +3 -3
- package/dist/types/lazyRequire.d.ts +8 -0
- package/dist/types/llm/providerRegistry.d.ts +11 -0
- package/dist/types/llm/providers.eager.d.ts +1 -0
- package/dist/types/messages/content.d.ts +4 -1
- package/dist/types/messages/core.d.ts +2 -0
- package/dist/types/messages/format.d.ts +6 -0
- package/dist/types/messages/index.d.ts +1 -0
- package/dist/types/messages/projectionInvariant.d.ts +25 -0
- package/dist/types/messages/provenance.d.ts +10 -0
- package/dist/types/messages/prune.d.ts +5 -4
- package/dist/types/messages/recency.d.ts +30 -18
- package/dist/types/session/deriveMessages.d.ts +11 -0
- package/dist/types/session/index.d.ts +2 -0
- package/dist/types/tools/subagent/InMemorySubagentTaskStore.d.ts +13 -1
- package/dist/types/types/graph.d.ts +1 -1
- package/dist/types/types/subagentTasks.d.ts +22 -0
- package/dist/types/types/summarize.d.ts +15 -13
- package/dist/types/utils/llm.d.ts +10 -0
- package/package.json +60 -1
- package/src/agents/AgentContext.ts +19 -5
- package/src/graphs/Graph.ts +11 -9
- package/src/index.ts +3 -3
- package/src/lazyRequire.ts +67 -0
- package/src/llm/bedrock/toolCache.ts +6 -2
- package/src/llm/init.ts +15 -8
- package/src/llm/invoke.ts +102 -23
- package/src/llm/openrouter/toolCache.ts +8 -2
- package/src/llm/providerRegistry.ts +41 -1
- package/src/llm/providers.eager.ts +24 -0
- package/src/llm/providers.ts +63 -49
- package/src/messages/content.ts +20 -10
- package/src/messages/core.ts +16 -11
- package/src/messages/format.ts +29 -5
- package/src/messages/index.ts +1 -0
- package/src/messages/projectionInvariant.ts +134 -0
- package/src/messages/provenance.ts +60 -18
- package/src/messages/prune.ts +86 -11
- package/src/messages/recency.ts +429 -27
- package/src/run.ts +14 -6
- package/src/session/AgentSession.ts +4 -30
- package/src/session/deriveMessages.ts +37 -0
- package/src/session/index.ts +2 -0
- package/src/summarization/node.ts +37 -15
- package/src/tools/Calculator.ts +9 -2
- package/src/tools/subagent/InMemorySubagentTaskStore.ts +139 -6
- package/src/types/graph.ts +1 -0
- package/src/types/subagentTasks.ts +28 -0
- package/src/types/summarize.ts +15 -13
- package/src/utils/llm.ts +39 -0
|
@@ -5,6 +5,7 @@ const DEFAULT_MAX_ERROR_CHARS = 4 * 1024;
|
|
|
5
5
|
const DEFAULT_MAX_MESSAGE_CHARS = 64 * 1024;
|
|
6
6
|
const DEFAULT_TASK_TIMEOUT_MS = 1800 * 1e3;
|
|
7
7
|
const DEFAULT_MAX_CONTROLS = 32;
|
|
8
|
+
const DEFAULT_MAX_CONTROL_RECEIPTS = 64;
|
|
8
9
|
const DEFAULT_MAX_RESULT_CHARS = 1e5;
|
|
9
10
|
const DEFAULT_MAX_RUNNING_PER_SCOPE = 10;
|
|
10
11
|
const DEFAULT_MAX_RUNNING_TOTAL = 100;
|
|
@@ -20,6 +21,7 @@ function resolveOptions(options) {
|
|
|
20
21
|
completedTtlMs: resolvePositiveInteger(options.completedTtlMs, DEFAULT_COMPLETED_TTL_MS),
|
|
21
22
|
maxControlMessageChars: resolvePositiveInteger(options.maxControlMessageChars, DEFAULT_MAX_MESSAGE_CHARS),
|
|
22
23
|
maxControlsPerTask: resolvePositiveInteger(options.maxControlsPerTask, DEFAULT_MAX_CONTROLS),
|
|
24
|
+
maxControlReceiptsPerTask: Math.max(resolvePositiveInteger(options.maxControlReceiptsPerTask, DEFAULT_MAX_CONTROL_RECEIPTS), resolvePositiveInteger(options.maxControlsPerTask, DEFAULT_MAX_CONTROLS)),
|
|
23
25
|
maxErrorChars: resolvePositiveInteger(options.maxErrorChars, DEFAULT_MAX_ERROR_CHARS),
|
|
24
26
|
maxResultChars: resolvePositiveInteger(options.maxResultChars, DEFAULT_MAX_RESULT_CHARS),
|
|
25
27
|
maxRunningPerScope: Math.min(resolvePositiveInteger(options.maxRunningPerScope, DEFAULT_MAX_RUNNING_PER_SCOPE), maxTasksPerScope),
|
|
@@ -58,10 +60,14 @@ function snapshot(task) {
|
|
|
58
60
|
resultAvailable: task.status === "completed" && task.result != null && !task.resultClaimed,
|
|
59
61
|
resultClaimed: task.resultClaimed,
|
|
60
62
|
pendingControls: task.controls.length,
|
|
63
|
+
controlReceipts: [...task.controlReceipts.values()].map((receipt) => ({ ...receipt })),
|
|
61
64
|
...task.progress == null ? {} : { progress: { ...task.progress } },
|
|
62
65
|
...task.error == null ? {} : { error: task.error }
|
|
63
66
|
};
|
|
64
67
|
}
|
|
68
|
+
function cloneControlReceipt(receipt) {
|
|
69
|
+
return { ...receipt };
|
|
70
|
+
}
|
|
65
71
|
function abortReason(signal) {
|
|
66
72
|
return signal.reason instanceof Error ? signal.reason : /* @__PURE__ */ new Error("Detached subagent task cancelled.");
|
|
67
73
|
}
|
|
@@ -73,6 +79,12 @@ var InMemorySubagentTaskStore = class {
|
|
|
73
79
|
constructor(options = {}) {
|
|
74
80
|
this.options = resolveOptions(options);
|
|
75
81
|
}
|
|
82
|
+
onControlReceipt(_scopeId, _taskId, _receipt) {}
|
|
83
|
+
emitControlReceipt(task, receipt) {
|
|
84
|
+
try {
|
|
85
|
+
this.onControlReceipt(task.scopeId, task.id, cloneControlReceipt(receipt));
|
|
86
|
+
} catch {}
|
|
87
|
+
}
|
|
76
88
|
start(request) {
|
|
77
89
|
const scopeId = request.scopeId.trim();
|
|
78
90
|
const idempotencyKey = request.idempotencyKey.trim();
|
|
@@ -128,6 +140,7 @@ var InMemorySubagentTaskStore = class {
|
|
|
128
140
|
updatedAt: now,
|
|
129
141
|
controller: new AbortController(),
|
|
130
142
|
controls: [],
|
|
143
|
+
controlReceipts: /* @__PURE__ */ new Map(),
|
|
131
144
|
progressEvents: 0,
|
|
132
145
|
resultClaimed: false,
|
|
133
146
|
acceptingControls: true
|
|
@@ -153,6 +166,7 @@ var InMemorySubagentTaskStore = class {
|
|
|
153
166
|
}
|
|
154
167
|
task.status = "completed";
|
|
155
168
|
task.acceptingControls = false;
|
|
169
|
+
this.failPendingControls(task, "task_completed");
|
|
156
170
|
task.controls.length = 0;
|
|
157
171
|
task.result = truncateMiddle(result.content, this.options.maxResultChars);
|
|
158
172
|
task.updatedAt = Date.now();
|
|
@@ -233,11 +247,13 @@ var InMemorySubagentTaskStore = class {
|
|
|
233
247
|
status: "control_not_found",
|
|
234
248
|
task: snapshot(task)
|
|
235
249
|
};
|
|
236
|
-
task.controls.splice(index, 1);
|
|
250
|
+
const [control] = task.controls.splice(index, 1);
|
|
237
251
|
task.updatedAt = Date.now();
|
|
252
|
+
this.transitionControl(task, control.id, "rejected", { reason: "withdrawn" });
|
|
238
253
|
return {
|
|
239
254
|
status: "accepted",
|
|
240
|
-
task: snapshot(task)
|
|
255
|
+
task: snapshot(task),
|
|
256
|
+
controlId: control.id
|
|
241
257
|
};
|
|
242
258
|
}
|
|
243
259
|
const message = command.message.trim();
|
|
@@ -253,6 +269,10 @@ var InMemorySubagentTaskStore = class {
|
|
|
253
269
|
status: "invalid",
|
|
254
270
|
message: `Task already has ${this.options.maxControlsPerTask} pending messages.`
|
|
255
271
|
};
|
|
272
|
+
if (!this.makeRoomForControlReceipt(task)) return {
|
|
273
|
+
status: "invalid",
|
|
274
|
+
message: "Task control receipt capacity is unavailable."
|
|
275
|
+
};
|
|
256
276
|
const control = {
|
|
257
277
|
id: nanoid(),
|
|
258
278
|
action: command.action,
|
|
@@ -260,6 +280,15 @@ var InMemorySubagentTaskStore = class {
|
|
|
260
280
|
};
|
|
261
281
|
task.controls.push(control);
|
|
262
282
|
task.updatedAt = Date.now();
|
|
283
|
+
const receipt = {
|
|
284
|
+
controlId: control.id,
|
|
285
|
+
action: control.action,
|
|
286
|
+
status: "accepted",
|
|
287
|
+
createdAt: task.updatedAt,
|
|
288
|
+
updatedAt: task.updatedAt
|
|
289
|
+
};
|
|
290
|
+
task.controlReceipts.set(control.id, receipt);
|
|
291
|
+
this.emitControlReceipt(task, receipt);
|
|
263
292
|
return {
|
|
264
293
|
status: "accepted",
|
|
265
294
|
task: snapshot(task),
|
|
@@ -321,6 +350,30 @@ var InMemorySubagentTaskStore = class {
|
|
|
321
350
|
dropEmptyBucket(scopeId, bucket) {
|
|
322
351
|
if (bucket.tasks.size === 0 && this.buckets.get(scopeId) === bucket) this.buckets.delete(scopeId);
|
|
323
352
|
}
|
|
353
|
+
makeRoomForControlReceipt(task) {
|
|
354
|
+
while (task.controlReceipts.size >= this.options.maxControlReceiptsPerTask) {
|
|
355
|
+
const terminal = [...task.controlReceipts].find(([, receipt]) => receipt.status !== "accepted");
|
|
356
|
+
if (terminal == null) return false;
|
|
357
|
+
task.controlReceipts.delete(terminal[0]);
|
|
358
|
+
}
|
|
359
|
+
return true;
|
|
360
|
+
}
|
|
361
|
+
transitionControl(task, controlId, status, detail = {}) {
|
|
362
|
+
const receipt = task.controlReceipts.get(controlId);
|
|
363
|
+
if (receipt == null || receipt.status !== "accepted") return;
|
|
364
|
+
const transitioned = {
|
|
365
|
+
...receipt,
|
|
366
|
+
status,
|
|
367
|
+
updatedAt: Date.now(),
|
|
368
|
+
...detail.boundary == null ? {} : { boundary: detail.boundary },
|
|
369
|
+
...detail.reason == null ? {} : { reason: detail.reason }
|
|
370
|
+
};
|
|
371
|
+
task.controlReceipts.set(controlId, transitioned);
|
|
372
|
+
this.emitControlReceipt(task, transitioned);
|
|
373
|
+
}
|
|
374
|
+
failPendingControls(task, reason) {
|
|
375
|
+
for (const control of task.controls) this.transitionControl(task, control.id, reason === "task_failed" ? "failed" : "rejected", { reason });
|
|
376
|
+
}
|
|
324
377
|
scheduleExpiry(task) {
|
|
325
378
|
this.clearTaskTimeout(task);
|
|
326
379
|
this.clearTaskExpiry(task);
|
|
@@ -346,6 +399,7 @@ var InMemorySubagentTaskStore = class {
|
|
|
346
399
|
task.status = status;
|
|
347
400
|
this.runningTasks -= 1;
|
|
348
401
|
task.acceptingControls = false;
|
|
402
|
+
this.failPendingControls(task, status === "cancelled" ? "task_cancelled" : "task_failed");
|
|
349
403
|
task.controls.length = 0;
|
|
350
404
|
task.error = message;
|
|
351
405
|
task.updatedAt = Date.now();
|
|
@@ -353,13 +407,16 @@ var InMemorySubagentTaskStore = class {
|
|
|
353
407
|
task.controller.abort(resolved);
|
|
354
408
|
}
|
|
355
409
|
createRuntime(task) {
|
|
356
|
-
const take = (accept) => {
|
|
410
|
+
const take = (boundary, accept) => {
|
|
357
411
|
if (task.status !== "running") return [];
|
|
358
412
|
const selected = [];
|
|
359
413
|
const retained = [];
|
|
360
414
|
for (const control of task.controls) (accept(control) ? selected : retained).push(control);
|
|
361
415
|
task.controls = retained;
|
|
362
|
-
if (selected.length > 0)
|
|
416
|
+
if (selected.length > 0) {
|
|
417
|
+
task.updatedAt = Date.now();
|
|
418
|
+
for (const control of selected) this.transitionControl(task, control.id, "applied", { boundary });
|
|
419
|
+
}
|
|
363
420
|
return selected.map(toInjectedMessage);
|
|
364
421
|
};
|
|
365
422
|
return {
|
|
@@ -367,12 +424,12 @@ var InMemorySubagentTaskStore = class {
|
|
|
367
424
|
signal: task.controller.signal,
|
|
368
425
|
shouldPreempt: () => task.status === "running" && task.controls.some((control) => control.action === "interrupt"),
|
|
369
426
|
drain: (boundary) => {
|
|
370
|
-
if (boundary === "preempt") return take((control) => control.action === "interrupt");
|
|
371
|
-
if (boundary === "tool") return take((control) => control.action !== "queue");
|
|
372
|
-
return take(() => true);
|
|
427
|
+
if (boundary === "preempt") return take(boundary, (control) => control.action === "interrupt");
|
|
428
|
+
if (boundary === "tool") return take(boundary, (control) => control.action !== "queue");
|
|
429
|
+
return take(boundary, () => true);
|
|
373
430
|
},
|
|
374
431
|
closeTurn: () => {
|
|
375
|
-
const messages = take(() => true);
|
|
432
|
+
const messages = take("turn", () => true);
|
|
376
433
|
if (messages.length > 0) return {
|
|
377
434
|
closed: false,
|
|
378
435
|
messages
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InMemorySubagentTaskStore.mjs","names":[],"sources":["../../../../src/tools/subagent/InMemorySubagentTaskStore.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"InMemorySubagentTaskStore.mjs","names":[],"sources":["../../../../src/tools/subagent/InMemorySubagentTaskStore.ts"],"mappings":"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"}
|
package/dist/esm/utils/llm.mjs
CHANGED
|
@@ -2,6 +2,20 @@ import "../common/enum.mjs";
|
|
|
2
2
|
import "../common/index.mjs";
|
|
3
3
|
import { getProviderFamily } from "../llm/providerRegistry.mjs";
|
|
4
4
|
//#region src/utils/llm.ts
|
|
5
|
+
const OPENAI_FAMILY_LC_NAMES = new Set(["LibreChatOpenAI", "LibreChatAzureOpenAI"]);
|
|
6
|
+
function constructorChainHasLcName(model, names) {
|
|
7
|
+
if (typeof model !== "object" || model == null) return false;
|
|
8
|
+
let ctor = model.constructor;
|
|
9
|
+
while (typeof ctor === "function") {
|
|
10
|
+
const lcName = ctor.lc_name?.();
|
|
11
|
+
if (lcName != null && names.has(lcName)) return true;
|
|
12
|
+
ctor = Object.getPrototypeOf(ctor);
|
|
13
|
+
}
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
function isLibreChatOpenAIModel(model) {
|
|
17
|
+
return constructorChainHasLcName(model, OPENAI_FAMILY_LC_NAMES);
|
|
18
|
+
}
|
|
5
19
|
function isOpenAILike(provider) {
|
|
6
20
|
if (provider == null) return false;
|
|
7
21
|
return getProviderFamily(provider) === "openai" || [
|
|
@@ -23,6 +37,6 @@ function isAnthropicLike(provider, clientOptions) {
|
|
|
23
37
|
return false;
|
|
24
38
|
}
|
|
25
39
|
//#endregion
|
|
26
|
-
export { isAnthropicLike, isGoogleLike, isOpenAILike };
|
|
40
|
+
export { constructorChainHasLcName, isAnthropicLike, isGoogleLike, isLibreChatOpenAIModel, isOpenAILike };
|
|
27
41
|
|
|
28
42
|
//# sourceMappingURL=llm.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm.mjs","names":[],"sources":["../../../src/utils/llm.ts"],"mappings":";;;;AAKA,SAAgB,aAAa,UAAkC;CAC7D,IAAI,YAAY,MACd,OAAO;CAET,OACE,kBAAkB,QAAQ,MAAM,YAE9B;;;;;;CAMA,CAAC,CACD,SAAS,QAAQ;AAEvB;AAEA,SAAgB,aAAa,UAAkC;CAC7D,IAAI,YAAY,MACd,OAAO;CAET,OACE,kBAAkB,QAAQ,MAAM,YAC/B,CAAA,UAAA,UAAqC,CAAC,CAAc,SAAS,QAAQ;AAE1E;AAGA,SAAgB,gBACd,UACA,eACS;CACT,MAAM,SAAS,YAAY,OAAO,KAAA,IAAY,kBAAkB,QAAQ;CACxE,IAAI,aAAA,eAAoC,WAAW,aAAa,OAAO;CACvE,IAAI,aAAA,aAAkC,WAAW,WAC/C,OACE,eAAe,SAAS,QACxB,UAAU,KAAK,OAAO,cAAc,KAAK,CAAC;CAG9C,OAAO;AACT"}
|
|
1
|
+
{"version":3,"file":"llm.mjs","names":[],"sources":["../../../src/utils/llm.ts"],"mappings":";;;;AAKA,MAAM,yBAA8C,IAAI,IAAI,CAC1D,mBACA,sBACF,CAAC;AAMD,SAAgB,0BACd,OACA,OACS;CACT,IAAI,OAAO,UAAU,YAAY,SAAS,MACxC,OAAO;CAET,IAAI,OAAgB,MAAM;CAC1B,OAAO,OAAO,SAAS,YAAY;EACjC,MAAM,SAAU,KAAoC,UAAU;EAC9D,IAAI,UAAU,QAAQ,MAAM,IAAI,MAAM,GACpC,OAAO;EAET,OAAO,OAAO,eAAe,IAAI;CACnC;CACA,OAAO;AACT;AAMA,SAAgB,uBACd,OAGyC;CACzC,OAAO,0BAA0B,OAAO,sBAAsB;AAChE;AAEA,SAAgB,aAAa,UAAkC;CAC7D,IAAI,YAAY,MACd,OAAO;CAET,OACE,kBAAkB,QAAQ,MAAM,YAE9B;;;;;;CAMA,CAAC,CACD,SAAS,QAAQ;AAEvB;AAEA,SAAgB,aAAa,UAAkC;CAC7D,IAAI,YAAY,MACd,OAAO;CAET,OACE,kBAAkB,QAAQ,MAAM,YAC/B,CAAA,UAAA,UAAqC,CAAC,CAAc,SAAS,QAAQ;AAE1E;AAGA,SAAgB,gBACd,UACA,eACS;CACT,MAAM,SAAS,YAAY,OAAO,KAAA,IAAY,kBAAkB,QAAQ;CACxE,IAAI,aAAA,eAAoC,WAAW,aAAa,OAAO;CACvE,IAAI,aAAA,aAAkC,WAAW,WAC/C,OACE,eAAe,SAAS,QACxB,UAAU,KAAK,OAAO,cAAc,KAAK,CAAC;CAG9C,OAAO;AACT"}
|
|
@@ -150,6 +150,8 @@ export declare class AgentContext {
|
|
|
150
150
|
* - `'none'`: no summary present
|
|
151
151
|
*/
|
|
152
152
|
private _summaryLocation;
|
|
153
|
+
/** Whether a mid-run summary must appear before every retained message. */
|
|
154
|
+
private summaryPrecedesMessages;
|
|
153
155
|
/**
|
|
154
156
|
* Durable summary that survives reset() calls. Set from initialSummary
|
|
155
157
|
* during fromConfig() and updated by setSummary() so that the latest
|
|
@@ -158,6 +160,7 @@ export declare class AgentContext {
|
|
|
158
160
|
*/
|
|
159
161
|
private _durableSummaryText?;
|
|
160
162
|
private _durableSummaryTokenCount;
|
|
163
|
+
private durableSummaryPrecedesMessages;
|
|
161
164
|
/** Number of summarization cycles that have occurred for this agent context */
|
|
162
165
|
private _summaryVersion;
|
|
163
166
|
/**
|
|
@@ -348,7 +351,9 @@ export declare class AgentContext {
|
|
|
348
351
|
* Call this when resetting the agent or when handoff context is no longer relevant.
|
|
349
352
|
*/
|
|
350
353
|
clearHandoffContext(): void;
|
|
351
|
-
setSummary(text: string, tokenCount: number
|
|
354
|
+
setSummary(text: string, tokenCount: number, options?: {
|
|
355
|
+
precedesMessages?: boolean;
|
|
356
|
+
}): void;
|
|
352
357
|
/** Sets a cross-run summary that is injected into the system prompt. */
|
|
353
358
|
setInitialSummary(text: string, tokenCount: number): void;
|
|
354
359
|
/**
|
package/dist/types/index.d.ts
CHANGED
|
@@ -39,13 +39,13 @@ export * from './langchain';
|
|
|
39
39
|
export { Command, INTERRUPT, interrupt, MemorySaver, BaseCheckpointSaver, isInterrupted, } from '@langchain/langgraph';
|
|
40
40
|
export type { Interrupt } from '@langchain/langgraph';
|
|
41
41
|
export { markTokenCounterCacheCompatible } from './llm/tokenCounterCacheCompatibility';
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
/** Provider chat-model classes moved off the root barrel: importing any of them here
|
|
43
|
+
* forced every host to pay that provider SDK's module init at boot. They remain
|
|
44
|
+
* available from their own entries, e.g. `@librechat/agents/llm/openai`. */
|
|
44
45
|
export type { OpenRouterReasoning, OpenRouterReasoningEffort, ChatOpenRouterCallOptions, } from './llm/openrouter';
|
|
45
46
|
export { getChatModelClass } from './llm/providers';
|
|
46
47
|
export { registerProvider } from './provider-registration';
|
|
47
48
|
export type { ProviderFamily, ProviderRegistrationOptions, } from './provider-registration';
|
|
48
|
-
export { CustomChatMistralAI } from './llm/mistral';
|
|
49
49
|
export { smoothStream, resolveStreamDelay, DEFAULT_STREAM_DELAY, computeAdaptivePieceSize, } from './llm/stream/smoother';
|
|
50
50
|
export type { SmoothItem, SmoothPiece } from './llm/stream/smoother';
|
|
51
51
|
export { FakeChatModel, createFakeStreamingLLM } from './llm/fake';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** False when the package runs from TypeScript source, where dist siblings do
|
|
2
|
+
* not exist and lazily loadable modules must be registered up front. */
|
|
3
|
+
export declare function isBuiltRuntime(): boolean;
|
|
4
|
+
export declare function registerSourceModeModules(modules: Record<string, unknown>): void;
|
|
5
|
+
/** Loads a module of this package by its src-relative path, e.g. `llm/openai/index`. */
|
|
6
|
+
export declare function requireInternalModule<T>(relativePath: string): T;
|
|
7
|
+
/** Loads a third-party package on first use; identity-sensitive callers must not use this. */
|
|
8
|
+
export declare function requireLazyModule<T>(specifier: string): T;
|
|
@@ -1,11 +1,22 @@
|
|
|
1
1
|
import type { BaseChatModel } from '@langchain/core/language_models/chat_models';
|
|
2
2
|
import type { ProviderFamily, ProviderRegistrationOptions } from '../provider-registration';
|
|
3
3
|
import type { ProviderModelConstructor, ProviderName } from '@/types';
|
|
4
|
+
type ProviderModelClass = new (config: never) => BaseChatModel;
|
|
4
5
|
/** Registers one host provider until the returned disposer is called. */
|
|
5
6
|
export declare function registerProvider<TOptions extends object, TModel extends BaseChatModel>(options: ProviderRegistrationOptions<TOptions, TModel>): () => void;
|
|
6
7
|
/** Initializes one built-in for the current package module graph. */
|
|
7
8
|
export declare function registerBuiltInProvider<TOptions extends object, TModel extends BaseChatModel>(options: ProviderRegistrationOptions<TOptions, TModel>): void;
|
|
9
|
+
interface BuiltInProviderLoaderOptions {
|
|
10
|
+
provider: ProviderName;
|
|
11
|
+
loadModel: () => ProviderModelClass;
|
|
12
|
+
family?: ProviderFamily;
|
|
13
|
+
manualToolStream?: boolean;
|
|
14
|
+
strictAlternation?: boolean;
|
|
15
|
+
}
|
|
16
|
+
/** Registers a built-in whose provider SDK loads on first use, not at import time. */
|
|
17
|
+
export declare function registerBuiltInProviderLoader(options: BuiltInProviderLoaderOptions): void;
|
|
8
18
|
export declare function getRegisteredChatModelClass<P extends ProviderName>(provider: P): ProviderModelConstructor<P>;
|
|
9
19
|
export declare function getProviderFamily(provider: ProviderName): ProviderFamily | undefined;
|
|
10
20
|
export declare function providerUsesManualToolStream(provider: ProviderName): boolean;
|
|
11
21
|
export declare function providerRequiresStrictAlternation(provider: ProviderName): boolean;
|
|
22
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
import type { BaseMessage } from '@langchain/core/messages';
|
|
1
|
+
import type { BaseMessage, MessageContentComplex } from '@langchain/core/messages';
|
|
2
2
|
/**
|
|
3
3
|
* Whether {@link formatContentStrings} will flatten this message's content:
|
|
4
4
|
* a human/ai/system message whose content is an array of text-only blocks.
|
|
5
5
|
*/
|
|
6
6
|
export declare const isLegacyConvertible: (message: BaseMessage) => boolean;
|
|
7
|
+
/** Joins the text of {@link isLegacyConvertible} content blocks into the exact
|
|
8
|
+
* string {@link formatContentStrings} has always produced for them. */
|
|
9
|
+
export declare const flattenLegacyContent: (blocks: MessageContentComplex[]) => string;
|
|
7
10
|
/**
|
|
8
11
|
* Formats an array of messages for LangChain, making sure all content fields are strings
|
|
9
12
|
* @param {Array<HumanMessage | AIMessage | SystemMessage | ToolMessage>} payload - The array of messages to format.
|
|
@@ -18,6 +18,8 @@ export type ResponsesReplayPosition = {
|
|
|
18
18
|
kind: 'message' | 'output' | 'reasoning' | 'text';
|
|
19
19
|
outputIndex: number;
|
|
20
20
|
};
|
|
21
|
+
/** Drops incomplete streamed text blocks before provider-facing tool shaping. */
|
|
22
|
+
export declare function dropIncompleteToolStreamContent(content: AIMessage['content']): AIMessage['content'];
|
|
21
23
|
/** Applies sealed-Responses safety and drops incomplete streamed text input. */
|
|
22
24
|
export declare function projectToolStreamContentForProvider(messages: BaseMessage[], responsesReplayProjection?: ResponsesReplayProjection, maxChars?: number): BaseMessage[];
|
|
23
25
|
/** Projects OpenAI-compatible tool content without changing parsed call parents. */
|
|
@@ -91,6 +91,12 @@ interface LangChainMessage {
|
|
|
91
91
|
export declare const formatFromLangChain: (message: LangChainMessage) => Record<string, any>;
|
|
92
92
|
interface FormatAgentMessagesOptions {
|
|
93
93
|
provider?: ProviderName;
|
|
94
|
+
/** Emit flattenable text content as the joined string the legacy-content
|
|
95
|
+
* projection would produce, so the per-request `formatContentStrings` pass
|
|
96
|
+
* finds nothing to convert and every history message keeps its identity —
|
|
97
|
+
* which is what lets exact-count reuse skip re-tokenizing it. Set this if
|
|
98
|
+
* and only if the run's provider uses legacy string content. */
|
|
99
|
+
legacyContent?: boolean;
|
|
94
100
|
/** Reconstruct hidden `reasoning_content` from `THINK` parts onto prior
|
|
95
101
|
* tool-call messages. Explicit opt-in for OpenAI-compatible endpoints that
|
|
96
102
|
* replay reasoning across turns; defaults to on for DeepSeek thinking-mode. */
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { BaseMessage } from '@langchain/core/messages';
|
|
2
|
+
export type ProviderMessageProjectionInvariantMode = 'off' | 'observe' | 'assert';
|
|
3
|
+
export type ProviderMessageProjectionIssueCode = 'absent_provenance' | 'invalid_provenance' | 'unsourced_non_synthetic_part';
|
|
4
|
+
export interface ProviderMessageProjectionInvariantIssue {
|
|
5
|
+
readonly code: ProviderMessageProjectionIssueCode;
|
|
6
|
+
readonly messageIndex: number;
|
|
7
|
+
readonly messageType: string;
|
|
8
|
+
}
|
|
9
|
+
export interface ProviderMessageProjectionInvariantReport {
|
|
10
|
+
readonly valid: boolean;
|
|
11
|
+
readonly messageCount: number;
|
|
12
|
+
readonly sourceBackedMessageCount: number;
|
|
13
|
+
readonly syntheticMessageCount: number;
|
|
14
|
+
readonly gapMessageCount: number;
|
|
15
|
+
readonly issues: readonly ProviderMessageProjectionInvariantIssue[];
|
|
16
|
+
}
|
|
17
|
+
/** Resolves the opt-in provider projection invariant without enabling it for
|
|
18
|
+
* unrecognized values. */
|
|
19
|
+
export declare function resolveProviderMessageProjectionInvariantMode(value?: string | undefined): ProviderMessageProjectionInvariantMode;
|
|
20
|
+
/** Inspects provider-bound lineage without reading message content or source ids. */
|
|
21
|
+
export declare function inspectProviderMessageProjection(messages: readonly BaseMessage[]): ProviderMessageProjectionInvariantReport;
|
|
22
|
+
export declare class ProviderMessageProjectionInvariantError extends Error {
|
|
23
|
+
readonly report: ProviderMessageProjectionInvariantReport;
|
|
24
|
+
constructor(report: ProviderMessageProjectionInvariantReport);
|
|
25
|
+
}
|
|
@@ -73,6 +73,16 @@ export declare function hasBijectiveProviderContentPartMapping(parts: readonly P
|
|
|
73
73
|
export declare function getProviderSourceMessageIds(message: BaseMessage): string[];
|
|
74
74
|
/** Replaces typed provenance and synchronizes its stable plural source ids. */
|
|
75
75
|
export declare function setProviderMessageProvenance(message: BaseMessage, parts: readonly ProviderMessageProvenancePart[]): void;
|
|
76
|
+
/**
|
|
77
|
+
* {@link setProviderMessageProvenance} for a message the caller itself just
|
|
78
|
+
* constructed from locally built plain objects. Such a message cannot carry
|
|
79
|
+
* proxies, accessors, or foreign aliases in `additional_kwargs`/`lc_kwargs`,
|
|
80
|
+
* so the publication skips the hardened descriptor walks while producing the
|
|
81
|
+
* same end state: fresh replacement objects on both slots, with the
|
|
82
|
+
* serialization mirror aliasing the live kwargs. Never call this with a
|
|
83
|
+
* message received across a seam — that is what the hardened variant is for.
|
|
84
|
+
*/
|
|
85
|
+
export declare function setFreshProviderMessageProvenance(message: BaseMessage, parts: readonly ProviderMessageProvenancePart[]): void;
|
|
76
86
|
/** Publishes the canonical fail-closed marker for malformed provenance. */
|
|
77
87
|
export declare function setInvalidProviderMessageProvenance(message: BaseMessage): void;
|
|
78
88
|
/** Marks a provider-visible runtime message as host-generated context. */
|
|
@@ -211,12 +211,13 @@ export declare function preFlightTruncateToolResults(params: {
|
|
|
211
211
|
export declare function serializeToolCallInput(input: unknown, maxChars?: number): string;
|
|
212
212
|
/** Per-input cap: 15% of context at ~4 chars/token, never above 200K chars. */
|
|
213
213
|
export declare function calculateMaxToolCallInputChars(maxContextTokens?: number): number;
|
|
214
|
+
/** Projects all historical tool-call input representations to bounded values. */
|
|
215
|
+
export declare function projectToolCallInputs(messages: BaseMessage[], maxInputChars: number): BaseMessage[];
|
|
214
216
|
/**
|
|
215
|
-
*
|
|
216
|
-
*
|
|
217
|
-
* the array and AI messages whose inline input or `tool_calls` args changed.
|
|
217
|
+
* Derives provider-safe tool history in one pass by dropping incomplete stream
|
|
218
|
+
* content and bounding every provider-consumed tool-call input representation.
|
|
218
219
|
*/
|
|
219
|
-
export declare function
|
|
220
|
+
export declare function projectToolMessagesForProvider(messages: BaseMessage[], maxInputChars: number): BaseMessage[];
|
|
220
221
|
export declare function preFlightTruncateToolCallInputs(params: {
|
|
221
222
|
messages: BaseMessage[];
|
|
222
223
|
maxContextTokens: number;
|
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
import type { BaseMessage } from '@langchain/core/messages';
|
|
2
2
|
export declare const DEFAULT_RETAIN_RECENT_TURNS = 2;
|
|
3
|
+
export declare const DEFAULT_INTRA_TURN_RETAIN_RATIO = 0.16;
|
|
3
4
|
/**
|
|
4
5
|
* Configuration for splitting a message list into a head (to be summarized)
|
|
5
6
|
* and a tail (to be preserved verbatim).
|
|
6
7
|
*/
|
|
7
8
|
export interface RecencyWindowOptions {
|
|
8
9
|
/**
|
|
9
|
-
* Maximum number of recent user-led turns to keep in the tail.
|
|
10
|
-
* begins at a HumanMessage and includes every following
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
10
|
+
* Maximum number of recent user-led turns to keep in the tail. A "turn"
|
|
11
|
+
* begins at a user-authored HumanMessage and includes every following
|
|
12
|
+
* AIMessage and tool result up to the next user-authored HumanMessage.
|
|
13
|
+
* Provider-native HumanMessages containing only tool results remain in the
|
|
14
|
+
* current turn, so the boundary cannot split them from their calls.
|
|
14
15
|
*
|
|
15
|
-
* The most recent turn is
|
|
16
|
-
*
|
|
17
|
-
*
|
|
16
|
+
* The most recent turn is preserved unless `intraTurnTokens` enables the
|
|
17
|
+
* pairing-balanced fallback for a tool-heavy history. A lone oversized user
|
|
18
|
+
* message is never eligible for that fallback.
|
|
18
19
|
*
|
|
19
20
|
* Defaults to `2`. A value of `0` disables the recency window (head =
|
|
20
21
|
* everything, tail = empty), restoring the pre-recency-window behavior.
|
|
@@ -32,29 +33,40 @@ export interface RecencyWindowOptions {
|
|
|
32
33
|
tokens?: number;
|
|
33
34
|
/** Token-counter used to evaluate the optional `tokens` cap. */
|
|
34
35
|
tokenCounter?: (m: BaseMessage) => number;
|
|
36
|
+
/**
|
|
37
|
+
* Minimum token budget to retain when the turn window would otherwise make
|
|
38
|
+
* the whole history indivisible. When set with `tokenCounter`, older closed
|
|
39
|
+
* tool-call/result units may be summarized from within the earliest retained
|
|
40
|
+
* turn. A lone user payload and open tool units remain indivisible.
|
|
41
|
+
*/
|
|
42
|
+
intraTurnTokens?: number;
|
|
35
43
|
}
|
|
36
44
|
export interface RecencySplit {
|
|
37
45
|
/** Older messages eligible for summarization. Empty when nothing to summarize. */
|
|
38
46
|
head: BaseMessage[];
|
|
39
|
-
/** Recent messages preserved verbatim
|
|
47
|
+
/** Recent messages preserved verbatim, beginning at a pairing-balanced boundary. */
|
|
40
48
|
tail: BaseMessage[];
|
|
41
49
|
/** Number of user-led turns retained in the tail (0 if no HumanMessage exists). */
|
|
42
50
|
tailTurnCount: number;
|
|
43
51
|
/** Index in the original `messages` array where the tail begins. */
|
|
44
52
|
tailStartIndex: number;
|
|
53
|
+
/** True when the pairing-balanced fallback selected the boundary. */
|
|
54
|
+
usedIntraTurnFallback: boolean;
|
|
45
55
|
}
|
|
56
|
+
export declare function resolveIntraTurnRetainTokens({ tokens, maxContextTokens, }: {
|
|
57
|
+
tokens?: number;
|
|
58
|
+
maxContextTokens?: number;
|
|
59
|
+
}): number | undefined;
|
|
46
60
|
/**
|
|
47
61
|
* Splits `messages` into a head (older, to summarize) and a tail (recent,
|
|
48
|
-
* to preserve verbatim)
|
|
49
|
-
* user-led turn is
|
|
50
|
-
*
|
|
62
|
+
* to preserve verbatim), preferring user-message boundaries. The most recent
|
|
63
|
+
* user-led turn is normally included in the tail; additional older turns are
|
|
64
|
+
* added subject to `turns` and `tokens` caps.
|
|
51
65
|
*
|
|
52
|
-
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
* the "first turn destruction" failure mode where a single large
|
|
57
|
-
* user-pasted payload would otherwise be replaced by a generic summary.
|
|
66
|
+
* When that policy exposes no compactable head, `intraTurnTokens` may select
|
|
67
|
+
* a boundary after older closed tool-call/result units. This keeps runaway
|
|
68
|
+
* first-turn tool loops compactable without splitting parallel calls from
|
|
69
|
+
* their results. A user payload without a completed tool unit stays intact.
|
|
58
70
|
*
|
|
59
71
|
* When `messages` contains no HumanMessage (degenerate state — e.g. system
|
|
60
72
|
* + assistant messages from a programmatic preamble), everything is
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { BaseMessage } from '@langchain/core/messages';
|
|
2
|
+
import type { SessionEntry } from './types';
|
|
3
|
+
export interface DerivedSessionMessages {
|
|
4
|
+
initialSummary?: {
|
|
5
|
+
text: string;
|
|
6
|
+
tokenCount: number;
|
|
7
|
+
};
|
|
8
|
+
messages: BaseMessage[];
|
|
9
|
+
}
|
|
10
|
+
/** Derives the active model context from one append-only session-log path. */
|
|
11
|
+
export declare function deriveMessages(entries: readonly SessionEntry[]): DerivedSessionMessages;
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export { AgentSession, createAgentSession } from './AgentSession';
|
|
2
|
+
export { deriveMessages } from './deriveMessages';
|
|
2
3
|
export { JsonlSessionStore, SessionManager } from './JsonlSessionStore';
|
|
3
4
|
export { createRunHandlers } from './handlers';
|
|
4
5
|
export { serializeMessage, deserializeMessage, extractTextFromContent, } from './messageSerialization';
|
|
5
6
|
export type { AgentSessionConfig, AgentSessionCheckpointLookupOptions, AgentSessionCheckpointReference, AgentSessionCheckpointing, AgentSessionCheckpointingOptions, AgentSessionHandlersResult, AgentSessionInput, AgentSessionRunOptions, AgentSessionRunResult, AgentSessionStream, AgentSessionStreamEvent, AgentSessionUsage, CreateSessionFileOptions, JsonObject, JsonPrimitive, JsonValue, SerializedSessionMessage, SessionBranchOptions, SessionCompactOptions, SessionCheckpointEntry, SessionCompactionEntry, SessionEntry, SessionEntryBase, SessionEntryType, SessionForkOptions, SessionHeader, SessionLabelEntry, SessionListItem, SessionMessageEntry, SessionPosition, SessionRunEventEntry, SessionStateEntry, SessionSummaryEntry, SessionTreeNode, } from './types';
|
|
7
|
+
export type { DerivedSessionMessages } from './deriveMessages';
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import type { SubagentTaskClaim, SubagentTaskControlCommand, SubagentTaskControlResult, SubagentTaskSnapshot, SubagentTaskStartRequest, SubagentTaskStartResult, SubagentTaskStore } from '@/types';
|
|
1
|
+
import type { SubagentTaskClaim, SubagentTaskControlCommand, SubagentTaskControlReceipt, SubagentTaskControlResult, SubagentTaskSnapshot, SubagentTaskStartRequest, SubagentTaskStartResult, SubagentTaskStore } from '@/types';
|
|
2
2
|
export interface InMemorySubagentTaskStoreOptions {
|
|
3
3
|
completedTtlMs?: number;
|
|
4
4
|
maxControlMessageChars?: number;
|
|
5
5
|
maxControlsPerTask?: number;
|
|
6
|
+
maxControlReceiptsPerTask?: number;
|
|
6
7
|
maxErrorChars?: number;
|
|
7
8
|
maxResultChars?: number;
|
|
8
9
|
maxRunningPerScope?: number;
|
|
@@ -25,6 +26,14 @@ export declare class InMemorySubagentTaskStore implements SubagentTaskStore {
|
|
|
25
26
|
private runningTasks;
|
|
26
27
|
private totalTasks;
|
|
27
28
|
constructor(options?: InMemorySubagentTaskStoreOptions);
|
|
29
|
+
/**
|
|
30
|
+
* Payload-free transition seam for hosts that durably project authoritative
|
|
31
|
+
* receipts. Implementations must return synchronously, must not reproduce
|
|
32
|
+
* task-store transition rules, and cannot veto task-store state transitions:
|
|
33
|
+
* hook failures are deliberately isolated by the caller.
|
|
34
|
+
*/
|
|
35
|
+
protected onControlReceipt(_scopeId: string, _taskId: string, _receipt: SubagentTaskControlReceipt): void;
|
|
36
|
+
private emitControlReceipt;
|
|
28
37
|
start(request: SubagentTaskStartRequest): SubagentTaskStartResult;
|
|
29
38
|
get(scopeId: string, taskId: string): SubagentTaskSnapshot | undefined;
|
|
30
39
|
list(scopeId: string): SubagentTaskSnapshot[];
|
|
@@ -37,6 +46,9 @@ export declare class InMemorySubagentTaskStore implements SubagentTaskStore {
|
|
|
37
46
|
private sweepBucket;
|
|
38
47
|
private removeTask;
|
|
39
48
|
private dropEmptyBucket;
|
|
49
|
+
private makeRoomForControlReceipt;
|
|
50
|
+
private transitionControl;
|
|
51
|
+
private failPendingControls;
|
|
40
52
|
private scheduleExpiry;
|
|
41
53
|
private clearTaskExpiry;
|
|
42
54
|
private clearTaskTimeout;
|
|
@@ -452,7 +452,7 @@ export type ExecutableSubagentConfig = ResolvedSubagentConfig | LazySingleAgentS
|
|
|
452
452
|
/** Graph-aware config accepted by the executor. Graph configs stay eager. */
|
|
453
453
|
export type ExecutableSubagentConfigEntry = ExecutableSubagentConfig | GraphSubagentConfig;
|
|
454
454
|
/** Lifecycle phase carried on {@link SubagentUpdateEvent}. */
|
|
455
|
-
export type SubagentUpdatePhase = 'start' | 'run_step' | 'run_step_delta' | 'run_step_completed' | 'run_step_closed' | 'message_delta' | 'reasoning_delta' | 'stop' | 'error';
|
|
455
|
+
export type SubagentUpdatePhase = 'start' | 'run_step' | 'run_step_delta' | 'run_step_completed' | 'run_step_closed' | 'message_delta' | 'reasoning_delta' | 'control' | 'stop' | 'error';
|
|
456
456
|
export interface SubagentAncestryEntry {
|
|
457
457
|
readonly subagentRunId: string;
|
|
458
458
|
readonly subagentType: string;
|