@namzu/cli 12.1.0 → 13.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 (199) hide show
  1. package/README.md +25 -1
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +119 -60
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/acp.d.ts +24 -8
  6. package/dist/commands/acp.d.ts.map +1 -1
  7. package/dist/commands/acp.js +221 -80
  8. package/dist/commands/acp.js.map +1 -1
  9. package/dist/commands/drain.d.ts.map +1 -1
  10. package/dist/commands/drain.js +45 -9
  11. package/dist/commands/drain.js.map +1 -1
  12. package/dist/commands/prior-messages.d.ts +11 -0
  13. package/dist/commands/prior-messages.d.ts.map +1 -0
  14. package/dist/commands/prior-messages.js +280 -0
  15. package/dist/commands/prior-messages.js.map +1 -0
  16. package/dist/commands/resume.d.ts.map +1 -1
  17. package/dist/commands/resume.js +21 -19
  18. package/dist/commands/resume.js.map +1 -1
  19. package/dist/commands/run-stream.d.ts +5 -3
  20. package/dist/commands/run-stream.d.ts.map +1 -1
  21. package/dist/commands/run-stream.js +66 -62
  22. package/dist/commands/run-stream.js.map +1 -1
  23. package/dist/commands/run.d.ts.map +1 -1
  24. package/dist/commands/run.js +50 -37
  25. package/dist/commands/run.js.map +1 -1
  26. package/dist/config/debug.d.ts +55 -0
  27. package/dist/config/debug.d.ts.map +1 -0
  28. package/dist/config/debug.js +126 -0
  29. package/dist/config/debug.js.map +1 -0
  30. package/dist/config/load.d.ts +88 -4
  31. package/dist/config/load.d.ts.map +1 -1
  32. package/dist/config/load.js +386 -56
  33. package/dist/config/load.js.map +1 -1
  34. package/dist/config/schema.d.ts +87 -5
  35. package/dist/config/schema.d.ts.map +1 -1
  36. package/dist/config/schema.js +5 -5
  37. package/dist/config/schema.js.map +1 -1
  38. package/dist/config/trusted-project-context.d.ts +11 -0
  39. package/dist/config/trusted-project-context.d.ts.map +1 -0
  40. package/dist/config/trusted-project-context.js +28 -0
  41. package/dist/config/trusted-project-context.js.map +1 -0
  42. package/dist/context/project-path.d.ts +3 -0
  43. package/dist/context/project-path.d.ts.map +1 -0
  44. package/dist/context/project-path.js +16 -0
  45. package/dist/context/project-path.js.map +1 -0
  46. package/dist/context/project-tracker.d.ts +30 -0
  47. package/dist/context/project-tracker.d.ts.map +1 -0
  48. package/dist/context/project-tracker.js +217 -0
  49. package/dist/context/project-tracker.js.map +1 -0
  50. package/dist/context/sandbox.d.ts +29 -9
  51. package/dist/context/sandbox.d.ts.map +1 -1
  52. package/dist/context/sandbox.js +8 -0
  53. package/dist/context/sandbox.js.map +1 -1
  54. package/dist/exit-codes.d.ts +5 -4
  55. package/dist/exit-codes.d.ts.map +1 -1
  56. package/dist/exit-codes.js +5 -4
  57. package/dist/exit-codes.js.map +1 -1
  58. package/dist/index.d.ts +2 -2
  59. package/dist/index.d.ts.map +1 -1
  60. package/dist/index.js +2 -2
  61. package/dist/index.js.map +1 -1
  62. package/dist/integrations/clipboard/text.d.ts +43 -0
  63. package/dist/integrations/clipboard/text.d.ts.map +1 -0
  64. package/dist/integrations/clipboard/text.js +43 -0
  65. package/dist/integrations/clipboard/text.js.map +1 -0
  66. package/dist/integrations/mcp/servers.d.ts +9 -0
  67. package/dist/integrations/mcp/servers.d.ts.map +1 -1
  68. package/dist/integrations/mcp/servers.js +11 -4
  69. package/dist/integrations/mcp/servers.js.map +1 -1
  70. package/dist/integrations/notifications/terminal.d.ts +32 -0
  71. package/dist/integrations/notifications/terminal.d.ts.map +1 -0
  72. package/dist/integrations/notifications/terminal.js +46 -0
  73. package/dist/integrations/notifications/terminal.js.map +1 -0
  74. package/dist/integrations/plugins/runtime.d.ts +17 -0
  75. package/dist/integrations/plugins/runtime.d.ts.map +1 -0
  76. package/dist/integrations/plugins/runtime.js +100 -0
  77. package/dist/integrations/plugins/runtime.js.map +1 -0
  78. package/dist/integrations/providers/credential-store.d.ts +17 -0
  79. package/dist/integrations/providers/credential-store.d.ts.map +1 -1
  80. package/dist/integrations/providers/credential-store.js +114 -2
  81. package/dist/integrations/providers/credential-store.js.map +1 -1
  82. package/dist/integrations/providers/index.d.ts +2 -2
  83. package/dist/integrations/providers/index.d.ts.map +1 -1
  84. package/dist/integrations/providers/index.js +2 -2
  85. package/dist/integrations/providers/index.js.map +1 -1
  86. package/dist/integrations/providers/keychain.d.ts +0 -13
  87. package/dist/integrations/providers/keychain.d.ts.map +1 -1
  88. package/dist/integrations/providers/keychain.js +0 -76
  89. package/dist/integrations/providers/keychain.js.map +1 -1
  90. package/dist/integrations/providers/oauth.d.ts +45 -16
  91. package/dist/integrations/providers/oauth.d.ts.map +1 -1
  92. package/dist/integrations/providers/oauth.js +170 -43
  93. package/dist/integrations/providers/oauth.js.map +1 -1
  94. package/dist/integrations/providers/subscription-login.d.ts +2 -0
  95. package/dist/integrations/providers/subscription-login.d.ts.map +1 -1
  96. package/dist/integrations/providers/subscription-login.js +117 -14
  97. package/dist/integrations/providers/subscription-login.js.map +1 -1
  98. package/dist/integrations/sessions/store.d.ts +111 -1
  99. package/dist/integrations/sessions/store.d.ts.map +1 -1
  100. package/dist/integrations/sessions/store.js +400 -7
  101. package/dist/integrations/sessions/store.js.map +1 -1
  102. package/dist/integrations/sessions/transcript-export.d.ts +25 -0
  103. package/dist/integrations/sessions/transcript-export.d.ts.map +1 -0
  104. package/dist/integrations/sessions/transcript-export.js +441 -0
  105. package/dist/integrations/sessions/transcript-export.js.map +1 -0
  106. package/dist/integrations/sessions/turn-evidence.d.ts +138 -0
  107. package/dist/integrations/sessions/turn-evidence.d.ts.map +1 -0
  108. package/dist/integrations/sessions/turn-evidence.js +506 -0
  109. package/dist/integrations/sessions/turn-evidence.js.map +1 -0
  110. package/dist/integrations/subagents/runtime.d.ts +7 -12
  111. package/dist/integrations/subagents/runtime.d.ts.map +1 -1
  112. package/dist/integrations/subagents/runtime.js +19 -10
  113. package/dist/integrations/subagents/runtime.js.map +1 -1
  114. package/dist/integrations/trust/store.d.ts.map +1 -1
  115. package/dist/integrations/trust/store.js +27 -13
  116. package/dist/integrations/trust/store.js.map +1 -1
  117. package/dist/permissions/canonical-project.d.ts +9 -0
  118. package/dist/permissions/canonical-project.d.ts.map +1 -0
  119. package/dist/permissions/canonical-project.js +13 -0
  120. package/dist/permissions/canonical-project.js.map +1 -0
  121. package/dist/permissions/checks.d.ts +65 -0
  122. package/dist/permissions/checks.d.ts.map +1 -0
  123. package/dist/permissions/checks.js +122 -0
  124. package/dist/permissions/checks.js.map +1 -0
  125. package/dist/permissions/headless-trust.d.ts +9 -5
  126. package/dist/permissions/headless-trust.d.ts.map +1 -1
  127. package/dist/permissions/headless-trust.js +18 -4
  128. package/dist/permissions/headless-trust.js.map +1 -1
  129. package/dist/permissions/rules.d.ts +16 -7
  130. package/dist/permissions/rules.d.ts.map +1 -1
  131. package/dist/permissions/rules.js +78 -13
  132. package/dist/permissions/rules.js.map +1 -1
  133. package/dist/tui/App.d.ts +5 -2
  134. package/dist/tui/App.d.ts.map +1 -1
  135. package/dist/tui/App.js +1555 -143
  136. package/dist/tui/App.js.map +1 -1
  137. package/dist/tui/Composer.d.ts +14 -3
  138. package/dist/tui/Composer.d.ts.map +1 -1
  139. package/dist/tui/Composer.js +53 -15
  140. package/dist/tui/Composer.js.map +1 -1
  141. package/dist/tui/EditPromptPicker.d.ts +8 -0
  142. package/dist/tui/EditPromptPicker.d.ts.map +1 -0
  143. package/dist/tui/EditPromptPicker.js +18 -0
  144. package/dist/tui/EditPromptPicker.js.map +1 -0
  145. package/dist/tui/LiveActivity.d.ts.map +1 -1
  146. package/dist/tui/LiveActivity.js +2 -1
  147. package/dist/tui/LiveActivity.js.map +1 -1
  148. package/dist/tui/Markdown.d.ts.map +1 -1
  149. package/dist/tui/Markdown.js +2 -1
  150. package/dist/tui/Markdown.js.map +1 -1
  151. package/dist/tui/PermissionOverlay.d.ts.map +1 -1
  152. package/dist/tui/PermissionOverlay.js +7 -1
  153. package/dist/tui/PermissionOverlay.js.map +1 -1
  154. package/dist/tui/Picker.d.ts +4 -4
  155. package/dist/tui/Picker.d.ts.map +1 -1
  156. package/dist/tui/Picker.js +86 -7
  157. package/dist/tui/Picker.js.map +1 -1
  158. package/dist/tui/ResumePicker.d.ts.map +1 -1
  159. package/dist/tui/ResumePicker.js +1 -1
  160. package/dist/tui/ResumePicker.js.map +1 -1
  161. package/dist/tui/Transcript.d.ts +4 -2
  162. package/dist/tui/Transcript.d.ts.map +1 -1
  163. package/dist/tui/Transcript.js +31 -5
  164. package/dist/tui/Transcript.js.map +1 -1
  165. package/dist/tui/agent.d.ts +123 -19
  166. package/dist/tui/agent.d.ts.map +1 -1
  167. package/dist/tui/agent.js +665 -143
  168. package/dist/tui/agent.js.map +1 -1
  169. package/dist/tui/compact-transcript.d.ts +24 -0
  170. package/dist/tui/compact-transcript.d.ts.map +1 -0
  171. package/dist/tui/compact-transcript.js +46 -0
  172. package/dist/tui/compact-transcript.js.map +1 -0
  173. package/dist/tui/conversation-history.d.ts +33 -0
  174. package/dist/tui/conversation-history.d.ts.map +1 -0
  175. package/dist/tui/conversation-history.js +42 -0
  176. package/dist/tui/conversation-history.js.map +1 -0
  177. package/dist/tui/edit-prompts.d.ts +23 -0
  178. package/dist/tui/edit-prompts.d.ts.map +1 -0
  179. package/dist/tui/edit-prompts.js +35 -0
  180. package/dist/tui/edit-prompts.js.map +1 -0
  181. package/dist/tui/live-window.d.ts +3 -1
  182. package/dist/tui/live-window.d.ts.map +1 -1
  183. package/dist/tui/live-window.js +20 -8
  184. package/dist/tui/live-window.js.map +1 -1
  185. package/dist/tui/slashCommands.d.ts +178 -9
  186. package/dist/tui/slashCommands.d.ts.map +1 -1
  187. package/dist/tui/slashCommands.js +339 -15
  188. package/dist/tui/slashCommands.js.map +1 -1
  189. package/dist/tui/terminal-display.d.ts +12 -0
  190. package/dist/tui/terminal-display.d.ts.map +1 -0
  191. package/dist/tui/terminal-display.js +65 -0
  192. package/dist/tui/terminal-display.js.map +1 -0
  193. package/dist/tui/types.d.ts +14 -2
  194. package/dist/tui/types.d.ts.map +1 -1
  195. package/dist/tui/workspace-diff.d.ts +40 -0
  196. package/dist/tui/workspace-diff.d.ts.map +1 -0
  197. package/dist/tui/workspace-diff.js +101 -0
  198. package/dist/tui/workspace-diff.js.map +1 -0
  199. package/package.json +7 -7
@@ -7,7 +7,7 @@
7
7
  * added here and not handled there falls out of the switch into the send path
8
8
  * and dispatches the operator's `/command` to the model as prose.
9
9
  *
10
- * `/cost`, `/permissions` and `/agents` are RENDERERS. Every number and rule
10
+ * `/cost`, argumentless `/permissions` and `/agents` are RENDERERS. Every number and rule
11
11
  * they print was already computed — the kernel emits usage on its own event,
12
12
  * the permission rules were compiled before the session opened, and the
13
13
  * delegate roster is decided when the subagent runtime is built. None of them
@@ -23,6 +23,8 @@
23
23
  * to "does block 4 exist" in two places at once.
24
24
  */
25
25
  import { kernelHostCommands, } from '@namzu/sdk';
26
+ import { renderConfigDebug } from '../config/debug.js';
27
+ import { isPermissionMode } from '../permissions/mode.js';
26
28
  import { expandCommand } from '../user-commands/store.js';
27
29
  import { isCompletionArgument } from './login-prompt.js';
28
30
  /**
@@ -104,7 +106,11 @@ export function mergeHostCommands(descriptors, locals = CLI_LOCAL_COMMANDS) {
104
106
  ...fromKernel.map((descriptor) => ({
105
107
  name: descriptor.name,
106
108
  description: descriptor.description,
107
- action: (_ctx, args) => ({ kind: 'host-command', name: descriptor.name, args }),
109
+ action: (_ctx, args) => ({
110
+ kind: 'host-command',
111
+ name: descriptor.name,
112
+ args,
113
+ }),
108
114
  })),
109
115
  ];
110
116
  }
@@ -229,8 +235,18 @@ export const CLI_LOCAL_COMMANDS = [
229
235
  },
230
236
  {
231
237
  name: 'clear',
232
- description: 'Clear the transcript.',
233
- action: () => ({ kind: 'clear' }),
238
+ description: 'Clear the terminal and start a fresh conversation.',
239
+ action: () => ({ kind: 'new-conversation', clearScreen: true }),
240
+ },
241
+ {
242
+ name: 'new',
243
+ description: 'Start a fresh conversation without clearing the terminal.',
244
+ action: () => ({ kind: 'new-conversation', clearScreen: false }),
245
+ },
246
+ {
247
+ name: 'clear-screen',
248
+ description: 'Clear only the terminal transcript; keep this conversation context.',
249
+ action: () => ({ kind: 'clear-screen' }),
234
250
  },
235
251
  {
236
252
  name: 'quit',
@@ -265,10 +281,32 @@ export const CLI_LOCAL_COMMANDS = [
265
281
  action: (_ctx, args) => {
266
282
  const text = args.join(' ').trim();
267
283
  return text.length === 0
268
- ? { kind: 'message', role: 'system', content: 'Usage: /remember <something to remember>' }
284
+ ? {
285
+ kind: 'message',
286
+ role: 'system',
287
+ content: 'Usage: /remember <something to remember>',
288
+ }
269
289
  : { kind: 'remember', text };
270
290
  },
271
291
  },
292
+ {
293
+ name: 'title',
294
+ description: 'Name this conversation so /resume is navigable: /title <name>, or /title clear.',
295
+ action: (_ctx, args) => {
296
+ const text = args.join(' ').trim();
297
+ // `clear` is a word, not an empty argument. Bare `/title` is the
298
+ // question — the reading a person expects, and the one that cannot
299
+ // destroy anything by being typed early.
300
+ if (text.toLowerCase() === 'clear')
301
+ return { kind: 'title', title: '', clear: true };
302
+ return { kind: 'title', title: text, clear: false };
303
+ },
304
+ },
305
+ {
306
+ name: 'fork',
307
+ description: 'Continue in a copy of this conversation, leaving the original where it is.',
308
+ action: () => ({ kind: 'fork' }),
309
+ },
272
310
  {
273
311
  name: 'memory',
274
312
  description: 'Show what namzu remembers (USER.md + MEMORY.md).',
@@ -318,7 +356,11 @@ export const CLI_LOCAL_COMMANDS = [
318
356
  action: (_ctx, args) => {
319
357
  const name = args.join(' ').trim();
320
358
  return name.length === 0
321
- ? { kind: 'message', role: 'system', content: 'Usage: /skill <name> (see /skills)' }
359
+ ? {
360
+ kind: 'message',
361
+ role: 'system',
362
+ content: 'Usage: /skill <name> (see /skills)',
363
+ }
322
364
  : { kind: 'load-skill', name };
323
365
  },
324
366
  },
@@ -353,17 +395,146 @@ export const CLI_LOCAL_COMMANDS = [
353
395
  {
354
396
  name: 'cost',
355
397
  description: 'Show tokens and spend for this run.',
356
- action: (ctx) => ({ kind: 'message', role: 'system', content: renderCost(ctx.usage) }),
398
+ action: (ctx) => ({
399
+ kind: 'message',
400
+ role: 'system',
401
+ content: renderCost(ctx.usage),
402
+ }),
357
403
  },
358
404
  {
359
- name: 'permissions',
360
- description: 'Show how tool calls get approved, and any rules in force.',
405
+ name: 'review',
406
+ description: 'Ask the agent to review what is uncommitted in this working tree.',
407
+ action: () => ({ kind: 'review' }),
408
+ },
409
+ {
410
+ name: 'mcp',
411
+ description: 'Show which tool servers connected, what they expose, and which failed.',
361
412
  action: (ctx) => ({
362
413
  kind: 'message',
363
414
  role: 'system',
364
- content: renderPermissions(ctx.permissions),
415
+ content: renderMcp(ctx.mcp),
365
416
  }),
366
417
  },
418
+ {
419
+ name: 'diff',
420
+ description: 'Show what is uncommitted in this working tree.',
421
+ action: () => ({ kind: 'diff' }),
422
+ },
423
+ {
424
+ name: 'compact',
425
+ description: 'Summarise the older half of this conversation to free up context.',
426
+ action: () => ({ kind: 'compact' }),
427
+ },
428
+ {
429
+ name: 'copy',
430
+ description: 'Send the latest available assistant output to the terminal clipboard.',
431
+ action: () => ({ kind: 'copy' }),
432
+ },
433
+ {
434
+ name: 'raw',
435
+ description: 'Toggle copy-friendly plain transcript rendering: /raw [on|off].',
436
+ action: (_ctx, args) => {
437
+ const choice = args.join(' ').trim().toLowerCase();
438
+ if (choice.length === 0)
439
+ return { kind: 'raw', enabled: 'toggle' };
440
+ if (choice === 'on')
441
+ return { kind: 'raw', enabled: true };
442
+ if (choice === 'off')
443
+ return { kind: 'raw', enabled: false };
444
+ return {
445
+ kind: 'message',
446
+ role: 'system',
447
+ content: 'Usage: /raw [on|off]',
448
+ };
449
+ },
450
+ },
451
+ {
452
+ name: 'export',
453
+ description: 'Write this verified conversation to Markdown: /export [path].',
454
+ action: (_ctx, args) => {
455
+ const path = args.join(' ').trim();
456
+ return { kind: 'export', ...(path.length > 0 ? { path } : {}) };
457
+ },
458
+ },
459
+ {
460
+ name: 'status',
461
+ description: 'Show what this session is, where it may write, and when it stops to ask.',
462
+ action: (ctx) => ({
463
+ kind: 'message',
464
+ role: 'system',
465
+ content: renderStatus(ctx),
466
+ }),
467
+ },
468
+ {
469
+ name: 'debug-config',
470
+ description: 'Show the winning source for every resolved config key.',
471
+ action: (ctx) => ({
472
+ kind: 'message',
473
+ role: 'system',
474
+ content: renderConfigDebug(ctx.configDebug),
475
+ }),
476
+ },
477
+ {
478
+ name: 'permissions',
479
+ description: 'Show or select how undecided tool calls are handled: /permissions [mode].',
480
+ action: (ctx, args) => {
481
+ if (args.length === 0) {
482
+ return {
483
+ kind: 'message',
484
+ role: 'system',
485
+ content: renderPermissions(ctx.permissions),
486
+ };
487
+ }
488
+ const mode = args.length === 1 ? args[0]?.toLowerCase() : undefined;
489
+ if (isPermissionMode(mode))
490
+ return { kind: 'permission-mode', mode };
491
+ return {
492
+ kind: 'message',
493
+ role: 'system',
494
+ content: 'Usage: /permissions [prompt|auto|strict]',
495
+ };
496
+ },
497
+ },
498
+ {
499
+ name: 'effort',
500
+ description: 'Show or select reasoning effort for future turns: /effort [level|default].',
501
+ action: (ctx, args) => {
502
+ if (args.length === 0) {
503
+ return {
504
+ kind: 'message',
505
+ role: 'system',
506
+ content: renderReasoningEffort(ctx),
507
+ };
508
+ }
509
+ if (!ctx.providerSummary) {
510
+ return {
511
+ kind: 'message',
512
+ role: 'system',
513
+ content: 'No active session — pick a provider with /model before changing effort.',
514
+ };
515
+ }
516
+ const token = args.length === 1 ? args[0]?.toLowerCase() : undefined;
517
+ if (token === 'default')
518
+ return { kind: 'reasoning-effort', effort: null };
519
+ const offered = ctx.reasoningEffort.levels;
520
+ if (offered === undefined) {
521
+ return {
522
+ kind: 'message',
523
+ role: 'system',
524
+ content: `Reasoning effort was not changed: ${ctx.modelSummary ?? 'the current model'} or one of its usable fallback models does not publish an exact effort menu. Leave the provider default in force or choose a model/chain that can enumerate its levels.`,
525
+ };
526
+ }
527
+ const effort = offered.find((level) => level === token);
528
+ if (effort)
529
+ return { kind: 'reasoning-effort', effort };
530
+ const levels = offered.length > 0 ? offered.join('|') : '<none>';
531
+ return {
532
+ kind: 'message',
533
+ role: 'system',
534
+ content: `Usage: /effort [${levels}|default]`,
535
+ };
536
+ },
537
+ },
367
538
  {
368
539
  name: 'init',
369
540
  description: 'Write an AGENTS.md describing this project to future agents.',
@@ -476,20 +647,149 @@ export function renderCost(usage) {
476
647
  return lines.join('\n');
477
648
  }
478
649
  /** What decides a tool call, in the order it actually decides it. */
650
+ /**
651
+ * One page holding both halves of what a run may do.
652
+ *
653
+ * They are separate mechanisms and they answer separate questions — where a
654
+ * write may land, and whether anyone is asked first — and neither implies the
655
+ * other. An operator who turns approvals off has not widened the sandbox, and
656
+ * one who confines the filesystem has not stopped the prompts. Read apart, each
657
+ * looks like the whole answer; the failure is believing you configured
658
+ * something you did not.
659
+ *
660
+ * So they are printed adjacently and each is labelled with the question it
661
+ * answers, rather than with its mechanism's name.
662
+ */
663
+ /**
664
+ * Which tool servers answered, and what they brought.
665
+ *
666
+ * A failure is listed as prominently as a success and never omitted. The
667
+ * transcript said so once at connect time and scrolled it away, and a server
668
+ * that failed silently is indistinguishable from one nobody configured — which
669
+ * is the state an operator is in when a tool they expect is simply not there.
670
+ */
671
+ /**
672
+ * The turn `/review` sends.
673
+ *
674
+ * Two failures shape it, and they pull in opposite directions.
675
+ *
676
+ * A review that INVENTS problems is worse than no review, because someone acts
677
+ * on it — the same reasoning `initPrompt` uses about invented conventions. So
678
+ * the instruction asks for findings tied to a specific line and for silence
679
+ * over speculation.
680
+ *
681
+ * A review that only reassures is worse than useless, because it buys
682
+ * confidence nobody earned. So it also refuses the summary-of-the-diff answer:
683
+ * restating what changed is not review, and it is the shape a model falls into
684
+ * when it has nothing to say.
685
+ *
686
+ * The FILE LIST goes in, not the patch. The agent has tools and a shell; handing
687
+ * it a truncated 24 kB patch would spend the context that reading the
688
+ * interesting parts properly requires, and a review of a truncated diff is a
689
+ * review of whatever fitted.
690
+ */
691
+ export function reviewPrompt(stat, untracked) {
692
+ const lines = [
693
+ 'Review the uncommitted work in this repository.',
694
+ '',
695
+ '`git diff HEAD` reports:',
696
+ '',
697
+ stat.length > 0 ? stat : '(no tracked file changed)',
698
+ ];
699
+ if (untracked.length > 0) {
700
+ lines.push('', 'Untracked, which no diff shows:', ...untracked.map((p) => ` ${p}`));
701
+ }
702
+ lines.push('', 'Read what you need — the diff, the files around it, the tests. Then report:', '', '- Correctness problems, each tied to a file and line, with the input or', ' state that produces the wrong behaviour. If you cannot name one, do not', ' raise the finding.', '- Anything the change claims in a comment or a message that the code does', ' not do.', '- Tests that would pass whether or not the change is correct.', '', 'Do not summarise the diff back to me — I can read it, and a summary is what', 'a review turns into when it has nothing to say. If the work looks right,', 'say so in one line and stop. Say plainly what you did not examine.');
703
+ return lines.join('\n');
704
+ }
705
+ export function renderMcp(mcp) {
706
+ if (mcp === null)
707
+ return 'No session yet — no tool servers have been contacted.';
708
+ const lines = [];
709
+ if (mcp.connected.length === 0 && mcp.failed.length === 0) {
710
+ return 'No tool servers configured. Add an `mcpServers` block to namzu.config.json.';
711
+ }
712
+ for (const server of mcp.connected) {
713
+ lines.push(`${server.name} — connected, ${server.tools.length} tool(s)`);
714
+ // Named, not counted. A count answers "did it work"; the operator's
715
+ // actual question is whether the tool they wanted is among them.
716
+ for (const tool of server.tools)
717
+ lines.push(` ${tool}`);
718
+ }
719
+ if (mcp.failed.length > 0) {
720
+ if (lines.length > 0)
721
+ lines.push('');
722
+ for (const server of mcp.failed) {
723
+ lines.push(`${server.name} — NOT available: ${server.reason}`);
724
+ }
725
+ }
726
+ return lines.join('\n');
727
+ }
728
+ export function renderStatus(ctx) {
729
+ const lines = [];
730
+ lines.push(`Provider: ${ctx.providerSummary ?? 'none — run /model to pick one'}`);
731
+ lines.push(`Model: ${ctx.modelSummary ?? '—'}`);
732
+ lines.push('');
733
+ lines.push('Where it may write');
734
+ const sandbox = ctx.sandbox;
735
+ if (!sandbox) {
736
+ lines.push(' Not resolved yet — no session has started.');
737
+ }
738
+ else if (sandbox.unconfined) {
739
+ // The loudest line on the page, and deliberately not softened by the
740
+ // environment name: a tier that enforces nothing is not a weaker
741
+ // sandbox, it is the absence of one.
742
+ lines.push(' Anywhere this shell can. Commands are NOT confined.');
743
+ if (sandbox.environment) {
744
+ lines.push(` The sandbox is attached (${sandbox.environment}) and enforces nothing here.`);
745
+ }
746
+ lines.push(' Name what you need under `sandbox.requireIsolation` to be refused instead.');
747
+ }
748
+ else {
749
+ lines.push(` Confined to this session's sandbox (${sandbox.environment ?? 'unknown'}).`);
750
+ lines.push(` Enforced here: ${sandbox.enforced.join(', ')}.`);
751
+ }
752
+ if (sandbox && sandbox.required.length > 0) {
753
+ // Worth its own line even when it matches what is enforced: a demand
754
+ // travels to the next machine and a coincidence does not.
755
+ lines.push(` Required by config: ${sandbox.required.join(', ')} — a host without them refuses to run.`);
756
+ }
757
+ else if (sandbox) {
758
+ lines.push(' Required by config: nothing — this host decides what you get.');
759
+ }
760
+ lines.push('');
761
+ lines.push('When it stops to ask');
762
+ for (const line of renderPermissions(ctx.permissions).split('\n')) {
763
+ lines.push(line.length > 0 ? ` ${line}` : '');
764
+ }
765
+ if (ctx.usage) {
766
+ lines.push('');
767
+ lines.push(`Spend: ${renderCost(ctx.usage).split('\n')[0] ?? ''}`);
768
+ }
769
+ return lines.join('\n').trimEnd();
770
+ }
479
771
  export function renderPermissions(permissions) {
480
772
  const lines = [];
481
- // Three states, most permissive first, and the middle one is the reason this
773
+ const current = permissions.currentMode();
774
+ lines.push(`Current mode: ${current.mode}.`);
775
+ lines.push('');
776
+ // Four effective states, most permissive first, and the approve-all one is the reason this
482
777
  // function was rewritten: it is reachable from a single keystroke at a
483
778
  // prompt, it silently outranks the default, and it used to be invisible
484
779
  // here — so the page answering "how do tool calls get approved" gave the
485
780
  // safe answer to an operator who had already turned the safety off.
486
- if (permissions.skipPermissions) {
487
- lines.push('Unreviewed calls: approved automatically (--dangerously-skip-permissions).');
781
+ if (current.mode === 'auto') {
782
+ lines.push(current.source === 'launch-bypass'
783
+ ? 'Unreviewed calls: approved automatically (--dangerously-skip-permissions).'
784
+ : 'Unreviewed calls: approved automatically for future turns (/permissions auto).');
785
+ }
786
+ else if (current.mode === 'strict') {
787
+ lines.push('Unreviewed calls: rejected automatically for future turns (/permissions strict).');
788
+ lines.push('Only calls an explicit allow rule covers may run; no approval prompt can widen that.');
488
789
  }
489
790
  else if (permissions.approvalLatched()) {
490
791
  lines.push('Unreviewed calls: approved automatically — "approve all" was chosen at');
491
- lines.push('an earlier prompt. Nothing will ask again while this session lasts;');
492
- lines.push('restart namzu, or re-pick a provider with /model, to be asked again.');
792
+ lines.push('an earlier prompt. Run /permissions prompt to revoke that latch and ask again.');
493
793
  }
494
794
  else {
495
795
  lines.push('Unreviewed calls: you are asked before they run.');
@@ -535,6 +835,30 @@ export function renderPermissions(permissions) {
535
835
  lines.push('no rule covered, so it can never reopen what a `deny` closed.');
536
836
  return lines.join('\n');
537
837
  }
838
+ /** Render the exact session control without inventing a global effort menu. */
839
+ export function renderReasoningEffort(ctx) {
840
+ if (!ctx.providerSummary) {
841
+ return 'No active session — pick a provider with /model before selecting reasoning effort.';
842
+ }
843
+ const current = ctx.reasoningEffort.current();
844
+ const lines = [
845
+ `Current reasoning effort: ${current ?? 'provider default'}.`,
846
+ `Model: ${ctx.modelSummary ?? 'provider default'}.`,
847
+ ];
848
+ const offered = ctx.reasoningEffort.levels;
849
+ if (offered === undefined) {
850
+ lines.push('Selectable levels: unavailable — this model or one usable fallback cannot enumerate an exact menu.');
851
+ }
852
+ else if (offered.length === 0) {
853
+ lines.push('Selectable levels: none — the usable provider chain has no common effort level.');
854
+ }
855
+ else {
856
+ lines.push(`Selectable for every usable provider-chain member: ${offered.join(', ')}.`);
857
+ lines.push(`Use /effort <${offered.join('|')}> or /effort default.`);
858
+ }
859
+ lines.push('Applies to future main-query turns in this TUI session; /model resets it. Subagents and manual compaction keep their own provider defaults.');
860
+ return lines.join('\n');
861
+ }
538
862
  /**
539
863
  * One rule, as a line an operator can check against what they wrote.
540
864
  *
@@ -1 +1 @@
1
- {"version":3,"file":"slashCommands.js","sourceRoot":"","sources":["../../src/tui/slashCommands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slashCommands.js","sourceRoot":"","sources":["../../src/tui/slashCommands.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Project untrusted text into a terminal-safe, source-preserving display form.
3
+ *
4
+ * This is deliberately a view operation. Conversation history, tool requests,
5
+ * exports and clipboard copies keep the exact source bytes; only strings handed
6
+ * to Ink pass through here. Newlines and tabs remain useful layout characters,
7
+ * and CRLF is normalized to one newline. Every other C0/C1 control plus the
8
+ * invisible directional characters that can reorder a consent prompt becomes
9
+ * an explicit ASCII `\\u{....}` literal.
10
+ */
11
+ export declare function terminalDisplayText(source: string): string;
12
+ //# sourceMappingURL=terminal-display.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal-display.d.ts","sourceRoot":"","sources":["../../src/tui/terminal-display.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CA8B1D"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Project untrusted text into a terminal-safe, source-preserving display form.
3
+ *
4
+ * This is deliberately a view operation. Conversation history, tool requests,
5
+ * exports and clipboard copies keep the exact source bytes; only strings handed
6
+ * to Ink pass through here. Newlines and tabs remain useful layout characters,
7
+ * and CRLF is normalized to one newline. Every other C0/C1 control plus the
8
+ * invisible directional characters that can reorder a consent prompt becomes
9
+ * an explicit ASCII `\\u{....}` literal.
10
+ */
11
+ export function terminalDisplayText(source) {
12
+ let projected;
13
+ let index = 0;
14
+ while (index < source.length) {
15
+ const codePoint = source.codePointAt(index);
16
+ if (codePoint === undefined)
17
+ break;
18
+ const width = codePoint > 0xffff ? 2 : 1;
19
+ // A provider or command commonly emits CRLF. Keeping the carriage return
20
+ // would hand cursor movement to the text; showing an escape on every line
21
+ // would turn ordinary output into noise. One safe newline is the exact
22
+ // display meaning of the pair.
23
+ if (codePoint === 0x0d && source.charCodeAt(index + 1) === 0x0a) {
24
+ projected ??= source.slice(0, index);
25
+ projected += '\n';
26
+ index += 2;
27
+ continue;
28
+ }
29
+ if (isUnsafeTerminalCodePoint(codePoint)) {
30
+ projected ??= source.slice(0, index);
31
+ projected += visibleCodePoint(codePoint);
32
+ }
33
+ else if (projected !== undefined) {
34
+ projected += String.fromCodePoint(codePoint);
35
+ }
36
+ index += width;
37
+ }
38
+ return projected ?? source;
39
+ }
40
+ function visibleCodePoint(codePoint) {
41
+ return `\\u{${codePoint.toString(16).padStart(4, '0')}}`;
42
+ }
43
+ function isUnsafeTerminalCodePoint(codePoint) {
44
+ // LF and TAB are the two useful terminal layout controls. CR is safe only as
45
+ // the CRLF pair normalized by the caller above; a lone one rewinds the row.
46
+ if (codePoint <= 0x1f)
47
+ return codePoint !== 0x0a && codePoint !== 0x09;
48
+ if (codePoint >= 0x7f && codePoint <= 0x9f)
49
+ return true;
50
+ // Unicode line/paragraph separators create lines without an ASCII newline.
51
+ if (codePoint === 0x2028 || codePoint === 0x2029)
52
+ return true;
53
+ // Directional and invisible formatting controls that can make the painted
54
+ // order disagree with the source. ZWNJ/ZWJ stay available for scripts that
55
+ // legitimately require them; variation selectors stay available to emoji.
56
+ return (codePoint === 0x061c ||
57
+ codePoint === 0x200b ||
58
+ codePoint === 0x200e ||
59
+ codePoint === 0x200f ||
60
+ (codePoint >= 0x202a && codePoint <= 0x202e) ||
61
+ (codePoint >= 0x2060 && codePoint <= 0x2064) ||
62
+ (codePoint >= 0x2066 && codePoint <= 0x206f) ||
63
+ codePoint === 0xfeff);
64
+ }
65
+ //# sourceMappingURL=terminal-display.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal-display.js","sourceRoot":"","sources":["../../src/tui/terminal-display.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc;IACjD,IAAI,SAA6B,CAAA;IACjC,IAAI,KAAK,GAAG,CAAC,CAAA;IAEb,OAAO,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QAC9B,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QAC3C,IAAI,SAAS,KAAK,SAAS;YAAE,MAAK;QAClC,MAAM,KAAK,GAAG,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAExC,yEAAyE;QACzE,0EAA0E;QAC1E,uEAAuE;QACvE,+BAA+B;QAC/B,IAAI,SAAS,KAAK,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACjE,SAAS,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;YACpC,SAAS,IAAI,IAAI,CAAA;YACjB,KAAK,IAAI,CAAC,CAAA;YACV,SAAQ;QACT,CAAC;QAED,IAAI,yBAAyB,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1C,SAAS,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;YACpC,SAAS,IAAI,gBAAgB,CAAC,SAAS,CAAC,CAAA;QACzC,CAAC;aAAM,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YACpC,SAAS,IAAI,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;QAC7C,CAAC;QACD,KAAK,IAAI,KAAK,CAAA;IACf,CAAC;IAED,OAAO,SAAS,IAAI,MAAM,CAAA;AAC3B,CAAC;AAED,SAAS,gBAAgB,CAAC,SAAiB;IAC1C,OAAO,OAAO,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAA;AACzD,CAAC;AAED,SAAS,yBAAyB,CAAC,SAAiB;IACnD,6EAA6E;IAC7E,4EAA4E;IAC5E,IAAI,SAAS,IAAI,IAAI;QAAE,OAAO,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,IAAI,CAAA;IACtE,IAAI,SAAS,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI;QAAE,OAAO,IAAI,CAAA;IAEvD,2EAA2E;IAC3E,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,MAAM;QAAE,OAAO,IAAI,CAAA;IAE7D,0EAA0E;IAC1E,2EAA2E;IAC3E,0EAA0E;IAC1E,OAAO,CACN,SAAS,KAAK,MAAM;QACpB,SAAS,KAAK,MAAM;QACpB,SAAS,KAAK,MAAM;QACpB,SAAS,KAAK,MAAM;QACpB,CAAC,SAAS,IAAI,MAAM,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,SAAS,IAAI,MAAM,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,SAAS,IAAI,MAAM,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,SAAS,KAAK,MAAM,CACpB,CAAA;AACF,CAAC"}
@@ -4,7 +4,8 @@
4
4
  * the React/Ink layer.
5
5
  */
6
6
  import type { AuthorizationRule } from '@namzu/sdk';
7
- import type { SandboxConfig } from '../config/schema.js';
7
+ import type { ConfigDebugSnapshot } from '../config/debug.js';
8
+ import type { PluginConfig, SandboxConfig, TuiConfig } from '../config/schema.js';
8
9
  import type { McpServersConfig } from '../integrations/mcp/servers.js';
9
10
  import type { ResolvedLogging } from '../logging.js';
10
11
  export type MessageRole = 'user' | 'assistant' | 'system' | 'tool';
@@ -48,7 +49,14 @@ export interface TranscriptMessage {
48
49
  export interface TuiContext {
49
50
  readonly cwd: string;
50
51
  readonly version: string;
51
- /** When true, tools run without the approval prompt (--dangerously-skip-permissions / --yolo). */
52
+ /**
53
+ * Values-free launch-time config provenance for `/debug-config`.
54
+ *
55
+ * Optional for embedded callers and the many hand-built App fixtures. The
56
+ * standalone CLI always supplies it; the command says when an embed did not.
57
+ */
58
+ readonly configDebug?: ConfigDebugSnapshot;
59
+ /** Initial TUI mode is auto (--dangerously-skip-permissions / --yolo); /permissions may narrow it. */
52
60
  readonly skipPermissions?: boolean;
53
61
  /**
54
62
  * The operator's `permissions` table, compiled to kernel rules.
@@ -67,12 +75,16 @@ export interface TuiContext {
67
75
  * they declared has to be there whichever way they started namzu.
68
76
  */
69
77
  readonly mcpServers?: McpServersConfig;
78
+ /** Executable plugins from the trusted, project-aware config. */
79
+ readonly plugins?: PluginConfig;
70
80
  /**
71
81
  * Isolation config, by the same reasoning as the two above: it belongs
72
82
  * to the user, not to a command, so it has to reach the session
73
83
  * whichever way namzu was started.
74
84
  */
75
85
  readonly sandbox?: SandboxConfig;
86
+ /** Opted-in terminal notification settings from the resolved CLI config. */
87
+ readonly tui?: TuiConfig;
76
88
  /**
77
89
  * --verbose/--quiet/NAMZU_LOG_LEVEL and --log-format/NAMZU_LOG_FORMAT,
78
90
  * resolved once in `cli.ts` before the TUI launches. Optional for the