@plurnk/plurnk 0.75.0 → 0.76.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/README.md +4 -2
- package/completions/_plurnk +13 -0
- package/completions/plurnk.bash +14 -0
- package/completions/plurnk.fish +37 -0
- package/conformance/agui-client.json +863 -0
- package/dist/agents.d.ts +11 -0
- package/dist/agents.d.ts.map +1 -0
- package/dist/agents.js +170 -0
- package/dist/agents.js.map +1 -0
- package/dist/agui.d.ts.map +1 -1
- package/dist/agui.js +39 -4
- package/dist/agui.js.map +1 -1
- package/dist/agui_cli.d.ts.map +1 -1
- package/dist/agui_cli.js +15 -3
- 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 -6
- package/dist/cli.js.map +1 -1
- package/dist/color.d.ts +2 -0
- package/dist/color.d.ts.map +1 -0
- package/dist/color.js +5 -0
- package/dist/color.js.map +1 -0
- 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 +1 -0
- package/dist/dispatcher.d.ts.map +1 -1
- package/dist/dispatcher.js +1 -1
- package/dist/dispatcher.js.map +1 -1
- package/dist/markdown.d.ts +17 -0
- package/dist/markdown.d.ts.map +1 -0
- package/dist/markdown.js +234 -0
- package/dist/markdown.js.map +1 -0
- package/dist/mcp.d.ts +7 -0
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +107 -39
- package/dist/mcp.js.map +1 -1
- package/dist/paste.d.ts +1 -0
- package/dist/paste.d.ts.map +1 -1
- package/dist/paste.js +5 -0
- package/dist/paste.js.map +1 -1
- package/dist/plan.d.ts +12 -0
- package/dist/plan.d.ts.map +1 -0
- package/dist/plan.js +30 -0
- package/dist/plan.js.map +1 -0
- package/dist/proposal.d.ts +1 -0
- package/dist/proposal.d.ts.map +1 -1
- package/dist/proposal.js +9 -9
- package/dist/proposal.js.map +1 -1
- package/dist/reasoning-events.d.ts +12 -3
- package/dist/reasoning-events.d.ts.map +1 -1
- package/dist/reasoning-events.js +11 -9
- package/dist/reasoning-events.js.map +1 -1
- package/dist/render.d.ts +2 -0
- package/dist/render.d.ts.map +1 -1
- package/dist/render.js +61 -47
- package/dist/render.js.map +1 -1
- package/dist/skills.d.ts +5 -5
- package/dist/skills.d.ts.map +1 -1
- package/dist/skills.js +93 -79
- package/dist/skills.js.map +1 -1
- package/dist/stream.d.ts.map +1 -1
- package/dist/stream.js +11 -11
- package/dist/stream.js.map +1 -1
- package/dist/subcommands.d.ts.map +1 -1
- package/dist/subcommands.js +2 -1
- package/dist/subcommands.js.map +1 -1
- package/dist/transport.d.ts +4 -2
- package/dist/transport.d.ts.map +1 -1
- package/dist/transport.js +25 -15
- package/dist/transport.js.map +1 -1
- package/dist/tui.d.ts +3 -2
- package/dist/tui.d.ts.map +1 -1
- package/dist/tui.js +164 -37
- package/dist/tui.js.map +1 -1
- package/man/plurnk.1 +153 -0
- package/package.json +11 -6
package/dist/tui.js
CHANGED
|
@@ -19,14 +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, renderReasoning, renderSummary, isPromptEntry,
|
|
23
|
-
import { renderProposalMenu, keyToResolution, isServerResolved, renderQuestionMenu, questionChoices, answerForQuestion } from "./proposal.js";
|
|
22
|
+
import { renderLogEntry, renderReasoning, renderReasoningPreview, renderSummary, isPromptEntry, progressLabel, entryTarget, isEntryMaterialization } from "./render.js";
|
|
23
|
+
import { renderProposalMenu, keyToResolution, isServerResolved, renderQuestionMenu, questionChoices, answerForQuestion, editInEditor } 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
27
|
import { Validator, } from "@plurnk/plurnk-contracts";
|
|
28
28
|
import { handleMcp } from "./mcp.js";
|
|
29
29
|
import { handleSkills } from "./skills.js";
|
|
30
|
+
import { handleAgents } from "./agents.js";
|
|
30
31
|
import { formatWorkerReasoning, readWorkerReasoning, setWorkerReasoning, } from "./reasoning.js";
|
|
31
32
|
export const renderTuiFailure = (cause) => {
|
|
32
33
|
if (cause instanceof ProblemError) {
|
|
@@ -44,7 +45,7 @@ export const renderTuiFailure = (cause) => {
|
|
|
44
45
|
export const VERBS = [
|
|
45
46
|
"help", "models", "workspaces", "workers", "log", "model", "child", "reasoning",
|
|
46
47
|
"yolo", "workspace", "rename", "worker", "stop", "quit",
|
|
47
|
-
"pick", "hide", "view", "drop", "members", "import", "script", "mcp",
|
|
48
|
+
"pick", "hide", "view", "drop", "members", "import", "script", "mcp", "editor",
|
|
48
49
|
"accept", "reject", "cancel", "edit",
|
|
49
50
|
];
|
|
50
51
|
export const TUI_HELP = [
|
|
@@ -65,8 +66,10 @@ export const TUI_HELP = [
|
|
|
65
66
|
" /mcp list available workspace MCP servers",
|
|
66
67
|
" add <alias> <target> [options.json] · enable/disable/remove <alias>",
|
|
67
68
|
" oauth <alias> <callback-url>",
|
|
68
|
-
" /
|
|
69
|
-
" add
|
|
69
|
+
" /agents list this Worker's outbound A2A agents",
|
|
70
|
+
" discover <url> · add <alias> <url> [options.json] · enable/disable/remove <alias>",
|
|
71
|
+
" /skills list this Worker's Agent Skills",
|
|
72
|
+
" discover <query|source> · add <name> <source> [--global] · enable/disable/remove <name>",
|
|
70
73
|
" /accept /reject /cancel /edit resolve a pending proposal (or keys a/e/r/c)",
|
|
71
74
|
" /stop cancel the running loop",
|
|
72
75
|
" /quit exit",
|
|
@@ -74,6 +77,8 @@ export const TUI_HELP = [
|
|
|
74
77
|
" ## LOOK0 (uri) off-run READ — inspect a uri for you, not the model",
|
|
75
78
|
" Alt-p / Alt-n cycle ## LOOK0 through prior operations' targets",
|
|
76
79
|
" Ctrl-J / Alt-Enter insert a ↵ newline (editable); Enter submits",
|
|
80
|
+
" Esc cancel the running loop; idle: clear the line",
|
|
81
|
+
" /editor · Alt-e compose the prompt line in $EDITOR",
|
|
77
82
|
" Alt-m/s · Alt-R/L/Y/N/M · Alt-x quick verbs (nvim case): models workspaces runs",
|
|
78
83
|
" log yolo workspace members stop · Alt-h help",
|
|
79
84
|
].join("\n") + "\n";
|
|
@@ -100,7 +105,7 @@ export const expandNewlines = (line) => line.replaceAll(NL_MARK, "\n");
|
|
|
100
105
|
// owns a/e/n/p/u/w/k/l. Alt-b/f/d are skipped (readline word-ops).
|
|
101
106
|
export const ALT_SHORTCUTS = Object.freeze({
|
|
102
107
|
m: "/models", s: "/workspaces", R: "/workers", L: "/log",
|
|
103
|
-
Y: "/yolo", N: "/workspace", M: "/members", x: "/stop", h: "/help",
|
|
108
|
+
Y: "/yolo", N: "/workspace", M: "/members", x: "/stop", h: "/help", e: "/editor",
|
|
104
109
|
});
|
|
105
110
|
// An Alt-<letter> keypress (ESC then a single letter, no `[`/`O` → not an arrow
|
|
106
111
|
// or function key) mapped to its verb, or null. Case-sensitive (mirrors nvim).
|
|
@@ -147,8 +152,11 @@ export const parseSlash = (line) => {
|
|
|
147
152
|
// Plain readline machinery only; no screen takeover, no terminal hell.
|
|
148
153
|
// readline's async completer form (arity 2 → async). Verb/alias completion
|
|
149
154
|
// answers synchronously; path positions read the local fs (co-location law)
|
|
150
|
-
// and answer once readdir resolves.
|
|
151
|
-
|
|
155
|
+
// and answer once readdir resolves. A fragment holding a provider prefix
|
|
156
|
+
// (`/model openai/…`) completes lazily from one bounded, provider-scoped
|
|
157
|
+
// daemon catalog page ([§cli-plurnk-models]); the client never preloads or
|
|
158
|
+
// owns the Models.dev snapshot.
|
|
159
|
+
export const makeCompleter = (getAliases, cwd, getReasoningPolicies = () => [], getProviderModels = async () => []) => (line, callback) => {
|
|
152
160
|
const verbFrag = line.match(/^\/(\w*)$/);
|
|
153
161
|
if (verbFrag) {
|
|
154
162
|
callback(null, [VERBS.map((v) => `/${v}`).filter((v) => v.startsWith(line)), line]);
|
|
@@ -156,10 +164,16 @@ export const makeCompleter = (getAliases, cwd, getReasoningPolicies = () => [])
|
|
|
156
164
|
}
|
|
157
165
|
const aliasFrag = line.match(/^\/(model|child)\s+(\S*)$/);
|
|
158
166
|
if (aliasFrag) {
|
|
167
|
+
const fragment = aliasFrag[2];
|
|
168
|
+
const provider = /^([A-Za-z0-9_-]+)\//.exec(fragment)?.[1];
|
|
169
|
+
if (provider !== undefined) {
|
|
170
|
+
getProviderModels(provider).then((selectors) => callback(null, [selectors.filter((selector) => selector.startsWith(fragment)), fragment]), () => callback(null, [[], fragment]));
|
|
171
|
+
return;
|
|
172
|
+
}
|
|
159
173
|
const candidates = aliasFrag[1] === "child"
|
|
160
174
|
? ["inherit", ...getAliases().filter((alias) => alias !== "inherit")]
|
|
161
175
|
: getAliases();
|
|
162
|
-
callback(null, [candidates.filter((a) => a.startsWith(
|
|
176
|
+
callback(null, [candidates.filter((a) => a.startsWith(fragment)), fragment]);
|
|
163
177
|
return;
|
|
164
178
|
}
|
|
165
179
|
const reasoningFrag = line.match(/^\/reasoning\s+(\S*)$/);
|
|
@@ -178,10 +192,18 @@ export const makeCompleter = (getAliases, cwd, getReasoningPolicies = () => [])
|
|
|
178
192
|
callback(null, [commands, fragment]);
|
|
179
193
|
return;
|
|
180
194
|
}
|
|
195
|
+
const agentsFrag = line.match(/^\/agents\s+(\S*)$/);
|
|
196
|
+
if (agentsFrag) {
|
|
197
|
+
const fragment = agentsFrag[1];
|
|
198
|
+
const commands = ["add", "discover", "enable", "disable", "remove"]
|
|
199
|
+
.filter((command) => command.startsWith(fragment));
|
|
200
|
+
callback(null, [commands, fragment]);
|
|
201
|
+
return;
|
|
202
|
+
}
|
|
181
203
|
const skillsFrag = line.match(/^\/skills\s+(\S*)$/);
|
|
182
204
|
if (skillsFrag) {
|
|
183
205
|
const fragment = skillsFrag[1];
|
|
184
|
-
const commands = ["add", "
|
|
206
|
+
const commands = ["add", "discover", "enable", "disable", "remove"]
|
|
185
207
|
.filter((command) => command.startsWith(fragment));
|
|
186
208
|
callback(null, [commands, fragment]);
|
|
187
209
|
return;
|
|
@@ -348,10 +370,10 @@ export const handleVerb = async (line, ctx) => {
|
|
|
348
370
|
return;
|
|
349
371
|
}
|
|
350
372
|
case "worker": {
|
|
351
|
-
// New worker —
|
|
373
|
+
// New worker — run.fork branches this conversation, optionally
|
|
352
374
|
// named at instantiation (immutable after). Bind to the fork so the
|
|
353
375
|
// next prompt speaks there. The workspace (the world) is unchanged.
|
|
354
|
-
const forked = await rpc.call("
|
|
376
|
+
const forked = await rpc.call("run.fork", rest.length > 0 ? { name: rest } : {});
|
|
355
377
|
await rpc.call("workspace.attach", { id: ctx.getWorkspace().id, workerId: forked.workerId });
|
|
356
378
|
await refreshWorkerPolicy();
|
|
357
379
|
write(` worker: ${forked.workerName} (new)\n`);
|
|
@@ -381,8 +403,8 @@ export const handleVerb = async (line, ctx) => {
|
|
|
381
403
|
write(` no constraint matching ${JSON.stringify(rest)}\n`);
|
|
382
404
|
return;
|
|
383
405
|
}
|
|
384
|
-
for (const
|
|
385
|
-
await rpc.call("workspace.unconstrain",
|
|
406
|
+
for (const { effect, glob } of matches)
|
|
407
|
+
await rpc.call("workspace.unconstrain", { effect, glob });
|
|
386
408
|
write(` dropped ${matches.length} constraint${matches.length === 1 ? "" : "s"} (${rest})\n`);
|
|
387
409
|
return;
|
|
388
410
|
}
|
|
@@ -447,7 +469,11 @@ export const handleVerb = async (line, ctx) => {
|
|
|
447
469
|
return;
|
|
448
470
|
}
|
|
449
471
|
case "skills": {
|
|
450
|
-
await handleSkills(rest,
|
|
472
|
+
await handleSkills(rest, rpc, write);
|
|
473
|
+
return;
|
|
474
|
+
}
|
|
475
|
+
case "agents": {
|
|
476
|
+
await handleAgents(rest, rpc, write);
|
|
451
477
|
return;
|
|
452
478
|
}
|
|
453
479
|
case "accept":
|
|
@@ -460,6 +486,9 @@ export const handleVerb = async (line, ctx) => {
|
|
|
460
486
|
case "stop":
|
|
461
487
|
await rpc.call("loop.cancel", { reason: "user_stop" });
|
|
462
488
|
return;
|
|
489
|
+
case "editor":
|
|
490
|
+
await ctx.composeInEditor();
|
|
491
|
+
return;
|
|
463
492
|
case "quit":
|
|
464
493
|
return "quit";
|
|
465
494
|
default:
|
|
@@ -469,12 +498,23 @@ export const handleVerb = async (line, ctx) => {
|
|
|
469
498
|
};
|
|
470
499
|
export const runTui = async (transport, workspace, opts) => {
|
|
471
500
|
let current = workspace;
|
|
472
|
-
// Highest loop_seq the waterfall has shown — the next prompt is one beyond.
|
|
473
|
-
let lastLoopSeq = 0;
|
|
474
501
|
// Loop state, hoisted so buildPrompt can show a steer prompt while a loop
|
|
475
502
|
// runs and the line handler / SIGINT can share it.
|
|
476
503
|
let inFlight = false;
|
|
477
504
|
let cancelRequested = false;
|
|
505
|
+
// One cancel path for every interrupt gesture (Ctrl-C, Esc, /stop): the
|
|
506
|
+
// run's active drain cancels via loop.cancel; the pending loop resolves
|
|
507
|
+
// 499 and the REPL continues. A failed cancel SURFACES — a stop button
|
|
508
|
+
// that silently does nothing is the worst kind of broken.
|
|
509
|
+
const requestCancel = (reason) => {
|
|
510
|
+
if (cancelRequested)
|
|
511
|
+
return;
|
|
512
|
+
cancelRequested = true;
|
|
513
|
+
process.stdout.write("\r\x1b[2K \x1b[2mcancelling… (ctrl-c again to quit)\x1b[0m\n");
|
|
514
|
+
void transport.rpc("loop.cancel", { reason }).catch((err) => {
|
|
515
|
+
process.stdout.write(`\r\x1b[2K \x1b[31mcancel failed: ${err instanceof Error ? err.message : String(err)}\x1b[0m\n`);
|
|
516
|
+
});
|
|
517
|
+
};
|
|
478
518
|
// Prompt status gutter (#114, refined): two reserved slots — 🧮 while
|
|
479
519
|
// embeddings warm, and a busy glyph (⏳ working / 💤 hibernating) whenever a
|
|
480
520
|
// loop OR embedding is active. Glyphs when active, blanks when not, so the
|
|
@@ -490,6 +530,7 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
490
530
|
// Alt-n cycler — not synthesized log-entry coordinates. lookCursor walks them.
|
|
491
531
|
const priorTargets = [];
|
|
492
532
|
let lookCursor = null;
|
|
533
|
+
let liveReasoning = null;
|
|
493
534
|
// Print a line ABOVE the live readline prompt without eating the user's
|
|
494
535
|
// in-progress input. The canonical "log while prompting" idiom: wipe the
|
|
495
536
|
// prompt row, write the line, then re-render the prompt + current buffer on
|
|
@@ -512,6 +553,7 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
512
553
|
// will actually use when --model is unset (providers.list
|
|
513
554
|
// marks the boot-time default `active`).
|
|
514
555
|
let aliasCache = [];
|
|
556
|
+
const providerModelCache = new Map();
|
|
515
557
|
let activeAlias;
|
|
516
558
|
// Alias list for completion + the header's active default. Both terminal gauges
|
|
517
559
|
// ride the loop usage envelope; this client never reconstructs curation policy or
|
|
@@ -582,10 +624,6 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
582
624
|
// 💬 (U+1F4AC, stable-wide) fills the op slot the toxic ✉️ vacated.
|
|
583
625
|
// Policy: VS16/ambiguous glyphs are banned from the ENTIRE palette
|
|
584
626
|
// (render.ts) — stable widths are also what make columns align.
|
|
585
|
-
// The prompt is the user's row, coordinate-prefixed like every other
|
|
586
|
-
// waterfall line (§5.1). The coordinate is the next actionless prompt row.
|
|
587
|
-
// lastLoopSeq tracks the highest loop the waterfall has shown; the next
|
|
588
|
-
// prompt is one beyond it. Plain-ASCII coordinate — width-safe.
|
|
589
627
|
// The prompt is the SAME whether or not a loop is running — kept alive above
|
|
590
628
|
// the streaming traces by printAbove. The user just types; a line submitted
|
|
591
629
|
// while a loop is in flight is folded into it (loop.inject), else it starts
|
|
@@ -620,10 +658,10 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
620
658
|
const activePercent = embedding ? embeddingPercent
|
|
621
659
|
: searchFetching ? searchPercent
|
|
622
660
|
: branchPercent;
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
return `${yolo}${position}${origin} ${status} \x1b[
|
|
661
|
+
// No coordinate, no decorative code (plurnk#21): the prompt is
|
|
662
|
+
// `[gauge] 🐹 <status> : ` — the busy gauge appears only while active.
|
|
663
|
+
const position = activePercent !== null ? progressLabel(activePercent) : "";
|
|
664
|
+
return `${yolo}${position}${origin} ${status} \x1b[1m: \x1b[0m`;
|
|
627
665
|
};
|
|
628
666
|
// Bracketed-paste buffering (paste.ts): a multi-line paste must become ONE
|
|
629
667
|
// prompt, not one loop.run per line. readline reads a PassThrough we feed
|
|
@@ -639,7 +677,19 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
639
677
|
output: process.stdout,
|
|
640
678
|
terminal: true,
|
|
641
679
|
prompt: buildPrompt(),
|
|
642
|
-
completer: makeCompleter(() => aliasCache, process.cwd(), () => workerReasoning.supportedPolicies)
|
|
680
|
+
completer: makeCompleter(() => aliasCache, process.cwd(), () => workerReasoning.supportedPolicies, async (provider) => {
|
|
681
|
+
// One bounded page per provider, cached for the session: lazy,
|
|
682
|
+
// provider-scoped, never the whole catalog.
|
|
683
|
+
const cached = providerModelCache.get(provider);
|
|
684
|
+
if (cached !== undefined)
|
|
685
|
+
return cached;
|
|
686
|
+
const page = await transport.rpc("models.list", { provider, limit: 100 });
|
|
687
|
+
const selectors = (page.items ?? [])
|
|
688
|
+
.map(({ selector }) => selector)
|
|
689
|
+
.filter((selector) => typeof selector === "string");
|
|
690
|
+
providerModelCache.set(provider, selectors);
|
|
691
|
+
return selectors;
|
|
692
|
+
}),
|
|
643
693
|
});
|
|
644
694
|
const reprompt = () => {
|
|
645
695
|
readline.cursorTo(process.stdout, 0);
|
|
@@ -656,11 +706,50 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
656
706
|
rl.setPrompt(buildPrompt());
|
|
657
707
|
rl.prompt(true);
|
|
658
708
|
};
|
|
659
|
-
|
|
660
|
-
printAbove = (text) => {
|
|
709
|
+
const clearPromptAndLiveReasoning = () => {
|
|
661
710
|
readline.cursorTo(process.stdout, 0);
|
|
662
711
|
readline.clearLine(process.stdout, 0);
|
|
712
|
+
if (liveReasoning?.shown === true) {
|
|
713
|
+
readline.moveCursor(process.stdout, 0, -1);
|
|
714
|
+
readline.cursorTo(process.stdout, 0);
|
|
715
|
+
readline.clearLine(process.stdout, 0);
|
|
716
|
+
}
|
|
717
|
+
};
|
|
718
|
+
const redrawLiveReasoning = () => {
|
|
719
|
+
if (liveReasoning?.shown === true) {
|
|
720
|
+
process.stdout.write(`${renderReasoningPreview(liveReasoning.content, process.stdout.columns ?? 80)}\n`);
|
|
721
|
+
}
|
|
722
|
+
rl.prompt(true);
|
|
723
|
+
};
|
|
724
|
+
// Now that rl exists, printAbove can re-render the prompt after each line.
|
|
725
|
+
// A live reasoning preview remains the final row above it, so concurrent
|
|
726
|
+
// stream or worker activity cannot corrupt the preview's cursor ownership.
|
|
727
|
+
printAbove = (text) => {
|
|
728
|
+
clearPromptAndLiveReasoning();
|
|
663
729
|
process.stdout.write(`${text}\n`);
|
|
730
|
+
redrawLiveReasoning();
|
|
731
|
+
};
|
|
732
|
+
const presentReasoning = (update) => {
|
|
733
|
+
if (update.phase === "start") {
|
|
734
|
+
if (liveReasoning !== null)
|
|
735
|
+
throw new TypeError("A second reasoning message started before the first ended.");
|
|
736
|
+
liveReasoning = { messageId: update.messageId, content: "", shown: false };
|
|
737
|
+
return;
|
|
738
|
+
}
|
|
739
|
+
if (liveReasoning === null || liveReasoning.messageId !== update.messageId) {
|
|
740
|
+
throw new TypeError(`Reasoning ${update.phase} did not match the active message.`);
|
|
741
|
+
}
|
|
742
|
+
clearPromptAndLiveReasoning();
|
|
743
|
+
if (update.phase === "content") {
|
|
744
|
+
liveReasoning.content = update.content;
|
|
745
|
+
liveReasoning.shown = update.content.length > 0;
|
|
746
|
+
redrawLiveReasoning();
|
|
747
|
+
return;
|
|
748
|
+
}
|
|
749
|
+
const content = update.content;
|
|
750
|
+
liveReasoning = null;
|
|
751
|
+
if (content.length > 0)
|
|
752
|
+
process.stdout.write(`${renderReasoning(content)}\n`);
|
|
664
753
|
rl.prompt(true);
|
|
665
754
|
};
|
|
666
755
|
// Replace the whole readline buffer with `text`, public-API only: Ctrl-U kills
|
|
@@ -711,7 +800,25 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
711
800
|
let pendingQuestion = null;
|
|
712
801
|
let dispatchShortcut = () => { };
|
|
713
802
|
const onStdin = (chunk) => {
|
|
714
|
-
const
|
|
803
|
+
const text = chunk.toString("utf8");
|
|
804
|
+
// Esc interrupts (plurnk#25) — the agent-CLI convention: bare Esc with
|
|
805
|
+
// a loop in flight cancels it (same path as the first Ctrl-C); idle it
|
|
806
|
+
// clears the composed line. Read BEFORE the paste filter, which would
|
|
807
|
+
// otherwise hold a lone ESC as a possible split \x1b[200~ prefix. An
|
|
808
|
+
// exact lone-ESC chunk while no paste is open is the KEY — the same
|
|
809
|
+
// whole-chunk rule the Alt-shortcuts rely on.
|
|
810
|
+
if (text === "\x1b" && paste.idle()) {
|
|
811
|
+
if (inFlight) {
|
|
812
|
+
requestCancel("user_escape");
|
|
813
|
+
return;
|
|
814
|
+
}
|
|
815
|
+
if (rl.line.length > 0) {
|
|
816
|
+
rl.write(null, { ctrl: true, name: "e" });
|
|
817
|
+
rl.write(null, { ctrl: true, name: "u" });
|
|
818
|
+
}
|
|
819
|
+
return;
|
|
820
|
+
}
|
|
821
|
+
const forward = paste.feed(text);
|
|
715
822
|
if (forward.length === 0)
|
|
716
823
|
return;
|
|
717
824
|
// A pending proposal + an EMPTY prompt line: a single review key
|
|
@@ -860,10 +967,8 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
860
967
|
repromptPreserving();
|
|
861
968
|
};
|
|
862
969
|
transport.subscribe({
|
|
863
|
-
onReasoning:
|
|
970
|
+
onReasoning: presentReasoning,
|
|
864
971
|
onEntry: (entry) => {
|
|
865
|
-
if (entry.loop_seq > lastLoopSeq)
|
|
866
|
-
lastLoopSeq = entry.loop_seq;
|
|
867
972
|
// The typed line at the prompt is the user's record — rendering the
|
|
868
973
|
// prompt broadcast too would duplicate it (see isPromptEntry).
|
|
869
974
|
if (isPromptEntry(entry))
|
|
@@ -998,6 +1103,32 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
998
1103
|
}
|
|
999
1104
|
await resolvePending({ decision: action });
|
|
1000
1105
|
},
|
|
1106
|
+
// /editor · Alt-e (plurnk#26): seed $EDITOR with the composed line
|
|
1107
|
+
// (markers expanded), place the result BACK on the line — never
|
|
1108
|
+
// auto-submit (bash Ctrl-X Ctrl-E executes on exit; a prompt line
|
|
1109
|
+
// spends model tokens, so Enter stays the only submit). Same bounded
|
|
1110
|
+
// terminal handoff as proposal edit. Empty buffer ⇒ line unchanged.
|
|
1111
|
+
composeInEditor: async () => {
|
|
1112
|
+
process.stdin.off("data", onStdin);
|
|
1113
|
+
process.stdin.setRawMode?.(false);
|
|
1114
|
+
let edited = null;
|
|
1115
|
+
try {
|
|
1116
|
+
edited = await editInEditor(paste.expand(expandNewlines(rl.line)), ".md");
|
|
1117
|
+
}
|
|
1118
|
+
catch (cause) {
|
|
1119
|
+
process.stdout.write(`${renderTuiFailure(cause)}\n`);
|
|
1120
|
+
}
|
|
1121
|
+
finally {
|
|
1122
|
+
process.stdin.setRawMode?.(true);
|
|
1123
|
+
process.stdin.resume();
|
|
1124
|
+
process.stdin.on("data", onStdin);
|
|
1125
|
+
}
|
|
1126
|
+
if (edited === null)
|
|
1127
|
+
return;
|
|
1128
|
+
rl.write(null, { ctrl: true, name: "e" });
|
|
1129
|
+
rl.write(null, { ctrl: true, name: "u" });
|
|
1130
|
+
rl.write(paste.stash(edited.replace(/\n$/, "")));
|
|
1131
|
+
},
|
|
1001
1132
|
};
|
|
1002
1133
|
// Alt-<letter> shortcut → run the verb. Wipe the prompt line, dispatch
|
|
1003
1134
|
// through the same handleVerb the typed `/verb` uses (the partial prompt in
|
|
@@ -1173,11 +1304,7 @@ export const runTui = async (transport, workspace, opts) => {
|
|
|
1173
1304
|
// unblock (op.parse). A failed cancel SURFACES — a stop button that
|
|
1174
1305
|
// silently does nothing is the worst kind of broken.
|
|
1175
1306
|
if (inFlight && !cancelRequested) {
|
|
1176
|
-
|
|
1177
|
-
process.stdout.write("\r\x1b[2K \x1b[2mcancelling… (ctrl-c again to quit)\x1b[0m\n");
|
|
1178
|
-
void transport.rpc("loop.cancel", { reason: "user_sigint" }).catch((err) => {
|
|
1179
|
-
process.stdout.write(`\r\x1b[2K \x1b[31mcancel failed: ${err instanceof Error ? err.message : String(err)}\x1b[0m\n`);
|
|
1180
|
-
});
|
|
1307
|
+
requestCancel("user_sigint");
|
|
1181
1308
|
return;
|
|
1182
1309
|
}
|
|
1183
1310
|
rl.close();
|
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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"}
|