@namzu/cli 19.0.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 (53) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/dist/integrations/subagents/runtime.d.ts +10 -4
  3. package/dist/integrations/subagents/runtime.d.ts.map +1 -1
  4. package/dist/integrations/subagents/runtime.js +179 -39
  5. package/dist/integrations/subagents/runtime.js.map +1 -1
  6. package/dist/memory/presentation.d.ts +9 -0
  7. package/dist/memory/presentation.d.ts.map +1 -0
  8. package/dist/memory/presentation.js +37 -0
  9. package/dist/memory/presentation.js.map +1 -0
  10. package/dist/permissions/mode.d.ts +3 -0
  11. package/dist/permissions/mode.d.ts.map +1 -1
  12. package/dist/permissions/mode.js +18 -0
  13. package/dist/permissions/mode.js.map +1 -1
  14. package/dist/tui/AgentExplorer.d.ts +1 -1
  15. package/dist/tui/AgentExplorer.d.ts.map +1 -1
  16. package/dist/tui/AgentExplorer.js +13 -5
  17. package/dist/tui/AgentExplorer.js.map +1 -1
  18. package/dist/tui/App.d.ts.map +1 -1
  19. package/dist/tui/App.js +104 -47
  20. package/dist/tui/App.js.map +1 -1
  21. package/dist/tui/BrandHeader.d.ts +1 -1
  22. package/dist/tui/BrandHeader.d.ts.map +1 -1
  23. package/dist/tui/BrandHeader.js +2 -1
  24. package/dist/tui/BrandHeader.js.map +1 -1
  25. package/dist/tui/Composer.d.ts +1 -1
  26. package/dist/tui/Composer.d.ts.map +1 -1
  27. package/dist/tui/Composer.js +2 -7
  28. package/dist/tui/Composer.js.map +1 -1
  29. package/dist/tui/ComposerFrame.d.ts.map +1 -1
  30. package/dist/tui/ComposerFrame.js +1 -1
  31. package/dist/tui/ComposerFrame.js.map +1 -1
  32. package/dist/tui/PermissionOverlay.d.ts +2 -2
  33. package/dist/tui/PermissionOverlay.d.ts.map +1 -1
  34. package/dist/tui/PermissionOverlay.js +6 -5
  35. package/dist/tui/PermissionOverlay.js.map +1 -1
  36. package/dist/tui/Picker.d.ts.map +1 -1
  37. package/dist/tui/Picker.js +8 -5
  38. package/dist/tui/Picker.js.map +1 -1
  39. package/dist/tui/Transcript.d.ts +1 -9
  40. package/dist/tui/Transcript.d.ts.map +1 -1
  41. package/dist/tui/Transcript.js +31 -43
  42. package/dist/tui/Transcript.js.map +1 -1
  43. package/dist/tui/agent.d.ts +3 -1
  44. package/dist/tui/agent.d.ts.map +1 -1
  45. package/dist/tui/agent.js +34 -21
  46. package/dist/tui/agent.js.map +1 -1
  47. package/dist/tui/slashCommands.d.ts +5 -0
  48. package/dist/tui/slashCommands.d.ts.map +1 -1
  49. package/dist/tui/slashCommands.js +187 -15
  50. package/dist/tui/slashCommands.js.map +1 -1
  51. package/dist/tui/types.d.ts +3 -12
  52. package/dist/tui/types.d.ts.map +1 -1
  53. package/package.json +3 -3
@@ -2,6 +2,24 @@ import { REVIEW_MODES, isReviewMode } from '@namzu/sdk';
2
2
  export const PERMISSION_MODES = REVIEW_MODES;
3
3
  export { ACCEPT_EDITS_TOOLS, PLAN_MODE_REFUSAL } from '@namzu/sdk';
4
4
  export const isPermissionMode = isReviewMode;
5
+ export function permissionModeLabel(mode) {
6
+ switch (mode) {
7
+ case 'prompt':
8
+ return 'Ask before changes';
9
+ case 'accept-edits':
10
+ return 'Auto-approve edits';
11
+ case 'auto':
12
+ return 'Auto-approve tools';
13
+ case 'strict':
14
+ return 'Preapproved tools only';
15
+ case 'plan':
16
+ return 'Plan (read-only)';
17
+ }
18
+ }
19
+ /** Session-wide approval overrides prompting, but never plan or strict mode. */
20
+ export function effectivePermissionMode(mode, approvedAll) {
21
+ return approvedAll && (mode === 'prompt' || mode === 'accept-edits') ? 'auto' : mode;
22
+ }
5
23
  /** The behavior shown by both the permission selector and the session report. */
6
24
  export function permissionModeDescription(mode) {
7
25
  switch (mode) {
@@ -1 +1 @@
1
- {"version":3,"file":"mode.js","sourceRoot":"","sources":["../../src/permissions/mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAmB,YAAY,EAAE,MAAM,YAAY,CAAA;AA+BxE,MAAM,CAAC,MAAM,gBAAgB,GAA8B,YAAY,CAAA;AAEvE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAElE,MAAM,CAAC,MAAM,gBAAgB,GAAgD,YAAY,CAAA;AAEzF,iFAAiF;AACjF,MAAM,UAAU,yBAAyB,CAAC,IAAoB;IAC7D,QAAQ,IAAI,EAAE,CAAC;QACd,KAAK,QAAQ;YACZ,OAAO,wCAAwC,CAAA;QAChD,KAAK,cAAc;YAClB,OAAO,gEAAgE,CAAA;QACxE,KAAK,MAAM;YACV,OAAO,0DAA0D,CAAA;QAClE,KAAK,QAAQ;YACZ,OAAO,6DAA6D,CAAA;QACrE,KAAK,MAAM;YACV,OAAO,qDAAqD,CAAA;IAC9D,CAAC;AACF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAIrC;IACA,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;QAC3C,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO;gBACN,KAAK,EAAE,qCAAqC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,IAAI;aAC9F,CAAA;QACF,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAA;IAC3B,CAAC;IACD,IAAI,IAAI,CAAC,eAAe;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IACjD,4EAA4E;IAC5E,kEAAkE;IAClE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAA;AACtD,CAAC"}
1
+ {"version":3,"file":"mode.js","sourceRoot":"","sources":["../../src/permissions/mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAmB,YAAY,EAAE,MAAM,YAAY,CAAA;AA+BxE,MAAM,CAAC,MAAM,gBAAgB,GAA8B,YAAY,CAAA;AAEvE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAElE,MAAM,CAAC,MAAM,gBAAgB,GAAgD,YAAY,CAAA;AAEzF,MAAM,UAAU,mBAAmB,CAAC,IAAoB;IACvD,QAAQ,IAAI,EAAE,CAAC;QACd,KAAK,QAAQ;YACZ,OAAO,oBAAoB,CAAA;QAC5B,KAAK,cAAc;YAClB,OAAO,oBAAoB,CAAA;QAC5B,KAAK,MAAM;YACV,OAAO,oBAAoB,CAAA;QAC5B,KAAK,QAAQ;YACZ,OAAO,wBAAwB,CAAA;QAChC,KAAK,MAAM;YACV,OAAO,kBAAkB,CAAA;IAC3B,CAAC;AACF,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,uBAAuB,CACtC,IAAoB,EACpB,WAAoB;IAEpB,OAAO,WAAW,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA;AACrF,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,yBAAyB,CAAC,IAAoB;IAC7D,QAAQ,IAAI,EAAE,CAAC;QACd,KAAK,QAAQ;YACZ,OAAO,wCAAwC,CAAA;QAChD,KAAK,cAAc;YAClB,OAAO,gEAAgE,CAAA;QACxE,KAAK,MAAM;YACV,OAAO,0DAA0D,CAAA;QAClE,KAAK,QAAQ;YACZ,OAAO,6DAA6D,CAAA;QACrE,KAAK,MAAM;YACV,OAAO,qDAAqD,CAAA;IAC9D,CAAC;AACF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAIrC;IACA,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;QAC3C,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO;gBACN,KAAK,EAAE,qCAAqC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,IAAI;aAC9F,CAAA;QACF,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAA;IAC3B,CAAC;IACD,IAAI,IAAI,CAAC,eAAe;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IACjD,4EAA4E;IAC5E,kEAAkE;IAClE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAA;AACtD,CAAC"}
@@ -55,7 +55,7 @@ export interface AgentTranscriptProps {
55
55
  readonly terminalRows: number;
56
56
  readonly terminalColumns: number;
57
57
  }
58
- /** Bounded observational child transcript. Deliberately contains no Ink Static. */
58
+ /** Child screen; the parent keeps its Static owner and two footer rows mounted. */
59
59
  export declare function AgentTranscript({ agent, tailOffset, terminalRows, terminalColumns, }: AgentTranscriptProps): import("react/jsx-runtime").JSX.Element;
60
60
  export declare function agentPickerPageSize(terminalRows: number, wide?: boolean): number;
61
61
  export declare function agentTranscriptPageSize(terminalRows: number): number;
@@ -1 +1 @@
1
- {"version":3,"file":"AgentExplorer.d.ts","sourceRoot":"","sources":["../../src/tui/AgentExplorer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentExplorer.d.ts","sourceRoot":"","sources":["../../src/tui/AgentExplorer.tsx"],"names":[],"mappings":"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"}
@@ -6,7 +6,6 @@ import { selectionWindow } from './selection-window.js';
6
6
  import { terminalDisplayText } from './terminal-display.js';
7
7
  import { theme } from './theme.js';
8
8
  const MAX_PICKER_ROWS = 9;
9
- const MAX_TRANSCRIPT_ROWS = 12;
10
9
  const COCKPIT_FRAME_COLUMNS = 4;
11
10
  const WIDE_COCKPIT_INNER_COLUMNS = 84;
12
11
  /**
@@ -153,14 +152,22 @@ export function agentPhasePageSize(terminalRows, wide = true) {
153
152
  ? Math.max(1, Math.min(MAX_PICKER_ROWS, available))
154
153
  : Math.max(1, Math.min(4, Math.floor(available * 0.4)));
155
154
  }
156
- /** Bounded observational child transcript. Deliberately contains no Ink Static. */
155
+ /** Child screen; the parent keeps its Static owner and two footer rows mounted. */
157
156
  export function AgentTranscript({ agent, tailOffset, terminalRows, terminalColumns, }) {
158
157
  const page = agentTranscriptPage(agent, tailOffset, terminalRows, terminalColumns);
159
158
  const now = useLiveNow(agent.completedAt === undefined);
160
159
  const elapsed = formatElapsed((agent.completedAt ?? now) - agent.startedAt);
161
- return (_jsxs(Box, { flexDirection: "column", borderStyle: "single", borderColor: theme.border.default, paddingX: 1, children: [_jsxs(Box, { justifyContent: "space-between", children: [_jsxs(Text, { color: theme.text.primary, bold: true, wrap: "truncate-end", children: [statusGlyph(agent.status), " ", oneLine(agent.description || agent.agentId)] }), _jsxs(Text, { color: statusColor(agent.status), children: [statusLabel(agent.status), " \u00B7 ", elapsed] })] }), _jsxs(Text, { color: theme.text.muted, wrap: "truncate-end", children: [oneLine(agent.agentId), " \u00B7 ", agent.taskId ?? agent.viewId] }), _jsx(Box, { flexDirection: "column", paddingTop: 1, height: page.pageSize, children: page.rows.length === 0 ? (_jsx(Text, { color: theme.text.muted, children: "Waiting for this scheduler to expose child events\u2026" })) : (page.rows.map((line) => (_jsxs(Box, { children: [_jsx(Box, { width: 3, flexShrink: 0, children: _jsx(Text, { color: line.source !== 'prompt' && line.source.kind === 'tool'
160
+ const tailLabel = isTerminalStatus(agent.status) ? 'Latest' : 'Live';
161
+ const navigation = terminalColumns >= 70
162
+ ? `PgUp/PgDn · Home oldest · End ${tailLabel.toLowerCase()} · esc agents · q parent`
163
+ : terminalColumns >= 40
164
+ ? '↑↓ scroll · esc agents · q parent'
165
+ : terminalColumns >= 30
166
+ ? '↑↓ · esc list · q parent'
167
+ : 'esc list · q parent';
168
+ return (_jsxs(Box, { flexDirection: "column", height: page.pageSize + 8, flexShrink: 0, borderStyle: "single", borderColor: theme.accent.assistant, paddingX: 1, children: [_jsxs(Box, { justifyContent: "space-between", height: 1, flexShrink: 0, children: [_jsx(Box, { flexGrow: 1, minWidth: 0, children: _jsx(Text, { color: theme.accent.assistant, bold: true, wrap: "truncate-end", children: "Subagent" }) }), _jsx(Box, { flexShrink: 0, children: _jsxs(Text, { color: statusColor(agent.status), wrap: "truncate-end", children: [statusLabel(agent.status), terminalColumns >= 40 ? ` · ${elapsed}` : ''] }) })] }), _jsx(Text, { color: theme.text.primary, bold: true, wrap: "truncate-end", children: oneLine(agent.description || agent.agentId) }), _jsx(Box, { flexDirection: "column", marginTop: 1, height: page.pageSize, flexShrink: 0, children: page.rows.length === 0 ? (_jsx(Text, { color: theme.text.muted, wrap: "truncate-end", children: "Waiting for child output\u2026" })) : (page.rows.map((line) => (_jsxs(Box, { height: 1, flexShrink: 0, children: [_jsx(Box, { width: 3, flexShrink: 0, children: _jsx(Text, { color: line.source !== 'prompt' && line.source.kind === 'tool'
162
169
  ? statusColor(line.source.status)
163
- : lineColor(line), children: line.continuation ? ' ' : lineGlyph(line) }) }), _jsx(Text, { color: lineColor(line), children: line.text })] }, line.id)))) }), _jsxs(Box, { justifyContent: "space-between", paddingTop: 1, children: [_jsx(Text, { color: theme.text.muted, children: "PgUp/PgDn scroll \u00B7 Home oldest \u00B7 End live \u00B7 esc agents \u00B7 q parent" }), _jsx(Text, { color: theme.text.muted, children: page.total === 0 ? '0/0' : `${page.first}-${page.last}/${page.total}` })] })] }));
170
+ : lineColor(line), children: line.continuation ? ' ' : lineGlyph(line) }) }), _jsx(Text, { color: lineColor(line), children: line.text })] }, line.id)))) }), _jsxs(Box, { flexDirection: "column", marginTop: 1, height: 2, flexShrink: 0, children: [_jsxs(Text, { color: theme.text.muted, wrap: "truncate-end", children: [page.last === page.total ? tailLabel : 'History', " \u00B7", ' ', page.total === 0 ? '0/0' : `${page.first}-${page.last}/${page.total}`] }), _jsx(Text, { color: theme.text.muted, wrap: "truncate-end", children: navigation })] })] }));
164
171
  }
165
172
  export function agentPickerPageSize(terminalRows, wide = true) {
166
173
  const available = Math.max(2, terminalRows - 10);
@@ -169,7 +176,8 @@ export function agentPickerPageSize(terminalRows, wide = true) {
169
176
  : Math.max(1, Math.min(MAX_PICKER_ROWS, available - agentPhasePageSize(terminalRows, false)));
170
177
  }
171
178
  export function agentTranscriptPageSize(terminalRows) {
172
- return Math.max(3, Math.min(MAX_TRANSCRIPT_ROWS, terminalRows - 11));
179
+ // Two parent footer rows plus borders, heading, title, spacing and navigation.
180
+ return Math.max(1, terminalRows - 10);
173
181
  }
174
182
  export function maxAgentTranscriptTailOffset(agent, terminalRows, terminalColumns) {
175
183
  return Math.max(0, agentTranscriptRows(agent, terminalColumns).length - agentTranscriptPageSize(terminalRows));
@@ -1 +1 @@
1
- {"version":3,"file":"AgentExplorer.js","sourceRoot":"","sources":["../../src/tui/AgentExplorer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentExplorer.js","sourceRoot":"","sources":["../../src/tui/AgentExplorer.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../src/tui/App.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAQN,KAAK,OAAO,EAiBZ,MAAM,YAAY,CAAA;AA4HnB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AA8CvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAa/D,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAA;IACxB,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAA;IAC1D,0EAA0E;IAC1E,QAAQ,CAAC,cAAc,CAAC,EAAE,qBAAqB,CAAA;CAC/C;AAOD,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,EAAE;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;CAC5B,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;AAkNrB,6EAA6E;AAC7E,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,SAAS,MAAM,EAAE,CAM7F;AAED,sEAAsE;AACtE,wBAAgB,mBAAmB,CAClC,QAAQ,EAAE,SAAS,OAAO,EAAE,EAC5B,MAAM,EAAE,MAAM,MAAM,EACpB,iBAAiB,GAAE,SAAS,MAAM,EAAO,GACvC,SAAS,iBAAiB,EAAE,CAuE9B;AA+GD,wBAAgB,GAAG,CAAC,EACnB,GAAG,EAAE,UAAU,EACf,aAAa,EACb,cAAsC,GACtC,EAAE,QAAQ,2CAs1LV"}
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../src/tui/App.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAQN,KAAK,OAAO,EAiBZ,MAAM,YAAY,CAAA;AAkInB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AA8CvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAa/D,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAA;IACxB,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAA;IAC1D,0EAA0E;IAC1E,QAAQ,CAAC,cAAc,CAAC,EAAE,qBAAqB,CAAA;CAC/C;AAOD,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,EAAE;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;CAC5B,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;AAkNrB,6EAA6E;AAC7E,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,SAAS,MAAM,EAAE,CAM7F;AAED,sEAAsE;AACtE,wBAAgB,mBAAmB,CAClC,QAAQ,EAAE,SAAS,OAAO,EAAE,EAC5B,MAAM,EAAE,MAAM,MAAM,EACpB,iBAAiB,GAAE,SAAS,MAAM,EAAO,GACvC,SAAS,iBAAiB,EAAE,CAuE9B;AAgHD,wBAAgB,GAAG,CAAC,EACnB,GAAG,EAAE,UAAU,EACf,aAAa,EACb,cAAsC,GACtC,EAAE,QAAQ,2CAo4LV"}
package/dist/tui/App.js CHANGED
@@ -25,8 +25,9 @@ import { appendMessages, archiveConversation, forkConversation, forkConversation
25
25
  import { conversationMarkdown, writeConversationExport, } from '../integrations/sessions/transcript-export.js';
26
26
  import { isTrusted, trustDir } from '../integrations/trust/store.js';
27
27
  import { checkUpdates } from '../integrations/updates.js';
28
- import { appendMemory, composeMemoryPrompt, readMemory } from '../memory/store.js';
29
- import { permissionModeDescription } from '../permissions/mode.js';
28
+ import { renderMemoryReport } from '../memory/presentation.js';
29
+ import { appendMemory, readMemory } from '../memory/store.js';
30
+ import { effectivePermissionMode, permissionModeDescription, permissionModeLabel, } from '../permissions/mode.js';
30
31
  import { composeSkillsPrompt, discoverSkills, loadSkillBody } from '../skills/store.js';
31
32
  import { discoverUserCommands } from '../user-commands/store.js';
32
33
  import { AgentCockpit, AgentTaskPanel, AgentTranscript, activeSubagentCohorts, agentCockpitIsWide, agentPhasePageSize, agentPhases, agentPickerPageSize, agentTranscriptPageSize, maxAgentTranscriptTailOffset, } from './AgentExplorer.js';
@@ -591,14 +592,13 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
591
592
  const surface = agentSurfaceRef.current;
592
593
  if (!surface)
593
594
  return;
594
- const activeCohorts = activeSubagentCohorts(next);
595
- if (activeCohorts.length === 0) {
595
+ if (next.length === 0) {
596
596
  setAgentSurface(null);
597
597
  return;
598
598
  }
599
- if (activeCohorts.some((agent) => agent.viewId === surface.selectedId))
599
+ if (next.some((agent) => agent.viewId === surface.selectedId))
600
600
  return;
601
- const phases = agentPhases(activeCohorts);
601
+ const phases = agentPhases(next);
602
602
  const fallbackPhase = phases.find((phase) => phase.id === surface.selectedPhaseId) ?? phases[0];
603
603
  const fallbackAgent = fallbackPhase?.agents[0];
604
604
  if (!fallbackPhase || !fallbackAgent) {
@@ -613,7 +613,7 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
613
613
  });
614
614
  }, [setAgentSurface]);
615
615
  const openAgentCockpit = useCallback(() => {
616
- const agents = activeSubagentCohorts(subagentsRef.current);
616
+ const agents = subagentsRef.current;
617
617
  const firstPhase = agentPhases(agents)[0];
618
618
  const firstAgent = firstPhase?.agents[0];
619
619
  if (!firstPhase || !firstAgent)
@@ -941,7 +941,7 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
941
941
  }, [nextId]);
942
942
  const applyPermissionMode = useCallback((mode) => {
943
943
  if (!session?.hasProvider) {
944
- pushMessage('system', 'No active session — pick a provider before changing permissions.');
944
+ pushMessage('system', 'Choose a model before changing permissions.');
945
945
  return;
946
946
  }
947
947
  if (state !== 'idle' ||
@@ -950,18 +950,18 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
950
950
  queuedRef.current.length > 0 ||
951
951
  permissionResolveRef.current !== null ||
952
952
  compactingRef.current) {
953
- pushMessage('system', 'Permission mode was not changed: wait for the active turn, prompt, compaction, and queued work to settle.');
953
+ pushMessage('system', 'Permissions were not changed. Finish or stop the current work first.');
954
954
  return;
955
955
  }
956
956
  if (!session.resetApprovalLatch) {
957
- pushMessage('system', 'Permission mode was not changed: this embedded session cannot revoke an earlier "approve all" choice. Reconnect it before changing modes.');
957
+ pushMessage('system', 'This session cannot reset approvals. Reconnect before changing permissions.');
958
958
  return;
959
959
  }
960
960
  session.resetApprovalLatch();
961
961
  permissionModeRef.current = mode;
962
962
  permissionModeSourceRef.current = 'session';
963
963
  setPermissionModeState(mode);
964
- pushMessage('system', `Permission mode changed to ${mode}. Any earlier "approve all" choice was revoked. Declarative deny rules and the built-in safety gate still take precedence.`);
964
+ pushMessage('system', `Permissions: ${permissionModeLabel(mode)} for this session. ${permissionModeDescription(mode)}`);
965
965
  }, [hasUnsettledTurn, pushMessage, session, state]);
966
966
  const applyReasoningEffort = useCallback((effort) => {
967
967
  if (!session?.hasProvider) {
@@ -1452,6 +1452,16 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
1452
1452
  return;
1453
1453
  }
1454
1454
  if (picker.kind === 'permission-mode') {
1455
+ if (value === 'more') {
1456
+ const child = permissionPicker(permissionModeRef.current, session?.approvalLatched() ?? false, true);
1457
+ setSelectedChoice(Math.max(0, child.options.findIndex((option) => option.current)));
1458
+ setChoicePicker({ ...child, back: picker });
1459
+ return;
1460
+ }
1461
+ if (value === 'rules') {
1462
+ commandPickerSubmitRef.current('/permissions details');
1463
+ return;
1464
+ }
1455
1465
  applyPermissionMode(value);
1456
1466
  return;
1457
1467
  }
@@ -1482,7 +1492,9 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
1482
1492
  removeStoredCredential,
1483
1493
  runConversationExport,
1484
1494
  setChoicePicker,
1495
+ setSelectedChoice,
1485
1496
  setTextPrompt,
1497
+ session,
1486
1498
  ]);
1487
1499
  const sendCopyRequest = useCallback((index) => {
1488
1500
  const picker = copyPickerRef.current;
@@ -3222,6 +3234,7 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
3222
3234
  const stillHere = () => conversationGenRef.current === turnGeneration;
3223
3235
  let inboxOpen = true;
3224
3236
  const inboxEntries = [];
3237
+ const inputWaiters = new Set();
3225
3238
  const inbox = {
3226
3239
  accept(input) {
3227
3240
  if (!inboxOpen ||
@@ -3232,8 +3245,32 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
3232
3245
  return false;
3233
3246
  inboxEntries.push(input);
3234
3247
  setPendingSteers([...inboxEntries]);
3248
+ for (const wake of [...inputWaiters])
3249
+ wake();
3235
3250
  return true;
3236
3251
  },
3252
+ waitForInbound(signal) {
3253
+ if (signal.aborted)
3254
+ return Promise.reject(signal.reason);
3255
+ if (!inboxOpen || inboxEntries.length > 0)
3256
+ return Promise.resolve();
3257
+ return new Promise((resolve, reject) => {
3258
+ const cleanup = () => {
3259
+ inputWaiters.delete(wake);
3260
+ signal.removeEventListener('abort', abort);
3261
+ };
3262
+ const wake = () => {
3263
+ cleanup();
3264
+ resolve();
3265
+ };
3266
+ const abort = () => {
3267
+ cleanup();
3268
+ reject(signal.reason);
3269
+ };
3270
+ inputWaiters.add(wake);
3271
+ signal.addEventListener('abort', abort, { once: true });
3272
+ });
3273
+ },
3237
3274
  drain() {
3238
3275
  if (!inboxOpen ||
3239
3276
  ac.signal.aborted ||
@@ -3261,6 +3298,8 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
3261
3298
  },
3262
3299
  close() {
3263
3300
  inboxOpen = false;
3301
+ for (const wake of [...inputWaiters])
3302
+ wake();
3264
3303
  return inboxEntries.splice(0, inboxEntries.length);
3265
3304
  },
3266
3305
  };
@@ -3330,6 +3369,7 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
3330
3369
  onPermission: askPermission,
3331
3370
  onQuestion: askQuestion,
3332
3371
  inboundMessages: () => inbox.drain(),
3372
+ waitForInbound: (signal) => inbox.waitForInbound(signal),
3333
3373
  extraSystem: [composeSkillsPrompt(activeSkills), drainIdleJobNotices(), drainOperatorShell()]
3334
3374
  .filter((part) => Boolean(part))
3335
3375
  .join('\n\n') || undefined,
@@ -3628,10 +3668,12 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
3628
3668
  const commands = [
3629
3669
  {
3630
3670
  name: 'model',
3671
+ label: 'Model',
3631
3672
  description: `${session?.providerSummary ?? 'No provider'} · ${session?.modelSummary ?? 'No model'}. Change model or provider.`,
3632
3673
  },
3633
3674
  {
3634
3675
  name: 'effort',
3676
+ label: 'Reasoning effort',
3635
3677
  description: `${reasoningEffortRef.current ?? session?.reasoningEffortDefault ?? 'Model default'} · applies to future turns in this session.`,
3636
3678
  ...(session?.reasoningEffortLevels === undefined
3637
3679
  ? { problem: 'This model does not publish reasoning choices.' }
@@ -3639,10 +3681,12 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
3639
3681
  },
3640
3682
  {
3641
3683
  name: 'permissions',
3642
- description: `${permissionModeRef.current} · applies to future turns in this session.`,
3684
+ label: 'Permissions',
3685
+ description: `${permissionModeLabel(effectivePermissionMode(permissionModeRef.current, session?.approvalLatched() ?? false))} · this session.`,
3643
3686
  },
3644
3687
  {
3645
3688
  name: 'status config',
3689
+ label: 'Configuration',
3646
3690
  description: 'Show which configuration files and overrides are in use.',
3647
3691
  },
3648
3692
  ];
@@ -3653,7 +3697,7 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
3653
3697
  notice: 'Select a setting to view or change it.',
3654
3698
  values: commands,
3655
3699
  options: commands.map((command) => ({
3656
- label: `/${command.name}`,
3700
+ label: command.label,
3657
3701
  description: command.description,
3658
3702
  disabledReason: command.problem,
3659
3703
  })),
@@ -3848,7 +3892,7 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
3848
3892
  }
3849
3893
  case 'permission-mode-picker': {
3850
3894
  if (!session?.hasProvider) {
3851
- pushMessage('system', 'No active session — pick a provider before changing permissions.');
3895
+ pushMessage('system', 'Choose a model before changing permissions.');
3852
3896
  return;
3853
3897
  }
3854
3898
  if (state !== 'idle' ||
@@ -3858,22 +3902,14 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
3858
3902
  permissionResolveRef.current !== null ||
3859
3903
  compactingRef.current ||
3860
3904
  !session.resetApprovalLatch) {
3861
- pushMessage('system', 'Permission choices are unavailable until the active turn, prompt, compaction, queued work, or embedded-session approval latch can be safely settled.');
3905
+ pushMessage('system', !session.resetApprovalLatch
3906
+ ? 'This session cannot reset approvals. Reconnect before changing permissions.'
3907
+ : 'Finish or stop the current work before changing permissions.');
3862
3908
  return;
3863
3909
  }
3864
- const values = ['prompt', 'accept-edits', 'auto', 'strict', 'plan'];
3865
- setSelectedChoice(Math.max(0, values.indexOf(permissionModeRef.current)));
3866
- setChoicePicker({
3867
- kind: 'permission-mode',
3868
- title: 'Select Permission Mode',
3869
- notice: permissionPickerNotice(session),
3870
- values,
3871
- options: values.map((mode) => ({
3872
- label: mode,
3873
- description: permissionModeDescription(mode),
3874
- current: mode === permissionModeRef.current,
3875
- })),
3876
- });
3910
+ const picker = permissionPicker(permissionModeRef.current, session.approvalLatched());
3911
+ setSelectedChoice(Math.max(0, picker.options.findIndex((option) => option.current)));
3912
+ setChoicePicker(picker);
3877
3913
  return;
3878
3914
  }
3879
3915
  case 'reasoning-effort': {
@@ -3956,9 +3992,7 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
3956
3992
  }
3957
3993
  return;
3958
3994
  case 'show-memory': {
3959
- const mem = composeMemoryPrompt(readMemory(undefined, ctx.cwd));
3960
- pushMessage('system', mem ??
3961
- 'Nothing remembered yet. #note or /memory <text> saves a fact about this project (.namzu/MEMORY.md); /memory --user <text> saves one for every project (~/.namzu/MEMORY.md).');
3995
+ pushMessage('system', renderMemoryReport(readMemory(undefined, ctx.cwd), { cwd: ctx.cwd }));
3962
3996
  return;
3963
3997
  }
3964
3998
  case 'list-skills': {
@@ -4869,7 +4903,7 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
4869
4903
  // highlighted child before the list has appeared on screen.
4870
4904
  if (agentSurfaceCommittedRef.current !== agentView)
4871
4905
  return;
4872
- const agents = activeSubagentCohorts(subagentsRef.current);
4906
+ const agents = subagentsRef.current;
4873
4907
  if (agentView.kind === 'cockpit') {
4874
4908
  const phases = agentPhases(agents);
4875
4909
  const phaseIndex = Math.max(0, phases.findIndex((phase) => phase.id === agentView.selectedPhaseId));
@@ -5210,7 +5244,7 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
5210
5244
  ? representedSubagentTools.has(JSON.stringify([tool.runId, tool.id]))
5211
5245
  : representedUnscopedSubagentToolUseIds.has(tool.id)));
5212
5246
  const selectedSubagent = agentSurface
5213
- ? liveSubagents.find((agent) => agent.viewId === agentSurface.selectedId)
5247
+ ? subagents.find((agent) => agent.viewId === agentSurface.selectedId)
5214
5248
  : undefined;
5215
5249
  const lifecycleOwnsViewport = phase === 'trust' ||
5216
5250
  phase === 'resume' ||
@@ -5257,7 +5291,8 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
5257
5291
  : goalStatus && phase === 'ready' && state === 'idle'
5258
5292
  ? undefined
5259
5293
  : hintForPhase(phase, state, session?.hasProvider === true, composerHasDraft);
5260
- return (_jsx(Box, { flexDirection: "column", display: externalEditorRequest ? 'none' : 'flex', children: _jsxs(Box, { flexDirection: "column", paddingX: 1, children: [_jsx(TranscriptFrame, { children: _jsx(Transcript, { messages: finalized, pending: messages.find((m) => m.pending) ?? null, state: state, settled: transcriptOwned ? renderedSettled : 0, resetKey: resetKey, raw: rawOutput, hyperlinks: hyperlinks, showLive: !lifecycleOwnsViewport, header: transcriptOwned ? (_jsx(BrandHeader, { version: ctx.version, provider: session?.providerSummary, model: session?.modelSummary, permissionMode: permissionMode, cwd: ctx.cwd })) : undefined }) }), phase === 'trust' ? (_jsx(TrustPrompt, { cwd: ctx.cwd })) : phase === 'unhealthy' ? (_jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(Text, { color: theme.status.error, bold: true, children: "Startup stopped" }), _jsx(Text, { color: theme.text.secondary, children: "Resolve the error above, then restart Namzu." })] })) : phase === 'resume' ? (_jsx(ResumePicker, { conversations: resumeList, selected: selectedResume })) : phase === 'edit' ? (_jsx(EditPromptPicker, { prompts: editList, selected: selectedEdit })) : phase === 'picker' ? (_jsx(Picker, { detected: pickerDetected ?? detected, currentProvider: currentProvider, selectionKind: pickerSelectionKind, currentModel: session?.modelSummary ?? null, initialView: pickerInitialView, onSubmit: handlePickerSubmit, onCancel: handlePickerCancel, onCredential: handleTypedCredential, onLogin: startLoginFromPicker, onLoginComplete: finishLoginFromPicker, keyEntryFor: keyEntryFor, notice: pickerNotice })) : (_jsxs(_Fragment, { children: [agentSurface === null ? (_jsx(LiveActivity, { compact: compactWork, activeTools: visibleActiveTools, working: state === 'thinking' || state === 'tool', interruptible: abortRef.current !== null, animate: stdout.isTTY === true, thinking: thinking })) : null, agentSurface === null && permission === null ? (_jsx(TaskList, { tasks: tasks, compact: compactWork })) : null, permission ? (_jsx(PermissionOverlay, { toolCalls: permission.toolCalls, review: permission.review, summary: permission.summary, detailsOpen: permissionDetailsOpen, reviewOffset: permissionReviewOffset, choice: permissionChoice, columns: terminal.columns, rows: terminal.rows })) : null, textPrompt ? (_jsx(TextPrompt, { title: textPrompt.title, placeholder: textPrompt.placeholder, initialValue: textPrompt.initialValue, emptyNotice: textPrompt.emptyNotice, hidden: permission !== null || agentSurface !== null, onSubmit: submitTextPrompt, onCancel: cancelTextPrompt }, textPrompt.token)) : permission === null && agentSurface === null && choicePicker ? (_jsx(ChoicePicker, { columns: Math.max(1, (terminal.columns ?? 80) - 2), title: choicePicker.title, notice: choicePicker.notice, options: filterChoiceOptions(choicePicker.options, choiceQuery), query: choicePickerSearchable(choicePicker) ? choiceQuery : undefined, selected: selectedChoice, windowSize: choicePicker.kind === 'command' ? choicePicker.windowSize : undefined })) : permission === null && agentSurface === null && copyPicker ? (_jsx(CopyPicker, { targets: copyPicker.targets, selected: selectedCopy })) : null, _jsxs(ComposerFrame, { working: state === 'thinking' || state === 'tool' || visibleActiveTools.length > 0, focus: phase === 'ready' &&
5294
+ const displayedPermissionMode = effectivePermissionMode(permissionMode, session?.approvalLatched() ?? false);
5295
+ return (_jsx(Box, { flexDirection: "column", display: externalEditorRequest ? 'none' : 'flex', children: _jsxs(Box, { flexDirection: "column", paddingX: 1, children: [_jsx(TranscriptFrame, { children: _jsx(Transcript, { messages: finalized, pending: messages.find((m) => m.pending) ?? null, state: state, settled: transcriptOwned ? renderedSettled : 0, resetKey: resetKey, raw: rawOutput, hyperlinks: hyperlinks, showLive: !lifecycleOwnsViewport, header: transcriptOwned ? (_jsx(BrandHeader, { version: ctx.version, provider: session?.providerSummary, model: session?.modelSummary, permissionMode: displayedPermissionMode, cwd: ctx.cwd })) : undefined }) }), phase === 'trust' ? (_jsx(TrustPrompt, { cwd: ctx.cwd })) : phase === 'unhealthy' ? (_jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(Text, { color: theme.status.error, bold: true, children: "Startup stopped" }), _jsx(Text, { color: theme.text.secondary, children: "Resolve the error above, then restart Namzu." })] })) : phase === 'resume' ? (_jsx(ResumePicker, { conversations: resumeList, selected: selectedResume })) : phase === 'edit' ? (_jsx(EditPromptPicker, { prompts: editList, selected: selectedEdit })) : phase === 'picker' ? (_jsx(Picker, { detected: pickerDetected ?? detected, currentProvider: currentProvider, selectionKind: pickerSelectionKind, currentModel: session?.modelSummary ?? null, initialView: pickerInitialView, onSubmit: handlePickerSubmit, onCancel: handlePickerCancel, onCredential: handleTypedCredential, onLogin: startLoginFromPicker, onLoginComplete: finishLoginFromPicker, keyEntryFor: keyEntryFor, notice: pickerNotice })) : (_jsxs(_Fragment, { children: [agentSurface === null ? (_jsx(LiveActivity, { compact: compactWork, activeTools: visibleActiveTools, working: state === 'thinking' || state === 'tool', interruptible: abortRef.current !== null, animate: stdout.isTTY === true, thinking: thinking })) : null, agentSurface === null && permission === null ? (_jsx(TaskList, { tasks: tasks, compact: compactWork })) : null, permission ? (_jsx(PermissionOverlay, { toolCalls: permission.toolCalls, review: permission.review, summary: permission.summary, detailsOpen: permissionDetailsOpen, reviewOffset: permissionReviewOffset, choice: permissionChoice, columns: terminal.columns, rows: terminal.rows })) : null, textPrompt ? (_jsx(TextPrompt, { title: textPrompt.title, placeholder: textPrompt.placeholder, initialValue: textPrompt.initialValue, emptyNotice: textPrompt.emptyNotice, hidden: permission !== null || agentSurface !== null, onSubmit: submitTextPrompt, onCancel: cancelTextPrompt }, textPrompt.token)) : permission === null && agentSurface === null && choicePicker ? (_jsx(ChoicePicker, { columns: Math.max(1, (terminal.columns ?? 80) - 2), title: choicePicker.title, notice: choicePicker.notice, options: filterChoiceOptions(choicePicker.options, choiceQuery), query: choicePickerSearchable(choicePicker) ? choiceQuery : undefined, selected: selectedChoice, windowSize: choicePicker.kind === 'command' ? choicePicker.windowSize : undefined })) : permission === null && agentSurface === null && copyPicker ? (_jsx(CopyPicker, { targets: copyPicker.targets, selected: selectedCopy })) : null, _jsxs(ComposerFrame, { working: state === 'thinking' || state === 'tool' || visibleActiveTools.length > 0, focus: phase === 'ready' &&
5261
5296
  state !== 'awaiting-permission' &&
5262
5297
  !compacting &&
5263
5298
  externalEditorRequest === null &&
@@ -5268,7 +5303,8 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
5268
5303
  agentSurface === null, hidden: permission !== null ||
5269
5304
  textPrompt !== null ||
5270
5305
  choicePicker !== null ||
5271
- copyPicker !== null, children: [pendingSteers.length > 0 &&
5306
+ copyPicker !== null ||
5307
+ agentSurface?.kind === 'transcript', children: [pendingSteers.length > 0 &&
5272
5308
  permission === null &&
5273
5309
  textPrompt === null &&
5274
5310
  choicePicker === null &&
@@ -5282,7 +5318,7 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
5282
5318
  ? queuePause.outcome === 'paused'
5283
5319
  ? 'held after a resumable run paused; wait for recovery, change model, or send a message to release it'
5284
5320
  : `paused after a ${queuePause.outcome} turn; send a message or change model to continue`
5285
- : 'sending when ready'] }) })) : null, _jsx(Composer, { permissionMode: permissionMode, onCycleMode: cyclePermissionMode, disabled: phase !== 'ready' ||
5321
+ : 'sending when ready'] }) })) : null, _jsx(Composer, { permissionMode: displayedPermissionMode, onCycleMode: cyclePermissionMode, disabled: phase !== 'ready' ||
5286
5322
  state === 'awaiting-permission' ||
5287
5323
  compacting ||
5288
5324
  conversationMutation !== null ||
@@ -5290,13 +5326,14 @@ export function App({ ctx: initialCtx, onExitSummary, externalEditor = defaultEx
5290
5326
  agentSurface !== null, hidden: permission !== null ||
5291
5327
  textPrompt !== null ||
5292
5328
  choicePicker !== null ||
5293
- copyPicker !== null,
5329
+ copyPicker !== null ||
5330
+ agentSurface?.kind === 'transcript',
5294
5331
  // A turn is running, so Esc is the interrupt and not
5295
5332
  // the composer's clear.
5296
5333
  escapeInterrupts: !compacting && (state === 'thinking' || state === 'tool'), onSubmit: handleSubmit, onNotice: (text) => pushMessage('system', text), onStepReasoningEffort: stepReasoningEffort, onExternalEdit: requestExternalEditor, onEditPrevious: openPromptEditor, draftToRestore: composerDraft, onDraftRestored: (token) => setComposerDraft((draft) => (draft?.token === token ? null : draft)), onDraftPresenceChange: setComposerHasDraft, onOpenAgentPanel: openAgentCockpit, userCommands: userCommands, builtins: hostCommands.map((command) => ({
5297
5334
  ...command,
5298
5335
  description: command.unavailable?.(slashCtx) ?? command.description,
5299
- })), mentionCandidates: mentionCandidates, history: history })] }), permission === null && agentSurface === null && liveSubagents.length > 0 ? (_jsx(AgentTaskPanel, { agents: liveSubagents, terminalRows: terminal.rows, terminalColumns: terminal.columns })) : permission === null && agentSurface?.kind === 'cockpit' ? (_jsx(AgentCockpit, { agents: liveSubagents, selectedPhaseId: agentSurface.selectedPhaseId, selectedId: agentSurface.selectedId, focus: agentSurface.focus, terminalRows: terminal.rows, terminalColumns: terminal.columns })) : permission === null && agentSurface?.kind === 'transcript' && selectedSubagent ? (_jsx(AgentTranscript, { agent: selectedSubagent, tailOffset: agentSurface.tailOffset, terminalRows: terminal.rows, terminalColumns: terminal.columns })) : null] })), _jsx(Box, { paddingTop: 1, children: _jsx(StatusBar, { cwd: ctx.cwd, provider: session?.providerSummary ?? null, model: session?.modelSummary ?? null, effort: reasoningEffort ?? 'default', goal: statusGoal, state: state, hint: statusHint }) })] }) }));
5336
+ })), mentionCandidates: mentionCandidates, history: history })] }), permission === null && agentSurface === null && liveSubagents.length > 0 ? (_jsx(AgentTaskPanel, { agents: liveSubagents, terminalRows: terminal.rows, terminalColumns: terminal.columns })) : permission === null && agentSurface?.kind === 'cockpit' ? (_jsx(AgentCockpit, { agents: subagents, selectedPhaseId: agentSurface.selectedPhaseId, selectedId: agentSurface.selectedId, focus: agentSurface.focus, terminalRows: terminal.rows, terminalColumns: terminal.columns })) : permission === null && agentSurface?.kind === 'transcript' && selectedSubagent ? (_jsx(AgentTranscript, { agent: selectedSubagent, tailOffset: agentSurface.tailOffset, terminalRows: terminal.rows, terminalColumns: terminal.columns })) : null] })), _jsx(Box, { paddingTop: 1, children: _jsx(StatusBar, { cwd: ctx.cwd, provider: session?.providerSummary ?? null, model: session?.modelSummary ?? null, effort: reasoningEffort ?? 'default', goal: statusGoal, state: state, hint: statusHint }) })] }) }));
5300
5337
  }
5301
5338
  /** One line for a background job that ended, for the transcript and the next turn. */
5302
5339
  function describeJobExit(job) {
@@ -5376,15 +5413,35 @@ function labelOfOption(question, optionId) {
5376
5413
  function choicePickerSearchable(picker) {
5377
5414
  return ['command', 'skill', 'review-branch', 'review-commit'].includes(picker.kind);
5378
5415
  }
5379
- function permissionPickerNotice(session) {
5380
- const notices = [];
5381
- if (session.approvalLatched()) {
5382
- notices.push('Approve all is active; applying any mode revokes it.');
5383
- }
5384
- const exempt = session.promptExemptTools();
5385
- if (exempt.length > 0)
5386
- notices.push(`Never prompted: ${exempt.join(', ')}.`);
5387
- return notices.length > 0 ? notices.join(' ') : undefined;
5416
+ function permissionPicker(mode, approvedAll, more = false) {
5417
+ const current = effectivePermissionMode(mode, approvedAll);
5418
+ const values = more
5419
+ ? ['auto', 'strict', 'rules']
5420
+ : ['prompt', 'accept-edits', 'plan', 'more'];
5421
+ return {
5422
+ kind: 'permission-mode',
5423
+ title: more ? 'More permission options' : 'Permissions',
5424
+ notice: `Current: ${permissionModeLabel(current)} · this session`,
5425
+ values,
5426
+ options: values.map((value) => {
5427
+ if (value === 'more')
5428
+ return {
5429
+ label: 'More options',
5430
+ description: 'Other approval modes and permission rules',
5431
+ current: current === 'auto' || current === 'strict',
5432
+ };
5433
+ if (value === 'rules')
5434
+ return {
5435
+ label: 'View rules',
5436
+ description: 'Show the permission rules in use',
5437
+ };
5438
+ return {
5439
+ label: permissionModeLabel(value),
5440
+ description: permissionModeDescription(value),
5441
+ current: value === current,
5442
+ };
5443
+ }),
5444
+ };
5388
5445
  }
5389
5446
  function reasoningEffortDescription(effort) {
5390
5447
  switch (effort) {