@namzu/cli 25.0.1 → 26.0.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.
Files changed (90) hide show
  1. package/CHANGELOG.md +265 -0
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +9 -0
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/acp.d.ts.map +1 -1
  6. package/dist/commands/acp.js +5 -0
  7. package/dist/commands/acp.js.map +1 -1
  8. package/dist/commands/drain.d.ts.map +1 -1
  9. package/dist/commands/drain.js +5 -0
  10. package/dist/commands/drain.js.map +1 -1
  11. package/dist/commands/run-stream.d.ts.map +1 -1
  12. package/dist/commands/run-stream.js +5 -0
  13. package/dist/commands/run-stream.js.map +1 -1
  14. package/dist/commands/run.d.ts.map +1 -1
  15. package/dist/commands/run.js +5 -0
  16. package/dist/commands/run.js.map +1 -1
  17. package/dist/config/load.d.ts.map +1 -1
  18. package/dist/config/load.js +47 -0
  19. package/dist/config/load.js.map +1 -1
  20. package/dist/config/schema.d.ts +24 -0
  21. package/dist/config/schema.d.ts.map +1 -1
  22. package/dist/config/schema.js.map +1 -1
  23. package/dist/config/tool-result-screens.d.ts +103 -0
  24. package/dist/config/tool-result-screens.d.ts.map +1 -0
  25. package/dist/config/tool-result-screens.js +104 -0
  26. package/dist/config/tool-result-screens.js.map +1 -0
  27. package/dist/context/doctrine.d.ts +4 -2
  28. package/dist/context/doctrine.d.ts.map +1 -1
  29. package/dist/context/doctrine.js +4 -2
  30. package/dist/context/doctrine.js.map +1 -1
  31. package/dist/integrations/mcp/servers.d.ts +30 -0
  32. package/dist/integrations/mcp/servers.d.ts.map +1 -1
  33. package/dist/integrations/mcp/servers.js +32 -1
  34. package/dist/integrations/mcp/servers.js.map +1 -1
  35. package/dist/integrations/resident/session-step.d.ts.map +1 -1
  36. package/dist/integrations/resident/session-step.js +5 -0
  37. package/dist/integrations/resident/session-step.js.map +1 -1
  38. package/dist/integrations/subagents/activity.d.ts +285 -11
  39. package/dist/integrations/subagents/activity.d.ts.map +1 -1
  40. package/dist/integrations/subagents/activity.js +334 -31
  41. package/dist/integrations/subagents/activity.js.map +1 -1
  42. package/dist/integrations/subagents/replay.d.ts +46 -0
  43. package/dist/integrations/subagents/replay.d.ts.map +1 -0
  44. package/dist/integrations/subagents/replay.js +193 -0
  45. package/dist/integrations/subagents/replay.js.map +1 -0
  46. package/dist/integrations/subagents/runs.d.ts +72 -0
  47. package/dist/integrations/subagents/runs.d.ts.map +1 -0
  48. package/dist/integrations/subagents/runs.js +155 -0
  49. package/dist/integrations/subagents/runs.js.map +1 -0
  50. package/dist/integrations/subagents/runtime.d.ts +21 -0
  51. package/dist/integrations/subagents/runtime.d.ts.map +1 -1
  52. package/dist/integrations/subagents/runtime.js +134 -2
  53. package/dist/integrations/subagents/runtime.js.map +1 -1
  54. package/dist/tui/AgentExplorer.d.ts +46 -2
  55. package/dist/tui/AgentExplorer.d.ts.map +1 -1
  56. package/dist/tui/AgentExplorer.js +261 -22
  57. package/dist/tui/AgentExplorer.js.map +1 -1
  58. package/dist/tui/App.d.ts.map +1 -1
  59. package/dist/tui/App.js +456 -28
  60. package/dist/tui/App.js.map +1 -1
  61. package/dist/tui/ChoicePicker.d.ts +2 -0
  62. package/dist/tui/ChoicePicker.d.ts.map +1 -1
  63. package/dist/tui/ChoicePicker.js +3 -1
  64. package/dist/tui/ChoicePicker.js.map +1 -1
  65. package/dist/tui/Composer.d.ts +10 -7
  66. package/dist/tui/Composer.d.ts.map +1 -1
  67. package/dist/tui/Composer.js +2 -7
  68. package/dist/tui/Composer.js.map +1 -1
  69. package/dist/tui/StatusBar.d.ts +56 -10
  70. package/dist/tui/StatusBar.d.ts.map +1 -1
  71. package/dist/tui/StatusBar.js +106 -35
  72. package/dist/tui/StatusBar.js.map +1 -1
  73. package/dist/tui/agent.d.ts +46 -1
  74. package/dist/tui/agent.d.ts.map +1 -1
  75. package/dist/tui/agent.js +55 -5
  76. package/dist/tui/agent.js.map +1 -1
  77. package/dist/tui/choice-selection.d.ts +3 -1
  78. package/dist/tui/choice-selection.d.ts.map +1 -1
  79. package/dist/tui/choice-selection.js +2 -2
  80. package/dist/tui/choice-selection.js.map +1 -1
  81. package/dist/tui/permission-review.d.ts.map +1 -1
  82. package/dist/tui/permission-review.js +14 -2
  83. package/dist/tui/permission-review.js.map +1 -1
  84. package/dist/tui/slashCommands.d.ts +40 -0
  85. package/dist/tui/slashCommands.d.ts.map +1 -1
  86. package/dist/tui/slashCommands.js +62 -3
  87. package/dist/tui/slashCommands.js.map +1 -1
  88. package/dist/tui/types.d.ts +12 -0
  89. package/dist/tui/types.d.ts.map +1 -1
  90. package/package.json +3 -3
@@ -7,6 +7,28 @@ export const MAX_AGENT_ACTIVITY_LABEL_CODE_UNITS = 240;
7
7
  export const MAX_AGENT_PHASE_ORDER = 10_000;
8
8
  const MAX_IDENTITY_LABEL_CODE_UNITS = 4_096;
9
9
  const NOTIFY_INTERVAL_MS = 100;
10
+ /**
11
+ * Longest narration line kept. One line of commentary, not a message: a
12
+ * parent that writes a paragraph gets it clipped with the same marker every
13
+ * other retained label here carries.
14
+ */
15
+ export const MAX_NARRATION_CODE_UNITS = 200;
16
+ /**
17
+ * Narration lines retained at once, oldest dropped first.
18
+ *
19
+ * Small deliberately. The lines render in the most valuable rows on the
20
+ * screen — between the composer footer and the agent rail — so a parent that
21
+ * keeps talking must cost the operator a FIXED number of rows rather than a
22
+ * growing one. Raising this trades conversation for commentary.
23
+ */
24
+ export const MAX_RETAINED_NARRATION = 3;
25
+ /**
26
+ * Appended to a replayed transcript whose saved records could not all be
27
+ * read, so a short transcript is never mistaken for a short run. Said in the
28
+ * transcript itself rather than only in a header, because the rows are what
29
+ * an operator reads as the whole of what happened.
30
+ */
31
+ export const PARTIAL_EVIDENCE_NOTICE = 'Saved transcript is damaged or truncated; this replay shows only the records that could be read.';
10
32
  export const DEFAULT_AGENT_WORKFLOW = 'Delegated work';
11
33
  export const DEFAULT_AGENT_PHASE = 'Work';
12
34
  /**
@@ -15,48 +37,69 @@ export const DEFAULT_AGENT_PHASE = 'Work';
15
37
  * deltas can be arbitrarily large and the parent TUI must not inherit them.
16
38
  */
17
39
  export class SubagentActivityMonitor {
40
+ options;
18
41
  records = new Map();
19
42
  listeners = new Set();
43
+ /** Bounded parent commentary, oldest first. See {@link SubagentNarrationLine}. */
44
+ narration = [];
45
+ narrationCounter = 0;
20
46
  epoch = 0;
21
47
  counter = 0;
22
48
  fallbackBatchCounter = 0;
23
49
  phaseCounter = 0;
50
+ messageCounter = 0;
24
51
  phases = new Map();
25
52
  notifyTimer;
26
53
  closed = false;
54
+ /**
55
+ * `replay: true` seeds this monitor from saved evidence instead of a live
56
+ * child stream. Two things change and nothing else: notifications stop
57
+ * coalescing on a timer (there is no stream to coalesce, and a replay
58
+ * monitor is read once by whoever built it), and every row it publishes is
59
+ * marked {@link SubagentActivity.replayed}. The projection, the grouping
60
+ * and every bound are the ones the live path uses.
61
+ */
62
+ constructor(options = {}) {
63
+ this.options = options;
64
+ }
27
65
  begin(input) {
66
+ return this.open(input).tracker;
67
+ }
68
+ /**
69
+ * `begin()`, plus the record it opened.
70
+ *
71
+ * Split out for {@link SubagentActivityMonitor.replay}, which has to reach
72
+ * the record after the events are in to write the facts `run.json` holds
73
+ * and the transcript does not. Nothing else needs it, and nothing outside
74
+ * this class gets it: a caller holding a `MutableActivity` could edit
75
+ * around every bound this file enforces.
76
+ */
77
+ open(input, suppliedViewId) {
28
78
  const epoch = this.epoch;
29
- const viewId = `agent-${++this.counter}`;
79
+ const order = ++this.counter;
80
+ // A replay allocates its own monitor, so its counter starts at one
81
+ // beside a live monitor's. An `agent-1` from each would be two
82
+ // different children answering to one id, and every surface here looks
83
+ // a child up by this string. `replay()` supplies an id derived from the
84
+ // child's run instead: unique against the live path by construction,
85
+ // and identical across re-reads, so re-opening the cockpit does not
86
+ // move the operator's selection off the row they were reading.
87
+ const viewId = suppliedViewId ?? `agent-${order}`;
30
88
  const workflowId = normalizedLabel(input.workflowId, 'session', MAX_IDENTITY_LABEL_CODE_UNITS);
31
89
  const requestedBatchId = input.batchId?.trim();
32
90
  const batchId = requestedBatchId
33
91
  ? bounded(requestedBatchId, MAX_IDENTITY_LABEL_CODE_UNITS)
34
92
  : this.fallbackBatchId(workflowId);
35
- const workflowIdentity = normalizedLabel(input.workflow, DEFAULT_AGENT_WORKFLOW, MAX_IDENTITY_LABEL_CODE_UNITS);
36
- const phaseIdentity = normalizedLabel(input.phase, DEFAULT_AGENT_PHASE, MAX_IDENTITY_LABEL_CODE_UNITS);
37
- // A tool batch is a concurrency boundary, not a workflow phase. Explicit
38
- // workflow annotations may span several batches within their parent run;
39
- // unrelated unlabelled batches have no evidence of a shared workflow.
40
- const workflowGroupId = JSON.stringify(input.workflow?.trim()
41
- ? [workflowId, 'workflow', workflowIdentity]
42
- : [workflowId, 'batch', batchId]);
43
- const phaseKey = JSON.stringify([workflowGroupId, phaseIdentity]);
44
- let phaseDefinition = this.phases.get(phaseKey);
45
- if (!phaseDefinition) {
46
- const sequence = ++this.phaseCounter;
47
- const order = normalizedPhaseOrder(input.phaseOrder);
48
- phaseDefinition = {
49
- id: `phase-${sequence}`,
50
- ...(order !== undefined ? { order } : {}),
51
- sequence,
52
- };
53
- this.phases.set(phaseKey, phaseDefinition);
54
- }
93
+ const labels = displayLabels(input);
94
+ const grouping = this.group(workflowId, batchId, labels);
55
95
  const record = {
56
96
  epoch,
57
- order: this.counter,
97
+ order,
58
98
  viewId,
59
99
  agentId: bounded(input.agentId, MAX_AGENT_ACTIVITY_LABEL_CODE_UNITS),
100
+ ...(input.model?.trim()
101
+ ? { model: bounded(input.model.trim(), MAX_AGENT_ACTIVITY_LABEL_CODE_UNITS) }
102
+ : {}),
60
103
  description: bounded(input.description, MAX_AGENT_ACTIVITY_LABEL_CODE_UNITS),
61
104
  prompt: bounded(input.prompt, MAX_PROMPT_CODE_UNITS),
62
105
  batchId,
@@ -64,12 +107,8 @@ export class SubagentActivityMonitor {
64
107
  ? { toolUseId: bounded(input.toolUseId, MAX_IDENTITY_LABEL_CODE_UNITS) }
65
108
  : {}),
66
109
  workflowId,
67
- workflowGroupId,
68
- phaseId: phaseDefinition.id,
69
- workflow: bounded(workflowIdentity, MAX_AGENT_ACTIVITY_LABEL_CODE_UNITS),
70
- phase: bounded(phaseIdentity, MAX_AGENT_ACTIVITY_LABEL_CODE_UNITS),
71
- ...(phaseDefinition.order !== undefined ? { phaseOrder: phaseDefinition.order } : {}),
72
- phaseSequence: phaseDefinition.sequence,
110
+ ...grouping,
111
+ labels,
73
112
  status: 'starting',
74
113
  startedAt: Date.now(),
75
114
  rows: [],
@@ -83,11 +122,13 @@ export class SubagentActivityMonitor {
83
122
  return undefined;
84
123
  return this.records.get(viewId) === record ? record : undefined;
85
124
  };
86
- return {
125
+ const tracker = {
87
126
  onEvent: (event) => {
88
127
  const owned = current();
89
128
  if (!owned)
90
129
  return;
130
+ if (event.type === 'agent_pending')
131
+ this.relabel(owned, event);
91
132
  projectEvent(owned, event);
92
133
  this.scheduleNotify();
93
134
  },
@@ -137,6 +178,122 @@ export class SubagentActivityMonitor {
137
178
  this.notifyNow();
138
179
  },
139
180
  };
181
+ return { record, tracker };
182
+ }
183
+ /**
184
+ * Rebuilds one finished child from the evidence it left on disk, and
185
+ * retains it here like any other row.
186
+ *
187
+ * The load-bearing line is the `tracker.onEvent` loop: saved events go
188
+ * through the SAME entry point a live child's events do, so the cockpit
189
+ * cannot drift from a replay. There is no second projection to keep in
190
+ * step, and a field added to the live path appears here for free.
191
+ *
192
+ * What the events cannot supply, the caller passes from `run.json`, and it
193
+ * is written AFTER the loop because the file is the authority on the two
194
+ * facts a child's own transcript never records: a child's delegation
195
+ * outcome and its final totals are reported on the PARENT's event stream,
196
+ * which does not enter the child's log. Without this the replay would end
197
+ * on whatever the last durable event said and show a finished child as
198
+ * still working.
199
+ *
200
+ * Only meaningful on a monitor constructed with `replay: true`; on a live
201
+ * one it would publish a saved row as though a child were attached to it.
202
+ */
203
+ replay(input, events) {
204
+ const { record, tracker } = this.open({
205
+ agentId: input.agentId,
206
+ ...(input.model ? { model: input.model } : {}),
207
+ description: input.description,
208
+ prompt: input.prompt ?? '',
209
+ ...(input.batchId ? { batchId: input.batchId } : {}),
210
+ ...(input.workflowId ? { workflowId: input.workflowId } : {}),
211
+ }, input.runId ? bounded(`saved-${input.runId}`, MAX_IDENTITY_LABEL_CODE_UNITS) : undefined);
212
+ for (const event of events)
213
+ tracker.onEvent(event);
214
+ if (!record.runId && input.runId) {
215
+ record.runId = bounded(input.runId, MAX_IDENTITY_LABEL_CODE_UNITS);
216
+ }
217
+ if (input.tokens !== undefined)
218
+ record.tokens = input.tokens;
219
+ if (input.status)
220
+ record.status = input.status;
221
+ if (input.startedAt !== undefined)
222
+ record.startedAt = input.startedAt;
223
+ if (input.completedAt !== undefined)
224
+ record.completedAt = input.completedAt;
225
+ // The same label `settle()` writes for a live child, for the same
226
+ // reason: the last streamed activity line describes a moment that is
227
+ // over, and leaving it up reads as a child still doing that thing.
228
+ if (isTerminal(record.status))
229
+ record.latestActivity = terminalLabel(record.status);
230
+ if (input.partial) {
231
+ pushRow(record, {
232
+ id: `${record.viewId}:partial`,
233
+ kind: 'system',
234
+ text: PARTIAL_EVIDENCE_NOTICE,
235
+ });
236
+ }
237
+ record.closed = true;
238
+ this.prune();
239
+ return this.project(record);
240
+ }
241
+ /**
242
+ * Pushes a bounded system row recording a message delivered into a
243
+ * running child, through the same `pushRow` path every other transcript
244
+ * row uses. Callers own delivery: this only records that it happened, so
245
+ * it must run after the send it announces has actually succeeded — a
246
+ * refused or unowned send must never call this. A `taskId` with no
247
+ * matching record (already pruned, or never tracked) is a silent no-op:
248
+ * there is no row left to explain what was sent.
249
+ */
250
+ recordMessage(taskId, text, direction) {
251
+ if (this.closed)
252
+ return;
253
+ const record = [...this.records.values()].find((entry) => entry.taskId === taskId);
254
+ if (!record)
255
+ return;
256
+ pushRow(record, {
257
+ id: `${record.viewId}:message:${++this.messageCounter}`,
258
+ kind: 'system',
259
+ text: bounded(text, MAX_ROW_CODE_UNITS),
260
+ direction,
261
+ });
262
+ this.notifyNow();
263
+ }
264
+ /**
265
+ * Retains one line of PARENT-authored commentary for the rail to show.
266
+ *
267
+ * Callers are the parent's own tool call and nothing else — see
268
+ * {@link SubagentNarrationLine} for why that boundary is the design rather
269
+ * than a detail. Blank or control-only text is dropped instead of retained,
270
+ * so a row is never spent on a line with nothing in it, and the answer
271
+ * names which of the two things happened — see
272
+ * {@link SubagentNarrationOutcome}.
273
+ *
274
+ * Independent of the child records: narration is commentary, so it neither
275
+ * needs a child to attach to nor disappears when the last one settles —
276
+ * which is exactly when a line explaining what happens next is worth most.
277
+ */
278
+ narrate(text) {
279
+ if (this.closed)
280
+ return { kind: 'closed' };
281
+ const line = normalizedLabel(text, '', MAX_NARRATION_CODE_UNITS);
282
+ if (!line)
283
+ return { kind: 'empty' };
284
+ const entry = Object.freeze({
285
+ id: `narration-${++this.narrationCounter}`,
286
+ text: line,
287
+ at: Date.now(),
288
+ });
289
+ this.narration.push(entry);
290
+ if (this.narration.length > MAX_RETAINED_NARRATION)
291
+ this.narration.splice(0, this.narration.length - MAX_RETAINED_NARRATION);
292
+ this.notifyNow();
293
+ return { kind: 'shown', line: entry };
294
+ }
295
+ getNarration() {
296
+ return [...this.narration];
140
297
  }
141
298
  getSnapshot() {
142
299
  return [...this.records.values()]
@@ -144,11 +301,18 @@ export class SubagentActivityMonitor {
144
301
  const live = Number(isTerminal(left.status)) - Number(isTerminal(right.status));
145
302
  return live !== 0 ? live : left.order - right.order;
146
303
  })
147
- .map((record) => Object.freeze({
304
+ .map((record) => this.project(record));
305
+ }
306
+ /** One record as the frozen, bounded shape every surface reads. */
307
+ project(record) {
308
+ return Object.freeze({
148
309
  viewId: record.viewId,
149
310
  ...(record.taskId ? { taskId: record.taskId } : {}),
150
311
  ...(record.runId ? { runId: record.runId } : {}),
151
312
  agentId: record.agentId,
313
+ ...(record.model ? { model: record.model } : {}),
314
+ ...(record.tokens !== undefined ? { tokens: record.tokens } : {}),
315
+ ...(record.toolCalls !== undefined ? { toolCalls: record.toolCalls } : {}),
152
316
  description: record.description,
153
317
  prompt: record.prompt,
154
318
  batchId: record.batchId,
@@ -159,13 +323,15 @@ export class SubagentActivityMonitor {
159
323
  workflow: record.workflow,
160
324
  phase: record.phase,
161
325
  ...(record.phaseOrder !== undefined ? { phaseOrder: record.phaseOrder } : {}),
326
+ ...(record.phaseDetail !== undefined ? { phaseDetail: record.phaseDetail } : {}),
162
327
  phaseSequence: record.phaseSequence,
163
328
  status: record.status,
329
+ ...(this.options.replay ? { replayed: true } : {}),
164
330
  startedAt: record.startedAt,
165
331
  ...(record.completedAt !== undefined ? { completedAt: record.completedAt } : {}),
166
332
  ...(record.latestActivity ? { latestActivity: record.latestActivity } : {}),
167
333
  transcript: Object.freeze(record.rows.map((row) => Object.freeze({ ...row }))),
168
- }));
334
+ });
169
335
  }
170
336
  subscribe(listener) {
171
337
  this.listeners.add(listener);
@@ -176,6 +342,10 @@ export class SubagentActivityMonitor {
176
342
  this.records.clear();
177
343
  this.phases.clear();
178
344
  this.phaseCounter = 0;
345
+ // Commentary belongs to the conversation it was written in, like every
346
+ // other buffer here. The counter is NOT rewound: ids stay unique across
347
+ // scopes, so a renderer holding a stale key never matches a new line.
348
+ this.narration.length = 0;
179
349
  this.clearNotifyTimer();
180
350
  this.notifyNow();
181
351
  }
@@ -185,10 +355,99 @@ export class SubagentActivityMonitor {
185
355
  this.closed = true;
186
356
  this.records.clear();
187
357
  this.phases.clear();
358
+ this.narration.length = 0;
188
359
  this.clearNotifyTimer();
189
360
  this.notifyNow();
190
361
  this.listeners.clear();
191
362
  }
363
+ /**
364
+ * Resolves display labels to this monitor's grouping identities.
365
+ *
366
+ * Phase identity is allocated here and only here, first-writer-wins per
367
+ * `[workflowGroupId, phase]`: the first agent to name a phase fixes its
368
+ * id, its display order and its detail text, and a later sibling that
369
+ * disagrees joins the phase rather than changing it. That is what keeps a
370
+ * pane from flickering between two wordings of the same stage, and it is
371
+ * also why calling this twice for one agent with the same labels is
372
+ * exactly a no-op — the second call finds the definition the first made.
373
+ *
374
+ * Definitions live for the conversation: `reset()` and `dispose()` clear
375
+ * them and nothing prunes them in between, so the map holds one entry per
376
+ * distinct `[workflowGroupId, phase]` anything has named. A host that
377
+ * labels one child differently at `begin()` and on its event defines two of
378
+ * them; the size follows how many wordings a host invents, not how long the
379
+ * session runs.
380
+ */
381
+ group(workflowId, batchId, labels) {
382
+ const workflowIdentity = normalizedLabel(labels.workflow, DEFAULT_AGENT_WORKFLOW, MAX_IDENTITY_LABEL_CODE_UNITS);
383
+ const phaseIdentity = normalizedLabel(labels.phase, DEFAULT_AGENT_PHASE, MAX_IDENTITY_LABEL_CODE_UNITS);
384
+ // A tool batch is a concurrency boundary, not a workflow phase. Explicit
385
+ // workflow annotations may span several batches within their parent run;
386
+ // unrelated unlabelled batches have no evidence of a shared workflow.
387
+ const workflowGroupId = JSON.stringify(labels.workflow?.trim()
388
+ ? [workflowId, 'workflow', workflowIdentity]
389
+ : [workflowId, 'batch', batchId]);
390
+ const phaseKey = JSON.stringify([workflowGroupId, phaseIdentity]);
391
+ let phaseDefinition = this.phases.get(phaseKey);
392
+ if (!phaseDefinition) {
393
+ const sequence = ++this.phaseCounter;
394
+ const order = normalizedPhaseOrder(labels.phaseOrder);
395
+ // Reuses normalizedLabel's own trim/control-strip/bound pipeline with an
396
+ // empty fallback, so an absent or blank detail collapses to `undefined`
397
+ // rather than a visible placeholder.
398
+ const detail = normalizedLabel(labels.phaseDetail, '', MAX_AGENT_ACTIVITY_LABEL_CODE_UNITS) || undefined;
399
+ phaseDefinition = {
400
+ // Namespaced for the same reason `viewId` is: phases are grouped by
401
+ // this id ALONE, so a replay monitor's `phase-1` and a live one's
402
+ // would fold two unrelated phases into one row on screen.
403
+ id: `${this.options.replay ? 'saved-phase' : 'phase'}-${sequence}`,
404
+ ...(order !== undefined ? { order } : {}),
405
+ ...(detail !== undefined ? { detail } : {}),
406
+ sequence,
407
+ };
408
+ this.phases.set(phaseKey, phaseDefinition);
409
+ }
410
+ return {
411
+ workflowGroupId,
412
+ phaseId: phaseDefinition.id,
413
+ workflow: bounded(workflowIdentity, MAX_AGENT_ACTIVITY_LABEL_CODE_UNITS),
414
+ phase: bounded(phaseIdentity, MAX_AGENT_ACTIVITY_LABEL_CODE_UNITS),
415
+ ...(phaseDefinition.order !== undefined ? { phaseOrder: phaseDefinition.order } : {}),
416
+ ...(phaseDefinition.detail !== undefined ? { phaseDetail: phaseDefinition.detail } : {}),
417
+ phaseSequence: phaseDefinition.sequence,
418
+ };
419
+ }
420
+ /**
421
+ * Re-reads the grouping from the labels the child's own `agent_pending`
422
+ * carried.
423
+ *
424
+ * The event is the copy that leaves this process, so a host that supplies
425
+ * labels there and nowhere else still gets grouped. The `begin()` values
426
+ * stay the seed and are merged under the event's, which is what keeps an
427
+ * agent that fails before `agent_pending`
428
+ * ever arrives grouped where the operator saw it launch, and what stops a
429
+ * partially labelled event from erasing a label it never mentioned.
430
+ *
431
+ * An event naming none of the four changes nothing at all: the common case
432
+ * is the same labels arriving twice, where `group()` returns the definition
433
+ * `begin()` already made and every field is rewritten to the value it
434
+ * already held.
435
+ */
436
+ relabel(record, labels) {
437
+ const supplied = displayLabels(labels);
438
+ if (Object.keys(supplied).length === 0)
439
+ return;
440
+ const merged = { ...record.labels, ...supplied };
441
+ const grouping = this.group(record.workflowId, record.batchId, merged);
442
+ record.workflowGroupId = grouping.workflowGroupId;
443
+ record.phaseId = grouping.phaseId;
444
+ record.workflow = grouping.workflow;
445
+ record.phase = grouping.phase;
446
+ record.phaseOrder = grouping.phaseOrder;
447
+ record.phaseDetail = grouping.phaseDetail;
448
+ record.phaseSequence = grouping.phaseSequence;
449
+ record.labels = merged;
450
+ }
192
451
  fallbackBatchId(workflowId) {
193
452
  for (const record of this.records.values()) {
194
453
  if (record.workflowId === workflowId && !isTerminal(record.status))
@@ -207,6 +466,8 @@ export class SubagentActivityMonitor {
207
466
  }
208
467
  }
209
468
  scheduleNotify() {
469
+ if (this.options.replay)
470
+ return;
210
471
  if (this.closed || this.notifyTimer)
211
472
  return;
212
473
  this.notifyTimer = setTimeout(() => {
@@ -235,6 +496,40 @@ export class SubagentActivityMonitor {
235
496
  }
236
497
  }
237
498
  }
499
+ /**
500
+ * The display labels present on an input, with absent ones left out rather
501
+ * than carried as `undefined` keys — the merge in `relabel` is a spread, and
502
+ * an explicit `undefined` there would erase a seeded label instead of leaving
503
+ * it alone. Present-but-empty is kept: `''` and absent are different answers,
504
+ * and only the caller's own `!== undefined` test can tell them apart. No event
505
+ * this repo emits can carry `''` — the agent manager, the scheduler and the SSE
506
+ * transform each drop an empty label by truthiness, the same way they treat
507
+ * `planId` — so that distinction answers a host that builds the event itself.
508
+ *
509
+ * Bounded because the result is RETAINED as a record's seed, and one source of
510
+ * these is now an event rather than this process's own tool call. The bound is
511
+ * the identity ceiling `group()` already truncates at, not the narrower display
512
+ * cap: `group()` derives phase identity from these through `normalizedLabel`,
513
+ * so clipping shorter here would change which phase a long label lands in on
514
+ * the `begin()` path too, and that grouping must not move. Nothing the `Agent`
515
+ * tool can produce reaches either ceiling — its schema caps the three strings
516
+ * at `MAX_AGENT_ACTIVITY_LABEL_CODE_UNITS` — so this is a bound on what an
517
+ * arbitrary host may make this monitor hold, not a clip on a real label.
518
+ */
519
+ function displayLabels(input) {
520
+ return {
521
+ ...(input.workflow !== undefined
522
+ ? { workflow: bounded(input.workflow, MAX_IDENTITY_LABEL_CODE_UNITS) }
523
+ : {}),
524
+ ...(input.phase !== undefined
525
+ ? { phase: bounded(input.phase, MAX_IDENTITY_LABEL_CODE_UNITS) }
526
+ : {}),
527
+ ...(input.phaseOrder !== undefined ? { phaseOrder: input.phaseOrder } : {}),
528
+ ...(input.phaseDetail !== undefined
529
+ ? { phaseDetail: bounded(input.phaseDetail, MAX_IDENTITY_LABEL_CODE_UNITS) }
530
+ : {}),
531
+ };
532
+ }
238
533
  function projectEvent(record, event) {
239
534
  switch (event.type) {
240
535
  case 'agent_pending':
@@ -248,6 +543,13 @@ function projectEvent(record, event) {
248
543
  record.status = 'working';
249
544
  record.latestActivity = 'Working';
250
545
  return;
546
+ case 'token_usage_updated':
547
+ // `usage` is cumulative spend across the run; `contextTokens` beside
548
+ // it is the current conversation size and shrinks on compaction —
549
+ // a different question this row never asks. See the event's own
550
+ // doc comment for why conflating the two was a shipped defect.
551
+ record.tokens = event.usage.totalTokens;
552
+ return;
251
553
  case 'reasoning_started':
252
554
  case 'reasoning_delta':
253
555
  record.status = 'working';
@@ -281,6 +583,7 @@ function projectEvent(record, event) {
281
583
  }
282
584
  case 'tool_executing': {
283
585
  record.status = 'working';
586
+ record.toolCalls = (record.toolCalls ?? 0) + 1;
284
587
  const label = `${event.toolName}(${genericLabel(event.input)})`;
285
588
  record.latestActivity = bounded(label, MAX_AGENT_ACTIVITY_LABEL_CODE_UNITS);
286
589
  pushRow(record, {
@@ -1 +1 @@
1
- {"version":3,"file":"activity.js","sourceRoot":"","sources":["../../../src/integrations/subagents/activity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"activity.js","sourceRoot":"","sources":["../../../src/integrations/subagents/activity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import { type DelegatedChildRun, type Logger } from '@namzu/sdk';
2
+ import { type SubagentActivity } from './activity.js';
3
+ /** Where a conversation's own runs and its children's evidence both live. */
4
+ export interface SavedChildScope {
5
+ /** The `sessions/` directory holding this project's session directories. */
6
+ readonly sessionsRoot: string;
7
+ /** The conversation whose parent runs own the children being looked for. */
8
+ readonly sessionId: string;
9
+ readonly maxChildren?: number;
10
+ readonly log?: Logger;
11
+ }
12
+ /**
13
+ * Every delegated child saved under one conversation's parent runs, newest
14
+ * first.
15
+ *
16
+ * Two directory shapes have to meet here. A conversation's own runs are
17
+ * `<sessionsRoot>/<sessionId>/runs/<runId>`, which is where the parent run
18
+ * ids come from after a restart has forgotten them. A child's evidence is
19
+ * `<sessionsRoot>/<childSessionId>/runs/<parentRunId>/children/<childRunId>`,
20
+ * under the child's session and not the parent's — so finding a child means
21
+ * asking every session directory whether it holds a `runs/` entry named after
22
+ * one of this conversation's runs.
23
+ *
24
+ * That ordering is deliberate: one `readdir` per session directory answers
25
+ * the question for all of that directory's children at once, where probing
26
+ * each parent run inside each session directory would multiply the two
27
+ * counts. A child session directory holds exactly one parent run id, so the
28
+ * inner listing runs only where there is something to list.
29
+ *
30
+ * READ-ONLY throughout. Nothing here creates a directory, and in particular
31
+ * nothing binds a `RunDiskStore`, which would mint the run directory it was
32
+ * asked about.
33
+ */
34
+ export declare function listSavedChildren(scope: SavedChildScope): Promise<readonly DelegatedChildRun[]>;
35
+ /**
36
+ * Replays saved children into the display shape the live monitor publishes.
37
+ *
38
+ * One monitor for the whole batch, in replay mode: its bounds, its grouping
39
+ * and its projection are the live ones, and its rows carry
40
+ * {@link SubagentActivity.replayed} so no surface offers to act on work that
41
+ * finished in another process.
42
+ */
43
+ export declare function replaySavedChildren(children: readonly DelegatedChildRun[], log?: Logger): Promise<readonly SubagentActivity[]>;
44
+ /** Discovery and replay in one call, for a host that wants the whole list. */
45
+ export declare function replaySavedChildrenFor(scope: SavedChildScope): Promise<readonly SubagentActivity[]>;
46
+ //# sourceMappingURL=replay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../../src/integrations/subagents/replay.ts"],"names":[],"mappings":"AAGA,OAAO,EACN,KAAK,iBAAiB,EACtB,KAAK,MAAM,EAKX,MAAM,YAAY,CAAA;AAEnB,OAAO,EACN,KAAK,gBAAgB,EAGrB,MAAM,eAAe,CAAA;AA2BtB,6EAA6E;AAC7E,MAAM,WAAW,eAAe;IAC/B,4EAA4E;IAC5E,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,4EAA4E;IAC5E,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,iBAAiB,CACtC,KAAK,EAAE,eAAe,GACpB,OAAO,CAAC,SAAS,iBAAiB,EAAE,CAAC,CA6BvC;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACxC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,EACtC,GAAG,CAAC,EAAE,MAAM,GACV,OAAO,CAAC,SAAS,gBAAgB,EAAE,CAAC,CA2BtC;AAED,8EAA8E;AAC9E,wBAAsB,sBAAsB,CAC3C,KAAK,EAAE,eAAe,GACpB,OAAO,CAAC,SAAS,gBAAgB,EAAE,CAAC,CAEtC"}