@pentoshi/clai 3.18.2 → 4.0.1

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 (1074) hide show
  1. package/README.md +44 -24
  2. package/bin/postinstall-policy.mjs +3 -0
  3. package/bin/postinstall.mjs +6 -3
  4. package/dist/agent/confirm-port.d.ts +5 -17
  5. package/dist/agent/confirm-port.js +8 -65
  6. package/dist/agent/confirm-port.js.map +1 -1
  7. package/dist/agent/evidence-governor.d.ts +1 -1
  8. package/dist/agent/evidence-governor.js +2 -2
  9. package/dist/agent/evidence-governor.js.map +1 -1
  10. package/dist/agent/loop-guard.d.ts +1 -0
  11. package/dist/agent/loop-guard.js +34 -1
  12. package/dist/agent/loop-guard.js.map +1 -1
  13. package/dist/agent/plan-decision.d.ts +0 -29
  14. package/dist/agent/plan-decision.js +0 -96
  15. package/dist/agent/plan-decision.js.map +1 -1
  16. package/dist/agent/plan-tool.js +19 -14
  17. package/dist/agent/plan-tool.js.map +1 -1
  18. package/dist/agent/progress-pause-policy.d.ts +0 -15
  19. package/dist/agent/progress-pause-policy.js +0 -15
  20. package/dist/agent/progress-pause-policy.js.map +1 -1
  21. package/dist/agent/runner.js +152 -392
  22. package/dist/agent/runner.js.map +1 -1
  23. package/dist/agent/task-evidence.d.ts +6 -0
  24. package/dist/agent/task-evidence.js +48 -3
  25. package/dist/agent/task-evidence.js.map +1 -1
  26. package/dist/agent/tool-history.js +11 -4
  27. package/dist/agent/tool-history.js.map +1 -1
  28. package/dist/app/commands/catalog.js +397 -0
  29. package/dist/app/commands/catalog.js.map +1 -0
  30. package/dist/app/commands/registry.js +1 -1
  31. package/dist/app/commands/registry.js.map +1 -1
  32. package/dist/app/confirm-prompt-text.d.ts +17 -0
  33. package/dist/app/confirm-prompt-text.js +34 -0
  34. package/dist/app/confirm-prompt-text.js.map +1 -0
  35. package/dist/app/controllers/session-controller.d.ts +1 -1
  36. package/dist/app/controllers/session-controller.js +3 -1
  37. package/dist/app/controllers/session-controller.js.map +1 -1
  38. package/dist/app/controllers/session-prompt-queue.d.ts +5 -1
  39. package/dist/app/controllers/session-prompt-queue.js +47 -30
  40. package/dist/app/controllers/session-prompt-queue.js.map +1 -1
  41. package/dist/app/controllers/turn-controller.js +41 -3
  42. package/dist/app/controllers/turn-controller.js.map +1 -1
  43. package/dist/app/ports/confirm-port.d.ts +0 -1
  44. package/dist/app/ports/persistence-port.d.ts +1 -1
  45. package/dist/app/ports/transcript-item.d.ts +63 -0
  46. package/dist/app/ports/transcript-item.js +2 -0
  47. package/dist/app/ports/transcript-item.js.map +1 -0
  48. package/dist/classic/app/ClassicApp.d.ts +12 -0
  49. package/dist/classic/app/ClassicApp.js +117 -0
  50. package/dist/classic/app/ClassicApp.js.map +1 -0
  51. package/dist/classic/app/action-handlers.d.ts +45 -0
  52. package/dist/classic/app/action-handlers.js +280 -0
  53. package/dist/classic/app/action-handlers.js.map +1 -0
  54. package/dist/classic/app/app-wiring.d.ts +133 -0
  55. package/dist/classic/app/app-wiring.js +383 -0
  56. package/dist/classic/app/app-wiring.js.map +1 -0
  57. package/dist/classic/app/use-feed.d.ts +40 -0
  58. package/dist/classic/app/use-feed.js +52 -0
  59. package/dist/classic/app/use-feed.js.map +1 -0
  60. package/dist/classic/app/wiring-interactions.d.ts +40 -0
  61. package/dist/classic/app/wiring-interactions.js +430 -0
  62. package/dist/classic/app/wiring-interactions.js.map +1 -0
  63. package/dist/classic/app/wiring-lifecycle.d.ts +10 -0
  64. package/dist/classic/app/wiring-lifecycle.js +240 -0
  65. package/dist/classic/app/wiring-lifecycle.js.map +1 -0
  66. package/dist/classic/app/wiring-selection.d.ts +3 -0
  67. package/dist/classic/app/wiring-selection.js +113 -0
  68. package/dist/classic/app/wiring-selection.js.map +1 -0
  69. package/dist/classic/app/wiring-types.d.ts +157 -0
  70. package/dist/classic/app/wiring-types.js +2 -0
  71. package/dist/classic/app/wiring-types.js.map +1 -0
  72. package/dist/classic/blocks/AssistantBlock.d.ts +3 -0
  73. package/dist/classic/blocks/AssistantBlock.js +6 -0
  74. package/dist/classic/blocks/AssistantBlock.js.map +1 -0
  75. package/dist/classic/blocks/BatchBlock.d.ts +3 -0
  76. package/dist/classic/blocks/BatchBlock.js +6 -0
  77. package/dist/classic/blocks/BatchBlock.js.map +1 -0
  78. package/dist/classic/blocks/CompactedBlock.d.ts +3 -0
  79. package/dist/classic/blocks/CompactedBlock.js +6 -0
  80. package/dist/classic/blocks/CompactedBlock.js.map +1 -0
  81. package/dist/classic/blocks/DiffBlock.d.ts +3 -0
  82. package/dist/classic/blocks/DiffBlock.js +6 -0
  83. package/dist/classic/blocks/DiffBlock.js.map +1 -0
  84. package/dist/classic/blocks/IntroBlock.d.ts +3 -0
  85. package/dist/classic/blocks/IntroBlock.js +6 -0
  86. package/dist/classic/blocks/IntroBlock.js.map +1 -0
  87. package/dist/classic/blocks/NoticeBlock.d.ts +3 -0
  88. package/dist/classic/blocks/NoticeBlock.js +6 -0
  89. package/dist/classic/blocks/NoticeBlock.js.map +1 -0
  90. package/dist/classic/blocks/ThinkingBlock.d.ts +3 -0
  91. package/dist/classic/blocks/ThinkingBlock.js +6 -0
  92. package/dist/classic/blocks/ThinkingBlock.js.map +1 -0
  93. package/dist/classic/blocks/ToolBlock.d.ts +3 -0
  94. package/dist/classic/blocks/ToolBlock.js +6 -0
  95. package/dist/classic/blocks/ToolBlock.js.map +1 -0
  96. package/dist/classic/blocks/UserBlock.d.ts +3 -0
  97. package/dist/classic/blocks/UserBlock.js +6 -0
  98. package/dist/classic/blocks/UserBlock.js.map +1 -0
  99. package/dist/classic/blocks/assistant-lines.d.ts +10 -0
  100. package/dist/classic/blocks/assistant-lines.js +43 -0
  101. package/dist/classic/blocks/assistant-lines.js.map +1 -0
  102. package/dist/classic/blocks/batch-lines.d.ts +7 -0
  103. package/dist/classic/blocks/batch-lines.js +79 -0
  104. package/dist/classic/blocks/batch-lines.js.map +1 -0
  105. package/dist/classic/blocks/block-context.d.ts +33 -0
  106. package/dist/classic/blocks/block-context.js +41 -0
  107. package/dist/classic/blocks/block-context.js.map +1 -0
  108. package/dist/classic/blocks/compacted-lines.d.ts +5 -0
  109. package/dist/classic/blocks/compacted-lines.js +54 -0
  110. package/dist/classic/blocks/compacted-lines.js.map +1 -0
  111. package/dist/classic/blocks/diff-lines.d.ts +13 -0
  112. package/dist/classic/blocks/diff-lines.js +116 -0
  113. package/dist/classic/blocks/diff-lines.js.map +1 -0
  114. package/dist/classic/blocks/intro-lines.d.ts +16 -0
  115. package/dist/classic/blocks/intro-lines.js +23 -0
  116. package/dist/classic/blocks/intro-lines.js.map +1 -0
  117. package/dist/classic/blocks/notice-lines.d.ts +7 -0
  118. package/dist/classic/blocks/notice-lines.js +28 -0
  119. package/dist/classic/blocks/notice-lines.js.map +1 -0
  120. package/dist/classic/blocks/thinking-lines.d.ts +5 -0
  121. package/dist/classic/blocks/thinking-lines.js +34 -0
  122. package/dist/classic/blocks/thinking-lines.js.map +1 -0
  123. package/dist/classic/blocks/tool-lines.d.ts +22 -0
  124. package/dist/classic/blocks/tool-lines.js +135 -0
  125. package/dist/classic/blocks/tool-lines.js.map +1 -0
  126. package/dist/classic/blocks/user-lines.d.ts +5 -0
  127. package/dist/classic/blocks/user-lines.js +26 -0
  128. package/dist/classic/blocks/user-lines.js.map +1 -0
  129. package/dist/classic/bootstrap/osc52-renderer.d.ts +10 -0
  130. package/dist/classic/bootstrap/osc52-renderer.js +38 -0
  131. package/dist/classic/bootstrap/osc52-renderer.js.map +1 -0
  132. package/dist/classic/bootstrap/renderer-handle.d.ts +15 -0
  133. package/dist/classic/bootstrap/renderer-handle.js +22 -0
  134. package/dist/classic/bootstrap/renderer-handle.js.map +1 -0
  135. package/dist/classic/bootstrap/start-classic.d.ts +8 -0
  136. package/dist/classic/bootstrap/start-classic.js +130 -0
  137. package/dist/classic/bootstrap/start-classic.js.map +1 -0
  138. package/dist/classic/bootstrap/suspend-port.d.ts +14 -0
  139. package/dist/classic/bootstrap/suspend-port.js +29 -0
  140. package/dist/classic/bootstrap/suspend-port.js.map +1 -0
  141. package/dist/classic/bootstrap/terminal-session.d.ts +58 -0
  142. package/dist/classic/bootstrap/terminal-session.js +136 -0
  143. package/dist/classic/bootstrap/terminal-session.js.map +1 -0
  144. package/dist/classic/chrome/Chrome.d.ts +19 -0
  145. package/dist/classic/chrome/Chrome.js +30 -0
  146. package/dist/classic/chrome/Chrome.js.map +1 -0
  147. package/dist/classic/chrome/Composer.d.ts +12 -0
  148. package/dist/classic/chrome/Composer.js +61 -0
  149. package/dist/classic/chrome/Composer.js.map +1 -0
  150. package/dist/classic/chrome/QueuePanel.d.ts +3 -0
  151. package/dist/classic/chrome/QueuePanel.js +10 -0
  152. package/dist/classic/chrome/QueuePanel.js.map +1 -0
  153. package/dist/classic/chrome/ResponderStrip.d.ts +3 -0
  154. package/dist/classic/chrome/ResponderStrip.js +9 -0
  155. package/dist/classic/chrome/ResponderStrip.js.map +1 -0
  156. package/dist/classic/chrome/StatusBar.d.ts +3 -0
  157. package/dist/classic/chrome/StatusBar.js +7 -0
  158. package/dist/classic/chrome/StatusBar.js.map +1 -0
  159. package/dist/classic/chrome/ToastRow.d.ts +3 -0
  160. package/dist/classic/chrome/ToastRow.js +10 -0
  161. package/dist/classic/chrome/ToastRow.js.map +1 -0
  162. package/dist/classic/chrome/composer-controller.d.ts +57 -0
  163. package/dist/classic/chrome/composer-controller.js +345 -0
  164. package/dist/classic/chrome/composer-controller.js.map +1 -0
  165. package/dist/classic/chrome/composer-frame.d.ts +35 -0
  166. package/dist/classic/chrome/composer-frame.js +46 -0
  167. package/dist/classic/chrome/composer-frame.js.map +1 -0
  168. package/dist/classic/chrome/composer-keys.d.ts +4 -0
  169. package/dist/classic/chrome/composer-keys.js +45 -0
  170. package/dist/classic/chrome/composer-keys.js.map +1 -0
  171. package/dist/classic/chrome/context-limit-editor.d.ts +7 -0
  172. package/dist/classic/chrome/context-limit-editor.js +13 -0
  173. package/dist/classic/chrome/context-limit-editor.js.map +1 -0
  174. package/dist/classic/chrome/directory-row.d.ts +14 -0
  175. package/dist/classic/chrome/directory-row.js +26 -0
  176. package/dist/classic/chrome/directory-row.js.map +1 -0
  177. package/dist/classic/chrome/editor-model.d.ts +37 -0
  178. package/dist/classic/chrome/editor-model.js +195 -0
  179. package/dist/classic/chrome/editor-model.js.map +1 -0
  180. package/dist/classic/chrome/editor-view.d.ts +34 -0
  181. package/dist/classic/chrome/editor-view.js +133 -0
  182. package/dist/classic/chrome/editor-view.js.map +1 -0
  183. package/dist/classic/chrome/queue-rows.d.ts +10 -0
  184. package/dist/classic/chrome/queue-rows.js +32 -0
  185. package/dist/classic/chrome/queue-rows.js.map +1 -0
  186. package/dist/classic/chrome/responder-row.d.ts +9 -0
  187. package/dist/classic/chrome/responder-row.js +17 -0
  188. package/dist/classic/chrome/responder-row.js.map +1 -0
  189. package/dist/classic/chrome/row-budget.d.ts +43 -0
  190. package/dist/classic/chrome/row-budget.js +78 -0
  191. package/dist/classic/chrome/row-budget.js.map +1 -0
  192. package/dist/classic/chrome/status-rows.d.ts +44 -0
  193. package/dist/classic/chrome/status-rows.js +165 -0
  194. package/dist/classic/chrome/status-rows.js.map +1 -0
  195. package/dist/classic/chrome/toast-rows.d.ts +14 -0
  196. package/dist/classic/chrome/toast-rows.js +82 -0
  197. package/dist/classic/chrome/toast-rows.js.map +1 -0
  198. package/dist/classic/chrome/use-terminal-size.d.ts +14 -0
  199. package/dist/classic/chrome/use-terminal-size.js +38 -0
  200. package/dist/classic/chrome/use-terminal-size.js.map +1 -0
  201. package/dist/classic/feed/Feed.d.ts +17 -0
  202. package/dist/classic/feed/Feed.js +37 -0
  203. package/dist/classic/feed/Feed.js.map +1 -0
  204. package/dist/classic/feed/FeedStatic.d.ts +13 -0
  205. package/dist/classic/feed/FeedStatic.js +15 -0
  206. package/dist/classic/feed/FeedStatic.js.map +1 -0
  207. package/dist/classic/feed/LiveTail.d.ts +10 -0
  208. package/dist/classic/feed/LiveTail.js +20 -0
  209. package/dist/classic/feed/LiveTail.js.map +1 -0
  210. package/dist/classic/feed/ScrollbarGutter.d.ts +9 -0
  211. package/dist/classic/feed/ScrollbarGutter.js +42 -0
  212. package/dist/classic/feed/ScrollbarGutter.js.map +1 -0
  213. package/dist/classic/feed/block-height.d.ts +12 -0
  214. package/dist/classic/feed/block-height.js +34 -0
  215. package/dist/classic/feed/block-height.js.map +1 -0
  216. package/dist/classic/feed/commit-ledger.d.ts +26 -0
  217. package/dist/classic/feed/commit-ledger.js +52 -0
  218. package/dist/classic/feed/commit-ledger.js.map +1 -0
  219. package/dist/classic/feed/feed-blocks.d.ts +39 -0
  220. package/dist/classic/feed/feed-blocks.js +124 -0
  221. package/dist/classic/feed/feed-blocks.js.map +1 -0
  222. package/dist/classic/feed/live-tail-policy.d.ts +35 -0
  223. package/dist/classic/feed/live-tail-policy.js +80 -0
  224. package/dist/classic/feed/live-tail-policy.js.map +1 -0
  225. package/dist/classic/feed/scrollbar-rows.d.ts +6 -0
  226. package/dist/classic/feed/scrollbar-rows.js +18 -0
  227. package/dist/classic/feed/scrollbar-rows.js.map +1 -0
  228. package/dist/classic/feed/transcript-selection.d.ts +16 -0
  229. package/dist/classic/feed/transcript-selection.js +92 -0
  230. package/dist/classic/feed/transcript-selection.js.map +1 -0
  231. package/dist/classic/feed/transcript-window.d.ts +33 -0
  232. package/dist/classic/feed/transcript-window.js +53 -0
  233. package/dist/classic/feed/transcript-window.js.map +1 -0
  234. package/dist/classic/input/cancel-ladder.d.ts +47 -0
  235. package/dist/classic/input/cancel-ladder.js +100 -0
  236. package/dist/classic/input/cancel-ladder.js.map +1 -0
  237. package/dist/classic/input/chord-from-key.d.ts +2 -0
  238. package/dist/classic/input/chord-from-key.js +25 -0
  239. package/dist/classic/input/chord-from-key.js.map +1 -0
  240. package/dist/classic/input/input-router.d.ts +33 -0
  241. package/dist/classic/input/input-router.js +146 -0
  242. package/dist/classic/input/input-router.js.map +1 -0
  243. package/dist/classic/input/key-event.d.ts +39 -0
  244. package/dist/classic/input/key-event.js +12 -0
  245. package/dist/classic/input/key-event.js.map +1 -0
  246. package/dist/classic/input/paste-decoder.d.ts +1 -0
  247. package/dist/classic/input/paste-decoder.js +9 -0
  248. package/dist/classic/input/paste-decoder.js.map +1 -0
  249. package/dist/classic/input/raw-decoder.d.ts +31 -0
  250. package/dist/classic/input/raw-decoder.js +325 -0
  251. package/dist/classic/input/raw-decoder.js.map +1 -0
  252. package/dist/classic/input/sgr-mouse.d.ts +2 -0
  253. package/dist/classic/input/sgr-mouse.js +37 -0
  254. package/dist/classic/input/sgr-mouse.js.map +1 -0
  255. package/dist/classic/input/terminal-sequences.d.ts +38 -0
  256. package/dist/classic/input/terminal-sequences.js +111 -0
  257. package/dist/classic/input/terminal-sequences.js.map +1 -0
  258. package/dist/classic/panels/CompletionPanel.d.ts +3 -0
  259. package/dist/classic/panels/CompletionPanel.js +10 -0
  260. package/dist/classic/panels/CompletionPanel.js.map +1 -0
  261. package/dist/classic/panels/ConfirmPanel.d.ts +3 -0
  262. package/dist/classic/panels/ConfirmPanel.js +7 -0
  263. package/dist/classic/panels/ConfirmPanel.js.map +1 -0
  264. package/dist/classic/panels/JobsPanel.d.ts +3 -0
  265. package/dist/classic/panels/JobsPanel.js +7 -0
  266. package/dist/classic/panels/JobsPanel.js.map +1 -0
  267. package/dist/classic/panels/KeysPanel.d.ts +3 -0
  268. package/dist/classic/panels/KeysPanel.js +7 -0
  269. package/dist/classic/panels/KeysPanel.js.map +1 -0
  270. package/dist/classic/panels/PagerPanel.d.ts +3 -0
  271. package/dist/classic/panels/PagerPanel.js +7 -0
  272. package/dist/classic/panels/PagerPanel.js.map +1 -0
  273. package/dist/classic/panels/PanelFrame.d.ts +3 -0
  274. package/dist/classic/panels/PanelFrame.js +8 -0
  275. package/dist/classic/panels/PanelFrame.js.map +1 -0
  276. package/dist/classic/panels/PickerPanel.d.ts +3 -0
  277. package/dist/classic/panels/PickerPanel.js +7 -0
  278. package/dist/classic/panels/PickerPanel.js.map +1 -0
  279. package/dist/classic/panels/PlanPanel.d.ts +3 -0
  280. package/dist/classic/panels/PlanPanel.js +7 -0
  281. package/dist/classic/panels/PlanPanel.js.map +1 -0
  282. package/dist/classic/panels/PromptActionsPanel.d.ts +3 -0
  283. package/dist/classic/panels/PromptActionsPanel.js +7 -0
  284. package/dist/classic/panels/PromptActionsPanel.js.map +1 -0
  285. package/dist/classic/panels/ScopePanel.d.ts +3 -0
  286. package/dist/classic/panels/ScopePanel.js +7 -0
  287. package/dist/classic/panels/ScopePanel.js.map +1 -0
  288. package/dist/classic/panels/SearchPanel.d.ts +3 -0
  289. package/dist/classic/panels/SearchPanel.js +7 -0
  290. package/dist/classic/panels/SearchPanel.js.map +1 -0
  291. package/dist/classic/panels/SecretPanel.d.ts +3 -0
  292. package/dist/classic/panels/SecretPanel.js +7 -0
  293. package/dist/classic/panels/SecretPanel.js.map +1 -0
  294. package/dist/classic/panels/completion-accept.d.ts +17 -0
  295. package/dist/classic/panels/completion-accept.js +58 -0
  296. package/dist/classic/panels/completion-accept.js.map +1 -0
  297. package/dist/classic/panels/completion-rows.d.ts +29 -0
  298. package/dist/classic/panels/completion-rows.js +135 -0
  299. package/dist/classic/panels/completion-rows.js.map +1 -0
  300. package/dist/classic/panels/confirm-panel.d.ts +24 -0
  301. package/dist/classic/panels/confirm-panel.js +115 -0
  302. package/dist/classic/panels/confirm-panel.js.map +1 -0
  303. package/dist/classic/panels/jobs-panel.d.ts +32 -0
  304. package/dist/classic/panels/jobs-panel.js +116 -0
  305. package/dist/classic/panels/jobs-panel.js.map +1 -0
  306. package/dist/classic/panels/keys-panel.d.ts +40 -0
  307. package/dist/classic/panels/keys-panel.js +174 -0
  308. package/dist/classic/panels/keys-panel.js.map +1 -0
  309. package/dist/classic/panels/list-rows.d.ts +27 -0
  310. package/dist/classic/panels/list-rows.js +42 -0
  311. package/dist/classic/panels/list-rows.js.map +1 -0
  312. package/dist/classic/panels/list-window.d.ts +15 -0
  313. package/dist/classic/panels/list-window.js +25 -0
  314. package/dist/classic/panels/list-window.js.map +1 -0
  315. package/dist/classic/panels/pager-panel.d.ts +50 -0
  316. package/dist/classic/panels/pager-panel.js +238 -0
  317. package/dist/classic/panels/pager-panel.js.map +1 -0
  318. package/dist/classic/panels/panel-controller.d.ts +29 -0
  319. package/dist/classic/panels/panel-controller.js +320 -0
  320. package/dist/classic/panels/panel-controller.js.map +1 -0
  321. package/dist/classic/panels/panel-effect.d.ts +74 -0
  322. package/dist/classic/panels/panel-effect.js +7 -0
  323. package/dist/classic/panels/panel-effect.js.map +1 -0
  324. package/dist/classic/panels/panel-effects.d.ts +11 -0
  325. package/dist/classic/panels/panel-effects.js +105 -0
  326. package/dist/classic/panels/panel-effects.js.map +1 -0
  327. package/dist/classic/panels/panel-frame.d.ts +20 -0
  328. package/dist/classic/panels/panel-frame.js +47 -0
  329. package/dist/classic/panels/panel-frame.js.map +1 -0
  330. package/dist/classic/panels/panel-host.d.ts +16 -0
  331. package/dist/classic/panels/panel-host.js +49 -0
  332. package/dist/classic/panels/panel-host.js.map +1 -0
  333. package/dist/classic/panels/panel-initial-states.d.ts +18 -0
  334. package/dist/classic/panels/panel-initial-states.js +33 -0
  335. package/dist/classic/panels/panel-initial-states.js.map +1 -0
  336. package/dist/classic/panels/panel-types.d.ts +47 -0
  337. package/dist/classic/panels/panel-types.js +2 -0
  338. package/dist/classic/panels/panel-types.js.map +1 -0
  339. package/dist/classic/panels/panel-wheel.d.ts +20 -0
  340. package/dist/classic/panels/panel-wheel.js +82 -0
  341. package/dist/classic/panels/panel-wheel.js.map +1 -0
  342. package/dist/classic/panels/picker-panel.d.ts +35 -0
  343. package/dist/classic/panels/picker-panel.js +150 -0
  344. package/dist/classic/panels/picker-panel.js.map +1 -0
  345. package/dist/classic/panels/plan-panel.d.ts +27 -0
  346. package/dist/classic/panels/plan-panel.js +98 -0
  347. package/dist/classic/panels/plan-panel.js.map +1 -0
  348. package/dist/classic/panels/prompt-actions-panel.d.ts +25 -0
  349. package/dist/classic/panels/prompt-actions-panel.js +57 -0
  350. package/dist/classic/panels/prompt-actions-panel.js.map +1 -0
  351. package/dist/classic/panels/scope-panel.d.ts +27 -0
  352. package/dist/classic/panels/scope-panel.js +122 -0
  353. package/dist/classic/panels/scope-panel.js.map +1 -0
  354. package/dist/classic/panels/search-panel.d.ts +32 -0
  355. package/dist/classic/panels/search-panel.js +126 -0
  356. package/dist/classic/panels/search-panel.js.map +1 -0
  357. package/dist/classic/panels/secret-panel.d.ts +28 -0
  358. package/dist/classic/panels/secret-panel.js +70 -0
  359. package/dist/classic/panels/secret-panel.js.map +1 -0
  360. package/dist/classic/render/ansi-text.d.ts +36 -0
  361. package/dist/classic/render/ansi-text.js +234 -0
  362. package/dist/classic/render/ansi-text.js.map +1 -0
  363. package/dist/classic/render/glyphs.d.ts +49 -0
  364. package/dist/classic/render/glyphs.js +111 -0
  365. package/dist/classic/render/glyphs.js.map +1 -0
  366. package/dist/classic/render/ink-theme.d.ts +49 -0
  367. package/dist/classic/render/ink-theme.js +73 -0
  368. package/dist/classic/render/ink-theme.js.map +1 -0
  369. package/dist/classic/render/measure.d.ts +17 -0
  370. package/dist/classic/render/measure.js +33 -0
  371. package/dist/classic/render/measure.js.map +1 -0
  372. package/dist/classic/render/shell-width.d.ts +12 -0
  373. package/dist/classic/render/shell-width.js +23 -0
  374. package/dist/classic/render/shell-width.js.map +1 -0
  375. package/dist/classic/render/wrap.d.ts +19 -0
  376. package/dist/classic/render/wrap.js +102 -0
  377. package/dist/classic/render/wrap.js.map +1 -0
  378. package/dist/commands/doctor.js +9 -8
  379. package/dist/commands/doctor.js.map +1 -1
  380. package/dist/commands/providers.js +43 -50
  381. package/dist/commands/providers.js.map +1 -1
  382. package/dist/commands/search-providers.js +3 -5
  383. package/dist/commands/search-providers.js.map +1 -1
  384. package/dist/index.js +76 -84
  385. package/dist/index.js.map +1 -1
  386. package/dist/llm/capabilities.js +5 -2
  387. package/dist/llm/capabilities.js.map +1 -1
  388. package/dist/llm/custom-providers.js +16 -3
  389. package/dist/llm/custom-providers.js.map +1 -1
  390. package/dist/llm/http.d.ts +5 -0
  391. package/dist/llm/http.js +38 -8
  392. package/dist/llm/http.js.map +1 -1
  393. package/dist/llm/meta.js +56 -24
  394. package/dist/llm/meta.js.map +1 -1
  395. package/dist/llm/modal.js +3 -2
  396. package/dist/llm/modal.js.map +1 -1
  397. package/dist/llm/router.js +36 -23
  398. package/dist/llm/router.js.map +1 -1
  399. package/dist/llm/system-messages.d.ts +1 -0
  400. package/dist/llm/system-messages.js +6 -0
  401. package/dist/llm/system-messages.js.map +1 -1
  402. package/dist/llm/token-usage.js +11 -1
  403. package/dist/llm/token-usage.js.map +1 -1
  404. package/dist/llm/tool-protocol.js +10 -3
  405. package/dist/llm/tool-protocol.js.map +1 -1
  406. package/dist/modes/agent.d.ts +3 -0
  407. package/dist/modes/agent.js +10 -3
  408. package/dist/modes/agent.js.map +1 -1
  409. package/dist/modes/ask.js +2 -2
  410. package/dist/modes/ask.js.map +1 -1
  411. package/dist/noninteractive/read-stdin.d.ts +1 -0
  412. package/dist/noninteractive/read-stdin.js +8 -0
  413. package/dist/noninteractive/read-stdin.js.map +1 -0
  414. package/dist/noninteractive/readline-prompts.d.ts +47 -0
  415. package/dist/noninteractive/readline-prompts.js +201 -0
  416. package/dist/noninteractive/readline-prompts.js.map +1 -0
  417. package/dist/noninteractive/start-noninteractive.d.ts +32 -0
  418. package/dist/noninteractive/start-noninteractive.js +100 -0
  419. package/dist/noninteractive/start-noninteractive.js.map +1 -0
  420. package/dist/noninteractive/stdio-confirm-port.d.ts +15 -0
  421. package/dist/noninteractive/stdio-confirm-port.js +45 -0
  422. package/dist/noninteractive/stdio-confirm-port.js.map +1 -0
  423. package/dist/noninteractive/stream-blocks.d.ts +117 -0
  424. package/dist/noninteractive/stream-blocks.js +445 -0
  425. package/dist/noninteractive/stream-blocks.js.map +1 -0
  426. package/dist/noninteractive/stream-renderer.d.ts +40 -0
  427. package/dist/noninteractive/stream-renderer.js +164 -0
  428. package/dist/noninteractive/stream-renderer.js.map +1 -0
  429. package/dist/noninteractive/stream-spinner.d.ts +28 -0
  430. package/dist/noninteractive/stream-spinner.js +45 -0
  431. package/dist/noninteractive/stream-spinner.js.map +1 -0
  432. package/dist/os/bun-runtime.js +207 -0
  433. package/dist/os/bun-runtime.js.map +1 -0
  434. package/dist/prompts/embedded.js +1 -1
  435. package/dist/prompts/embedded.js.map +1 -1
  436. package/dist/prompts/system.agent.md +11 -7
  437. package/dist/store/config.d.ts +3 -1
  438. package/dist/store/config.js +37 -5
  439. package/dist/store/config.js.map +1 -1
  440. package/dist/store/history.d.ts +1 -1
  441. package/dist/store/history.js +3 -0
  442. package/dist/store/history.js.map +1 -1
  443. package/dist/store/keys.d.ts +5 -2
  444. package/dist/store/keys.js +97 -14
  445. package/dist/store/keys.js.map +1 -1
  446. package/dist/tools/definitions.js +1 -1
  447. package/dist/tools/definitions.js.map +1 -1
  448. package/dist/tools/registry.js +27 -4
  449. package/dist/tools/registry.js.map +1 -1
  450. package/dist/tools/web/providers/duckduckgo.js +1 -1
  451. package/dist/tools/web/providers/duckduckgo.js.map +1 -1
  452. package/dist/tools/web/readable.js +1 -1
  453. package/dist/tools/web/readable.js.map +1 -1
  454. package/dist/tui-v2/app/App.js +20 -28
  455. package/dist/tui-v2/app/App.js.map +1 -1
  456. package/dist/tui-v2/bootstrap/pager-export.d.ts +9 -18
  457. package/dist/tui-v2/bootstrap/pager-export.js +15 -72
  458. package/dist/tui-v2/bootstrap/pager-export.js.map +1 -1
  459. package/dist/tui-v2/bootstrap/start-tui-v2.js +8 -8
  460. package/dist/tui-v2/bootstrap/start-tui-v2.js.map +1 -1
  461. package/dist/tui-v2/components/completion/completion-menu.d.ts +2 -2
  462. package/dist/tui-v2/components/composer/composer-input-box.d.ts +1 -1
  463. package/dist/tui-v2/components/composer/paste-chip.d.ts +2 -2
  464. package/dist/tui-v2/components/composer/paste-chip.js +1 -1
  465. package/dist/tui-v2/components/composer/paste-chip.js.map +1 -1
  466. package/dist/tui-v2/components/jobs/jobs-panel.d.ts +2 -2
  467. package/dist/tui-v2/components/jobs/jobs-panel.js +4 -4
  468. package/dist/tui-v2/components/jobs/jobs-panel.js.map +1 -1
  469. package/dist/tui-v2/components/modal/confirm-modal.d.ts +3 -3
  470. package/dist/tui-v2/components/modal/confirm-modal.js +6 -6
  471. package/dist/tui-v2/components/modal/confirm-modal.js.map +1 -1
  472. package/dist/tui-v2/components/modal/keys-modal.d.ts +3 -3
  473. package/dist/tui-v2/components/modal/keys-modal.js +24 -9
  474. package/dist/tui-v2/components/modal/keys-modal.js.map +1 -1
  475. package/dist/tui-v2/components/modal/prompt-actions-modal.d.ts +3 -3
  476. package/dist/tui-v2/components/modal/prompt-actions-modal.js +2 -2
  477. package/dist/tui-v2/components/modal/prompt-actions-modal.js.map +1 -1
  478. package/dist/tui-v2/components/modal/scope-modal.d.ts +3 -3
  479. package/dist/tui-v2/components/modal/scope-modal.js +1 -1
  480. package/dist/tui-v2/components/modal/scope-modal.js.map +1 -1
  481. package/dist/tui-v2/components/modal/secret-modal.d.ts +3 -3
  482. package/dist/tui-v2/components/modal/secret-modal.js +2 -2
  483. package/dist/tui-v2/components/modal/secret-modal.js.map +1 -1
  484. package/dist/tui-v2/components/overlay/overlay-host.d.ts +2 -2
  485. package/dist/tui-v2/components/overlay/overlay-host.js +1 -1
  486. package/dist/tui-v2/components/overlay/overlay-host.js.map +1 -1
  487. package/dist/tui-v2/components/pager/pager-line.d.ts +3 -3
  488. package/dist/tui-v2/components/pager/pager-line.js +3 -3
  489. package/dist/tui-v2/components/pager/pager-line.js.map +1 -1
  490. package/dist/tui-v2/components/pager/pager.d.ts +3 -3
  491. package/dist/tui-v2/components/pager/pager.js +6 -5
  492. package/dist/tui-v2/components/pager/pager.js.map +1 -1
  493. package/dist/tui-v2/components/picker/picker.d.ts +3 -3
  494. package/dist/tui-v2/components/picker/picker.js +2 -2
  495. package/dist/tui-v2/components/picker/picker.js.map +1 -1
  496. package/dist/tui-v2/components/plan/plan-pane-anim.js +1 -1
  497. package/dist/tui-v2/components/plan/plan-pane-anim.js.map +1 -1
  498. package/dist/tui-v2/components/plan/plan-view.d.ts +2 -2
  499. package/dist/tui-v2/components/plan/plan-view.js +2 -2
  500. package/dist/tui-v2/components/plan/plan-view.js.map +1 -1
  501. package/dist/tui-v2/components/queue/queue-panel.d.ts +2 -2
  502. package/dist/tui-v2/components/queue/queue-panel.js +3 -3
  503. package/dist/tui-v2/components/queue/queue-panel.js.map +1 -1
  504. package/dist/tui-v2/components/status/context-limit-chip.d.ts +1 -5
  505. package/dist/tui-v2/components/status/context-limit-chip.js +1 -38
  506. package/dist/tui-v2/components/status/context-limit-chip.js.map +1 -1
  507. package/dist/tui-v2/components/status/status-line.d.ts +5 -34
  508. package/dist/tui-v2/components/status/status-line.js +7 -99
  509. package/dist/tui-v2/components/status/status-line.js.map +1 -1
  510. package/dist/tui-v2/components/toast/toast-anim.d.ts +0 -1
  511. package/dist/tui-v2/components/toast/toast-anim.js +2 -3
  512. package/dist/tui-v2/components/toast/toast-anim.js.map +1 -1
  513. package/dist/tui-v2/components/toast/toast-host.d.ts +2 -2
  514. package/dist/tui-v2/components/toast/toast-host.js +2 -2
  515. package/dist/tui-v2/components/toast/toast-host.js.map +1 -1
  516. package/dist/tui-v2/components/transcript/assistant-message.d.ts +2 -2
  517. package/dist/tui-v2/components/transcript/assistant-message.js +3 -2
  518. package/dist/tui-v2/components/transcript/assistant-message.js.map +1 -1
  519. package/dist/tui-v2/components/transcript/compacted-row.d.ts +3 -3
  520. package/dist/tui-v2/components/transcript/compacted-row.js +6 -5
  521. package/dist/tui-v2/components/transcript/compacted-row.js.map +1 -1
  522. package/dist/tui-v2/components/transcript/file-diff-card.d.ts +1 -1
  523. package/dist/tui-v2/components/transcript/file-diff-card.js +1 -1
  524. package/dist/tui-v2/components/transcript/file-diff-card.js.map +1 -1
  525. package/dist/tui-v2/components/transcript/intro-card.d.ts +2 -2
  526. package/dist/tui-v2/components/transcript/intro-card.js +1 -1
  527. package/dist/tui-v2/components/transcript/intro-card.js.map +1 -1
  528. package/dist/tui-v2/components/transcript/linkable-text.d.ts +1 -1
  529. package/dist/tui-v2/components/transcript/linkable-text.js +1 -1
  530. package/dist/tui-v2/components/transcript/linkable-text.js.map +1 -1
  531. package/dist/tui-v2/components/transcript/notice-row.d.ts +2 -2
  532. package/dist/tui-v2/components/transcript/search-bar.d.ts +1 -1
  533. package/dist/tui-v2/components/transcript/thinking-block.d.ts +2 -2
  534. package/dist/tui-v2/components/transcript/thinking-block.js +3 -3
  535. package/dist/tui-v2/components/transcript/thinking-block.js.map +1 -1
  536. package/dist/tui-v2/components/transcript/tool-card.d.ts +3 -3
  537. package/dist/tui-v2/components/transcript/tool-card.js +7 -7
  538. package/dist/tui-v2/components/transcript/tool-card.js.map +1 -1
  539. package/dist/tui-v2/components/transcript/transcript-row.d.ts +4 -4
  540. package/dist/tui-v2/components/transcript/transcript-scrollbar.d.ts +1 -1
  541. package/dist/tui-v2/components/transcript/transcript-scrollbar.js +42 -9
  542. package/dist/tui-v2/components/transcript/transcript-scrollbar.js.map +1 -1
  543. package/dist/tui-v2/components/transcript/transcript-view.d.ts +3 -3
  544. package/dist/tui-v2/components/transcript/transcript-view.js +6 -6
  545. package/dist/tui-v2/components/transcript/transcript-view.js.map +1 -1
  546. package/dist/tui-v2/components/transcript/use-native-selection-copy.d.ts +1 -1
  547. package/dist/tui-v2/components/transcript/use-transcript-selection.d.ts +2 -2
  548. package/dist/tui-v2/components/transcript/use-transcript-selection.js +3 -3
  549. package/dist/tui-v2/components/transcript/use-transcript-selection.js.map +1 -1
  550. package/dist/tui-v2/components/transcript/user-message.d.ts +2 -2
  551. package/dist/tui-v2/components/transcript/user-message.js +1 -1
  552. package/dist/tui-v2/components/transcript/user-message.js.map +1 -1
  553. package/dist/tui-v2/composer/composer-editor.d.ts +2 -2
  554. package/dist/tui-v2/composer/composer-editor.js +21 -20
  555. package/dist/tui-v2/composer/composer-editor.js.map +1 -1
  556. package/dist/tui-v2/composer/composer-image-paste.d.ts +1 -1
  557. package/dist/tui-v2/composer/composer-image-paste.js +1 -1
  558. package/dist/tui-v2/composer/composer-image-paste.js.map +1 -1
  559. package/dist/tui-v2/composer/use-draft-actions.d.ts +2 -2
  560. package/dist/tui-v2/composer/use-draft-actions.js +2 -2
  561. package/dist/tui-v2/composer/use-draft-actions.js.map +1 -1
  562. package/dist/tui-v2/input/chord-from-opentui-key.d.ts +20 -0
  563. package/dist/tui-v2/input/chord-from-opentui-key.js +51 -0
  564. package/dist/tui-v2/input/chord-from-opentui-key.js.map +1 -0
  565. package/dist/tui-v2/rendering/pager-markdown.d.ts +2 -22
  566. package/dist/tui-v2/rendering/pager-markdown.js +4 -103
  567. package/dist/tui-v2/rendering/pager-markdown.js.map +1 -1
  568. package/dist/tui-v2/rendering/styled-markdown.d.ts +20 -0
  569. package/dist/tui-v2/rendering/styled-markdown.js +35 -0
  570. package/dist/tui-v2/rendering/styled-markdown.js.map +1 -0
  571. package/dist/types.d.ts +2 -0
  572. package/dist/ui/mentions.d.ts +5 -8
  573. package/dist/ui/mentions.js +26 -8
  574. package/dist/ui/mentions.js.map +1 -1
  575. package/dist/ui/warn-once.d.ts +2 -0
  576. package/dist/ui/warn-once.js +13 -0
  577. package/dist/ui/warn-once.js.map +1 -0
  578. package/dist/ui-core/actions/action-id.d.ts +14 -0
  579. package/dist/ui-core/actions/action-id.js +123 -0
  580. package/dist/ui-core/actions/action-id.js.map +1 -0
  581. package/dist/ui-core/actions/action-router.js.map +1 -0
  582. package/dist/ui-core/actions/chord.d.ts +20 -0
  583. package/dist/ui-core/actions/chord.js +28 -0
  584. package/dist/ui-core/actions/chord.js.map +1 -0
  585. package/dist/ui-core/actions/format-shortcuts.js +267 -0
  586. package/dist/ui-core/actions/format-shortcuts.js.map +1 -0
  587. package/dist/ui-core/actions/keymap.d.ts +23 -0
  588. package/dist/ui-core/actions/keymap.js +147 -0
  589. package/dist/ui-core/actions/keymap.js.map +1 -0
  590. package/dist/ui-core/actions/mode-cycle.js.map +1 -0
  591. package/dist/ui-core/bootstrap/can-use-tui.js.map +1 -0
  592. package/dist/ui-core/bootstrap/capabilities.js +96 -0
  593. package/dist/ui-core/bootstrap/capabilities.js.map +1 -0
  594. package/dist/ui-core/bootstrap/composition-root.d.ts +92 -0
  595. package/dist/ui-core/bootstrap/composition-root.js.map +1 -0
  596. package/dist/ui-core/bootstrap/console-guard.js.map +1 -0
  597. package/dist/ui-core/bootstrap/console-suppress.js.map +1 -0
  598. package/dist/ui-core/bootstrap/lifecycle.js.map +1 -0
  599. package/dist/ui-core/bootstrap/overlay-ports.js +92 -0
  600. package/dist/ui-core/bootstrap/overlay-ports.js.map +1 -0
  601. package/dist/ui-core/bootstrap/ui-selection.d.ts +27 -0
  602. package/dist/ui-core/bootstrap/ui-selection.js +109 -0
  603. package/dist/ui-core/bootstrap/ui-selection.js.map +1 -0
  604. package/dist/ui-core/commands/command-handlers.js +86 -0
  605. package/dist/ui-core/commands/command-handlers.js.map +1 -0
  606. package/dist/ui-core/commands/config-commands.d.ts +14 -0
  607. package/dist/ui-core/commands/config-commands.js +315 -0
  608. package/dist/ui-core/commands/config-commands.js.map +1 -0
  609. package/dist/ui-core/commands/key-commands.d.ts +9 -0
  610. package/dist/ui-core/commands/key-commands.js +532 -0
  611. package/dist/ui-core/commands/key-commands.js.map +1 -0
  612. package/dist/ui-core/commands/picker-commands.d.ts +25 -0
  613. package/dist/ui-core/commands/picker-commands.js +1045 -0
  614. package/dist/ui-core/commands/picker-commands.js.map +1 -0
  615. package/dist/ui-core/commands/session-commands.d.ts +19 -0
  616. package/dist/ui-core/commands/session-commands.js +183 -0
  617. package/dist/ui-core/commands/session-commands.js.map +1 -0
  618. package/dist/ui-core/commands/startup-update.js.map +1 -0
  619. package/dist/ui-core/composer/arrow-intent.js.map +1 -0
  620. package/dist/ui-core/composer/completion.js.map +1 -0
  621. package/dist/ui-core/composer/composer-action-port.js.map +1 -0
  622. package/dist/ui-core/composer/composer-height.js +29 -0
  623. package/dist/ui-core/composer/composer-height.js.map +1 -0
  624. package/dist/ui-core/composer/composer-image-paste.d.ts +20 -0
  625. package/dist/ui-core/composer/composer-image-paste.js +77 -0
  626. package/dist/ui-core/composer/composer-image-paste.js.map +1 -0
  627. package/dist/ui-core/composer/composer-meta.d.ts +2 -0
  628. package/dist/ui-core/composer/composer-meta.js +31 -0
  629. package/dist/ui-core/composer/composer-meta.js.map +1 -0
  630. package/dist/ui-core/composer/composer-wheel.d.ts +58 -0
  631. package/dist/ui-core/composer/composer-wheel.js +108 -0
  632. package/dist/ui-core/composer/composer-wheel.js.map +1 -0
  633. package/dist/ui-core/composer/draft-actions.d.ts +31 -0
  634. package/dist/ui-core/composer/draft-actions.js +45 -0
  635. package/dist/ui-core/composer/draft-actions.js.map +1 -0
  636. package/dist/ui-core/composer/history-nav.js.map +1 -0
  637. package/dist/ui-core/composer/input-history.js +9 -0
  638. package/dist/ui-core/composer/input-history.js.map +1 -0
  639. package/dist/ui-core/composer/newline-hint.d.ts +13 -0
  640. package/dist/ui-core/composer/newline-hint.js.map +1 -0
  641. package/dist/ui-core/composer/paste-placeholder.js.map +1 -0
  642. package/dist/ui-core/composer/prompt-history.js.map +1 -0
  643. package/dist/ui-core/composer/secret-buffer.js.map +1 -0
  644. package/dist/ui-core/composer/textarea-keybindings.d.ts +25 -0
  645. package/dist/ui-core/composer/textarea-keybindings.js +84 -0
  646. package/dist/ui-core/composer/textarea-keybindings.js.map +1 -0
  647. package/dist/ui-core/controllers/focus-controller.js.map +1 -0
  648. package/dist/ui-core/controllers/interruptible-controller.js.map +1 -0
  649. package/dist/ui-core/controllers/overlay-controller.d.ts +211 -0
  650. package/dist/ui-core/controllers/overlay-controller.js.map +1 -0
  651. package/dist/ui-core/controllers/selection-controller.js.map +1 -0
  652. package/dist/ui-core/controllers/toast-controller.js.map +1 -0
  653. package/dist/ui-core/layout/compute-layout.js.map +1 -0
  654. package/dist/ui-core/motion/ease.js.map +1 -0
  655. package/dist/ui-core/notify.js.map +1 -0
  656. package/dist/ui-core/plan/plan-lifecycle.js.map +1 -0
  657. package/dist/ui-core/ports/clipboard-osc52.js +44 -0
  658. package/dist/ui-core/ports/clipboard-osc52.js.map +1 -0
  659. package/dist/ui-core/ports/pager-export-port.d.ts +16 -0
  660. package/dist/ui-core/ports/pager-export-port.js +70 -0
  661. package/dist/ui-core/ports/pager-export-port.js.map +1 -0
  662. package/dist/ui-core/ports/renderer-port.d.ts +10 -0
  663. package/dist/ui-core/ports/renderer-port.js +2 -0
  664. package/dist/ui-core/ports/renderer-port.js.map +1 -0
  665. package/dist/ui-core/react/providers.d.ts +16 -0
  666. package/dist/ui-core/react/providers.js +31 -0
  667. package/dist/ui-core/react/providers.js.map +1 -0
  668. package/dist/ui-core/react/use-has-draft.js.map +1 -0
  669. package/dist/ui-core/react/use-overlay.js.map +1 -0
  670. package/dist/ui-core/react/use-plan.js.map +1 -0
  671. package/dist/ui-core/react/use-session-state.js.map +1 -0
  672. package/dist/ui-core/react/use-toast.js.map +1 -0
  673. package/dist/ui-core/react/use-transcript-store.d.ts +10 -0
  674. package/dist/ui-core/react/use-transcript-store.js.map +1 -0
  675. package/dist/ui-core/rendering/artifact-pager-source.js.map +1 -0
  676. package/dist/ui-core/rendering/batch-sections.js.map +1 -0
  677. package/dist/ui-core/rendering/code-block.d.ts +48 -0
  678. package/dist/ui-core/rendering/code-block.js +407 -0
  679. package/dist/ui-core/rendering/code-block.js.map +1 -0
  680. package/dist/ui-core/rendering/context-limit.d.ts +8 -0
  681. package/dist/ui-core/rendering/context-limit.js +49 -0
  682. package/dist/ui-core/rendering/context-limit.js.map +1 -0
  683. package/dist/ui-core/rendering/file-diff-view.js.map +1 -0
  684. package/dist/ui-core/rendering/format-help.js.map +1 -0
  685. package/dist/ui-core/rendering/format-keys.d.ts +14 -0
  686. package/dist/ui-core/rendering/format-keys.js +78 -0
  687. package/dist/ui-core/rendering/format-keys.js.map +1 -0
  688. package/dist/ui-core/rendering/incremental-strip.js.map +1 -0
  689. package/dist/ui-core/rendering/intro-header.d.ts +11 -0
  690. package/dist/ui-core/rendering/intro-header.js +208 -0
  691. package/dist/ui-core/rendering/intro-header.js.map +1 -0
  692. package/dist/ui-core/rendering/job-tail-source.js.map +1 -0
  693. package/dist/ui-core/rendering/link-detector.js.map +1 -0
  694. package/dist/ui-core/rendering/markdown.js.map +1 -0
  695. package/dist/ui-core/rendering/open-tool-output.js +346 -0
  696. package/dist/ui-core/rendering/open-tool-output.js.map +1 -0
  697. package/dist/ui-core/rendering/pager-chrome.js +119 -0
  698. package/dist/ui-core/rendering/pager-chrome.js.map +1 -0
  699. package/dist/ui-core/rendering/pager-source.d.ts +20 -0
  700. package/dist/ui-core/rendering/pager-source.js +101 -0
  701. package/dist/ui-core/rendering/pager-source.js.map +1 -0
  702. package/dist/ui-core/rendering/pager-text.d.ts +24 -0
  703. package/dist/ui-core/rendering/pager-text.js +105 -0
  704. package/dist/ui-core/rendering/pager-text.js.map +1 -0
  705. package/dist/ui-core/rendering/pager-view-policy.js +98 -0
  706. package/dist/ui-core/rendering/pager-view-policy.js.map +1 -0
  707. package/dist/ui-core/rendering/picker-filter.js.map +1 -0
  708. package/dist/ui-core/rendering/plan-view.js.map +1 -0
  709. package/dist/ui-core/rendering/prompt-preview.js.map +1 -0
  710. package/dist/ui-core/rendering/render-markdown-lines.d.ts +7 -0
  711. package/dist/ui-core/rendering/render-markdown-lines.js +26 -0
  712. package/dist/ui-core/rendering/render-markdown-lines.js.map +1 -0
  713. package/dist/ui-core/rendering/sanitize-display.js.map +1 -0
  714. package/dist/ui-core/rendering/status-segments.d.ts +25 -0
  715. package/dist/ui-core/rendering/status-segments.js +88 -0
  716. package/dist/ui-core/rendering/status-segments.js.map +1 -0
  717. package/dist/ui-core/rendering/streaming-markdown.d.ts +23 -0
  718. package/dist/ui-core/rendering/streaming-markdown.js +118 -0
  719. package/dist/ui-core/rendering/streaming-markdown.js.map +1 -0
  720. package/dist/ui-core/rendering/strip-tool-surfaces.js.map +1 -0
  721. package/dist/ui-core/rendering/syntax-highlight.js.map +1 -0
  722. package/dist/ui-core/rendering/text-format.js.map +1 -0
  723. package/dist/ui-core/rendering/text-width.js.map +1 -0
  724. package/dist/ui-core/rendering/theme.js.map +1 -0
  725. package/dist/ui-core/rendering/thinking-tail.js.map +1 -0
  726. package/dist/ui-core/rendering/tool-presenter.d.ts +68 -0
  727. package/dist/ui-core/rendering/tool-presenter.js +371 -0
  728. package/dist/ui-core/rendering/tool-presenter.js.map +1 -0
  729. package/dist/ui-core/rendering/transcript-export.d.ts +11 -0
  730. package/dist/ui-core/rendering/transcript-export.js +18 -0
  731. package/dist/ui-core/rendering/transcript-export.js.map +1 -0
  732. package/dist/ui-core/rendering/transcript-semantic.js.map +1 -0
  733. package/dist/ui-core/rendering/user-message-wrap.d.ts +18 -0
  734. package/dist/ui-core/rendering/user-message-wrap.js +23 -0
  735. package/dist/ui-core/rendering/user-message-wrap.js.map +1 -0
  736. package/dist/ui-core/rendering/wordmark.js.map +1 -0
  737. package/dist/ui-core/state/pager-search.js.map +1 -0
  738. package/dist/ui-core/state/semantic-document.js.map +1 -0
  739. package/dist/ui-core/state/transcript-compaction.js.map +1 -0
  740. package/dist/ui-core/state/transcript-hydrate.d.ts +67 -0
  741. package/dist/ui-core/state/transcript-hydrate.js +665 -0
  742. package/dist/ui-core/state/transcript-hydrate.js.map +1 -0
  743. package/dist/ui-core/state/transcript-reducer.js +484 -0
  744. package/dist/ui-core/state/transcript-reducer.js.map +1 -0
  745. package/dist/ui-core/state/transcript-search.js.map +1 -0
  746. package/dist/ui-core/state/transcript-store.js.map +1 -0
  747. package/dist/ui-core/state/transcript-struct.js.map +1 -0
  748. package/dist/ui-core/state/transcript-types.d.ts +103 -0
  749. package/dist/ui-core/state/transcript-types.js.map +1 -0
  750. package/dist/version.generated.d.ts +2 -2
  751. package/dist/version.generated.js +2 -2
  752. package/dist/version.generated.js.map +1 -1
  753. package/package.json +17 -13
  754. package/dist/agent/classic-renderer.d.ts +0 -5
  755. package/dist/agent/classic-renderer.js +0 -136
  756. package/dist/agent/classic-renderer.js.map +0 -1
  757. package/dist/app/adapters/current-terminal-adapter.d.ts +0 -2
  758. package/dist/app/adapters/current-terminal-adapter.js +0 -24
  759. package/dist/app/adapters/current-terminal-adapter.js.map +0 -1
  760. package/dist/app/controllers/job-controller.d.ts +0 -28
  761. package/dist/app/controllers/job-controller.js +0 -70
  762. package/dist/app/controllers/job-controller.js.map +0 -1
  763. package/dist/repl/prompt-line.d.ts +0 -24
  764. package/dist/repl/prompt-line.js +0 -558
  765. package/dist/repl/prompt-line.js.map +0 -1
  766. package/dist/repl/slash-commands.js +0 -392
  767. package/dist/repl/slash-commands.js.map +0 -1
  768. package/dist/repl.d.ts +0 -18
  769. package/dist/repl.js +0 -1868
  770. package/dist/repl.js.map +0 -1
  771. package/dist/safety/path-permissions.d.ts +0 -14
  772. package/dist/safety/path-permissions.js +0 -43
  773. package/dist/safety/path-permissions.js.map +0 -1
  774. package/dist/tools/reducers/generic.d.ts +0 -14
  775. package/dist/tools/reducers/generic.js +0 -5
  776. package/dist/tools/reducers/generic.js.map +0 -1
  777. package/dist/tui/can-use-tui.js.map +0 -1
  778. package/dist/tui/format-keys.d.ts +0 -13
  779. package/dist/tui/format-keys.js +0 -78
  780. package/dist/tui/format-keys.js.map +0 -1
  781. package/dist/tui/input-history.js +0 -9
  782. package/dist/tui/input-history.js.map +0 -1
  783. package/dist/tui/runtime.js +0 -207
  784. package/dist/tui/runtime.js.map +0 -1
  785. package/dist/tui/state.d.ts +0 -124
  786. package/dist/tui/state.js +0 -496
  787. package/dist/tui/state.js.map +0 -1
  788. package/dist/tui/text-format.js.map +0 -1
  789. package/dist/tui-v2/actions/action-id.d.ts +0 -14
  790. package/dist/tui-v2/actions/action-id.js +0 -117
  791. package/dist/tui-v2/actions/action-id.js.map +0 -1
  792. package/dist/tui-v2/actions/action-router.js.map +0 -1
  793. package/dist/tui-v2/actions/chord-from-key.d.ts +0 -26
  794. package/dist/tui-v2/actions/chord-from-key.js +0 -47
  795. package/dist/tui-v2/actions/chord-from-key.js.map +0 -1
  796. package/dist/tui-v2/actions/format-shortcuts.js +0 -267
  797. package/dist/tui-v2/actions/format-shortcuts.js.map +0 -1
  798. package/dist/tui-v2/actions/keymap.d.ts +0 -24
  799. package/dist/tui-v2/actions/keymap.js +0 -151
  800. package/dist/tui-v2/actions/keymap.js.map +0 -1
  801. package/dist/tui-v2/app/command-handlers.js +0 -86
  802. package/dist/tui-v2/app/command-handlers.js.map +0 -1
  803. package/dist/tui-v2/app/commands/config-commands.d.ts +0 -14
  804. package/dist/tui-v2/app/commands/config-commands.js +0 -315
  805. package/dist/tui-v2/app/commands/config-commands.js.map +0 -1
  806. package/dist/tui-v2/app/commands/key-commands.d.ts +0 -9
  807. package/dist/tui-v2/app/commands/key-commands.js +0 -496
  808. package/dist/tui-v2/app/commands/key-commands.js.map +0 -1
  809. package/dist/tui-v2/app/commands/picker-commands.d.ts +0 -25
  810. package/dist/tui-v2/app/commands/picker-commands.js +0 -1006
  811. package/dist/tui-v2/app/commands/picker-commands.js.map +0 -1
  812. package/dist/tui-v2/app/commands/session-commands.d.ts +0 -19
  813. package/dist/tui-v2/app/commands/session-commands.js +0 -183
  814. package/dist/tui-v2/app/commands/session-commands.js.map +0 -1
  815. package/dist/tui-v2/app/mode-cycle.js.map +0 -1
  816. package/dist/tui-v2/app/plan-lifecycle.js.map +0 -1
  817. package/dist/tui-v2/app/providers.d.ts +0 -17
  818. package/dist/tui-v2/app/providers.js +0 -32
  819. package/dist/tui-v2/app/providers.js.map +0 -1
  820. package/dist/tui-v2/app/startup-update.js.map +0 -1
  821. package/dist/tui-v2/bootstrap/capabilities.js +0 -93
  822. package/dist/tui-v2/bootstrap/capabilities.js.map +0 -1
  823. package/dist/tui-v2/bootstrap/composition-root.d.ts +0 -92
  824. package/dist/tui-v2/bootstrap/composition-root.js.map +0 -1
  825. package/dist/tui-v2/bootstrap/console-guard.js.map +0 -1
  826. package/dist/tui-v2/bootstrap/console-suppress.js.map +0 -1
  827. package/dist/tui-v2/bootstrap/disable-native-selection.d.ts +0 -11
  828. package/dist/tui-v2/bootstrap/disable-native-selection.js +0 -13
  829. package/dist/tui-v2/bootstrap/disable-native-selection.js.map +0 -1
  830. package/dist/tui-v2/bootstrap/lifecycle.js.map +0 -1
  831. package/dist/tui-v2/bootstrap/osc52-clipboard.js +0 -44
  832. package/dist/tui-v2/bootstrap/osc52-clipboard.js.map +0 -1
  833. package/dist/tui-v2/bootstrap/overlay-ports.js +0 -114
  834. package/dist/tui-v2/bootstrap/overlay-ports.js.map +0 -1
  835. package/dist/tui-v2/bootstrap/ui-selection.d.ts +0 -30
  836. package/dist/tui-v2/bootstrap/ui-selection.js +0 -59
  837. package/dist/tui-v2/bootstrap/ui-selection.js.map +0 -1
  838. package/dist/tui-v2/composer/arrow-intent.js.map +0 -1
  839. package/dist/tui-v2/composer/completion.js.map +0 -1
  840. package/dist/tui-v2/composer/composer-action-port.js.map +0 -1
  841. package/dist/tui-v2/composer/composer-height.js +0 -29
  842. package/dist/tui-v2/composer/composer-height.js.map +0 -1
  843. package/dist/tui-v2/composer/composer-meta.d.ts +0 -9
  844. package/dist/tui-v2/composer/composer-meta.js +0 -38
  845. package/dist/tui-v2/composer/composer-meta.js.map +0 -1
  846. package/dist/tui-v2/composer/draft-actions.d.ts +0 -31
  847. package/dist/tui-v2/composer/draft-actions.js +0 -45
  848. package/dist/tui-v2/composer/draft-actions.js.map +0 -1
  849. package/dist/tui-v2/composer/history-nav.js.map +0 -1
  850. package/dist/tui-v2/composer/newline-hint.d.ts +0 -13
  851. package/dist/tui-v2/composer/newline-hint.js.map +0 -1
  852. package/dist/tui-v2/composer/paste-placeholder.js.map +0 -1
  853. package/dist/tui-v2/composer/prompt-history.js.map +0 -1
  854. package/dist/tui-v2/composer/secret-buffer.js.map +0 -1
  855. package/dist/tui-v2/controllers/focus-controller.js.map +0 -1
  856. package/dist/tui-v2/controllers/interruptible-controller.js.map +0 -1
  857. package/dist/tui-v2/controllers/overlay-controller.d.ts +0 -209
  858. package/dist/tui-v2/controllers/overlay-controller.js.map +0 -1
  859. package/dist/tui-v2/controllers/selection-controller.js.map +0 -1
  860. package/dist/tui-v2/controllers/toast-controller.js.map +0 -1
  861. package/dist/tui-v2/layout/compute-layout.js.map +0 -1
  862. package/dist/tui-v2/motion/ease.js.map +0 -1
  863. package/dist/tui-v2/notify.js.map +0 -1
  864. package/dist/tui-v2/rendering/artifact-pager-source.js.map +0 -1
  865. package/dist/tui-v2/rendering/batch-sections.js.map +0 -1
  866. package/dist/tui-v2/rendering/file-diff-view.js.map +0 -1
  867. package/dist/tui-v2/rendering/format-help.js.map +0 -1
  868. package/dist/tui-v2/rendering/incremental-strip.js.map +0 -1
  869. package/dist/tui-v2/rendering/job-tail-source.js.map +0 -1
  870. package/dist/tui-v2/rendering/link-detector.js.map +0 -1
  871. package/dist/tui-v2/rendering/open-tool-output.js +0 -346
  872. package/dist/tui-v2/rendering/open-tool-output.js.map +0 -1
  873. package/dist/tui-v2/rendering/pager-chrome.js +0 -119
  874. package/dist/tui-v2/rendering/pager-chrome.js.map +0 -1
  875. package/dist/tui-v2/rendering/pager-view-policy.js +0 -98
  876. package/dist/tui-v2/rendering/pager-view-policy.js.map +0 -1
  877. package/dist/tui-v2/rendering/picker-filter.js.map +0 -1
  878. package/dist/tui-v2/rendering/plan-view.js.map +0 -1
  879. package/dist/tui-v2/rendering/prompt-preview.js.map +0 -1
  880. package/dist/tui-v2/rendering/render-markdown-lines.d.ts +0 -29
  881. package/dist/tui-v2/rendering/render-markdown-lines.js +0 -46
  882. package/dist/tui-v2/rendering/render-markdown-lines.js.map +0 -1
  883. package/dist/tui-v2/rendering/sanitize-display.js.map +0 -1
  884. package/dist/tui-v2/rendering/streaming-markdown.d.ts +0 -25
  885. package/dist/tui-v2/rendering/streaming-markdown.js +0 -117
  886. package/dist/tui-v2/rendering/streaming-markdown.js.map +0 -1
  887. package/dist/tui-v2/rendering/strip-tool-surfaces.js.map +0 -1
  888. package/dist/tui-v2/rendering/syntax-highlight.js.map +0 -1
  889. package/dist/tui-v2/rendering/theme.js.map +0 -1
  890. package/dist/tui-v2/rendering/thinking-tail.js.map +0 -1
  891. package/dist/tui-v2/rendering/tool-presenter.d.ts +0 -63
  892. package/dist/tui-v2/rendering/tool-presenter.js +0 -376
  893. package/dist/tui-v2/rendering/tool-presenter.js.map +0 -1
  894. package/dist/tui-v2/rendering/transcript-export.d.ts +0 -11
  895. package/dist/tui-v2/rendering/transcript-export.js +0 -18
  896. package/dist/tui-v2/rendering/transcript-export.js.map +0 -1
  897. package/dist/tui-v2/rendering/transcript-semantic.js.map +0 -1
  898. package/dist/tui-v2/rendering/user-message-wrap.d.ts +0 -16
  899. package/dist/tui-v2/rendering/user-message-wrap.js +0 -21
  900. package/dist/tui-v2/rendering/user-message-wrap.js.map +0 -1
  901. package/dist/tui-v2/state/pager-search.js.map +0 -1
  902. package/dist/tui-v2/state/semantic-document.js.map +0 -1
  903. package/dist/tui-v2/state/transcript-compaction.js.map +0 -1
  904. package/dist/tui-v2/state/transcript-hydrate.d.ts +0 -67
  905. package/dist/tui-v2/state/transcript-hydrate.js +0 -648
  906. package/dist/tui-v2/state/transcript-hydrate.js.map +0 -1
  907. package/dist/tui-v2/state/transcript-reducer.js +0 -482
  908. package/dist/tui-v2/state/transcript-reducer.js.map +0 -1
  909. package/dist/tui-v2/state/transcript-search.js.map +0 -1
  910. package/dist/tui-v2/state/transcript-store.js.map +0 -1
  911. package/dist/tui-v2/state/transcript-struct.js.map +0 -1
  912. package/dist/tui-v2/state/transcript-types.d.ts +0 -101
  913. package/dist/tui-v2/state/transcript-types.js.map +0 -1
  914. package/dist/tui-v2/state/use-has-draft.js.map +0 -1
  915. package/dist/tui-v2/state/use-overlay.js.map +0 -1
  916. package/dist/tui-v2/state/use-plan.js.map +0 -1
  917. package/dist/tui-v2/state/use-session-state.js.map +0 -1
  918. package/dist/tui-v2/state/use-toast.js.map +0 -1
  919. package/dist/tui-v2/state/use-transcript-store.d.ts +0 -10
  920. package/dist/tui-v2/state/use-transcript-store.js.map +0 -1
  921. package/dist/ui/ansi-box.d.ts +0 -9
  922. package/dist/ui/ansi-box.js +0 -25
  923. package/dist/ui/ansi-box.js.map +0 -1
  924. package/dist/ui/banner.d.ts +0 -3
  925. package/dist/ui/banner.js +0 -13
  926. package/dist/ui/banner.js.map +0 -1
  927. package/dist/ui/code-block.d.ts +0 -48
  928. package/dist/ui/code-block.js +0 -407
  929. package/dist/ui/code-block.js.map +0 -1
  930. package/dist/ui/intro-card.d.ts +0 -11
  931. package/dist/ui/intro-card.js +0 -74
  932. package/dist/ui/intro-card.js.map +0 -1
  933. package/dist/ui/intro-header.d.ts +0 -24
  934. package/dist/ui/intro-header.js +0 -233
  935. package/dist/ui/intro-header.js.map +0 -1
  936. package/dist/ui/keys.d.ts +0 -23
  937. package/dist/ui/keys.js +0 -23
  938. package/dist/ui/keys.js.map +0 -1
  939. package/dist/ui/markdown.js.map +0 -1
  940. package/dist/ui/output-pane.d.ts +0 -59
  941. package/dist/ui/output-pane.js +0 -398
  942. package/dist/ui/output-pane.js.map +0 -1
  943. package/dist/ui/spinner.d.ts +0 -8
  944. package/dist/ui/spinner.js +0 -185
  945. package/dist/ui/spinner.js.map +0 -1
  946. package/dist/ui/task-pane.d.ts +0 -17
  947. package/dist/ui/task-pane.js +0 -80
  948. package/dist/ui/task-pane.js.map +0 -1
  949. package/dist/ui/text-width.js.map +0 -1
  950. package/dist/ui/wordmark.js.map +0 -1
  951. /package/dist/{repl/slash-commands.d.ts → app/commands/catalog.d.ts} +0 -0
  952. /package/dist/{tui/runtime.d.ts → os/bun-runtime.d.ts} +0 -0
  953. /package/dist/{tui-v2 → ui-core}/actions/action-router.d.ts +0 -0
  954. /package/dist/{tui-v2 → ui-core}/actions/action-router.js +0 -0
  955. /package/dist/{tui-v2 → ui-core}/actions/format-shortcuts.d.ts +0 -0
  956. /package/dist/{tui-v2/app → ui-core/actions}/mode-cycle.d.ts +0 -0
  957. /package/dist/{tui-v2/app → ui-core/actions}/mode-cycle.js +0 -0
  958. /package/dist/{tui → ui-core/bootstrap}/can-use-tui.d.ts +0 -0
  959. /package/dist/{tui → ui-core/bootstrap}/can-use-tui.js +0 -0
  960. /package/dist/{tui-v2 → ui-core}/bootstrap/capabilities.d.ts +0 -0
  961. /package/dist/{tui-v2 → ui-core}/bootstrap/composition-root.js +0 -0
  962. /package/dist/{tui-v2 → ui-core}/bootstrap/console-guard.d.ts +0 -0
  963. /package/dist/{tui-v2 → ui-core}/bootstrap/console-guard.js +0 -0
  964. /package/dist/{tui-v2 → ui-core}/bootstrap/console-suppress.d.ts +0 -0
  965. /package/dist/{tui-v2 → ui-core}/bootstrap/console-suppress.js +0 -0
  966. /package/dist/{tui-v2 → ui-core}/bootstrap/lifecycle.d.ts +0 -0
  967. /package/dist/{tui-v2 → ui-core}/bootstrap/lifecycle.js +0 -0
  968. /package/dist/{tui-v2 → ui-core}/bootstrap/overlay-ports.d.ts +0 -0
  969. /package/dist/{tui-v2/app → ui-core/commands}/command-handlers.d.ts +0 -0
  970. /package/dist/{tui-v2/app → ui-core/commands}/startup-update.d.ts +0 -0
  971. /package/dist/{tui-v2/app → ui-core/commands}/startup-update.js +0 -0
  972. /package/dist/{tui-v2 → ui-core}/composer/arrow-intent.d.ts +0 -0
  973. /package/dist/{tui-v2 → ui-core}/composer/arrow-intent.js +0 -0
  974. /package/dist/{tui-v2 → ui-core}/composer/completion.d.ts +0 -0
  975. /package/dist/{tui-v2 → ui-core}/composer/completion.js +0 -0
  976. /package/dist/{tui-v2 → ui-core}/composer/composer-action-port.d.ts +0 -0
  977. /package/dist/{tui-v2 → ui-core}/composer/composer-action-port.js +0 -0
  978. /package/dist/{tui-v2 → ui-core}/composer/composer-height.d.ts +0 -0
  979. /package/dist/{tui-v2 → ui-core}/composer/history-nav.d.ts +0 -0
  980. /package/dist/{tui-v2 → ui-core}/composer/history-nav.js +0 -0
  981. /package/dist/{tui → ui-core/composer}/input-history.d.ts +0 -0
  982. /package/dist/{tui-v2 → ui-core}/composer/newline-hint.js +0 -0
  983. /package/dist/{tui-v2 → ui-core}/composer/paste-placeholder.d.ts +0 -0
  984. /package/dist/{tui-v2 → ui-core}/composer/paste-placeholder.js +0 -0
  985. /package/dist/{tui-v2 → ui-core}/composer/prompt-history.d.ts +0 -0
  986. /package/dist/{tui-v2 → ui-core}/composer/prompt-history.js +0 -0
  987. /package/dist/{tui-v2 → ui-core}/composer/secret-buffer.d.ts +0 -0
  988. /package/dist/{tui-v2 → ui-core}/composer/secret-buffer.js +0 -0
  989. /package/dist/{tui-v2 → ui-core}/controllers/focus-controller.d.ts +0 -0
  990. /package/dist/{tui-v2 → ui-core}/controllers/focus-controller.js +0 -0
  991. /package/dist/{tui-v2 → ui-core}/controllers/interruptible-controller.d.ts +0 -0
  992. /package/dist/{tui-v2 → ui-core}/controllers/interruptible-controller.js +0 -0
  993. /package/dist/{tui-v2 → ui-core}/controllers/overlay-controller.js +0 -0
  994. /package/dist/{tui-v2 → ui-core}/controllers/selection-controller.d.ts +0 -0
  995. /package/dist/{tui-v2 → ui-core}/controllers/selection-controller.js +0 -0
  996. /package/dist/{tui-v2 → ui-core}/controllers/toast-controller.d.ts +0 -0
  997. /package/dist/{tui-v2 → ui-core}/controllers/toast-controller.js +0 -0
  998. /package/dist/{tui-v2 → ui-core}/layout/compute-layout.d.ts +0 -0
  999. /package/dist/{tui-v2 → ui-core}/layout/compute-layout.js +0 -0
  1000. /package/dist/{tui-v2 → ui-core}/motion/ease.d.ts +0 -0
  1001. /package/dist/{tui-v2 → ui-core}/motion/ease.js +0 -0
  1002. /package/dist/{tui-v2 → ui-core}/notify.d.ts +0 -0
  1003. /package/dist/{tui-v2 → ui-core}/notify.js +0 -0
  1004. /package/dist/{tui-v2/app → ui-core/plan}/plan-lifecycle.d.ts +0 -0
  1005. /package/dist/{tui-v2/app → ui-core/plan}/plan-lifecycle.js +0 -0
  1006. /package/dist/{tui-v2/bootstrap/osc52-clipboard.d.ts → ui-core/ports/clipboard-osc52.d.ts} +0 -0
  1007. /package/dist/{tui-v2/state → ui-core/react}/use-has-draft.d.ts +0 -0
  1008. /package/dist/{tui-v2/state → ui-core/react}/use-has-draft.js +0 -0
  1009. /package/dist/{tui-v2/state → ui-core/react}/use-overlay.d.ts +0 -0
  1010. /package/dist/{tui-v2/state → ui-core/react}/use-overlay.js +0 -0
  1011. /package/dist/{tui-v2/state → ui-core/react}/use-plan.d.ts +0 -0
  1012. /package/dist/{tui-v2/state → ui-core/react}/use-plan.js +0 -0
  1013. /package/dist/{tui-v2/state → ui-core/react}/use-session-state.d.ts +0 -0
  1014. /package/dist/{tui-v2/state → ui-core/react}/use-session-state.js +0 -0
  1015. /package/dist/{tui-v2/state → ui-core/react}/use-toast.d.ts +0 -0
  1016. /package/dist/{tui-v2/state → ui-core/react}/use-toast.js +0 -0
  1017. /package/dist/{tui-v2/state → ui-core/react}/use-transcript-store.js +0 -0
  1018. /package/dist/{tui-v2 → ui-core}/rendering/artifact-pager-source.d.ts +0 -0
  1019. /package/dist/{tui-v2 → ui-core}/rendering/artifact-pager-source.js +0 -0
  1020. /package/dist/{tui-v2 → ui-core}/rendering/batch-sections.d.ts +0 -0
  1021. /package/dist/{tui-v2 → ui-core}/rendering/batch-sections.js +0 -0
  1022. /package/dist/{tui-v2 → ui-core}/rendering/file-diff-view.d.ts +0 -0
  1023. /package/dist/{tui-v2 → ui-core}/rendering/file-diff-view.js +0 -0
  1024. /package/dist/{tui-v2 → ui-core}/rendering/format-help.d.ts +0 -0
  1025. /package/dist/{tui-v2 → ui-core}/rendering/format-help.js +0 -0
  1026. /package/dist/{tui-v2 → ui-core}/rendering/incremental-strip.d.ts +0 -0
  1027. /package/dist/{tui-v2 → ui-core}/rendering/incremental-strip.js +0 -0
  1028. /package/dist/{tui-v2 → ui-core}/rendering/job-tail-source.d.ts +0 -0
  1029. /package/dist/{tui-v2 → ui-core}/rendering/job-tail-source.js +0 -0
  1030. /package/dist/{tui-v2 → ui-core}/rendering/link-detector.d.ts +0 -0
  1031. /package/dist/{tui-v2 → ui-core}/rendering/link-detector.js +0 -0
  1032. /package/dist/{ui → ui-core/rendering}/markdown.d.ts +0 -0
  1033. /package/dist/{ui → ui-core/rendering}/markdown.js +0 -0
  1034. /package/dist/{tui-v2 → ui-core}/rendering/open-tool-output.d.ts +0 -0
  1035. /package/dist/{tui-v2 → ui-core}/rendering/pager-chrome.d.ts +0 -0
  1036. /package/dist/{tui-v2 → ui-core}/rendering/pager-view-policy.d.ts +0 -0
  1037. /package/dist/{tui-v2 → ui-core}/rendering/picker-filter.d.ts +0 -0
  1038. /package/dist/{tui-v2 → ui-core}/rendering/picker-filter.js +0 -0
  1039. /package/dist/{tui-v2 → ui-core}/rendering/plan-view.d.ts +0 -0
  1040. /package/dist/{tui-v2 → ui-core}/rendering/plan-view.js +0 -0
  1041. /package/dist/{tui-v2 → ui-core}/rendering/prompt-preview.d.ts +0 -0
  1042. /package/dist/{tui-v2 → ui-core}/rendering/prompt-preview.js +0 -0
  1043. /package/dist/{tui-v2 → ui-core}/rendering/sanitize-display.d.ts +0 -0
  1044. /package/dist/{tui-v2 → ui-core}/rendering/sanitize-display.js +0 -0
  1045. /package/dist/{tui-v2 → ui-core}/rendering/strip-tool-surfaces.d.ts +0 -0
  1046. /package/dist/{tui-v2 → ui-core}/rendering/strip-tool-surfaces.js +0 -0
  1047. /package/dist/{tui-v2 → ui-core}/rendering/syntax-highlight.d.ts +0 -0
  1048. /package/dist/{tui-v2 → ui-core}/rendering/syntax-highlight.js +0 -0
  1049. /package/dist/{tui → ui-core/rendering}/text-format.d.ts +0 -0
  1050. /package/dist/{tui → ui-core/rendering}/text-format.js +0 -0
  1051. /package/dist/{ui → ui-core/rendering}/text-width.d.ts +0 -0
  1052. /package/dist/{ui → ui-core/rendering}/text-width.js +0 -0
  1053. /package/dist/{tui-v2 → ui-core}/rendering/theme.d.ts +0 -0
  1054. /package/dist/{tui-v2 → ui-core}/rendering/theme.js +0 -0
  1055. /package/dist/{tui-v2 → ui-core}/rendering/thinking-tail.d.ts +0 -0
  1056. /package/dist/{tui-v2 → ui-core}/rendering/thinking-tail.js +0 -0
  1057. /package/dist/{tui-v2 → ui-core}/rendering/transcript-semantic.d.ts +0 -0
  1058. /package/dist/{tui-v2 → ui-core}/rendering/transcript-semantic.js +0 -0
  1059. /package/dist/{ui → ui-core/rendering}/wordmark.d.ts +0 -0
  1060. /package/dist/{ui → ui-core/rendering}/wordmark.js +0 -0
  1061. /package/dist/{tui-v2 → ui-core}/state/pager-search.d.ts +0 -0
  1062. /package/dist/{tui-v2 → ui-core}/state/pager-search.js +0 -0
  1063. /package/dist/{tui-v2 → ui-core}/state/semantic-document.d.ts +0 -0
  1064. /package/dist/{tui-v2 → ui-core}/state/semantic-document.js +0 -0
  1065. /package/dist/{tui-v2 → ui-core}/state/transcript-compaction.d.ts +0 -0
  1066. /package/dist/{tui-v2 → ui-core}/state/transcript-compaction.js +0 -0
  1067. /package/dist/{tui-v2 → ui-core}/state/transcript-reducer.d.ts +0 -0
  1068. /package/dist/{tui-v2 → ui-core}/state/transcript-search.d.ts +0 -0
  1069. /package/dist/{tui-v2 → ui-core}/state/transcript-search.js +0 -0
  1070. /package/dist/{tui-v2 → ui-core}/state/transcript-store.d.ts +0 -0
  1071. /package/dist/{tui-v2 → ui-core}/state/transcript-store.js +0 -0
  1072. /package/dist/{tui-v2 → ui-core}/state/transcript-struct.d.ts +0 -0
  1073. /package/dist/{tui-v2 → ui-core}/state/transcript-struct.js +0 -0
  1074. /package/dist/{tui-v2 → ui-core}/state/transcript-types.js +0 -0
package/dist/repl.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"repl.js","sourceRoot":"","sources":["../src/repl.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- export interface PathGrant {
2
- path: string;
3
- mode: "read" | "write" | "readwrite";
4
- recursive: boolean;
5
- createdAt: string;
6
- }
7
- /**
8
- * Check if a resolved absolute path is covered by any existing grant.
9
- */
10
- export declare function hasPathGrant(grants: PathGrant[], targetPath: string, mode: "read" | "write"): boolean;
11
- /**
12
- * Add a new path grant to the grants array (mutates in place).
13
- */
14
- export declare function addPathGrant(grants: PathGrant[], path: string, mode: "read" | "write" | "readwrite", recursive: boolean): void;
@@ -1,43 +0,0 @@
1
- import { resolve, relative } from "node:path";
2
- /**
3
- * Check if a resolved absolute path is covered by any existing grant.
4
- */
5
- export function hasPathGrant(grants, targetPath, mode) {
6
- const resolved = resolve(targetPath);
7
- for (const grant of grants) {
8
- // Check mode compatibility
9
- if (mode === "write" && grant.mode === "read")
10
- continue;
11
- if (mode === "read" && grant.mode === "write")
12
- continue;
13
- const grantPath = resolve(grant.path);
14
- // Exact match
15
- if (resolved === grantPath)
16
- return true;
17
- // Recursive: check if target is under grant path
18
- if (grant.recursive) {
19
- const rel = relative(grantPath, resolved);
20
- if (rel === "" || (!rel.startsWith("..") && !resolve(rel).startsWith(".."))) {
21
- return true;
22
- }
23
- }
24
- }
25
- return false;
26
- }
27
- /**
28
- * Add a new path grant to the grants array (mutates in place).
29
- */
30
- export function addPathGrant(grants, path, mode, recursive) {
31
- const resolved = resolve(path);
32
- // Don't add duplicates
33
- const exists = grants.some((g) => resolve(g.path) === resolved && g.mode === mode && g.recursive === recursive);
34
- if (!exists) {
35
- grants.push({
36
- path: resolved,
37
- mode,
38
- recursive,
39
- createdAt: new Date().toISOString(),
40
- });
41
- }
42
- }
43
- //# sourceMappingURL=path-permissions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"path-permissions.js","sourceRoot":"","sources":["../../src/safety/path-permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAS9C;;GAEG;AACH,MAAM,UAAU,YAAY,CAC1B,MAAmB,EACnB,UAAkB,EAClB,IAAsB;IAEtB,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAErC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,2BAA2B;QAC3B,IAAI,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM;YAAE,SAAS;QACxD,IAAI,IAAI,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;YAAE,SAAS;QAExD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEtC,cAAc;QACd,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QAExC,iDAAiD;QACjD,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAC1C,IAAI,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;gBAC5E,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAC1B,MAAmB,EACnB,IAAY,EACZ,IAAoC,EACpC,SAAkB;IAElB,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,uBAAuB;IACvB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CACxB,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,CACpF,CAAC;IACF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,QAAQ;YACd,IAAI;YACJ,SAAS;YACT,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -1,14 +0,0 @@
1
- /**
2
- * @deprecated Removed. Keyword-ranking "generic" reduction made models invent
3
- * empty/interrupted tool results (lines without CVE/port keywords were dropped).
4
- *
5
- * Noise control is now:
6
- * 1. Filter at the **command** (quiet flags, matchers, -mc/-fc for fuzzers).
7
- * 2. Long jobs → durable background artifacts + shell.tail.
8
- * 3. Model context → honest head+tail + full path on disk.
9
- *
10
- * This module remains only so old imports fail loudly in tests if revived.
11
- */
12
- import type { Reducer } from "./types.js";
13
- /** Identity only — never rank or omit by keyword. Prefer not calling this. */
14
- export declare const genericReducer: Reducer;
@@ -1,5 +0,0 @@
1
- /** Identity only — never rank or omit by keyword. Prefer not calling this. */
2
- export const genericReducer = (raw) => ({
3
- summary: raw,
4
- });
5
- //# sourceMappingURL=generic.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generic.js","sourceRoot":"","sources":["../../../src/tools/reducers/generic.ts"],"names":[],"mappings":"AAaA,8EAA8E;AAC9E,MAAM,CAAC,MAAM,cAAc,GAAY,CAAC,GAAG,EAAiB,EAAE,CAAC,CAAC;IAC9D,OAAO,EAAE,GAAG;CACb,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"can-use-tui.js","sourceRoot":"","sources":["../../src/tui/can-use-tui.ts"],"names":[],"mappings":"AAYA,MAAM,CAAC,MAAM,QAAQ,GAAG,EAAE,CAAC;AAC3B,MAAM,CAAC,MAAM,QAAQ,GAAG,EAAE,CAAC;AAE3B;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;QACxC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAC5C,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC;IAC9B,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC;IAC3B,IAAI,IAAI,GAAG,QAAQ,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;QACvC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,uBAAuB,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;IACvE,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,uEAAuE;IACvE,4EAA4E;IAC5E,kDAAkD;IAClD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,qCAAqC,EAAE,CAAC;IACtE,CAAC;IACD,OAAO,WAAW,CAAC;QACjB,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK;QACjC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK;QAC/B,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO;QAC/B,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI;KAC1B,CAAC,CAAC;AACL,CAAC"}
@@ -1,13 +0,0 @@
1
- import type { ProviderStatus } from "../types.js";
2
- export interface SearchKeyStatus {
3
- provider: string;
4
- active: boolean;
5
- configured: boolean;
6
- source: string;
7
- maskedKey?: string | undefined;
8
- keyCount?: number | undefined;
9
- maskedKeys?: readonly string[] | undefined;
10
- activeMaskedKey?: string | undefined;
11
- }
12
- /** Render credential metadata without ever including an unmasked secret. */
13
- export declare function formatKeyStatus(llm: ProviderStatus[], search: SearchKeyStatus[]): string;
@@ -1,78 +0,0 @@
1
- /** Render credential metadata without ever including an unmasked secret. */
2
- export function formatKeyStatus(llm, search) {
3
- const header = " PROVIDER SOURCE KEYS MODEL";
4
- const llmRows = [];
5
- for (const s of llm) {
6
- const mark = s.configured ? "✓" : "✗";
7
- const tag = s.active ? " ◀" : "";
8
- const count = s.keyCount ?? (s.maskedKey ? 1 : 0);
9
- const keySummary = s.provider === "ollama"
10
- ? s.note
11
- ? s.note
12
- : "local"
13
- : s.provider === "free"
14
- ? s.note
15
- ? s.note
16
- : "keyless"
17
- : count === 0
18
- ? "—"
19
- : count === 1
20
- ? s.maskedKey || "••••••••"
21
- : `${count} keys`;
22
- const source = (s.source === "missing" ? "no key" : s.source).padEnd(9);
23
- llmRows.push(` ${mark} ${s.provider.padEnd(13)} ${source} ${String(keySummary).padEnd(13)} ${s.model}${tag}`);
24
- // Endpoint providers need a base URL alongside the key, so a key on its own
25
- // is not enough to make a request — show where it points.
26
- if (s.provider !== "ollama" && s.provider !== "free" && s.note) {
27
- llmRows.push(` endpoint: ${s.note}`);
28
- }
29
- if (s.endpoints && s.endpoints.length > 1) {
30
- s.endpoints.forEach((url, i) => {
31
- llmRows.push(` (${i + 1}) ${url}${i === (s.activeEndpointIndex ?? 0) ? " ★ active" : ""}`);
32
- });
33
- }
34
- if (s.maskedKeys && s.maskedKeys.length > 1) {
35
- let activeIdx = 0;
36
- if (s.activeMaskedKey) {
37
- const found = s.maskedKeys.indexOf(s.activeMaskedKey);
38
- if (found >= 0)
39
- activeIdx = found;
40
- }
41
- s.maskedKeys.forEach((masked, i) => {
42
- llmRows.push(` [${i + 1}] ${masked}${i === activeIdx ? " ★ active" : ""}`);
43
- });
44
- }
45
- }
46
- const searchRows = [];
47
- for (const s of search) {
48
- const mark = s.configured ? "✓" : "✗";
49
- const tag = s.active ? " ◀" : "";
50
- const count = s.keyCount ?? (s.maskedKey ? 1 : 0);
51
- const keySummary = count === 0 ? "—" : count === 1 ? s.maskedKey || "••••••••" : `${count} keys`;
52
- searchRows.push(` ${mark} ${s.provider.padEnd(13)} ${(s.source === "missing" ? "no key" : s.source).padEnd(9)} ${keySummary}${tag}`);
53
- if (s.maskedKeys && s.maskedKeys.length > 1) {
54
- let activeIdx = 0;
55
- if (s.activeMaskedKey) {
56
- const found = s.maskedKeys.indexOf(s.activeMaskedKey);
57
- if (found >= 0)
58
- activeIdx = found;
59
- }
60
- s.maskedKeys.forEach((masked, index) => {
61
- searchRows.push(` [${index + 1}] ${masked}${index === activeIdx ? " ★ active" : ""}`);
62
- });
63
- }
64
- }
65
- return [
66
- "LLM PROVIDERS",
67
- header,
68
- ...llmRows,
69
- "",
70
- "SEARCH PROVIDERS",
71
- " PROVIDER SOURCE KEYS",
72
- ...searchRows,
73
- "",
74
- "◀ = active provider · ★ = sticky key used first on the next request",
75
- "Use /set to manage multi-keys · /unset clears all keys for a provider.",
76
- ].join("\n");
77
- }
78
- //# sourceMappingURL=format-keys.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"format-keys.js","sourceRoot":"","sources":["../../src/tui/format-keys.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import { isKnownSlashCommand } from "../repl.js";
2
- /** Composer history is for user prompts, not TUI control commands. */
3
- export function shouldStoreInPromptHistory(text) {
4
- const trimmed = text.trim();
5
- if (!trimmed)
6
- return false;
7
- return !(trimmed.startsWith("/") && isKnownSlashCommand(trimmed));
8
- }
9
- //# sourceMappingURL=input-history.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input-history.js","sourceRoot":"","sources":["../../src/tui/input-history.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,sEAAsE;AACtE,MAAM,UAAU,0BAA0B,CAAC,IAAY;IACrD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IAC3B,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;AACpE,CAAC"}
@@ -1,207 +0,0 @@
1
- /**
2
- * OpenTUI requires Bun's native FFI. Node/tsx cannot initialize the renderer.
3
- * Prefer re-exec under Bun when available; otherwise fall back with a clear hint.
4
- */
5
- import { spawnSync } from "node:child_process";
6
- import { accessSync, chmodSync, constants, existsSync, mkdirSync } from "node:fs";
7
- import { delimiter, join } from "node:path";
8
- import { homedir } from "node:os";
9
- export function isBunRuntime() {
10
- return typeof globalThis.Bun !== "undefined";
11
- }
12
- /** Resolve `bun` on PATH or local clai/bun bin dirs (cross-platform). */
13
- export function findBunExecutable() {
14
- const binName = process.platform === "win32" ? "bun.exe" : "bun";
15
- const fromEnv = process.env.BUN_INSTALL
16
- ? join(process.env.BUN_INSTALL, "bin", binName)
17
- : undefined;
18
- const claiBin = join(homedir(), ".clai", "bin", binName);
19
- const bunHomeBin = join(homedir(), ".bun", "bin", binName);
20
- // Windows-specific: Bun's official installer puts bun.exe in LOCALAPPDATA\bun
21
- // or APPDATA\bun\bin depending on the installer variant.
22
- const localAppData = process.env.LOCALAPPDATA
23
- ? join(process.env.LOCALAPPDATA, "bun", binName)
24
- : undefined;
25
- const appData = process.env.APPDATA
26
- ? join(process.env.APPDATA, "bun", "bin", binName)
27
- : undefined;
28
- const candidates = [
29
- fromEnv,
30
- claiBin,
31
- bunHomeBin,
32
- localAppData,
33
- appData,
34
- ...(process.env.PATH ?? "")
35
- .split(delimiter)
36
- .filter(Boolean)
37
- .map((dir) => join(dir, binName)),
38
- ].filter((p) => Boolean(p));
39
- const checkMode = process.platform === "win32" ? constants.F_OK : constants.X_OK;
40
- for (const path of candidates) {
41
- try {
42
- accessSync(path, checkMode);
43
- return path;
44
- }
45
- catch {
46
- // try next
47
- }
48
- }
49
- return undefined;
50
- }
51
- /**
52
- * Verify a Bun binary works by running `bun --version`.
53
- * Returns the version string on success, undefined on failure.
54
- */
55
- function verifyBun(bunPath) {
56
- try {
57
- const result = spawnSync(bunPath, ["--version"], {
58
- encoding: "utf8",
59
- timeout: 15000,
60
- windowsHide: true,
61
- });
62
- if (result.status === 0 && result.stdout) {
63
- return result.stdout.trim();
64
- }
65
- }
66
- catch {
67
- // verification failed
68
- }
69
- return undefined;
70
- }
71
- /** Automatically install Bun into ~/.clai/bin if missing (cross-platform). */
72
- export function autoInstallBun() {
73
- if (process.env.CLAI_NO_BUN_AUTO_INSTALL === "1")
74
- return undefined;
75
- const targetDir = join(homedir(), ".clai");
76
- const binName = process.platform === "win32" ? "bun.exe" : "bun";
77
- const targetBin = join(targetDir, "bin", binName);
78
- mkdirSync(join(targetDir, "bin"), { recursive: true });
79
- const env = {
80
- ...process.env,
81
- BUN_INSTALL: targetDir,
82
- };
83
- console.log(" [clai] Installing Bun runtime for full-screen UI...");
84
- let installed = false;
85
- try {
86
- if (process.platform === "win32") {
87
- // Try PowerShell first (official Bun installer)
88
- const psResult = spawnSync("powershell", [
89
- "-NoProfile",
90
- "-ExecutionPolicy",
91
- "Bypass",
92
- "-Command",
93
- "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; irm https://bun.sh/install.ps1 | iex",
94
- ], { env, stdio: "inherit", windowsHide: true, timeout: 120000 });
95
- if (psResult.status !== 0 && psResult.status !== null) {
96
- // PowerShell failed — try npm as fallback
97
- console.log(" [clai] PowerShell install failed, trying npm...");
98
- const npmCmd = process.platform === "win32" ? "npm.cmd" : "npm";
99
- spawnSync(npmCmd, ["install", "-g", "bun"], {
100
- stdio: "inherit",
101
- timeout: 120000,
102
- windowsHide: true,
103
- });
104
- }
105
- }
106
- else {
107
- const res = spawnSync("sh", ["-c", "curl -fsSL https://bun.sh/install | bash"], { env, stdio: "inherit", timeout: 120000 });
108
- if (res.status !== 0) {
109
- spawnSync("sh", ["-c", "wget -qO- https://bun.sh/install | bash"], { env, stdio: "inherit", timeout: 120000 });
110
- }
111
- }
112
- // Check the target location first, then fall back to findBunExecutable
113
- const bunPath = existsSync(targetBin) ? targetBin : findBunExecutable();
114
- if (bunPath) {
115
- if (process.platform !== "win32" && bunPath === targetBin) {
116
- try {
117
- chmodSync(targetBin, 0o755);
118
- }
119
- catch {
120
- // ignore
121
- }
122
- }
123
- // Verify the binary actually works
124
- const version = verifyBun(bunPath);
125
- if (version) {
126
- console.log(` [clai] ✓ Bun ${version} installed successfully`);
127
- installed = true;
128
- return bunPath;
129
- }
130
- // Binary exists but doesn't run correctly
131
- console.log(" [clai] ⚠ Bun binary found but could not verify. Trying anyway...");
132
- installed = true;
133
- return bunPath;
134
- }
135
- }
136
- catch (err) {
137
- const msg = err instanceof Error ? err.message : String(err);
138
- console.log(` [clai] ⚠ Bun auto-install error: ${msg}`);
139
- }
140
- if (!installed) {
141
- console.log(" [clai] ⚠ Bun auto-install could not complete. Using classic REPL instead.");
142
- console.log(" [clai] Manual install: https://bun.sh");
143
- }
144
- return findBunExecutable();
145
- }
146
- export function openTuiRuntimeHint() {
147
- return [
148
- "OpenTUI needs the Bun runtime to render the full-screen UI.",
149
- "clai will try to install Bun automatically on the next launch.",
150
- " • Manual install: https://bun.sh",
151
- " • Skip the TUI: clai --classic (uses the line-based REPL instead)",
152
- ].join("\n");
153
- }
154
- /**
155
- * If we are not already under Bun, re-launch this process with Bun using the
156
- * given entry module (usually `import.meta.url` of index.ts) + original CLI
157
- * args, then exit with the child status. Returns false when re-exec is not
158
- * possible (caller should fall back / print the hint).
159
- *
160
- * Pass `entryPath` explicitly — under `tsx`/`npx`, `process.argv[1]` is the
161
- * loader, not clai's entry.
162
- */
163
- export function reexecWithBunIfNeeded(entryPath) {
164
- if (isBunRuntime())
165
- return false;
166
- if (process.env.CLAI_NO_BUN_REEXEC === "1")
167
- return false;
168
- if (process.env.CLAI_FORCE_NODE === "1")
169
- return false;
170
- let bun = findBunExecutable();
171
- if (!bun) {
172
- bun = autoInstallBun();
173
- }
174
- if (!bun)
175
- return false;
176
- if (!entryPath)
177
- return false;
178
- // Keep user flags (after the entry). Drop node/tsx/bun loader path noise.
179
- // process.argv: [node, loader?, entry?, ...flags] — simplest reliable form
180
- // is to re-run only the entry + flags that look like CLI options/args.
181
- const userArgs = process.argv.slice(2).filter((a) => {
182
- // Drop accidental duplicate of the entry path if present.
183
- if (a === entryPath)
184
- return false;
185
- if (a.endsWith("src/index.ts") || a.endsWith("dist/index.js"))
186
- return false;
187
- return true;
188
- });
189
- const result = spawnSync(bun, [entryPath, ...userArgs], {
190
- stdio: "inherit",
191
- env: {
192
- ...process.env,
193
- CLAI_NO_BUN_REEXEC: "1",
194
- CLAI_BUN_REEXEC: "1",
195
- },
196
- windowsHide: true,
197
- });
198
- if (result.error)
199
- return false;
200
- process.exit(result.status ?? 1);
201
- return true;
202
- }
203
- export function isOpenTuiFfiError(error) {
204
- const msg = error instanceof Error ? error.message : String(error);
205
- return /OpenTUI native FFI|native FFI is not available|Bun-only|@opentui\/core|Failed to initialize OpenTUI/i.test(msg);
206
- }
207
- //# sourceMappingURL=runtime.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/tui/runtime.ts"],"names":[],"mappings":"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"}