@plurnk/plurnk 0.83.4 → 0.84.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 +2 -2
- package/README.md +129 -126
- package/conformance/agui-client.json +28 -41
- package/dist/QuestionForm.d.ts +17 -0
- package/dist/QuestionForm.d.ts.map +1 -0
- package/dist/QuestionForm.js +74 -0
- package/dist/QuestionForm.js.map +1 -0
- package/dist/agents.js +8 -8
- package/dist/agents.js.map +1 -1
- package/dist/agui_cli.d.ts +3 -7
- package/dist/agui_cli.d.ts.map +1 -1
- package/dist/agui_cli.js +27 -30
- package/dist/agui_cli.js.map +1 -1
- package/dist/build-info.json +1 -1
- package/dist/cli.d.ts +0 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +11 -20
- package/dist/cli.js.map +1 -1
- package/dist/commands.d.ts +20 -0
- package/dist/commands.d.ts.map +1 -1
- package/dist/commands.js +7 -2
- package/dist/commands.js.map +1 -1
- package/dist/completion.d.ts +2 -2
- package/dist/completion.d.ts.map +1 -1
- package/dist/completion.js +12 -27
- 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 +3 -3
- package/dist/diagnostics.js.map +1 -1
- package/dist/dispatcher.d.ts +1 -1
- package/dist/dispatcher.d.ts.map +1 -1
- package/dist/dispatcher.js +8 -13
- package/dist/dispatcher.js.map +1 -1
- package/dist/mcp.js +14 -14
- package/dist/mcp.js.map +1 -1
- package/dist/members.js +7 -7
- package/dist/members.js.map +1 -1
- package/dist/plan.d.ts +0 -1
- package/dist/plan.d.ts.map +1 -1
- package/dist/plan.js +12 -7
- package/dist/plan.js.map +1 -1
- package/dist/policy.d.ts +1 -3
- package/dist/policy.d.ts.map +1 -1
- package/dist/policy.js +5 -15
- package/dist/policy.js.map +1 -1
- package/dist/proposal.d.ts +0 -1
- package/dist/proposal.d.ts.map +1 -1
- package/dist/proposal.js +2 -31
- package/dist/proposal.js.map +1 -1
- package/dist/reasoning.d.ts +1 -0
- package/dist/reasoning.d.ts.map +1 -1
- package/dist/reasoning.js +4 -1
- package/dist/reasoning.js.map +1 -1
- package/dist/render.d.ts +4 -2
- package/dist/render.d.ts.map +1 -1
- package/dist/render.js +39 -48
- package/dist/render.js.map +1 -1
- package/dist/skills.js +9 -9
- package/dist/skills.js.map +1 -1
- package/dist/status.d.ts +9 -6
- package/dist/status.d.ts.map +1 -1
- package/dist/status.js +37 -41
- package/dist/status.js.map +1 -1
- package/dist/stream.d.ts +0 -1
- package/dist/stream.d.ts.map +1 -1
- package/dist/stream.js +2 -2
- package/dist/stream.js.map +1 -1
- package/dist/subcommands.d.ts.map +1 -1
- package/dist/subcommands.js +4 -3
- package/dist/subcommands.js.map +1 -1
- package/dist/tail-text.d.ts +9 -0
- package/dist/tail-text.d.ts.map +1 -0
- package/dist/tail-text.js +23 -0
- package/dist/tail-text.js.map +1 -0
- package/dist/transport.d.ts +0 -2
- package/dist/transport.d.ts.map +1 -1
- package/dist/transport.js +12 -7
- package/dist/transport.js.map +1 -1
- package/dist/tui-surface.d.ts +1 -0
- package/dist/tui-surface.d.ts.map +1 -1
- package/dist/tui-surface.js +10 -1
- package/dist/tui-surface.js.map +1 -1
- package/dist/tui.d.ts +1 -2
- package/dist/tui.d.ts.map +1 -1
- package/dist/tui.js +90 -98
- package/dist/tui.js.map +1 -1
- package/dist/workers.d.ts +10 -0
- package/dist/workers.d.ts.map +1 -1
- package/dist/workers.js +63 -5
- package/dist/workers.js.map +1 -1
- package/man/plurnk.1 +6 -2
- package/package.json +3 -3
package/dist/render.js
CHANGED
|
@@ -4,9 +4,10 @@ import { colorEnabled } from "./color.js";
|
|
|
4
4
|
import { stripVTControlCharacters } from "node:util";
|
|
5
5
|
import { displayWidth, looksLikeMarkdown, renderMarkdownDocument } from "./markdown.js";
|
|
6
6
|
import ModelText from "./model-text.js";
|
|
7
|
+
import { TurnDisposition } from "@plurnk/plurnk-contracts";
|
|
7
8
|
import { presentPlan } from "./plan.js";
|
|
8
|
-
// Operation glyphs
|
|
9
|
-
//
|
|
9
|
+
// Operation glyphs occupy two display columns, including KILL's emoji sequence.
|
|
10
|
+
// TASK lifecycle glyphs are left-anchored append-only output and may use a
|
|
10
11
|
// standard variation sequence: no cursor or shared-column arithmetic follows.
|
|
11
12
|
export const OP_GLYPHS = {
|
|
12
13
|
FIND: "🔍",
|
|
@@ -14,9 +15,11 @@ export const OP_GLYPHS = {
|
|
|
14
15
|
EDIT: "📝",
|
|
15
16
|
COPY: "📋",
|
|
16
17
|
MOVE: "📦",
|
|
17
|
-
|
|
18
|
-
|
|
18
|
+
KILL: "✂️",
|
|
19
|
+
WORK: "🐜",
|
|
20
|
+
FORK: "👥",
|
|
19
21
|
SEND: "💬",
|
|
22
|
+
TASK: "▶️",
|
|
20
23
|
EXEC: "🔧",
|
|
21
24
|
BARE: "🔮",
|
|
22
25
|
};
|
|
@@ -26,13 +29,8 @@ export const ORIGIN_GLYPHS = {
|
|
|
26
29
|
_plurnk: "🧰",
|
|
27
30
|
plugin: "🔌",
|
|
28
31
|
};
|
|
29
|
-
//
|
|
30
|
-
//
|
|
31
|
-
// and error families. Specific codes before ranges. Every glyph is EAW width-2,
|
|
32
|
-
// VS16-free (column-stable). The COLOR (colorForStatus) carries the class; the
|
|
33
|
-
// glyph carries the state. Converged with plurnk.nvim's STATUS_GLYPHS.
|
|
34
|
-
// A SEND's lifecycle is its one human-facing identity. Numeric SEND codes
|
|
35
|
-
// remain wire truth but do not repeat beside these glyphs in the waterfall.
|
|
32
|
+
// Lifecycle status appears once as a glyph; numeric codes remain wire truth.
|
|
33
|
+
// Receipt/error glyphs below align with plurnk.nvim's STATUS_GLYPHS.
|
|
36
34
|
export const sendLifecycleGlyph = (status) => {
|
|
37
35
|
if (status === 102)
|
|
38
36
|
return "▶️";
|
|
@@ -140,7 +138,7 @@ const buildExtra = (entry) => {
|
|
|
140
138
|
return "";
|
|
141
139
|
}
|
|
142
140
|
};
|
|
143
|
-
export const
|
|
141
|
+
export const entryAside = (entry) => {
|
|
144
142
|
const tx = typeof entry.tx === "string"
|
|
145
143
|
? (() => { try {
|
|
146
144
|
return JSON.parse(entry.tx);
|
|
@@ -150,7 +148,7 @@ export const entryAnnotation = (entry) => {
|
|
|
150
148
|
} })()
|
|
151
149
|
: entry.tx;
|
|
152
150
|
const raw = tx !== null && typeof tx === "object"
|
|
153
|
-
? tx.
|
|
151
|
+
? tx.aside
|
|
154
152
|
: null;
|
|
155
153
|
if (typeof raw !== "string")
|
|
156
154
|
return null;
|
|
@@ -185,11 +183,11 @@ export const coordLabel = (loopSeq, turnSeq, sequence) => {
|
|
|
185
183
|
};
|
|
186
184
|
// The active prompt only represents progress below completion in three cells.
|
|
187
185
|
export const progressLabel = (percent) => `${DIM}${`${Math.max(0, Math.min(99, Math.trunc(percent)))}%`.padStart(3, " ")}${RESET}`;
|
|
188
|
-
//
|
|
189
|
-
//
|
|
186
|
+
// TASK lifecycle glyphs carry the human state without repeating protocol codes.
|
|
187
|
+
// Other failures retain their exact code because it remains useful diagnosis.
|
|
190
188
|
// Every status remains exact on the wire and in JSON.
|
|
191
189
|
export const statusCodeVisible = (entry) => entry.status_rx >= 400
|
|
192
|
-
&& (entry.op
|
|
190
|
+
&& !TurnDisposition.isOp(entry.op);
|
|
193
191
|
const BOLD = code("1");
|
|
194
192
|
const ITALIC = code("3");
|
|
195
193
|
void ITALIC;
|
|
@@ -223,16 +221,14 @@ export const extractSendBody = (txUnknown, prettify, viewport = process.stdout.c
|
|
|
223
221
|
return renderMarkdownDocument(prose, viewport);
|
|
224
222
|
return prose;
|
|
225
223
|
};
|
|
226
|
-
// Provider reasoning is neither
|
|
224
|
+
// Provider reasoning is neither a task inventory nor speech. Give it one quiet visual lane
|
|
227
225
|
// without inventing a log coordinate or status it does not own.
|
|
228
226
|
export const renderReasoning = (content) => ModelText.plain(content)
|
|
229
227
|
.split("\n")
|
|
230
228
|
.map((line, index) => `${index === 0 ? "💭 " : " "}${DIM}${line}${RESET}`)
|
|
231
229
|
.join("\n");
|
|
232
|
-
// Bold
|
|
233
|
-
//
|
|
234
|
-
// BOLD so it stands out against the operation-record grid. Intermediate 102
|
|
235
|
-
// "continue" pings and non-model SENDs stay plain. Re-arm BOLD after every inner
|
|
230
|
+
// Bold delivered model response messages; other operation records stay plain.
|
|
231
|
+
// Re-arm BOLD after every inner
|
|
236
232
|
// RESET (markdown spans, status color) so a styled span can't cut the bold
|
|
237
233
|
// mid-line. No background band: background-color-erase (\x1b[K) isn't universal,
|
|
238
234
|
// so a full-width green stripe rendered jagged on terminals without it — bold is
|
|
@@ -247,13 +243,13 @@ const emphasizeLines = (lines, on) => {
|
|
|
247
243
|
// Broadcast SEND (model → user) — multi-line block, content rather than a Notice.
|
|
248
244
|
// Per TUI.md §3.4.1 / SPEC.md §5.4. The lifecycle glyph begins at column zero;
|
|
249
245
|
// continuation body lines nest under its following separator.
|
|
250
|
-
const renderBroadcast = (entry, columns) => {
|
|
246
|
+
const renderBroadcast = (entry, columns, body = extractSendBody(entry.tx, true, Math.max(1, columns - 3))) => {
|
|
251
247
|
const signal = typeof entry.signal === "number" ? entry.signal : entry.status_rx;
|
|
252
|
-
const idGlyph = sendLifecycleGlyph(signal);
|
|
253
|
-
const
|
|
248
|
+
const idGlyph = TurnDisposition.isOp(entry.op) ? sendLifecycleGlyph(signal) : OP_GLYPHS.SEND;
|
|
249
|
+
const aside = entryAside(entry);
|
|
254
250
|
const header = idGlyph
|
|
255
|
-
+ (
|
|
256
|
-
|
|
251
|
+
+ (statusCodeVisible(entry) ? ` ${sendSubGlyph(entry.status_rx)} ${colorForStatus(entry.status_rx)}${entry.status_rx}${RESET}` : "")
|
|
252
|
+
+ (aside === null ? "" : ` ${DIM}— ${aside}${RESET}`);
|
|
257
253
|
const multiLine = body.includes("\n");
|
|
258
254
|
// Short single-line replies inline after the header (nvim's
|
|
259
255
|
// BROADCAST_INLINE_LIMIT convergence); longer/multi-line bodies
|
|
@@ -264,19 +260,17 @@ const renderBroadcast = (entry, columns) => {
|
|
|
264
260
|
const lines = body.length === 0 ? [header]
|
|
265
261
|
: !multiLine && displayWidth(body) <= inlineCapacity ? [`${header} ${body}`]
|
|
266
262
|
: [header, ...body.split("\n").map((l) => ` ${l}`)];
|
|
267
|
-
//
|
|
263
|
+
// Delivered response messages are bold; everything else plain. No
|
|
268
264
|
// surrounding blank lines — the bold body is the standout on its own.
|
|
269
|
-
|
|
270
|
-
return emphasizeLines(lines, isAnswer);
|
|
265
|
+
return emphasizeLines(lines, isResponseMessage(entry));
|
|
271
266
|
};
|
|
272
267
|
const renderPlan = (entry) => {
|
|
273
|
-
// A routine
|
|
268
|
+
// A routine inventory carries no status code; a failed one keeps
|
|
274
269
|
// its error code and glyph on the first row.
|
|
275
270
|
const status = String(entry.status_rx);
|
|
276
271
|
const failed = entry.status_rx >= 400;
|
|
277
272
|
const firstSlot = failed ? `${sendSubGlyph(entry.status_rx)} ${colorForStatus(entry.status_rx)}${status}${RESET} ` : "";
|
|
278
273
|
const laterSlot = failed ? `${" ".repeat(3 + status.length + 1)}` : "";
|
|
279
|
-
const note = entryAnnotation(entry);
|
|
280
274
|
const presented = presentPlan(entry.tx);
|
|
281
275
|
const rows = presented.length === 0
|
|
282
276
|
? [{ glyph: "📭", text: "no entries" }]
|
|
@@ -285,13 +279,16 @@ const renderPlan = (entry) => {
|
|
|
285
279
|
const prefix = index === 0
|
|
286
280
|
? `${glyph} ${firstSlot}`
|
|
287
281
|
: `${glyph} ${laterSlot}`;
|
|
288
|
-
|
|
289
|
-
return `${prefix}${DIM}${ModelText.plain(text)}${RESET}${annotation}`;
|
|
282
|
+
return `${prefix}${DIM}${ModelText.plain(text)}${RESET}`;
|
|
290
283
|
}).join("\n");
|
|
291
284
|
};
|
|
292
285
|
// The TUI moves submitted editor values into its transcript, so the durable
|
|
293
286
|
// prompt row would duplicate them.
|
|
294
287
|
export const isPromptEntry = (entry) => entry.op === "prompt" && entry.scheme === "prompt";
|
|
288
|
+
export const isResponseMessage = (entry) => entry.op === "SEND" && entry.origin === "model"
|
|
289
|
+
&& entry.status_rx >= 200 && entry.status_rx < 300
|
|
290
|
+
&& entry.source == null && entry.inherited_history !== 1
|
|
291
|
+
&& entry.scheme === null && entry.pathname === null;
|
|
295
292
|
// Render a log entry as one waterfall line.
|
|
296
293
|
// Returns the full ANSI-formatted line(s) WITHOUT trailing newline. A
|
|
297
294
|
// broadcast SEND returns one striped line (single-line body) or a striped
|
|
@@ -313,19 +310,13 @@ export const renderLogEntry = (entry, columns = process.stdout.columns ?? 80) =>
|
|
|
313
310
|
// Broadcast SEND has no path at all (both scheme AND pathname null).
|
|
314
311
|
// A SEND directed at file:// would have scheme=null but pathname set —
|
|
315
312
|
// not a broadcast.
|
|
313
|
+
if (TurnDisposition.isOp(entry.op))
|
|
314
|
+
return `${renderBroadcast(entry, columns, "")}\n${renderPlan(entry)}`;
|
|
316
315
|
if (entry.op === "SEND" && entry.scheme === null && entry.pathname === null)
|
|
317
316
|
return renderBroadcast(entry, columns);
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
//
|
|
321
|
-
// cluttered elsewhere). A SEND shows its lifecycle; any other op shows its
|
|
322
|
-
// OP glyph (🧠/🔍/📖/📝/🔧 — self-evidently
|
|
323
|
-
// the agent working). The 💬 and the origin column are both gone.
|
|
324
|
-
const idGlyph = entry.op === "SEND"
|
|
325
|
-
? sendLifecycleGlyph(typeof entry.signal === "number" ? entry.signal : entry.status_rx)
|
|
326
|
-
: (OP_GLYPHS[entry.op] ?? "?");
|
|
327
|
-
// Operation rows retain an outcome slot. SEND rows use only their lifecycle
|
|
328
|
-
// glyph: adding a second state and numeric code repeats one fact.
|
|
317
|
+
// Operation identity is separate from its settled outcome.
|
|
318
|
+
const idGlyph = OP_GLYPHS[entry.op] ?? "?";
|
|
319
|
+
// Routine success is quiet; failures retain their diagnostic outcome.
|
|
329
320
|
const subGlyph = sendSubGlyph(entry.status_rx);
|
|
330
321
|
const statusColor = colorForStatus(entry.status_rx);
|
|
331
322
|
const statusText = statusCodeVisible(entry) ? `${statusColor}${entry.status_rx}${RESET}` : "";
|
|
@@ -338,7 +329,7 @@ export const renderLogEntry = (entry, columns = process.stdout.columns ?? 80) =>
|
|
|
338
329
|
const scope = entryScope(entry);
|
|
339
330
|
const scopeText = scope !== null ? `${CYAN}${scope}${RESET}` : "";
|
|
340
331
|
const extra = buildExtra(entry);
|
|
341
|
-
const parts =
|
|
332
|
+
const parts = [idGlyph, subGlyph];
|
|
342
333
|
if (statusText.length > 0)
|
|
343
334
|
parts.push(statusText);
|
|
344
335
|
if (pathText.length > 0)
|
|
@@ -347,9 +338,9 @@ export const renderLogEntry = (entry, columns = process.stdout.columns ?? 80) =>
|
|
|
347
338
|
parts.push(scopeText);
|
|
348
339
|
if (extra.length > 0)
|
|
349
340
|
parts.push(extra);
|
|
350
|
-
const
|
|
351
|
-
if (
|
|
352
|
-
parts.push(`${DIM}— ${
|
|
341
|
+
const aside = entryAside(entry);
|
|
342
|
+
if (aside !== null)
|
|
343
|
+
parts.push(`${DIM}— ${aside}${RESET}`);
|
|
353
344
|
return parts.join(" ");
|
|
354
345
|
};
|
|
355
346
|
// Compact token count: 49152 → "49k", 980 → "980". The gauge stays terse.
|
package/dist/render.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
|
package/dist/skills.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Thin TUI projection of the daemon-owned Agent Skills Functionality family:
|
|
2
2
|
// the common lifecycle (list | discover | add | enable | disable | remove)
|
|
3
|
-
// over the
|
|
3
|
+
// over the workspace's `skills` actions. The client composes exact definitions
|
|
4
4
|
// and renders the daemon's states; installation, discovery, and enablement
|
|
5
5
|
// policy live in the service.
|
|
6
6
|
import { commandUsage } from "./commands.js";
|
|
@@ -61,7 +61,7 @@ const renderDefinition = (entry) => {
|
|
|
61
61
|
const scope = typeof entry.definition?.scope === "string" ? entry.definition.scope : "unknown";
|
|
62
62
|
const source = typeof entry.definition?.source === "string" ? ` ${entry.definition.source}` : "";
|
|
63
63
|
const description = typeof entry.detail?.description === "string" ? ` ${entry.detail.description}` : "";
|
|
64
|
-
const origin = entry.origin === "
|
|
64
|
+
const origin = entry.origin === "workspace" ? " (workspace)" : "";
|
|
65
65
|
const problem = typeof entry.problem?.detail === "string" ? ` — ${entry.problem.detail}` : "";
|
|
66
66
|
return ` ${alias} ${state} ${scope}${source}${description}${origin}${problem}\n`;
|
|
67
67
|
};
|
|
@@ -83,9 +83,9 @@ const usage = (write, subcommand) => {
|
|
|
83
83
|
};
|
|
84
84
|
export const handleSkills = async (input, rpc, write) => {
|
|
85
85
|
if (input.length === 0) {
|
|
86
|
-
const result = await rpc.call("
|
|
86
|
+
const result = await rpc.call("workspace.skills.list", {});
|
|
87
87
|
if (!Array.isArray(result.definitions))
|
|
88
|
-
throw new Error("
|
|
88
|
+
throw new Error("workspace.skills.list returned an invalid result.");
|
|
89
89
|
if (result.definitions.length === 0)
|
|
90
90
|
write(" Agent Skills: none\n");
|
|
91
91
|
else
|
|
@@ -106,9 +106,9 @@ export const handleSkills = async (input, rpc, write) => {
|
|
|
106
106
|
return null;
|
|
107
107
|
}
|
|
108
108
|
const query = args.length === 2 && isSource(term) ? { source: term } : { query: term };
|
|
109
|
-
const result = await rpc.call("
|
|
109
|
+
const result = await rpc.call("workspace.skills.discover", query);
|
|
110
110
|
if (!Array.isArray(result.candidates))
|
|
111
|
-
throw new Error("
|
|
111
|
+
throw new Error("workspace.skills.discover returned an invalid result.");
|
|
112
112
|
if (result.candidates.length === 0)
|
|
113
113
|
write(" candidates: none\n");
|
|
114
114
|
else
|
|
@@ -125,7 +125,7 @@ export const handleSkills = async (input, rpc, write) => {
|
|
|
125
125
|
}
|
|
126
126
|
const [alias, source] = positional;
|
|
127
127
|
const definition = { name: alias, scope: global ? "global" : "project", source };
|
|
128
|
-
const result = await rpc.call("
|
|
128
|
+
const result = await rpc.call("workspace.skills.add", { alias, definition });
|
|
129
129
|
renderMutation(result, "added", alias, write);
|
|
130
130
|
return result;
|
|
131
131
|
}
|
|
@@ -134,7 +134,7 @@ export const handleSkills = async (input, rpc, write) => {
|
|
|
134
134
|
usage(write, command);
|
|
135
135
|
return null;
|
|
136
136
|
}
|
|
137
|
-
const result = await rpc.call(`
|
|
137
|
+
const result = await rpc.call(`workspace.skills.${command}`, { alias: name });
|
|
138
138
|
renderMutation(result, command === "enable" ? "enabled" : "disabled", name, write);
|
|
139
139
|
return result;
|
|
140
140
|
}
|
|
@@ -143,7 +143,7 @@ export const handleSkills = async (input, rpc, write) => {
|
|
|
143
143
|
usage(write, "remove");
|
|
144
144
|
return null;
|
|
145
145
|
}
|
|
146
|
-
const result = await rpc.call("
|
|
146
|
+
const result = await rpc.call("workspace.skills.remove", { alias: name });
|
|
147
147
|
write(` removed: ${name}\n`);
|
|
148
148
|
return result;
|
|
149
149
|
}
|
package/dist/skills.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skills.js","sourceRoot":"","sources":["../src/skills.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,2EAA2E;AAC3E
|
|
1
|
+
{"version":3,"file":"skills.js","sourceRoot":"","sources":["../src/skills.ts"],"names":[],"mappings":"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"}
|
package/dist/status.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { Notice } from "./diagnostics.ts";
|
|
2
1
|
import { type ModelRoute } from "@plurnk/plurnk-contracts";
|
|
3
2
|
import type { LoopUsage } from "./render.ts";
|
|
4
3
|
export interface SessionTally {
|
|
@@ -17,13 +16,17 @@ export declare const tallyOutcome: (tally: SessionTally, outcome: {
|
|
|
17
16
|
export interface StatusContext {
|
|
18
17
|
workspace: string | null;
|
|
19
18
|
worker: string | null;
|
|
19
|
+
position?: {
|
|
20
|
+
index: number;
|
|
21
|
+
count: number;
|
|
22
|
+
} | null;
|
|
20
23
|
child: string | null;
|
|
21
24
|
tally: SessionTally;
|
|
22
25
|
accrued?: TurnAccounting | null;
|
|
23
26
|
runningSince: number | null;
|
|
24
27
|
now?: number;
|
|
25
28
|
}
|
|
26
|
-
export type StatusLifecycle = "idle" | "running" | "parked" | "completed" | "cancelled" | "failed";
|
|
29
|
+
export type StatusLifecycle = "idle" | "queued" | "running" | "parked" | "completed" | "cancelled" | "failed";
|
|
27
30
|
export interface StatusActivity {
|
|
28
31
|
label: string;
|
|
29
32
|
percent: number | null;
|
|
@@ -44,12 +47,14 @@ export declare const formatRouteIdentity: (route: {
|
|
|
44
47
|
provider: string;
|
|
45
48
|
model: string;
|
|
46
49
|
reasoningPolicy?: string;
|
|
50
|
+
reasoningSource?: "default" | "explicit";
|
|
47
51
|
}) => string;
|
|
48
52
|
export interface ClientStatus {
|
|
49
53
|
lifecycle: StatusLifecycle;
|
|
50
54
|
model: string | null;
|
|
51
55
|
packetCount: number | null;
|
|
52
56
|
activity: StatusActivity | null;
|
|
57
|
+
children: number | null;
|
|
53
58
|
}
|
|
54
59
|
export interface RuntimeStatusGauge {
|
|
55
60
|
lifecycle: string;
|
|
@@ -57,6 +62,7 @@ export interface RuntimeStatusGauge {
|
|
|
57
62
|
loopId: number | null;
|
|
58
63
|
packetCount: number;
|
|
59
64
|
activity: unknown;
|
|
65
|
+
children?: unknown;
|
|
60
66
|
}
|
|
61
67
|
export interface StatusGaugeEnvelope {
|
|
62
68
|
plurnk: {
|
|
@@ -76,7 +82,6 @@ export declare const reduceStatusGauge: (current: StatusGaugeEnvelope | null, ev
|
|
|
76
82
|
handled: true;
|
|
77
83
|
gauge: StatusGaugeEnvelope;
|
|
78
84
|
};
|
|
79
|
-
export declare const derivationActivity: (notice: Notice) => StatusActivity | null | undefined;
|
|
80
85
|
export declare const formatDuration: (ms: number) => string;
|
|
81
86
|
export declare const renderStatusLine: (value: ClientStatus, context: StatusContext, options?: {
|
|
82
87
|
idleGlyph?: string;
|
|
@@ -87,9 +92,7 @@ export default class TerminalStatusLine {
|
|
|
87
92
|
intervalMs?: number;
|
|
88
93
|
now?: () => number;
|
|
89
94
|
});
|
|
90
|
-
update(patch: Partial<ClientStatus
|
|
91
|
-
routine?: boolean;
|
|
92
|
-
}): void;
|
|
95
|
+
update(patch: Partial<ClientStatus>): void;
|
|
93
96
|
accrue(turn: TurnAccounting): void;
|
|
94
97
|
durable(value: string): void;
|
|
95
98
|
product(value: string, write: (value: string) => void, sharedTerminal: boolean): void;
|
package/dist/status.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../src/status.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../src/status.ts"],"names":[],"mappings":"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"}
|
package/dist/status.js
CHANGED
|
@@ -43,12 +43,19 @@ export const accrueTurnAccounting = (accrued, turn) => accrued === null ? turn :
|
|
|
43
43
|
// {plurnk#41} — effort is identity-grade: contracts ≥1.14 routes carry the worker's
|
|
44
44
|
// durable reasoning policy; when absent (older daemon, or a model with no reasoning
|
|
45
45
|
// dimension) the identity renders bare. Structural input so both contract eras format.
|
|
46
|
+
// {§cli-identity-effort} — effort is identity-grade: `alias[low]` is a chosen level, `alias(low)`
|
|
47
|
+
// a provider default the daemon seeded (brackets read as chosen, parentheses as given); bare when
|
|
48
|
+
// the model has no effort dimension. The daemon states the source; the client never infers it.
|
|
46
49
|
export const formatRouteIdentity = (route) => {
|
|
47
50
|
const name = route.alias ?? `${route.provider}/${route.model}`;
|
|
48
|
-
|
|
51
|
+
if (route.reasoningPolicy === undefined)
|
|
52
|
+
return name;
|
|
53
|
+
return route.reasoningSource === "default"
|
|
54
|
+
? `${name}(${route.reasoningPolicy})`
|
|
55
|
+
: `${name}[${route.reasoningPolicy}]`;
|
|
49
56
|
};
|
|
50
57
|
const LIFECYCLES = new Set([
|
|
51
|
-
"idle", "running", "parked", "completed", "cancelled", "failed",
|
|
58
|
+
"idle", "queued", "running", "parked", "completed", "cancelled", "failed",
|
|
52
59
|
]);
|
|
53
60
|
export const projectStatusGauge = (value) => {
|
|
54
61
|
if (!LIFECYCLES.has(value.lifecycle))
|
|
@@ -71,11 +78,19 @@ export const projectStatusGauge = (value) => {
|
|
|
71
78
|
percent: Number.isFinite(percent) ? Math.max(0, Math.min(100, Math.floor(percent))) : null,
|
|
72
79
|
};
|
|
73
80
|
}
|
|
81
|
+
let children = null;
|
|
82
|
+
if (value.children !== undefined) {
|
|
83
|
+
if (!Number.isSafeInteger(value.children) || value.children < 0) {
|
|
84
|
+
throw new TypeError(`Invalid runtime children count '${String(value.children)}'.`);
|
|
85
|
+
}
|
|
86
|
+
children = value.children;
|
|
87
|
+
}
|
|
74
88
|
return {
|
|
75
89
|
lifecycle: value.lifecycle,
|
|
76
90
|
model: model === null ? null : formatRouteIdentity(model),
|
|
77
91
|
packetCount: value.packetCount,
|
|
78
92
|
activity,
|
|
93
|
+
children,
|
|
79
94
|
};
|
|
80
95
|
};
|
|
81
96
|
export const reduceStatusGauge = (current, event) => {
|
|
@@ -116,38 +131,13 @@ export const reduceStatusGauge = (current, event) => {
|
|
|
116
131
|
projectStatusGauge(next.plurnk.status);
|
|
117
132
|
return { handled: true, gauge: next };
|
|
118
133
|
};
|
|
119
|
-
const finitePercent = (value) => {
|
|
120
|
-
const percent = Number(value);
|
|
121
|
-
return Number.isFinite(percent)
|
|
122
|
-
? Math.max(0, Math.min(100, Math.floor(percent)))
|
|
123
|
-
: null;
|
|
124
|
-
};
|
|
125
|
-
// Derivation Notices are an ephemeral activity source, not durable trace rows.
|
|
126
|
-
// `undefined` means "not this Notice family"; `null` is the terminal clear.
|
|
127
|
-
export const derivationActivity = (notice) => {
|
|
128
|
-
if (notice.source !== "engine:derivation" || notice.kind !== "embed_progress")
|
|
129
|
-
return undefined;
|
|
130
|
-
const phase = typeof notice.phase === "string" ? notice.phase : null;
|
|
131
|
-
if (phase === "complete")
|
|
132
|
-
return null;
|
|
133
|
-
if (phase === "failed")
|
|
134
|
-
return { label: "indexing failed", percent: null };
|
|
135
|
-
const completed = Number(notice.completed);
|
|
136
|
-
const total = Number(notice.total);
|
|
137
|
-
if (Number.isFinite(completed) && Number.isFinite(total) && total > 0 && completed >= total)
|
|
138
|
-
return null;
|
|
139
|
-
const explicit = finitePercent(notice.percent);
|
|
140
|
-
const derived = Number.isFinite(completed) && Number.isFinite(total) && total > 0
|
|
141
|
-
? finitePercent((completed / total) * 100)
|
|
142
|
-
: null;
|
|
143
|
-
return { label: "indexing", percent: explicit ?? derived };
|
|
144
|
-
};
|
|
145
134
|
const lifecycleGlyph = (value, idleGlyph) => value === "running" ? "⌛︎"
|
|
146
|
-
: value === "
|
|
147
|
-
: value === "
|
|
148
|
-
: value === "
|
|
149
|
-
: value === "
|
|
150
|
-
:
|
|
135
|
+
: value === "queued" ? "⏳"
|
|
136
|
+
: value === "parked" ? "💤"
|
|
137
|
+
: value === "completed" ? "⏹️"
|
|
138
|
+
: value === "cancelled" ? "✋"
|
|
139
|
+
: value === "failed" ? "❌"
|
|
140
|
+
: idleGlyph;
|
|
151
141
|
export const formatDuration = (ms) => {
|
|
152
142
|
if (ms < 1000)
|
|
153
143
|
return `${ms}ms`;
|
|
@@ -191,12 +181,17 @@ export const renderStatusLine = (value, context, options = {}) => {
|
|
|
191
181
|
parts.push(`$${costUsd}`);
|
|
192
182
|
if (value.model !== null)
|
|
193
183
|
parts.push(`🎲 ${value.model}`);
|
|
194
|
-
|
|
195
|
-
|
|
184
|
+
// {§cli-status-children} — the ant counts alive children when the daemon states it, and names the
|
|
185
|
+
// model those children run when one is selected: `🐜2 dumbox`, `🐜0`, or the bare `🐜 dumbox`.
|
|
186
|
+
const ant = [...(value.children === null ? [] : [String(value.children)]), ...(context.child === null ? [] : [context.child])];
|
|
187
|
+
if (ant.length > 0)
|
|
188
|
+
parts.push(`🐜${value.children === null ? " " : ""}${ant.join(" ")}`);
|
|
196
189
|
if (context.workspace !== null)
|
|
197
190
|
parts.push(context.workspace);
|
|
198
|
-
if (context.worker !== null)
|
|
199
|
-
|
|
191
|
+
if (context.worker !== null) {
|
|
192
|
+
const position = context.position ?? null;
|
|
193
|
+
parts.push(`worker://${context.worker}/${position === null ? "" : ` (${position.index}/${position.count})`}`);
|
|
194
|
+
}
|
|
200
195
|
if (value.activity !== null)
|
|
201
196
|
parts.push(activityText(value.activity));
|
|
202
197
|
return parts.join(" · ");
|
|
@@ -222,8 +217,8 @@ export default class TerminalStatusLine {
|
|
|
222
217
|
this.#intervalMs = options.intervalMs ?? 15_000;
|
|
223
218
|
this.#now = options.now ?? Date.now;
|
|
224
219
|
}
|
|
225
|
-
update(patch
|
|
226
|
-
const
|
|
220
|
+
update(patch) {
|
|
221
|
+
const prior = this.#status;
|
|
227
222
|
this.#status = { ...this.#status, ...patch };
|
|
228
223
|
const rendered = renderStatusLine(this.#status, this.#context);
|
|
229
224
|
if (rendered === this.#current)
|
|
@@ -231,11 +226,12 @@ export default class TerminalStatusLine {
|
|
|
231
226
|
this.#current = rendered;
|
|
232
227
|
if (!this.#enabled)
|
|
233
228
|
return;
|
|
234
|
-
if (
|
|
229
|
+
if (Object.hasOwn(patch, "activity") && prior.lifecycle === this.#status.lifecycle
|
|
230
|
+
&& prior.model === this.#status.model && prior.packetCount === this.#status.packetCount) {
|
|
235
231
|
const now = this.#now();
|
|
236
232
|
const terminal = this.#status.activity === null
|
|
237
233
|
|| this.#status.activity.label === "indexing failed";
|
|
238
|
-
const starting =
|
|
234
|
+
const starting = prior.activity === null && this.#status.activity !== null;
|
|
239
235
|
if (!terminal && !starting && this.#lastRoutinePaint !== null
|
|
240
236
|
&& now - this.#lastRoutinePaint < this.#intervalMs)
|
|
241
237
|
return;
|