@namzu/sdk 1.0.0 → 1.1.0
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/CHANGELOG.md +167 -0
- package/dist/agents/ReactiveAgent.d.ts.map +1 -1
- package/dist/agents/ReactiveAgent.js +5 -0
- package/dist/agents/ReactiveAgent.js.map +1 -1
- package/dist/agents/SupervisorAgent.d.ts +22 -1
- package/dist/agents/SupervisorAgent.d.ts.map +1 -1
- package/dist/agents/SupervisorAgent.js +47 -14
- package/dist/agents/SupervisorAgent.js.map +1 -1
- package/dist/agents/__tests__/supervisor-ledger.test.d.ts +2 -0
- package/dist/agents/__tests__/supervisor-ledger.test.d.ts.map +1 -0
- package/dist/agents/__tests__/supervisor-ledger.test.js +131 -0
- package/dist/agents/__tests__/supervisor-ledger.test.js.map +1 -0
- package/dist/config/runtime.d.ts +24 -0
- package/dist/config/runtime.d.ts.map +1 -1
- package/dist/config/runtime.js +9 -0
- package/dist/config/runtime.js.map +1 -1
- package/dist/connector/builtins/webhook.test.js +17 -0
- package/dist/connector/builtins/webhook.test.js.map +1 -1
- package/dist/connector/index.d.ts +1 -0
- package/dist/connector/index.d.ts.map +1 -1
- package/dist/connector/index.js +1 -0
- package/dist/connector/index.js.map +1 -1
- package/dist/connector/mcp/client.d.ts.map +1 -1
- package/dist/connector/mcp/client.js +4 -0
- package/dist/connector/mcp/client.js.map +1 -1
- package/dist/connector/mcp/index.d.ts +1 -0
- package/dist/connector/mcp/index.d.ts.map +1 -1
- package/dist/connector/mcp/index.js +1 -0
- package/dist/connector/mcp/index.js.map +1 -1
- package/dist/connector/mcp/streamable-http.d.ts +22 -0
- package/dist/connector/mcp/streamable-http.d.ts.map +1 -0
- package/dist/connector/mcp/streamable-http.js +128 -0
- package/dist/connector/mcp/streamable-http.js.map +1 -0
- package/dist/connector/mcp/streamable-http.test.d.ts +2 -0
- package/dist/connector/mcp/streamable-http.test.d.ts.map +1 -0
- package/dist/connector/mcp/streamable-http.test.js +132 -0
- package/dist/connector/mcp/streamable-http.test.js.map +1 -0
- package/dist/persona/assembler.d.ts.map +1 -1
- package/dist/persona/assembler.js +18 -9
- package/dist/persona/assembler.js.map +1 -1
- package/dist/provider/collect.d.ts.map +1 -1
- package/dist/provider/collect.js +4 -1
- package/dist/provider/collect.js.map +1 -1
- package/dist/public-runtime.d.ts +1 -1
- package/dist/public-runtime.d.ts.map +1 -1
- package/dist/public-runtime.js +1 -1
- package/dist/public-runtime.js.map +1 -1
- package/dist/registry/tool/execute.d.ts +27 -0
- package/dist/registry/tool/execute.d.ts.map +1 -1
- package/dist/registry/tool/execute.js +124 -21
- package/dist/registry/tool/execute.js.map +1 -1
- package/dist/registry/tool/execute.test.d.ts +9 -6
- package/dist/registry/tool/execute.test.d.ts.map +1 -1
- package/dist/registry/tool/execute.test.js +72 -10
- package/dist/registry/tool/execute.test.js.map +1 -1
- package/dist/registry/toolset/catalog.test.js +62 -0
- package/dist/registry/toolset/catalog.test.js.map +1 -1
- package/dist/runtime/query/__tests__/deferred-tools.test.js +43 -5
- package/dist/runtime/query/__tests__/deferred-tools.test.js.map +1 -1
- package/dist/runtime/query/__tests__/long-document-flow.test.d.ts +2 -0
- package/dist/runtime/query/__tests__/long-document-flow.test.d.ts.map +1 -0
- package/dist/runtime/query/__tests__/long-document-flow.test.js +154 -0
- package/dist/runtime/query/__tests__/long-document-flow.test.js.map +1 -0
- package/dist/runtime/query/__tests__/prompt.test.js +15 -11
- package/dist/runtime/query/__tests__/prompt.test.js.map +1 -1
- package/dist/runtime/query/index.d.ts +9 -0
- package/dist/runtime/query/index.d.ts.map +1 -1
- package/dist/runtime/query/index.js +23 -2
- package/dist/runtime/query/index.js.map +1 -1
- package/dist/runtime/query/iteration/index.d.ts +2 -0
- package/dist/runtime/query/iteration/index.d.ts.map +1 -1
- package/dist/runtime/query/iteration/index.js +99 -6
- package/dist/runtime/query/iteration/index.js.map +1 -1
- package/dist/runtime/query/iteration/phases/checkpoint.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/checkpoint.js +2 -2
- package/dist/runtime/query/iteration/phases/checkpoint.js.map +1 -1
- package/dist/runtime/query/iteration/phases/compaction.d.ts +8 -0
- package/dist/runtime/query/iteration/phases/compaction.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/compaction.js +84 -3
- package/dist/runtime/query/iteration/phases/compaction.js.map +1 -1
- package/dist/runtime/query/iteration/phases/context.d.ts +12 -0
- package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/context.js +53 -0
- package/dist/runtime/query/iteration/phases/context.js.map +1 -1
- package/dist/runtime/query/iteration/phases/hitl-abort-race.test.d.ts +2 -0
- package/dist/runtime/query/iteration/phases/hitl-abort-race.test.d.ts.map +1 -0
- package/dist/runtime/query/iteration/phases/hitl-abort-race.test.js +73 -0
- package/dist/runtime/query/iteration/phases/hitl-abort-race.test.js.map +1 -0
- package/dist/runtime/query/iteration/phases/hitl-answer-question.test.d.ts +2 -0
- package/dist/runtime/query/iteration/phases/hitl-answer-question.test.d.ts.map +1 -0
- package/dist/runtime/query/iteration/phases/hitl-answer-question.test.js +120 -0
- package/dist/runtime/query/iteration/phases/hitl-answer-question.test.js.map +1 -0
- package/dist/runtime/query/iteration/phases/tool-review.d.ts +1 -1
- package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/tool-review.js +7 -2
- package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
- package/dist/runtime/query/iteration/phases/working-memory-compaction.test.d.ts +19 -0
- package/dist/runtime/query/iteration/phases/working-memory-compaction.test.d.ts.map +1 -0
- package/dist/runtime/query/iteration/phases/working-memory-compaction.test.js +177 -0
- package/dist/runtime/query/iteration/phases/working-memory-compaction.test.js.map +1 -0
- package/dist/runtime/query/iteration/phases/working-memory.d.ts +31 -0
- package/dist/runtime/query/iteration/phases/working-memory.d.ts.map +1 -0
- package/dist/runtime/query/iteration/phases/working-memory.js +81 -0
- package/dist/runtime/query/iteration/phases/working-memory.js.map +1 -0
- package/dist/session/workspace/__tests__/shared-run.test.js +1 -1
- package/dist/session/workspace/__tests__/shared-run.test.js.map +1 -1
- package/dist/session/workspace/shared-run.js +1 -0
- package/dist/session/workspace/shared-run.js.map +1 -1
- package/dist/skills/loader.test.js +8 -8
- package/dist/skills/loader.test.js.map +1 -1
- package/dist/streaming/coalesce.test.js.map +1 -1
- package/dist/tools/builtins/__tests__/payload-budget.test.js +48 -0
- package/dist/tools/builtins/__tests__/payload-budget.test.js.map +1 -1
- package/dist/tools/builtins/__tests__/read-file.test.js +9 -0
- package/dist/tools/builtins/__tests__/read-file.test.js.map +1 -1
- package/dist/tools/builtins/read-file.d.ts.map +1 -1
- package/dist/tools/builtins/read-file.js +50 -2
- package/dist/tools/builtins/read-file.js.map +1 -1
- package/dist/tools/builtins/search-tools.d.ts.map +1 -1
- package/dist/tools/builtins/search-tools.js +32 -7
- package/dist/tools/builtins/search-tools.js.map +1 -1
- package/dist/tools/coordinator/__tests__/approve-plan.test.d.ts +2 -0
- package/dist/tools/coordinator/__tests__/approve-plan.test.d.ts.map +1 -0
- package/dist/tools/coordinator/__tests__/approve-plan.test.js +114 -0
- package/dist/tools/coordinator/__tests__/approve-plan.test.js.map +1 -0
- package/dist/tools/coordinator/__tests__/ask-user-question.test.d.ts +2 -0
- package/dist/tools/coordinator/__tests__/ask-user-question.test.d.ts.map +1 -0
- package/dist/tools/coordinator/__tests__/ask-user-question.test.js +309 -0
- package/dist/tools/coordinator/__tests__/ask-user-question.test.js.map +1 -0
- package/dist/tools/coordinator/index.d.ts +8 -0
- package/dist/tools/coordinator/index.d.ts.map +1 -1
- package/dist/tools/coordinator/index.js +195 -15
- package/dist/tools/coordinator/index.js.map +1 -1
- package/dist/types/agent/index.d.ts +1 -0
- package/dist/types/agent/index.d.ts.map +1 -1
- package/dist/types/agent/index.js +1 -0
- package/dist/types/agent/index.js.map +1 -1
- package/dist/types/agent/reactive.d.ts +15 -0
- package/dist/types/agent/reactive.d.ts.map +1 -1
- package/dist/types/agent/supervisor.d.ts +18 -0
- package/dist/types/agent/supervisor.d.ts.map +1 -1
- package/dist/types/agent/working-memory.d.ts +29 -0
- package/dist/types/agent/working-memory.d.ts.map +1 -0
- package/dist/types/agent/working-memory.js +2 -0
- package/dist/types/agent/working-memory.js.map +1 -0
- package/dist/types/common/index.d.ts +10 -0
- package/dist/types/common/index.d.ts.map +1 -1
- package/dist/types/common/index.js +18 -0
- package/dist/types/common/index.js.map +1 -1
- package/dist/types/common/usage-merge.test.d.ts +2 -0
- package/dist/types/common/usage-merge.test.d.ts.map +1 -0
- package/dist/types/common/usage-merge.test.js +48 -0
- package/dist/types/common/usage-merge.test.js.map +1 -0
- package/dist/types/connector/mcp.d.ts +9 -2
- package/dist/types/connector/mcp.d.ts.map +1 -1
- package/dist/types/hitl/index.d.ts +42 -0
- package/dist/types/hitl/index.d.ts.map +1 -1
- package/dist/types/hitl/index.js +11 -0
- package/dist/types/hitl/index.js.map +1 -1
- package/dist/types/provider/chat.d.ts +9 -0
- package/dist/types/provider/chat.d.ts.map +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +25 -4
- package/dist/version.js.map +1 -1
- package/package.json +1 -1
- package/src/agents/ReactiveAgent.ts +5 -0
- package/src/agents/SupervisorAgent.ts +56 -16
- package/src/agents/__tests__/supervisor-ledger.test.ts +185 -0
- package/src/config/runtime.ts +9 -0
- package/src/connector/builtins/webhook.test.ts +21 -0
- package/src/connector/index.ts +1 -0
- package/src/connector/mcp/client.ts +4 -0
- package/src/connector/mcp/index.ts +1 -0
- package/src/connector/mcp/streamable-http.test.ts +169 -0
- package/src/connector/mcp/streamable-http.ts +152 -0
- package/src/persona/assembler.ts +18 -6
- package/src/provider/collect.ts +4 -1
- package/src/public-runtime.ts +1 -0
- package/src/registry/tool/execute.test.ts +85 -10
- package/src/registry/tool/execute.ts +124 -21
- package/src/registry/toolset/catalog.test.ts +68 -0
- package/src/runtime/query/__tests__/deferred-tools.test.ts +52 -5
- package/src/runtime/query/__tests__/long-document-flow.test.ts +180 -0
- package/src/runtime/query/__tests__/prompt.test.ts +15 -11
- package/src/runtime/query/index.ts +34 -2
- package/src/runtime/query/iteration/index.ts +98 -6
- package/src/runtime/query/iteration/phases/checkpoint.ts +7 -2
- package/src/runtime/query/iteration/phases/compaction.ts +89 -3
- package/src/runtime/query/iteration/phases/context.ts +58 -0
- package/src/runtime/query/iteration/phases/hitl-abort-race.test.ts +86 -0
- package/src/runtime/query/iteration/phases/hitl-answer-question.test.ts +139 -0
- package/src/runtime/query/iteration/phases/tool-review.ts +7 -3
- package/src/runtime/query/iteration/phases/working-memory-compaction.test.ts +215 -0
- package/src/runtime/query/iteration/phases/working-memory.ts +86 -0
- package/src/session/workspace/__tests__/shared-run.test.ts +1 -1
- package/src/session/workspace/shared-run.ts +1 -0
- package/src/skills/loader.test.ts +8 -8
- package/src/streaming/coalesce.test.ts +3 -3
- package/src/tools/builtins/__tests__/payload-budget.test.ts +63 -0
- package/src/tools/builtins/__tests__/read-file.test.ts +12 -0
- package/src/tools/builtins/read-file.ts +50 -2
- package/src/tools/builtins/search-tools.ts +38 -7
- package/src/tools/coordinator/__tests__/approve-plan.test.ts +139 -0
- package/src/tools/coordinator/__tests__/ask-user-question.test.ts +370 -0
- package/src/tools/coordinator/index.ts +227 -17
- package/src/types/agent/index.ts +1 -0
- package/src/types/agent/reactive.ts +17 -0
- package/src/types/agent/supervisor.ts +20 -0
- package/src/types/agent/working-memory.ts +29 -0
- package/src/types/common/index.ts +19 -0
- package/src/types/common/usage-merge.test.ts +53 -0
- package/src/types/connector/mcp.ts +14 -2
- package/src/types/hitl/index.ts +52 -1
- package/src/types/provider/chat.ts +10 -0
- package/src/version.ts +26 -4
|
@@ -1,7 +1,40 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { defineTool } from '../defineTool.js';
|
|
3
|
+
const approvePlanStepSchema = z.object({
|
|
4
|
+
description: z.string().describe('What this step does'),
|
|
5
|
+
agent_id: z
|
|
6
|
+
.string()
|
|
7
|
+
.optional()
|
|
8
|
+
.describe('Which agent handles this (omit for orchestrator-owned steps)'),
|
|
9
|
+
depends_on: z.array(z.string()).optional().describe('Step descriptions this depends on'),
|
|
10
|
+
});
|
|
11
|
+
function normalizeApprovePlanSteps(value) {
|
|
12
|
+
if (typeof value !== 'string')
|
|
13
|
+
return value;
|
|
14
|
+
const trimmed = value.trim();
|
|
15
|
+
if (!trimmed)
|
|
16
|
+
return [];
|
|
17
|
+
if (trimmed.startsWith('[')) {
|
|
18
|
+
try {
|
|
19
|
+
return JSON.parse(trimmed);
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
// Fall through to plain-text line parsing.
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
const lines = trimmed
|
|
26
|
+
.split(/\r?\n+/)
|
|
27
|
+
.map((line) => line
|
|
28
|
+
.trim()
|
|
29
|
+
.replace(/^(?:[-*•]|\d+[.)])\s*/, '')
|
|
30
|
+
.trim())
|
|
31
|
+
.filter(Boolean);
|
|
32
|
+
return (lines.length ? lines : [trimmed]).map((description) => ({
|
|
33
|
+
description,
|
|
34
|
+
}));
|
|
35
|
+
}
|
|
3
36
|
export function buildCoordinatorTools(opts) {
|
|
4
|
-
const { gateway, allowedAgentIds: agentIds, taskStore, runId, getPlanManager,
|
|
37
|
+
const { gateway, allowedAgentIds: agentIds, taskStore, runId, getPlanManager, resumeHandler,
|
|
5
38
|
// `onTaskLaunched` was the entry point for the old
|
|
6
39
|
// non-blocking + envelope-injection flow. create_task is now
|
|
7
40
|
// blocking, so the callback is no longer wired here.
|
|
@@ -213,24 +246,18 @@ export function buildCoordinatorTools(opts) {
|
|
|
213
246
|
.describe('Short title for the plan (e.g. "TypeScript Security & Performance Review")'),
|
|
214
247
|
summary: z.string().describe('1-3 sentence summary of what you plan to do'),
|
|
215
248
|
steps: z
|
|
216
|
-
.
|
|
217
|
-
description: z.string().describe('What this step does'),
|
|
218
|
-
agent_id: z
|
|
219
|
-
.string()
|
|
220
|
-
.optional()
|
|
221
|
-
.describe('Which agent handles this (omit for orchestrator-owned steps)'),
|
|
222
|
-
depends_on: z
|
|
223
|
-
.array(z.string())
|
|
224
|
-
.optional()
|
|
225
|
-
.describe('Step descriptions this depends on'),
|
|
226
|
-
}))
|
|
249
|
+
.preprocess(normalizeApprovePlanSteps, z.array(approvePlanStepSchema))
|
|
227
250
|
.describe('Ordered list of planned steps'),
|
|
228
251
|
}),
|
|
229
252
|
category: 'custom',
|
|
230
253
|
permissions: [],
|
|
231
254
|
readOnly: true,
|
|
232
255
|
destructive: false,
|
|
233
|
-
|
|
256
|
+
// Parks through the SAME runId-keyed host resume registry as
|
|
257
|
+
// ask_user_question — concurrent parks in one batch clobber the
|
|
258
|
+
// registry entry and deadlock the loser, so the executor must
|
|
259
|
+
// serialize this tool exactly like the question tool.
|
|
260
|
+
concurrencySafe: false,
|
|
234
261
|
async execute({ title, summary, steps }) {
|
|
235
262
|
const pm = getPlanManager();
|
|
236
263
|
if (!pm) {
|
|
@@ -257,21 +284,174 @@ export function buildCoordinatorTools(opts) {
|
|
|
257
284
|
const response = await pm.requestApproval();
|
|
258
285
|
if (response.approved) {
|
|
259
286
|
pm.startExecution();
|
|
287
|
+
// Approve-with-edits: when the user attached feedback to an
|
|
288
|
+
// approval, embed it in the model-visible output so the
|
|
289
|
+
// supervisor applies the edits during execution. A bare
|
|
290
|
+
// approve keeps the historical output byte-identical.
|
|
291
|
+
const output = response.feedback
|
|
292
|
+
? `Plan approved by user with required edits — apply them during execution:\n${response.feedback}\nProceed with execution — launch workers via create_task.`
|
|
293
|
+
: 'Plan approved by user. Proceed with execution — launch workers via create_task.';
|
|
260
294
|
return {
|
|
261
295
|
success: true,
|
|
262
|
-
output
|
|
296
|
+
output,
|
|
263
297
|
data: { approved: true, feedback: response.feedback },
|
|
264
298
|
};
|
|
265
299
|
}
|
|
300
|
+
// Rejection guidance follows the FEEDBACK, not a baked-in
|
|
301
|
+
// revise loop: the old unconditional "revise … and call
|
|
302
|
+
// approve_plan again" contradicted stop-style feedback, so a
|
|
303
|
+
// user rejecting a plan got another plan instead of a halt.
|
|
266
304
|
return {
|
|
267
305
|
success: false,
|
|
268
|
-
output: `Plan rejected. User feedback: ${response.feedback ?? 'No feedback provided'}.
|
|
306
|
+
output: `Plan rejected. User feedback: ${response.feedback ?? 'No feedback provided'}. Follow this feedback: if it requests changes, revise your plan and call approve_plan again; if it asks you to stop, acknowledge briefly and end your turn. If no feedback was provided, ask the user how to proceed before planning again.`,
|
|
269
307
|
data: { approved: false, feedback: response.feedback },
|
|
270
308
|
};
|
|
271
309
|
},
|
|
272
310
|
});
|
|
273
311
|
tools.push(approvePlan);
|
|
274
312
|
}
|
|
313
|
+
if (resumeHandler && runId) {
|
|
314
|
+
const parkRunId = runId;
|
|
315
|
+
const parkHandler = resumeHandler;
|
|
316
|
+
const askUserQuestion = defineTool({
|
|
317
|
+
name: 'ask_user_question',
|
|
318
|
+
description: 'Ask the user ONE question ONLY when you are blocked on a decision that is genuinely theirs to make — one you cannot resolve from their request, your tools, the files you can read, or sensible defaults. The question must be the genuinely undecidable thing in THIS task. Never ask for information a tool can discover (do not ask what you can read, list, or search), never re-ask what the conversation already answers, and never ask meta-questions like "Shall I proceed?" — plan ratification goes through approve_plan. Provide 2-4 genuinely distinct options derived from the actual context — concrete paths, never generic placeholders (for example, asked to prepare a presentation, ask "Who is the audience?" with options like Board / Engineering team / Customer); keep labels short (1-5 words) and give each option a one-line description of what practically changes if it is chosen. Put your recommended option FIRST and append " (Recommended)" to its label. Set multiSelect: true only when several options can apply at once. A free-text "Something else" escape hatch is always shown automatically — do not add your own "Other" option. Ask ONE question per call and prefer at most one question per assistant turn; if several decisions block you, ask only the ones that materially change your next actions, in sequence — most work needs at most 2-3 questions, so prefer proceeding on stated defaults over interrogating the user. Never invent answers or synthetic content on the user\'s behalf unless they explicitly asked for a random/test scenario. The answer arrives as this tool\'s result; if the result says the user did not answer, do not ask this or any other question again — proceed on your best judgment without assuming consent.',
|
|
319
|
+
inputSchema: z.object({
|
|
320
|
+
question: z
|
|
321
|
+
.string()
|
|
322
|
+
.min(1)
|
|
323
|
+
.describe('Full question text — clear, specific, ends with a question mark.'),
|
|
324
|
+
header: z
|
|
325
|
+
.string()
|
|
326
|
+
.max(24)
|
|
327
|
+
.optional()
|
|
328
|
+
.describe('Very short topic label for the question (e.g. "Audience", "Auth method").'),
|
|
329
|
+
options: z
|
|
330
|
+
.array(z.object({
|
|
331
|
+
label: z
|
|
332
|
+
.string()
|
|
333
|
+
.min(1)
|
|
334
|
+
.max(80)
|
|
335
|
+
.describe('Concise option label (1-5 words). Recommended option goes first with " (Recommended)" appended.'),
|
|
336
|
+
description: z
|
|
337
|
+
.string()
|
|
338
|
+
.max(300)
|
|
339
|
+
.optional()
|
|
340
|
+
.describe('One line on what practically changes if this option is chosen.'),
|
|
341
|
+
}))
|
|
342
|
+
.min(2)
|
|
343
|
+
.max(4)
|
|
344
|
+
.describe('2-4 genuinely distinct, context-derived options.'),
|
|
345
|
+
multiSelect: z
|
|
346
|
+
.boolean()
|
|
347
|
+
.optional()
|
|
348
|
+
.default(false)
|
|
349
|
+
.describe('True only when several options can apply at once.'),
|
|
350
|
+
allowFreeText: z
|
|
351
|
+
.boolean()
|
|
352
|
+
.optional()
|
|
353
|
+
.default(true)
|
|
354
|
+
.describe('Whether the user may answer in their own words.'),
|
|
355
|
+
}),
|
|
356
|
+
category: 'custom',
|
|
357
|
+
permissions: [],
|
|
358
|
+
readOnly: true,
|
|
359
|
+
destructive: false,
|
|
360
|
+
// MUST stay false: the executor serializes non-concurrency-safe
|
|
361
|
+
// tools in a single chain, so N question blocks in one assistant
|
|
362
|
+
// turn park strictly one-at-a-time. Hosts key their park/resolve
|
|
363
|
+
// registries by runId — concurrent parks on one run clobber each
|
|
364
|
+
// other and the first promise never resolves (run hangs to TTL).
|
|
365
|
+
concurrencySafe: false,
|
|
366
|
+
async execute({ question, header, options, multiSelect, allowFreeText }, context) {
|
|
367
|
+
const toolUseId = context.toolUseId;
|
|
368
|
+
if (!toolUseId) {
|
|
369
|
+
// Without the executing tool_use_id the question has no
|
|
370
|
+
// stable identity: the host could never merge the awaiting
|
|
371
|
+
// card with its resolution, and answers could not be matched
|
|
372
|
+
// back. Hard-fail instead of parking an unmergeable id.
|
|
373
|
+
return {
|
|
374
|
+
success: false,
|
|
375
|
+
output: '',
|
|
376
|
+
error: 'ask_user_question requires an executor that threads ToolContext.toolUseId; the question cannot be tracked without it.',
|
|
377
|
+
};
|
|
378
|
+
}
|
|
379
|
+
const questionOptions = options.map((opt, i) => ({
|
|
380
|
+
id: `opt_${i + 1}`,
|
|
381
|
+
label: opt.label,
|
|
382
|
+
...(opt.description !== undefined ? { description: opt.description } : {}),
|
|
383
|
+
}));
|
|
384
|
+
const decision = await parkHandler({
|
|
385
|
+
type: 'user_question',
|
|
386
|
+
runId: parkRunId,
|
|
387
|
+
checkpointId: `cp_question_${toolUseId}`,
|
|
388
|
+
question: {
|
|
389
|
+
questionId: toolUseId,
|
|
390
|
+
question,
|
|
391
|
+
...(header !== undefined ? { header } : {}),
|
|
392
|
+
options: questionOptions,
|
|
393
|
+
multiSelect,
|
|
394
|
+
allowFreeText,
|
|
395
|
+
},
|
|
396
|
+
});
|
|
397
|
+
// The no-answer sentinel (explicitly NOT consent — fixes the
|
|
398
|
+
// "empty answer reads as approval" ambiguity): used for empty
|
|
399
|
+
// answers, misdirected legacy decisions (e.g. a stale replica
|
|
400
|
+
// resolving with approve/continue verbs), and answers that
|
|
401
|
+
// carry a different question's id.
|
|
402
|
+
const noAnswer = {
|
|
403
|
+
success: true,
|
|
404
|
+
output: 'The user did not answer this question. Do not assume a choice or consent; proceed on your best judgment or continue without this information.',
|
|
405
|
+
data: { question, answered: false },
|
|
406
|
+
};
|
|
407
|
+
if (decision.action === 'abort') {
|
|
408
|
+
return {
|
|
409
|
+
success: false,
|
|
410
|
+
output: 'The user declined to answer and asked to stop. Acknowledge briefly and end your turn.',
|
|
411
|
+
data: { question, answered: false, declined: true },
|
|
412
|
+
};
|
|
413
|
+
}
|
|
414
|
+
if (decision.action !== 'answer_question')
|
|
415
|
+
return noAnswer;
|
|
416
|
+
if (decision.questionId !== undefined && decision.questionId !== toolUseId) {
|
|
417
|
+
// Misdirection guard: this answer was meant for a different
|
|
418
|
+
// question parked under the same run (stale client). Never
|
|
419
|
+
// fabricate a selection against the wrong question.
|
|
420
|
+
return noAnswer;
|
|
421
|
+
}
|
|
422
|
+
const stripRecommended = (label) => label.replace(/\s*\(recommended\)\s*$/i, '').trim();
|
|
423
|
+
const selected = decision.selectedOptionIds
|
|
424
|
+
.map((id) => questionOptions.find((opt) => opt.id === id))
|
|
425
|
+
.filter((opt) => opt !== undefined)
|
|
426
|
+
.map((opt) => ({ id: opt.id, label: stripRecommended(opt.label) }));
|
|
427
|
+
const freeText = decision.freeText?.trim() ?? '';
|
|
428
|
+
if (selected.length === 0 && !freeText)
|
|
429
|
+
return noAnswer;
|
|
430
|
+
let output;
|
|
431
|
+
if (selected.length > 0) {
|
|
432
|
+
const joined = selected.map((s) => `"${s.label}"`).join(', ');
|
|
433
|
+
output = `User answered "${question}": ${joined}`;
|
|
434
|
+
if (freeText) {
|
|
435
|
+
output += `\nAdditional note from the user: "${freeText}"`;
|
|
436
|
+
}
|
|
437
|
+
}
|
|
438
|
+
else {
|
|
439
|
+
output = `User answered "${question}" in their own words: "${freeText}"`;
|
|
440
|
+
}
|
|
441
|
+
return {
|
|
442
|
+
success: true,
|
|
443
|
+
output,
|
|
444
|
+
data: {
|
|
445
|
+
question,
|
|
446
|
+
selected,
|
|
447
|
+
...(freeText ? { freeText } : {}),
|
|
448
|
+
answered: true,
|
|
449
|
+
},
|
|
450
|
+
};
|
|
451
|
+
},
|
|
452
|
+
});
|
|
453
|
+
tools.push(askUserQuestion);
|
|
454
|
+
}
|
|
275
455
|
return tools;
|
|
276
456
|
}
|
|
277
457
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/coordinator/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/coordinator/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/agent/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/agent/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/agent/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/agent/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { CompactionConfig } from '../../config/runtime.js';
|
|
1
2
|
import type { AdvisoryConfig } from '../advisory/index.js';
|
|
2
3
|
import type { AgentPersona } from '../persona/index.js';
|
|
3
4
|
import type { LLMProvider } from '../provider/index.js';
|
|
@@ -6,6 +7,7 @@ import type { Skill } from '../skills/index.js';
|
|
|
6
7
|
import type { ToolRegistryContract } from '../tool/index.js';
|
|
7
8
|
import type { VerificationGateConfig } from '../verification/index.js';
|
|
8
9
|
import type { BaseAgentConfig, BaseAgentResult } from './base.js';
|
|
10
|
+
import type { WorkingMemoryProvider } from './working-memory.js';
|
|
9
11
|
export interface ReactiveAgentConfig extends BaseAgentConfig {
|
|
10
12
|
systemPrompt?: string;
|
|
11
13
|
persona?: AgentPersona;
|
|
@@ -35,6 +37,19 @@ export interface ReactiveAgentConfig extends BaseAgentConfig {
|
|
|
35
37
|
* on top of the provider keeps the underlying container alive.
|
|
36
38
|
*/
|
|
37
39
|
sandboxProvider?: SandboxProvider;
|
|
40
|
+
/**
|
|
41
|
+
* Optional structured-compaction config. Omitted ⇒ byte-identical run path
|
|
42
|
+
* (no `WorkingStateManager`, compaction early-returns). Mirrors the field
|
|
43
|
+
* on `SupervisorAgentConfig` so a child specialist can share the
|
|
44
|
+
* supervisor's compaction settings.
|
|
45
|
+
*/
|
|
46
|
+
compactionConfig?: CompactionConfig;
|
|
47
|
+
/**
|
|
48
|
+
* Optional neutral working-memory seam — same contract as the field on
|
|
49
|
+
* `SupervisorAgentConfig`. Absent ⇒ no block injected. A child specialist
|
|
50
|
+
* sharing the supervisor's output dir passes the same provider.
|
|
51
|
+
*/
|
|
52
|
+
workingMemoryProvider?: WorkingMemoryProvider;
|
|
38
53
|
}
|
|
39
54
|
export interface ReactiveAgentResult extends BaseAgentResult {
|
|
40
55
|
toolCallCount: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactive.d.ts","sourceRoot":"","sources":["../../../src/types/agent/reactive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"reactive.d.ts","sourceRoot":"","sources":["../../../src/types/agent/reactive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AACjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAEhE,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB,OAAO,CAAC,EAAE,YAAY,CAAA;IAEtB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAA;IAEhB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,WAAW,CAAA;IACrB,KAAK,EAAE,oBAAoB,CAAA;IAE3B,QAAQ,CAAC,EAAE,cAAc,CAAA;IAEzB;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,sBAAsB,CAAA;IAEzC;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,eAAe,CAAA;IAEjC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IAEnC;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,qBAAqB,CAAA;CAC7C;AAED,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC3D,aAAa,EAAE,MAAM,CAAA;CACrB"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { CompactionConfig } from '../../config/runtime.js';
|
|
1
2
|
import type { AdvisoryConfig } from '../advisory/index.js';
|
|
2
3
|
import type { ResumeHandler } from '../hitl/index.js';
|
|
3
4
|
import type { LLMProvider } from '../provider/index.js';
|
|
@@ -10,6 +11,7 @@ import type { BaseAgentConfig, BaseAgentResult } from './base.js';
|
|
|
10
11
|
import type { AgentFactoryOptions } from './factory.js';
|
|
11
12
|
import type { TaskGateway } from './gateway.js';
|
|
12
13
|
import type { AgentManagerContract } from './manager.js';
|
|
14
|
+
import type { WorkingMemoryProvider } from './working-memory.js';
|
|
13
15
|
export interface SupervisorAgentConfig extends BaseAgentConfig {
|
|
14
16
|
provider: LLMProvider;
|
|
15
17
|
agentIds: string[];
|
|
@@ -56,6 +58,22 @@ export interface SupervisorAgentConfig extends BaseAgentConfig {
|
|
|
56
58
|
* + children share one ephemeral container per task.
|
|
57
59
|
*/
|
|
58
60
|
sandboxProvider?: SandboxProvider;
|
|
61
|
+
/**
|
|
62
|
+
* Optional structured-compaction config. When omitted, `query()` never
|
|
63
|
+
* builds a `WorkingStateManager` and compaction early-returns — the run
|
|
64
|
+
* path is byte-identical to a non-compacting run. Hosts opt in (e.g. with
|
|
65
|
+
* a `contextWindowTokens`) to keep a long single run alive instead of
|
|
66
|
+
* silently truncating.
|
|
67
|
+
*/
|
|
68
|
+
compactionConfig?: CompactionConfig;
|
|
69
|
+
/**
|
|
70
|
+
* Optional neutral working-memory seam. When set, the SDK re-renders the
|
|
71
|
+
* provider's string into a single pinned leading system message every
|
|
72
|
+
* iteration (the primacy-edge, compaction-preserved slot). Absent ⇒ no
|
|
73
|
+
* block is ever injected. The SDK only positions the string; the host owns
|
|
74
|
+
* its content and trust framing.
|
|
75
|
+
*/
|
|
76
|
+
workingMemoryProvider?: WorkingMemoryProvider;
|
|
59
77
|
}
|
|
60
78
|
export interface AgentTaskResult {
|
|
61
79
|
agentId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../../src/types/agent/supervisor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"supervisor.d.ts","sourceRoot":"","sources":["../../../src/types/agent/supervisor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAEhE,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC7D,QAAQ,EAAE,WAAW,CAAA;IAErB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAElB,OAAO,CAAC,EAAE,WAAW,CAAA;IACrB,YAAY,CAAC,EAAE,oBAAoB,CAAA;IACnC,KAAK,CAAC,EAAE,oBAAoB,CAAA;IAE5B,YAAY,EAAE,MAAM,CAAA;IAEpB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAA;IAEhB,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,UAAU,CAAC,EAAE,gBAAgB,CAAA;IAE7B,cAAc,CAAC,EAAE,mBAAmB,CAAA;IAEpC,QAAQ,CAAC,EAAE,cAAc,CAAA;IAEzB;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,EAAE,aAAa,CAAA;IAE7B;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,EAAE,sBAAsB,CAAA;IAEzC;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,eAAe,CAAA;IAEjC;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IAEnC;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,qBAAqB,CAAA;CAC7C;AAED,MAAM,WAAW,eAAe;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,eAAe,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC7D,WAAW,EAAE,eAAe,EAAE,CAAA;IAC9B,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;CAClB"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-turn context the SDK is allowed to hand a working-memory provider.
|
|
3
|
+
*
|
|
4
|
+
* NEUTRAL by construction: opaque strings + a number, NO host/Postgres/disk
|
|
5
|
+
* types. It mirrors `AgentRuntimeContext.notes: readonly string[]` and the
|
|
6
|
+
* `web-search` seam discipline — the host closes over everything else
|
|
7
|
+
* (threadId, output dir, tenancy) when it builds the provider, so the SDK
|
|
8
|
+
* never learns a domain type. The SDK only POSITIONS the returned string at
|
|
9
|
+
* the primacy edge; the host OWNS the content and its authority framing.
|
|
10
|
+
*/
|
|
11
|
+
export interface WorkingMemoryTurnContext {
|
|
12
|
+
/** The active run id (opaque). */
|
|
13
|
+
readonly runId: string;
|
|
14
|
+
/** 1-based iteration counter for this run. */
|
|
15
|
+
readonly iteration: number;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Returns a rendered, already-sanitized working-memory block to pin at the
|
|
19
|
+
* primacy edge (a single leading system message, refreshed every iteration).
|
|
20
|
+
*
|
|
21
|
+
* The SDK does no parsing of the returned string — it stores it verbatim under
|
|
22
|
+
* a sentinel header and re-pins it each turn. An empty/blank return ⇒ no block
|
|
23
|
+
* is injected (the byte-identical-when-empty property). Async so the host can
|
|
24
|
+
* `stat` the output dir / read the registry each turn. Failure-isolated by the
|
|
25
|
+
* SDK: a throwing/slow provider degrades to "no refresh this turn", never
|
|
26
|
+
* breaks the run.
|
|
27
|
+
*/
|
|
28
|
+
export type WorkingMemoryProvider = (ctx: WorkingMemoryTurnContext) => string | Promise<string>;
|
|
29
|
+
//# sourceMappingURL=working-memory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"working-memory.d.ts","sourceRoot":"","sources":["../../../src/types/agent/working-memory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,WAAW,wBAAwB;IACxC,kCAAkC;IAClC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,8CAA8C;IAC9C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC1B;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,GAAG,EAAE,wBAAwB,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"working-memory.js","sourceRoot":"","sources":["../../../src/types/agent/working-memory.ts"],"names":[],"mappings":""}
|
|
@@ -8,6 +8,16 @@ export interface TokenUsage {
|
|
|
8
8
|
cacheWriteTokens: number;
|
|
9
9
|
}
|
|
10
10
|
export declare function accumulateTokenUsage(current: TokenUsage, addition: TokenUsage): TokenUsage;
|
|
11
|
+
/**
|
|
12
|
+
* Merge two usage snapshots seen WITHIN a single streamed turn. Provider usage
|
|
13
|
+
* frames over one stream are cumulative/monotonic (input set once early, output
|
|
14
|
+
* grows), but a late frame can OMIT a field (report 0) — e.g. Anthropic's
|
|
15
|
+
* `message_delta` may carry only output tokens. A naive last-write-wins
|
|
16
|
+
* (`usage = chunk.usage`) then drops the earlier prompt/cache counts and
|
|
17
|
+
* under-reports the turn. Taking the per-field high-water mark preserves every
|
|
18
|
+
* field. DISTINCT from {@link accumulateTokenUsage}, which SUMS across turns.
|
|
19
|
+
*/
|
|
20
|
+
export declare function mergeTokenUsage(current: TokenUsage, next: TokenUsage): TokenUsage;
|
|
11
21
|
export interface CostInfo {
|
|
12
22
|
inputCostPer1M: number;
|
|
13
23
|
outputCostPer1M: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/common/index.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAA;AAE/F,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAE7D;AAED,MAAM,WAAW,UAAU;IAC1B,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;CACxB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,GAAG,UAAU,CAQ1F;AAED,MAAM,WAAW,QAAQ;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjC,SAAS,EAAE,OAAO,CAAA;CAClB"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/common/index.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAA;AAE/F,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAE7D;AAED,MAAM,WAAW,UAAU;IAC1B,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;CACxB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,GAAG,UAAU,CAQ1F;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,GAAG,UAAU,CAQjF;AAED,MAAM,WAAW,QAAQ;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjC,SAAS,EAAE,OAAO,CAAA;CAClB"}
|
|
@@ -10,4 +10,22 @@ export function accumulateTokenUsage(current, addition) {
|
|
|
10
10
|
cacheWriteTokens: current.cacheWriteTokens + addition.cacheWriteTokens,
|
|
11
11
|
};
|
|
12
12
|
}
|
|
13
|
+
/**
|
|
14
|
+
* Merge two usage snapshots seen WITHIN a single streamed turn. Provider usage
|
|
15
|
+
* frames over one stream are cumulative/monotonic (input set once early, output
|
|
16
|
+
* grows), but a late frame can OMIT a field (report 0) — e.g. Anthropic's
|
|
17
|
+
* `message_delta` may carry only output tokens. A naive last-write-wins
|
|
18
|
+
* (`usage = chunk.usage`) then drops the earlier prompt/cache counts and
|
|
19
|
+
* under-reports the turn. Taking the per-field high-water mark preserves every
|
|
20
|
+
* field. DISTINCT from {@link accumulateTokenUsage}, which SUMS across turns.
|
|
21
|
+
*/
|
|
22
|
+
export function mergeTokenUsage(current, next) {
|
|
23
|
+
return {
|
|
24
|
+
promptTokens: Math.max(current.promptTokens, next.promptTokens),
|
|
25
|
+
completionTokens: Math.max(current.completionTokens, next.completionTokens),
|
|
26
|
+
totalTokens: Math.max(current.totalTokens, next.totalTokens),
|
|
27
|
+
cachedTokens: Math.max(current.cachedTokens, next.cachedTokens),
|
|
28
|
+
cacheWriteTokens: Math.max(current.cacheWriteTokens, next.cacheWriteTokens),
|
|
29
|
+
};
|
|
30
|
+
}
|
|
13
31
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/common/index.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB,CAAC,MAAmB;IACnD,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,WAAW,CAAA;AAC/E,CAAC;AAUD,MAAM,UAAU,oBAAoB,CAAC,OAAmB,EAAE,QAAoB;IAC7E,OAAO;QACN,YAAY,EAAE,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY;QAC1D,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB;QACtE,WAAW,EAAE,OAAO,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW;QACvD,YAAY,EAAE,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY;QAC1D,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB;KACtE,CAAA;AACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/common/index.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB,CAAC,MAAmB;IACnD,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,WAAW,CAAA;AAC/E,CAAC;AAUD,MAAM,UAAU,oBAAoB,CAAC,OAAmB,EAAE,QAAoB;IAC7E,OAAO;QACN,YAAY,EAAE,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY;QAC1D,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB;QACtE,WAAW,EAAE,OAAO,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW;QACvD,YAAY,EAAE,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY;QAC1D,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB;KACtE,CAAA;AACF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAAC,OAAmB,EAAE,IAAgB;IACpE,OAAO;QACN,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC;QAC/D,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAAC;QAC3E,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC;QAC5D,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC;QAC/D,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAAC;KAC3E,CAAA;AACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usage-merge.test.d.ts","sourceRoot":"","sources":["../../../src/types/common/usage-merge.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { accumulateTokenUsage, mergeTokenUsage } from './index.js';
|
|
3
|
+
const zero = {
|
|
4
|
+
promptTokens: 0,
|
|
5
|
+
completionTokens: 0,
|
|
6
|
+
totalTokens: 0,
|
|
7
|
+
cachedTokens: 0,
|
|
8
|
+
cacheWriteTokens: 0,
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* M7: within one streamed turn, usage frames are cumulative/monotonic but a
|
|
12
|
+
* late frame may omit fields. `mergeTokenUsage` keeps the per-field high-water
|
|
13
|
+
* mark so a trailing output-only frame does not zero the earlier prompt/cache
|
|
14
|
+
* counts (the under-report the audit flagged).
|
|
15
|
+
*/
|
|
16
|
+
describe('mergeTokenUsage (within-turn, per-field max)', () => {
|
|
17
|
+
it('preserves prompt/cache tokens when a later frame reports only output', () => {
|
|
18
|
+
// message_start-like frame: input + cache set, output still 0.
|
|
19
|
+
const early = {
|
|
20
|
+
...zero,
|
|
21
|
+
promptTokens: 1200,
|
|
22
|
+
cachedTokens: 800,
|
|
23
|
+
cacheWriteTokens: 200,
|
|
24
|
+
};
|
|
25
|
+
// message_delta-like frame: only output tokens, input/cache dropped to 0.
|
|
26
|
+
const lateOutputOnly = { ...zero, completionTokens: 350 };
|
|
27
|
+
const merged = mergeTokenUsage(early, lateOutputOnly);
|
|
28
|
+
expect(merged.promptTokens).toBe(1200); // NOT zeroed by the late frame
|
|
29
|
+
expect(merged.cachedTokens).toBe(800);
|
|
30
|
+
expect(merged.cacheWriteTokens).toBe(200);
|
|
31
|
+
expect(merged.completionTokens).toBe(350);
|
|
32
|
+
});
|
|
33
|
+
it('takes the growing (max) completion count across frames', () => {
|
|
34
|
+
const a = { ...zero, promptTokens: 100, completionTokens: 10 };
|
|
35
|
+
const b = { ...zero, promptTokens: 100, completionTokens: 42 };
|
|
36
|
+
expect(mergeTokenUsage(a, b).completionTokens).toBe(42);
|
|
37
|
+
// Order-independent (a late smaller frame never regresses the max).
|
|
38
|
+
expect(mergeTokenUsage(b, a).completionTokens).toBe(42);
|
|
39
|
+
});
|
|
40
|
+
it('is distinct from accumulateTokenUsage (which sums across turns)', () => {
|
|
41
|
+
const t1 = { ...zero, promptTokens: 100, completionTokens: 20 };
|
|
42
|
+
const t2 = { ...zero, promptTokens: 100, completionTokens: 30 };
|
|
43
|
+
// merge = max within a turn; accumulate = sum across turns.
|
|
44
|
+
expect(mergeTokenUsage(t1, t2).promptTokens).toBe(100);
|
|
45
|
+
expect(accumulateTokenUsage(t1, t2).promptTokens).toBe(200);
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
//# sourceMappingURL=usage-merge.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usage-merge.test.js","sourceRoot":"","sources":["../../../src/types/common/usage-merge.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7C,OAAO,EAAmB,oBAAoB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAEnF,MAAM,IAAI,GAAe;IACxB,YAAY,EAAE,CAAC;IACf,gBAAgB,EAAE,CAAC;IACnB,WAAW,EAAE,CAAC;IACd,YAAY,EAAE,CAAC;IACf,gBAAgB,EAAE,CAAC;CACnB,CAAA;AAED;;;;;GAKG;AACH,QAAQ,CAAC,8CAA8C,EAAE,GAAG,EAAE;IAC7D,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;QAC/E,+DAA+D;QAC/D,MAAM,KAAK,GAAe;YACzB,GAAG,IAAI;YACP,YAAY,EAAE,IAAI;YAClB,YAAY,EAAE,GAAG;YACjB,gBAAgB,EAAE,GAAG;SACrB,CAAA;QACD,0EAA0E;QAC1E,MAAM,cAAc,GAAe,EAAE,GAAG,IAAI,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAA;QAErE,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,EAAE,cAAc,CAAC,CAAA;QACrD,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAC,+BAA+B;QACtE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACrC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACzC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QACjE,MAAM,CAAC,GAAe,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAA;QAC1E,MAAM,CAAC,GAAe,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAA;QAC1E,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACvD,oEAAoE;QACpE,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACxD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QAC1E,MAAM,EAAE,GAAe,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAA;QAC3E,MAAM,EAAE,GAAe,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAA;QAC3E,4DAA4D;QAC5D,MAAM,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACtD,MAAM,CAAC,oBAAoB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC5D,CAAC,CAAC,CAAA;AACH,CAAC,CAAC,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { ConnectorId, ConnectorInstanceId, MCPClientId, MCPServerId } from '../ids/index.js';
|
|
2
2
|
import type { ConnectorDefinition, ConnectorExecuteParams, ConnectorExecuteResult, ConnectorInstance } from './definition.js';
|
|
3
|
-
export type
|
|
3
|
+
export type MCPStreamableHttpTransportType = 'streamable_http' | 'streamable-http';
|
|
4
|
+
export type MCPTransportType = 'stdio' | 'http-sse' | MCPStreamableHttpTransportType;
|
|
4
5
|
export interface MCPTransportConfigBase {
|
|
5
6
|
type: MCPTransportType;
|
|
6
7
|
}
|
|
@@ -17,7 +18,13 @@ export interface MCPHttpSseTransportConfig extends MCPTransportConfigBase {
|
|
|
17
18
|
headers?: Record<string, string>;
|
|
18
19
|
timeoutMs?: number;
|
|
19
20
|
}
|
|
20
|
-
export
|
|
21
|
+
export interface MCPStreamableHttpTransportConfig extends MCPTransportConfigBase {
|
|
22
|
+
type: MCPStreamableHttpTransportType;
|
|
23
|
+
url: string;
|
|
24
|
+
headers?: Record<string, string>;
|
|
25
|
+
timeoutMs?: number;
|
|
26
|
+
}
|
|
27
|
+
export type MCPTransportUnion = MCPStdioTransportConfig | MCPHttpSseTransportConfig | MCPStreamableHttpTransportConfig;
|
|
21
28
|
export interface MCPJsonRpcError {
|
|
22
29
|
code: number;
|
|
23
30
|
message: string;
|