@aragon-agent/cli 0.6.46 → 0.6.48

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 (775) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +80 -12
  3. package/dist/agent/coalesce.d.ts +5 -1
  4. package/dist/agent/coalesce.js +13 -0
  5. package/dist/agent/controller.d.ts +41 -20
  6. package/dist/agent/controller.js +68 -15
  7. package/dist/agent/conversation-reset.d.ts +1 -1
  8. package/dist/agent/governance-wiring.d.ts +6 -6
  9. package/dist/agent/governance-wiring.js +4 -4
  10. package/dist/agent/headless.d.ts +5 -5
  11. package/dist/agent/headless.js +4 -4
  12. package/dist/agent/job-notices.d.ts +1 -1
  13. package/dist/agent/job-notices.js +1 -1
  14. package/dist/agent/kit-apply.d.ts +3 -3
  15. package/dist/agent/kit-apply.js +3 -3
  16. package/dist/agent/model-profile-settings.d.ts +2 -2
  17. package/dist/agent/model-profile-settings.js +6 -6
  18. package/dist/agent/prompt-options.d.ts +1 -1
  19. package/dist/agent/system-prompt.d.ts +1 -1
  20. package/dist/agent/user-attention.d.ts +17 -0
  21. package/dist/agent/user-attention.js +32 -0
  22. package/dist/{ui → app}/App.d.ts +9 -9
  23. package/dist/{ui → app}/App.js +113 -79
  24. package/dist/{ui → app}/use-startup-notices.d.ts +1 -1
  25. package/dist/{ui → app}/use-startup-notices.js +2 -2
  26. package/dist/cli.js +31 -32
  27. package/dist/commands/agents-command.js +1 -1
  28. package/dist/commands/builtins.js +9 -9
  29. package/dist/commands/governance-command.js +2 -2
  30. package/dist/commands/governance-runs-table.js +1 -1
  31. package/dist/commands/kit-command.js +1 -1
  32. package/dist/commands/perf.d.ts +3 -3
  33. package/dist/commands/perf.js +1 -1
  34. package/dist/commands/registry.d.ts +8 -8
  35. package/dist/commands/skills.js +2 -2
  36. package/dist/commands/team-command.js +1 -1
  37. package/dist/compaction/archive.d.ts +1 -1
  38. package/dist/compaction/archive.js +1 -1
  39. package/dist/compaction/child.d.ts +3 -3
  40. package/dist/compaction/child.js +4 -4
  41. package/dist/compaction/command.js +5 -5
  42. package/dist/compaction/compactor.d.ts +6 -6
  43. package/dist/compaction/compactor.js +6 -6
  44. package/dist/compaction/context-command.js +1 -1
  45. package/dist/compaction/digest.js +1 -1
  46. package/dist/compaction/memory-input.js +1 -1
  47. package/dist/compaction/memory-validation.js +1 -1
  48. package/dist/compaction/memory.js +1 -1
  49. package/dist/compaction/summarize-call.js +1 -1
  50. package/dist/compaction/summary-prompt.js +1 -1
  51. package/dist/compaction/tail-budget.js +2 -2
  52. package/dist/compaction/wiring.d.ts +5 -5
  53. package/dist/compaction/wiring.js +2 -2
  54. package/dist/config/cli-commands.d.ts +1 -1
  55. package/dist/config/cli-commands.js +3 -3
  56. package/dist/config/env.d.ts +1 -1
  57. package/dist/config/env.js +4 -4
  58. package/dist/config/load.d.ts +2 -2
  59. package/dist/config/load.js +10 -31
  60. package/dist/config/migrate-state-out-of-config.js +1 -1
  61. package/dist/config/model-profile-store.d.ts +4 -54
  62. package/dist/config/model-profile-store.js +3 -3
  63. package/dist/config/prompt-history.js +1 -1
  64. package/dist/config/store.d.ts +2 -2
  65. package/dist/config/store.js +3 -3
  66. package/dist/diagnostics/doctor.js +4 -4
  67. package/dist/exec/bridge/decisions.d.ts +1 -1
  68. package/dist/exec/bridge/human-answers.d.ts +1 -1
  69. package/dist/exec/bridge/human-answers.js +1 -1
  70. package/dist/exec/bridge/protocol.d.ts +1 -1
  71. package/dist/exec/bridge/server.js +1 -1
  72. package/dist/exec/events.d.ts +2 -2
  73. package/dist/exec/index.d.ts +1 -1
  74. package/dist/exec/index.js +1 -1
  75. package/dist/exec/permission.js +1 -1
  76. package/dist/exec/runner.d.ts +3 -3
  77. package/dist/exec/runner.js +2 -2
  78. package/dist/exec/threads/runtime.js +1 -1
  79. package/dist/fast/digest.d.ts +1 -1
  80. package/dist/fast/digest.js +1 -1
  81. package/dist/fast/frames.d.ts +1 -1
  82. package/dist/fast/frames.js +1 -1
  83. package/dist/fast/prompt.d.ts +1 -1
  84. package/dist/fast/prompt.js +1 -1
  85. package/dist/fast/review-call.js +1 -1
  86. package/dist/fast/reviewer.d.ts +3 -3
  87. package/dist/fast/reviewer.js +1 -1
  88. package/dist/fast/summary-call.d.ts +3 -3
  89. package/dist/fast/summary-call.js +2 -2
  90. package/dist/fast/summary-prompt.d.ts +1 -1
  91. package/dist/fast/summary-prompt.js +1 -1
  92. package/dist/fast/wiring.d.ts +4 -4
  93. package/dist/fast/wiring.js +1 -1
  94. package/dist/governance/card-normalize.d.ts +1 -1
  95. package/dist/governance/copy.d.ts +1 -1
  96. package/dist/governance/copy.js +2 -2
  97. package/dist/governance/engine/artifact-persist.d.ts +1 -1
  98. package/dist/governance/engine/budget.d.ts +1 -1
  99. package/dist/governance/engine/budget.js +1 -1
  100. package/dist/governance/engine/cards.d.ts +1 -1
  101. package/dist/governance/engine/digest.js +1 -1
  102. package/dist/governance/engine/engine-core.d.ts +5 -5
  103. package/dist/governance/engine/engine-core.js +1 -1
  104. package/dist/governance/engine/engine.d.ts +1 -1
  105. package/dist/governance/engine/engine.js +1 -1
  106. package/dist/governance/engine/estimate.d.ts +1 -1
  107. package/dist/governance/engine/estimate.js +1 -1
  108. package/dist/governance/engine/inspector.js +2 -2
  109. package/dist/governance/engine/integration.d.ts +1 -1
  110. package/dist/governance/engine/lifecycle.d.ts +1 -1
  111. package/dist/governance/engine/lifecycle.js +1 -1
  112. package/dist/governance/engine/phase-members.d.ts +1 -1
  113. package/dist/governance/engine/phase-planner.d.ts +1 -1
  114. package/dist/governance/engine/phase-planner.js +1 -1
  115. package/dist/governance/engine/rebuild.d.ts +1 -1
  116. package/dist/governance/engine/report.d.ts +1 -1
  117. package/dist/governance/engine/report.js +1 -1
  118. package/dist/governance/engine/run-digest.d.ts +1 -1
  119. package/dist/governance/engine/spec-builder.d.ts +2 -2
  120. package/dist/governance/engine/spec-builder.js +2 -2
  121. package/dist/governance/engine/stage-runner.js +2 -2
  122. package/dist/governance/engine/start-input.d.ts +1 -1
  123. package/dist/governance/engine/start-input.js +1 -1
  124. package/dist/governance/engine/state-machine.d.ts +1 -1
  125. package/dist/governance/engine/state-machine.js +3 -3
  126. package/dist/governance/engine/submission-queries.d.ts +1 -1
  127. package/dist/governance/engine/submission-render.d.ts +1 -1
  128. package/dist/governance/engine/submissions.d.ts +1 -1
  129. package/dist/governance/engine/submissions.js +1 -1
  130. package/dist/governance/engine/visibility.d.ts +1 -1
  131. package/dist/governance/engine/visibility.js +1 -1
  132. package/dist/governance/posture-transition.d.ts +2 -2
  133. package/dist/governance/posture-transition.js +1 -1
  134. package/dist/governance/profiles.d.ts +1 -1
  135. package/dist/governance/prompts/orchestrator-block.d.ts +2 -2
  136. package/dist/governance/prompts/orchestrator-block.js +2 -2
  137. package/dist/governance/prompts/plan-addendum.d.ts +1 -1
  138. package/dist/governance/prompts/plan-addendum.js +1 -1
  139. package/dist/governance/prompts/role-blocks.d.ts +2 -2
  140. package/dist/governance/prompts/role-blocks.js +1 -1
  141. package/dist/governance/report-reader.js +1 -1
  142. package/dist/governance/roles.d.ts +1 -1
  143. package/dist/governance/rules/claims.d.ts +1 -1
  144. package/dist/governance/rules/claims.js +1 -1
  145. package/dist/governance/rules/elimination.d.ts +1 -1
  146. package/dist/governance/rules/elimination.js +1 -1
  147. package/dist/governance/rules/failure-analysis.d.ts +2 -2
  148. package/dist/governance/rules/failure-analysis.js +1 -1
  149. package/dist/governance/rules/ledger-replay.d.ts +1 -1
  150. package/dist/governance/rules/ledger-state.d.ts +1 -1
  151. package/dist/governance/rules/ledger-state.js +1 -1
  152. package/dist/governance/rules/ledger.d.ts +2 -2
  153. package/dist/governance/rules/ledger.js +2 -2
  154. package/dist/governance/rules/rca.d.ts +1 -1
  155. package/dist/governance/rules/rca.js +1 -1
  156. package/dist/governance/rules/settlement.d.ts +2 -2
  157. package/dist/governance/rules/settlement.js +2 -2
  158. package/dist/governance/rules/suspicion.d.ts +1 -1
  159. package/dist/governance/store/artifacts.d.ts +1 -1
  160. package/dist/governance/store/artifacts.js +1 -1
  161. package/dist/governance/store/events-log.d.ts +1 -1
  162. package/dist/governance/store/run-store.d.ts +1 -1
  163. package/dist/governance/store/run-store.js +1 -1
  164. package/dist/governance/store/scoreboard-export.d.ts +1 -1
  165. package/dist/governance/tools/child-tools.d.ts +1 -1
  166. package/dist/governance/tools/guard.d.ts +1 -1
  167. package/dist/governance/tools/guard.js +1 -1
  168. package/dist/governance/tools/inspector-tools.d.ts +2 -2
  169. package/dist/governance/tools/inspector-tools.js +2 -2
  170. package/dist/governance/tools/lead-tools.d.ts +1 -1
  171. package/dist/governance/tools/lead-tools.js +1 -1
  172. package/dist/governance/tools/normalize-util.js +1 -1
  173. package/dist/governance/tools/scan-incomplete.js +1 -1
  174. package/dist/governance/tools/shared-tools.d.ts +1 -1
  175. package/dist/governance/tools/shared-tools.js +1 -1
  176. package/dist/governance/tools/submit-normalizers.d.ts +1 -1
  177. package/dist/governance/tools/submit-normalizers.js +1 -1
  178. package/dist/governance/tools/submit-tools.d.ts +1 -1
  179. package/dist/logging/cli-commands.js +1 -1
  180. package/dist/logging/install.d.ts +1 -1
  181. package/dist/logging/install.js +3 -3
  182. package/dist/logging/logger.d.ts +2 -2
  183. package/dist/logging/logger.js +31 -2
  184. package/dist/proc/kill-tree.js +1 -1
  185. package/dist/proc/log-mirror.js +1 -1
  186. package/dist/proc/log-ring.js +2 -2
  187. package/dist/proc/notices.d.ts +1 -1
  188. package/dist/proc/notices.js +2 -2
  189. package/dist/proc/prompt.d.ts +1 -1
  190. package/dist/proc/prompt.js +8 -5
  191. package/dist/proc/readiness.js +1 -1
  192. package/dist/proc/supervisor.d.ts +1 -1
  193. package/dist/proc/supervisor.js +10 -4
  194. package/dist/proc/wait-plan.d.ts +39 -0
  195. package/dist/proc/wait-plan.js +77 -0
  196. package/dist/proc/wait.d.ts +37 -4
  197. package/dist/proc/wait.js +68 -5
  198. package/dist/prompts/command.d.ts +1 -1
  199. package/dist/prompts/command.js +1 -1
  200. package/dist/prompts/normalize.d.ts +1 -1
  201. package/dist/prompts/normalize.js +1 -1
  202. package/dist/prompts/resolve.d.ts +1 -1
  203. package/dist/prompts/store.d.ts +2 -12
  204. package/dist/prompts/store.js +6 -60
  205. package/dist/session/checkpoint.d.ts +2 -2
  206. package/dist/session/checkpoint.js +2 -0
  207. package/dist/session/clear-archive.d.ts +2 -2
  208. package/dist/session/persist.d.ts +2 -2
  209. package/dist/session/persist.js +20 -3
  210. package/dist/session/startup-session.d.ts +2 -2
  211. package/dist/session/validate-session.js +6 -3
  212. package/dist/skills/service.d.ts +2 -2
  213. package/dist/team/bus.d.ts +1 -1
  214. package/dist/team/bus.js +1 -1
  215. package/dist/team/child-reviewer.d.ts +2 -2
  216. package/dist/team/child-reviewer.js +1 -1
  217. package/dist/team/comm-tools.js +1 -1
  218. package/dist/team/dispatch-gate.js +1 -1
  219. package/dist/team/forced-dispatch.js +1 -1
  220. package/dist/team/forced-mode.d.ts +1 -1
  221. package/dist/team/forced-prompt.d.ts +1 -1
  222. package/dist/team/forced-prompt.js +1 -1
  223. package/dist/team/normalize.d.ts +1 -1
  224. package/dist/team/normalize.js +1 -1
  225. package/dist/team/overseer.d.ts +3 -3
  226. package/dist/team/overseer.js +3 -3
  227. package/dist/team/prompt.d.ts +1 -1
  228. package/dist/team/prompt.js +1 -1
  229. package/dist/team/report.d.ts +2 -2
  230. package/dist/team/report.js +2 -2
  231. package/dist/team/retry.d.ts +1 -1
  232. package/dist/team/retry.js +1 -1
  233. package/dist/team/runtime.d.ts +4 -4
  234. package/dist/team/runtime.js +2 -2
  235. package/dist/team/settled.d.ts +2 -2
  236. package/dist/team/subagent.d.ts +4 -4
  237. package/dist/team/subagent.js +5 -5
  238. package/dist/team/task-tool.d.ts +1 -1
  239. package/dist/team/task-tool.js +1 -1
  240. package/dist/todo/normalize.d.ts +1 -1
  241. package/dist/todo/normalize.js +1 -1
  242. package/dist/todo/prompt.d.ts +1 -1
  243. package/dist/todo/prompt.js +1 -1
  244. package/dist/todo/store.d.ts +1 -1
  245. package/dist/todo/store.js +2 -2
  246. package/dist/todo/todo-tool.d.ts +1 -1
  247. package/dist/todo/todo-tool.js +2 -2
  248. package/dist/tools/bash-tool.d.ts +1 -1
  249. package/dist/tools/bash-tool.js +2 -2
  250. package/dist/tools/diff.d.ts +1 -1
  251. package/dist/tools/diff.js +1 -1
  252. package/dist/tools/file-change-store.d.ts +1 -1
  253. package/dist/tools/fs-tools.d.ts +2 -2
  254. package/dist/tools/fs-tools.js +1 -1
  255. package/dist/tools/index.d.ts +3 -3
  256. package/dist/tools/index.js +1 -1
  257. package/dist/tools/job-tools.d.ts +14 -3
  258. package/dist/tools/job-tools.js +158 -35
  259. package/dist/tools/plan-tools.d.ts +1 -1
  260. package/dist/tools/plan-tools.js +1 -1
  261. package/dist/tools/proc-tools.d.ts +1 -1
  262. package/dist/tools/proc-tools.js +2 -2
  263. package/dist/update/classify-failure.d.ts +1 -1
  264. package/dist/update/install-lock.js +1 -1
  265. package/dist/update/install-source.d.ts +1 -1
  266. package/dist/update/installer.js +2 -2
  267. package/dist/update/npm-view.d.ts +1 -1
  268. package/dist/update/npm-view.js +1 -1
  269. package/dist/update/registry.d.ts +1 -1
  270. package/dist/update/registry.js +1 -1
  271. package/dist/update/service.d.ts +2 -2
  272. package/dist/update/service.js +2 -2
  273. package/package.json +7 -7
  274. package/dist/agent/agent-mode.d.ts +0 -108
  275. package/dist/agent/agent-mode.js +0 -121
  276. package/dist/agent/entry-limits.d.ts +0 -65
  277. package/dist/agent/entry-limits.js +0 -133
  278. package/dist/agent/governance-view.d.ts +0 -40
  279. package/dist/agent/governance-view.js +0 -40
  280. package/dist/agent/invocation-card.d.ts +0 -77
  281. package/dist/agent/invocation-card.js +0 -169
  282. package/dist/agent/model-probe-limits.d.ts +0 -39
  283. package/dist/agent/model-probe-limits.js +0 -25
  284. package/dist/agent/model-probe.d.ts +0 -104
  285. package/dist/agent/model-probe.js +0 -391
  286. package/dist/agent/queued-messages.d.ts +0 -23
  287. package/dist/agent/queued-messages.js +0 -49
  288. package/dist/agent/reducer.d.ts +0 -837
  289. package/dist/agent/reducer.js +0 -1617
  290. package/dist/agent/retry-view.d.ts +0 -68
  291. package/dist/agent/retry-view.js +0 -95
  292. package/dist/agent/usage.d.ts +0 -47
  293. package/dist/agent/usage.js +0 -84
  294. package/dist/compaction/limits.d.ts +0 -61
  295. package/dist/compaction/limits.js +0 -64
  296. package/dist/compaction/meter.d.ts +0 -276
  297. package/dist/compaction/meter.js +0 -512
  298. package/dist/compaction/pressure.d.ts +0 -163
  299. package/dist/compaction/pressure.js +0 -199
  300. package/dist/compaction/reason-text.d.ts +0 -36
  301. package/dist/compaction/reason-text.js +0 -78
  302. package/dist/compaction/types.d.ts +0 -360
  303. package/dist/compaction/types.js +0 -22
  304. package/dist/config/governance-config.d.ts +0 -125
  305. package/dist/config/governance-config.js +0 -164
  306. package/dist/config/kit-resolution.d.ts +0 -93
  307. package/dist/config/kit-resolution.js +0 -226
  308. package/dist/config/model-kits.d.ts +0 -225
  309. package/dist/config/model-kits.js +0 -302
  310. package/dist/config/model-profile-resolution.d.ts +0 -28
  311. package/dist/config/model-profile-resolution.js +0 -88
  312. package/dist/config/model-profiles.d.ts +0 -103
  313. package/dist/config/model-profiles.js +0 -188
  314. package/dist/config/schema.d.ts +0 -1645
  315. package/dist/config/schema.js +0 -1377
  316. package/dist/fast/limits.d.ts +0 -152
  317. package/dist/fast/limits.js +0 -152
  318. package/dist/fast/resolve.d.ts +0 -44
  319. package/dist/fast/resolve.js +0 -107
  320. package/dist/fast/task-summary-types.d.ts +0 -66
  321. package/dist/fast/task-summary-types.js +0 -17
  322. package/dist/fast/types.d.ts +0 -141
  323. package/dist/fast/types.js +0 -14
  324. package/dist/governance/governed-dispatch.d.ts +0 -19
  325. package/dist/governance/governed-dispatch.js +0 -17
  326. package/dist/governance/limits.d.ts +0 -107
  327. package/dist/governance/limits.js +0 -131
  328. package/dist/governance/posture.d.ts +0 -35
  329. package/dist/governance/posture.js +0 -59
  330. package/dist/governance/rules/events-table.d.ts +0 -46
  331. package/dist/governance/rules/events-table.js +0 -94
  332. package/dist/governance/types.d.ts +0 -661
  333. package/dist/governance/types.js +0 -27
  334. package/dist/input/control-sequences.d.ts +0 -71
  335. package/dist/input/control-sequences.js +0 -222
  336. package/dist/input/csiu-keys.d.ts +0 -66
  337. package/dist/input/csiu-keys.js +0 -181
  338. package/dist/input/cursor-report.d.ts +0 -61
  339. package/dist/input/cursor-report.js +0 -97
  340. package/dist/input/enter-sequences.d.ts +0 -64
  341. package/dist/input/enter-sequences.js +0 -153
  342. package/dist/input/interrupt-gesture.d.ts +0 -18
  343. package/dist/input/interrupt-gesture.js +0 -19
  344. package/dist/input/keyboard-enhancement.d.ts +0 -42
  345. package/dist/input/keyboard-enhancement.js +0 -65
  346. package/dist/input/keymap.d.ts +0 -20
  347. package/dist/input/keymap.js +0 -99
  348. package/dist/input/limits.d.ts +0 -118
  349. package/dist/input/limits.js +0 -109
  350. package/dist/input/mouse-events.d.ts +0 -87
  351. package/dist/input/mouse-events.js +0 -212
  352. package/dist/input/paste-parse.d.ts +0 -83
  353. package/dist/input/paste-parse.js +0 -107
  354. package/dist/input/pointer-router.d.ts +0 -11
  355. package/dist/input/pointer-router.js +0 -14
  356. package/dist/input/stdin-filter.d.ts +0 -112
  357. package/dist/input/stdin-filter.js +0 -657
  358. package/dist/input/win32-input-mode.d.ts +0 -61
  359. package/dist/input/win32-input-mode.js +0 -269
  360. package/dist/logging/levels.d.ts +0 -40
  361. package/dist/logging/levels.js +0 -59
  362. package/dist/logging/secret-registry.d.ts +0 -32
  363. package/dist/logging/secret-registry.js +0 -73
  364. package/dist/proc/limits.d.ts +0 -200
  365. package/dist/proc/limits.js +0 -207
  366. package/dist/proc/progress.d.ts +0 -40
  367. package/dist/proc/progress.js +0 -135
  368. package/dist/proc/types.d.ts +0 -263
  369. package/dist/proc/types.js +0 -15
  370. package/dist/prompts/copy.d.ts +0 -89
  371. package/dist/prompts/copy.js +0 -131
  372. package/dist/prompts/fill.d.ts +0 -51
  373. package/dist/prompts/fill.js +0 -46
  374. package/dist/prompts/limits.d.ts +0 -53
  375. package/dist/prompts/limits.js +0 -53
  376. package/dist/prompts/search.d.ts +0 -58
  377. package/dist/prompts/search.js +0 -146
  378. package/dist/prompts/types.d.ts +0 -204
  379. package/dist/prompts/types.js +0 -13
  380. package/dist/team/activity.d.ts +0 -67
  381. package/dist/team/activity.js +0 -130
  382. package/dist/team/limits.d.ts +0 -308
  383. package/dist/team/limits.js +0 -330
  384. package/dist/team/model.d.ts +0 -104
  385. package/dist/team/model.js +0 -150
  386. package/dist/team/panel-rows.d.ts +0 -48
  387. package/dist/team/panel-rows.js +0 -75
  388. package/dist/team/timeline.d.ts +0 -74
  389. package/dist/team/timeline.js +0 -101
  390. package/dist/team/types.d.ts +0 -354
  391. package/dist/team/types.js +0 -13
  392. package/dist/todo/acceptance.d.ts +0 -120
  393. package/dist/todo/acceptance.js +0 -399
  394. package/dist/todo/follow-through.d.ts +0 -138
  395. package/dist/todo/follow-through.js +0 -248
  396. package/dist/todo/limits.d.ts +0 -152
  397. package/dist/todo/limits.js +0 -152
  398. package/dist/todo/panel-rows.d.ts +0 -45
  399. package/dist/todo/panel-rows.js +0 -70
  400. package/dist/todo/plan-sections.d.ts +0 -60
  401. package/dist/todo/plan-sections.js +0 -108
  402. package/dist/todo/row-window.d.ts +0 -51
  403. package/dist/todo/row-window.js +0 -107
  404. package/dist/todo/types.d.ts +0 -124
  405. package/dist/todo/types.js +0 -12
  406. package/dist/tools/human-input.d.ts +0 -212
  407. package/dist/tools/human-input.js +0 -265
  408. package/dist/tools/patch.d.ts +0 -115
  409. package/dist/tools/patch.js +0 -453
  410. package/dist/tools/terminal-output.d.ts +0 -115
  411. package/dist/tools/terminal-output.js +0 -201
  412. package/dist/tools/tool-output-store.d.ts +0 -68
  413. package/dist/tools/tool-output-store.js +0 -102
  414. package/dist/ui/ActivityLine.d.ts +0 -26
  415. package/dist/ui/ActivityLine.js +0 -48
  416. package/dist/ui/AutocompletePopup.d.ts +0 -23
  417. package/dist/ui/AutocompletePopup.js +0 -17
  418. package/dist/ui/BottomStatusRow.d.ts +0 -10
  419. package/dist/ui/BottomStatusRow.js +0 -9
  420. package/dist/ui/Composer.d.ts +0 -115
  421. package/dist/ui/Composer.js +0 -64
  422. package/dist/ui/GovernancePanel.d.ts +0 -50
  423. package/dist/ui/GovernancePanel.js +0 -77
  424. package/dist/ui/GovernanceRun.d.ts +0 -18
  425. package/dist/ui/GovernanceRun.js +0 -11
  426. package/dist/ui/Header.d.ts +0 -48
  427. package/dist/ui/Header.js +0 -27
  428. package/dist/ui/Logo.d.ts +0 -32
  429. package/dist/ui/Logo.js +0 -65
  430. package/dist/ui/Markdown.d.ts +0 -29
  431. package/dist/ui/Markdown.js +0 -116
  432. package/dist/ui/PromptCaret.d.ts +0 -11
  433. package/dist/ui/PromptCaret.js +0 -31
  434. package/dist/ui/PromptInput.d.ts +0 -192
  435. package/dist/ui/PromptInput.js +0 -689
  436. package/dist/ui/QueuePanel.d.ts +0 -8
  437. package/dist/ui/QueuePanel.js +0 -9
  438. package/dist/ui/QueueStatusRow.d.ts +0 -24
  439. package/dist/ui/QueueStatusRow.js +0 -51
  440. package/dist/ui/ScrollbackShell.d.ts +0 -132
  441. package/dist/ui/ScrollbackShell.js +0 -26
  442. package/dist/ui/SessionOpener.d.ts +0 -30
  443. package/dist/ui/SessionOpener.js +0 -12
  444. package/dist/ui/StatusBar.d.ts +0 -129
  445. package/dist/ui/StatusBar.js +0 -61
  446. package/dist/ui/TeamPanel.d.ts +0 -76
  447. package/dist/ui/TeamPanel.js +0 -103
  448. package/dist/ui/ToastStack.d.ts +0 -8
  449. package/dist/ui/ToastStack.js +0 -31
  450. package/dist/ui/TodoPanel.d.ts +0 -52
  451. package/dist/ui/TodoPanel.js +0 -214
  452. package/dist/ui/Transcript.d.ts +0 -105
  453. package/dist/ui/Transcript.js +0 -251
  454. package/dist/ui/UpdateLine.d.ts +0 -44
  455. package/dist/ui/UpdateLine.js +0 -129
  456. package/dist/ui/activity-phrases.d.ts +0 -33
  457. package/dist/ui/activity-phrases.js +0 -50
  458. package/dist/ui/capabilities.d.ts +0 -27
  459. package/dist/ui/capabilities.js +0 -65
  460. package/dist/ui/clipboard-task.d.ts +0 -29
  461. package/dist/ui/clipboard-task.js +0 -66
  462. package/dist/ui/clipboard.d.ts +0 -31
  463. package/dist/ui/clipboard.js +0 -157
  464. package/dist/ui/color-runtime.d.ts +0 -5
  465. package/dist/ui/color-runtime.js +0 -29
  466. package/dist/ui/composer-input.d.ts +0 -38
  467. package/dist/ui/composer-input.js +0 -79
  468. package/dist/ui/composer-limits.d.ts +0 -30
  469. package/dist/ui/composer-limits.js +0 -45
  470. package/dist/ui/composer-rows.d.ts +0 -73
  471. package/dist/ui/composer-rows.js +0 -129
  472. package/dist/ui/console-bridge.d.ts +0 -19
  473. package/dist/ui/console-bridge.js +0 -52
  474. package/dist/ui/density.d.ts +0 -26
  475. package/dist/ui/density.js +0 -34
  476. package/dist/ui/display-tab.d.ts +0 -51
  477. package/dist/ui/display-tab.js +0 -82
  478. package/dist/ui/editor-navigation.d.ts +0 -55
  479. package/dist/ui/editor-navigation.js +0 -96
  480. package/dist/ui/editor-reducer.d.ts +0 -108
  481. package/dist/ui/editor-reducer.js +0 -187
  482. package/dist/ui/enter-frames.d.ts +0 -47
  483. package/dist/ui/enter-frames.js +0 -117
  484. package/dist/ui/entries/AssistantEntry.d.ts +0 -37
  485. package/dist/ui/entries/AssistantEntry.js +0 -43
  486. package/dist/ui/entries/CompactionCard.d.ts +0 -88
  487. package/dist/ui/entries/CompactionCard.js +0 -222
  488. package/dist/ui/entries/DiffView.d.ts +0 -61
  489. package/dist/ui/entries/DiffView.js +0 -103
  490. package/dist/ui/entries/EntryFrame.d.ts +0 -23
  491. package/dist/ui/entries/EntryFrame.js +0 -6
  492. package/dist/ui/entries/FastCard.d.ts +0 -53
  493. package/dist/ui/entries/FastCard.js +0 -105
  494. package/dist/ui/entries/GovernanceCard.d.ts +0 -30
  495. package/dist/ui/entries/GovernanceCard.js +0 -32
  496. package/dist/ui/entries/InvocationCard.d.ts +0 -20
  497. package/dist/ui/entries/InvocationCard.js +0 -32
  498. package/dist/ui/entries/QueuedEntry.d.ts +0 -27
  499. package/dist/ui/entries/QueuedEntry.js +0 -33
  500. package/dist/ui/entries/RetryCard.d.ts +0 -56
  501. package/dist/ui/entries/RetryCard.js +0 -60
  502. package/dist/ui/entries/ServiceCard.d.ts +0 -82
  503. package/dist/ui/entries/ServiceCard.js +0 -151
  504. package/dist/ui/entries/TeamCard.d.ts +0 -55
  505. package/dist/ui/entries/TeamCard.js +0 -94
  506. package/dist/ui/entries/TodoCard.d.ts +0 -54
  507. package/dist/ui/entries/TodoCard.js +0 -98
  508. package/dist/ui/entries/ToolCard.d.ts +0 -81
  509. package/dist/ui/entries/ToolCard.js +0 -160
  510. package/dist/ui/entries/ToolPreview.d.ts +0 -59
  511. package/dist/ui/entries/ToolPreview.js +0 -208
  512. package/dist/ui/entries/UserEntry.d.ts +0 -36
  513. package/dist/ui/entries/UserEntry.js +0 -57
  514. package/dist/ui/exit-snapshot.d.ts +0 -43
  515. package/dist/ui/exit-snapshot.js +0 -26
  516. package/dist/ui/frame-differ.d.ts +0 -166
  517. package/dist/ui/frame-differ.js +0 -354
  518. package/dist/ui/frame-observer.d.ts +0 -17
  519. package/dist/ui/frame-observer.js +0 -94
  520. package/dist/ui/frame-parser.d.ts +0 -7
  521. package/dist/ui/frame-parser.js +0 -18
  522. package/dist/ui/gauge.d.ts +0 -39
  523. package/dist/ui/gauge.js +0 -55
  524. package/dist/ui/glyphs.d.ts +0 -178
  525. package/dist/ui/glyphs.js +0 -165
  526. package/dist/ui/governance-copy.d.ts +0 -69
  527. package/dist/ui/governance-copy.js +0 -104
  528. package/dist/ui/governance-status.d.ts +0 -145
  529. package/dist/ui/governance-status.js +0 -326
  530. package/dist/ui/gradient.d.ts +0 -11
  531. package/dist/ui/gradient.js +0 -50
  532. package/dist/ui/ink-runtime.d.ts +0 -4
  533. package/dist/ui/ink-runtime.js +0 -51
  534. package/dist/ui/interaction-copy.d.ts +0 -82
  535. package/dist/ui/interaction-copy.js +0 -38
  536. package/dist/ui/interaction-hints.d.ts +0 -44
  537. package/dist/ui/interaction-hints.js +0 -97
  538. package/dist/ui/layout/AppShell.d.ts +0 -17
  539. package/dist/ui/layout/AppShell.js +0 -6
  540. package/dist/ui/layout/Gutter.d.ts +0 -67
  541. package/dist/ui/layout/Gutter.js +0 -42
  542. package/dist/ui/layout/MeasuredEntry.d.ts +0 -21
  543. package/dist/ui/layout/MeasuredEntry.js +0 -30
  544. package/dist/ui/layout/OverlayFrame.d.ts +0 -73
  545. package/dist/ui/layout/OverlayFrame.js +0 -110
  546. package/dist/ui/layout/ScrollIndicator.d.ts +0 -32
  547. package/dist/ui/layout/ScrollIndicator.js +0 -22
  548. package/dist/ui/layout/ScrollViewport.d.ts +0 -40
  549. package/dist/ui/layout/ScrollViewport.js +0 -222
  550. package/dist/ui/layout/agents-board.d.ts +0 -102
  551. package/dist/ui/layout/agents-board.js +0 -389
  552. package/dist/ui/layout/autocomplete.d.ts +0 -18
  553. package/dist/ui/layout/autocomplete.js +0 -26
  554. package/dist/ui/layout/budget.d.ts +0 -43
  555. package/dist/ui/layout/budget.js +0 -52
  556. package/dist/ui/layout/cells.d.ts +0 -61
  557. package/dist/ui/layout/cells.js +0 -156
  558. package/dist/ui/layout/document-layout.d.ts +0 -13
  559. package/dist/ui/layout/document-layout.js +0 -10
  560. package/dist/ui/layout/follow-state.d.ts +0 -138
  561. package/dist/ui/layout/follow-state.js +0 -148
  562. package/dist/ui/layout/frame.d.ts +0 -36
  563. package/dist/ui/layout/frame.js +0 -39
  564. package/dist/ui/layout/governance-board.d.ts +0 -121
  565. package/dist/ui/layout/governance-board.js +0 -382
  566. package/dist/ui/layout/governance-card.d.ts +0 -53
  567. package/dist/ui/layout/governance-card.js +0 -134
  568. package/dist/ui/layout/governance-chip.d.ts +0 -38
  569. package/dist/ui/layout/governance-chip.js +0 -64
  570. package/dist/ui/layout/governance-panel.d.ts +0 -85
  571. package/dist/ui/layout/governance-panel.js +0 -358
  572. package/dist/ui/layout/governance-roster.d.ts +0 -65
  573. package/dist/ui/layout/governance-roster.js +0 -275
  574. package/dist/ui/layout/header-hints.d.ts +0 -90
  575. package/dist/ui/layout/header-hints.js +0 -110
  576. package/dist/ui/layout/header-left.d.ts +0 -115
  577. package/dist/ui/layout/header-left.js +0 -206
  578. package/dist/ui/layout/invocation-card.d.ts +0 -41
  579. package/dist/ui/layout/invocation-card.js +0 -91
  580. package/dist/ui/layout/kit-chip.d.ts +0 -50
  581. package/dist/ui/layout/kit-chip.js +0 -81
  582. package/dist/ui/layout/overlay-window.d.ts +0 -43
  583. package/dist/ui/layout/overlay-window.js +0 -51
  584. package/dist/ui/layout/queue-layout.d.ts +0 -19
  585. package/dist/ui/layout/queue-layout.js +0 -26
  586. package/dist/ui/layout/rail.d.ts +0 -7
  587. package/dist/ui/layout/rail.js +0 -16
  588. package/dist/ui/layout/scroll-indicator.d.ts +0 -27
  589. package/dist/ui/layout/scroll-indicator.js +0 -36
  590. package/dist/ui/layout/scroll.d.ts +0 -37
  591. package/dist/ui/layout/scroll.js +0 -99
  592. package/dist/ui/layout/scrollbar-geometry.d.ts +0 -17
  593. package/dist/ui/layout/scrollbar-geometry.js +0 -13
  594. package/dist/ui/layout/session-chip.d.ts +0 -52
  595. package/dist/ui/layout/session-chip.js +0 -64
  596. package/dist/ui/layout/shortcut-panel-layout.d.ts +0 -191
  597. package/dist/ui/layout/shortcut-panel-layout.js +0 -321
  598. package/dist/ui/layout/status-detail-layout.d.ts +0 -9
  599. package/dist/ui/layout/status-detail-layout.js +0 -79
  600. package/dist/ui/layout/status-layout.d.ts +0 -139
  601. package/dist/ui/layout/status-layout.js +0 -253
  602. package/dist/ui/layout/task-summary-cell.d.ts +0 -61
  603. package/dist/ui/layout/task-summary-cell.js +0 -65
  604. package/dist/ui/layout/team-panel.d.ts +0 -18
  605. package/dist/ui/layout/team-panel.js +0 -25
  606. package/dist/ui/layout/team-row.d.ts +0 -139
  607. package/dist/ui/layout/team-row.js +0 -246
  608. package/dist/ui/layout/todo-layout.d.ts +0 -62
  609. package/dist/ui/layout/todo-layout.js +0 -102
  610. package/dist/ui/layout/useTerminalSize.d.ts +0 -13
  611. package/dist/ui/layout/useTerminalSize.js +0 -50
  612. package/dist/ui/layout/viewport-geometry.d.ts +0 -29
  613. package/dist/ui/layout/viewport-geometry.js +0 -28
  614. package/dist/ui/layout/virtual-window.d.ts +0 -112
  615. package/dist/ui/layout/virtual-window.js +0 -488
  616. package/dist/ui/layout/wrap-rows.d.ts +0 -26
  617. package/dist/ui/layout/wrap-rows.js +0 -88
  618. package/dist/ui/live-clamp.d.ts +0 -14
  619. package/dist/ui/live-clamp.js +0 -46
  620. package/dist/ui/markdown-blocks.d.ts +0 -107
  621. package/dist/ui/markdown-blocks.js +0 -240
  622. package/dist/ui/overlays/AgentsBoardOverlay.d.ts +0 -57
  623. package/dist/ui/overlays/AgentsBoardOverlay.js +0 -183
  624. package/dist/ui/overlays/ConfirmDialog.d.ts +0 -31
  625. package/dist/ui/overlays/ConfirmDialog.js +0 -44
  626. package/dist/ui/overlays/GovernanceBoardOverlay.d.ts +0 -41
  627. package/dist/ui/overlays/GovernanceBoardOverlay.js +0 -76
  628. package/dist/ui/overlays/GovernanceSettingsPage.d.ts +0 -48
  629. package/dist/ui/overlays/GovernanceSettingsPage.js +0 -93
  630. package/dist/ui/overlays/HelpOverlay.d.ts +0 -29
  631. package/dist/ui/overlays/HelpOverlay.js +0 -232
  632. package/dist/ui/overlays/KitEditor.d.ts +0 -23
  633. package/dist/ui/overlays/KitEditor.js +0 -101
  634. package/dist/ui/overlays/KitManager.d.ts +0 -23
  635. package/dist/ui/overlays/KitManager.js +0 -104
  636. package/dist/ui/overlays/KitPicker.d.ts +0 -49
  637. package/dist/ui/overlays/KitPicker.js +0 -58
  638. package/dist/ui/overlays/ModelDiscoveryList.d.ts +0 -23
  639. package/dist/ui/overlays/ModelDiscoveryList.js +0 -161
  640. package/dist/ui/overlays/ModelPicker.d.ts +0 -26
  641. package/dist/ui/overlays/ModelPicker.js +0 -63
  642. package/dist/ui/overlays/ModelProfileEditor.d.ts +0 -29
  643. package/dist/ui/overlays/ModelProfileEditor.js +0 -168
  644. package/dist/ui/overlays/ModelProfilePicker.d.ts +0 -48
  645. package/dist/ui/overlays/ModelProfilePicker.js +0 -231
  646. package/dist/ui/overlays/PlanReviewOverlay.d.ts +0 -51
  647. package/dist/ui/overlays/PlanReviewOverlay.js +0 -132
  648. package/dist/ui/overlays/PromptEditorPage.d.ts +0 -48
  649. package/dist/ui/overlays/PromptEditorPage.js +0 -227
  650. package/dist/ui/overlays/PromptLibraryOverlay.d.ts +0 -37
  651. package/dist/ui/overlays/PromptLibraryOverlay.js +0 -191
  652. package/dist/ui/overlays/PromptPicker.d.ts +0 -36
  653. package/dist/ui/overlays/PromptPicker.js +0 -129
  654. package/dist/ui/overlays/PromptTextArea.d.ts +0 -86
  655. package/dist/ui/overlays/PromptTextArea.js +0 -141
  656. package/dist/ui/overlays/QuestionOverlay.d.ts +0 -39
  657. package/dist/ui/overlays/QuestionOverlay.js +0 -258
  658. package/dist/ui/overlays/QueueOverlay.d.ts +0 -22
  659. package/dist/ui/overlays/QueueOverlay.js +0 -79
  660. package/dist/ui/overlays/SettingsScreen.d.ts +0 -228
  661. package/dist/ui/overlays/SettingsScreen.js +0 -1037
  662. package/dist/ui/overlays/ShortcutPanel.d.ts +0 -39
  663. package/dist/ui/overlays/ShortcutPanel.js +0 -106
  664. package/dist/ui/overlays/TeamFanoutPage.d.ts +0 -51
  665. package/dist/ui/overlays/TeamFanoutPage.js +0 -90
  666. package/dist/ui/overlays/governance-settings.d.ts +0 -79
  667. package/dist/ui/overlays/governance-settings.js +0 -140
  668. package/dist/ui/overlays/kit-picker-state.d.ts +0 -87
  669. package/dist/ui/overlays/kit-picker-state.js +0 -136
  670. package/dist/ui/overlays/kit-settings-state.d.ts +0 -129
  671. package/dist/ui/overlays/kit-settings-state.js +0 -268
  672. package/dist/ui/overlays/model-probe-view.d.ts +0 -128
  673. package/dist/ui/overlays/model-probe-view.js +0 -225
  674. package/dist/ui/overlays/model-profile-state.d.ts +0 -177
  675. package/dist/ui/overlays/model-profile-state.js +0 -301
  676. package/dist/ui/overlays/prompt-library-state.d.ts +0 -162
  677. package/dist/ui/overlays/prompt-library-state.js +0 -335
  678. package/dist/ui/overlays/prompt-picker-state.d.ts +0 -71
  679. package/dist/ui/overlays/prompt-picker-state.js +0 -98
  680. package/dist/ui/overlays/team-fanout-state.d.ts +0 -106
  681. package/dist/ui/overlays/team-fanout-state.js +0 -155
  682. package/dist/ui/overlays/use-model-probe.d.ts +0 -30
  683. package/dist/ui/overlays/use-model-probe.js +0 -109
  684. package/dist/ui/palettes.d.ts +0 -112
  685. package/dist/ui/palettes.js +0 -130
  686. package/dist/ui/paste-frames.d.ts +0 -91
  687. package/dist/ui/paste-frames.js +0 -117
  688. package/dist/ui/paste-tokens.d.ts +0 -90
  689. package/dist/ui/paste-tokens.js +0 -147
  690. package/dist/ui/render-cache.d.ts +0 -81
  691. package/dist/ui/render-cache.js +0 -196
  692. package/dist/ui/render-governor.d.ts +0 -54
  693. package/dist/ui/render-governor.js +0 -78
  694. package/dist/ui/run-metrics.d.ts +0 -23
  695. package/dist/ui/run-metrics.js +0 -27
  696. package/dist/ui/run-status-row.d.ts +0 -61
  697. package/dist/ui/run-status-row.js +0 -54
  698. package/dist/ui/screen.d.ts +0 -107
  699. package/dist/ui/screen.js +0 -234
  700. package/dist/ui/scrollback/LiveTail.d.ts +0 -115
  701. package/dist/ui/scrollback/LiveTail.js +0 -48
  702. package/dist/ui/scrollback/band.d.ts +0 -114
  703. package/dist/ui/scrollback/band.js +0 -143
  704. package/dist/ui/scrollback/budget.d.ts +0 -90
  705. package/dist/ui/scrollback/budget.js +0 -100
  706. package/dist/ui/scrollback/canvas.d.ts +0 -100
  707. package/dist/ui/scrollback/canvas.js +0 -114
  708. package/dist/ui/scrollback/cursor-probe.d.ts +0 -71
  709. package/dist/ui/scrollback/cursor-probe.js +0 -133
  710. package/dist/ui/scrollback/drain.d.ts +0 -32
  711. package/dist/ui/scrollback/drain.js +0 -64
  712. package/dist/ui/scrollback/exit-summary.d.ts +0 -23
  713. package/dist/ui/scrollback/exit-summary.js +0 -25
  714. package/dist/ui/scrollback/limits.d.ts +0 -98
  715. package/dist/ui/scrollback/limits.js +0 -98
  716. package/dist/ui/scrollback/live-preview.d.ts +0 -34
  717. package/dist/ui/scrollback/live-preview.js +0 -118
  718. package/dist/ui/scrollback/overflow-print.d.ts +0 -108
  719. package/dist/ui/scrollback/overflow-print.js +0 -120
  720. package/dist/ui/scrollback/renderer.d.ts +0 -48
  721. package/dist/ui/scrollback/renderer.js +0 -186
  722. package/dist/ui/scrollback/scrollback-writer.d.ts +0 -174
  723. package/dist/ui/scrollback/scrollback-writer.js +0 -648
  724. package/dist/ui/scrollback/settled-boundary.d.ts +0 -42
  725. package/dist/ui/scrollback/settled-boundary.js +0 -109
  726. package/dist/ui/scrollback/tail-anchor.d.ts +0 -71
  727. package/dist/ui/scrollback/tail-anchor.js +0 -79
  728. package/dist/ui/scrollback/tail-window.d.ts +0 -73
  729. package/dist/ui/scrollback/tail-window.js +0 -89
  730. package/dist/ui/scrollback/use-scrollback-view.d.ts +0 -139
  731. package/dist/ui/scrollback/use-scrollback-view.js +0 -601
  732. package/dist/ui/scrollback/writer-shapes.d.ts +0 -127
  733. package/dist/ui/scrollback/writer-shapes.js +0 -159
  734. package/dist/ui/scrollbar-controller.d.ts +0 -30
  735. package/dist/ui/scrollbar-controller.js +0 -124
  736. package/dist/ui/selection/highlight.d.ts +0 -39
  737. package/dist/ui/selection/highlight.js +0 -64
  738. package/dist/ui/selection/screen-mirror.d.ts +0 -24
  739. package/dist/ui/selection/screen-mirror.js +0 -35
  740. package/dist/ui/selection/selection-controller.d.ts +0 -104
  741. package/dist/ui/selection/selection-controller.js +0 -372
  742. package/dist/ui/selection/selection.d.ts +0 -90
  743. package/dist/ui/selection/selection.js +0 -223
  744. package/dist/ui/shortcuts.d.ts +0 -81
  745. package/dist/ui/shortcuts.js +0 -221
  746. package/dist/ui/status-feedback.d.ts +0 -35
  747. package/dist/ui/status-feedback.js +0 -38
  748. package/dist/ui/stdout-frame-writer.d.ts +0 -74
  749. package/dist/ui/stdout-frame-writer.js +0 -155
  750. package/dist/ui/team-status.d.ts +0 -166
  751. package/dist/ui/team-status.js +0 -252
  752. package/dist/ui/terminal-plan.d.ts +0 -52
  753. package/dist/ui/terminal-plan.js +0 -49
  754. package/dist/ui/theme.d.ts +0 -96
  755. package/dist/ui/theme.js +0 -130
  756. package/dist/ui/transcript-text.d.ts +0 -41
  757. package/dist/ui/transcript-text.js +0 -282
  758. package/dist/ui/use-height-store.d.ts +0 -31
  759. package/dist/ui/use-height-store.js +0 -76
  760. package/dist/ui/use-render-governor.d.ts +0 -39
  761. package/dist/ui/use-render-governor.js +0 -57
  762. package/dist/ui/use-wheel-routing.d.ts +0 -57
  763. package/dist/ui/use-wheel-routing.js +0 -152
  764. package/dist/ui/win-vt-force.d.ts +0 -136
  765. package/dist/ui/win-vt-force.js +0 -237
  766. package/dist/ui/win-vt-input.d.ts +0 -57
  767. package/dist/ui/win-vt-input.js +0 -62
  768. package/dist/update/limits.d.ts +0 -111
  769. package/dist/update/limits.js +0 -111
  770. package/dist/update/semver.d.ts +0 -89
  771. package/dist/update/semver.js +0 -295
  772. package/dist/update/types.d.ts +0 -169
  773. package/dist/update/types.js +0 -68
  774. /package/dist/{ui → app}/session-bridge.d.ts +0 -0
  775. /package/dist/{ui → app}/session-bridge.js +0 -0
@@ -1,41 +0,0 @@
1
- /**
2
- * GovernanceBoardOverlay - the read-only `/gov board` overview
3
- * (governance-mode section 10.5).
4
- *
5
- * ASCII ONLY: every symbol comes through `glyphs`.
6
- *
7
- * READ-ONLY IS THE SAFETY BOUNDARY, as for the Agents board: nothing here scores, rules
8
- * or resolves anything. The only side effect is `e`, which asks the owner to copy the
9
- * `board.md` path.
10
- *
11
- * `OverlayFrame` SELF-MANAGED MODE, with this file owning the window. The tab strip must
12
- * stay put while the rows scroll, which the frame's controlled mode (it windows EVERY row
13
- * it is given) cannot do; so the body is "one strip row + a window of rows" and the
14
- * windowing is `sliceWindow` through `boardWindow`, the arithmetic the frame itself uses.
15
- * `PgUp` / `PgDn` / the wheel arrive through `App`'s `controlled` overlay list as
16
- * `scrollOffset`; Up/Down and Left/Right are this component's own keys, the same split the
17
- * Agents board makes.
18
- *
19
- * NO `ink-spinner` and no motion prop (spinner-census): this is a reading surface.
20
- */
21
- import React from 'react';
22
- import type { Theme } from '../theme.js';
23
- import type { TermCapabilities } from '../capabilities.js';
24
- import { type BoardTab, type GovernanceBoardData } from '../layout/governance-board.js';
25
- export interface GovernanceBoardOverlayProps {
26
- /** The board's data, or null when there is no governed run to show. */
27
- data: GovernanceBoardData | null;
28
- /** The overlay's FRAME width (`App`'s `viewCols`). */
29
- cols: number;
30
- maxRows: number;
31
- scrollOffset: number;
32
- onScrollClamp: (offset: number) => void;
33
- isActive: boolean;
34
- theme: Theme;
35
- caps: TermCapabilities;
36
- /** `e`: copy the board file path. Absent = the key reports the path as unavailable. */
37
- onCopyPath?: (path: string) => void;
38
- onNotice?: (level: 'info' | 'warn', text: string) => void;
39
- initialTab?: BoardTab;
40
- }
41
- export declare function GovernanceBoardOverlay({ data, cols, maxRows, scrollOffset, onScrollClamp, isActive, theme, caps, onCopyPath, onNotice, initialTab, }: GovernanceBoardOverlayProps): React.ReactElement;
@@ -1,76 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * GovernanceBoardOverlay - the read-only `/gov board` overview
4
- * (governance-mode section 10.5).
5
- *
6
- * ASCII ONLY: every symbol comes through `glyphs`.
7
- *
8
- * READ-ONLY IS THE SAFETY BOUNDARY, as for the Agents board: nothing here scores, rules
9
- * or resolves anything. The only side effect is `e`, which asks the owner to copy the
10
- * `board.md` path.
11
- *
12
- * `OverlayFrame` SELF-MANAGED MODE, with this file owning the window. The tab strip must
13
- * stay put while the rows scroll, which the frame's controlled mode (it windows EVERY row
14
- * it is given) cannot do; so the body is "one strip row + a window of rows" and the
15
- * windowing is `sliceWindow` through `boardWindow`, the arithmetic the frame itself uses.
16
- * `PgUp` / `PgDn` / the wheel arrive through `App`'s `controlled` overlay list as
17
- * `scrollOffset`; Up/Down and Left/Right are this component's own keys, the same split the
18
- * Agents board makes.
19
- *
20
- * NO `ink-spinner` and no motion prop (spinner-census): this is a reading surface.
21
- */
22
- import { useEffect, useRef, useState } from 'react';
23
- import { Box, Text, useInput } from 'ink';
24
- import { pickGlyphs } from '../glyphs.js';
25
- import { OverlayFrame, overlayBodyRows } from '../layout/OverlayFrame.js';
26
- import { boardBodyRows, boardHint, boardPosition, boardWindow, buildGovernanceBoardLayout, stepTab, } from '../layout/governance-board.js';
27
- import { cellWidth } from '../layout/cells.js';
28
- import { GovernanceLine } from '../GovernanceRun.js';
29
- import { BOARD_COPIED, BOARD_NO_PATH, BOARD_TITLE } from '../governance-copy.js';
30
- /** `OverlayFrame`'s own breakpoint, mirrored so the chrome estimate cannot drift. */
31
- const FRAME_BORDERLESS_COLS = 48;
32
- export function GovernanceBoardOverlay({ data, cols, maxRows, scrollOffset, onScrollClamp, isActive, theme, caps, onCopyPath, onNotice, initialTab = 'roster', }) {
33
- const glyphs = pickGlyphs(caps);
34
- const [tab, setTab] = useState(initialTab);
35
- // The frame spends 4 of `cols` on its border + padding (2 in the narrow rail form), so a
36
- // board planned against the frame width would lose its last four columns to truncation.
37
- const contentCols = Math.max(1, cols - (cols >= FRAME_BORDERLESS_COLS ? 4 : 2));
38
- const layout = buildGovernanceBoardLayout({ cols: contentCols, tab, data, glyphs });
39
- const height = boardBodyRows(overlayBodyRows(maxRows, cols));
40
- const window = boardWindow(layout.lines.length, scrollOffset, height);
41
- const position = boardPosition(window, glyphs);
42
- useEffect(() => {
43
- if (window.clamped !== scrollOffset)
44
- onScrollClamp(window.clamped);
45
- }, [window.clamped, scrollOffset, onScrollClamp]);
46
- // The offset the NEXT key press starts from. A held Down key delivers several presses
47
- // before React re-renders; stepping from the rendered value would turn three presses
48
- // into one row of movement.
49
- const offsetRef = useRef(window.clamped);
50
- offsetRef.current = window.clamped;
51
- useInput((input, key) => {
52
- if (!isActive)
53
- return;
54
- if (key.leftArrow || key.rightArrow) {
55
- setTab((current) => stepTab(current, key.rightArrow ? 1 : -1));
56
- offsetRef.current = 0;
57
- onScrollClamp(0);
58
- return;
59
- }
60
- if (key.upArrow || key.downArrow) {
61
- offsetRef.current = Math.max(0, offsetRef.current + (key.upArrow ? -1 : 1));
62
- onScrollClamp(offsetRef.current);
63
- }
64
- else if (input === 'e' || input === 'E') {
65
- const path = data?.boardPath ?? null;
66
- if (path === null || onCopyPath === undefined) {
67
- onNotice?.('warn', BOARD_NO_PATH);
68
- return;
69
- }
70
- onCopyPath(path);
71
- onNotice?.('info', BOARD_COPIED);
72
- }
73
- }, { isActive });
74
- const visible = layout.lines.slice(window.start, window.start + window.visible);
75
- return (_jsxs(OverlayFrame, { title: BOARD_TITLE, hint: boardHint(contentCols, glyphs), maxRows: maxRows, cols: cols, theme: theme, caps: caps, children: [_jsxs(Box, { flexDirection: "row", height: 1, flexShrink: 0, children: [_jsx(Box, { flexGrow: 1, flexShrink: 1, overflow: "hidden", children: _jsx(GovernanceLine, { segments: layout.tabStrip.segments, theme: theme }) }), position !== '' && (_jsx(Box, { width: cellWidth(position) + 1, flexShrink: 0, justifyContent: "flex-end", children: _jsx(Text, { color: theme.muted, children: position }) }))] }), visible.map((line) => (_jsx(GovernanceLine, { segments: line.segments, theme: theme }, line.key)))] }));
76
- }
@@ -1,48 +0,0 @@
1
- /**
2
- * Settings > Governance: eleven arrows-adjustable rows (governance-mode-v1-1 5, closing
3
- * governance-mode IF-13).
4
- *
5
- * ASCII ONLY - `src/ui/**` is inside `glyphs.test.ts::inScope`.
6
- *
7
- * THIS IS `TeamFanoutPage` WITH A DIFFERENT TABLE, ON PURPOSE. Every defence that page
8
- * carries was paid for by a real defect, so each one is inherited verbatim:
9
- *
10
- * - THE PAGE OWNS ONE PIECE OF STATE, its cursor. Every value comes from `props.view.rows`,
11
- * which `SettingsScreen` derives from the reducer; a second copy of the draft here could
12
- * disagree with the root page about what Ctrl+S is about to save.
13
- * - `Enter` TOGGLES THE SWITCH ROWS AND DOES NOTHING ON A NUMBER (R-P1-12). A stray Return
14
- * that silently changed a number is indistinguishable from a bug, and the arrow keys are
15
- * already the obvious control there.
16
- * - IT DOES NOT LISTEN FOR Ctrl+S, AND THE FOOTER SAYS SO (R-P1-13). `useRootSettingsInput`
17
- * gates its `useInput` on `state.page === 'root'`, so a subpage has no save listener at
18
- * all; a footer promising "Ctrl+S saves here" would be a lie the user acts on.
19
- *
20
- * THE RESTART NOTE IS THE ONE THING THIS PAGE ADDS. `enabled` is a REGISTRATION key: the tool
21
- * array is fixed when the session is built, so flipping it here changes the file and the
22
- * next launch, not this session. The note sits under that row so the consequence is read
23
- * where the choice is made.
24
- */
25
- import React from 'react';
26
- import { type ProfileFrameProps } from './ModelProfilePicker.js';
27
- import type { GovernanceSettingKey, GovernanceSettingRow } from './governance-settings.js';
28
- /** What the page may ask the screen to change. */
29
- export interface GovernanceSettingsAction {
30
- type: 'governance-step';
31
- key: GovernanceSettingKey;
32
- delta: -1 | 1;
33
- }
34
- export interface GovernanceSettingsView {
35
- /** Exactly eleven, in the fixed order the cursor indexes. */
36
- rows: GovernanceSettingRow[];
37
- error?: string;
38
- /** Shown under the first row; `null` when the draft agrees with this session. */
39
- restartNote: string | null;
40
- }
41
- interface GovernanceSettingsPageProps extends ProfileFrameProps {
42
- view: GovernanceSettingsView;
43
- dispatch: (action: GovernanceSettingsAction) => void;
44
- /** Esc: back to the settings root. The draft is NOT discarded here. */
45
- onBack: () => void;
46
- }
47
- export declare function GovernanceSettingsPage(props: GovernanceSettingsPageProps): React.ReactElement;
48
- export {};
@@ -1,93 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- /**
3
- * Settings > Governance: eleven arrows-adjustable rows (governance-mode-v1-1 5, closing
4
- * governance-mode IF-13).
5
- *
6
- * ASCII ONLY - `src/ui/**` is inside `glyphs.test.ts::inScope`.
7
- *
8
- * THIS IS `TeamFanoutPage` WITH A DIFFERENT TABLE, ON PURPOSE. Every defence that page
9
- * carries was paid for by a real defect, so each one is inherited verbatim:
10
- *
11
- * - THE PAGE OWNS ONE PIECE OF STATE, its cursor. Every value comes from `props.view.rows`,
12
- * which `SettingsScreen` derives from the reducer; a second copy of the draft here could
13
- * disagree with the root page about what Ctrl+S is about to save.
14
- * - `Enter` TOGGLES THE SWITCH ROWS AND DOES NOTHING ON A NUMBER (R-P1-12). A stray Return
15
- * that silently changed a number is indistinguishable from a bug, and the arrow keys are
16
- * already the obvious control there.
17
- * - IT DOES NOT LISTEN FOR Ctrl+S, AND THE FOOTER SAYS SO (R-P1-13). `useRootSettingsInput`
18
- * gates its `useInput` on `state.page === 'root'`, so a subpage has no save listener at
19
- * all; a footer promising "Ctrl+S saves here" would be a lie the user acts on.
20
- *
21
- * THE RESTART NOTE IS THE ONE THING THIS PAGE ADDS. `enabled` is a REGISTRATION key: the tool
22
- * array is fixed when the session is built, so flipping it here changes the file and the
23
- * next launch, not this session. The note sits under that row so the consequence is read
24
- * where the choice is made.
25
- */
26
- import { useState } from 'react';
27
- import { Text, useInput } from 'ink';
28
- import { pickGlyphs } from '../glyphs.js';
29
- import { OverlayFrame } from '../layout/OverlayFrame.js';
30
- import { clipProfileText, useProfileScroll } from './ModelProfilePicker.js';
31
- /** Matches the root page's `padEnd(18)` rows so the value column lines up (measured). */
32
- const LABEL_PAD = 18;
33
- /** The rows `Enter` flips, and nothing else (R-P1-12). */
34
- const TOGGLE_KEYS = new Set([
35
- 'enabled',
36
- 'shiftTab',
37
- 'panel',
38
- 'confirmCharter',
39
- ]);
40
- export function GovernanceSettingsPage(props) {
41
- const [index, setIndex] = useState(0);
42
- const rows = props.view.rows;
43
- const count = Math.max(1, rows.length);
44
- const cursor = Math.min(index, count - 1);
45
- const focused = rows[cursor];
46
- const note = props.view.restartNote;
47
- // The note is one extra LINE after row 0, so every later row sits one line lower.
48
- const offset = useProfileScroll(props, cursor + (note !== null && cursor > 0 ? 1 : 0));
49
- const nudge = (delta) => {
50
- if (focused)
51
- props.dispatch({ type: 'governance-step', key: focused.key, delta });
52
- };
53
- const handleKey = (key) => {
54
- if (key.escape) {
55
- props.onBack();
56
- return;
57
- }
58
- if (key.upArrow || (key.tab && key.shift)) {
59
- setIndex((cursor - 1 + count) % count);
60
- return;
61
- }
62
- if (key.downArrow || key.tab) {
63
- setIndex((cursor + 1) % count);
64
- return;
65
- }
66
- if (key.leftArrow || key.rightArrow) {
67
- nudge(key.leftArrow ? -1 : 1);
68
- return;
69
- }
70
- // `Enter` toggles the switch rows and does NOTHING on a numeric or choice row.
71
- if (key.return && focused && TOGGLE_KEYS.has(focused.key))
72
- nudge(1);
73
- };
74
- useInput((_input, key) => {
75
- if (props.isActive === false)
76
- return;
77
- handleKey(key);
78
- });
79
- const glyphs = pickGlyphs(props.caps);
80
- const body = [];
81
- rows.forEach((row, at) => {
82
- const line = `${row.label.padEnd(LABEL_PAD)}${row.value}`;
83
- body.push(_jsx(Text, { wrap: "truncate", color: at === cursor ? props.theme.accent : props.theme.muted, children: `${at === cursor ? glyphs.caret : ' '} ${clipProfileText(line, props.cols - 8)}` }, row.key));
84
- if (at === 0 && note !== null) {
85
- body.push(_jsx(Text, { wrap: "truncate", color: props.theme.muted, children: ` ${clipProfileText(note, props.cols - 8)}` }, "restart-note"));
86
- }
87
- });
88
- // The hint explains the FOCUSED row: the range and the reason are the point of the page.
89
- if (focused) {
90
- body.push(_jsx(Text, { wrap: "truncate", color: props.theme.muted, children: clipProfileText(focused.hint, props.cols - 8) }, "hint"));
91
- }
92
- return _jsx(OverlayFrame, { ...props, rows: body, scrollOffset: offset, title: props.view.error ?? 'Governance', hint: "Arrows adjust. Esc goes back; Ctrl+S on the main page saves." });
93
- }
@@ -1,29 +0,0 @@
1
- /**
2
- * Help overlay — keybindings and slash-command reference (spec §5.2 / §5.3).
3
- *
4
- * Emits a flat array of ONE-ROW elements for `OverlayFrame`'s controlled mode
5
- * rather than a nested tree. This content is 29 rows tall against a 15-row
6
- * viewport on a 30-row terminal; before v0.4.0 everything past `/clear` was
7
- * clipped by `overflow: hidden` with no scrollbar, no indicator, and no way to
8
- * reach it. Slicing is done by element, so every row must be exactly one row —
9
- * hence the unconditional `wrap="truncate"`: the first keybinding description
10
- * alone is 100 characters with its padding and would wrap on any normal
11
- * terminal, silently desynchronising the position indicator (R-8).
12
- */
13
- import React from 'react';
14
- import type { Theme } from '../theme.js';
15
- import type { TermCapabilities } from '../capabilities.js';
16
- /**
17
- * The key column of every binding row, EXPORTED so the drawer's drift guard can read
18
- * the real table instead of scraping this file with a regex
19
- * (tui-shortcut-drawer-and-task-summary D-8 / AC-5).
20
- *
21
- * A SOURCE SCRAPE WOULD PASS ON A COMMENT: the regex has no way to tell a key row
22
- * from a legend row from a line inside a block comment, and the guard's whole job is
23
- * to notice a row someone forgot.
24
- */
25
- export declare function allKeyRows(times: string): [string, string][];
26
- /** The slash-command table's key column, for the same guard (commands are not keys). */
27
- export declare function allCommandRows(): [string, string][];
28
- /** Build the overlay's rows. Exported so `app.test.tsx` can count them. */
29
- export declare function helpRows(theme: Theme, caps: TermCapabilities, native?: boolean): React.ReactElement[];
@@ -1,232 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Text } from 'ink';
3
- import { pickGlyphs } from '../glyphs.js';
4
- const KEY_PAD = 24;
5
- /**
6
- * Rows that only make sense when the APPLICATION scrolls and selects. In native
7
- * scroll mode (tui-native-terminal-scroll §4.7) the terminal does both, so they are
8
- * dropped and one honest row replaces them.
9
- */
10
- const APP_SCROLL_ROWS = new Set([
11
- 'Shift+Up / Shift+Down', 'Wheel', 'Shift+Wheel', 'Drag right edge', '^N',
12
- 'Drag text (left button)', 'Ctrl+C (with a selection)',
13
- ]);
14
- function keyRows(times, native = false) {
15
- const all = allKeyRows(times);
16
- if (!native)
17
- return all;
18
- return all
19
- .filter(([key]) => !APP_SCROLL_ROWS.has(key))
20
- .map(([key, description]) => key === 'PgUp / PgDn' ? [key, 'Page through an open overlay'] : [key, description])
21
- .concat([['Scroll', 'Use your terminal (wheel, Shift+PgUp, scrollbar, search)']]);
22
- }
23
- /**
24
- * The key column of every binding row, EXPORTED so the drawer's drift guard can read
25
- * the real table instead of scraping this file with a regex
26
- * (tui-shortcut-drawer-and-task-summary D-8 / AC-5).
27
- *
28
- * A SOURCE SCRAPE WOULD PASS ON A COMMENT: the regex has no way to tell a key row
29
- * from a legend row from a line inside a block comment, and the guard's whole job is
30
- * to notice a row someone forgot.
31
- */
32
- export function allKeyRows(times) {
33
- return [
34
- ['Enter', 'Submit (idle) / queue steering (running); re-pins to the newest output'],
35
- ['Alt+Enter / Shift+Enter', 'Newline when supported; the host may intercept either binding'],
36
- ['Ctrl+J', 'Newline fallback; /terminal-setup explains Shift+Enter binding'],
37
- ['Esc', 'Close menu / overlay'],
38
- ['Esc twice', 'Interrupt run (within 1.5s)'],
39
- ['Esc again', 'Force-stop after requesting interruption'],
40
- // BOTH KEYS ARE LISTED HERE, and this row is why (shift-tab-mode-toggle-
41
- // still-dead-on-windows, review R-7). The hint row above the composer is the
42
- // other place the fallback is named, and it has two off-switches - a short
43
- // terminal (`showHint`) and `hints: false`. A key that only exists behind
44
- // either of them is a key the affected user never learns about, which is the
45
- // one-shot notice's failure repeated with a different switch.
46
- // BOTH KEYS ARE SPELLED OUT, and `Ctrl+N` is written in FULL: `^N` is this
47
- // product's word for transcript line offset (the header chip and the row below),
48
- // so abbreviating the mode fallback would put two meanings of `^` on one screen
49
- // (quick-prompt-library D-1 / P1-7).
50
- ['Shift+Tab / Ctrl+N', 'Cycle BUILD / PLAN / GOVERN / PLAN+GOVERN (/plan and /gov pick one)'],
51
- ['Ctrl+P', 'Quick prompt library: manage, create, reorder, pick'],
52
- // The ladder clears a draft first (ctrl-c-clear-draft-exit):
53
- // with a draft x2 clears the input and x3 exits; an empty input
54
- // keeps the previous x2 exit.
55
- ['Ctrl+C', `Draft: ${times}2 clear input, ${times}3 exit. Empty: ${times}2 exit`],
56
- // Ctrl+L IS THE BRANCH KEY NOW (tui-branch-terminal-shortcut D-1) and the
57
- // redraw moved to Ctrl+R. Both rows are listed, because the migration is the
58
- // one thing an existing user will press by muscle memory and be surprised by.
59
- ['Ctrl+L', 'Open a new terminal on this session (the branch gets its own id)'],
60
- ['Ctrl+R', 'Redraw the frame'],
61
- ['Ctrl+T', 'Show/hide thinking (off by default)'],
62
- ['Ctrl+I', 'Build the project index (bundled skill; asks first; needs keyboard enhancement)'],
63
- // THE KIT KEYS (agent-model-kits D-11 / D-15): `Ctrl+K` moved to the picker
64
- // and `killToEnd` moved to `Alt+K`. BOTH rows are listed, because an existing
65
- // user will press the old key by muscle memory and needs to find out where it
66
- // went - and because `^K` is only advertised in the expanded header row.
67
- ['Ctrl+K', 'Agent kits: pick a preset for this session (see /kit)'],
68
- ['Alt+K', 'Delete from the cursor to the end of the line (was Ctrl+K)'],
69
- // Ctrl+G OPENED THE STATUS DETAIL ROW UNTIL THE DRAWER TOOK THE KEY
70
- // (tui-shortcut-drawer-and-task-summary D-6). The detail row did not disappear,
71
- // it moved to `d` inside this panel, and saying so here is the only place a
72
- // user's muscle memory can find out.
73
- ['Ctrl+G', 'Keyboard drawer: every shortcut, with keywords (d = status details)'],
74
- // Ctrl+O WAS MISSING FROM THIS TABLE ENTIRELY while it worked in the app, which
75
- // is exactly the gap the drawer's reverse drift guard exists to force closed: a
76
- // key that only exists in the code is a key only its author knows.
77
- ['Ctrl+O', 'Expand the newest tool output (native mode reprints it as a block)'],
78
- // The board's key is listed HERE and in the team table below: the roster shows
79
- // `ctrl+b` only on a terminal wide enough for the hint cell, and a key a user can
80
- // only learn from a wide terminal is a key the rest never discover (AC-18).
81
- ['Ctrl+B', 'Agents board: every subagent, its facts and its timeline (read-only)'],
82
- ['PgUp / PgDn', 'Scroll a page (transcript, or this overlay)'],
83
- ['Shift+Up / Shift+Down', 'Scroll the transcript a line (full-screen mode)'],
84
- ['Wheel', 'Scroll the transcript (or the open overlay)'],
85
- ['Shift+Wheel', 'Scroll the transcript a page'],
86
- // Drag-select is the one affordance here a user cannot discover by pressing
87
- // a key, so it has to be named somewhere they can look it up. The one-shot
88
- // startup notice is the other place, and it scrolls away.
89
- ['Drag right edge', 'Scroll messages; input stays fixed; type to return to newest output'],
90
- ['Bottom rows', 'Fixed input, one status row; Ctrl+G adds one detail row'],
91
- ['C / Th / t/s', 'Context percent / thinking level / run-average output tokens per second'],
92
- ['B / P / P>B', 'Status-row mode word: BUILD / PLAN; CUR>PENDING = switch deferred to run end'],
93
- ['O/N/L/M/H/X', 'Thinking: off/minimal/low/medium/high/xhigh'],
94
- ['~ / ? / --', 'Estimated context / unknown context / unavailable output speed'],
95
- ['Output speed', 'Main Agent reported output tokens / total run time, including tools and waits'],
96
- ['Copy / Sent / E / F', 'Copying / unconfirmed copy sent / copy error / Esc force-stop'],
97
- ['^N', 'Transcript line offset from the bottom, not a new-message count'],
98
- ['Drag text (left button)', 'Select text on screen; the highlight waits'],
99
- ['Ctrl+C (with a selection)', 'Copy the pending selection - does not arm exit'],
100
- ['Native terminal selection', 'Copy-on-select is controlled by your terminal settings'],
101
- ['Queue / /queue', 'Pending receipt; /queue opens full text, PgUp/PgDn pages, Esc closes'],
102
- ['/bg / /todo status', 'Show full service and TODO counts when status fields are hidden'],
103
- ['Queue paused', 'Unreceived messages persist after interruption until accepted or cancelled'],
104
- ['Up / Down', 'Prompt history (empty input)'],
105
- // Pasting is the one affordance here with no key of its own, so the only
106
- // place a user can learn what happened to their 218 lines is this row.
107
- ['Paste', 'Inserted as-is up to 6 lines; larger becomes [Pasted text #N] (--no-paste)'],
108
- ];
109
- }
110
- const COMMANDS = [
111
- ['/help', 'Show this help'],
112
- // THE DRAWER'S COMMAND-SIDE ENTRY (tui-shortcut-drawer-and-task-summary §4.7).
113
- // Listed here as well as behind Ctrl+G, because a key is unreachable in a script
114
- // and `/keys` is how a paste or a screen reader gets to the same list.
115
- ['/keys [query]', 'List every shortcut in the drawer; a query pre-filters it'],
116
- ['/task', 'Show the header task summary: what it says, where it came from'],
117
- ['/task refresh', 'Regenerate the header task summary from the last prompt'],
118
- ['/model', 'Open the model picker'],
119
- ['/settings', 'Open the settings screen'],
120
- ['/plan [on|off|status]', 'Toggle plan mode (leaves GOVERN)'],
121
- ['/gov [on|plan|off|board|status]', 'Governed team: enter, leave, the board, the run status'],
122
- ['/theme <name>', 'auto | warm | cool | light'],
123
- ['/thinking <level>', 'Set thinking level'],
124
- ['/max-tokens [n|auto]', 'Output token cap; no argument reports the effective one'],
125
- ['/team [on|off|<brief>]', 'Force team mode and start now: /team <brief> fans out'],
126
- ['/fast [on|off|model|review]', 'Fast model tier: status, switch, model, review cadence'],
127
- ['/kit [list|use <name>]', 'Agent kits: what is in effect, list them, use one for this session'],
128
- [
129
- '/todo [on|off|panel|follow|clear|continue]',
130
- 'Todo planning: status, switches, the rail, follow-through',
131
- ],
132
- ['/tools', 'List active tools'],
133
- // `/clear` IS NOT "CLEAR THE SCREEN" ANY MORE (clear-command-context-reset D-1).
134
- // Two rows, not one, because the intentions differ: `/clear` starts a NEW
135
- // CONVERSATION (interrupt the run, archive the old one, drop the history), while
136
- // `/clear screen` only wipes what is on screen. A user who wants the second has
137
- // to be able to see that it exists before reaching for the first.
138
- ['/clear', 'Start a new conversation: archive, then clear context and transcript'],
139
- ['/clear screen', 'Clear the visible transcript only; keeps the conversation'],
140
- ['/reset', 'Alias of /clear'],
141
- ['/cwd [dir]', 'Show or change the tool working directory'],
142
- ['/save [file]', 'Export the session to JSON (a file you keep)'],
143
- ['/resume [file]', 'Load a saved session; this session moves to a new id'],
144
- ['/session [copy|pin]', 'Show this session id and file; copy the resume command; pin it'],
145
- ['/branch', 'Same as Ctrl+L: branch into a new terminal'],
146
- ['/copy', 'Copy last answer; native completion confirmed, OSC 52 request unconfirmed'],
147
- ['/queue', 'Read every pending message in full; no replay or queue mutation'],
148
- ['/prompts', 'Quick prompt library: pick one and fill the draft (Enter fills)'],
149
- ['/agents', 'Open the subagent board: every child, its facts and its timeline'],
150
- ['/prompts list | add | edit | rm', 'Manage the library; `add` opens the editor'],
151
- ['/prompts move <n> <to> | sort',
152
- 'Reorder by hand, or rewrite the order by name/recent/favorite'],
153
- ['/mouse [on|off]', 'Release the mouse to your terminal, or take it back'],
154
- ['/terminal-setup', 'Show newline key bindings without changing terminal settings'],
155
- ['/exit', 'Exit'],
156
- ];
157
- const SKILL_ROWS = [
158
- ['/skills', 'List installed skills'],
159
- ['/skills info <name>', 'Show a skill\'s source, files and status'],
160
- ['/skills install <src>', 'Install from a dir, git repo, or https URL'],
161
- ['/skills enable|disable', 'Turn a skill on or off'],
162
- ['/skills policy [mode]', 'Tool ceiling from allowed-tools: off | warn | enforce'],
163
- ['/skills unload', 'Drop the tool ceiling (does not reclaim context)'],
164
- ['/skills usage [--reset]', 'Show or delete the local skill use counters'],
165
- ['/<skill-name> [args]', 'Run a skill directly ($ARGUMENTS / $1..$9)'],
166
- ['skill / skill_install', 'Tools the model uses to load and install skills'],
167
- ];
168
- const PLAN_ROWS = [
169
- ['Shift+Tab / /plan', 'Switch BUILD (do it now) and PLAN (research first); Shift+Tab also cycles GOVERN'],
170
- // A ROW OF ITS OWN, not a third name on the line above: the reader who needs
171
- // this one is the reader whose `Shift+Tab` does nothing, and what they need is
172
- // the reason, not another synonym. Listing the key in both places instead just
173
- // says it twice and explains it nowhere.
174
- ['Ctrl+N', 'The same toggle, for Windows consoles that deliver Shift+Tab as a plain Tab'],
175
- ['In PLAN mode', 'write_file, edit_file, bash, skill_install and skill_create are refused'],
176
- ['bash', 'Refused in full, including git status - use read_file / glob / grep'],
177
- ['ask_user', 'The agent asks 1-5 multiple-choice questions; Enter takes the recommendation'],
178
- ['submit_plan', 'The agent submits a plan: a approve, r revise, Esc dismiss'],
179
- ['--plan / --no-plan', 'Start a session in a given mode (also ARAGON_PLAN=1)'],
180
- ];
181
- const TEAM_ROWS = [
182
- ['task', 'The tool the agent uses to run 2-5 subagents in parallel'],
183
- ['/team <brief>', 'Force it: arms forced mode and starts that work as a turn'],
184
- ['/team on | off', 'Arm it without starting, or leave it; the capability is untouched'],
185
- ['/team', 'Report the forced state, capacity, the model, and where to change it'],
186
- ['-n <n> / --parts a,b', 'Fix the fan-out, or name the split (narrowing is disclosed)'],
187
- ['--read-only', 'Every child refuses writes and shell, for research-only fan-outs'],
188
- ['Team 4 (T4)', 'The status-bar chip - only while the session is armed'],
189
- ['--team / --no-team', 'Start a session with team mode on or off (also ARAGON_TEAM=0)'],
190
- ['team_send / team_wait', 'How subagents message each other; 6 each, one every 15s'],
191
- ['Ctrl+B / /agents', 'The board: every child, its full facts, its 24-event timeline'],
192
- ['Settings > Team', 'Team mode, width (1-10, 8 by default), concurrency, supervisor'],
193
- ];
194
- const FAST_ROWS = [
195
- ['/fast', 'Status: on/off, the model, the cadence, and this session\'s totals'],
196
- ['/fast on | off', 'Switch the tier for this session (and save it)'],
197
- ['/fast model <id>', 'Set the fast model; accepts provider:model'],
198
- ['/fast same', 'Run the fast tier on the main model'],
199
- ['/fast review <n> | off', 'Turns between automatic reviews, or turn them off'],
200
- ['--fast / --no-fast', 'Start a session with the tier on or off (also ARAGON_FAST=1)'],
201
- ['<fast_review>', 'An automated second opinion from the fast model - advice, not the user'],
202
- ];
203
- /** The slash-command table's key column, for the same guard (commands are not keys). */
204
- export function allCommandRows() {
205
- return COMMANDS;
206
- }
207
- /** Build the overlay's rows. Exported so `app.test.tsx` can count them. */
208
- export function helpRows(theme, caps, native = false) {
209
- const glyphs = pickGlyphs(caps);
210
- const rows = [];
211
- const section = (title) => (_jsx(Text, { wrap: "truncate", color: theme.accent, bold: true, children: title }, `s-${title}`));
212
- const pair = (k, d) => (_jsxs(Text, { wrap: "truncate", children: [_jsx(Text, { color: theme.primary, children: k.padEnd(KEY_PAD) }), _jsx(Text, { color: theme.muted, children: d })] }, `r-${k}`));
213
- rows.push(section('Keybindings'));
214
- for (const [k, d] of keyRows(glyphs.times, native))
215
- rows.push(pair(k, d));
216
- rows.push(section('Slash commands'));
217
- for (const [c, d] of COMMANDS)
218
- rows.push(pair(c, d));
219
- rows.push(section('Plan mode'));
220
- for (const [c, d] of PLAN_ROWS)
221
- rows.push(pair(c, d));
222
- rows.push(section('Team subagents'));
223
- for (const [c, d] of TEAM_ROWS)
224
- rows.push(pair(c, d));
225
- rows.push(section('Fast model tier'));
226
- for (const [c, d] of FAST_ROWS)
227
- rows.push(pair(c, d));
228
- rows.push(section('Skills'));
229
- for (const [c, d] of SKILL_ROWS)
230
- rows.push(pair(c, d));
231
- return rows;
232
- }
@@ -1,23 +0,0 @@
1
- /**
2
- * Settings > Kit pack > editor (agent-model-kits §4.5).
3
- *
4
- * ASCII ONLY - `src/ui/**` is inside `glyphs.test.ts::inScope`.
5
- *
6
- * FOUR ROWS AND TWO ACTIONS, and every slot is an explicit decision (D-8): the
7
- * Main slot is required, the Fast slot is a two-state choice (`off` is a
8
- * decision, not an omission), and the Subagent slot reuses the existing
9
- * `Same as main` / `Fast tier model` vocabulary so the summary sentence the root
10
- * page already prints (`Fast tier (off - falls back to main)`) needs no second
11
- * wording. Nothing is written until the ROOT page's Save.
12
- */
13
- import React from 'react';
14
- import type { ModelProfileState } from './model-profile-state.js';
15
- import type { KitAction, KitDraft } from './kit-settings-state.js';
16
- import { type ProfileFrameProps } from './ModelProfilePicker.js';
17
- interface KitEditorProps extends ProfileFrameProps {
18
- draft: KitDraft;
19
- state: ModelProfileState;
20
- dispatch: React.Dispatch<KitAction>;
21
- }
22
- export declare function KitEditor(props: KitEditorProps): React.ReactElement;
23
- export {};
@@ -1,101 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- /**
3
- * Settings > Kit pack > editor (agent-model-kits §4.5).
4
- *
5
- * ASCII ONLY - `src/ui/**` is inside `glyphs.test.ts::inScope`.
6
- *
7
- * FOUR ROWS AND TWO ACTIONS, and every slot is an explicit decision (D-8): the
8
- * Main slot is required, the Fast slot is a two-state choice (`off` is a
9
- * decision, not an omission), and the Subagent slot reuses the existing
10
- * `Same as main` / `Fast tier model` vocabulary so the summary sentence the root
11
- * page already prints (`Fast tier (off - falls back to main)`) needs no second
12
- * wording. Nothing is written until the ROOT page's Save.
13
- */
14
- import { useState } from 'react';
15
- import { Text, useInput } from 'ink';
16
- import { pickGlyphs } from '../glyphs.js';
17
- import { OverlayFrame } from '../layout/OverlayFrame.js';
18
- import { stripPasteFrames } from '../paste-frames.js';
19
- import { stripEnterFrames } from '../enter-frames.js';
20
- import { clipProfileText, useProfileScroll } from './ModelProfilePicker.js';
21
- const ROWS = ['name', 'main', 'subagent', 'fast', 'save', 'cancel'];
22
- function slotLabel(draft, state) {
23
- const entries = state.draft.profiles?.entries ?? [];
24
- const name = (id) => {
25
- const entry = id ? entries.find((item) => item.id === id) : undefined;
26
- // `Profile missing` rather than a blank: a kit can be pointed at a profile
27
- // that was removed on disk, and the editor is where that gets fixed.
28
- return entry ? `${entry.provider}:${entry.model} (${entry.name})` : id ? 'Profile missing'
29
- : '(not set)';
30
- };
31
- const subagent = draft.subagent.model === 'main' ? 'Same as main'
32
- : draft.subagent.model === 'fast' ? 'Fast tier model'
33
- : name(draft.subagent.modelProfileId);
34
- return { main: name(draft.mainProfileId), fast: name(draft.fastProfileId),
35
- subagent };
36
- }
37
- export function KitEditor(props) {
38
- const glyphs = pickGlyphs(props.caps);
39
- const { draft, dispatch } = props;
40
- const [index, setIndex] = useState(0);
41
- const row = ROWS[index];
42
- const offset = useProfileScroll(props, index);
43
- const labels = slotLabel(draft, props.state);
44
- const filled = [draft.mainProfileId, draft.fastProfileId,
45
- draft.subagent.model !== 'profile' || draft.subagent.modelProfileId]
46
- .filter(Boolean).length;
47
- function activate(target) {
48
- if (target === 'main')
49
- dispatch({ type: 'kit-slot', slot: 'main' });
50
- if (target === 'fast')
51
- dispatch({ type: 'kit-slot', slot: 'fast' });
52
- if (target === 'subagent')
53
- dispatch({ type: 'kit-slot', slot: 'subagent' });
54
- if (target === 'save')
55
- dispatch({ type: 'kit-save' });
56
- if (target === 'cancel')
57
- dispatch({ type: 'kit-cancel' });
58
- }
59
- useInput((input, key) => {
60
- if (props.isActive === false)
61
- return;
62
- if (key.escape) {
63
- dispatch({ type: 'kit-cancel' });
64
- return;
65
- }
66
- if (key.upArrow || (key.tab && key.shift)) {
67
- setIndex((index - 1 + ROWS.length) % ROWS.length);
68
- return;
69
- }
70
- if (key.downArrow || key.tab) {
71
- setIndex((index + 1) % ROWS.length);
72
- return;
73
- }
74
- if (key.return) {
75
- activate(row);
76
- return;
77
- }
78
- if (row !== 'name' || key.ctrl || key.meta)
79
- return;
80
- // THE NAME IS THE ONLY TEXT FIELD, and control characters are stripped by the
81
- // reducer rather than refused here - a pasted name with a newline should
82
- // become a name, not an error the user cannot see.
83
- const text = stripPasteFrames(stripEnterFrames(input));
84
- if (key.backspace || key.delete) {
85
- dispatch({ type: 'kit-name', value: [...draft.name].slice(0, -1).join('') });
86
- return;
87
- }
88
- if (text)
89
- dispatch({ type: 'kit-name', value: `${draft.name}${text}` });
90
- });
91
- const lines = [`Name ${draft.name}`,
92
- `Main profile ${labels.main}`,
93
- `Subagent ${labels.subagent}`,
94
- `Fast tier ${draft.fastProfileId ? labels.fast : 'off (this kit turns it off)'}`,
95
- `Save (${filled} slots set)`, 'Cancel'];
96
- const rows = lines.map((line, at) => (_jsx(Text, { wrap: "truncate", color: at === index ? props.theme.accent : props.theme.muted, children: `${at === index ? glyphs.caret : ' '} ${clipProfileText(line, props.cols - 8)}` }, at)));
97
- if (draft.error) {
98
- rows.push(_jsx(Text, { wrap: "truncate", color: props.theme.noticeError, children: clipProfileText(draft.error, props.cols - 8) }, "error"));
99
- }
100
- return _jsx(OverlayFrame, { ...props, title: draft.id ? 'Edit kit' : 'New kit', hint: "Enter choose | type to rename | Esc back", rows: rows, scrollOffset: offset });
101
- }