@aragon-agent/cli 0.6.47 → 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 +13 -0
  2. package/README.md +27 -6
  3. package/dist/agent/coalesce.d.ts +1 -1
  4. package/dist/agent/controller.d.ts +21 -21
  5. package/dist/agent/controller.js +13 -13
  6. package/dist/agent/conversation-reset.d.ts +1 -1
  7. package/dist/agent/governance-wiring.d.ts +6 -6
  8. package/dist/agent/governance-wiring.js +4 -4
  9. package/dist/agent/headless.d.ts +5 -5
  10. package/dist/agent/headless.js +4 -4
  11. package/dist/agent/job-notices.d.ts +1 -1
  12. package/dist/agent/job-notices.js +1 -1
  13. package/dist/agent/kit-apply.d.ts +3 -3
  14. package/dist/agent/kit-apply.js +3 -3
  15. package/dist/agent/model-profile-settings.d.ts +2 -2
  16. package/dist/agent/model-profile-settings.js +6 -6
  17. package/dist/agent/prompt-options.d.ts +1 -1
  18. package/dist/agent/system-prompt.d.ts +1 -1
  19. package/dist/{ui → app}/App.d.ts +9 -9
  20. package/dist/{ui → app}/App.js +79 -79
  21. package/dist/{ui → app}/use-startup-notices.d.ts +1 -1
  22. package/dist/{ui → app}/use-startup-notices.js +2 -2
  23. package/dist/cli.js +29 -29
  24. package/dist/commands/agents-command.js +1 -1
  25. package/dist/commands/builtins.js +9 -9
  26. package/dist/commands/governance-command.js +2 -2
  27. package/dist/commands/governance-runs-table.js +1 -1
  28. package/dist/commands/kit-command.js +1 -1
  29. package/dist/commands/perf.d.ts +3 -3
  30. package/dist/commands/perf.js +1 -1
  31. package/dist/commands/registry.d.ts +8 -8
  32. package/dist/commands/skills.js +2 -2
  33. package/dist/commands/team-command.js +1 -1
  34. package/dist/compaction/archive.d.ts +1 -1
  35. package/dist/compaction/archive.js +1 -1
  36. package/dist/compaction/child.d.ts +3 -3
  37. package/dist/compaction/child.js +4 -4
  38. package/dist/compaction/command.js +5 -5
  39. package/dist/compaction/compactor.d.ts +6 -6
  40. package/dist/compaction/compactor.js +6 -6
  41. package/dist/compaction/context-command.js +1 -1
  42. package/dist/compaction/digest.js +1 -1
  43. package/dist/compaction/memory-input.js +1 -1
  44. package/dist/compaction/memory-validation.js +1 -1
  45. package/dist/compaction/memory.js +1 -1
  46. package/dist/compaction/summarize-call.js +1 -1
  47. package/dist/compaction/summary-prompt.js +1 -1
  48. package/dist/compaction/tail-budget.js +2 -2
  49. package/dist/compaction/wiring.d.ts +5 -5
  50. package/dist/compaction/wiring.js +2 -2
  51. package/dist/config/cli-commands.d.ts +1 -1
  52. package/dist/config/cli-commands.js +3 -3
  53. package/dist/config/env.d.ts +1 -1
  54. package/dist/config/env.js +4 -4
  55. package/dist/config/load.d.ts +2 -2
  56. package/dist/config/load.js +6 -6
  57. package/dist/config/migrate-state-out-of-config.js +1 -1
  58. package/dist/config/model-profile-store.d.ts +4 -54
  59. package/dist/config/model-profile-store.js +3 -3
  60. package/dist/config/prompt-history.js +1 -1
  61. package/dist/config/store.d.ts +2 -2
  62. package/dist/config/store.js +3 -3
  63. package/dist/diagnostics/doctor.js +4 -4
  64. package/dist/exec/bridge/decisions.d.ts +1 -1
  65. package/dist/exec/bridge/human-answers.d.ts +1 -1
  66. package/dist/exec/bridge/human-answers.js +1 -1
  67. package/dist/exec/bridge/protocol.d.ts +1 -1
  68. package/dist/exec/bridge/server.js +1 -1
  69. package/dist/exec/events.d.ts +2 -2
  70. package/dist/exec/index.d.ts +1 -1
  71. package/dist/exec/index.js +1 -1
  72. package/dist/exec/permission.js +1 -1
  73. package/dist/exec/runner.d.ts +3 -3
  74. package/dist/exec/runner.js +2 -2
  75. package/dist/exec/threads/runtime.js +1 -1
  76. package/dist/fast/digest.d.ts +1 -1
  77. package/dist/fast/digest.js +1 -1
  78. package/dist/fast/frames.d.ts +1 -1
  79. package/dist/fast/frames.js +1 -1
  80. package/dist/fast/prompt.d.ts +1 -1
  81. package/dist/fast/prompt.js +1 -1
  82. package/dist/fast/review-call.js +1 -1
  83. package/dist/fast/reviewer.d.ts +3 -3
  84. package/dist/fast/reviewer.js +1 -1
  85. package/dist/fast/summary-call.d.ts +3 -3
  86. package/dist/fast/summary-call.js +2 -2
  87. package/dist/fast/summary-prompt.d.ts +1 -1
  88. package/dist/fast/summary-prompt.js +1 -1
  89. package/dist/fast/wiring.d.ts +4 -4
  90. package/dist/fast/wiring.js +1 -1
  91. package/dist/governance/card-normalize.d.ts +1 -1
  92. package/dist/governance/copy.d.ts +1 -1
  93. package/dist/governance/copy.js +2 -2
  94. package/dist/governance/engine/artifact-persist.d.ts +1 -1
  95. package/dist/governance/engine/budget.d.ts +1 -1
  96. package/dist/governance/engine/budget.js +1 -1
  97. package/dist/governance/engine/cards.d.ts +1 -1
  98. package/dist/governance/engine/digest.js +1 -1
  99. package/dist/governance/engine/engine-core.d.ts +5 -5
  100. package/dist/governance/engine/engine-core.js +1 -1
  101. package/dist/governance/engine/engine.d.ts +1 -1
  102. package/dist/governance/engine/engine.js +1 -1
  103. package/dist/governance/engine/estimate.d.ts +1 -1
  104. package/dist/governance/engine/estimate.js +1 -1
  105. package/dist/governance/engine/inspector.js +2 -2
  106. package/dist/governance/engine/integration.d.ts +1 -1
  107. package/dist/governance/engine/lifecycle.d.ts +1 -1
  108. package/dist/governance/engine/lifecycle.js +1 -1
  109. package/dist/governance/engine/phase-members.d.ts +1 -1
  110. package/dist/governance/engine/phase-planner.d.ts +1 -1
  111. package/dist/governance/engine/phase-planner.js +1 -1
  112. package/dist/governance/engine/rebuild.d.ts +1 -1
  113. package/dist/governance/engine/report.d.ts +1 -1
  114. package/dist/governance/engine/report.js +1 -1
  115. package/dist/governance/engine/run-digest.d.ts +1 -1
  116. package/dist/governance/engine/spec-builder.d.ts +2 -2
  117. package/dist/governance/engine/spec-builder.js +2 -2
  118. package/dist/governance/engine/stage-runner.js +2 -2
  119. package/dist/governance/engine/start-input.d.ts +1 -1
  120. package/dist/governance/engine/start-input.js +1 -1
  121. package/dist/governance/engine/state-machine.d.ts +1 -1
  122. package/dist/governance/engine/state-machine.js +3 -3
  123. package/dist/governance/engine/submission-queries.d.ts +1 -1
  124. package/dist/governance/engine/submission-render.d.ts +1 -1
  125. package/dist/governance/engine/submissions.d.ts +1 -1
  126. package/dist/governance/engine/submissions.js +1 -1
  127. package/dist/governance/engine/visibility.d.ts +1 -1
  128. package/dist/governance/engine/visibility.js +1 -1
  129. package/dist/governance/posture-transition.d.ts +2 -2
  130. package/dist/governance/posture-transition.js +1 -1
  131. package/dist/governance/profiles.d.ts +1 -1
  132. package/dist/governance/prompts/orchestrator-block.d.ts +2 -2
  133. package/dist/governance/prompts/orchestrator-block.js +2 -2
  134. package/dist/governance/prompts/plan-addendum.d.ts +1 -1
  135. package/dist/governance/prompts/plan-addendum.js +1 -1
  136. package/dist/governance/prompts/role-blocks.d.ts +2 -2
  137. package/dist/governance/prompts/role-blocks.js +1 -1
  138. package/dist/governance/report-reader.js +1 -1
  139. package/dist/governance/roles.d.ts +1 -1
  140. package/dist/governance/rules/claims.d.ts +1 -1
  141. package/dist/governance/rules/claims.js +1 -1
  142. package/dist/governance/rules/elimination.d.ts +1 -1
  143. package/dist/governance/rules/elimination.js +1 -1
  144. package/dist/governance/rules/failure-analysis.d.ts +2 -2
  145. package/dist/governance/rules/failure-analysis.js +1 -1
  146. package/dist/governance/rules/ledger-replay.d.ts +1 -1
  147. package/dist/governance/rules/ledger-state.d.ts +1 -1
  148. package/dist/governance/rules/ledger-state.js +1 -1
  149. package/dist/governance/rules/ledger.d.ts +2 -2
  150. package/dist/governance/rules/ledger.js +2 -2
  151. package/dist/governance/rules/rca.d.ts +1 -1
  152. package/dist/governance/rules/rca.js +1 -1
  153. package/dist/governance/rules/settlement.d.ts +2 -2
  154. package/dist/governance/rules/settlement.js +2 -2
  155. package/dist/governance/rules/suspicion.d.ts +1 -1
  156. package/dist/governance/store/artifacts.d.ts +1 -1
  157. package/dist/governance/store/artifacts.js +1 -1
  158. package/dist/governance/store/events-log.d.ts +1 -1
  159. package/dist/governance/store/run-store.d.ts +1 -1
  160. package/dist/governance/store/run-store.js +1 -1
  161. package/dist/governance/store/scoreboard-export.d.ts +1 -1
  162. package/dist/governance/tools/child-tools.d.ts +1 -1
  163. package/dist/governance/tools/guard.d.ts +1 -1
  164. package/dist/governance/tools/guard.js +1 -1
  165. package/dist/governance/tools/inspector-tools.d.ts +2 -2
  166. package/dist/governance/tools/inspector-tools.js +2 -2
  167. package/dist/governance/tools/lead-tools.d.ts +1 -1
  168. package/dist/governance/tools/lead-tools.js +1 -1
  169. package/dist/governance/tools/normalize-util.js +1 -1
  170. package/dist/governance/tools/scan-incomplete.js +1 -1
  171. package/dist/governance/tools/shared-tools.d.ts +1 -1
  172. package/dist/governance/tools/shared-tools.js +1 -1
  173. package/dist/governance/tools/submit-normalizers.d.ts +1 -1
  174. package/dist/governance/tools/submit-normalizers.js +1 -1
  175. package/dist/governance/tools/submit-tools.d.ts +1 -1
  176. package/dist/logging/cli-commands.js +1 -1
  177. package/dist/logging/install.d.ts +1 -1
  178. package/dist/logging/install.js +3 -3
  179. package/dist/logging/logger.d.ts +2 -2
  180. package/dist/logging/logger.js +31 -2
  181. package/dist/proc/kill-tree.js +1 -1
  182. package/dist/proc/log-mirror.js +1 -1
  183. package/dist/proc/log-ring.js +2 -2
  184. package/dist/proc/notices.d.ts +1 -1
  185. package/dist/proc/notices.js +2 -2
  186. package/dist/proc/prompt.d.ts +1 -1
  187. package/dist/proc/prompt.js +1 -1
  188. package/dist/proc/readiness.js +1 -1
  189. package/dist/proc/supervisor.d.ts +1 -1
  190. package/dist/proc/supervisor.js +3 -3
  191. package/dist/proc/wait.d.ts +1 -1
  192. package/dist/proc/wait.js +1 -1
  193. package/dist/prompts/command.d.ts +1 -1
  194. package/dist/prompts/command.js +1 -1
  195. package/dist/prompts/normalize.d.ts +1 -1
  196. package/dist/prompts/normalize.js +1 -1
  197. package/dist/prompts/resolve.d.ts +1 -1
  198. package/dist/prompts/store.d.ts +2 -12
  199. package/dist/prompts/store.js +6 -60
  200. package/dist/session/checkpoint.d.ts +2 -2
  201. package/dist/session/clear-archive.d.ts +2 -2
  202. package/dist/session/persist.d.ts +2 -2
  203. package/dist/session/persist.js +1 -1
  204. package/dist/session/startup-session.d.ts +2 -2
  205. package/dist/session/validate-session.js +3 -3
  206. package/dist/skills/service.d.ts +2 -2
  207. package/dist/team/bus.d.ts +1 -1
  208. package/dist/team/bus.js +1 -1
  209. package/dist/team/child-reviewer.d.ts +2 -2
  210. package/dist/team/child-reviewer.js +1 -1
  211. package/dist/team/comm-tools.js +1 -1
  212. package/dist/team/dispatch-gate.js +1 -1
  213. package/dist/team/forced-dispatch.js +1 -1
  214. package/dist/team/forced-mode.d.ts +1 -1
  215. package/dist/team/forced-prompt.d.ts +1 -1
  216. package/dist/team/forced-prompt.js +1 -1
  217. package/dist/team/normalize.d.ts +1 -1
  218. package/dist/team/normalize.js +1 -1
  219. package/dist/team/overseer.d.ts +3 -3
  220. package/dist/team/overseer.js +3 -3
  221. package/dist/team/prompt.d.ts +1 -1
  222. package/dist/team/prompt.js +1 -1
  223. package/dist/team/report.d.ts +2 -2
  224. package/dist/team/report.js +2 -2
  225. package/dist/team/retry.d.ts +1 -1
  226. package/dist/team/retry.js +1 -1
  227. package/dist/team/runtime.d.ts +4 -4
  228. package/dist/team/runtime.js +2 -2
  229. package/dist/team/settled.d.ts +2 -2
  230. package/dist/team/subagent.d.ts +4 -4
  231. package/dist/team/subagent.js +5 -5
  232. package/dist/team/task-tool.d.ts +1 -1
  233. package/dist/team/task-tool.js +1 -1
  234. package/dist/todo/normalize.d.ts +1 -1
  235. package/dist/todo/normalize.js +1 -1
  236. package/dist/todo/prompt.d.ts +1 -1
  237. package/dist/todo/prompt.js +1 -1
  238. package/dist/todo/store.d.ts +1 -1
  239. package/dist/todo/store.js +2 -2
  240. package/dist/todo/todo-tool.d.ts +1 -1
  241. package/dist/todo/todo-tool.js +2 -2
  242. package/dist/tools/bash-tool.d.ts +1 -1
  243. package/dist/tools/bash-tool.js +2 -2
  244. package/dist/tools/diff.d.ts +1 -1
  245. package/dist/tools/diff.js +1 -1
  246. package/dist/tools/file-change-store.d.ts +1 -1
  247. package/dist/tools/fs-tools.d.ts +2 -2
  248. package/dist/tools/fs-tools.js +1 -1
  249. package/dist/tools/index.d.ts +3 -3
  250. package/dist/tools/index.js +1 -1
  251. package/dist/tools/job-tools.d.ts +2 -2
  252. package/dist/tools/job-tools.js +4 -4
  253. package/dist/tools/plan-tools.d.ts +1 -1
  254. package/dist/tools/plan-tools.js +1 -1
  255. package/dist/tools/proc-tools.d.ts +1 -1
  256. package/dist/tools/proc-tools.js +2 -2
  257. package/dist/update/classify-failure.d.ts +1 -1
  258. package/dist/update/install-lock.js +1 -1
  259. package/dist/update/install-source.d.ts +1 -1
  260. package/dist/update/installer.js +2 -2
  261. package/dist/update/npm-view.d.ts +1 -1
  262. package/dist/update/npm-view.js +1 -1
  263. package/dist/update/registry.d.ts +1 -1
  264. package/dist/update/registry.js +1 -1
  265. package/dist/update/service.d.ts +2 -2
  266. package/dist/update/service.js +2 -2
  267. package/package.json +7 -7
  268. package/dist/agent/agent-mode.d.ts +0 -108
  269. package/dist/agent/agent-mode.js +0 -121
  270. package/dist/agent/entry-limits.d.ts +0 -65
  271. package/dist/agent/entry-limits.js +0 -133
  272. package/dist/agent/governance-view.d.ts +0 -40
  273. package/dist/agent/governance-view.js +0 -40
  274. package/dist/agent/invocation-card.d.ts +0 -77
  275. package/dist/agent/invocation-card.js +0 -169
  276. package/dist/agent/model-probe-limits.d.ts +0 -39
  277. package/dist/agent/model-probe-limits.js +0 -25
  278. package/dist/agent/model-probe.d.ts +0 -104
  279. package/dist/agent/model-probe.js +0 -391
  280. package/dist/agent/queued-messages.d.ts +0 -23
  281. package/dist/agent/queued-messages.js +0 -49
  282. package/dist/agent/reducer.d.ts +0 -857
  283. package/dist/agent/reducer.js +0 -1646
  284. package/dist/agent/retry-view.d.ts +0 -68
  285. package/dist/agent/retry-view.js +0 -95
  286. package/dist/agent/usage.d.ts +0 -47
  287. package/dist/agent/usage.js +0 -84
  288. package/dist/compaction/limits.d.ts +0 -61
  289. package/dist/compaction/limits.js +0 -64
  290. package/dist/compaction/meter.d.ts +0 -276
  291. package/dist/compaction/meter.js +0 -512
  292. package/dist/compaction/pressure.d.ts +0 -163
  293. package/dist/compaction/pressure.js +0 -199
  294. package/dist/compaction/reason-text.d.ts +0 -36
  295. package/dist/compaction/reason-text.js +0 -78
  296. package/dist/compaction/types.d.ts +0 -360
  297. package/dist/compaction/types.js +0 -22
  298. package/dist/config/governance-config.d.ts +0 -125
  299. package/dist/config/governance-config.js +0 -164
  300. package/dist/config/kit-resolution.d.ts +0 -93
  301. package/dist/config/kit-resolution.js +0 -226
  302. package/dist/config/model-kits.d.ts +0 -225
  303. package/dist/config/model-kits.js +0 -302
  304. package/dist/config/model-profile-resolution.d.ts +0 -28
  305. package/dist/config/model-profile-resolution.js +0 -88
  306. package/dist/config/model-profiles.d.ts +0 -103
  307. package/dist/config/model-profiles.js +0 -188
  308. package/dist/config/schema.d.ts +0 -1645
  309. package/dist/config/schema.js +0 -1383
  310. package/dist/fast/limits.d.ts +0 -152
  311. package/dist/fast/limits.js +0 -152
  312. package/dist/fast/resolve.d.ts +0 -44
  313. package/dist/fast/resolve.js +0 -107
  314. package/dist/fast/task-summary-types.d.ts +0 -66
  315. package/dist/fast/task-summary-types.js +0 -17
  316. package/dist/fast/types.d.ts +0 -141
  317. package/dist/fast/types.js +0 -14
  318. package/dist/governance/governed-dispatch.d.ts +0 -19
  319. package/dist/governance/governed-dispatch.js +0 -17
  320. package/dist/governance/limits.d.ts +0 -107
  321. package/dist/governance/limits.js +0 -131
  322. package/dist/governance/posture.d.ts +0 -35
  323. package/dist/governance/posture.js +0 -59
  324. package/dist/governance/rules/events-table.d.ts +0 -46
  325. package/dist/governance/rules/events-table.js +0 -94
  326. package/dist/governance/types.d.ts +0 -661
  327. package/dist/governance/types.js +0 -27
  328. package/dist/input/control-sequences.d.ts +0 -71
  329. package/dist/input/control-sequences.js +0 -222
  330. package/dist/input/csiu-keys.d.ts +0 -66
  331. package/dist/input/csiu-keys.js +0 -181
  332. package/dist/input/cursor-report.d.ts +0 -61
  333. package/dist/input/cursor-report.js +0 -97
  334. package/dist/input/enter-sequences.d.ts +0 -64
  335. package/dist/input/enter-sequences.js +0 -153
  336. package/dist/input/interrupt-gesture.d.ts +0 -18
  337. package/dist/input/interrupt-gesture.js +0 -19
  338. package/dist/input/keyboard-enhancement.d.ts +0 -42
  339. package/dist/input/keyboard-enhancement.js +0 -65
  340. package/dist/input/keymap.d.ts +0 -20
  341. package/dist/input/keymap.js +0 -99
  342. package/dist/input/limits.d.ts +0 -118
  343. package/dist/input/limits.js +0 -109
  344. package/dist/input/mouse-events.d.ts +0 -87
  345. package/dist/input/mouse-events.js +0 -212
  346. package/dist/input/paste-parse.d.ts +0 -83
  347. package/dist/input/paste-parse.js +0 -107
  348. package/dist/input/pointer-router.d.ts +0 -11
  349. package/dist/input/pointer-router.js +0 -14
  350. package/dist/input/stdin-filter.d.ts +0 -112
  351. package/dist/input/stdin-filter.js +0 -657
  352. package/dist/input/win32-input-mode.d.ts +0 -61
  353. package/dist/input/win32-input-mode.js +0 -269
  354. package/dist/logging/levels.d.ts +0 -40
  355. package/dist/logging/levels.js +0 -59
  356. package/dist/logging/secret-registry.d.ts +0 -32
  357. package/dist/logging/secret-registry.js +0 -73
  358. package/dist/proc/limits.d.ts +0 -214
  359. package/dist/proc/limits.js +0 -221
  360. package/dist/proc/progress.d.ts +0 -47
  361. package/dist/proc/progress.js +0 -163
  362. package/dist/proc/types.d.ts +0 -269
  363. package/dist/proc/types.js +0 -15
  364. package/dist/proc/wait-view.d.ts +0 -65
  365. package/dist/proc/wait-view.js +0 -66
  366. package/dist/prompts/copy.d.ts +0 -89
  367. package/dist/prompts/copy.js +0 -131
  368. package/dist/prompts/fill.d.ts +0 -51
  369. package/dist/prompts/fill.js +0 -46
  370. package/dist/prompts/limits.d.ts +0 -53
  371. package/dist/prompts/limits.js +0 -53
  372. package/dist/prompts/search.d.ts +0 -58
  373. package/dist/prompts/search.js +0 -146
  374. package/dist/prompts/types.d.ts +0 -204
  375. package/dist/prompts/types.js +0 -13
  376. package/dist/team/activity.d.ts +0 -67
  377. package/dist/team/activity.js +0 -130
  378. package/dist/team/limits.d.ts +0 -308
  379. package/dist/team/limits.js +0 -330
  380. package/dist/team/model.d.ts +0 -104
  381. package/dist/team/model.js +0 -150
  382. package/dist/team/panel-rows.d.ts +0 -48
  383. package/dist/team/panel-rows.js +0 -75
  384. package/dist/team/timeline.d.ts +0 -74
  385. package/dist/team/timeline.js +0 -101
  386. package/dist/team/types.d.ts +0 -354
  387. package/dist/team/types.js +0 -13
  388. package/dist/todo/acceptance.d.ts +0 -120
  389. package/dist/todo/acceptance.js +0 -399
  390. package/dist/todo/follow-through.d.ts +0 -138
  391. package/dist/todo/follow-through.js +0 -248
  392. package/dist/todo/limits.d.ts +0 -152
  393. package/dist/todo/limits.js +0 -152
  394. package/dist/todo/panel-rows.d.ts +0 -45
  395. package/dist/todo/panel-rows.js +0 -70
  396. package/dist/todo/plan-sections.d.ts +0 -60
  397. package/dist/todo/plan-sections.js +0 -108
  398. package/dist/todo/row-window.d.ts +0 -51
  399. package/dist/todo/row-window.js +0 -107
  400. package/dist/todo/types.d.ts +0 -124
  401. package/dist/todo/types.js +0 -12
  402. package/dist/tools/human-input.d.ts +0 -212
  403. package/dist/tools/human-input.js +0 -265
  404. package/dist/tools/patch.d.ts +0 -115
  405. package/dist/tools/patch.js +0 -453
  406. package/dist/tools/terminal-output.d.ts +0 -115
  407. package/dist/tools/terminal-output.js +0 -201
  408. package/dist/tools/tool-output-store.d.ts +0 -68
  409. package/dist/tools/tool-output-store.js +0 -102
  410. package/dist/ui/ActivityLine.d.ts +0 -26
  411. package/dist/ui/ActivityLine.js +0 -51
  412. package/dist/ui/AutocompletePopup.d.ts +0 -23
  413. package/dist/ui/AutocompletePopup.js +0 -17
  414. package/dist/ui/BottomStatusRow.d.ts +0 -10
  415. package/dist/ui/BottomStatusRow.js +0 -9
  416. package/dist/ui/Composer.d.ts +0 -115
  417. package/dist/ui/Composer.js +0 -64
  418. package/dist/ui/GovernancePanel.d.ts +0 -50
  419. package/dist/ui/GovernancePanel.js +0 -77
  420. package/dist/ui/GovernanceRun.d.ts +0 -18
  421. package/dist/ui/GovernanceRun.js +0 -11
  422. package/dist/ui/Header.d.ts +0 -48
  423. package/dist/ui/Header.js +0 -27
  424. package/dist/ui/Logo.d.ts +0 -32
  425. package/dist/ui/Logo.js +0 -65
  426. package/dist/ui/Markdown.d.ts +0 -29
  427. package/dist/ui/Markdown.js +0 -116
  428. package/dist/ui/PromptCaret.d.ts +0 -11
  429. package/dist/ui/PromptCaret.js +0 -31
  430. package/dist/ui/PromptInput.d.ts +0 -192
  431. package/dist/ui/PromptInput.js +0 -689
  432. package/dist/ui/QueuePanel.d.ts +0 -8
  433. package/dist/ui/QueuePanel.js +0 -9
  434. package/dist/ui/QueueStatusRow.d.ts +0 -24
  435. package/dist/ui/QueueStatusRow.js +0 -51
  436. package/dist/ui/ScrollbackShell.d.ts +0 -132
  437. package/dist/ui/ScrollbackShell.js +0 -26
  438. package/dist/ui/SessionOpener.d.ts +0 -30
  439. package/dist/ui/SessionOpener.js +0 -12
  440. package/dist/ui/StatusBar.d.ts +0 -130
  441. package/dist/ui/StatusBar.js +0 -61
  442. package/dist/ui/TeamPanel.d.ts +0 -76
  443. package/dist/ui/TeamPanel.js +0 -103
  444. package/dist/ui/ToastStack.d.ts +0 -8
  445. package/dist/ui/ToastStack.js +0 -31
  446. package/dist/ui/TodoPanel.d.ts +0 -52
  447. package/dist/ui/TodoPanel.js +0 -214
  448. package/dist/ui/Transcript.d.ts +0 -105
  449. package/dist/ui/Transcript.js +0 -258
  450. package/dist/ui/UpdateLine.d.ts +0 -44
  451. package/dist/ui/UpdateLine.js +0 -129
  452. package/dist/ui/activity-phrases.d.ts +0 -33
  453. package/dist/ui/activity-phrases.js +0 -50
  454. package/dist/ui/capabilities.d.ts +0 -27
  455. package/dist/ui/capabilities.js +0 -65
  456. package/dist/ui/clipboard-task.d.ts +0 -29
  457. package/dist/ui/clipboard-task.js +0 -66
  458. package/dist/ui/clipboard.d.ts +0 -31
  459. package/dist/ui/clipboard.js +0 -157
  460. package/dist/ui/color-runtime.d.ts +0 -5
  461. package/dist/ui/color-runtime.js +0 -29
  462. package/dist/ui/composer-input.d.ts +0 -38
  463. package/dist/ui/composer-input.js +0 -79
  464. package/dist/ui/composer-limits.d.ts +0 -30
  465. package/dist/ui/composer-limits.js +0 -45
  466. package/dist/ui/composer-rows.d.ts +0 -73
  467. package/dist/ui/composer-rows.js +0 -129
  468. package/dist/ui/console-bridge.d.ts +0 -19
  469. package/dist/ui/console-bridge.js +0 -52
  470. package/dist/ui/density.d.ts +0 -26
  471. package/dist/ui/density.js +0 -34
  472. package/dist/ui/display-tab.d.ts +0 -51
  473. package/dist/ui/display-tab.js +0 -82
  474. package/dist/ui/editor-navigation.d.ts +0 -55
  475. package/dist/ui/editor-navigation.js +0 -96
  476. package/dist/ui/editor-reducer.d.ts +0 -108
  477. package/dist/ui/editor-reducer.js +0 -187
  478. package/dist/ui/enter-frames.d.ts +0 -47
  479. package/dist/ui/enter-frames.js +0 -117
  480. package/dist/ui/entries/AssistantEntry.d.ts +0 -37
  481. package/dist/ui/entries/AssistantEntry.js +0 -43
  482. package/dist/ui/entries/CompactionCard.d.ts +0 -88
  483. package/dist/ui/entries/CompactionCard.js +0 -222
  484. package/dist/ui/entries/DiffView.d.ts +0 -61
  485. package/dist/ui/entries/DiffView.js +0 -103
  486. package/dist/ui/entries/EntryFrame.d.ts +0 -23
  487. package/dist/ui/entries/EntryFrame.js +0 -6
  488. package/dist/ui/entries/FastCard.d.ts +0 -53
  489. package/dist/ui/entries/FastCard.js +0 -105
  490. package/dist/ui/entries/GovernanceCard.d.ts +0 -30
  491. package/dist/ui/entries/GovernanceCard.js +0 -32
  492. package/dist/ui/entries/InvocationCard.d.ts +0 -20
  493. package/dist/ui/entries/InvocationCard.js +0 -32
  494. package/dist/ui/entries/QueuedEntry.d.ts +0 -27
  495. package/dist/ui/entries/QueuedEntry.js +0 -33
  496. package/dist/ui/entries/RetryCard.d.ts +0 -56
  497. package/dist/ui/entries/RetryCard.js +0 -60
  498. package/dist/ui/entries/ServiceCard.d.ts +0 -82
  499. package/dist/ui/entries/ServiceCard.js +0 -151
  500. package/dist/ui/entries/TeamCard.d.ts +0 -55
  501. package/dist/ui/entries/TeamCard.js +0 -94
  502. package/dist/ui/entries/TodoCard.d.ts +0 -54
  503. package/dist/ui/entries/TodoCard.js +0 -98
  504. package/dist/ui/entries/ToolCard.d.ts +0 -81
  505. package/dist/ui/entries/ToolCard.js +0 -169
  506. package/dist/ui/entries/ToolPreview.d.ts +0 -59
  507. package/dist/ui/entries/ToolPreview.js +0 -208
  508. package/dist/ui/entries/UserEntry.d.ts +0 -36
  509. package/dist/ui/entries/UserEntry.js +0 -57
  510. package/dist/ui/entries/WaitCard.d.ts +0 -37
  511. package/dist/ui/entries/WaitCard.js +0 -92
  512. package/dist/ui/exit-snapshot.d.ts +0 -43
  513. package/dist/ui/exit-snapshot.js +0 -26
  514. package/dist/ui/frame-differ.d.ts +0 -166
  515. package/dist/ui/frame-differ.js +0 -354
  516. package/dist/ui/frame-observer.d.ts +0 -17
  517. package/dist/ui/frame-observer.js +0 -94
  518. package/dist/ui/frame-parser.d.ts +0 -7
  519. package/dist/ui/frame-parser.js +0 -18
  520. package/dist/ui/gauge.d.ts +0 -39
  521. package/dist/ui/gauge.js +0 -55
  522. package/dist/ui/glyphs.d.ts +0 -178
  523. package/dist/ui/glyphs.js +0 -165
  524. package/dist/ui/governance-copy.d.ts +0 -69
  525. package/dist/ui/governance-copy.js +0 -104
  526. package/dist/ui/governance-status.d.ts +0 -145
  527. package/dist/ui/governance-status.js +0 -326
  528. package/dist/ui/gradient.d.ts +0 -11
  529. package/dist/ui/gradient.js +0 -50
  530. package/dist/ui/ink-runtime.d.ts +0 -4
  531. package/dist/ui/ink-runtime.js +0 -51
  532. package/dist/ui/interaction-copy.d.ts +0 -84
  533. package/dist/ui/interaction-copy.js +0 -41
  534. package/dist/ui/interaction-hints.d.ts +0 -44
  535. package/dist/ui/interaction-hints.js +0 -97
  536. package/dist/ui/layout/AppShell.d.ts +0 -17
  537. package/dist/ui/layout/AppShell.js +0 -6
  538. package/dist/ui/layout/Gutter.d.ts +0 -67
  539. package/dist/ui/layout/Gutter.js +0 -42
  540. package/dist/ui/layout/MeasuredEntry.d.ts +0 -21
  541. package/dist/ui/layout/MeasuredEntry.js +0 -30
  542. package/dist/ui/layout/OverlayFrame.d.ts +0 -73
  543. package/dist/ui/layout/OverlayFrame.js +0 -110
  544. package/dist/ui/layout/ScrollIndicator.d.ts +0 -32
  545. package/dist/ui/layout/ScrollIndicator.js +0 -22
  546. package/dist/ui/layout/ScrollViewport.d.ts +0 -40
  547. package/dist/ui/layout/ScrollViewport.js +0 -222
  548. package/dist/ui/layout/agents-board.d.ts +0 -102
  549. package/dist/ui/layout/agents-board.js +0 -389
  550. package/dist/ui/layout/autocomplete.d.ts +0 -18
  551. package/dist/ui/layout/autocomplete.js +0 -26
  552. package/dist/ui/layout/budget.d.ts +0 -43
  553. package/dist/ui/layout/budget.js +0 -52
  554. package/dist/ui/layout/cells.d.ts +0 -61
  555. package/dist/ui/layout/cells.js +0 -156
  556. package/dist/ui/layout/document-layout.d.ts +0 -13
  557. package/dist/ui/layout/document-layout.js +0 -10
  558. package/dist/ui/layout/follow-state.d.ts +0 -138
  559. package/dist/ui/layout/follow-state.js +0 -148
  560. package/dist/ui/layout/frame.d.ts +0 -36
  561. package/dist/ui/layout/frame.js +0 -39
  562. package/dist/ui/layout/governance-board.d.ts +0 -121
  563. package/dist/ui/layout/governance-board.js +0 -382
  564. package/dist/ui/layout/governance-card.d.ts +0 -53
  565. package/dist/ui/layout/governance-card.js +0 -134
  566. package/dist/ui/layout/governance-chip.d.ts +0 -38
  567. package/dist/ui/layout/governance-chip.js +0 -64
  568. package/dist/ui/layout/governance-panel.d.ts +0 -85
  569. package/dist/ui/layout/governance-panel.js +0 -358
  570. package/dist/ui/layout/governance-roster.d.ts +0 -65
  571. package/dist/ui/layout/governance-roster.js +0 -275
  572. package/dist/ui/layout/header-hints.d.ts +0 -90
  573. package/dist/ui/layout/header-hints.js +0 -110
  574. package/dist/ui/layout/header-left.d.ts +0 -115
  575. package/dist/ui/layout/header-left.js +0 -206
  576. package/dist/ui/layout/invocation-card.d.ts +0 -41
  577. package/dist/ui/layout/invocation-card.js +0 -91
  578. package/dist/ui/layout/kit-chip.d.ts +0 -50
  579. package/dist/ui/layout/kit-chip.js +0 -81
  580. package/dist/ui/layout/overlay-window.d.ts +0 -43
  581. package/dist/ui/layout/overlay-window.js +0 -51
  582. package/dist/ui/layout/queue-layout.d.ts +0 -19
  583. package/dist/ui/layout/queue-layout.js +0 -26
  584. package/dist/ui/layout/rail.d.ts +0 -7
  585. package/dist/ui/layout/rail.js +0 -16
  586. package/dist/ui/layout/scroll-indicator.d.ts +0 -27
  587. package/dist/ui/layout/scroll-indicator.js +0 -36
  588. package/dist/ui/layout/scroll.d.ts +0 -37
  589. package/dist/ui/layout/scroll.js +0 -99
  590. package/dist/ui/layout/scrollbar-geometry.d.ts +0 -17
  591. package/dist/ui/layout/scrollbar-geometry.js +0 -13
  592. package/dist/ui/layout/session-chip.d.ts +0 -52
  593. package/dist/ui/layout/session-chip.js +0 -64
  594. package/dist/ui/layout/shortcut-panel-layout.d.ts +0 -191
  595. package/dist/ui/layout/shortcut-panel-layout.js +0 -321
  596. package/dist/ui/layout/status-detail-layout.d.ts +0 -9
  597. package/dist/ui/layout/status-detail-layout.js +0 -79
  598. package/dist/ui/layout/status-layout.d.ts +0 -140
  599. package/dist/ui/layout/status-layout.js +0 -262
  600. package/dist/ui/layout/task-summary-cell.d.ts +0 -61
  601. package/dist/ui/layout/task-summary-cell.js +0 -65
  602. package/dist/ui/layout/team-panel.d.ts +0 -18
  603. package/dist/ui/layout/team-panel.js +0 -25
  604. package/dist/ui/layout/team-row.d.ts +0 -139
  605. package/dist/ui/layout/team-row.js +0 -246
  606. package/dist/ui/layout/todo-layout.d.ts +0 -62
  607. package/dist/ui/layout/todo-layout.js +0 -102
  608. package/dist/ui/layout/useTerminalSize.d.ts +0 -13
  609. package/dist/ui/layout/useTerminalSize.js +0 -50
  610. package/dist/ui/layout/viewport-geometry.d.ts +0 -29
  611. package/dist/ui/layout/viewport-geometry.js +0 -28
  612. package/dist/ui/layout/virtual-window.d.ts +0 -112
  613. package/dist/ui/layout/virtual-window.js +0 -494
  614. package/dist/ui/layout/wait-bar.d.ts +0 -34
  615. package/dist/ui/layout/wait-bar.js +0 -48
  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 -63
  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 -130
  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,301 +0,0 @@
1
- import { randomUUID } from 'node:crypto';
2
- import { emptyModelProfiles, duplicateModelProfile, normalizeModelProfiles, validateModelProfiles } from '../../config/model-profiles.js';
3
- import { parseContextWindowInput } from '../../config/schema.js';
4
- import { stepFanoutValue, teamFanoutValues } from './team-fanout-state.js';
5
- import { draftGovernance, stepGovernanceSetting } from './governance-settings.js';
6
- /** The picker's built-in `Fast tier model` row; never a profile id on disk. */
7
- export const SUBAGENT_FAST_ROW_ID = '__fast__';
8
- /** Keep the original secret separate from the empty replacement field. */
9
- export function createProfileEditor(profile) {
10
- return { original: { ...profile }, name: profile.name, provider: profile.provider,
11
- model: profile.model, baseUrl: profile.baseUrl ?? '', apiKey: '',
12
- contextWindow: profile.contextWindow === null ? '' : String(profile.contextWindow),
13
- credentialMode: profile.apiKey ? 'keep' : 'shared', endpointChanged: false };
14
- }
15
- /** Validate locally before merging the child form into the root transaction. */
16
- export function finishProfileEditor(editor) {
17
- // STRICT IN THE UI, TOLERANT ON DISK (§6.5 / invariant 4): a typo is refused
18
- // here with an inline error and the focus jump its `field` enables; it never
19
- // reaches the draft. The message prefix matches the editor's LABELS row.
20
- const window = parseContextWindowInput(editor.contextWindow);
21
- if (window.kind === 'invalid') {
22
- return { error: 'Context window: use a number or auto.', field: 'contextWindow' };
23
- }
24
- const profile = { id: editor.original.id, name: editor.name.trim(),
25
- provider: editor.provider, model: editor.model.trim(), baseUrl: editor.baseUrl.trim() || null,
26
- apiKey: editor.credentialMode === 'keep' ? editor.original.apiKey
27
- : editor.credentialMode === 'replace' ? editor.apiKey.trim() : null,
28
- contextWindow: window.kind === 'auto' ? null : window.value };
29
- const library = { ...emptyModelProfiles(), entries: [profile] };
30
- const issue = validateModelProfiles(library)[0];
31
- if (issue)
32
- return { error: issue.message, field: issue.path.split('.').at(-1) };
33
- return { profile: normalizeModelProfiles(library).entries[0] };
34
- }
35
- /** Make an isolated root draft; opening the screen never mutates live config. */
36
- export function createModelProfileState(draft) {
37
- const copy = structuredClone(draft);
38
- if (validateModelProfiles(copy.profiles).length
39
- || validateModelProfiles(copy.baseline.modelProfiles).length) {
40
- copy.profiles = undefined;
41
- copy.readError = 'invalid_profiles';
42
- }
43
- return { draft: copy, page: 'root', role: 'main', returnPage: 'manager',
44
- bindNew: false, dirty: false };
45
- }
46
- /** The kits whose three slots name `id`, for the delete confirmation (D-9). */
47
- export function kitsUsingProfile(profiles, id) {
48
- return (profiles?.kits ?? []).filter((kit) => kit.mainProfileId === id
49
- || kit.fastProfileId === id
50
- || (kit.subagent.model === 'profile' && kit.subagent.modelProfileId === id));
51
- }
52
- /**
53
- * Drop `slot` from the session kit (§4.3 row 2 / AC-38).
54
- *
55
- * THE DRAFT IS NARROWED HERE, NOT ONLY AT SAVE TIME. `releasedSlots` already
56
- * strips the same slot from the transaction before it commits, but the ROOT PAGE
57
- * paints the kit's effective value for every HELD slot - so without this line a
58
- * user picks a profile and the row keeps showing the one they just replaced,
59
- * which is the most confusing thing a settings screen can do. Releasing the last
60
- * slot ends the kit: `held: []` is not a state any surface can render.
61
- */
62
- function releaseHeldSlot(draft, slot) {
63
- const current = draft.sessionKit;
64
- if (!current || !current.held.includes(slot))
65
- return draft;
66
- const held = current.held.filter((item) => item !== slot);
67
- return { ...draft, sessionKit: held.length ? { id: current.id, held } : null };
68
- }
69
- /** Describe references using text so ASCII and no-color modes remain usable. */
70
- export function profileUsers(profiles, id, subagentProfileId) {
71
- // THE KITS ARE REFERENCES TOO (D-9 / RV-P2-6): "Main + kit "Deep work"" is what
72
- // makes the confirmation honest, because deleting this entry also deletes that
73
- // kit. The empty case must stay empty - a leading ` + ` is what a naive
74
- // `join` after an unconditional push produces.
75
- return [profiles?.mainId === id ? 'Main' : '', profiles?.fastId === id ? 'Fast' : '',
76
- subagentProfileId === id ? 'Subagent' : '',
77
- ...kitsUsingProfile(profiles, id).map((kit) => `kit "${kit.name}"`)]
78
- .filter(Boolean).join(' + ');
79
- }
80
- /**
81
- * The team section a draft would save: the patch first, then the disk baseline
82
- * (subagent-model §3.6). The explicit-`undefined` test is what makes an
83
- * explicit `null` in the patch win over the baseline - `??` would fold it away.
84
- */
85
- export function draftTeam(draft) {
86
- const patch = draft.patch.team;
87
- const baseline = draft.baseline.team;
88
- return {
89
- model: patch?.model !== undefined ? patch.model : baseline?.model ?? 'main',
90
- modelProfileId: patch?.modelProfileId !== undefined ? patch.modelProfileId
91
- : baseline?.modelProfileId ?? null,
92
- };
93
- }
94
- /** The profile id the draft's team section binds, for reference checks (3.7). */
95
- export function draftSubagentProfileId(draft) {
96
- return draftTeam(draft).model === 'profile' ? draftTeam(draft).modelProfileId : null;
97
- }
98
- /** The projected picker selection for the subagent role (6.2). */
99
- export function subagentSelectedId(draft) {
100
- const team = draftTeam(draft);
101
- if (team.model === 'profile')
102
- return team.modelProfileId;
103
- return team.model === 'fast' ? SUBAGENT_FAST_ROW_ID : null;
104
- }
105
- export function subagentModelSummary(input) {
106
- if (input.mode === 'main')
107
- return `Same as main (${input.mainConnection})`;
108
- if (input.mode === 'fast') {
109
- return input.fastConnection
110
- ? `Fast tier (${input.fastConnection})`
111
- : 'Fast tier (off - falls back to main)';
112
- }
113
- const entry = input.modelProfileId
114
- ? input.profiles?.entries.find((candidate) => candidate.id === input.modelProfileId)
115
- : undefined;
116
- if (!entry)
117
- return 'Profile missing - falls back to main';
118
- const missing = !entry.apiKey && !input.hasKey(entry.provider);
119
- return `${entry.name} ${entry.provider}:${entry.model}${missing ? ' [Missing API key]' : ''}`;
120
- }
121
- /** Adopt persisted fields only, resolving the old fast inheritance once. */
122
- export function createCustomProfile(draft, role) {
123
- const file = draft.baseline;
124
- const provider = (role === 'fast' ? file.fast?.provider : undefined)
125
- || file.provider || 'anthropic';
126
- const model = role === 'fast' ? file.fast?.model ?? '' : file.model ?? '';
127
- const baseUrl = role === 'fast' && !model ? null
128
- : (role === 'fast' ? file.fast?.baseUrl
129
- || (provider === (file.provider || 'anthropic') ? file.baseUrl : null)
130
- : file.baseUrl) || null;
131
- return { id: randomUUID(), name: '', provider, model, baseUrl,
132
- apiKey: role === 'fast' && !model ? null : file.apiKeys?.[provider] || null,
133
- // Carry the user's existing top-level correction into the first profile
134
- // (§6.5): binding an AUTO profile would otherwise silently retire it
135
- // (tradeoff B's migration risk, mitigated exactly here).
136
- contextWindow: file.contextWindow ?? null };
137
- }
138
- function editField(state, action) {
139
- if (!state.editor)
140
- return state;
141
- const editor = { ...state.editor, [action.field]: action.value };
142
- if (action.field === 'provider' || action.field === 'baseUrl') {
143
- editor.apiKey = '';
144
- editor.credentialMode = 'shared';
145
- editor.endpointChanged = true;
146
- }
147
- if (action.field === 'credentialMode' && action.value !== 'replace')
148
- editor.apiKey = '';
149
- return { ...state, editor, error: undefined };
150
- }
151
- function mergeEditor(state) {
152
- if (!state.editor)
153
- return state;
154
- const result = finishProfileEditor(state.editor);
155
- if (!result.profile)
156
- return { ...state, error: result.error };
157
- const library = state.draft.profiles ?? emptyModelProfiles();
158
- const exists = library.entries.some((entry) => entry.id === result.profile.id);
159
- if (!exists && library.entries.length >= 200)
160
- return { ...state,
161
- error: 'Maximum 200 profiles. Delete an unused profile first.' };
162
- const profiles = { ...library, entries: exists
163
- ? library.entries.map((entry) => entry.id === result.profile.id ? result.profile : entry)
164
- : [...library.entries, result.profile] };
165
- const merged = { ...state, draft: { ...state.draft, profiles }, dirty: true,
166
- editor: undefined, page: state.returnPage, error: undefined };
167
- return state.bindNew ? modelProfileReducer(merged, { type: 'select', role: state.role, id: result.profile.id }) : merged;
168
- }
169
- /** All child actions modify only the root draft; persistence belongs to Save. */
170
- export function modelProfileReducer(state, action) {
171
- const library = state.draft.profiles ?? emptyModelProfiles();
172
- switch (action.type) {
173
- case 'reload': return createModelProfileState(action.draft);
174
- case 'page': return { ...state, page: action.page, role: action.role ?? state.role,
175
- error: undefined };
176
- case 'select': {
177
- // THE SUBAGENT BRANCH (D-5): selection writes the DRAFT's team patch -
178
- // `profiles` and `activateRoles` are untouched, because 'subagent' is a
179
- // picker-only role with no `${role}Id` library key (6.2). Save is the
180
- // one place the patch ever reaches disk (I-5).
181
- if (action.role === 'subagent') {
182
- const team = action.id === null
183
- ? { model: 'main', modelProfileId: null }
184
- : action.id === SUBAGENT_FAST_ROW_ID
185
- ? { model: 'fast', modelProfileId: null }
186
- : { model: 'profile', modelProfileId: action.id };
187
- return { ...state, page: 'root', dirty: true, error: undefined,
188
- draft: releaseHeldSlot({ ...state.draft,
189
- patch: { ...state.draft.patch, team } }, 'subagent') };
190
- }
191
- // `'binding'` NEVER REACHES THIS REDUCER: a kit slot's choice is applied
192
- // by `kitReducer` (`kit-main` / `kit-fast`), because the value belongs to
193
- // an editor draft rather than to a `${role}Id` library key. Returning the
194
- // state unchanged is the honest answer to an impossible action.
195
- if (action.role === 'binding')
196
- return state;
197
- return { ...state, page: 'root', dirty: true, error: undefined,
198
- draft: releaseHeldSlot({ ...state.draft,
199
- profiles: { ...library, [`${action.role}Id`]: action.id },
200
- activateRoles: [...new Set([...state.draft.activateRoles, action.role])] }, action.role) };
201
- }
202
- case 'edit': return { ...state, editor: createProfileEditor(action.profile), page: 'editor',
203
- // A PROFILE BORN IN A KIT SLOT RETURNS TO THAT SLOT (§4.5): the picker's
204
- // `Create profile` action is the only way to invent one and it is offered on
205
- // the kit's slot chooser - landing in the profile MANAGER there would
206
- // abandon the half-built kit behind a page the user never asked for.
207
- returnPage: state.page === 'picker' || state.page === 'kit-slot'
208
- ? state.page : 'manager',
209
- bindNew: action.bindNew ?? false, error: undefined };
210
- case 'editor-field': return editField(state, action);
211
- case 'retain-key': return state.editor?.original.apiKey ? { ...state,
212
- editor: { ...state.editor, credentialMode: 'keep', apiKey: '' } } : state;
213
- case 'merge-editor': return mergeEditor(state);
214
- case 'choose-model': {
215
- // Legal ONLY from the list page (§7). `editor-field` would do the same thing,
216
- // but routing the list page through the generic field action would also let a
217
- // future `editField` side effect (key reset, endpoint flag) fire on a choice
218
- // that never touched the endpoint.
219
- if (!state.editor || state.page !== 'models')
220
- return state;
221
- return { ...state, page: 'editor', error: undefined,
222
- editor: { ...state.editor, model: action.model } };
223
- }
224
- case 'cancel-editor': return { ...state, editor: undefined, page: state.returnPage,
225
- error: undefined };
226
- case 'team-fanout': {
227
- // THE FRAGMENT IS THE ONLY THING WRITTEN (D-17 / R-P0-1). `stepFanoutValue`
228
- // returns `Partial<TeamFanoutPatch>`, so `model` and `modelProfileId` - the
229
- // two keys `releasedSlots` reads as "the user re-decided the subagent slot" -
230
- // cannot enter the patch from here. `teamFanoutValues` is the CLAMPED view
231
- // (R-P0-2), so a step starts from the number the user is looking at.
232
- const step = stepFanoutValue(teamFanoutValues(state.draft), action.field, action.delta);
233
- return { ...state, dirty: true, error: undefined,
234
- draft: { ...state.draft,
235
- patch: { ...state.draft.patch, team: { ...state.draft.patch.team, ...step } } } };
236
- }
237
- case 'governance-step': {
238
- // THE FRAGMENT IS THE ONLY THING WRITTEN, as for `team-fanout`: `stepGovernanceSetting`
239
- // returns exactly one key, clamped, from the value the screen is showing
240
- // (`draftGovernance`), so a step can never drag a second key into the patch.
241
- const step = stepGovernanceSetting(draftGovernance(state.draft), action.key, action.delta);
242
- return { ...state, dirty: true, error: undefined,
243
- draft: { ...state.draft, patch: { ...state.draft.patch,
244
- governance: { ...state.draft.patch.governance, ...step } } } };
245
- }
246
- case 'duplicate': {
247
- if (library.entries.length >= 200)
248
- return { ...state,
249
- error: 'Maximum 200 profiles. Delete an unused profile first.' };
250
- const original = library.entries.find((entry) => entry.id === action.id);
251
- return original ? { ...state, dirty: true, draft: { ...state.draft,
252
- profiles: { ...library, entries: [...library.entries, duplicateModelProfile(original)] } } }
253
- : state;
254
- }
255
- case 'delete': {
256
- // UNBIND-AND-DELETE (D-6): being referenced no longer refuses the flow.
257
- // The references - subagent included - are computed here, shown on the
258
- // confirm page, and cleared by `confirm-delete` inside the draft.
259
- const users = profileUsers(library, action.id, draftSubagentProfileId(state.draft));
260
- return { ...state, page: 'delete-confirm', deleteId: action.id,
261
- deleteUsers: users, error: undefined };
262
- }
263
- case 'confirm-delete': {
264
- const id = state.deleteId;
265
- if (!id)
266
- return state;
267
- // THE DRAFT-SIDE UNBIND: Main/Fast bindings pointing at the entry are
268
- // nulled here (not refused) and the subagent binding resets to main
269
- // when it named THIS entry. `removeModelProfile`'s throw stays as the
270
- // bottom-line defense - the UI has already unbound, so it cannot fire
271
- // on this path.
272
- //
273
- // AND THE KITS GO WITH IT (agent-model-kits D-9 / I-8): a kit naming a
274
- // deleted profile can neither be applied nor repaired from any screen, so
275
- // leaving it behind would be leaving a permanent error. The confirmation
276
- // page has already named them, so this is the action the user agreed to.
277
- const doomed = kitsUsingProfile(library, id);
278
- const defaultKitKept = doomed.some((kit) => kit.id === (library.defaultKitId ?? null))
279
- ? null : library.defaultKitId;
280
- const sessionReleased = doomed.some((kit) => kit.id === state.draft.sessionKit?.id)
281
- ? null : state.draft.sessionKit;
282
- const profiles = {
283
- ...library,
284
- mainId: library.mainId === id ? null : library.mainId,
285
- fastId: library.fastId === id ? null : library.fastId,
286
- entries: library.entries.filter((entry) => entry.id !== id),
287
- kits: (library.kits ?? []).filter((kit) => !doomed.includes(kit)),
288
- defaultKitId: defaultKitKept,
289
- };
290
- const teamReset = draftSubagentProfileId(state.draft) === id
291
- ? { team: { model: 'main', modelProfileId: null } }
292
- : {};
293
- return { ...state, page: 'manager', dirty: true,
294
- draft: { ...state.draft, profiles, sessionKit: sessionReleased,
295
- patch: { ...state.draft.patch, ...teamReset } },
296
- deleteId: undefined, deleteUsers: undefined,
297
- // No orphan editor for a deleted entry (3.7).
298
- editor: state.editor?.original.id === id ? undefined : state.editor };
299
- }
300
- }
301
- }
@@ -1,162 +0,0 @@
1
- /**
2
- * The prompt manager's state machine and view models (quick-prompt-library §4.4).
3
- *
4
- * ASCII ONLY - `src/ui/**` is inside `glyphs.test.ts::inScope`. Every sentence the
5
- * user reads comes from `prompts/copy.ts`; nothing in this file may hold a literal
6
- * non-ASCII byte.
7
- *
8
- * WHY A PURE REDUCER AND NOT `useState` INSIDE THE COMPONENT: the page stack has two
9
- * transitions that are easy to get wrong and impossible to see on screen - "the
10
- * second Esc discards, the first does not" and "the intent is consumed exactly
11
- * once" - and both are assertions, not screenshots. Everything below can be driven
12
- * from a test with no Ink mounted.
13
- */
14
- import type { PromptDraftInput, PromptDraftVerdict, PromptEditorDraft, PromptLibrary, PromptLibraryEntry, PromptWriteError, QuickPrompt } from '../../prompts/types.js';
15
- export type PromptLibraryPage = 'list' | 'editor' | 'delete';
16
- /** The six rows `Tab` cycles on the editor page, in visual order. */
17
- export declare const PROMPT_EDITOR_FIELDS: readonly ["title", "content", "description", "tags", "save", "cancel"];
18
- export type PromptEditorField = (typeof PROMPT_EDITOR_FIELDS)[number];
19
- export interface PromptLibraryState {
20
- page: PromptLibraryPage;
21
- /** Focus index on the list page (clamped by the view). */
22
- index: number;
23
- /**
24
- * Id the focus should land on when the list is next drawn.
25
- *
26
- * BY ID, NEVER BY POSITION: a create appends and an edit does not move the entry,
27
- * but a delete shifts every row after it, and "focus row 3" would then point at a
28
- * different prompt than the one the user was working on.
29
- */
30
- focusId: string | null;
31
- draft: PromptEditorDraft;
32
- /** The entry the draft was seeded from, so `dirty` is a comparison, not a guess. */
33
- baseline: PromptEditorDraft | null;
34
- /** The first Esc on a dirty editor arms the discard; any edit disarms it. */
35
- escArmed: boolean;
36
- pendingDeleteId: string | null;
37
- error: PromptWriteError | null;
38
- /** The row that should own focus after a refusal (D-12). */
39
- errorField: PromptEditorField | null;
40
- /** Highest intent nonce this overlay has acted on (I-8). */
41
- consumedIntentNonce: number;
42
- }
43
- export type PromptLibraryAction = {
44
- type: 'init';
45
- entry: PromptLibraryEntry;
46
- library: PromptLibrary;
47
- nonce: number;
48
- } | {
49
- type: 'list';
50
- focusId?: string;
51
- } | {
52
- type: 'focus';
53
- index: number;
54
- } | {
55
- type: 'create';
56
- seed?: {
57
- title?: string;
58
- content?: string;
59
- };
60
- } | {
61
- type: 'edit';
62
- id: string;
63
- library: PromptLibrary;
64
- } | {
65
- type: 'delete';
66
- id: string;
67
- } | {
68
- type: 'draft';
69
- patch: Partial<PromptEditorDraft>;
70
- } | {
71
- type: 'commit';
72
- id: string | null;
73
- } | {
74
- type: 'failed';
75
- code: PromptWriteError;
76
- field?: PromptEditorField;
77
- } | {
78
- type: 'esc';
79
- } | {
80
- type: 'cancelled';
81
- };
82
- /** A new, empty draft. `id: null` is what makes `Save` a create rather than an update. */
83
- export declare const EMPTY_PROMPT_DRAFT: PromptEditorDraft;
84
- export declare const INITIAL_PROMPT_LIBRARY_STATE: PromptLibraryState;
85
- /** The editable projection of a stored entry. */
86
- export declare function draftFromEntry(entry: QuickPrompt): PromptEditorDraft;
87
- /** A create draft seeded from a command (`/prompts add title :: body`). */
88
- export declare function seededDraft(seed?: {
89
- title?: string;
90
- content?: string;
91
- }): PromptEditorDraft;
92
- /** Structural equality is enough: every field is a string or a boolean. */
93
- export declare function draftIsDirty(draft: PromptEditorDraft, baseline: PromptEditorDraft | null): boolean;
94
- /**
95
- * Validate a draft and turn it into what the store accepts (D-12).
96
- *
97
- * THE VALIDATOR IS `store.ts`'S, not a second copy here: the sentence the editor
98
- * shows and the rule the write applies have to be the same rule, or a user can be
99
- * told a title is fine by the form and refused by the store.
100
- */
101
- export declare function finishPromptEditor(draft: PromptEditorDraft): PromptDraftVerdict;
102
- /** Index of the first focusable row, for a refusal that named a field. */
103
- export declare function fieldIndex(field: PromptEditorField | null): number;
104
- /**
105
- * The reducer.
106
- *
107
- * `init` is the ONLY action that can jump straight to the editor or the delete page:
108
- * that is what makes `/prompts edit 2` land where it should (D-21). The intent's
109
- * nonce is stored as `consumedIntentNonce` by the component before dispatching, so a
110
- * replayed intent is a no-op at the component, not a second edit here.
111
- */
112
- export declare function promptLibraryReducer(state: PromptLibraryState, action: PromptLibraryAction, library: PromptLibrary): PromptLibraryState;
113
- export interface PromptLibraryRow {
114
- id: string;
115
- /** One-line render text: the title plus its markers. The caret is the component's. */
116
- label: string;
117
- markers: {
118
- favorite: boolean;
119
- hasTags: boolean;
120
- uses: number;
121
- };
122
- /** Body length in code points; the detail block and the delete page share it. */
123
- chars: number;
124
- }
125
- /** `1.2k` for anything a fixed-width column cannot show in full. */
126
- export declare function formatCount(count: number): string;
127
- /** `3d ago` / `2h ago` / `just now`. Deliberately coarse: it is a hint, not a clock. */
128
- export declare function formatAgo(timestamp: number | undefined, now: number): string;
129
- /**
130
- * The list, one row per entry, in the library's own order.
131
- *
132
- * DUPLICATE TITLES GET AN ID PREFIX (I-2), exactly as `kit-picker-state.ts` does for
133
- * duplicate kit names: two rows reading the same words make `Enter` a coin flip.
134
- */
135
- export declare function libraryRows(library: PromptLibrary): PromptLibraryRow[];
136
- /**
137
- * The detail block under the list: at most `detailMaxLines` rows, fixed shape.
138
- *
139
- * FIXED, because `OverlayFrame`'s window is shared with the list (D-16): a body that
140
- * participated in row height would squeeze six prompts into two visible rows. The
141
- * full text has exactly one home, and it is the editor.
142
- */
143
- export declare function libraryDetail(row: PromptLibraryRow | undefined, library: PromptLibrary, cols: number, now?: number): string[];
144
- /**
145
- * The list page's footer.
146
- *
147
- * THE LAST CLAUSE IS ALWAYS THE WAY OUT (§9.5): a narrow terminal clips from the
148
- * left, so the reader always keeps `Esc close`. The reorder keys are named here
149
- * rather than in the row above it because they are the one affordance a user cannot
150
- * discover by pressing a key they already know.
151
- */
152
- export declare function libraryHint(state: PromptLibraryState, count: number): string;
153
- /** The delete page's four lines: what it is, how big, and what it costs. */
154
- export declare function deleteDetail(library: PromptLibrary, id: string | null): string[];
155
- /**
156
- * The draft as the store accepts it.
157
- *
158
- * THE TAGS FIELD IS PARSED HERE, ONCE, and nowhere else: the editor edits a raw
159
- * string, the store validates a `string[]`, and a second parser between them is how
160
- * `a,b` and `a b` come to mean different things depending on which surface saved it.
161
- */
162
- export declare function draftToInput(draft: PromptEditorDraft): PromptDraftInput;