@namzu/cli 18.1.0 → 20.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 (224) hide show
  1. package/CHANGELOG.md +5951 -0
  2. package/README.md +23 -24
  3. package/dist/bin.js +12 -1
  4. package/dist/bin.js.map +1 -1
  5. package/dist/checkpoints/store.d.ts +75 -0
  6. package/dist/checkpoints/store.d.ts.map +1 -0
  7. package/dist/checkpoints/store.js +177 -0
  8. package/dist/checkpoints/store.js.map +1 -0
  9. package/dist/checkpoints/wrap.d.ts +15 -0
  10. package/dist/checkpoints/wrap.d.ts.map +1 -0
  11. package/dist/checkpoints/wrap.js +37 -0
  12. package/dist/checkpoints/wrap.js.map +1 -0
  13. package/dist/cli.d.ts +6 -0
  14. package/dist/cli.d.ts.map +1 -1
  15. package/dist/cli.js +12 -1
  16. package/dist/cli.js.map +1 -1
  17. package/dist/commands/acp.d.ts.map +1 -1
  18. package/dist/commands/acp.js +2 -0
  19. package/dist/commands/acp.js.map +1 -1
  20. package/dist/commands/drain.d.ts.map +1 -1
  21. package/dist/commands/drain.js +15 -2
  22. package/dist/commands/drain.js.map +1 -1
  23. package/dist/commands/provider-wait.d.ts +44 -0
  24. package/dist/commands/provider-wait.d.ts.map +1 -0
  25. package/dist/commands/provider-wait.js +65 -0
  26. package/dist/commands/provider-wait.js.map +1 -0
  27. package/dist/commands/run-flags.d.ts +13 -1
  28. package/dist/commands/run-flags.d.ts.map +1 -1
  29. package/dist/commands/run-flags.js +41 -0
  30. package/dist/commands/run-flags.js.map +1 -1
  31. package/dist/commands/run-stream.d.ts.map +1 -1
  32. package/dist/commands/run-stream.js +33 -13
  33. package/dist/commands/run-stream.js.map +1 -1
  34. package/dist/commands/run.d.ts.map +1 -1
  35. package/dist/commands/run.js +132 -78
  36. package/dist/commands/run.js.map +1 -1
  37. package/dist/commands/stdin.d.ts +17 -0
  38. package/dist/commands/stdin.d.ts.map +1 -0
  39. package/dist/commands/stdin.js +69 -0
  40. package/dist/commands/stdin.js.map +1 -0
  41. package/dist/config/load.d.ts.map +1 -1
  42. package/dist/config/load.js +107 -2
  43. package/dist/config/load.js.map +1 -1
  44. package/dist/config/schema.d.ts +80 -5
  45. package/dist/config/schema.d.ts.map +1 -1
  46. package/dist/config/schema.js.map +1 -1
  47. package/dist/context/doctrine.d.ts +16 -38
  48. package/dist/context/doctrine.d.ts.map +1 -1
  49. package/dist/context/doctrine.js +16 -75
  50. package/dist/context/doctrine.js.map +1 -1
  51. package/dist/context/environment.d.ts +2 -0
  52. package/dist/context/environment.d.ts.map +1 -1
  53. package/dist/context/environment.js +3 -0
  54. package/dist/context/environment.js.map +1 -1
  55. package/dist/integrations/mcp/servers.d.ts +19 -0
  56. package/dist/integrations/mcp/servers.d.ts.map +1 -1
  57. package/dist/integrations/mcp/servers.js +23 -2
  58. package/dist/integrations/mcp/servers.js.map +1 -1
  59. package/dist/integrations/plugins/runtime.d.ts +8 -2
  60. package/dist/integrations/plugins/runtime.d.ts.map +1 -1
  61. package/dist/integrations/plugins/runtime.js +24 -12
  62. package/dist/integrations/plugins/runtime.js.map +1 -1
  63. package/dist/integrations/providers/chain-capabilities.js +1 -1
  64. package/dist/integrations/providers/chain-capabilities.js.map +1 -1
  65. package/dist/integrations/providers/credential-store.d.ts +1 -1
  66. package/dist/integrations/providers/credential-store.js +1 -1
  67. package/dist/integrations/providers/harness-credentials.d.ts.map +1 -1
  68. package/dist/integrations/providers/harness-credentials.js +7 -0
  69. package/dist/integrations/providers/harness-credentials.js.map +1 -1
  70. package/dist/integrations/providers/registry.d.ts +2 -2
  71. package/dist/integrations/providers/registry.js +2 -2
  72. package/dist/integrations/sessions/store.d.ts +14 -22
  73. package/dist/integrations/sessions/store.d.ts.map +1 -1
  74. package/dist/integrations/sessions/store.js +78 -175
  75. package/dist/integrations/sessions/store.js.map +1 -1
  76. package/dist/integrations/sessions/transcript-export.d.ts.map +1 -1
  77. package/dist/integrations/sessions/transcript-export.js +6 -2
  78. package/dist/integrations/sessions/transcript-export.js.map +1 -1
  79. package/dist/integrations/state/identity.d.ts +21 -0
  80. package/dist/integrations/state/identity.d.ts.map +1 -0
  81. package/dist/integrations/state/identity.js +49 -0
  82. package/dist/integrations/state/identity.js.map +1 -0
  83. package/dist/integrations/state/immutable-json.d.ts +10 -0
  84. package/dist/integrations/state/immutable-json.d.ts.map +1 -0
  85. package/dist/integrations/state/immutable-json.js +38 -0
  86. package/dist/integrations/state/immutable-json.js.map +1 -0
  87. package/dist/integrations/state/project.d.ts +10 -0
  88. package/dist/integrations/state/project.d.ts.map +1 -0
  89. package/dist/integrations/state/project.js +15 -0
  90. package/dist/integrations/state/project.js.map +1 -0
  91. package/dist/integrations/state/report.d.ts.map +1 -1
  92. package/dist/integrations/state/report.js +42 -12
  93. package/dist/integrations/state/report.js.map +1 -1
  94. package/dist/integrations/subagents/definitions.d.ts +19 -0
  95. package/dist/integrations/subagents/definitions.d.ts.map +1 -0
  96. package/dist/integrations/subagents/definitions.js +26 -0
  97. package/dist/integrations/subagents/definitions.js.map +1 -0
  98. package/dist/integrations/subagents/parent.d.ts +13 -0
  99. package/dist/integrations/subagents/parent.d.ts.map +1 -0
  100. package/dist/integrations/subagents/parent.js +57 -0
  101. package/dist/integrations/subagents/parent.js.map +1 -0
  102. package/dist/integrations/subagents/runtime.d.ts +33 -16
  103. package/dist/integrations/subagents/runtime.d.ts.map +1 -1
  104. package/dist/integrations/subagents/runtime.js +450 -150
  105. package/dist/integrations/subagents/runtime.js.map +1 -1
  106. package/dist/memory/presentation.d.ts +9 -0
  107. package/dist/memory/presentation.d.ts.map +1 -0
  108. package/dist/memory/presentation.js +37 -0
  109. package/dist/memory/presentation.js.map +1 -0
  110. package/dist/memory/store.d.ts +35 -15
  111. package/dist/memory/store.d.ts.map +1 -1
  112. package/dist/memory/store.js +79 -25
  113. package/dist/memory/store.js.map +1 -1
  114. package/dist/permissions/mode.d.ts +15 -45
  115. package/dist/permissions/mode.d.ts.map +1 -1
  116. package/dist/permissions/mode.js +36 -13
  117. package/dist/permissions/mode.js.map +1 -1
  118. package/dist/release-notes.d.ts +20 -0
  119. package/dist/release-notes.d.ts.map +1 -0
  120. package/dist/release-notes.js +64 -0
  121. package/dist/release-notes.js.map +1 -0
  122. package/dist/tui/AgentExplorer.d.ts +1 -1
  123. package/dist/tui/AgentExplorer.d.ts.map +1 -1
  124. package/dist/tui/AgentExplorer.js +25 -21
  125. package/dist/tui/AgentExplorer.js.map +1 -1
  126. package/dist/tui/App.d.ts.map +1 -1
  127. package/dist/tui/App.js +701 -245
  128. package/dist/tui/App.js.map +1 -1
  129. package/dist/tui/BrandHeader.d.ts +12 -0
  130. package/dist/tui/BrandHeader.d.ts.map +1 -0
  131. package/dist/tui/BrandHeader.js +18 -0
  132. package/dist/tui/BrandHeader.js.map +1 -0
  133. package/dist/tui/ChoicePicker.d.ts +11 -1
  134. package/dist/tui/ChoicePicker.d.ts.map +1 -1
  135. package/dist/tui/ChoicePicker.js +46 -13
  136. package/dist/tui/ChoicePicker.js.map +1 -1
  137. package/dist/tui/Composer.d.ts +5 -2
  138. package/dist/tui/Composer.d.ts.map +1 -1
  139. package/dist/tui/Composer.js +6 -11
  140. package/dist/tui/Composer.js.map +1 -1
  141. package/dist/tui/ComposerFrame.d.ts +10 -0
  142. package/dist/tui/ComposerFrame.d.ts.map +1 -0
  143. package/dist/tui/ComposerFrame.js +93 -0
  144. package/dist/tui/ComposerFrame.js.map +1 -0
  145. package/dist/tui/EditPromptPicker.d.ts.map +1 -1
  146. package/dist/tui/EditPromptPicker.js +1 -1
  147. package/dist/tui/EditPromptPicker.js.map +1 -1
  148. package/dist/tui/LiveActivity.d.ts +12 -5
  149. package/dist/tui/LiveActivity.d.ts.map +1 -1
  150. package/dist/tui/LiveActivity.js +17 -32
  151. package/dist/tui/LiveActivity.js.map +1 -1
  152. package/dist/tui/PermissionOverlay.d.ts +26 -2
  153. package/dist/tui/PermissionOverlay.d.ts.map +1 -1
  154. package/dist/tui/PermissionOverlay.js +109 -16
  155. package/dist/tui/PermissionOverlay.js.map +1 -1
  156. package/dist/tui/Picker.d.ts +2 -2
  157. package/dist/tui/Picker.d.ts.map +1 -1
  158. package/dist/tui/Picker.js +82 -52
  159. package/dist/tui/Picker.js.map +1 -1
  160. package/dist/tui/StatusBar.d.ts.map +1 -1
  161. package/dist/tui/StatusBar.js +5 -2
  162. package/dist/tui/StatusBar.js.map +1 -1
  163. package/dist/tui/TaskList.d.ts +3 -1
  164. package/dist/tui/TaskList.d.ts.map +1 -1
  165. package/dist/tui/TaskList.js +13 -4
  166. package/dist/tui/TaskList.js.map +1 -1
  167. package/dist/tui/Transcript.d.ts +4 -12
  168. package/dist/tui/Transcript.d.ts.map +1 -1
  169. package/dist/tui/Transcript.js +45 -75
  170. package/dist/tui/Transcript.js.map +1 -1
  171. package/dist/tui/agent.d.ts +116 -51
  172. package/dist/tui/agent.d.ts.map +1 -1
  173. package/dist/tui/agent.js +539 -307
  174. package/dist/tui/agent.js.map +1 -1
  175. package/dist/tui/choice-selection.d.ts +17 -0
  176. package/dist/tui/choice-selection.d.ts.map +1 -0
  177. package/dist/tui/choice-selection.js +38 -0
  178. package/dist/tui/choice-selection.js.map +1 -0
  179. package/dist/tui/exit-summary.d.ts +7 -1
  180. package/dist/tui/exit-summary.d.ts.map +1 -1
  181. package/dist/tui/exit-summary.js +12 -3
  182. package/dist/tui/exit-summary.js.map +1 -1
  183. package/dist/tui/index.d.ts +3 -1
  184. package/dist/tui/index.d.ts.map +1 -1
  185. package/dist/tui/index.js +5 -3
  186. package/dist/tui/index.js.map +1 -1
  187. package/dist/tui/logo.d.ts +7 -22
  188. package/dist/tui/logo.d.ts.map +1 -1
  189. package/dist/tui/logo.js +8 -34
  190. package/dist/tui/logo.js.map +1 -1
  191. package/dist/tui/model-choices.d.ts.map +1 -1
  192. package/dist/tui/model-choices.js +21 -6
  193. package/dist/tui/model-choices.js.map +1 -1
  194. package/dist/tui/permission-review.d.ts +15 -4
  195. package/dist/tui/permission-review.d.ts.map +1 -1
  196. package/dist/tui/permission-review.js +48 -9
  197. package/dist/tui/permission-review.js.map +1 -1
  198. package/dist/tui/provider-selection.d.ts +4 -0
  199. package/dist/tui/provider-selection.d.ts.map +1 -0
  200. package/dist/tui/provider-selection.js +16 -0
  201. package/dist/tui/provider-selection.js.map +1 -0
  202. package/dist/tui/run-interruption.d.ts +3 -2
  203. package/dist/tui/run-interruption.d.ts.map +1 -1
  204. package/dist/tui/run-interruption.js +2 -1
  205. package/dist/tui/run-interruption.js.map +1 -1
  206. package/dist/tui/shell-escape.d.ts +42 -0
  207. package/dist/tui/shell-escape.d.ts.map +1 -0
  208. package/dist/tui/shell-escape.js +110 -0
  209. package/dist/tui/shell-escape.js.map +1 -0
  210. package/dist/tui/slashCommands.d.ts +82 -31
  211. package/dist/tui/slashCommands.d.ts.map +1 -1
  212. package/dist/tui/slashCommands.js +518 -306
  213. package/dist/tui/slashCommands.js.map +1 -1
  214. package/dist/tui/terminal-choice-text.d.ts +8 -0
  215. package/dist/tui/terminal-choice-text.d.ts.map +1 -0
  216. package/dist/tui/terminal-choice-text.js +37 -0
  217. package/dist/tui/terminal-choice-text.js.map +1 -0
  218. package/dist/tui/theme.d.ts +3 -4
  219. package/dist/tui/theme.d.ts.map +1 -1
  220. package/dist/tui/theme.js +16 -17
  221. package/dist/tui/theme.js.map +1 -1
  222. package/dist/tui/types.d.ts +9 -13
  223. package/dist/tui/types.d.ts.map +1 -1
  224. package/package.json +7 -5
@@ -3,18 +3,17 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  * Conversation transcript. Borderless and edge-to-edge: each message is a
4
4
  * two-column row — a fixed glyph gutter plus the content — so wrapped
5
5
  * lines hang-indent under the text and the role reads from the glyph +
6
- * color alone (no separate label line). A pending assistant message shows
7
- * a braille spinner in the gutter while the agent works.
6
+ * color alone (no separate label line). Role marks stay still while output
7
+ * streams; the Working row owns the active turn's animation.
8
8
  */
9
9
  import { Box, Static, Text } from 'ink';
10
- import { memo, useEffect, useState } from 'react';
10
+ import { memo } from 'react';
11
11
  import { Markdown } from './Markdown.js';
12
12
  import { terminalDisplayText } from './terminal-display.js';
13
13
  import { theme } from './theme.js';
14
14
  const COLLAPSE_LINES = 6;
15
- const SPINNER_FRAMES = ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'];
16
- export function Transcript({ messages, pending, state, settled, resetKey, raw = false, hyperlinks = false, showLive = true, header, }) {
17
- const spinner = useSpinner(state !== 'idle');
15
+ const PREVIEW_LINE_CHARS = 240;
16
+ export function Transcript({ messages, pending, settled, resetKey, raw = false, hyperlinks = false, showLive = true, header, }) {
18
17
  const inScrollback = Math.min(Math.max(settled, 0), messages.length);
19
18
  // The banner is row 0 so it prints to the very top of scrollback; messages
20
19
  // follow it. <Static> renders each row exactly once and never re-renders it,
@@ -29,22 +28,18 @@ export function Transcript({ messages, pending, state, settled, resetKey, raw =
29
28
  prev: messages[i - 1],
30
29
  })),
31
30
  ];
32
- // The live window. Memoised per row, and that is what keeps this affordable:
33
- // the spinner ticks about twelve times a second and every tick re-renders
34
- // this component, so an unmemoised window would re-render its rows — parse
35
- // their markdown, rebuild their elements — on each one. The rows themselves
36
- // are unchanged objects between ticks, so the memo holds; the row that just
37
- // changed is the only one that renders.
31
+ // The live window is memoised per row so streamed output does not reparse
32
+ // Markdown in unchanged history. The row that changed is the one that renders.
38
33
  const live = messages.slice(inScrollback);
39
- return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Static, { items: rows, children: (row) => row.kind === 'header' ? (_jsx(Box, { children: header }, "header")) : raw ? (_jsx(RawMessageRow, { message: row.message, prev: row.prev }, row.message.id)) : (_jsx(MessageRow, { message: row.message, prev: row.prev, spinner: "", hyperlinks: hyperlinks }, row.message.id)) }, resetKey), showLive
40
- ? live.map((message, i) => raw ? (_jsx(RawMessageRow, { message: message, prev: messages[inScrollback + i - 1] }, message.id)) : (_jsx(LiveRow, { message: message, prev: messages[inScrollback + i - 1], spinner: "", hyperlinks: hyperlinks }, message.id)))
41
- : null, showLive && pending && raw ? (_jsx(RawMessageRow, { message: pending, prev: messages[messages.length - 1] })) : showLive && pending ? (_jsx(MessageRow, { message: pending, prev: messages[messages.length - 1], spinner: spinner, hyperlinks: hyperlinks })) : null, showLive && messages.length === 0 && !pending ? (_jsx(Box, { paddingY: 1, children: _jsxs(Text, { color: theme.text.muted, children: ["Type a message to begin \u00B7 ", _jsx(Text, { color: theme.text.secondary, children: "/help" }), " for commands"] }) })) : null] }));
34
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Static, { items: rows, children: (row) => row.kind === 'header' ? (_jsx(Box, { children: header }, "header")) : raw ? (_jsx(RawMessageRow, { message: row.message, prev: row.prev }, row.message.id)) : (_jsx(MessageRow, { message: row.message, prev: row.prev, hyperlinks: hyperlinks }, row.message.id)) }, resetKey), showLive
35
+ ? live.map((message, i) => raw ? (_jsx(RawMessageRow, { message: message, prev: messages[inScrollback + i - 1] }, message.id)) : (_jsx(LiveRow, { message: message, prev: messages[inScrollback + i - 1], hyperlinks: hyperlinks }, message.id)))
36
+ : null, showLive && pending && raw ? (_jsx(RawMessageRow, { message: pending, prev: messages[messages.length - 1] })) : showLive && pending ? (_jsx(MessageRow, { message: pending, prev: messages[messages.length - 1], hyperlinks: hyperlinks })) : null, showLive && messages.length === 0 && !pending ? (_jsx(Box, { paddingY: 1, children: _jsxs(Text, { color: theme.text.muted, children: ["Type a message to begin \u00B7 ", _jsx(Text, { color: theme.text.secondary, children: "/help" }), " for commands"] }) })) : null] }));
42
37
  }
43
38
  /**
44
39
  * A row in the live window.
45
40
  *
46
41
  * Memoised on the whole props object rather than on a hand-picked key. React's
47
- * default shallow compare over `{message, prev, spinner}` is already exactly
42
+ * default shallow compare over `{message, prev, hyperlinks}` is already exactly
48
43
  * "has anything about this row changed": the transcript is held as immutable
49
44
  * rows, so an update rebuilds only the rows it touches and leaves every other
50
45
  * object identical. A `(id, detailExpanded)` key would be the same answer for
@@ -78,11 +73,11 @@ function RawMessageRow({ message, prev, }) {
78
73
  ].join('\n');
79
74
  return (_jsx(Box, { flexDirection: "column", marginTop: prev ? 1 : 0, children: _jsx(Text, { wrap: "wrap", children: text }) }));
80
75
  }
81
- function MessageRow({ message, prev, spinner, hyperlinks, }) {
76
+ function MessageRow({ message, prev, hyperlinks, }) {
82
77
  // Assistant content is projected inside <Markdown>, its actual renderer.
83
78
  // The other roles flow straight into Ink here and need the projection now.
84
79
  const content = message.role === 'assistant' ? message.content : terminalDisplayText(message.content);
85
- const glyph = message.pending ? spinner : (message.glyph ?? glyphForRole(message.role));
80
+ const glyph = message.glyph ?? glyphForRole(message.role);
86
81
  // The `⎿` tool-result gutter is rendered dim so the call line leads.
87
82
  const glyphColor = message.glyphColor ?? (glyph === '⎿' ? theme.text.muted : glyphColorForRole(message.role));
88
83
  // One blank line before each entry, except the first and `⎿` result rows,
@@ -93,48 +88,42 @@ function MessageRow({ message, prev, spinner, hyperlinks, }) {
93
88
  }
94
89
  /**
95
90
  * Collapsible tool diff / output, aligned under the content gutter.
96
- *
97
- * `expanded` comes from the ROW, and that is now load-bearing in the opposite
98
- * direction from the reason it was written.
99
- *
100
- * It used to say that a view-wide setting could not work, because every
101
- * finalized row went through `<Static>`: that renders each item once and calls
102
- * the CURRENT render function only for items it has not emitted yet, so a flag
103
- * flipped now would apply to rows that have not happened and to none of the
104
- * rows on screen. True of a row in scrollback, and it is why `/expand` pushes a
105
- * new row carrying the same lines rather than reopening the old one.
106
- *
107
- * It is not true of the live window. Those rows are re-rendered from state on
108
- * every frame, so flipping this flag on one of them redraws that row in place —
109
- * which is what the expand key now does, for the rows an operator is actually
110
- * looking at. The flag stays on the row rather than becoming view-wide because
111
- * the two mechanisms have to coexist: `/expand` still appends for anything that
112
- * has settled into scrollback, and a view-wide flag would mean something
113
- * different to each half.
91
+ * Ctrl+O expands live rows in place or reprints the latest settled body.
114
92
  */
115
93
  function DetailBlock({ lines, expanded, detailRef, }) {
116
- const { shown, hidden } = splitDetail(lines.map(terminalDisplayText), expanded);
94
+ const shown = splitDetail(lines.map(terminalDisplayText), expanded, detailRef);
117
95
  // A dim left rule (`▏`) under the gutter frames the output as a block,
118
96
  // so tool output is visibly not the assistant speaking.
119
97
  const Rule = () => (_jsx(Box, { width: 2, flexShrink: 0, children: _jsx(Text, { color: theme.text.muted, children: "\u258F" }) }));
120
- return (_jsxs(Box, { flexDirection: "column", paddingLeft: 1, children: [shown.map((line, i) => (_jsxs(Box, { flexDirection: "row", children: [_jsx(Rule, {}), _jsx(Box, { flexGrow: 1, children: _jsx(Text, { color: detailLineColor(line), wrap: "wrap", children: line.length > 0 ? line : ' ' }) })] }, `d-${i}`))), hidden > 0 ? (_jsxs(Box, { flexDirection: "row", children: [_jsx(Rule, {}), _jsxs(Text, { color: theme.text.muted, children: ["\u2026 +", hidden, " lines", detailRef === undefined ? '' : ` · /expand ${detailRef}`] })] })) : null] }));
98
+ return (_jsx(Box, { flexDirection: "column", paddingLeft: 1, children: shown.map((line, i) => (
99
+ // biome-ignore lint/suspicious/noArrayIndexKey: these rows have no local state; expansion replaces their text in place.
100
+ _jsxs(Box, { flexDirection: "row", children: [_jsx(Rule, {}), _jsx(Box, { flexGrow: 1, children: _jsx(Text, { color: detailLineColor(line), wrap: "wrap", children: line.length > 0 ? line : ' ' }) })] }, `d-${i}`))) }));
121
101
  }
122
- /**
123
- * Whether a body will be truncated, and so will print a hint naming itself.
124
- *
125
- * Exported because only bodies that actually collapse get a `/expand` number,
126
- * and this file owns `COLLAPSE_LINES`. Numbering the rest would produce numbers
127
- * no hint ever shows: gaps in the sequence, a bare `/expand` that reprints a
128
- * two-line body while the truncated one above it stays hidden, and a
129
- * "there are N" message counting blocks the operator was never offered.
130
- */
102
+ /** Whether the preview hides text and App should mark the body as expandable. */
131
103
  export function willCollapse(detail) {
132
- return detail !== undefined && detail.length > COLLAPSE_LINES;
104
+ return (detail !== undefined &&
105
+ (detail.length > COLLAPSE_LINES ||
106
+ detail.some((line) => terminalDisplayText(line).length > PREVIEW_LINE_CHARS)));
133
107
  }
134
- /** How much of a body prints, and how much stays behind the hint. */
135
- function splitDetail(lines, expanded) {
136
- const shown = expanded ? lines : lines.slice(0, COLLAPSE_LINES);
137
- return { shown, hidden: lines.length - shown.length };
108
+ /** One projection for rendered rows and their height estimate; source lines stay intact. */
109
+ function splitDetail(lines, expanded, detailRef) {
110
+ if (expanded)
111
+ return lines;
112
+ const fragmentLines = COLLAPSE_LINES / 2;
113
+ const selected = lines.length > COLLAPSE_LINES
114
+ ? [...lines.slice(0, fragmentLines), ...lines.slice(-fragmentLines)]
115
+ : lines;
116
+ const hidden = lines.length - selected.length;
117
+ const clipped = selected.some((line) => line.length > PREVIEW_LINE_CHARS);
118
+ const shown = selected.map((line) => line.length > PREVIEW_LINE_CHARS
119
+ ? `${line.slice(0, PREVIEW_LINE_CHARS - 1).replace(/[\uD800-\uDBFF]$/, '')}…`
120
+ : line);
121
+ const action = detailRef === undefined ? '' : ' · ctrl+o';
122
+ if (hidden > 0) {
123
+ const hint = `… ${hidden} line${hidden === 1 ? '' : 's'} omitted${action}${clipped ? ' · shortened preview' : ''}`;
124
+ return [...shown.slice(0, fragmentLines), hint, ...shown.slice(fragmentLines)];
125
+ }
126
+ return clipped ? [...shown, `… line shortened${action}`] : shown;
138
127
  }
139
128
  /**
140
129
  * Every line a row's body will occupy, hint row included.
@@ -150,7 +139,7 @@ export function renderedDetailLines(message) {
150
139
  const lines = message.detail;
151
140
  if (!lines || lines.length === 0)
152
141
  return [];
153
- const { shown, hidden } = splitDetail(lines.map(terminalDisplayText), message.detailExpanded === true);
142
+ const shown = splitDetail(lines.map(terminalDisplayText), message.detailExpanded === true, message.detailRef);
154
143
  // Indented by the gutter this block actually renders inside: `paddingLeft={1}`
155
144
  // plus the two-column `▏` rule. Those columns are not available to the text,
156
145
  // so measuring a body line against the full terminal width under-counts how
@@ -158,14 +147,7 @@ export function renderedDetailLines(message) {
158
147
  // redrawable region too far. The prefix is what the estimator measures, so the
159
148
  // arithmetic is done by making the string the width it really is.
160
149
  const gutter = ' ';
161
- const body = shown.map((line) => gutter + line);
162
- // The hint's real text, `/expand n` included, because that is what wraps.
163
- return hidden > 0
164
- ? [
165
- ...body,
166
- `${gutter}… +${hidden} lines${message.detailRef === undefined ? '' : ` · /expand ${message.detailRef}`}`,
167
- ]
168
- : body;
150
+ return shown.map((line) => gutter + line);
169
151
  }
170
152
  function detailLineColor(line) {
171
153
  if (line.startsWith('+'))
@@ -174,24 +156,12 @@ function detailLineColor(line) {
174
156
  return theme.status.error;
175
157
  return theme.text.muted;
176
158
  }
177
- function useSpinner(active) {
178
- const [frame, setFrame] = useState(0);
179
- useEffect(() => {
180
- if (!active)
181
- return;
182
- const interval = setInterval(() => {
183
- setFrame((f) => (f + 1) % SPINNER_FRAMES.length);
184
- }, 80);
185
- return () => clearInterval(interval);
186
- }, [active]);
187
- return SPINNER_FRAMES[frame] ?? '⠋';
188
- }
189
159
  function glyphForRole(role) {
190
160
  switch (role) {
191
161
  case 'user':
192
- return '>';
162
+ return '›';
193
163
  case 'assistant':
194
- return '✦';
164
+ return '∴';
195
165
  case 'system':
196
166
  return '·';
197
167
  case 'tool':
@@ -1 +1 @@
1
- {"version":3,"file":"Transcript.js","sourceRoot":"","sources":["../../src/tui/Transcript.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Transcript.js","sourceRoot":"","sources":["../../src/tui/Transcript.tsx"],"names":[],"mappings":"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"}
@@ -20,13 +20,14 @@
20
20
  * `emptySession()` whose `send()` yields a single error event so the UI
21
21
  * renders an actionable hint rather than crashing.
22
22
  */
23
- import { type AuthorizationRule, type CheckpointStore, type CompactionResult, type CostInfo, type DurableRunEntry, type FencingToken, type GoalRoundAuthority, type LLMProvider, type Message, type ModelInfo, type ProjectId, type ReasoningEffort, type ResumeHandler, type ResumeOutcome, type ReviewAnswer, type RunEvent, type RunId, type SessionGoalStore, type SessionId, type StopReason, type TenantId, type ToolCallSummary, type ToolCallView, type ToolPresenter, ToolRegistry, type ToolResultView, type TopicId } from '@namzu/sdk';
24
- import type { PluginConfig, SandboxConfig, WebConfig } from '../config/schema.js';
23
+ import { type AuthorizationRule, type BackgroundJob, type CheckpointStore, type CompactionResult, type CostInfo, type DurableRunEntry, type FencingToken, type GoalRoundAuthority, type LLMProvider, type Message, type ModelInfo, type ProjectId, type ReasoningEffort, type ResumeHandler, type ResumeOutcome, type ReviewAnswer, type RunEvent, type RunId, type SessionGoalStore, type SessionId, type StopReason, type TaskStore, type TenantId, type TokenBudgetSummary, type ToolCallView, type ToolPresenter, ToolRegistry, type ToolResultView, type ToolReviewAnswer, type ToolReviewPrompt, type ToolReviewRequest, type TopicId, batchNeedsReview } from '@namzu/sdk';
24
+ import { FileCheckpointStore } from '../checkpoints/store.js';
25
+ import type { CompactionCliConfig, HooksConfig, PluginConfig, RunLimitsConfig, SandboxConfig, WebConfig } from '../config/schema.js';
25
26
  import { type SandboxSummary } from '../context/sandbox.js';
26
27
  import { type ConnectedMcpServer, type FailedMcpServer, type McpServersConfig } from '../integrations/mcp/servers.js';
27
28
  import { type DetectedProvider, type Preferences, type ProviderId } from '../integrations/providers/index.js';
28
29
  import type { SubagentActivitySource } from '../integrations/subagents/activity.js';
29
- import { type PermissionMode } from '../permissions/mode.js';
30
+ import type { PermissionMode } from '../permissions/mode.js';
30
31
  export type AgentEvent = {
31
32
  readonly kind: 'delta';
32
33
  readonly text: string;
@@ -75,8 +76,21 @@ export type AgentEvent = {
75
76
  readonly hidden?: boolean;
76
77
  /** Output lines shown (collapsible) under the result. */
77
78
  readonly detail?: readonly string[];
79
+ }
80
+ /**
81
+ * The model thinking, for the live region only. `text` is a delta;
82
+ * `done` marks the end of a block. Never a transcript row: reasoning is
83
+ * ephemeral in the kernel's own transcript and is shown here for the
84
+ * same reason a spinner is — so a long silence reads as work.
85
+ */
86
+ | {
87
+ readonly kind: 'reasoning';
88
+ readonly text: string;
89
+ readonly done?: boolean;
78
90
  } | {
79
91
  readonly kind: 'usage';
92
+ /** Parent and all descendants, reported separately from own usage. */
93
+ readonly budget?: TokenBudgetSummary;
80
94
  /** CUMULATIVE run spend. Grows every turn; never a context size. */
81
95
  readonly totalTokens: number;
82
96
  /**
@@ -124,10 +138,25 @@ export type AgentEvent = {
124
138
  * model being stupid rather than the harness dropping context.
125
139
  */
126
140
  | {
141
+ readonly kind: 'job';
142
+ readonly jobId: string;
143
+ readonly command: string;
144
+ readonly status: 'exited' | 'killed';
145
+ readonly exitCode?: number;
146
+ readonly signal?: string;
147
+ } | {
127
148
  readonly kind: 'context';
128
149
  readonly text: string;
129
150
  /** False when the compaction declined and the history is unchanged. */
130
151
  readonly shed: boolean;
152
+ /** Tool-result bodies cleared by this pass, when it was a clearing pass. */
153
+ readonly cleared?: number;
154
+ /** Assistant narrations stubbed by this pass, when it was a clearing pass. */
155
+ readonly stubbed?: number;
156
+ /** Tokens this pass reclaimed, by the same estimate the trigger uses. */
157
+ readonly reclaimedTokens?: number;
158
+ /** True when this pass replaced older history with a summary. */
159
+ readonly summarised?: boolean;
131
160
  }
132
161
  /**
133
162
  * A member of the provider chain could not serve; a later one is now.
@@ -183,9 +212,13 @@ export type AgentEvent = {
183
212
  | {
184
213
  readonly kind: 'done';
185
214
  readonly stopReason?: StopReason;
215
+ readonly budget?: TokenBudgetSummary;
186
216
  } | {
187
217
  /** A recoverable run stopped with an addressable checkpoint. */
188
218
  readonly kind: 'paused';
219
+ readonly budget?: TokenBudgetSummary;
220
+ /** The run that paused: with the checkpoint, what `resumePaused` needs. */
221
+ readonly runId: string;
189
222
  readonly checkpointId: string;
190
223
  readonly reason: string;
191
224
  readonly failure?: Extract<RunEvent, {
@@ -199,6 +232,7 @@ export type AgentEvent = {
199
232
  }>['explanation'];
200
233
  } | {
201
234
  readonly kind: 'error';
235
+ readonly budget?: TokenBudgetSummary;
202
236
  readonly message: string;
203
237
  readonly failure?: Extract<RunEvent, {
204
238
  type: 'run_failed';
@@ -218,18 +252,10 @@ export interface PermissionToolCall {
218
252
  readonly input: unknown;
219
253
  readonly isDestructive: boolean;
220
254
  }
221
- export interface PermissionRequest {
222
- readonly toolCalls: readonly PermissionToolCall[];
223
- }
224
- export type PermissionDecision = {
225
- readonly kind: 'approve';
226
- } | {
227
- readonly kind: 'approve-all';
228
- } | {
229
- readonly kind: 'reject';
230
- readonly feedback?: string;
231
- };
232
- export type PermissionFn = (req: PermissionRequest) => Promise<PermissionDecision>;
255
+ /** The batch a person is asked about — the kernel's `ToolReviewRequest`. */
256
+ export type PermissionRequest = ToolReviewRequest;
257
+ export type PermissionDecision = ToolReviewAnswer;
258
+ export type PermissionFn = ToolReviewPrompt;
233
259
  /** One question the model put to the operator through `ask_user_question`. */
234
260
  export type UserQuestion = Extract<Parameters<ResumeHandler>[0], {
235
261
  type: 'user_question';
@@ -265,6 +291,8 @@ export interface SendOptions {
265
291
  * input that has not crossed that boundary yet.
266
292
  */
267
293
  readonly inboundMessages?: () => Message[];
294
+ /** Resolve when undelivered input exists; abort removes this waiter. */
295
+ readonly waitForInbound?: (signal: AbortSignal) => Promise<void>;
268
296
  /** Model-specific reasoning effort for this turn's main query. */
269
297
  readonly effort?: ReasoningEffort;
270
298
  /**
@@ -319,6 +347,13 @@ export interface ResumeDurableParams {
319
347
  readonly claimFence?: FencingToken;
320
348
  readonly signal?: AbortSignal;
321
349
  }
350
+ export interface ResumePausedParams {
351
+ /** The run the `paused` event named. */
352
+ readonly runId: string;
353
+ /** The checkpoint the `paused` event named. */
354
+ readonly checkpointId: string;
355
+ readonly signal?: AbortSignal;
356
+ }
322
357
  export interface AgentSession {
323
358
  readonly hasProvider: boolean;
324
359
  /**
@@ -365,6 +400,16 @@ export interface AgentSession {
365
400
  * moment, and a line about what just happened should say what was true then.
366
401
  */
367
402
  readonly toolNames: () => readonly string[];
403
+ /** This session's background jobs, running and ended. Absent on a session with no registry. */
404
+ readonly jobs?: () => readonly BackgroundJob[];
405
+ /** The shell hooks this session runs, by event; what `/hooks` lists. */
406
+ readonly hooks?: HooksConfig;
407
+ /** Files as they were before each turn's writes; what `/restore` uses. */
408
+ readonly checkpoints?: FileCheckpointStore;
409
+ /** The directories besides the working directory the file tools may reach; `/add-dir` adds one. */
410
+ readonly directories?: SessionDirectories;
411
+ /** Be told when one of this session's jobs ends, whether or not a turn is running. */
412
+ readonly onJobExit?: (listener: (job: BackgroundJob) => void) => () => void;
368
413
  /**
369
414
  * Shrink a conversation on request, returning the replacement history.
370
415
  *
@@ -449,6 +494,10 @@ export interface AgentSession {
449
494
  * the runtime to find out.
450
495
  */
451
496
  readonly agentIds: readonly string[];
497
+ /** Actual task store of this conversation's current/latest run; absent before a run starts. */
498
+ readonly currentTaskStore?: () => TaskStore | undefined;
499
+ /** Forget the selected run when the operator leaves its conversation. Does not delete tasks. */
500
+ readonly resetTaskStore?: () => void;
452
501
  /** Children created in this process, available for the TUI's observational view. */
453
502
  readonly subagents?: SubagentActivitySource;
454
503
  /**
@@ -510,6 +559,22 @@ export interface AgentSession {
510
559
  * resumed past — the answer is a human's, not a drainer's.
511
560
  */
512
561
  resumeDurable(params: ResumeDurableParams): Promise<ResumeOutcome>;
562
+ /**
563
+ * Continue THIS session's own run after the provider paused it, from the
564
+ * checkpoint the pause named, streaming events as the resumed run makes
565
+ * them.
566
+ *
567
+ * `resumeDurable` is for a run some other process started and takes the
568
+ * listing and the store the caller found it in. A pause inside this
569
+ * session already knows both: the run's scope is this session's and its
570
+ * checkpoints are in the store the turn wrote to. What a headless caller
571
+ * lacked was a way to say "wait, then go on" — it could only exit and be
572
+ * re-prompted from whatever notes the run left behind, losing the run's
573
+ * own context. A run parked on a human decision is not resumed past: it
574
+ * comes back as an error naming the fact, because the answer is a
575
+ * person's.
576
+ */
577
+ resumePaused(params: ResumePausedParams): AsyncIterable<AgentEvent>;
513
578
  /**
514
579
  * Cancel and settle live sends, compactions and durable resumes, then release
515
580
  * what the session holds — today, the external tool servers.
@@ -650,6 +715,14 @@ export interface AgentSessionOptions {
650
715
  * the model is never offered a question it would ask into the void.
651
716
  */
652
717
  readonly askUser?: boolean;
718
+ /** See `NamzuCliConfig.hooks`. Attached to the plugin lifecycle manager. */
719
+ readonly hooks?: HooksConfig;
720
+ /** See `NamzuCliConfig.additionalDirectories`, absolute. `/add-dir` extends it for the session. */
721
+ readonly additionalDirectories?: readonly string[];
722
+ /** See `NamzuCliConfig.compaction`. Absent means the kernel's structured strategy. */
723
+ readonly compaction?: CompactionCliConfig;
724
+ /** See `NamzuCliConfig.limits`: how many model calls and tokens one run may spend. */
725
+ readonly limits?: RunLimitsConfig;
653
726
  /**
654
727
  * Where this session's run events are recorded, if anywhere.
655
728
  *
@@ -745,54 +818,46 @@ export declare function listProviderModels(id: ProviderId, det: DetectedProvider
745
818
  name: string;
746
819
  }>>;
747
820
  export interface RunScope {
821
+ /**
822
+ * The active conversation. Chosen before the conversation is written
823
+ * and never replaced by a provisional value; it changes only when the
824
+ * operator moves to another conversation (/resume, /fork, /new), which
825
+ * is why it is the one field here that is not readonly.
826
+ */
748
827
  sessionId: SessionId;
749
828
  readonly topicId: TopicId;
750
829
  readonly projectId: ProjectId;
751
830
  readonly tenantId: TenantId;
752
831
  }
832
+ /** What `/add-dir` talks to. */
833
+ export interface SessionDirectories {
834
+ list(): readonly string[];
835
+ add(path: string): Promise<{
836
+ readonly added: boolean;
837
+ readonly path: string;
838
+ readonly reason?: string;
839
+ }>;
840
+ }
753
841
  /**
754
- * Bridge the SDK's HITL `tool_review` request to the TUI's permission
755
- * callback. Read-only batches (nothing destructive) run silently; batches
756
- * with a destructive call prompt the user unless they've already chosen
757
- * "approve all" for the session. Plans and iteration checkpoints are
758
- * auto-continued (the TUI doesn't use plan mode).
842
+ * The kernel's review policy with the TUI's prompt behind it.
843
+ *
844
+ * The five modes, the exemptions and the batch rule live in `@namzu/sdk`
845
+ * (`createReviewHandler`); what this application adds is the person to ask
846
+ * and the session's "approve all" box, which the screen also reads.
759
847
  */
760
848
  export declare function makeResumeHandler(approval: {
761
849
  all: boolean;
762
- }, onPermission: PermissionFn | undefined, mode?: PermissionMode,
850
+ }, onPermission: PermissionFn | undefined, mode?: PermissionMode, exempt?: (name: string, input: unknown) => boolean): ResumeHandler;
763
851
  /**
764
- * Which calls skip the prompt. Injected rather than reached for, so this
765
- * handler stays testable without a registry — and so the answer comes from
766
- * the live roster at the moment of the call.
852
+ * Whether a call runs without asking. The kernel's rule: a trusted read-only
853
+ * declaration or a named bookkeeping write, never a fetch, never a tool the
854
+ * registry does not know.
767
855
  */
768
- exempt?: (name: string, input: unknown) => boolean): ResumeHandler;
769
- /**
770
- * Whether a call runs without asking: it declares itself read-only, or it is a
771
- * named exemption above.
772
- *
773
- * The read-only half comes from the tool's own `isReadOnly(input)`, never from
774
- * a list of names kept here. A name list in the consumer is a second source of
775
- * truth for a property the producer already states: a new read-only tool
776
- * missing from it merely gets prompted, but a RENAMED tool silently changes
777
- * posture with nothing to notice.
778
- *
779
- * Resolved per call rather than snapshotted, because the roster changes after
780
- * this module has run — the task tools are registered deferred inside
781
- * `query()`, and tool servers connect during startup, so anything computed
782
- * eagerly would be answering about a registry that no longer exists.
783
- *
784
- * A tool the registry does not know, or one that declares nothing, prompts.
785
- * That is the safe-by-default direction the previous comment claimed and this
786
- * keeps: consent is the answer when the question cannot be established.
787
- */
788
- export declare function isPromptExempt(registry: ToolRegistry, name: string, input: unknown): boolean;
856
+ export declare const isPromptExempt: (registry: ToolRegistry, name: string, input: unknown) => boolean;
789
857
  /** The exempt roster, sorted, for the surface that has to NAME it. */
790
858
  export declare function promptExemptToolNames(registry: ToolRegistry): readonly string[];
791
- /**
792
- * A batch needs explicit approval when any call mutates state: flagged
793
- * destructive by the SDK, or not exempt from the prompt.
794
- */
795
- export declare function batchNeedsPrompt(toolCalls: readonly ToolCallSummary[], exempt: (name: string, input: unknown) => boolean): boolean;
859
+ /** A batch needs explicit approval when any call mutates state. */
860
+ export declare const batchNeedsPrompt: typeof batchNeedsReview;
796
861
  /**
797
862
  * Translate one SDK `RunEvent` into the TUI's `AgentEvent` vocabulary, or
798
863
  * `null` for events the chat surface doesn't render (iteration markers,
@@ -808,7 +873,7 @@ export declare function toAgentEvent(event: RunEvent, presenter: ToolPresenter):
808
873
  * server's, a plugin's — could not get a diff no matter what it did.
809
874
  *
810
875
  * The tool now says which admitted shape it wants, and this decides what
811
- * that looks like in a terminal. Clamping and the `STDOUT:`/`STDERR:`
876
+ * that looks like in a terminal. Collapsing and the `STDOUT:`/`STDERR:`
812
877
  * cleanup stay here on purpose: how many rows fit and how a shell labels
813
878
  * its streams are properties of this surface, not of the tool.
814
879
  */
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/tui/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/tui/agent.ts"],"names":[],"mappings":"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"}