@dexto/tui 1.14.6 → 1.15.0-beta.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 (570) hide show
  1. package/dist/InkCLIRefactored.cjs +30 -24
  2. package/dist/InkCLIRefactored.d.ts.map +1 -1
  3. package/dist/InkCLIRefactored.js +30 -24
  4. package/dist/components/ApprovalPrompt.cjs +128 -40
  5. package/dist/components/ApprovalPrompt.d.ts +2 -0
  6. package/dist/components/ApprovalPrompt.d.ts.map +1 -1
  7. package/dist/components/ApprovalPrompt.js +128 -41
  8. package/dist/components/CustomInput.cjs +4 -3
  9. package/dist/components/CustomInput.d.ts.map +1 -1
  10. package/dist/components/CustomInput.js +4 -3
  11. package/dist/components/DeckArea.cjs +43 -0
  12. package/dist/components/DeckArea.d.ts +14 -0
  13. package/dist/components/DeckArea.d.ts.map +1 -0
  14. package/dist/components/DeckArea.js +19 -0
  15. package/dist/components/EditableMultiLineInput.cjs +9 -8
  16. package/dist/components/EditableMultiLineInput.d.ts.map +1 -1
  17. package/dist/components/EditableMultiLineInput.js +9 -8
  18. package/dist/components/ElicitationForm.cjs +78 -18
  19. package/dist/components/ElicitationForm.d.ts.map +1 -1
  20. package/dist/components/ElicitationForm.js +78 -18
  21. package/dist/components/ErrorBoundary.cjs +15 -5
  22. package/dist/components/ErrorBoundary.d.ts.map +1 -1
  23. package/dist/components/ErrorBoundary.js +15 -5
  24. package/dist/components/Footer.cjs +41 -86
  25. package/dist/components/Footer.d.ts +2 -2
  26. package/dist/components/Footer.d.ts.map +1 -1
  27. package/dist/components/Footer.js +44 -92
  28. package/dist/components/Footer.test.cjs +44 -0
  29. package/dist/components/Footer.test.js +44 -0
  30. package/dist/components/HistorySearchBar.cjs +6 -5
  31. package/dist/components/HistorySearchBar.d.ts.map +1 -1
  32. package/dist/components/HistorySearchBar.js +6 -5
  33. package/dist/components/MultiLineInput.cjs +6 -5
  34. package/dist/components/MultiLineInput.d.ts.map +1 -1
  35. package/dist/components/MultiLineInput.js +6 -5
  36. package/dist/components/ResourceAutocomplete.cjs +5 -4
  37. package/dist/components/ResourceAutocomplete.d.ts.map +1 -1
  38. package/dist/components/ResourceAutocomplete.js +5 -4
  39. package/dist/components/SignalGates.test.cjs +215 -0
  40. package/dist/components/SignalGates.test.d.ts +2 -0
  41. package/dist/components/SignalGates.test.d.ts.map +1 -0
  42. package/dist/components/SignalGates.test.js +217 -0
  43. package/dist/components/SlashCommandAutocomplete.cjs +4 -3
  44. package/dist/components/SlashCommandAutocomplete.d.ts.map +1 -1
  45. package/dist/components/SlashCommandAutocomplete.js +4 -3
  46. package/dist/components/StatusBar.cjs +13 -30
  47. package/dist/components/StatusBar.d.ts +1 -3
  48. package/dist/components/StatusBar.d.ts.map +1 -1
  49. package/dist/components/StatusBar.js +13 -30
  50. package/dist/components/TextBufferInput.cjs +13 -12
  51. package/dist/components/TextBufferInput.d.ts.map +1 -1
  52. package/dist/components/TextBufferInput.js +13 -12
  53. package/dist/components/TodoPanel.cjs +23 -16
  54. package/dist/components/TodoPanel.d.ts.map +1 -1
  55. package/dist/components/TodoPanel.js +23 -16
  56. package/dist/components/base/BaseAutocomplete.cjs +7 -6
  57. package/dist/components/base/BaseAutocomplete.d.ts.map +1 -1
  58. package/dist/components/base/BaseAutocomplete.js +7 -6
  59. package/dist/components/base/BaseSelector.cjs +5 -4
  60. package/dist/components/base/BaseSelector.d.ts.map +1 -1
  61. package/dist/components/base/BaseSelector.js +5 -4
  62. package/dist/components/chat/Footer.cjs +2 -1
  63. package/dist/components/chat/Footer.d.ts.map +1 -1
  64. package/dist/components/chat/Footer.js +2 -1
  65. package/dist/components/chat/Header.cjs +20 -16
  66. package/dist/components/chat/Header.d.ts.map +1 -1
  67. package/dist/components/chat/Header.js +20 -16
  68. package/dist/components/chat/MessageItem.cjs +47 -30
  69. package/dist/components/chat/MessageItem.d.ts.map +1 -1
  70. package/dist/components/chat/MessageItem.js +52 -29
  71. package/dist/components/chat/MessageList.cjs +3 -2
  72. package/dist/components/chat/MessageList.d.ts.map +1 -1
  73. package/dist/components/chat/MessageList.js +3 -2
  74. package/dist/components/chat/QueuedMessagesDisplay.cjs +17 -5
  75. package/dist/components/chat/QueuedMessagesDisplay.d.ts.map +1 -1
  76. package/dist/components/chat/QueuedMessagesDisplay.js +18 -6
  77. package/dist/components/chat/SignalMessage.cjs +116 -0
  78. package/dist/components/chat/SignalMessage.d.ts +18 -0
  79. package/dist/components/chat/SignalMessage.d.ts.map +1 -0
  80. package/dist/components/chat/SignalMessage.js +96 -0
  81. package/dist/components/chat/SignalMessage.test.cjs +112 -0
  82. package/dist/components/chat/SignalMessage.test.d.ts +2 -0
  83. package/dist/components/chat/SignalMessage.test.d.ts.map +1 -0
  84. package/dist/components/chat/SignalMessage.test.js +116 -0
  85. package/dist/components/chat/ToolIcon.cjs +6 -5
  86. package/dist/components/chat/ToolIcon.d.ts.map +1 -1
  87. package/dist/components/chat/ToolIcon.js +6 -5
  88. package/dist/components/chat/styled-boxes/ConfigBox.cjs +8 -7
  89. package/dist/components/chat/styled-boxes/ConfigBox.d.ts.map +1 -1
  90. package/dist/components/chat/styled-boxes/ConfigBox.js +8 -7
  91. package/dist/components/chat/styled-boxes/HelpBox.cjs +4 -3
  92. package/dist/components/chat/styled-boxes/HelpBox.d.ts.map +1 -1
  93. package/dist/components/chat/styled-boxes/HelpBox.js +4 -3
  94. package/dist/components/chat/styled-boxes/LogConfigBox.cjs +11 -3
  95. package/dist/components/chat/styled-boxes/LogConfigBox.d.ts.map +1 -1
  96. package/dist/components/chat/styled-boxes/LogConfigBox.js +11 -3
  97. package/dist/components/chat/styled-boxes/SessionHistoryBox.cjs +8 -7
  98. package/dist/components/chat/styled-boxes/SessionHistoryBox.d.ts.map +1 -1
  99. package/dist/components/chat/styled-boxes/SessionHistoryBox.js +8 -7
  100. package/dist/components/chat/styled-boxes/SessionListBox.cjs +19 -11
  101. package/dist/components/chat/styled-boxes/SessionListBox.d.ts.map +1 -1
  102. package/dist/components/chat/styled-boxes/SessionListBox.js +19 -11
  103. package/dist/components/chat/styled-boxes/ShortcutsBox.cjs +4 -3
  104. package/dist/components/chat/styled-boxes/ShortcutsBox.d.ts.map +1 -1
  105. package/dist/components/chat/styled-boxes/ShortcutsBox.js +4 -3
  106. package/dist/components/chat/styled-boxes/StatsBox.cjs +13 -5
  107. package/dist/components/chat/styled-boxes/StatsBox.d.ts.map +1 -1
  108. package/dist/components/chat/styled-boxes/StatsBox.js +13 -5
  109. package/dist/components/chat/styled-boxes/StyledBox.cjs +7 -6
  110. package/dist/components/chat/styled-boxes/StyledBox.d.ts.map +1 -1
  111. package/dist/components/chat/styled-boxes/StyledBox.js +7 -6
  112. package/dist/components/chat/styled-boxes/SyspromptBox.cjs +2 -1
  113. package/dist/components/chat/styled-boxes/SyspromptBox.d.ts.map +1 -1
  114. package/dist/components/chat/styled-boxes/SyspromptBox.js +2 -1
  115. package/dist/components/modes/AlternateBufferCLI.cjs +53 -43
  116. package/dist/components/modes/AlternateBufferCLI.d.ts.map +1 -1
  117. package/dist/components/modes/AlternateBufferCLI.js +53 -43
  118. package/dist/components/modes/StaticCLI.cjs +53 -42
  119. package/dist/components/modes/StaticCLI.d.ts.map +1 -1
  120. package/dist/components/modes/StaticCLI.js +53 -42
  121. package/dist/components/overlays/ApiKeyInput.cjs +12 -11
  122. package/dist/components/overlays/ApiKeyInput.d.ts.map +1 -1
  123. package/dist/components/overlays/ApiKeyInput.js +12 -11
  124. package/dist/components/overlays/ChatGPTUsageCapOverlay.cjs +7 -6
  125. package/dist/components/overlays/ChatGPTUsageCapOverlay.d.ts.map +1 -1
  126. package/dist/components/overlays/ChatGPTUsageCapOverlay.js +7 -6
  127. package/dist/components/overlays/CommandOutputOverlay.cjs +2 -1
  128. package/dist/components/overlays/CommandOutputOverlay.d.ts.map +1 -1
  129. package/dist/components/overlays/CommandOutputOverlay.js +2 -1
  130. package/dist/components/overlays/ConnectOverlay.cjs +10 -9
  131. package/dist/components/overlays/ConnectOverlay.d.ts.map +1 -1
  132. package/dist/components/overlays/ConnectOverlay.js +10 -9
  133. package/dist/components/overlays/ContextStatsOverlay.cjs +48 -37
  134. package/dist/components/overlays/ContextStatsOverlay.d.ts.map +1 -1
  135. package/dist/components/overlays/ContextStatsOverlay.js +48 -37
  136. package/dist/components/overlays/CustomModelWizard.cjs +5 -4
  137. package/dist/components/overlays/CustomModelWizard.d.ts.map +1 -1
  138. package/dist/components/overlays/CustomModelWizard.js +5 -4
  139. package/dist/components/overlays/ExportWizard.cjs +28 -27
  140. package/dist/components/overlays/ExportWizard.d.ts.map +1 -1
  141. package/dist/components/overlays/ExportWizard.js +28 -27
  142. package/dist/components/overlays/InsufficientCreditsOverlay.cjs +25 -9
  143. package/dist/components/overlays/InsufficientCreditsOverlay.d.ts +2 -0
  144. package/dist/components/overlays/InsufficientCreditsOverlay.d.ts.map +1 -1
  145. package/dist/components/overlays/InsufficientCreditsOverlay.js +25 -9
  146. package/dist/components/overlays/LogLevelSelector.cjs +6 -5
  147. package/dist/components/overlays/LogLevelSelector.d.ts.map +1 -1
  148. package/dist/components/overlays/LogLevelSelector.js +6 -5
  149. package/dist/components/overlays/LoginOverlay.cjs +31 -66
  150. package/dist/components/overlays/LoginOverlay.d.ts +1 -3
  151. package/dist/components/overlays/LoginOverlay.d.ts.map +1 -1
  152. package/dist/components/overlays/LoginOverlay.js +32 -71
  153. package/dist/components/overlays/LogoutOverlay.cjs +16 -24
  154. package/dist/components/overlays/LogoutOverlay.d.ts +1 -0
  155. package/dist/components/overlays/LogoutOverlay.d.ts.map +1 -1
  156. package/dist/components/overlays/LogoutOverlay.js +18 -38
  157. package/dist/components/overlays/MarketplaceAddPrompt.cjs +12 -11
  158. package/dist/components/overlays/MarketplaceAddPrompt.d.ts.map +1 -1
  159. package/dist/components/overlays/MarketplaceAddPrompt.js +12 -11
  160. package/dist/components/overlays/MarketplaceBrowser.cjs +27 -26
  161. package/dist/components/overlays/MarketplaceBrowser.d.ts.map +1 -1
  162. package/dist/components/overlays/MarketplaceBrowser.js +27 -26
  163. package/dist/components/overlays/McpAddChoice.cjs +4 -3
  164. package/dist/components/overlays/McpAddChoice.d.ts.map +1 -1
  165. package/dist/components/overlays/McpAddChoice.js +4 -3
  166. package/dist/components/overlays/McpAddSelector.cjs +4 -3
  167. package/dist/components/overlays/McpAddSelector.d.ts.map +1 -1
  168. package/dist/components/overlays/McpAddSelector.js +4 -3
  169. package/dist/components/overlays/McpCustomTypeSelector.cjs +4 -3
  170. package/dist/components/overlays/McpCustomTypeSelector.d.ts.map +1 -1
  171. package/dist/components/overlays/McpCustomTypeSelector.js +4 -3
  172. package/dist/components/overlays/McpCustomWizard.cjs +9 -8
  173. package/dist/components/overlays/McpCustomWizard.d.ts.map +1 -1
  174. package/dist/components/overlays/McpCustomWizard.js +9 -8
  175. package/dist/components/overlays/McpRemoveSelector.cjs +5 -4
  176. package/dist/components/overlays/McpRemoveSelector.d.ts.map +1 -1
  177. package/dist/components/overlays/McpRemoveSelector.js +5 -4
  178. package/dist/components/overlays/McpSelector.cjs +4 -3
  179. package/dist/components/overlays/McpSelector.d.ts.map +1 -1
  180. package/dist/components/overlays/McpSelector.js +4 -3
  181. package/dist/components/overlays/McpServerActions.cjs +7 -6
  182. package/dist/components/overlays/McpServerActions.d.ts.map +1 -1
  183. package/dist/components/overlays/McpServerActions.js +7 -6
  184. package/dist/components/overlays/McpServerList.cjs +6 -5
  185. package/dist/components/overlays/McpServerList.d.ts.map +1 -1
  186. package/dist/components/overlays/McpServerList.js +6 -5
  187. package/dist/components/overlays/ModelSelectorRefactored.cjs +32 -17
  188. package/dist/components/overlays/ModelSelectorRefactored.d.ts.map +1 -1
  189. package/dist/components/overlays/ModelSelectorRefactored.js +32 -17
  190. package/dist/components/overlays/PermissionsSelector.cjs +6 -5
  191. package/dist/components/overlays/PermissionsSelector.d.ts.map +1 -1
  192. package/dist/components/overlays/PermissionsSelector.js +6 -5
  193. package/dist/components/overlays/PluginActions.cjs +7 -6
  194. package/dist/components/overlays/PluginActions.d.ts.map +1 -1
  195. package/dist/components/overlays/PluginActions.js +7 -6
  196. package/dist/components/overlays/PluginList.cjs +12 -11
  197. package/dist/components/overlays/PluginList.d.ts.map +1 -1
  198. package/dist/components/overlays/PluginList.js +12 -11
  199. package/dist/components/overlays/PluginManager.cjs +13 -5
  200. package/dist/components/overlays/PluginManager.d.ts.map +1 -1
  201. package/dist/components/overlays/PluginManager.js +13 -5
  202. package/dist/components/overlays/PromptAddChoice.cjs +5 -4
  203. package/dist/components/overlays/PromptAddChoice.d.ts.map +1 -1
  204. package/dist/components/overlays/PromptAddChoice.js +5 -4
  205. package/dist/components/overlays/PromptAddWizard.cjs +10 -9
  206. package/dist/components/overlays/PromptAddWizard.d.ts.map +1 -1
  207. package/dist/components/overlays/PromptAddWizard.js +10 -9
  208. package/dist/components/overlays/PromptDeleteSelector.cjs +6 -5
  209. package/dist/components/overlays/PromptDeleteSelector.d.ts.map +1 -1
  210. package/dist/components/overlays/PromptDeleteSelector.js +6 -5
  211. package/dist/components/overlays/PromptList.cjs +10 -9
  212. package/dist/components/overlays/PromptList.d.ts.map +1 -1
  213. package/dist/components/overlays/PromptList.js +10 -9
  214. package/dist/components/overlays/ReasoningOverlay.cjs +30 -23
  215. package/dist/components/overlays/ReasoningOverlay.d.ts.map +1 -1
  216. package/dist/components/overlays/ReasoningOverlay.js +30 -23
  217. package/dist/components/overlays/SearchOverlay.cjs +15 -14
  218. package/dist/components/overlays/SearchOverlay.d.ts.map +1 -1
  219. package/dist/components/overlays/SearchOverlay.js +15 -14
  220. package/dist/components/overlays/SessionRenameOverlay.cjs +9 -8
  221. package/dist/components/overlays/SessionRenameOverlay.d.ts.map +1 -1
  222. package/dist/components/overlays/SessionRenameOverlay.js +9 -8
  223. package/dist/components/overlays/SessionSelectorRefactored.cjs +4 -3
  224. package/dist/components/overlays/SessionSelectorRefactored.d.ts.map +1 -1
  225. package/dist/components/overlays/SessionSelectorRefactored.js +4 -3
  226. package/dist/components/overlays/SessionSubcommandSelector.cjs +4 -3
  227. package/dist/components/overlays/SessionSubcommandSelector.d.ts.map +1 -1
  228. package/dist/components/overlays/SessionSubcommandSelector.js +4 -3
  229. package/dist/components/overlays/SoundsSelector.cjs +15 -7
  230. package/dist/components/overlays/SoundsSelector.d.ts.map +1 -1
  231. package/dist/components/overlays/SoundsSelector.js +15 -7
  232. package/dist/components/overlays/StreamSelector.cjs +5 -4
  233. package/dist/components/overlays/StreamSelector.d.ts.map +1 -1
  234. package/dist/components/overlays/StreamSelector.js +5 -4
  235. package/dist/components/overlays/ToolBrowser.cjs +73 -56
  236. package/dist/components/overlays/ToolBrowser.d.ts.map +1 -1
  237. package/dist/components/overlays/ToolBrowser.js +73 -56
  238. package/dist/components/overlays/custom-model-wizard/LocalModelWizard.cjs +103 -69
  239. package/dist/components/overlays/custom-model-wizard/LocalModelWizard.d.ts.map +1 -1
  240. package/dist/components/overlays/custom-model-wizard/LocalModelWizard.js +103 -69
  241. package/dist/components/overlays/custom-model-wizard/provider-config.cjs +4 -4
  242. package/dist/components/overlays/custom-model-wizard/provider-config.js +4 -4
  243. package/dist/components/overlays/custom-model-wizard/shared/ApiKeyStep.cjs +3 -2
  244. package/dist/components/overlays/custom-model-wizard/shared/ApiKeyStep.d.ts.map +1 -1
  245. package/dist/components/overlays/custom-model-wizard/shared/ApiKeyStep.js +3 -2
  246. package/dist/components/overlays/custom-model-wizard/shared/ProviderSelector.cjs +5 -4
  247. package/dist/components/overlays/custom-model-wizard/shared/ProviderSelector.d.ts.map +1 -1
  248. package/dist/components/overlays/custom-model-wizard/shared/ProviderSelector.js +5 -4
  249. package/dist/components/overlays/custom-model-wizard/shared/SetupInfoBanner.cjs +4 -3
  250. package/dist/components/overlays/custom-model-wizard/shared/SetupInfoBanner.d.ts.map +1 -1
  251. package/dist/components/overlays/custom-model-wizard/shared/SetupInfoBanner.js +4 -3
  252. package/dist/components/overlays/custom-model-wizard/shared/WizardStepInput.cjs +7 -6
  253. package/dist/components/overlays/custom-model-wizard/shared/WizardStepInput.d.ts.map +1 -1
  254. package/dist/components/overlays/custom-model-wizard/shared/WizardStepInput.js +7 -6
  255. package/dist/components/renderers/DiffRenderer.cjs +5 -4
  256. package/dist/components/renderers/DiffRenderer.d.ts.map +1 -1
  257. package/dist/components/renderers/DiffRenderer.js +5 -4
  258. package/dist/components/renderers/FilePreviewRenderer.cjs +23 -13
  259. package/dist/components/renderers/FilePreviewRenderer.d.ts.map +1 -1
  260. package/dist/components/renderers/FilePreviewRenderer.js +23 -13
  261. package/dist/components/renderers/FileRenderer.cjs +9 -8
  262. package/dist/components/renderers/FileRenderer.d.ts.map +1 -1
  263. package/dist/components/renderers/FileRenderer.js +9 -8
  264. package/dist/components/renderers/GenericRenderer.cjs +5 -4
  265. package/dist/components/renderers/GenericRenderer.d.ts.map +1 -1
  266. package/dist/components/renderers/GenericRenderer.js +5 -4
  267. package/dist/components/renderers/SearchRenderer.cjs +4 -3
  268. package/dist/components/renderers/SearchRenderer.d.ts.map +1 -1
  269. package/dist/components/renderers/SearchRenderer.js +4 -3
  270. package/dist/components/renderers/ShellRenderer.cjs +6 -5
  271. package/dist/components/renderers/ShellRenderer.d.ts.map +1 -1
  272. package/dist/components/renderers/ShellRenderer.js +6 -5
  273. package/dist/components/renderers/SignalDiff.cjs +139 -0
  274. package/dist/components/renderers/SignalDiff.d.ts +21 -0
  275. package/dist/components/renderers/SignalDiff.d.ts.map +1 -0
  276. package/dist/components/renderers/SignalDiff.js +106 -0
  277. package/dist/components/renderers/SignalDiff.test.cjs +78 -0
  278. package/dist/components/renderers/SignalDiff.test.d.ts +2 -0
  279. package/dist/components/renderers/SignalDiff.test.d.ts.map +1 -0
  280. package/dist/components/renderers/SignalDiff.test.js +77 -0
  281. package/dist/components/renderers/diff-shared.cjs +13 -7
  282. package/dist/components/renderers/diff-shared.d.ts +5 -0
  283. package/dist/components/renderers/diff-shared.d.ts.map +1 -1
  284. package/dist/components/renderers/diff-shared.js +12 -7
  285. package/dist/components/shared/FocusOverlayFrame.cjs +3 -2
  286. package/dist/components/shared/FocusOverlayFrame.d.ts.map +1 -1
  287. package/dist/components/shared/FocusOverlayFrame.js +3 -2
  288. package/dist/components/shared/HintBar.cjs +2 -1
  289. package/dist/components/shared/HintBar.d.ts.map +1 -1
  290. package/dist/components/shared/HintBar.js +2 -1
  291. package/dist/components/shared/MarkdownText.cjs +36 -53
  292. package/dist/components/shared/MarkdownText.d.ts +2 -0
  293. package/dist/components/shared/MarkdownText.d.ts.map +1 -1
  294. package/dist/components/shared/MarkdownText.js +36 -54
  295. package/dist/components/shared/VirtualizedList.cjs +2 -1
  296. package/dist/components/shared/VirtualizedList.d.ts.map +1 -1
  297. package/dist/components/shared/VirtualizedList.js +2 -1
  298. package/dist/containers/OverlayContainer.cjs +32 -44
  299. package/dist/containers/OverlayContainer.d.ts.map +1 -1
  300. package/dist/containers/OverlayContainer.js +32 -44
  301. package/dist/contexts/KeypressContext.cjs +7 -1
  302. package/dist/contexts/KeypressContext.d.ts.map +1 -1
  303. package/dist/contexts/KeypressContext.js +7 -1
  304. package/dist/contexts/KeypressContext.test.cjs +82 -0
  305. package/dist/contexts/KeypressContext.test.d.ts +2 -0
  306. package/dist/contexts/KeypressContext.test.d.ts.map +1 -0
  307. package/dist/contexts/KeypressContext.test.js +81 -0
  308. package/dist/hooks/useAgentEvents.cjs +1 -74
  309. package/dist/hooks/useAgentEvents.d.ts.map +1 -1
  310. package/dist/hooks/useAgentEvents.js +1 -74
  311. package/dist/hooks/useCLIState.cjs +0 -3
  312. package/dist/hooks/useCLIState.d.ts.map +1 -1
  313. package/dist/hooks/useCLIState.js +0 -3
  314. package/dist/hooks/useContextStats.cjs +91 -0
  315. package/dist/hooks/useContextStats.d.ts +13 -0
  316. package/dist/hooks/useContextStats.d.ts.map +1 -0
  317. package/dist/hooks/useContextStats.js +67 -0
  318. package/dist/hooks/useDeckState.cjs +140 -0
  319. package/dist/hooks/useDeckState.d.ts +20 -0
  320. package/dist/hooks/useDeckState.d.ts.map +1 -0
  321. package/dist/hooks/useDeckState.js +123 -0
  322. package/dist/hooks/useDextoCredits.cjs +81 -0
  323. package/dist/hooks/useDextoCredits.d.ts +14 -0
  324. package/dist/hooks/useDextoCredits.d.ts.map +1 -0
  325. package/dist/hooks/useDextoCredits.js +56 -0
  326. package/dist/hooks/useDextoCredits.test.cjs +73 -0
  327. package/dist/hooks/useDextoCredits.test.d.ts +2 -0
  328. package/dist/hooks/useDextoCredits.test.d.ts.map +1 -0
  329. package/dist/hooks/useDextoCredits.test.js +72 -0
  330. package/dist/hooks/useElapsedTime.cjs +13 -24
  331. package/dist/hooks/useElapsedTime.d.ts +3 -1
  332. package/dist/hooks/useElapsedTime.d.ts.map +1 -1
  333. package/dist/hooks/useElapsedTime.js +13 -24
  334. package/dist/hooks/useElapsedTime.test.cjs +35 -0
  335. package/dist/hooks/useElapsedTime.test.d.ts +2 -0
  336. package/dist/hooks/useElapsedTime.test.d.ts.map +1 -0
  337. package/dist/hooks/useElapsedTime.test.js +34 -0
  338. package/dist/hooks/useGitDirtyFiles.cjs +59 -0
  339. package/dist/hooks/useGitDirtyFiles.d.ts +5 -0
  340. package/dist/hooks/useGitDirtyFiles.d.ts.map +1 -0
  341. package/dist/hooks/useGitDirtyFiles.js +34 -0
  342. package/dist/hooks/useGitDirtyFiles.test.cjs +9 -0
  343. package/dist/hooks/useGitDirtyFiles.test.d.ts +2 -0
  344. package/dist/hooks/useGitDirtyFiles.test.d.ts.map +1 -0
  345. package/dist/hooks/useGitDirtyFiles.test.js +8 -0
  346. package/dist/hooks/useHeldValue.cjs +33 -0
  347. package/dist/hooks/useHeldValue.d.ts +3 -0
  348. package/dist/hooks/useHeldValue.d.ts.map +1 -0
  349. package/dist/hooks/useHeldValue.js +9 -0
  350. package/dist/hooks/useHeldValue.test.cjs +31 -0
  351. package/dist/hooks/useHeldValue.test.d.ts +2 -0
  352. package/dist/hooks/useHeldValue.test.d.ts.map +1 -0
  353. package/dist/hooks/useHeldValue.test.js +30 -0
  354. package/dist/hooks/useInputOrchestrator.cjs +22 -30
  355. package/dist/hooks/useInputOrchestrator.d.ts +2 -0
  356. package/dist/hooks/useInputOrchestrator.d.ts.map +1 -1
  357. package/dist/hooks/useInputOrchestrator.js +21 -30
  358. package/dist/hooks/useInputOrchestrator.test.cjs +24 -0
  359. package/dist/hooks/useInputOrchestrator.test.d.ts +2 -0
  360. package/dist/hooks/useInputOrchestrator.test.d.ts.map +1 -0
  361. package/dist/hooks/useInputOrchestrator.test.js +23 -0
  362. package/dist/host/index.cjs +22 -49
  363. package/dist/host/index.d.ts +18 -72
  364. package/dist/host/index.d.ts.map +1 -1
  365. package/dist/host/index.js +18 -42
  366. package/dist/host/index.test.cjs +21 -35
  367. package/dist/host/index.test.js +22 -40
  368. package/dist/index.d.cts +13 -52
  369. package/dist/interactive-commands/command-parser.cjs +13 -21
  370. package/dist/interactive-commands/command-parser.d.ts.map +1 -1
  371. package/dist/interactive-commands/command-parser.js +13 -11
  372. package/dist/interactive-commands/general-commands.cjs +8 -7
  373. package/dist/interactive-commands/general-commands.d.ts.map +1 -1
  374. package/dist/interactive-commands/general-commands.js +8 -7
  375. package/dist/services/processStream.cjs +33 -21
  376. package/dist/services/processStream.d.ts.map +1 -1
  377. package/dist/services/processStream.js +34 -22
  378. package/dist/services/processStream.test.cjs +52 -4
  379. package/dist/services/processStream.test.js +52 -4
  380. package/dist/signal/background.cjs +154 -0
  381. package/dist/signal/background.d.ts +43 -0
  382. package/dist/signal/background.d.ts.map +1 -0
  383. package/dist/signal/background.js +124 -0
  384. package/dist/signal/background.test.cjs +186 -0
  385. package/dist/signal/background.test.d.ts +2 -0
  386. package/dist/signal/background.test.d.ts.map +1 -0
  387. package/dist/signal/background.test.js +192 -0
  388. package/dist/signal/caps.cjs +100 -0
  389. package/dist/signal/caps.d.ts +23 -0
  390. package/dist/signal/caps.d.ts.map +1 -0
  391. package/dist/signal/caps.js +73 -0
  392. package/dist/signal/caps.test.cjs +56 -0
  393. package/dist/signal/caps.test.d.ts +2 -0
  394. package/dist/signal/caps.test.d.ts.map +1 -0
  395. package/dist/signal/caps.test.js +55 -0
  396. package/dist/signal/components.cjs +257 -0
  397. package/dist/signal/components.d.ts +120 -0
  398. package/dist/signal/components.d.ts.map +1 -0
  399. package/dist/signal/components.js +226 -0
  400. package/dist/signal/components.test.cjs +156 -0
  401. package/dist/signal/components.test.d.ts +2 -0
  402. package/dist/signal/components.test.d.ts.map +1 -0
  403. package/dist/signal/components.test.js +133 -0
  404. package/dist/signal/cut.cjs +103 -0
  405. package/dist/signal/cut.d.ts +11 -0
  406. package/dist/signal/cut.d.ts.map +1 -0
  407. package/dist/signal/cut.js +77 -0
  408. package/dist/signal/cut.test.cjs +20 -0
  409. package/dist/signal/cut.test.d.ts +2 -0
  410. package/dist/signal/cut.test.d.ts.map +1 -0
  411. package/dist/signal/cut.test.js +19 -0
  412. package/dist/signal/deck-layout.cjs +57 -0
  413. package/dist/signal/deck-layout.d.ts +29 -0
  414. package/dist/signal/deck-layout.d.ts.map +1 -0
  415. package/dist/signal/deck-layout.js +30 -0
  416. package/dist/signal/deck-parts.cjs +243 -0
  417. package/dist/signal/deck-parts.d.ts +55 -0
  418. package/dist/signal/deck-parts.d.ts.map +1 -0
  419. package/dist/signal/deck-parts.js +205 -0
  420. package/dist/signal/deck.test.cjs +311 -0
  421. package/dist/signal/deck.test.d.ts +2 -0
  422. package/dist/signal/deck.test.d.ts.map +1 -0
  423. package/dist/signal/deck.test.js +288 -0
  424. package/dist/signal/glyphs.cjs +195 -0
  425. package/dist/signal/glyphs.d.ts +8 -0
  426. package/dist/signal/glyphs.d.ts.map +1 -0
  427. package/dist/signal/glyphs.js +171 -0
  428. package/dist/signal/glyphs.test.cjs +17 -0
  429. package/dist/signal/glyphs.test.d.ts +2 -0
  430. package/dist/signal/glyphs.test.d.ts.map +1 -0
  431. package/dist/signal/glyphs.test.js +16 -0
  432. package/dist/signal/harness.cjs +103 -0
  433. package/dist/signal/harness.d.ts +70 -0
  434. package/dist/signal/harness.d.ts.map +1 -0
  435. package/dist/signal/harness.js +67 -0
  436. package/dist/signal/harness.test.cjs +84 -0
  437. package/dist/signal/harness.test.d.ts +2 -0
  438. package/dist/signal/harness.test.d.ts.map +1 -0
  439. package/dist/signal/harness.test.js +61 -0
  440. package/dist/signal/index.cjs +76 -0
  441. package/dist/signal/index.d.ts +8 -0
  442. package/dist/signal/index.d.ts.map +1 -0
  443. package/dist/signal/index.js +45 -0
  444. package/dist/signal/kit.snapshot.test.cjs +56 -0
  445. package/dist/signal/kit.snapshot.test.d.ts +2 -0
  446. package/dist/signal/kit.snapshot.test.d.ts.map +1 -0
  447. package/dist/signal/kit.snapshot.test.js +55 -0
  448. package/dist/signal/no-raw-colours.test.cjs +32 -0
  449. package/dist/signal/no-raw-colours.test.d.ts +2 -0
  450. package/dist/signal/no-raw-colours.test.d.ts.map +1 -0
  451. package/dist/signal/no-raw-colours.test.js +30 -0
  452. package/dist/signal/paint.cjs +76 -0
  453. package/dist/signal/paint.d.ts +15 -0
  454. package/dist/signal/paint.d.ts.map +1 -0
  455. package/dist/signal/paint.js +41 -0
  456. package/dist/signal/paint.test.cjs +98 -0
  457. package/dist/signal/paint.test.d.ts +2 -0
  458. package/dist/signal/paint.test.d.ts.map +1 -0
  459. package/dist/signal/paint.test.js +75 -0
  460. package/dist/signal/tone.cjs +109 -0
  461. package/dist/signal/tone.d.ts +17 -0
  462. package/dist/signal/tone.d.ts.map +1 -0
  463. package/dist/signal/tone.js +83 -0
  464. package/dist/signal/tone.test.cjs +70 -0
  465. package/dist/signal/tone.test.d.ts +2 -0
  466. package/dist/signal/tone.test.d.ts.map +1 -0
  467. package/dist/signal/tone.test.js +69 -0
  468. package/dist/signal/trace.cjs +142 -0
  469. package/dist/signal/trace.d.ts +41 -0
  470. package/dist/signal/trace.d.ts.map +1 -0
  471. package/dist/signal/trace.js +113 -0
  472. package/dist/signal/trace.test.cjs +50 -0
  473. package/dist/signal/trace.test.d.ts +2 -0
  474. package/dist/signal/trace.test.d.ts.map +1 -0
  475. package/dist/signal/trace.test.js +49 -0
  476. package/dist/signal/use-trace.cjs +73 -0
  477. package/dist/signal/use-trace.d.ts +5 -0
  478. package/dist/signal/use-trace.d.ts.map +1 -0
  479. package/dist/signal/use-trace.js +48 -0
  480. package/dist/signal/wordmark-art.generated.cjs +375 -0
  481. package/dist/signal/wordmark-art.generated.d.ts +3 -0
  482. package/dist/signal/wordmark-art.generated.d.ts.map +1 -0
  483. package/dist/signal/wordmark-art.generated.js +351 -0
  484. package/dist/signal/wordmark.cjs +60 -0
  485. package/dist/signal/wordmark.d.ts +23 -0
  486. package/dist/signal/wordmark.d.ts.map +1 -0
  487. package/dist/signal/wordmark.js +34 -0
  488. package/dist/signal/wordmark.test.cjs +71 -0
  489. package/dist/signal/wordmark.test.d.ts +2 -0
  490. package/dist/signal/wordmark.test.d.ts.map +1 -0
  491. package/dist/signal/wordmark.test.js +70 -0
  492. package/dist/state/initialState.cjs +0 -3
  493. package/dist/state/initialState.d.ts.map +1 -1
  494. package/dist/state/initialState.js +0 -3
  495. package/dist/state/types.d.ts +13 -7
  496. package/dist/state/types.d.ts.map +1 -1
  497. package/dist/utils/approval-response.cjs +45 -0
  498. package/dist/utils/approval-response.d.ts +14 -0
  499. package/dist/utils/approval-response.d.ts.map +1 -0
  500. package/dist/utils/approval-response.js +21 -0
  501. package/dist/utils/approval-response.test.cjs +49 -0
  502. package/dist/utils/approval-response.test.d.ts +2 -0
  503. package/dist/utils/approval-response.test.d.ts.map +1 -0
  504. package/dist/utils/approval-response.test.js +55 -0
  505. package/dist/utils/approvalScope.cjs +12 -0
  506. package/dist/utils/approvalScope.d.ts.map +1 -1
  507. package/dist/utils/approvalScope.js +12 -0
  508. package/dist/utils/approvalScope.test.cjs +23 -0
  509. package/dist/utils/approvalScope.test.d.ts +2 -0
  510. package/dist/utils/approvalScope.test.d.ts.map +1 -0
  511. package/dist/utils/approvalScope.test.js +22 -0
  512. package/dist/utils/background-failure.cjs +51 -0
  513. package/dist/utils/background-failure.d.ts +12 -0
  514. package/dist/utils/background-failure.d.ts.map +1 -0
  515. package/dist/utils/background-failure.js +26 -0
  516. package/dist/utils/chatgpt-rate-limit.cjs +10 -0
  517. package/dist/utils/chatgpt-rate-limit.d.ts +9 -0
  518. package/dist/utils/chatgpt-rate-limit.d.ts.map +1 -1
  519. package/dist/utils/chatgpt-rate-limit.js +9 -0
  520. package/dist/utils/chatgpt-rate-limit.test.cjs +10 -0
  521. package/dist/utils/chatgpt-rate-limit.test.js +11 -0
  522. package/dist/utils/deck-state.cjs +107 -0
  523. package/dist/utils/deck-state.d.ts +79 -0
  524. package/dist/utils/deck-state.d.ts.map +1 -0
  525. package/dist/utils/deck-state.js +76 -0
  526. package/dist/utils/deck-state.test.cjs +208 -0
  527. package/dist/utils/deck-state.test.d.ts +2 -0
  528. package/dist/utils/deck-state.test.d.ts.map +1 -0
  529. package/dist/utils/deck-state.test.js +216 -0
  530. package/dist/utils/fault-block.cjs +37 -0
  531. package/dist/utils/fault-block.d.ts +13 -0
  532. package/dist/utils/fault-block.d.ts.map +1 -0
  533. package/dist/utils/fault-block.js +13 -0
  534. package/dist/utils/fault-block.test.cjs +23 -0
  535. package/dist/utils/fault-block.test.d.ts +2 -0
  536. package/dist/utils/fault-block.test.d.ts.map +1 -0
  537. package/dist/utils/fault-block.test.js +22 -0
  538. package/dist/utils/llm-provider-display.cjs +1 -1
  539. package/dist/utils/llm-provider-display.js +1 -1
  540. package/dist/utils/messageFormatting.cjs +26 -23
  541. package/dist/utils/messageFormatting.d.ts +5 -2
  542. package/dist/utils/messageFormatting.d.ts.map +1 -1
  543. package/dist/utils/messageFormatting.js +25 -21
  544. package/dist/utils/messageFormatting.test.cjs +34 -0
  545. package/dist/utils/messageFormatting.test.js +35 -1
  546. package/dist/utils/reasoning-variant.cjs +35 -0
  547. package/dist/utils/reasoning-variant.d.ts +13 -0
  548. package/dist/utils/reasoning-variant.d.ts.map +1 -0
  549. package/dist/utils/reasoning-variant.js +11 -0
  550. package/dist/utils/resize-reflow.cjs +119 -0
  551. package/dist/utils/resize-reflow.d.ts +18 -0
  552. package/dist/utils/resize-reflow.d.ts.map +1 -0
  553. package/dist/utils/resize-reflow.js +83 -0
  554. package/dist/utils/resize-reflow.test.cjs +100 -0
  555. package/dist/utils/resize-reflow.test.d.ts +2 -0
  556. package/dist/utils/resize-reflow.test.d.ts.map +1 -0
  557. package/dist/utils/resize-reflow.test.js +99 -0
  558. package/dist/utils/tool-step.cjs +183 -0
  559. package/dist/utils/tool-step.d.ts +28 -0
  560. package/dist/utils/tool-step.d.ts.map +1 -0
  561. package/dist/utils/tool-step.js +156 -0
  562. package/dist/utils/tool-step.test.cjs +263 -0
  563. package/dist/utils/tool-step.test.d.ts +2 -0
  564. package/dist/utils/tool-step.test.d.ts.map +1 -0
  565. package/dist/utils/tool-step.test.js +262 -0
  566. package/package.json +9 -5
  567. package/dist/components/BackgroundTasksPanel.cjs +0 -117
  568. package/dist/components/BackgroundTasksPanel.d.ts +0 -18
  569. package/dist/components/BackgroundTasksPanel.d.ts.map +0 -1
  570. package/dist/components/BackgroundTasksPanel.js +0 -93
@@ -34,12 +34,13 @@ var import_QueuedMessagesDisplay = require("../chat/QueuedMessagesDisplay.js");
34
34
  var import_StatusBar = require("../StatusBar.js");
35
35
  var import_HistorySearchBar = require("../HistorySearchBar.js");
36
36
  var import_Footer = require("../Footer.js");
37
+ var import_DeckArea = require("../DeckArea.js");
37
38
  var import_TodoPanel = require("../TodoPanel.js");
38
- var import_BackgroundTasksPanel = require("../BackgroundTasksPanel.js");
39
39
  var import_VirtualizedList = require("../shared/VirtualizedList.js");
40
40
  var import_InputContainer = require("../../containers/InputContainer.js");
41
41
  var import_OverlayContainer = require("../../containers/OverlayContainer.js");
42
42
  var import_overlayPresentation = require("../../utils/overlayPresentation.js");
43
+ var import_signal = require("../../signal/index.js");
43
44
  function AlternateBufferCLI({
44
45
  agent,
45
46
  initialSessionId,
@@ -94,6 +95,7 @@ function AlternateBufferCLI({
94
95
  initialBypassPermissions
95
96
  });
96
97
  const branchName = (0, import_useGitBranch.useGitBranch)();
98
+ const signal = (0, import_signal.useCaps)().palette === "signal";
97
99
  const getScrollState = (0, import_react.useCallback)(() => {
98
100
  const scrollState = listRef.current?.getScrollState();
99
101
  return scrollState ?? { scrollTop: 0, scrollHeight: 0, innerHeight: 0 };
@@ -229,6 +231,37 @@ function AlternateBufferCLI({
229
231
  return item.message.id;
230
232
  }, []);
231
233
  const hideChrome = (0, import_overlayPresentation.shouldHideStatusChrome)(ui.activeOverlay, approval);
234
+ const inputArea = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
235
+ import_InputContainer.InputContainer,
236
+ {
237
+ ref: inputContainerRef,
238
+ buffer,
239
+ input,
240
+ ui,
241
+ session,
242
+ initialPrompt,
243
+ isHydratingHistory,
244
+ approval,
245
+ steerMessages,
246
+ queuedMessages,
247
+ setInput,
248
+ setUi,
249
+ setSession,
250
+ setMessages,
251
+ setPendingMessages,
252
+ setDequeuedBuffer,
253
+ setSteerMessages,
254
+ setQueuedMessages,
255
+ setApproval,
256
+ setApprovalQueue,
257
+ setTodos,
258
+ agent,
259
+ inputService,
260
+ onKeyboardScroll: handleKeyboardScroll,
261
+ useStreaming,
262
+ configFilePath
263
+ }
264
+ );
232
265
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_ink.Box, { flexDirection: "column", height: terminalHeight, children: [
233
266
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ink.Box, { ref: listContainerRef, flexGrow: 1, flexShrink: 1, minHeight: 0, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
234
267
  import_VirtualizedList.VirtualizedList,
@@ -244,7 +277,7 @@ function AlternateBufferCLI({
244
277
  ) }),
245
278
  /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_ink.Box, { flexDirection: "column", flexShrink: 0, children: [
246
279
  !hideChrome && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
247
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
280
+ (!signal || ui.copyModeEnabled) && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
248
281
  import_StatusBar.StatusBar,
249
282
  {
250
283
  agent,
@@ -257,16 +290,7 @@ function AlternateBufferCLI({
257
290
  todoExpanded: ui.todoExpanded,
258
291
  hasTodos: todos.some((t) => t.status !== "completed"),
259
292
  planModeActive: ui.planModeActive,
260
- autoApproveEdits: ui.autoApproveEdits,
261
- backgroundTasksRunning: ui.backgroundTasksRunning
262
- }
263
- ),
264
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
265
- import_BackgroundTasksPanel.BackgroundTasksPanel,
266
- {
267
- tasks: ui.backgroundTasks,
268
- isExpanded: ui.backgroundTasksExpanded,
269
- isProcessing: ui.isProcessing
293
+ autoApproveEdits: ui.autoApproveEdits
270
294
  }
271
295
  ),
272
296
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
@@ -277,7 +301,7 @@ function AlternateBufferCLI({
277
301
  isProcessing: ui.isProcessing
278
302
  }
279
303
  ),
280
- selectionHintVisible && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ink.Box, { paddingX: 1, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ink.Text, { color: "yellowBright", children: "\u{1F4A1} Tip: Hold Option (\u2325) and click to select text, or press Ctrl+S to toggle copy mode" }) }),
304
+ selectionHintVisible && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ink.Box, { paddingX: 1, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ink.Text, { color: (0, import_signal.tone)("amber"), children: "\u{1F4A1} Tip: Hold Option (\u2325) and click to select text, or press Ctrl+S to toggle copy mode" }) }),
281
305
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
282
306
  import_QueuedMessagesDisplay.QueuedMessagesDisplay,
283
307
  {
@@ -295,37 +319,23 @@ function AlternateBufferCLI({
295
319
  }
296
320
  )
297
321
  ] }),
298
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
299
- import_InputContainer.InputContainer,
322
+ signal ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
323
+ import_DeckArea.DeckArea,
300
324
  {
301
- ref: inputContainerRef,
302
- buffer,
303
- input,
325
+ agent,
326
+ sessionId: session.id,
327
+ modelName: session.modelName,
304
328
  ui,
305
- session,
306
- initialPrompt,
307
- isHydratingHistory,
308
329
  approval,
309
- steerMessages,
310
- queuedMessages,
311
- setInput,
312
- setUi,
313
- setSession,
314
- setMessages,
315
- setPendingMessages,
316
- setDequeuedBuffer,
317
- setSteerMessages,
318
- setQueuedMessages,
319
- setApproval,
320
- setApprovalQueue,
321
- setTodos,
322
- agent,
323
- inputService,
324
- onKeyboardScroll: handleKeyboardScroll,
325
- useStreaming,
326
- configFilePath
330
+ pendingMessages,
331
+ steerCount: steerMessages.length,
332
+ branch: branchName ?? null,
333
+ cwd: process.cwd(),
334
+ isShellMode: buffer.text.startsWith("!"),
335
+ chatgptRateLimitStatus: ui.chatgptRateLimitStatus,
336
+ children: inputArea
327
337
  }
328
- ),
338
+ ) : inputArea,
329
339
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
330
340
  import_OverlayContainer.OverlayContainer,
331
341
  {
@@ -348,10 +358,10 @@ function AlternateBufferCLI({
348
358
  }
349
359
  ),
350
360
  !hideChrome && ui.exitWarningShown && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_ink.Box, { paddingX: 1, children: [
351
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ink.Text, { color: "yellowBright", bold: true, children: "\u26A0 Press Ctrl+C again to exit" }),
352
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ink.Text, { color: "gray", children: " (or press any key to cancel)" })
361
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ink.Text, { color: (0, import_signal.tone)("amber"), bold: true, children: "\u26A0 Press Ctrl+C again to exit" }),
362
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ink.Text, { color: (0, import_signal.tone)("dim"), children: " (or press any key to cancel)" })
353
363
  ] }),
354
- !hideChrome && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
364
+ !signal && !hideChrome && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
355
365
  import_Footer.Footer,
356
366
  {
357
367
  agent,
@@ -1 +1 @@
1
- {"version":3,"file":"AlternateBufferCLI.d.ts","sourceRoot":"","sources":["../../../src/components/modes/AlternateBufferCLI.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,OAAO,KAAK,EAAW,WAAW,EAAE,MAAM,sBAAsB,CAAC;AA+BjE,UAAU,uBAAuB;IAC7B,KAAK,EAAE,eAAe,CAAC;IACvB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,2EAA2E;IAC3E,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,6DAA6D;IAC7D,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,kBAAkB,CAAC,EAC/B,KAAK,EACL,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,cAAc,EACd,wBAAgC,EAChC,kBAAkB,EAClB,YAAmB,GACtB,EAAE,uBAAuB,2CAiYzB"}
1
+ {"version":3,"file":"AlternateBufferCLI.d.ts","sourceRoot":"","sources":["../../../src/components/modes/AlternateBufferCLI.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,OAAO,KAAK,EAAW,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAgCjE,UAAU,uBAAuB;IAC7B,KAAK,EAAE,eAAe,CAAC;IACvB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,2EAA2E;IAC3E,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,6DAA6D;IAC7D,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,kBAAkB,CAAC,EAC/B,KAAK,EACL,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,cAAc,EACd,wBAAgC,EAChC,kBAAkB,EAClB,YAAmB,GACtB,EAAE,uBAAuB,2CAoZzB"}
@@ -11,8 +11,8 @@ import { QUEUE_EDIT_SHORTCUTS, QueuedMessagesDisplay } from "../chat/QueuedMessa
11
11
  import { StatusBar } from "../StatusBar.js";
12
12
  import { HistorySearchBar } from "../HistorySearchBar.js";
13
13
  import { Footer } from "../Footer.js";
14
+ import { DeckArea } from "../DeckArea.js";
14
15
  import { TodoPanel } from "../TodoPanel.js";
15
- import { BackgroundTasksPanel } from "../BackgroundTasksPanel.js";
16
16
  import {
17
17
  VirtualizedList,
18
18
  SCROLL_TO_ITEM_END
@@ -20,6 +20,7 @@ import {
20
20
  import { InputContainer } from "../../containers/InputContainer.js";
21
21
  import { OverlayContainer } from "../../containers/OverlayContainer.js";
22
22
  import { shouldHideStatusChrome } from "../../utils/overlayPresentation.js";
23
+ import { tone, useCaps } from "../../signal/index.js";
23
24
  function AlternateBufferCLI({
24
25
  agent,
25
26
  initialSessionId,
@@ -74,6 +75,7 @@ function AlternateBufferCLI({
74
75
  initialBypassPermissions
75
76
  });
76
77
  const branchName = useGitBranch();
78
+ const signal = useCaps().palette === "signal";
77
79
  const getScrollState = useCallback(() => {
78
80
  const scrollState = listRef.current?.getScrollState();
79
81
  return scrollState ?? { scrollTop: 0, scrollHeight: 0, innerHeight: 0 };
@@ -209,6 +211,37 @@ function AlternateBufferCLI({
209
211
  return item.message.id;
210
212
  }, []);
211
213
  const hideChrome = shouldHideStatusChrome(ui.activeOverlay, approval);
214
+ const inputArea = /* @__PURE__ */ jsx(
215
+ InputContainer,
216
+ {
217
+ ref: inputContainerRef,
218
+ buffer,
219
+ input,
220
+ ui,
221
+ session,
222
+ initialPrompt,
223
+ isHydratingHistory,
224
+ approval,
225
+ steerMessages,
226
+ queuedMessages,
227
+ setInput,
228
+ setUi,
229
+ setSession,
230
+ setMessages,
231
+ setPendingMessages,
232
+ setDequeuedBuffer,
233
+ setSteerMessages,
234
+ setQueuedMessages,
235
+ setApproval,
236
+ setApprovalQueue,
237
+ setTodos,
238
+ agent,
239
+ inputService,
240
+ onKeyboardScroll: handleKeyboardScroll,
241
+ useStreaming,
242
+ configFilePath
243
+ }
244
+ );
212
245
  return /* @__PURE__ */ jsxs(Box, { flexDirection: "column", height: terminalHeight, children: [
213
246
  /* @__PURE__ */ jsx(Box, { ref: listContainerRef, flexGrow: 1, flexShrink: 1, minHeight: 0, children: /* @__PURE__ */ jsx(
214
247
  VirtualizedList,
@@ -224,7 +257,7 @@ function AlternateBufferCLI({
224
257
  ) }),
225
258
  /* @__PURE__ */ jsxs(Box, { flexDirection: "column", flexShrink: 0, children: [
226
259
  !hideChrome && /* @__PURE__ */ jsxs(Fragment, { children: [
227
- /* @__PURE__ */ jsx(
260
+ (!signal || ui.copyModeEnabled) && /* @__PURE__ */ jsx(
228
261
  StatusBar,
229
262
  {
230
263
  agent,
@@ -237,16 +270,7 @@ function AlternateBufferCLI({
237
270
  todoExpanded: ui.todoExpanded,
238
271
  hasTodos: todos.some((t) => t.status !== "completed"),
239
272
  planModeActive: ui.planModeActive,
240
- autoApproveEdits: ui.autoApproveEdits,
241
- backgroundTasksRunning: ui.backgroundTasksRunning
242
- }
243
- ),
244
- /* @__PURE__ */ jsx(
245
- BackgroundTasksPanel,
246
- {
247
- tasks: ui.backgroundTasks,
248
- isExpanded: ui.backgroundTasksExpanded,
249
- isProcessing: ui.isProcessing
273
+ autoApproveEdits: ui.autoApproveEdits
250
274
  }
251
275
  ),
252
276
  /* @__PURE__ */ jsx(
@@ -257,7 +281,7 @@ function AlternateBufferCLI({
257
281
  isProcessing: ui.isProcessing
258
282
  }
259
283
  ),
260
- selectionHintVisible && /* @__PURE__ */ jsx(Box, { paddingX: 1, children: /* @__PURE__ */ jsx(Text, { color: "yellowBright", children: "\u{1F4A1} Tip: Hold Option (\u2325) and click to select text, or press Ctrl+S to toggle copy mode" }) }),
284
+ selectionHintVisible && /* @__PURE__ */ jsx(Box, { paddingX: 1, children: /* @__PURE__ */ jsx(Text, { color: tone("amber"), children: "\u{1F4A1} Tip: Hold Option (\u2325) and click to select text, or press Ctrl+S to toggle copy mode" }) }),
261
285
  /* @__PURE__ */ jsx(
262
286
  QueuedMessagesDisplay,
263
287
  {
@@ -275,37 +299,23 @@ function AlternateBufferCLI({
275
299
  }
276
300
  )
277
301
  ] }),
278
- /* @__PURE__ */ jsx(
279
- InputContainer,
302
+ signal ? /* @__PURE__ */ jsx(
303
+ DeckArea,
280
304
  {
281
- ref: inputContainerRef,
282
- buffer,
283
- input,
305
+ agent,
306
+ sessionId: session.id,
307
+ modelName: session.modelName,
284
308
  ui,
285
- session,
286
- initialPrompt,
287
- isHydratingHistory,
288
309
  approval,
289
- steerMessages,
290
- queuedMessages,
291
- setInput,
292
- setUi,
293
- setSession,
294
- setMessages,
295
- setPendingMessages,
296
- setDequeuedBuffer,
297
- setSteerMessages,
298
- setQueuedMessages,
299
- setApproval,
300
- setApprovalQueue,
301
- setTodos,
302
- agent,
303
- inputService,
304
- onKeyboardScroll: handleKeyboardScroll,
305
- useStreaming,
306
- configFilePath
310
+ pendingMessages,
311
+ steerCount: steerMessages.length,
312
+ branch: branchName ?? null,
313
+ cwd: process.cwd(),
314
+ isShellMode: buffer.text.startsWith("!"),
315
+ chatgptRateLimitStatus: ui.chatgptRateLimitStatus,
316
+ children: inputArea
307
317
  }
308
- ),
318
+ ) : inputArea,
309
319
  /* @__PURE__ */ jsx(
310
320
  OverlayContainer,
311
321
  {
@@ -328,10 +338,10 @@ function AlternateBufferCLI({
328
338
  }
329
339
  ),
330
340
  !hideChrome && ui.exitWarningShown && /* @__PURE__ */ jsxs(Box, { paddingX: 1, children: [
331
- /* @__PURE__ */ jsx(Text, { color: "yellowBright", bold: true, children: "\u26A0 Press Ctrl+C again to exit" }),
332
- /* @__PURE__ */ jsx(Text, { color: "gray", children: " (or press any key to cancel)" })
341
+ /* @__PURE__ */ jsx(Text, { color: tone("amber"), bold: true, children: "\u26A0 Press Ctrl+C again to exit" }),
342
+ /* @__PURE__ */ jsx(Text, { color: tone("dim"), children: " (or press any key to cancel)" })
333
343
  ] }),
334
- !hideChrome && /* @__PURE__ */ jsx(
344
+ !signal && !hideChrome && /* @__PURE__ */ jsx(
335
345
  Footer,
336
346
  {
337
347
  agent,
@@ -33,11 +33,12 @@ var import_QueuedMessagesDisplay = require("../chat/QueuedMessagesDisplay.js");
33
33
  var import_StatusBar = require("../StatusBar.js");
34
34
  var import_HistorySearchBar = require("../HistorySearchBar.js");
35
35
  var import_Footer = require("../Footer.js");
36
+ var import_DeckArea = require("../DeckArea.js");
36
37
  var import_TodoPanel = require("../TodoPanel.js");
37
- var import_BackgroundTasksPanel = require("../BackgroundTasksPanel.js");
38
38
  var import_InputContainer = require("../../containers/InputContainer.js");
39
39
  var import_OverlayContainer = require("../../containers/OverlayContainer.js");
40
40
  var import_overlayPresentation = require("../../utils/overlayPresentation.js");
41
+ var import_signal = require("../../signal/index.js");
41
42
  const CLEAR_TERMINAL = "\x1B[2J\x1B[3J\x1B[H";
42
43
  function StaticCLI({
43
44
  agent,
@@ -84,6 +85,7 @@ function StaticCLI({
84
85
  // No keyboard scroll handler - let terminal handle scrollback
85
86
  });
86
87
  const branchName = (0, import_useGitBranch.useGitBranch)();
88
+ const signal = (0, import_signal.useCaps)().palette === "signal";
87
89
  const { write: stdoutWrite } = (0, import_ink.useStdout)();
88
90
  const { columns: terminalWidth } = (0, import_useTerminalSize.useTerminalSize)();
89
91
  const [staticRemountKey, setStaticRemountKey] = (0, import_react.useState)(0);
@@ -116,13 +118,14 @@ function StaticCLI({
116
118
  isInitialMount.current = false;
117
119
  return;
118
120
  }
121
+ if (signal) return;
119
122
  const handler = setTimeout(() => {
120
123
  refreshStatic();
121
124
  }, 300);
122
125
  return () => {
123
126
  clearTimeout(handler);
124
127
  };
125
- }, [terminalWidth, refreshStatic]);
128
+ }, [terminalWidth, refreshStatic, signal]);
126
129
  (0, import_react.useEffect)(() => {
127
130
  if (isInitialShowReasoningMount.current) {
128
131
  isInitialShowReasoningMount.current = false;
@@ -162,6 +165,36 @@ function StaticCLI({
162
165
  terminalWidth,
163
166
  ui.showReasoning
164
167
  ]);
168
+ const inputArea = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
169
+ import_InputContainer.InputContainer,
170
+ {
171
+ ref: inputContainerRef,
172
+ buffer,
173
+ input,
174
+ ui,
175
+ session,
176
+ initialPrompt,
177
+ isHydratingHistory,
178
+ approval,
179
+ steerMessages,
180
+ queuedMessages,
181
+ setInput,
182
+ setUi,
183
+ setSession,
184
+ setMessages,
185
+ setPendingMessages,
186
+ setDequeuedBuffer,
187
+ setSteerMessages,
188
+ setQueuedMessages,
189
+ setApproval,
190
+ setApprovalQueue,
191
+ setTodos,
192
+ agent,
193
+ inputService,
194
+ useStreaming,
195
+ configFilePath
196
+ }
197
+ );
165
198
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_ink.Box, { flexDirection: "column", width: terminalWidth, children: [
166
199
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ink.Static, { items: staticItems, children: (item) => item }, staticRemountKey),
167
200
  pendingMessages.map((message) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
@@ -187,7 +220,7 @@ function StaticCLI({
187
220
  const hideChrome = (0, import_overlayPresentation.shouldHideStatusChrome)(ui.activeOverlay, approval);
188
221
  if (hideChrome) return null;
189
222
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
190
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
223
+ (!signal || ui.copyModeEnabled) && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
191
224
  import_StatusBar.StatusBar,
192
225
  {
193
226
  agent,
@@ -200,16 +233,7 @@ function StaticCLI({
200
233
  todoExpanded: ui.todoExpanded,
201
234
  hasTodos: todos.some((t) => t.status !== "completed"),
202
235
  planModeActive: ui.planModeActive,
203
- autoApproveEdits: ui.autoApproveEdits,
204
- backgroundTasksRunning: ui.backgroundTasksRunning
205
- }
206
- ),
207
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
208
- import_BackgroundTasksPanel.BackgroundTasksPanel,
209
- {
210
- tasks: ui.backgroundTasks,
211
- isExpanded: ui.backgroundTasksExpanded,
212
- isProcessing: ui.isProcessing
236
+ autoApproveEdits: ui.autoApproveEdits
213
237
  }
214
238
  ),
215
239
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
@@ -238,36 +262,23 @@ function StaticCLI({
238
262
  )
239
263
  ] });
240
264
  })(),
241
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
242
- import_InputContainer.InputContainer,
265
+ signal ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
266
+ import_DeckArea.DeckArea,
243
267
  {
244
- ref: inputContainerRef,
245
- buffer,
246
- input,
268
+ agent,
269
+ sessionId: session.id,
270
+ modelName: session.modelName,
247
271
  ui,
248
- session,
249
- initialPrompt,
250
- isHydratingHistory,
251
272
  approval,
252
- steerMessages,
253
- queuedMessages,
254
- setInput,
255
- setUi,
256
- setSession,
257
- setMessages,
258
- setPendingMessages,
259
- setDequeuedBuffer,
260
- setSteerMessages,
261
- setQueuedMessages,
262
- setApproval,
263
- setApprovalQueue,
264
- setTodos,
265
- agent,
266
- inputService,
267
- useStreaming,
268
- configFilePath
273
+ pendingMessages,
274
+ steerCount: steerMessages.length,
275
+ branch: branchName ?? null,
276
+ cwd: process.cwd(),
277
+ isShellMode: buffer.text.startsWith("!"),
278
+ chatgptRateLimitStatus: ui.chatgptRateLimitStatus,
279
+ children: inputArea
269
280
  }
270
- ),
281
+ ) : inputArea,
271
282
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
272
283
  import_OverlayContainer.OverlayContainer,
273
284
  {
@@ -291,10 +302,10 @@ function StaticCLI({
291
302
  }
292
303
  ),
293
304
  !(0, import_overlayPresentation.shouldHideStatusChrome)(ui.activeOverlay, approval) && ui.exitWarningShown && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_ink.Box, { paddingX: 1, children: [
294
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ink.Text, { color: "yellowBright", bold: true, children: "\u26A0 Press Ctrl+C again to exit" }),
295
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ink.Text, { color: "gray", children: " (or press any key to cancel)" })
305
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ink.Text, { color: (0, import_signal.tone)("amber"), bold: true, children: "\u26A0 Press Ctrl+C again to exit" }),
306
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ink.Text, { color: (0, import_signal.tone)("dim"), children: " (or press any key to cancel)" })
296
307
  ] }),
297
- !(0, import_overlayPresentation.shouldHideStatusChrome)(ui.activeOverlay, approval) && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
308
+ !signal && !(0, import_overlayPresentation.shouldHideStatusChrome)(ui.activeOverlay, approval) && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
298
309
  import_Footer.Footer,
299
310
  {
300
311
  agent,
@@ -1 +1 @@
1
- {"version":3,"file":"StaticCLI.d.ts","sourceRoot":"","sources":["../../../src/components/modes/StaticCLI.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAM9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAsBxD,UAAU,cAAc;IACpB,KAAK,EAAE,eAAe,CAAC;IACvB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,6DAA6D;IAC7D,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,SAAS,CAAC,EACtB,KAAK,EACL,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,cAAc,EACd,wBAAgC,EAChC,YAAmB,GACtB,EAAE,cAAc,2CA2ShB"}
1
+ {"version":3,"file":"StaticCLI.d.ts","sourceRoot":"","sources":["../../../src/components/modes/StaticCLI.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAM9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAuBxD,UAAU,cAAc;IACpB,KAAK,EAAE,eAAe,CAAC;IACvB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,WAAW,EAAE,WAAW,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,6DAA6D;IAC7D,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,SAAS,CAAC,EACtB,KAAK,EACL,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,cAAc,EACd,wBAAgC,EAChC,YAAmB,GACtB,EAAE,cAAc,2CAiUhB"}
@@ -11,11 +11,12 @@ import { QUEUE_EDIT_SHORTCUTS, QueuedMessagesDisplay } from "../chat/QueuedMessa
11
11
  import { StatusBar } from "../StatusBar.js";
12
12
  import { HistorySearchBar } from "../HistorySearchBar.js";
13
13
  import { Footer } from "../Footer.js";
14
+ import { DeckArea } from "../DeckArea.js";
14
15
  import { TodoPanel } from "../TodoPanel.js";
15
- import { BackgroundTasksPanel } from "../BackgroundTasksPanel.js";
16
16
  import { InputContainer } from "../../containers/InputContainer.js";
17
17
  import { OverlayContainer } from "../../containers/OverlayContainer.js";
18
18
  import { shouldHideStatusChrome } from "../../utils/overlayPresentation.js";
19
+ import { tone, useCaps } from "../../signal/index.js";
19
20
  function StaticCLI({
20
21
  agent,
21
22
  initialSessionId,
@@ -61,6 +62,7 @@ function StaticCLI({
61
62
  // No keyboard scroll handler - let terminal handle scrollback
62
63
  });
63
64
  const branchName = useGitBranch();
65
+ const signal = useCaps().palette === "signal";
64
66
  const { write: stdoutWrite } = useStdout();
65
67
  const { columns: terminalWidth } = useTerminalSize();
66
68
  const [staticRemountKey, setStaticRemountKey] = useState(0);
@@ -93,13 +95,14 @@ function StaticCLI({
93
95
  isInitialMount.current = false;
94
96
  return;
95
97
  }
98
+ if (signal) return;
96
99
  const handler = setTimeout(() => {
97
100
  refreshStatic();
98
101
  }, 300);
99
102
  return () => {
100
103
  clearTimeout(handler);
101
104
  };
102
- }, [terminalWidth, refreshStatic]);
105
+ }, [terminalWidth, refreshStatic, signal]);
103
106
  useEffect(() => {
104
107
  if (isInitialShowReasoningMount.current) {
105
108
  isInitialShowReasoningMount.current = false;
@@ -139,6 +142,36 @@ function StaticCLI({
139
142
  terminalWidth,
140
143
  ui.showReasoning
141
144
  ]);
145
+ const inputArea = /* @__PURE__ */ jsx(
146
+ InputContainer,
147
+ {
148
+ ref: inputContainerRef,
149
+ buffer,
150
+ input,
151
+ ui,
152
+ session,
153
+ initialPrompt,
154
+ isHydratingHistory,
155
+ approval,
156
+ steerMessages,
157
+ queuedMessages,
158
+ setInput,
159
+ setUi,
160
+ setSession,
161
+ setMessages,
162
+ setPendingMessages,
163
+ setDequeuedBuffer,
164
+ setSteerMessages,
165
+ setQueuedMessages,
166
+ setApproval,
167
+ setApprovalQueue,
168
+ setTodos,
169
+ agent,
170
+ inputService,
171
+ useStreaming,
172
+ configFilePath
173
+ }
174
+ );
142
175
  return /* @__PURE__ */ jsxs(Box, { flexDirection: "column", width: terminalWidth, children: [
143
176
  /* @__PURE__ */ jsx(Static, { items: staticItems, children: (item) => item }, staticRemountKey),
144
177
  pendingMessages.map((message) => /* @__PURE__ */ jsx(
@@ -164,7 +197,7 @@ function StaticCLI({
164
197
  const hideChrome = shouldHideStatusChrome(ui.activeOverlay, approval);
165
198
  if (hideChrome) return null;
166
199
  return /* @__PURE__ */ jsxs(Fragment, { children: [
167
- /* @__PURE__ */ jsx(
200
+ (!signal || ui.copyModeEnabled) && /* @__PURE__ */ jsx(
168
201
  StatusBar,
169
202
  {
170
203
  agent,
@@ -177,16 +210,7 @@ function StaticCLI({
177
210
  todoExpanded: ui.todoExpanded,
178
211
  hasTodos: todos.some((t) => t.status !== "completed"),
179
212
  planModeActive: ui.planModeActive,
180
- autoApproveEdits: ui.autoApproveEdits,
181
- backgroundTasksRunning: ui.backgroundTasksRunning
182
- }
183
- ),
184
- /* @__PURE__ */ jsx(
185
- BackgroundTasksPanel,
186
- {
187
- tasks: ui.backgroundTasks,
188
- isExpanded: ui.backgroundTasksExpanded,
189
- isProcessing: ui.isProcessing
213
+ autoApproveEdits: ui.autoApproveEdits
190
214
  }
191
215
  ),
192
216
  /* @__PURE__ */ jsx(
@@ -215,36 +239,23 @@ function StaticCLI({
215
239
  )
216
240
  ] });
217
241
  })(),
218
- /* @__PURE__ */ jsx(
219
- InputContainer,
242
+ signal ? /* @__PURE__ */ jsx(
243
+ DeckArea,
220
244
  {
221
- ref: inputContainerRef,
222
- buffer,
223
- input,
245
+ agent,
246
+ sessionId: session.id,
247
+ modelName: session.modelName,
224
248
  ui,
225
- session,
226
- initialPrompt,
227
- isHydratingHistory,
228
249
  approval,
229
- steerMessages,
230
- queuedMessages,
231
- setInput,
232
- setUi,
233
- setSession,
234
- setMessages,
235
- setPendingMessages,
236
- setDequeuedBuffer,
237
- setSteerMessages,
238
- setQueuedMessages,
239
- setApproval,
240
- setApprovalQueue,
241
- setTodos,
242
- agent,
243
- inputService,
244
- useStreaming,
245
- configFilePath
250
+ pendingMessages,
251
+ steerCount: steerMessages.length,
252
+ branch: branchName ?? null,
253
+ cwd: process.cwd(),
254
+ isShellMode: buffer.text.startsWith("!"),
255
+ chatgptRateLimitStatus: ui.chatgptRateLimitStatus,
256
+ children: inputArea
246
257
  }
247
- ),
258
+ ) : inputArea,
248
259
  /* @__PURE__ */ jsx(
249
260
  OverlayContainer,
250
261
  {
@@ -268,10 +279,10 @@ function StaticCLI({
268
279
  }
269
280
  ),
270
281
  !shouldHideStatusChrome(ui.activeOverlay, approval) && ui.exitWarningShown && /* @__PURE__ */ jsxs(Box, { paddingX: 1, children: [
271
- /* @__PURE__ */ jsx(Text, { color: "yellowBright", bold: true, children: "\u26A0 Press Ctrl+C again to exit" }),
272
- /* @__PURE__ */ jsx(Text, { color: "gray", children: " (or press any key to cancel)" })
282
+ /* @__PURE__ */ jsx(Text, { color: tone("amber"), bold: true, children: "\u26A0 Press Ctrl+C again to exit" }),
283
+ /* @__PURE__ */ jsx(Text, { color: tone("dim"), children: " (or press any key to cancel)" })
273
284
  ] }),
274
- !shouldHideStatusChrome(ui.activeOverlay, approval) && /* @__PURE__ */ jsx(
285
+ !signal && !shouldHideStatusChrome(ui.activeOverlay, approval) && /* @__PURE__ */ jsx(
275
286
  Footer,
276
287
  {
277
288
  agent,