@plurnk/plurnk 0.74.0 → 0.75.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/.env.defaults +3 -4
- package/README.md +58 -23
- package/dist/agui.d.ts +1 -0
- package/dist/agui.d.ts.map +1 -1
- package/dist/agui.js +6 -1
- package/dist/agui.js.map +1 -1
- package/dist/agui_cli.d.ts +1 -4
- package/dist/agui_cli.d.ts.map +1 -1
- package/dist/agui_cli.js +18 -10
- package/dist/agui_cli.js.map +1 -1
- package/dist/build-info.json +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +6 -1
- package/dist/cli.js.map +1 -1
- package/dist/completion.js +4 -4
- package/dist/completion.js.map +1 -1
- package/dist/diagnostics.d.ts +1 -1
- package/dist/diagnostics.d.ts.map +1 -1
- package/dist/diagnostics.js +2 -1
- package/dist/diagnostics.js.map +1 -1
- package/dist/dispatcher.d.ts +7 -8
- package/dist/dispatcher.d.ts.map +1 -1
- package/dist/dispatcher.js +196 -104
- package/dist/dispatcher.js.map +1 -1
- package/dist/envdefaults.d.ts.map +1 -1
- package/dist/envdefaults.js +4 -6
- package/dist/envdefaults.js.map +1 -1
- package/dist/mcp.d.ts +4 -1
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +131 -55
- package/dist/mcp.js.map +1 -1
- package/dist/paths.d.ts +2 -0
- package/dist/paths.d.ts.map +1 -0
- package/dist/paths.js +12 -0
- package/dist/paths.js.map +1 -0
- package/dist/proposal.d.ts +2 -5
- package/dist/proposal.d.ts.map +1 -1
- package/dist/proposal.js +45 -25
- package/dist/proposal.js.map +1 -1
- package/dist/reasoning-events.d.ts +14 -0
- package/dist/reasoning-events.d.ts.map +1 -0
- package/dist/reasoning-events.js +38 -0
- package/dist/reasoning-events.js.map +1 -0
- package/dist/reasoning.d.ts +11 -0
- package/dist/reasoning.d.ts.map +1 -0
- package/dist/reasoning.js +10 -0
- package/dist/reasoning.js.map +1 -0
- package/dist/render.d.ts +2 -0
- package/dist/render.d.ts.map +1 -1
- package/dist/render.js +33 -4
- package/dist/render.js.map +1 -1
- package/dist/skills.d.ts +7 -0
- package/dist/skills.d.ts.map +1 -0
- package/dist/skills.js +138 -0
- package/dist/skills.js.map +1 -0
- package/dist/subcommands.d.ts +3 -0
- package/dist/subcommands.d.ts.map +1 -1
- package/dist/subcommands.js +30 -10
- package/dist/subcommands.js.map +1 -1
- package/dist/transport.d.ts +10 -4
- package/dist/transport.d.ts.map +1 -1
- package/dist/transport.js +62 -16
- package/dist/transport.js.map +1 -1
- package/dist/tui.d.ts +22 -13
- package/dist/tui.d.ts.map +1 -1
- package/dist/tui.js +180 -64
- package/dist/tui.js.map +1 -1
- package/package.json +8 -6
package/dist/tui.js
CHANGED
|
@@ -19,12 +19,15 @@ import { isAbsolute, resolve } from "node:path";
|
|
|
19
19
|
import PasteFilter from "./paste.js";
|
|
20
20
|
import { extractOpenPaths } from "./openpaths.js";
|
|
21
21
|
import { pathPartial, completePath, dslOpPartial, completeOps, dslStatement } from "./completion.js";
|
|
22
|
-
import { renderLogEntry, renderSummary, isPromptEntry, coordLabel, progressLabel, entryTarget, isEntryMaterialization } from "./render.js";
|
|
23
|
-
import { renderProposalMenu, keyToResolution, isServerResolved,
|
|
22
|
+
import { renderLogEntry, renderReasoning, renderSummary, isPromptEntry, coordLabel, progressLabel, entryTarget, isEntryMaterialization } from "./render.js";
|
|
23
|
+
import { renderProposalMenu, keyToResolution, isServerResolved, renderQuestionMenu, questionChoices, answerForQuestion } from "./proposal.js";
|
|
24
24
|
import { ProblemError, renderDiagnostic, report, clientSubcommandUnknownVerb, NO_MODEL_HINT } from "./diagnostics.js";
|
|
25
25
|
import StreamTrace, { inlineable, renderInline } from "./stream.js";
|
|
26
26
|
import { runModels, runWorkspaceList, runWorkspaceWorkers, runLogRead } from "./subcommands.js";
|
|
27
|
+
import { Validator, } from "@plurnk/plurnk-contracts";
|
|
27
28
|
import { handleMcp } from "./mcp.js";
|
|
29
|
+
import { handleSkills } from "./skills.js";
|
|
30
|
+
import { formatWorkerReasoning, readWorkerReasoning, setWorkerReasoning, } from "./reasoning.js";
|
|
28
31
|
export const renderTuiFailure = (cause) => {
|
|
29
32
|
if (cause instanceof ProblemError) {
|
|
30
33
|
return renderDiagnostic(cause.problem)
|
|
@@ -39,14 +42,15 @@ export const renderTuiFailure = (cause) => {
|
|
|
39
42
|
// ambiguous (workspace or worker?) and is gone. /rename retargets the current
|
|
40
43
|
// workspace's mutable handle (a worker's name is immutable — no /rename for workers).
|
|
41
44
|
export const VERBS = [
|
|
42
|
-
"help", "models", "workspaces", "workers", "log", "model", "child",
|
|
45
|
+
"help", "models", "workspaces", "workers", "log", "model", "child", "reasoning",
|
|
43
46
|
"yolo", "workspace", "rename", "worker", "stop", "quit",
|
|
44
47
|
"pick", "hide", "view", "drop", "members", "import", "script", "mcp",
|
|
45
48
|
"accept", "reject", "cancel", "edit",
|
|
46
49
|
];
|
|
47
50
|
export const TUI_HELP = [
|
|
48
|
-
" /models /workspaces /workers /log [n] inspect",
|
|
49
|
-
" /model <
|
|
51
|
+
" /models [search] /workspaces /workers /log [n] inspect",
|
|
52
|
+
" /model <selector> · /child <selector|inherit> parent and child models",
|
|
53
|
+
" /reasoning [off|adaptive|effort] inspect or set reasoning",
|
|
50
54
|
" /yolo toggle local auto-accept",
|
|
51
55
|
" /workspace [name] new workspace",
|
|
52
56
|
" /rename <name> rename this workspace (a mutable handle)",
|
|
@@ -58,8 +62,11 @@ export const TUI_HELP = [
|
|
|
58
62
|
" /members the model's resolved file universe (+ rules)",
|
|
59
63
|
" /import <path> dump a local file's content into the prompt",
|
|
60
64
|
" /script <path> run a .plk file (its DSL → op.parse)",
|
|
61
|
-
" /mcp
|
|
62
|
-
"
|
|
65
|
+
" /mcp list available workspace MCP servers",
|
|
66
|
+
" add <alias> <target> [options.json] · enable/disable/remove <alias>",
|
|
67
|
+
" oauth <alias> <callback-url>",
|
|
68
|
+
" /skills list universal Agent Skills",
|
|
69
|
+
" add/remove/find/update manage .agents/skills via npx skills",
|
|
63
70
|
" /accept /reject /cancel /edit resolve a pending proposal (or keys a/e/r/c)",
|
|
64
71
|
" /stop cancel the running loop",
|
|
65
72
|
" /quit exit",
|
|
@@ -141,7 +148,7 @@ export const parseSlash = (line) => {
|
|
|
141
148
|
// readline's async completer form (arity 2 → async). Verb/alias completion
|
|
142
149
|
// answers synchronously; path positions read the local fs (co-location law)
|
|
143
150
|
// and answer once readdir resolves.
|
|
144
|
-
export const makeCompleter = (getAliases, cwd) => (line, callback) => {
|
|
151
|
+
export const makeCompleter = (getAliases, cwd, getReasoningPolicies = () => []) => (line, callback) => {
|
|
145
152
|
const verbFrag = line.match(/^\/(\w*)$/);
|
|
146
153
|
if (verbFrag) {
|
|
147
154
|
callback(null, [VERBS.map((v) => `/${v}`).filter((v) => v.startsWith(line)), line]);
|
|
@@ -155,12 +162,28 @@ export const makeCompleter = (getAliases, cwd) => (line, callback) => {
|
|
|
155
162
|
callback(null, [candidates.filter((a) => a.startsWith(aliasFrag[2])), aliasFrag[2]]);
|
|
156
163
|
return;
|
|
157
164
|
}
|
|
165
|
+
const reasoningFrag = line.match(/^\/reasoning\s+(\S*)$/);
|
|
166
|
+
if (reasoningFrag) {
|
|
167
|
+
callback(null, [
|
|
168
|
+
getReasoningPolicies().filter((policy) => policy.startsWith(reasoningFrag[1])),
|
|
169
|
+
reasoningFrag[1],
|
|
170
|
+
]);
|
|
171
|
+
return;
|
|
172
|
+
}
|
|
158
173
|
const mcpFrag = line.match(/^\/mcp\s+(\S*)$/);
|
|
159
174
|
if (mcpFrag) {
|
|
160
175
|
const fragment = mcpFrag[1];
|
|
161
|
-
const commands = ["
|
|
176
|
+
const commands = ["add", "enable", "disable", "remove", "oauth"]
|
|
177
|
+
.filter((command) => command.startsWith(fragment));
|
|
178
|
+
callback(null, [commands, fragment]);
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
const skillsFrag = line.match(/^\/skills\s+(\S*)$/);
|
|
182
|
+
if (skillsFrag) {
|
|
183
|
+
const fragment = skillsFrag[1];
|
|
184
|
+
const commands = ["add", "remove", "find", "list", "update"]
|
|
162
185
|
.filter((command) => command.startsWith(fragment));
|
|
163
|
-
|
|
186
|
+
callback(null, [commands, fragment]);
|
|
164
187
|
return;
|
|
165
188
|
}
|
|
166
189
|
const op = dslOpPartial(line);
|
|
@@ -190,26 +213,50 @@ export const seedPromptHistory = async (rpc, workspaceId, rl) => {
|
|
|
190
213
|
catch { /* history is a convenience; never block the REPL */ }
|
|
191
214
|
};
|
|
192
215
|
// The one-line startup banner: version · workspace [· worker] · model · help. Pure so the
|
|
193
|
-
// model-label resolution is unit-testable. modelLabel = the client's
|
|
194
|
-
// --model
|
|
216
|
+
// model-label resolution is unit-testable. modelLabel = the client's explicit
|
|
217
|
+
// --model selector when set, else the daemon's active default
|
|
195
218
|
// (providers.list `active`), else an honest fallback.
|
|
196
219
|
export const buildHeader = (opts) => {
|
|
197
220
|
const head = opts.versionNotice ?? "plurnk";
|
|
198
221
|
const worker = opts.workerName !== undefined ? ` · worker: ${opts.workerName}` : "";
|
|
199
|
-
const modelLabel = opts.
|
|
222
|
+
const modelLabel = opts.modelSelector ?? opts.activeAlias ?? "(daemon default)";
|
|
223
|
+
const reasoning = opts.reasoningPolicy === undefined || opts.reasoningPolicy === null
|
|
224
|
+
? ""
|
|
225
|
+
: ` · reasoning: ${opts.reasoningPolicy}`;
|
|
200
226
|
const yolo = opts.yolo ? " · yolo: on" : "";
|
|
201
|
-
return `${head} · workspace: ${opts.workspaceName}${worker} · model: ${modelLabel}${yolo} · /help`;
|
|
227
|
+
return `${head} · workspace: ${opts.workspaceName}${worker} · model: ${modelLabel}${reasoning}${yolo} · /help`;
|
|
202
228
|
};
|
|
229
|
+
const modelRouteOrNull = (value) => value === null ? null : Validator.assertModelRoute(value);
|
|
230
|
+
const workerModelProjection = (value) => {
|
|
231
|
+
if (value === null || typeof value !== "object") {
|
|
232
|
+
throw new TypeError("worker.model.get returned no model projection");
|
|
233
|
+
}
|
|
234
|
+
const projection = value;
|
|
235
|
+
return {
|
|
236
|
+
model: modelRouteOrNull(projection.model),
|
|
237
|
+
spawnModel: modelRouteOrNull(projection.spawnModel),
|
|
238
|
+
};
|
|
239
|
+
};
|
|
240
|
+
export const resolvedModelLabel = (spec) => spec.alias ?? `${spec.provider}/${spec.model}`;
|
|
203
241
|
export const handleVerb = async (line, ctx) => {
|
|
204
242
|
const { verb, rest } = parseSlash(line);
|
|
205
243
|
const { rpc, opts, write } = ctx;
|
|
244
|
+
const refreshWorkerPolicy = async () => {
|
|
245
|
+
const model = workerModelProjection(await rpc.call("worker.model.get"));
|
|
246
|
+
ctx.setModel(model.model);
|
|
247
|
+
ctx.setSpawnModel(model.spawnModel);
|
|
248
|
+
ctx.setReasoning(await readWorkerReasoning(rpc));
|
|
249
|
+
};
|
|
206
250
|
switch (verb) {
|
|
207
251
|
case "":
|
|
208
252
|
case "help":
|
|
209
253
|
write(TUI_HELP);
|
|
210
254
|
return;
|
|
211
255
|
case "models":
|
|
212
|
-
await runModels(rpc, {
|
|
256
|
+
await runModels(rpc, {
|
|
257
|
+
json: false,
|
|
258
|
+
query: rest.length === 0 ? {} : { search: rest },
|
|
259
|
+
});
|
|
213
260
|
return;
|
|
214
261
|
case "workspaces":
|
|
215
262
|
await runWorkspaceList(rpc, { json: false });
|
|
@@ -225,30 +272,53 @@ export const handleVerb = async (line, ctx) => {
|
|
|
225
272
|
}
|
|
226
273
|
case "model":
|
|
227
274
|
if (rest.length === 0) {
|
|
228
|
-
write(` model: ${
|
|
275
|
+
write(` model: ${ctx.model === null ? "(daemon default)" : resolvedModelLabel(ctx.model)}\n`);
|
|
276
|
+
return;
|
|
277
|
+
}
|
|
278
|
+
// {§worker-model-selection} — /model is a server-backed durable selection:
|
|
279
|
+
// the daemon resolves and persists onto the conversation worker; nothing
|
|
280
|
+
// client-local rides the next loop.
|
|
281
|
+
try {
|
|
282
|
+
ctx.setModel(Validator.assertModelRoute(await rpc.call("worker.model.set", { selector: rest })));
|
|
283
|
+
write(` model: ${rest}\n`);
|
|
284
|
+
}
|
|
285
|
+
catch (cause) {
|
|
286
|
+
write(` model set failed: ${cause instanceof Error ? cause.message : String(cause)}\n`);
|
|
229
287
|
return;
|
|
230
288
|
}
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
289
|
+
try {
|
|
290
|
+
ctx.setReasoning(await readWorkerReasoning(rpc));
|
|
291
|
+
}
|
|
292
|
+
catch (cause) {
|
|
293
|
+
write(` reasoning refresh failed: ${cause instanceof Error ? cause.message : String(cause)}\n`);
|
|
294
|
+
}
|
|
295
|
+
return;
|
|
296
|
+
case "reasoning":
|
|
297
|
+
try {
|
|
298
|
+
const reasoning = rest.length === 0
|
|
299
|
+
? await readWorkerReasoning(rpc)
|
|
300
|
+
: await setWorkerReasoning(rpc, rest);
|
|
301
|
+
ctx.setReasoning(reasoning);
|
|
302
|
+
write(`${formatWorkerReasoning(reasoning).trimEnd().replace(/^/gm, " ")}\n`);
|
|
303
|
+
}
|
|
304
|
+
catch (cause) {
|
|
305
|
+
write(`${renderTuiFailure(cause)}\n`);
|
|
306
|
+
}
|
|
237
307
|
return;
|
|
238
308
|
case "child":
|
|
239
309
|
if (rest.length === 0) {
|
|
240
|
-
write(` child: ${
|
|
310
|
+
write(` child: ${ctx.spawnModel === null ? "inherit" : resolvedModelLabel(ctx.spawnModel)}\n`);
|
|
241
311
|
return;
|
|
242
312
|
}
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
313
|
+
try {
|
|
314
|
+
// {§worker-model-selection} — inherit IS the server action (selector null
|
|
315
|
+
// clears the override); the daemon returns null for it.
|
|
316
|
+
ctx.setSpawnModel(modelRouteOrNull(await rpc.call("worker.child.set", { selector: rest === "inherit" ? null : rest })));
|
|
317
|
+
write(` child: ${rest}\n`);
|
|
246
318
|
}
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
opts.childModel = ctx.resolveModel?.(rest);
|
|
319
|
+
catch (cause) {
|
|
320
|
+
write(` child set failed: ${cause instanceof Error ? cause.message : String(cause)}\n`);
|
|
250
321
|
}
|
|
251
|
-
write(` child: ${rest}\n`);
|
|
252
322
|
return;
|
|
253
323
|
case "yolo":
|
|
254
324
|
opts.yolo = !opts.yolo;
|
|
@@ -261,6 +331,7 @@ export const handleVerb = async (line, ctx) => {
|
|
|
261
331
|
// handle (/rename retargets it). client id (#249) + AGENTS override
|
|
262
332
|
// (#268) ride the switch.
|
|
263
333
|
ctx.setWorkspace(await ctx.switchWorkspace(rest.length > 0 ? rest : undefined));
|
|
334
|
+
await refreshWorkerPolicy();
|
|
264
335
|
write(` workspace: ${ctx.getWorkspace().name} (new)\n`);
|
|
265
336
|
return;
|
|
266
337
|
}
|
|
@@ -282,6 +353,7 @@ export const handleVerb = async (line, ctx) => {
|
|
|
282
353
|
// next prompt speaks there. The workspace (the world) is unchanged.
|
|
283
354
|
const forked = await rpc.call("worker.fork", rest.length > 0 ? { name: rest } : {});
|
|
284
355
|
await rpc.call("workspace.attach", { id: ctx.getWorkspace().id, workerId: forked.workerId });
|
|
356
|
+
await refreshWorkerPolicy();
|
|
285
357
|
write(` worker: ${forked.workerName} (new)\n`);
|
|
286
358
|
return;
|
|
287
359
|
}
|
|
@@ -371,7 +443,11 @@ export const handleVerb = async (line, ctx) => {
|
|
|
371
443
|
return;
|
|
372
444
|
}
|
|
373
445
|
case "mcp": {
|
|
374
|
-
await handleMcp(rest, rpc, write);
|
|
446
|
+
await handleMcp(rest, rpc, write, { overlay: opts.mcpConfiguration });
|
|
447
|
+
return;
|
|
448
|
+
}
|
|
449
|
+
case "skills": {
|
|
450
|
+
await handleSkills(rest, write, opts.projectRoot);
|
|
375
451
|
return;
|
|
376
452
|
}
|
|
377
453
|
case "accept":
|
|
@@ -433,7 +509,7 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
433
509
|
// Alias cache for /model completion + the active alias for the header —
|
|
434
510
|
// one cheap RPC, refreshed never (aliases are daemon-boot-time config).
|
|
435
511
|
// Awaited before the banner so the header can name the model the daemon
|
|
436
|
-
// will actually use when --model
|
|
512
|
+
// will actually use when --model is unset (providers.list
|
|
437
513
|
// marks the boot-time default `active`).
|
|
438
514
|
let aliasCache = [];
|
|
439
515
|
let activeAlias;
|
|
@@ -448,12 +524,50 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
448
524
|
}
|
|
449
525
|
}
|
|
450
526
|
catch { /* completion stays empty; header falls back to (daemon default) */ }
|
|
527
|
+
// {§worker-model-selection} — the worker owns the model. Read the server truth
|
|
528
|
+
// for the header and the /model /child display; an EXPLICIT --model persists
|
|
529
|
+
// onto the worker at startup (a one-time durable selection, not a per-loop
|
|
530
|
+
// reassertion).
|
|
531
|
+
let workerModel = null;
|
|
532
|
+
let workerSpawnModel = null;
|
|
533
|
+
let workerReasoning = { policy: null, supportedPolicies: [] };
|
|
534
|
+
let reasoningFailure;
|
|
535
|
+
// Model identity is control-plane truth, not decorative header data. A
|
|
536
|
+
// transport failure or malformed projection leaves this client unable to
|
|
537
|
+
// know which durable worker policy it is presenting, so admission fails
|
|
538
|
+
// instead of silently relabeling the worker as the daemon default.
|
|
539
|
+
const initialModel = workerModelProjection(await transport.rpc("worker.model.get"));
|
|
540
|
+
workerModel = initialModel.model;
|
|
541
|
+
workerSpawnModel = initialModel.spawnModel;
|
|
542
|
+
if (opts.modelExplicit === true && opts.modelSelector !== undefined) {
|
|
543
|
+
// A deliberate selection is part of invocation admission, not display
|
|
544
|
+
// hydration. Refuse the TUI before it accepts input if the daemon cannot
|
|
545
|
+
// persist it; continuing would silently run the worker's previous model.
|
|
546
|
+
workerModel = Validator.assertModelRoute(await transport.rpc("worker.model.set", { selector: opts.modelSelector }));
|
|
547
|
+
}
|
|
548
|
+
if (opts.reasoningExplicit === true && opts.reasoningPolicy !== undefined) {
|
|
549
|
+
// Same admission rule as --model: an explicit policy must take effect or
|
|
550
|
+
// the invocation fails before any model work can run under stale policy.
|
|
551
|
+
workerReasoning = await setWorkerReasoning({ call: (method, params) => transport.rpc(method, params) }, opts.reasoningPolicy);
|
|
552
|
+
}
|
|
553
|
+
else {
|
|
554
|
+
try {
|
|
555
|
+
workerReasoning = await readWorkerReasoning({ call: (method, params) => transport.rpc(method, params) });
|
|
556
|
+
}
|
|
557
|
+
catch (cause) {
|
|
558
|
+
reasoningFailure = cause;
|
|
559
|
+
}
|
|
560
|
+
}
|
|
451
561
|
// One header line: version · workspace [· worker] · model · help (see buildHeader).
|
|
452
562
|
const header = buildHeader({
|
|
453
563
|
versionNotice: opts.versionNotice, workspaceName: current.name, workerName: opts.workerName,
|
|
454
|
-
|
|
564
|
+
modelSelector: workerModel === null ? opts.modelSelector : resolvedModelLabel(workerModel), activeAlias,
|
|
565
|
+
reasoningPolicy: workerReasoning.policy,
|
|
566
|
+
yolo: opts.yolo,
|
|
455
567
|
});
|
|
456
568
|
process.stdout.write(`\x1b[2m${header}\x1b[0m\n\n`);
|
|
569
|
+
if (reasoningFailure !== undefined)
|
|
570
|
+
process.stdout.write(`${renderTuiFailure(reasoningFailure)}\n`);
|
|
457
571
|
// The prompt is the user's row, restricted to WIDTH-STABLE glyphs —
|
|
458
572
|
// settled empirically in two rounds. Round 1 (` 👤 ✉️ ✅ 201 : `)
|
|
459
573
|
// drifted by exactly one column: ✉️ is U+2709+VS16, the variation-
|
|
@@ -525,7 +639,7 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
525
639
|
output: process.stdout,
|
|
526
640
|
terminal: true,
|
|
527
641
|
prompt: buildPrompt(),
|
|
528
|
-
completer: makeCompleter(() => aliasCache, process.cwd()),
|
|
642
|
+
completer: makeCompleter(() => aliasCache, process.cwd(), () => workerReasoning.supportedPolicies),
|
|
529
643
|
});
|
|
530
644
|
const reprompt = () => {
|
|
531
645
|
readline.cursorTo(process.stdout, 0);
|
|
@@ -590,9 +704,10 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
590
704
|
// handlers are forward-declared (assigned once verbCtx exists).
|
|
591
705
|
let pendingProposal = null;
|
|
592
706
|
let onProposalKey = () => { };
|
|
593
|
-
// A pending
|
|
594
|
-
// choice; anything else is free response), NOT the
|
|
595
|
-
// free response needs text. The line handler
|
|
707
|
+
// A pending request-user-input question ({§question-tool}): answered by TYPING
|
|
708
|
+
// (a number picks an enum choice; anything else is free response), NOT the
|
|
709
|
+
// a/e/r/c keypress path — free response needs text. The line handler
|
|
710
|
+
// intercepts while this is set.
|
|
596
711
|
let pendingQuestion = null;
|
|
597
712
|
let dispatchShortcut = () => { };
|
|
598
713
|
const onStdin = (chunk) => {
|
|
@@ -745,6 +860,7 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
745
860
|
repromptPreserving();
|
|
746
861
|
};
|
|
747
862
|
transport.subscribe({
|
|
863
|
+
onReasoning: ({ content }) => printAbove(renderReasoning(content)),
|
|
748
864
|
onEntry: (entry) => {
|
|
749
865
|
if (entry.loop_seq > lastLoopSeq)
|
|
750
866
|
lastLoopSeq = entry.loop_seq;
|
|
@@ -787,15 +903,6 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
787
903
|
}
|
|
788
904
|
},
|
|
789
905
|
onProposal: (p) => {
|
|
790
|
-
// SEND signal 300 question FIRST — even a yolo loop stops the world for a human;
|
|
791
|
-
// the line handler resolves it from the next typed line.
|
|
792
|
-
const q = questionFromProposal(p);
|
|
793
|
-
if (q !== null) {
|
|
794
|
-
pendingQuestion = { logEntryId: p.logEntryId, choices: q.choices };
|
|
795
|
-
printAbove(renderQuestionMenu(q.question, q.choices));
|
|
796
|
-
reprompt();
|
|
797
|
-
return;
|
|
798
|
-
}
|
|
799
906
|
if (isServerResolved(p))
|
|
800
907
|
return;
|
|
801
908
|
if (opts.yolo) {
|
|
@@ -806,6 +913,14 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
806
913
|
proposalQueue.push(p);
|
|
807
914
|
showNextProposal();
|
|
808
915
|
},
|
|
916
|
+
onInteraction: (i) => {
|
|
917
|
+
// The question tool paused its loop: render the standard message + the
|
|
918
|
+
// schema's single-property enum choices; the line handler resolves the
|
|
919
|
+
// typed answer back into the paused run.
|
|
920
|
+
pendingQuestion = { interactionId: i.interactionId, schema: i.responseSchema };
|
|
921
|
+
printAbove(renderQuestionMenu(i.message, questionChoices(i.responseSchema)));
|
|
922
|
+
reprompt();
|
|
923
|
+
},
|
|
809
924
|
// A loop terminating just clears the parked glyph; the summary is rendered
|
|
810
925
|
// from the run's own done (below).
|
|
811
926
|
onTerminated: () => { hibernating = false; },
|
|
@@ -849,7 +964,13 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
849
964
|
// Verb dispatch runs through the testable module-level handleVerb; this
|
|
850
965
|
// context injects the live workspace / opts / stdout / import glue.
|
|
851
966
|
const verbCtx = {
|
|
852
|
-
rpc: verbRpc, opts,
|
|
967
|
+
rpc: verbRpc, opts,
|
|
968
|
+
get model() { return workerModel; },
|
|
969
|
+
get spawnModel() { return workerSpawnModel; },
|
|
970
|
+
get reasoning() { return workerReasoning; },
|
|
971
|
+
setModel: (spec) => { workerModel = spec; },
|
|
972
|
+
setSpawnModel: (spec) => { workerSpawnModel = spec; },
|
|
973
|
+
setReasoning: (reasoning) => { workerReasoning = reasoning; },
|
|
853
974
|
getWorkspace: () => current,
|
|
854
975
|
setWorkspace: (s) => { current = s; },
|
|
855
976
|
switchWorkspace: (name) => transport.useSession(name, { projectRoot: opts.projectRoot, client: opts.client }),
|
|
@@ -899,19 +1020,20 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
899
1020
|
reprompt();
|
|
900
1021
|
return new Promise((resolve) => {
|
|
901
1022
|
rl.on("line", async (line) => {
|
|
902
|
-
// A pending
|
|
903
|
-
// BEFORE any verb/prompt/inject handling
|
|
904
|
-
// choice, anything else is free response
|
|
905
|
-
//
|
|
1023
|
+
// A pending request-user-input question consumes the typed line as its
|
|
1024
|
+
// answer, BEFORE any verb/prompt/inject handling: a number picks an
|
|
1025
|
+
// enum choice, anything else is free response (or raw JSON for a
|
|
1026
|
+
// multi-property schema). Empty → re-ask. Resolves the paused run with
|
|
1027
|
+
// the standard ElicitResult payload.
|
|
906
1028
|
if (pendingQuestion !== null) {
|
|
907
|
-
const
|
|
908
|
-
if (
|
|
1029
|
+
const content = answerForQuestion(line, pendingQuestion.schema);
|
|
1030
|
+
if (content === null) {
|
|
909
1031
|
reprompt();
|
|
910
1032
|
return;
|
|
911
1033
|
}
|
|
912
|
-
const {
|
|
1034
|
+
const { interactionId } = pendingQuestion;
|
|
913
1035
|
pendingQuestion = null;
|
|
914
|
-
await transport.
|
|
1036
|
+
await transport.resolveInteraction(interactionId, { action: "accept", content })
|
|
915
1037
|
.catch((e) => printAbove(` \x1b[31manswer failed: ${e instanceof Error ? e.message : String(e)}\x1b[0m`));
|
|
916
1038
|
reprompt();
|
|
917
1039
|
return;
|
|
@@ -998,15 +1120,9 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
998
1120
|
// Prompt. `? ` = ask (read-only loop, flags.mode="ask");
|
|
999
1121
|
// `: ` = act. Per-line prefix overrides --flags mode.
|
|
1000
1122
|
const { flags: lineFlags, prompt: promptText } = lineMode(trimmed, opts.loopFlags);
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
if (opts.model !== undefined)
|
|
1005
|
-
loopParams.model = opts.model; // #90 client-resolved routing (precedence)
|
|
1006
|
-
if (opts.childAlias !== undefined)
|
|
1007
|
-
loopParams.childAlias = opts.childAlias;
|
|
1008
|
-
if (opts.childModel !== undefined)
|
|
1009
|
-
loopParams.childModel = opts.childModel;
|
|
1123
|
+
// {§worker-model-selection} — no model selector rides the loop: the
|
|
1124
|
+
// worker owns the model; /model and /child persisted it server-side.
|
|
1125
|
+
const loopParams = { prompt: promptText, requestUserInput: opts.requestUserInput !== false };
|
|
1010
1126
|
if (lineFlags !== undefined && Object.keys(lineFlags).length > 0)
|
|
1011
1127
|
loopParams.flags = lineFlags;
|
|
1012
1128
|
if (opts.maxTurns !== undefined)
|
package/dist/tui.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tui.js","sourceRoot":"","sources":["../src/tui.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tui.js","sourceRoot":"","sources":["../src/tui.ts"],"names":[],"mappings":"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"}
|