@pentoshi/clai 3.8.20 → 3.8.21

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 (144) hide show
  1. package/README.md +8 -5
  2. package/dist/agent/context-breakdown.d.ts +37 -0
  3. package/dist/agent/context-breakdown.js +145 -0
  4. package/dist/agent/context-breakdown.js.map +1 -0
  5. package/dist/agent/reliability-policy.d.ts +85 -0
  6. package/dist/agent/reliability-policy.js +158 -0
  7. package/dist/agent/reliability-policy.js.map +1 -0
  8. package/dist/agent/runner.js +235 -136
  9. package/dist/agent/runner.js.map +1 -1
  10. package/dist/agent/session-state.d.ts +11 -1
  11. package/dist/agent/session-state.js +22 -15
  12. package/dist/agent/session-state.js.map +1 -1
  13. package/dist/agent/task-evidence.js +13 -0
  14. package/dist/agent/task-evidence.js.map +1 -1
  15. package/dist/agent/tool-history.d.ts +12 -0
  16. package/dist/agent/tool-history.js +159 -0
  17. package/dist/agent/tool-history.js.map +1 -1
  18. package/dist/agent/tool-output-formatting.d.ts +4 -0
  19. package/dist/agent/tool-output-formatting.js +13 -4
  20. package/dist/agent/tool-output-formatting.js.map +1 -1
  21. package/dist/app/controllers/session-controller.d.ts +6 -0
  22. package/dist/app/controllers/session-controller.js +21 -1
  23. package/dist/app/controllers/session-controller.js.map +1 -1
  24. package/dist/commands/providers.js +57 -26
  25. package/dist/commands/providers.js.map +1 -1
  26. package/dist/index.js +3 -3
  27. package/dist/index.js.map +1 -1
  28. package/dist/llm/gemini.js +4 -1
  29. package/dist/llm/gemini.js.map +1 -1
  30. package/dist/llm/key-rotation.d.ts +52 -0
  31. package/dist/llm/key-rotation.js +122 -0
  32. package/dist/llm/key-rotation.js.map +1 -0
  33. package/dist/llm/provider.d.ts +2 -0
  34. package/dist/llm/provider.js +8 -0
  35. package/dist/llm/provider.js.map +1 -1
  36. package/dist/llm/router.d.ts +15 -2
  37. package/dist/llm/router.js +318 -125
  38. package/dist/llm/router.js.map +1 -1
  39. package/dist/prompts/embedded.js +1 -1
  40. package/dist/prompts/embedded.js.map +1 -1
  41. package/dist/prompts/index.d.ts +25 -0
  42. package/dist/prompts/index.js +55 -7
  43. package/dist/prompts/index.js.map +1 -1
  44. package/dist/prompts/system.agent.md +1 -1
  45. package/dist/repl/slash-commands.js +14 -8
  46. package/dist/repl/slash-commands.js.map +1 -1
  47. package/dist/repl.d.ts +4 -1
  48. package/dist/repl.js +12 -2
  49. package/dist/repl.js.map +1 -1
  50. package/dist/store/config.d.ts +18 -0
  51. package/dist/store/config.js +9 -0
  52. package/dist/store/config.js.map +1 -1
  53. package/dist/store/history.d.ts +8 -0
  54. package/dist/store/history.js +38 -0
  55. package/dist/store/history.js.map +1 -1
  56. package/dist/store/keys.d.ts +55 -0
  57. package/dist/store/keys.js +226 -21
  58. package/dist/store/keys.js.map +1 -1
  59. package/dist/store/logs.js +35 -12
  60. package/dist/store/logs.js.map +1 -1
  61. package/dist/store/paths.d.ts +13 -0
  62. package/dist/store/paths.js +23 -1
  63. package/dist/store/paths.js.map +1 -1
  64. package/dist/store/session-workspace.d.ts +79 -0
  65. package/dist/store/session-workspace.js +199 -0
  66. package/dist/store/session-workspace.js.map +1 -0
  67. package/dist/tools/definitions.js +9 -1
  68. package/dist/tools/definitions.js.map +1 -1
  69. package/dist/tools/http.d.ts +8 -0
  70. package/dist/tools/http.js +86 -2
  71. package/dist/tools/http.js.map +1 -1
  72. package/dist/tools/pentest-workflows.js +38 -19
  73. package/dist/tools/pentest-workflows.js.map +1 -1
  74. package/dist/tools/registry.js +25 -2
  75. package/dist/tools/registry.js.map +1 -1
  76. package/dist/tools/shell.d.ts +1 -1
  77. package/dist/tui/format-keys.js +29 -6
  78. package/dist/tui/format-keys.js.map +1 -1
  79. package/dist/tui-v2/app/command-handlers.js +1 -2
  80. package/dist/tui-v2/app/command-handlers.js.map +1 -1
  81. package/dist/tui-v2/app/commands/config-commands.d.ts +1 -2
  82. package/dist/tui-v2/app/commands/config-commands.js +1 -11
  83. package/dist/tui-v2/app/commands/config-commands.js.map +1 -1
  84. package/dist/tui-v2/app/commands/key-commands.d.ts +1 -1
  85. package/dist/tui-v2/app/commands/key-commands.js +148 -63
  86. package/dist/tui-v2/app/commands/key-commands.js.map +1 -1
  87. package/dist/tui-v2/app/commands/picker-commands.js +6 -0
  88. package/dist/tui-v2/app/commands/picker-commands.js.map +1 -1
  89. package/dist/tui-v2/bootstrap/composition-root.js +8 -5
  90. package/dist/tui-v2/bootstrap/composition-root.js.map +1 -1
  91. package/dist/tui-v2/components/modal/keys-modal.d.ts +19 -0
  92. package/dist/tui-v2/components/modal/keys-modal.js +203 -0
  93. package/dist/tui-v2/components/modal/keys-modal.js.map +1 -0
  94. package/dist/tui-v2/components/overlay/overlay-host.js +6 -2
  95. package/dist/tui-v2/components/overlay/overlay-host.js.map +1 -1
  96. package/dist/tui-v2/components/pager/pager-line.js +5 -2
  97. package/dist/tui-v2/components/pager/pager-line.js.map +1 -1
  98. package/dist/tui-v2/components/pager/pager.js +6 -3
  99. package/dist/tui-v2/components/pager/pager.js.map +1 -1
  100. package/dist/tui-v2/components/plan/use-pane-presence.d.ts +6 -4
  101. package/dist/tui-v2/components/plan/use-pane-presence.js +8 -45
  102. package/dist/tui-v2/components/plan/use-pane-presence.js.map +1 -1
  103. package/dist/tui-v2/components/transcript/assistant-message.js +4 -1
  104. package/dist/tui-v2/components/transcript/assistant-message.js.map +1 -1
  105. package/dist/tui-v2/components/transcript/compacted-row.js +1 -1
  106. package/dist/tui-v2/components/transcript/compacted-row.js.map +1 -1
  107. package/dist/tui-v2/components/transcript/file-diff-card.js +3 -23
  108. package/dist/tui-v2/components/transcript/file-diff-card.js.map +1 -1
  109. package/dist/tui-v2/components/transcript/linkable-text.js +9 -2
  110. package/dist/tui-v2/components/transcript/linkable-text.js.map +1 -1
  111. package/dist/tui-v2/components/transcript/selectable-line.d.ts +22 -0
  112. package/dist/tui-v2/components/transcript/selectable-line.js +24 -0
  113. package/dist/tui-v2/components/transcript/selectable-line.js.map +1 -0
  114. package/dist/tui-v2/components/transcript/thinking-block.js +3 -1
  115. package/dist/tui-v2/components/transcript/thinking-block.js.map +1 -1
  116. package/dist/tui-v2/components/transcript/tool-card.d.ts +5 -3
  117. package/dist/tui-v2/components/transcript/tool-card.js +39 -33
  118. package/dist/tui-v2/components/transcript/tool-card.js.map +1 -1
  119. package/dist/tui-v2/components/transcript/use-click-without-drag.js +4 -1
  120. package/dist/tui-v2/components/transcript/use-click-without-drag.js.map +1 -1
  121. package/dist/tui-v2/components/transcript/user-message.js +1 -1
  122. package/dist/tui-v2/components/transcript/user-message.js.map +1 -1
  123. package/dist/tui-v2/controllers/overlay-controller.d.ts +36 -0
  124. package/dist/tui-v2/controllers/overlay-controller.js +28 -0
  125. package/dist/tui-v2/controllers/overlay-controller.js.map +1 -1
  126. package/dist/tui-v2/rendering/batch-sections.d.ts +15 -4
  127. package/dist/tui-v2/rendering/batch-sections.js +157 -64
  128. package/dist/tui-v2/rendering/batch-sections.js.map +1 -1
  129. package/dist/tui-v2/rendering/format-help.js +1 -1
  130. package/dist/tui-v2/rendering/format-help.js.map +1 -1
  131. package/dist/tui-v2/rendering/open-tool-output.js +10 -7
  132. package/dist/tui-v2/rendering/open-tool-output.js.map +1 -1
  133. package/dist/tui-v2/rendering/pager-markdown.d.ts +9 -0
  134. package/dist/tui-v2/rendering/pager-markdown.js +46 -0
  135. package/dist/tui-v2/rendering/pager-markdown.js.map +1 -1
  136. package/dist/tui-v2/rendering/pager-view-policy.d.ts +6 -3
  137. package/dist/tui-v2/rendering/pager-view-policy.js +9 -13
  138. package/dist/tui-v2/rendering/pager-view-policy.js.map +1 -1
  139. package/dist/tui-v2/rendering/sanitize-display.js +3 -1
  140. package/dist/tui-v2/rendering/sanitize-display.js.map +1 -1
  141. package/dist/types.d.ts +7 -0
  142. package/dist/version.generated.d.ts +2 -2
  143. package/dist/version.generated.js +2 -2
  144. package/package.json +1 -1
@@ -42,6 +42,29 @@ export interface ScopeEditorRequest {
42
42
  /** Existing authorized targets (pre-fill). */
43
43
  readonly initialTargets: readonly string[];
44
44
  }
45
+ /** One existing key shown masked in the multi-key editor (/set). */
46
+ export interface KeysEditorSlotView {
47
+ readonly id: string;
48
+ readonly masked: string;
49
+ }
50
+ /** Multi-row API key editor for a single LLM provider. */
51
+ export interface KeysEditorRequest {
52
+ readonly provider: string;
53
+ readonly initialKeys: readonly KeysEditorSlotView[];
54
+ }
55
+ /**
56
+ * Save rows: empty `value` + `slotId` keeps the stored secret; non-empty value
57
+ * is a new/replacement plaintext key. Reset clears all keys for the provider.
58
+ */
59
+ export type KeysEditorAnswer = {
60
+ readonly action: "save";
61
+ readonly rows: readonly {
62
+ slotId?: string;
63
+ value: string;
64
+ }[];
65
+ } | {
66
+ readonly action: "reset";
67
+ };
45
68
  export interface PromptActionsRequest {
46
69
  readonly prompt: string;
47
70
  readonly onResend: () => void;
@@ -70,6 +93,11 @@ export type OverlayState = {
70
93
  readonly request: ScopeEditorRequest;
71
94
  /** undefined = cancel; [] = clear/disable; non-empty = save targets. */
72
95
  readonly resolve: (targets: string[] | undefined) => void;
96
+ } | {
97
+ readonly kind: "keys-editor";
98
+ readonly request: KeysEditorRequest;
99
+ /** undefined = cancel. */
100
+ readonly resolve: (answer: KeysEditorAnswer | undefined) => void;
73
101
  } | {
74
102
  readonly kind: "prompt-actions";
75
103
  readonly request: PromptActionsRequest;
@@ -126,6 +154,14 @@ export declare class OverlayController {
126
154
  */
127
155
  openScopeEditor(request: ScopeEditorRequest): Promise<string[] | undefined>;
128
156
  answerScope(targets: string[] | undefined): void;
157
+ /**
158
+ * Multi-row API key editor. Resolves:
159
+ * - `undefined` cancel / overlay busy
160
+ * - `{ action: "reset" }` clear all keys
161
+ * - `{ action: "save", rows }` keep/replace/add keys
162
+ */
163
+ openKeysEditor(request: KeysEditorRequest): Promise<KeysEditorAnswer | undefined>;
164
+ answerKeys(answer: KeysEditorAnswer | undefined): void;
129
165
  answerConfirm(ok: boolean): void;
130
166
  answerPlanConfirm(result: PlanConfirmResult): void;
131
167
  answerSecret(value: string | undefined): void;
@@ -127,6 +127,26 @@ export class OverlayController {
127
127
  this.forceClose();
128
128
  resolve(targets);
129
129
  }
130
+ /**
131
+ * Multi-row API key editor. Resolves:
132
+ * - `undefined` cancel / overlay busy
133
+ * - `{ action: "reset" }` clear all keys
134
+ * - `{ action: "save", rows }` keep/replace/add keys
135
+ */
136
+ openKeysEditor(request) {
137
+ return new Promise((resolve) => {
138
+ const opened = this.open({ kind: "keys-editor", request, resolve }, "modal");
139
+ if (!opened)
140
+ resolve(undefined);
141
+ });
142
+ }
143
+ answerKeys(answer) {
144
+ if (this.state.kind !== "keys-editor")
145
+ return;
146
+ const { resolve } = this.state;
147
+ this.forceClose();
148
+ resolve(answer);
149
+ }
130
150
  answerConfirm(ok) {
131
151
  const confirm = this.activeConfirm();
132
152
  if (!confirm)
@@ -184,6 +204,10 @@ export class OverlayController {
184
204
  this.answerScope(undefined);
185
205
  return true;
186
206
  }
207
+ if (this.state.kind === "keys-editor") {
208
+ this.answerKeys(undefined);
209
+ return true;
210
+ }
187
211
  return false;
188
212
  }
189
213
  /** The picker's own `onSelect` decides whether/when to close (e.g. a
@@ -221,6 +245,10 @@ export class OverlayController {
221
245
  }
222
246
  else if (this.state.kind === "secret")
223
247
  this.state.resolve(undefined);
248
+ else if (this.state.kind === "scope-editor")
249
+ this.state.resolve(undefined);
250
+ else if (this.state.kind === "keys-editor")
251
+ this.state.resolve(undefined);
224
252
  this.suspended = undefined;
225
253
  this.forceClose();
226
254
  this.listeners.clear();
@@ -1 +1 @@
1
- {"version":3,"file":"overlay-controller.js","sourceRoot":"","sources":["../../../src/tui-v2/controllers/overlay-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"overlay-controller.js","sourceRoot":"","sources":["../../../src/tui-v2/controllers/overlay-controller.ts"],"names":[],"mappings":"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"}
@@ -2,13 +2,18 @@
2
2
  * Parse and present tool.batch output as nested sub-tool sections
3
3
  * (classic TUI parity).
4
4
  *
5
- * Batch runners emit labeled sections:
5
+ * Batch runners emit labeled sections (streamed as each child finishes, and
6
+ * again as the final body):
6
7
  * ── #1 dns.lookup [ok exit=0]
7
8
  * …
8
9
  * ── #2 web.fetch [fail exit=1]
9
10
  * …
11
+ *
12
+ * Live progress also includes `[batch] …` ticks. While the parent is still
13
+ * running we merge settled sections with running placeholders so nested cards
14
+ * appear expanded from the first start — same shape as single tool cards.
10
15
  */
11
- export type BatchSectionStatus = "ok" | "fail" | "cancelled";
16
+ export type BatchSectionStatus = "ok" | "fail" | "cancelled" | "running";
12
17
  export interface BatchSection {
13
18
  readonly index: number;
14
19
  readonly name: string;
@@ -21,6 +26,7 @@ export interface BatchSection {
21
26
  /**
22
27
  * Split a completed tool.batch output into per-sub-tool sections.
23
28
  * Returns [] when the body is not in the labeled batch format.
29
+ * If the same index appears twice (live re-stream), the last header wins.
24
30
  */
25
31
  export declare function parseBatchSections(output: string): BatchSection[];
26
32
  export interface BatchSectionPresentation {
@@ -42,13 +48,18 @@ export interface BatchLiveLine {
42
48
  readonly tone: "info" | "ok" | "fail" | "running";
43
49
  }
44
50
  /**
45
- * Present live `[batch] …` progress ticks as compact status lines while the
46
- * parent card is still running (no nested section headers yet).
51
+ * Parse live `[batch] …` progress ticks (kept for tests / summary).
52
+ * Prefer {@link buildBatchCardsFromSpool} for the live nested-card UI.
47
53
  */
48
54
  export declare function parseBatchLiveProgress(raw: string): {
49
55
  readonly lines: readonly BatchLiveLine[];
50
56
  readonly summary: string;
51
57
  };
58
+ /**
59
+ * Merge streamed `── #N` sections with `[batch]` start/running ticks into an
60
+ * ordered list of nested cards for live (and final) batch UI.
61
+ */
62
+ export declare function buildBatchCardsFromSpool(raw: string): BatchSection[];
52
63
  /**
53
64
  * Rebuild a single section as a labeled block for the pager (matches
54
65
  * runner formatting so the full-batch view stays familiar).
@@ -2,32 +2,59 @@
2
2
  * Parse and present tool.batch output as nested sub-tool sections
3
3
  * (classic TUI parity).
4
4
  *
5
- * Batch runners emit labeled sections:
5
+ * Batch runners emit labeled sections (streamed as each child finishes, and
6
+ * again as the final body):
6
7
  * ── #1 dns.lookup [ok exit=0]
7
8
  * …
8
9
  * ── #2 web.fetch [fail exit=1]
9
10
  * …
11
+ *
12
+ * Live progress also includes `[batch] …` ticks. While the parent is still
13
+ * running we merge settled sections with running placeholders so nested cards
14
+ * appear expanded from the first start — same shape as single tool cards.
10
15
  */
11
16
  import { cleanToolOutputLines, presentOutput } from "./tool-presenter.js";
12
- const HEADER_RE = /^──\s+#(\d+)\s+([\w.]+)\s+\[(ok|fail|cancelled)(?:\s+exit=(\d+))?\]/;
17
+ const HEADER_RE = /^──\s+#(\d+)\s+([\w.]+)\s+\[(ok|fail|cancelled|running)(?:\s+exit=(\d+))?\]/;
18
+ /** Progress ticks are never part of a sub-tool body. */
19
+ function isBatchProgressLine(line) {
20
+ return /^\[batch\]/i.test(line.trim());
21
+ }
13
22
  /**
14
23
  * Split a completed tool.batch output into per-sub-tool sections.
15
24
  * Returns [] when the body is not in the labeled batch format.
25
+ * If the same index appears twice (live re-stream), the last header wins.
16
26
  */
17
27
  export function parseBatchSections(output) {
18
- const sections = [];
28
+ const ordered = [];
29
+ const byIndex = new Map(); // index → position in ordered
19
30
  let current = null;
20
31
  const bodyLines = [];
32
+ const flush = () => {
33
+ if (current === null)
34
+ return;
35
+ const section = {
36
+ ...current,
37
+ body: bodyLines.join("\n").trim(),
38
+ };
39
+ bodyLines.length = 0;
40
+ const prev = byIndex.get(section.index);
41
+ if (prev !== undefined) {
42
+ ordered[prev] = section;
43
+ }
44
+ else {
45
+ byIndex.set(section.index, ordered.length);
46
+ ordered.push(section);
47
+ }
48
+ current = null;
49
+ };
21
50
  for (const line of output.replace(/\r/g, "").split("\n")) {
51
+ if (isBatchProgressLine(line)) {
52
+ // Progress ticks never belong in a section body.
53
+ continue;
54
+ }
22
55
  const m = HEADER_RE.exec(line);
23
56
  if (m) {
24
- if (current !== null) {
25
- sections.push({
26
- ...current,
27
- body: bodyLines.join("\n").trim(),
28
- });
29
- bodyLines.length = 0;
30
- }
57
+ flush();
31
58
  const exitCode = m[4] !== undefined ? parseInt(m[4], 10) : undefined;
32
59
  const status = m[3];
33
60
  current = {
@@ -42,23 +69,26 @@ export function parseBatchSections(output) {
42
69
  bodyLines.push(line);
43
70
  }
44
71
  }
45
- if (current !== null) {
46
- sections.push({
47
- ...current,
48
- body: bodyLines.join("\n").trim(),
49
- });
50
- }
51
- return sections;
72
+ flush();
73
+ // Drop pure running placeholders from final parse when a settled sibling
74
+ // replaced them — callers that need live stubs use buildBatchCardsFromSpool.
75
+ return ordered.filter((s) => s.status !== "running" || s.body.length > 0);
52
76
  }
53
77
  /** Present one nested sub-tool for the card (collapsed head/tail or full). */
54
78
  export function presentBatchSection(section, expanded) {
55
- const presented = presentOutput(section.body, undefined, expanded);
56
- // Prefer cleaned body even when presentOutput samples ends for huge text.
57
- const hasBody = section.body.trim().length > 0;
58
79
  const status = section.status ?? (section.ok ? "ok" : "fail");
80
+ const bodyForPresent = status === "running" && !section.body.trim()
81
+ ? "running…"
82
+ : section.body;
83
+ const presented = presentOutput(bodyForPresent, undefined, expanded);
84
+ const hasBody = bodyForPresent.trim().length > 0;
59
85
  let glyph = "✗";
60
86
  let statusLabel = "failed";
61
- if (status === "ok") {
87
+ if (status === "running") {
88
+ glyph = "●";
89
+ statusLabel = "running";
90
+ }
91
+ else if (status === "ok") {
62
92
  glyph = "✓";
63
93
  statusLabel =
64
94
  section.exitCode !== undefined
@@ -88,8 +118,13 @@ export function presentBatchSection(section, expanded) {
88
118
  export function batchSummaryLine(sections) {
89
119
  if (sections.length === 0)
90
120
  return "";
121
+ const running = sections.filter((s) => s.status === "running").length;
91
122
  const failed = sections.filter((s) => (s.status ?? (s.ok ? "ok" : "fail")) === "fail").length;
92
123
  const cancelled = sections.filter((s) => (s.status ?? (s.ok ? "ok" : "fail")) === "cancelled").length;
124
+ const ok = sections.filter((s) => (s.status ?? (s.ok ? "ok" : "fail")) === "ok").length;
125
+ if (running > 0) {
126
+ return `${ok} done · ${running} running · ${sections.length} total`;
127
+ }
93
128
  if (failed === 0 && cancelled === 0) {
94
129
  return `${sections.length} sub-tool(s) — all ok`;
95
130
  }
@@ -105,73 +140,131 @@ export function isBatchToolName(name) {
105
140
  return name === "tool.batch";
106
141
  }
107
142
  /**
108
- * Present live `[batch] …` progress ticks as compact status lines while the
109
- * parent card is still running (no nested section headers yet).
143
+ * Parse live `[batch] …` progress ticks (kept for tests / summary).
144
+ * Prefer {@link buildBatchCardsFromSpool} for the live nested-card UI.
110
145
  */
111
146
  export function parseBatchLiveProgress(raw) {
147
+ const cards = buildBatchCardsFromSpool(raw);
148
+ if (cards.length === 0) {
149
+ const ticks = raw
150
+ .replace(/\r/g, "")
151
+ .split("\n")
152
+ .map((l) => l.trim())
153
+ .filter((l) => /^\[batch\]/i.test(l));
154
+ const header = ticks.find((t) => /starting\b/i.test(t));
155
+ return {
156
+ lines: header
157
+ ? [{ text: header.replace(/^\[batch\]\s*/i, ""), tone: "info" }]
158
+ : [],
159
+ summary: header
160
+ ? header.replace(/^\[batch\]\s*/i, "")
161
+ : ticks.length
162
+ ? "batch running…"
163
+ : "",
164
+ };
165
+ }
166
+ const lines = cards.map((c) => ({
167
+ text: `#${c.index} ${c.name} · ${c.status}`,
168
+ tone: c.status === "ok"
169
+ ? "ok"
170
+ : c.status === "running"
171
+ ? "running"
172
+ : c.status === "fail"
173
+ ? "fail"
174
+ : "info",
175
+ }));
176
+ return { lines, summary: batchSummaryLine(cards) };
177
+ }
178
+ /**
179
+ * Merge streamed `── #N` sections with `[batch]` start/running ticks into an
180
+ * ordered list of nested cards for live (and final) batch UI.
181
+ */
182
+ export function buildBatchCardsFromSpool(raw) {
183
+ const settled = parseBatchSections(raw);
184
+ const byIndex = new Map();
185
+ for (const s of settled) {
186
+ // Prefer settled over running if both exist.
187
+ if (s.status !== "running" || !byIndex.has(s.index)) {
188
+ byIndex.set(s.index, s);
189
+ }
190
+ }
112
191
  const ticks = raw
113
192
  .replace(/\r/g, "")
114
193
  .split("\n")
115
194
  .map((l) => l.trim())
116
195
  .filter((l) => /^\[batch\]/i.test(l));
117
- if (ticks.length === 0) {
118
- return { lines: [], summary: "" };
119
- }
120
- // Prefer the latest status per call index so the card stays short.
121
- const byKey = new Map();
122
- let header;
123
- let progress;
196
+ const tickState = new Map();
124
197
  for (const tick of ticks) {
125
198
  const body = tick.replace(/^\[batch\]\s*/i, "");
126
199
  const start = /^#(\d+)\s+([\w.]+)\s+starting/i.exec(body);
127
- const done = /^#(\d+)\s+([\w.]+)\s+(ok|fail|cancelled)/i.exec(body);
200
+ const done = /^#(\d+)\s+([\w.]+)\s+(ok|fail|cancelled)(?:\s+exit=(\d+))?/i.exec(body);
128
201
  const running = /^#(\d+)\s+([\w.]+)\s+still running/i.exec(body);
129
- const still = /^still running/i.test(body);
202
+ const err = /^#(\d+)\s+([\w.]+)\s+error:/i.exec(body);
130
203
  if (start) {
131
- byKey.set(start[1], {
132
- text: `#${start[1]} ${start[2]} · running`,
133
- tone: "running",
134
- });
204
+ const idx = parseInt(start[1], 10);
205
+ const prev = tickState.get(idx);
206
+ if (!prev || prev.status === "running") {
207
+ tickState.set(idx, {
208
+ name: start[2],
209
+ status: "running",
210
+ exitCode: undefined,
211
+ });
212
+ }
135
213
  }
136
214
  else if (done) {
215
+ const idx = parseInt(done[1], 10);
137
216
  const st = done[3].toLowerCase();
138
- const ok = st === "ok";
139
- byKey.set(done[1], {
140
- text: `#${done[1]} ${done[2]} · ${st}`,
141
- tone: ok ? "ok" : "fail",
217
+ const exit = done[4] !== undefined ? parseInt(done[4], 10) : undefined;
218
+ tickState.set(idx, {
219
+ name: done[2],
220
+ status: st,
221
+ exitCode: Number.isFinite(exit) ? exit : undefined,
142
222
  });
143
223
  }
144
224
  else if (running) {
145
- // Keep "running" only if not already terminal.
146
- const prev = byKey.get(running[1]);
147
- if (!prev || prev.tone === "running") {
148
- byKey.set(running[1], {
149
- text: `#${running[1]} ${running[2]} · running…`,
150
- tone: "running",
225
+ const idx = parseInt(running[1], 10);
226
+ const prev = tickState.get(idx);
227
+ if (!prev || prev.status === "running") {
228
+ tickState.set(idx, {
229
+ name: running[2],
230
+ status: "running",
231
+ exitCode: undefined,
151
232
  });
152
233
  }
153
234
  }
154
- else if (still) {
155
- progress = { text: body, tone: "info" };
235
+ else if (err) {
236
+ const idx = parseInt(err[1], 10);
237
+ tickState.set(idx, {
238
+ name: err[2],
239
+ status: "fail",
240
+ exitCode: undefined,
241
+ });
156
242
  }
157
- else if (/^starting\b/i.test(body)) {
158
- header = { text: body, tone: "info" };
243
+ }
244
+ // Fill running (or tick-only settled) stubs for indices not yet sectioned.
245
+ for (const [idx, st] of tickState) {
246
+ const existing = byIndex.get(idx);
247
+ if (existing && existing.status !== "running")
248
+ continue;
249
+ if (existing && st.status === "running")
250
+ continue;
251
+ // Prefer full section body when we already have one.
252
+ if (existing && existing.body.trim().length > 0 && st.status !== "running") {
253
+ // Section may lack exit; prefer section.
254
+ continue;
255
+ }
256
+ if (st.status === "running" || !existing) {
257
+ byIndex.set(idx, {
258
+ index: idx,
259
+ name: st.name,
260
+ status: st.status === "running" ? "running" : st.status,
261
+ ok: st.status === "ok",
262
+ exitCode: st.exitCode,
263
+ body: existing?.body ?? "",
264
+ });
159
265
  }
160
266
  }
161
- const lines = [];
162
- if (header)
163
- lines.push(header);
164
- const ordered = [...byKey.entries()].sort((a, b) => Number(a[0]) - Number(b[0]));
165
- for (const [, line] of ordered)
166
- lines.push(line);
167
- if (progress)
168
- lines.push(progress);
169
- const runningN = ordered.filter(([, l]) => l.tone === "running").length;
170
- const doneN = ordered.filter(([, l]) => l.tone !== "running").length;
171
- const summary = ordered.length > 0
172
- ? `${doneN} settled · ${runningN} running · ${ordered.length} total`
173
- : header?.text ?? "batch running…";
174
- return { lines, summary };
267
+ return [...byIndex.values()].sort((a, b) => a.index - b.index);
175
268
  }
176
269
  /**
177
270
  * Rebuild a single section as a labeled block for the pager (matches
@@ -1 +1 @@
1
- {"version":3,"file":"batch-sections.js","sourceRoot":"","sources":["../../../src/tui-v2/rendering/batch-sections.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"batch-sections.js","sourceRoot":"","sources":["../../../src/tui-v2/rendering/batch-sections.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@ function sectionFor(command) {
18
18
  if (["set", "unset", "keys", "info"].includes(name)) {
19
19
  return "Credentials";
20
20
  }
21
- if (["permissions", "allow", "disallow", "freeonly", "fallback", "mouse", "scope", "privacy"].includes(name)) {
21
+ if (["permissions", "allow", "disallow", "freeonly", "fallback", "scope", "privacy"].includes(name)) {
22
22
  return "Permissions & safety";
23
23
  }
24
24
  if (["history", "clear", "new", "clean", "save", "reset", "compact", "context", "think", "thinking", "output", "cwd"].includes(name)) {
@@ -1 +1 @@
1
- {"version":3,"file":"format-help.js","sourceRoot":"","sources":["../../../src/tui-v2/rendering/format-help.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"format-help.js","sourceRoot":"","sources":["../../../src/tui-v2/rendering/format-help.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ import { createArtifactPagerSource } from "./artifact-pager-source.js";
10
10
  import { asToolCallId } from "../../app/events/app-event.js";
11
11
  import { formatModalPlainText } from "./file-diff-view.js";
12
12
  import { defaultPagerMarkdownMode } from "./pager-view-policy.js";
13
- import { stripPagerLineGutters } from "./pager-markdown.js";
13
+ import { extractFsReadFileBody, stripPagerLineGutters } from "./pager-markdown.js";
14
14
  /**
15
15
  * Prefer a human-readable hit list for web.search-style payloads.
16
16
  * Falls back to pretty JSON, then the raw text.
@@ -187,8 +187,8 @@ export async function openToolOutputPager(services, item, options = {}) {
187
187
  path: fileChange.path,
188
188
  body: fileChange.afterText,
189
189
  });
190
- // Pure-create / green-only markdown: open clean text for format default.
191
- // Mixed red+green edits: keep guttered raw body.
190
+ // Always open the guttered green/red editor body by default.
191
+ // (mdMode is plain for file mutations; `f` still formats if the user wants.)
192
192
  const body = mdMode === "force"
193
193
  ? stripPagerLineGutters(guttered) ||
194
194
  fileChange.afterText ||
@@ -196,7 +196,7 @@ export async function openToolOutputPager(services, item, options = {}) {
196
196
  "(empty file)"
197
197
  : guttered || "(empty file)";
198
198
  const opened = services.overlay.openPager(title, body, undefined,
199
- // highlightPath only for raw syntax path (edits); pure md uses format
199
+ // Keep path for raw syntax highlighting of the green editor view.
200
200
  mdMode === "force" ? undefined : fileChange.path, mdMode);
201
201
  if (!opened) {
202
202
  services.session.notice("warn", "could not open output pager (another overlay is open)");
@@ -327,9 +327,12 @@ export async function openToolOutputPager(services, item, options = {}) {
327
327
  path: highlightPath ?? pathFromArgsDisplay(item.argsDisplay),
328
328
  body: body,
329
329
  });
330
- // Formatted md reads: prefer clean file text without path chrome for render.
331
- const finalBody = mdMode === "force" && openedSourceFile
332
- ? body || "(no output)"
330
+ // Formatted md reads: pure file markdown (no `N: ` gutters / # fs.read chrome).
331
+ // Prefer on-disk file when available; otherwise strip the spool dump.
332
+ const finalBody = mdMode === "force"
333
+ ? openedSourceFile
334
+ ? body || "(no output)"
335
+ : extractFsReadFileBody(body) || body || "(no output)"
333
336
  : pagerBody;
334
337
  const opened = services.overlay.openPager(title, finalBody, artifactSource, mdMode === "force" ? undefined : highlightPath, mdMode);
335
338
  if (!opened) {