@nanocollective/nanocoder 1.22.5 → 1.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (590) hide show
  1. package/LICENSE.md +1 -15
  2. package/README.md +25 -821
  3. package/assets/nanocoder-vscode.vsix +0 -0
  4. package/dist/ai-sdk-client/ai-sdk-client.d.ts +3 -2
  5. package/dist/ai-sdk-client/ai-sdk-client.d.ts.map +1 -1
  6. package/dist/ai-sdk-client/ai-sdk-client.js +16 -2
  7. package/dist/ai-sdk-client/ai-sdk-client.js.map +1 -1
  8. package/dist/ai-sdk-client/chat/chat-handler.d.ts +2 -1
  9. package/dist/ai-sdk-client/chat/chat-handler.d.ts.map +1 -1
  10. package/dist/ai-sdk-client/chat/chat-handler.js +37 -70
  11. package/dist/ai-sdk-client/chat/chat-handler.js.map +1 -1
  12. package/dist/ai-sdk-client/chat/streaming-handler.d.ts +2 -2
  13. package/dist/ai-sdk-client/chat/streaming-handler.d.ts.map +1 -1
  14. package/dist/ai-sdk-client/chat/streaming-handler.js +4 -23
  15. package/dist/ai-sdk-client/chat/streaming-handler.js.map +1 -1
  16. package/dist/ai-sdk-client/error-handling/error-parser.d.ts.map +1 -1
  17. package/dist/ai-sdk-client/error-handling/error-parser.js +11 -3
  18. package/dist/ai-sdk-client/error-handling/error-parser.js.map +1 -1
  19. package/dist/ai-sdk-client/providers/provider-factory.d.ts +2 -1
  20. package/dist/ai-sdk-client/providers/provider-factory.d.ts.map +1 -1
  21. package/dist/ai-sdk-client/providers/provider-factory.js +55 -0
  22. package/dist/ai-sdk-client/providers/provider-factory.js.map +1 -1
  23. package/dist/app/App.d.ts +1 -1
  24. package/dist/app/App.d.ts.map +1 -1
  25. package/dist/app/App.js +148 -37
  26. package/dist/app/App.js.map +1 -1
  27. package/dist/app/components/chat-input.d.ts +9 -1
  28. package/dist/app/components/chat-input.d.ts.map +1 -1
  29. package/dist/app/components/chat-input.js +11 -8
  30. package/dist/app/components/chat-input.js.map +1 -1
  31. package/dist/app/components/modal-selectors.d.ts +6 -7
  32. package/dist/app/components/modal-selectors.d.ts.map +1 -1
  33. package/dist/app/components/modal-selectors.js +11 -7
  34. package/dist/app/components/modal-selectors.js.map +1 -1
  35. package/dist/app/components/settings-selector.d.ts.map +1 -1
  36. package/dist/app/components/settings-selector.js +3 -3
  37. package/dist/app/components/settings-selector.js.map +1 -1
  38. package/dist/app/helpers.d.ts.map +1 -1
  39. package/dist/app/helpers.js +2 -4
  40. package/dist/app/helpers.js.map +1 -1
  41. package/dist/app/index.d.ts +0 -1
  42. package/dist/app/index.d.ts.map +1 -1
  43. package/dist/app/index.js +0 -1
  44. package/dist/app/index.js.map +1 -1
  45. package/dist/app/types.d.ts +2 -0
  46. package/dist/app/types.d.ts.map +1 -1
  47. package/dist/app/utils/app-util.d.ts +1 -0
  48. package/dist/app/utils/app-util.d.ts.map +1 -1
  49. package/dist/app/utils/app-util.js +69 -204
  50. package/dist/app/utils/app-util.js.map +1 -1
  51. package/dist/app/utils/handlers/compact-handler.d.ts +6 -0
  52. package/dist/app/utils/handlers/compact-handler.d.ts.map +1 -0
  53. package/dist/app/utils/handlers/compact-handler.js +148 -0
  54. package/dist/app/utils/handlers/compact-handler.js.map +1 -0
  55. package/dist/app/utils/handlers/context-max-handler.d.ts +11 -0
  56. package/dist/app/utils/handlers/context-max-handler.d.ts.map +1 -0
  57. package/dist/app/utils/handlers/context-max-handler.js +102 -0
  58. package/dist/app/utils/handlers/context-max-handler.js.map +1 -0
  59. package/dist/app/utils/handlers/create-handler.d.ts +17 -0
  60. package/dist/app/utils/handlers/create-handler.d.ts.map +1 -0
  61. package/dist/app/utils/handlers/create-handler.js +112 -0
  62. package/dist/app/utils/handlers/create-handler.js.map +1 -0
  63. package/dist/app/utils/handlers/session-handler.d.ts +8 -0
  64. package/dist/app/utils/handlers/session-handler.d.ts.map +1 -0
  65. package/dist/app/utils/handlers/session-handler.js +99 -0
  66. package/dist/app/utils/handlers/session-handler.js.map +1 -0
  67. package/dist/auth/github-copilot.d.ts +44 -0
  68. package/dist/auth/github-copilot.d.ts.map +1 -0
  69. package/dist/auth/github-copilot.js +178 -0
  70. package/dist/auth/github-copilot.js.map +1 -0
  71. package/dist/cli.js +64 -3
  72. package/dist/cli.js.map +1 -1
  73. package/dist/client-factory.d.ts +1 -1
  74. package/dist/client-factory.d.ts.map +1 -1
  75. package/dist/client-factory.js +42 -10
  76. package/dist/client-factory.js.map +1 -1
  77. package/dist/commands/compact.d.ts +1 -6
  78. package/dist/commands/compact.d.ts.map +1 -1
  79. package/dist/commands/compact.js +2 -13
  80. package/dist/commands/compact.js.map +1 -1
  81. package/dist/commands/context-max.d.ts +14 -0
  82. package/dist/commands/context-max.d.ts.map +1 -0
  83. package/dist/commands/context-max.js +15 -0
  84. package/dist/commands/context-max.js.map +1 -0
  85. package/dist/commands/copilot-login-command.d.ts +3 -0
  86. package/dist/commands/copilot-login-command.d.ts.map +1 -0
  87. package/dist/commands/copilot-login-command.js +9 -0
  88. package/dist/commands/copilot-login-command.js.map +1 -0
  89. package/dist/commands/copilot-login.d.ts +9 -0
  90. package/dist/commands/copilot-login.d.ts.map +1 -0
  91. package/dist/commands/copilot-login.js +70 -0
  92. package/dist/commands/copilot-login.js.map +1 -0
  93. package/dist/commands/create-stub-command.d.ts +8 -0
  94. package/dist/commands/create-stub-command.d.ts.map +1 -0
  95. package/dist/commands/create-stub-command.js +14 -0
  96. package/dist/commands/create-stub-command.js.map +1 -0
  97. package/dist/commands/custom-commands.d.ts.map +1 -1
  98. package/dist/commands/custom-commands.js +88 -4
  99. package/dist/commands/custom-commands.js.map +1 -1
  100. package/dist/commands/exit.d.ts.map +1 -1
  101. package/dist/commands/exit.js +5 -8
  102. package/dist/commands/exit.js.map +1 -1
  103. package/dist/commands/explorer.d.ts +1 -2
  104. package/dist/commands/explorer.d.ts.map +1 -1
  105. package/dist/commands/explorer.js +2 -9
  106. package/dist/commands/explorer.js.map +1 -1
  107. package/dist/commands/help.d.ts.map +1 -1
  108. package/dist/commands/help.js +1 -1
  109. package/dist/commands/help.js.map +1 -1
  110. package/dist/commands/ide.d.ts +2 -0
  111. package/dist/commands/ide.d.ts.map +1 -0
  112. package/dist/commands/ide.js +3 -0
  113. package/dist/commands/ide.js.map +1 -0
  114. package/dist/commands/index.d.ts +5 -0
  115. package/dist/commands/index.d.ts.map +1 -1
  116. package/dist/commands/index.js +5 -0
  117. package/dist/commands/index.js.map +1 -1
  118. package/dist/commands/init.d.ts.map +1 -1
  119. package/dist/commands/init.js +2 -1
  120. package/dist/commands/init.js.map +1 -1
  121. package/dist/commands/model.d.ts +1 -2
  122. package/dist/commands/model.d.ts.map +1 -1
  123. package/dist/commands/model.js +2 -10
  124. package/dist/commands/model.js.map +1 -1
  125. package/dist/commands/provider.d.ts +1 -2
  126. package/dist/commands/provider.d.ts.map +1 -1
  127. package/dist/commands/provider.js +2 -10
  128. package/dist/commands/provider.js.map +1 -1
  129. package/dist/commands/resume.d.ts +8 -0
  130. package/dist/commands/resume.d.ts.map +1 -0
  131. package/dist/commands/resume.js +11 -0
  132. package/dist/commands/resume.js.map +1 -0
  133. package/dist/commands/schedule.d.ts +3 -0
  134. package/dist/commands/schedule.d.ts.map +1 -0
  135. package/dist/commands/schedule.js +177 -0
  136. package/dist/commands/schedule.js.map +1 -0
  137. package/dist/commands/settings.d.ts +1 -2
  138. package/dist/commands/settings.d.ts.map +1 -1
  139. package/dist/commands/settings.js +2 -10
  140. package/dist/commands/settings.js.map +1 -1
  141. package/dist/commands/status.d.ts +1 -2
  142. package/dist/commands/status.d.ts.map +1 -1
  143. package/dist/commands/status.js +2 -10
  144. package/dist/commands/status.js.map +1 -1
  145. package/dist/commands/usage.d.ts.map +1 -1
  146. package/dist/commands/usage.js +4 -3
  147. package/dist/commands/usage.js.map +1 -1
  148. package/dist/components/assistant-message.d.ts.map +1 -1
  149. package/dist/components/assistant-message.js +2 -27
  150. package/dist/components/assistant-message.js.map +1 -1
  151. package/dist/components/development-mode-indicator.d.ts +3 -2
  152. package/dist/components/development-mode-indicator.d.ts.map +1 -1
  153. package/dist/components/development-mode-indicator.js +23 -9
  154. package/dist/components/development-mode-indicator.js.map +1 -1
  155. package/dist/components/ide-selector.d.ts +7 -0
  156. package/dist/components/ide-selector.d.ts.map +1 -0
  157. package/dist/components/ide-selector.js +17 -0
  158. package/dist/components/ide-selector.js.map +1 -0
  159. package/dist/components/provider-selector.d.ts.map +1 -1
  160. package/dist/components/provider-selector.js +4 -3
  161. package/dist/components/provider-selector.js.map +1 -1
  162. package/dist/components/question-prompt.d.ts +8 -0
  163. package/dist/components/question-prompt.d.ts.map +1 -0
  164. package/dist/components/question-prompt.js +58 -0
  165. package/dist/components/question-prompt.js.map +1 -0
  166. package/dist/components/scheduler-view.d.ts +14 -0
  167. package/dist/components/scheduler-view.d.ts.map +1 -0
  168. package/dist/components/scheduler-view.js +17 -0
  169. package/dist/components/scheduler-view.js.map +1 -0
  170. package/dist/components/session-selector.d.ts +12 -0
  171. package/dist/components/session-selector.d.ts.map +1 -0
  172. package/dist/components/session-selector.js +108 -0
  173. package/dist/components/session-selector.js.map +1 -0
  174. package/dist/components/text-input.d.ts +13 -0
  175. package/dist/components/text-input.d.ts.map +1 -0
  176. package/dist/components/text-input.js +175 -0
  177. package/dist/components/text-input.js.map +1 -0
  178. package/dist/components/tool-confirmation.d.ts.map +1 -1
  179. package/dist/components/tool-confirmation.js +9 -6
  180. package/dist/components/tool-confirmation.js.map +1 -1
  181. package/dist/components/ui/styled-title.js +2 -2
  182. package/dist/components/ui/styled-title.js.map +1 -1
  183. package/dist/components/user-input.d.ts +4 -1
  184. package/dist/components/user-input.d.ts.map +1 -1
  185. package/dist/components/user-input.js +29 -24
  186. package/dist/components/user-input.js.map +1 -1
  187. package/dist/components/user-message.d.ts.map +1 -1
  188. package/dist/components/user-message.js +1 -23
  189. package/dist/components/user-message.js.map +1 -1
  190. package/dist/components/vscode-extension-prompt.d.ts +6 -1
  191. package/dist/components/vscode-extension-prompt.d.ts.map +1 -1
  192. package/dist/components/vscode-extension-prompt.js +80 -36
  193. package/dist/components/vscode-extension-prompt.js.map +1 -1
  194. package/dist/config/copilot-credentials.d.ts +27 -0
  195. package/dist/config/copilot-credentials.d.ts.map +1 -0
  196. package/dist/config/copilot-credentials.js +81 -0
  197. package/dist/config/copilot-credentials.js.map +1 -0
  198. package/dist/config/index.d.ts +0 -2
  199. package/dist/config/index.d.ts.map +1 -1
  200. package/dist/config/index.js +63 -27
  201. package/dist/config/index.js.map +1 -1
  202. package/dist/config/mcp-config-loader.d.ts +2 -3
  203. package/dist/config/mcp-config-loader.d.ts.map +1 -1
  204. package/dist/config/mcp-config-loader.js +136 -181
  205. package/dist/config/mcp-config-loader.js.map +1 -1
  206. package/dist/config/nanocoder-tools-config.js +2 -2
  207. package/dist/config/nanocoder-tools-config.js.map +1 -1
  208. package/dist/config/themes.d.ts.map +1 -1
  209. package/dist/config/themes.js +9 -746
  210. package/dist/config/themes.js.map +1 -1
  211. package/dist/config/validation.d.ts.map +1 -1
  212. package/dist/config/validation.js +0 -19
  213. package/dist/config/validation.js.map +1 -1
  214. package/dist/custom-commands/command-integration.d.ts +24 -0
  215. package/dist/custom-commands/command-integration.d.ts.map +1 -0
  216. package/dist/custom-commands/command-integration.js +68 -0
  217. package/dist/custom-commands/command-integration.js.map +1 -0
  218. package/dist/custom-commands/executor.d.ts.map +1 -1
  219. package/dist/custom-commands/executor.js +12 -2
  220. package/dist/custom-commands/executor.js.map +1 -1
  221. package/dist/custom-commands/loader.d.ts +33 -5
  222. package/dist/custom-commands/loader.d.ts.map +1 -1
  223. package/dist/custom-commands/loader.js +191 -18
  224. package/dist/custom-commands/loader.js.map +1 -1
  225. package/dist/custom-commands/parser.d.ts.map +1 -1
  226. package/dist/custom-commands/parser.js +106 -48
  227. package/dist/custom-commands/parser.js.map +1 -1
  228. package/dist/hooks/chat-handler/conversation/conversation-loop.d.ts +6 -1
  229. package/dist/hooks/chat-handler/conversation/conversation-loop.d.ts.map +1 -1
  230. package/dist/hooks/chat-handler/conversation/conversation-loop.js +89 -76
  231. package/dist/hooks/chat-handler/conversation/conversation-loop.js.map +1 -1
  232. package/dist/hooks/chat-handler/conversation/tool-executor.d.ts +7 -2
  233. package/dist/hooks/chat-handler/conversation/tool-executor.d.ts.map +1 -1
  234. package/dist/hooks/chat-handler/conversation/tool-executor.js +109 -41
  235. package/dist/hooks/chat-handler/conversation/tool-executor.js.map +1 -1
  236. package/dist/hooks/chat-handler/types.d.ts +6 -1
  237. package/dist/hooks/chat-handler/types.d.ts.map +1 -1
  238. package/dist/hooks/chat-handler/useChatHandler.d.ts +1 -1
  239. package/dist/hooks/chat-handler/useChatHandler.d.ts.map +1 -1
  240. package/dist/hooks/chat-handler/useChatHandler.js +19 -5
  241. package/dist/hooks/chat-handler/useChatHandler.js.map +1 -1
  242. package/dist/hooks/useAppHandlers.d.ts +10 -1
  243. package/dist/hooks/useAppHandlers.d.ts.map +1 -1
  244. package/dist/hooks/useAppHandlers.js +124 -13
  245. package/dist/hooks/useAppHandlers.js.map +1 -1
  246. package/dist/hooks/useAppInitialization.d.ts +5 -3
  247. package/dist/hooks/useAppInitialization.d.ts.map +1 -1
  248. package/dist/hooks/useAppInitialization.js +54 -30
  249. package/dist/hooks/useAppInitialization.js.map +1 -1
  250. package/dist/hooks/useAppState.d.ts +27 -7
  251. package/dist/hooks/useAppState.d.ts.map +1 -1
  252. package/dist/hooks/useAppState.js +54 -22
  253. package/dist/hooks/useAppState.js.map +1 -1
  254. package/dist/hooks/useContextPercentage.d.ts +17 -0
  255. package/dist/hooks/useContextPercentage.d.ts.map +1 -0
  256. package/dist/hooks/useContextPercentage.js +71 -0
  257. package/dist/hooks/useContextPercentage.js.map +1 -0
  258. package/dist/hooks/useModeHandlers.d.ts +9 -12
  259. package/dist/hooks/useModeHandlers.d.ts.map +1 -1
  260. package/dist/hooks/useModeHandlers.js +31 -91
  261. package/dist/hooks/useModeHandlers.js.map +1 -1
  262. package/dist/hooks/useNonInteractiveMode.d.ts +7 -0
  263. package/dist/hooks/useNonInteractiveMode.d.ts.map +1 -1
  264. package/dist/hooks/useNonInteractiveMode.js +42 -3
  265. package/dist/hooks/useNonInteractiveMode.js.map +1 -1
  266. package/dist/hooks/useSchedulerMode.d.ts +30 -0
  267. package/dist/hooks/useSchedulerMode.d.ts.map +1 -0
  268. package/dist/hooks/useSchedulerMode.js +99 -0
  269. package/dist/hooks/useSchedulerMode.js.map +1 -0
  270. package/dist/hooks/useSessionAutosave.d.ts +16 -0
  271. package/dist/hooks/useSessionAutosave.d.ts.map +1 -0
  272. package/dist/hooks/useSessionAutosave.js +133 -0
  273. package/dist/hooks/useSessionAutosave.js.map +1 -0
  274. package/dist/hooks/useToolHandler.d.ts +2 -1
  275. package/dist/hooks/useToolHandler.d.ts.map +1 -1
  276. package/dist/hooks/useToolHandler.js +9 -3
  277. package/dist/hooks/useToolHandler.js.map +1 -1
  278. package/dist/lsp/lsp-manager.d.ts.map +1 -1
  279. package/dist/lsp/lsp-manager.js +10 -0
  280. package/dist/lsp/lsp-manager.js.map +1 -1
  281. package/dist/mcp/mcp-client.d.ts.map +1 -1
  282. package/dist/mcp/mcp-client.js +23 -3
  283. package/dist/mcp/mcp-client.js.map +1 -1
  284. package/dist/mcp/transport-factory.d.ts.map +1 -1
  285. package/dist/mcp/transport-factory.js +4 -36
  286. package/dist/mcp/transport-factory.js.map +1 -1
  287. package/dist/models/index.d.ts +1 -1
  288. package/dist/models/index.d.ts.map +1 -1
  289. package/dist/models/index.js +1 -1
  290. package/dist/models/index.js.map +1 -1
  291. package/dist/models/models-dev-client.d.ts +8 -1
  292. package/dist/models/models-dev-client.d.ts.map +1 -1
  293. package/dist/models/models-dev-client.js +71 -15
  294. package/dist/models/models-dev-client.js.map +1 -1
  295. package/dist/schedule/cron.d.ts +14 -0
  296. package/dist/schedule/cron.d.ts.map +1 -0
  297. package/dist/schedule/cron.js +107 -0
  298. package/dist/schedule/cron.js.map +1 -0
  299. package/dist/schedule/index.d.ts +4 -0
  300. package/dist/schedule/index.d.ts.map +1 -0
  301. package/dist/schedule/index.js +4 -0
  302. package/dist/schedule/index.js.map +1 -0
  303. package/dist/schedule/runner.d.ts +42 -0
  304. package/dist/schedule/runner.d.ts.map +1 -0
  305. package/dist/schedule/runner.js +136 -0
  306. package/dist/schedule/runner.js.map +1 -0
  307. package/dist/schedule/storage.d.ts +9 -0
  308. package/dist/schedule/storage.d.ts.map +1 -0
  309. package/dist/schedule/storage.js +68 -0
  310. package/dist/schedule/storage.js.map +1 -0
  311. package/dist/schedule/types.d.ts +24 -0
  312. package/dist/schedule/types.d.ts.map +1 -0
  313. package/dist/schedule/types.js +2 -0
  314. package/dist/schedule/types.js.map +1 -0
  315. package/dist/services/bash-executor.d.ts.map +1 -1
  316. package/dist/services/bash-executor.js +5 -0
  317. package/dist/services/bash-executor.js.map +1 -1
  318. package/dist/session/session-manager.d.ts +57 -0
  319. package/dist/session/session-manager.d.ts.map +1 -0
  320. package/dist/session/session-manager.js +361 -0
  321. package/dist/session/session-manager.js.map +1 -0
  322. package/dist/test-utils/render-with-theme.d.ts.map +1 -1
  323. package/dist/test-utils/render-with-theme.js +2 -1
  324. package/dist/test-utils/render-with-theme.js.map +1 -1
  325. package/dist/tool-calling/tool-parser.d.ts +4 -3
  326. package/dist/tool-calling/tool-parser.d.ts.map +1 -1
  327. package/dist/tool-calling/tool-parser.js +17 -34
  328. package/dist/tool-calling/tool-parser.js.map +1 -1
  329. package/dist/tool-calling/xml-parser.d.ts +8 -4
  330. package/dist/tool-calling/xml-parser.d.ts.map +1 -1
  331. package/dist/tool-calling/xml-parser.js +15 -5
  332. package/dist/tool-calling/xml-parser.js.map +1 -1
  333. package/dist/tools/ask-question.d.ts +3 -0
  334. package/dist/tools/ask-question.d.ts.map +1 -0
  335. package/dist/tools/ask-question.js +66 -0
  336. package/dist/tools/ask-question.js.map +1 -0
  337. package/dist/tools/execute-bash.d.ts.map +1 -1
  338. package/dist/tools/execute-bash.js +6 -1
  339. package/dist/tools/execute-bash.js.map +1 -1
  340. package/dist/tools/fetch-url.d.ts.map +1 -1
  341. package/dist/tools/fetch-url.js +11 -2
  342. package/dist/tools/fetch-url.js.map +1 -1
  343. package/dist/tools/file-ops/copy-file.d.ts +3 -0
  344. package/dist/tools/file-ops/copy-file.d.ts.map +1 -0
  345. package/dist/tools/file-ops/copy-file.js +96 -0
  346. package/dist/tools/file-ops/copy-file.js.map +1 -0
  347. package/dist/tools/file-ops/create-directory.d.ts +3 -0
  348. package/dist/tools/file-ops/create-directory.d.ts.map +1 -0
  349. package/dist/tools/file-ops/create-directory.js +59 -0
  350. package/dist/tools/file-ops/create-directory.js.map +1 -0
  351. package/dist/tools/file-ops/delete-file.d.ts +3 -0
  352. package/dist/tools/file-ops/delete-file.d.ts.map +1 -0
  353. package/dist/tools/file-ops/delete-file.js +74 -0
  354. package/dist/tools/file-ops/delete-file.js.map +1 -0
  355. package/dist/tools/file-ops/index.d.ts +3 -0
  356. package/dist/tools/file-ops/index.d.ts.map +1 -0
  357. package/dist/tools/file-ops/index.js +8 -0
  358. package/dist/tools/file-ops/index.js.map +1 -0
  359. package/dist/tools/file-ops/move-file.d.ts +3 -0
  360. package/dist/tools/file-ops/move-file.d.ts.map +1 -0
  361. package/dist/tools/file-ops/move-file.js +96 -0
  362. package/dist/tools/file-ops/move-file.js.map +1 -0
  363. package/dist/tools/file-ops/string-replace-preview.d.ts +10 -0
  364. package/dist/tools/file-ops/string-replace-preview.d.ts.map +1 -0
  365. package/dist/tools/file-ops/string-replace-preview.js +171 -0
  366. package/dist/tools/file-ops/string-replace-preview.js.map +1 -0
  367. package/dist/tools/file-ops/string-replace.d.ts +3 -0
  368. package/dist/tools/file-ops/string-replace.d.ts.map +1 -0
  369. package/dist/tools/file-ops/string-replace.js +178 -0
  370. package/dist/tools/file-ops/string-replace.js.map +1 -0
  371. package/dist/tools/file-ops/write-file.d.ts +3 -0
  372. package/dist/tools/file-ops/write-file.d.ts.map +1 -0
  373. package/dist/tools/{write-file.js → file-ops/write-file.js} +34 -79
  374. package/dist/tools/file-ops/write-file.js.map +1 -0
  375. package/dist/tools/find-files.d.ts.map +1 -1
  376. package/dist/tools/find-files.js +1 -0
  377. package/dist/tools/find-files.js.map +1 -1
  378. package/dist/tools/git/git-diff.d.ts.map +1 -1
  379. package/dist/tools/git/git-diff.js +1 -0
  380. package/dist/tools/git/git-diff.js.map +1 -1
  381. package/dist/tools/git/git-log.d.ts.map +1 -1
  382. package/dist/tools/git/git-log.js +1 -0
  383. package/dist/tools/git/git-log.js.map +1 -1
  384. package/dist/tools/git/git-reset.js +1 -1
  385. package/dist/tools/git/git-reset.js.map +1 -1
  386. package/dist/tools/git/git-status.d.ts.map +1 -1
  387. package/dist/tools/git/git-status.js +1 -0
  388. package/dist/tools/git/git-status.js.map +1 -1
  389. package/dist/tools/git/index.js +3 -3
  390. package/dist/tools/git/index.js.map +1 -1
  391. package/dist/tools/git/utils.d.ts +4 -0
  392. package/dist/tools/git/utils.d.ts.map +1 -1
  393. package/dist/tools/git/utils.js +12 -0
  394. package/dist/tools/git/utils.js.map +1 -1
  395. package/dist/tools/index.d.ts +1 -0
  396. package/dist/tools/index.d.ts.map +1 -1
  397. package/dist/tools/index.js +15 -2
  398. package/dist/tools/index.js.map +1 -1
  399. package/dist/tools/list-directory.d.ts.map +1 -1
  400. package/dist/tools/list-directory.js +2 -1
  401. package/dist/tools/list-directory.js.map +1 -1
  402. package/dist/tools/lsp-get-diagnostics.d.ts.map +1 -1
  403. package/dist/tools/lsp-get-diagnostics.js +1 -5
  404. package/dist/tools/lsp-get-diagnostics.js.map +1 -1
  405. package/dist/tools/read-file.d.ts.map +1 -1
  406. package/dist/tools/read-file.js +1 -0
  407. package/dist/tools/read-file.js.map +1 -1
  408. package/dist/tools/search-file-contents.d.ts.map +1 -1
  409. package/dist/tools/search-file-contents.js +60 -10
  410. package/dist/tools/search-file-contents.js.map +1 -1
  411. package/dist/tools/tasks/list-tasks.d.ts.map +1 -1
  412. package/dist/tools/tasks/list-tasks.js +1 -0
  413. package/dist/tools/tasks/list-tasks.js.map +1 -1
  414. package/dist/tools/tool-manager.d.ts +10 -0
  415. package/dist/tools/tool-manager.d.ts.map +1 -1
  416. package/dist/tools/tool-manager.js +25 -2
  417. package/dist/tools/tool-manager.js.map +1 -1
  418. package/dist/tools/tool-registry.d.ts +9 -1
  419. package/dist/tools/tool-registry.d.ts.map +1 -1
  420. package/dist/tools/tool-registry.js +17 -1
  421. package/dist/tools/tool-registry.js.map +1 -1
  422. package/dist/tools/web-search.d.ts.map +1 -1
  423. package/dist/tools/web-search.js +1 -0
  424. package/dist/tools/web-search.js.map +1 -1
  425. package/dist/types/app.d.ts +5 -0
  426. package/dist/types/app.d.ts.map +1 -1
  427. package/dist/types/commands.d.ts +20 -1
  428. package/dist/types/commands.d.ts.map +1 -1
  429. package/dist/types/config.d.ts +11 -15
  430. package/dist/types/config.d.ts.map +1 -1
  431. package/dist/types/core.d.ts +15 -4
  432. package/dist/types/core.d.ts.map +1 -1
  433. package/dist/types/core.js +7 -0
  434. package/dist/types/core.js.map +1 -1
  435. package/dist/types/markdown-parser.d.ts +2 -10
  436. package/dist/types/markdown-parser.d.ts.map +1 -1
  437. package/dist/types/mcp.d.ts +2 -28
  438. package/dist/types/mcp.d.ts.map +1 -1
  439. package/dist/types/ui.d.ts +1 -1
  440. package/dist/types/ui.d.ts.map +1 -1
  441. package/dist/utils/ansi-truncate.d.ts +6 -0
  442. package/dist/utils/ansi-truncate.d.ts.map +1 -0
  443. package/dist/utils/ansi-truncate.js +39 -0
  444. package/dist/utils/ansi-truncate.js.map +1 -0
  445. package/dist/utils/auto-compact.d.ts.map +1 -1
  446. package/dist/utils/auto-compact.js +13 -7
  447. package/dist/utils/auto-compact.js.map +1 -1
  448. package/dist/utils/installation-detector.d.ts +6 -0
  449. package/dist/utils/installation-detector.d.ts.map +1 -1
  450. package/dist/utils/installation-detector.js +33 -19
  451. package/dist/utils/installation-detector.js.map +1 -1
  452. package/dist/utils/logging/health-monitor/checks/memory-check.d.ts.map +1 -1
  453. package/dist/utils/logging/health-monitor/checks/memory-check.js +2 -1
  454. package/dist/utils/logging/health-monitor/checks/memory-check.js.map +1 -1
  455. package/dist/utils/logging/health-monitor/core/health-monitor.d.ts.map +1 -1
  456. package/dist/utils/logging/health-monitor/core/health-monitor.js +3 -2
  457. package/dist/utils/logging/health-monitor/core/health-monitor.js.map +1 -1
  458. package/dist/utils/logging/index.d.ts.map +1 -1
  459. package/dist/utils/logging/index.js +18 -30
  460. package/dist/utils/logging/index.js.map +1 -1
  461. package/dist/utils/logging/performance.d.ts.map +1 -1
  462. package/dist/utils/logging/performance.js +21 -17
  463. package/dist/utils/logging/performance.js.map +1 -1
  464. package/dist/utils/logging/pino-logger.d.ts.map +1 -1
  465. package/dist/utils/logging/pino-logger.js +7 -8
  466. package/dist/utils/logging/pino-logger.js.map +1 -1
  467. package/dist/utils/logging/redaction.d.ts.map +1 -1
  468. package/dist/utils/logging/redaction.js +2 -0
  469. package/dist/utils/logging/redaction.js.map +1 -1
  470. package/dist/utils/logging/request-tracker.d.ts.map +1 -1
  471. package/dist/utils/logging/request-tracker.js +6 -5
  472. package/dist/utils/logging/request-tracker.js.map +1 -1
  473. package/dist/utils/logging/safe-process.d.ts +16 -0
  474. package/dist/utils/logging/safe-process.d.ts.map +1 -0
  475. package/dist/utils/logging/safe-process.js +37 -0
  476. package/dist/utils/logging/safe-process.js.map +1 -0
  477. package/dist/utils/logging/types.d.ts +0 -3
  478. package/dist/utils/logging/types.d.ts.map +1 -1
  479. package/dist/utils/message-builder.d.ts +0 -5
  480. package/dist/utils/message-builder.d.ts.map +1 -1
  481. package/dist/utils/message-builder.js +0 -8
  482. package/dist/utils/message-builder.js.map +1 -1
  483. package/dist/utils/path-validation.d.ts.map +1 -1
  484. package/dist/utils/path-validation.js +3 -1
  485. package/dist/utils/path-validation.js.map +1 -1
  486. package/dist/utils/path-validators.d.ts +16 -0
  487. package/dist/utils/path-validators.d.ts.map +1 -0
  488. package/dist/utils/path-validators.js +55 -0
  489. package/dist/utils/path-validators.js.map +1 -0
  490. package/dist/utils/question-queue.d.ts +15 -0
  491. package/dist/utils/question-queue.d.ts.map +1 -0
  492. package/dist/utils/question-queue.js +25 -0
  493. package/dist/utils/question-queue.js.map +1 -0
  494. package/dist/utils/response-formatter.d.ts +108 -0
  495. package/dist/utils/response-formatter.d.ts.map +1 -0
  496. package/dist/utils/response-formatter.js +372 -0
  497. package/dist/utils/response-formatter.js.map +1 -0
  498. package/dist/utils/shutdown/index.d.ts +7 -0
  499. package/dist/utils/shutdown/index.d.ts.map +1 -0
  500. package/dist/utils/shutdown/index.js +6 -0
  501. package/dist/utils/shutdown/index.js.map +1 -0
  502. package/dist/utils/shutdown/shutdown-manager.d.ts +19 -0
  503. package/dist/utils/shutdown/shutdown-manager.d.ts.map +1 -0
  504. package/dist/utils/shutdown/shutdown-manager.js +100 -0
  505. package/dist/utils/shutdown/shutdown-manager.js.map +1 -0
  506. package/dist/utils/shutdown/types.d.ts +9 -0
  507. package/dist/utils/shutdown/types.d.ts.map +1 -0
  508. package/dist/utils/shutdown/types.js +2 -0
  509. package/dist/utils/shutdown/types.js.map +1 -0
  510. package/dist/utils/text-wrapping.d.ts +8 -0
  511. package/dist/utils/text-wrapping.d.ts.map +1 -0
  512. package/dist/utils/text-wrapping.js +29 -0
  513. package/dist/utils/text-wrapping.js.map +1 -0
  514. package/dist/utils/tool-approval.d.ts +6 -0
  515. package/dist/utils/tool-approval.d.ts.map +1 -0
  516. package/dist/utils/tool-approval.js +15 -0
  517. package/dist/utils/tool-approval.js.map +1 -0
  518. package/dist/utils/tool-result-display.d.ts +15 -1
  519. package/dist/utils/tool-result-display.d.ts.map +1 -1
  520. package/dist/utils/tool-result-display.js +93 -3
  521. package/dist/utils/tool-result-display.js.map +1 -1
  522. package/dist/utils/type-helpers.d.ts +140 -0
  523. package/dist/utils/type-helpers.d.ts.map +1 -0
  524. package/dist/utils/type-helpers.js +220 -0
  525. package/dist/utils/type-helpers.js.map +1 -0
  526. package/dist/utils/url-utils.d.ts +6 -0
  527. package/dist/utils/url-utils.d.ts.map +1 -0
  528. package/dist/utils/url-utils.js +22 -0
  529. package/dist/utils/url-utils.js.map +1 -0
  530. package/dist/vscode/extension-installer.d.ts +34 -7
  531. package/dist/vscode/extension-installer.d.ts.map +1 -1
  532. package/dist/vscode/extension-installer.js +151 -64
  533. package/dist/vscode/extension-installer.js.map +1 -1
  534. package/dist/vscode/index.d.ts +1 -1
  535. package/dist/vscode/index.d.ts.map +1 -1
  536. package/dist/vscode/index.js +1 -1
  537. package/dist/vscode/index.js.map +1 -1
  538. package/dist/vscode/vscode-server.d.ts.map +1 -1
  539. package/dist/vscode/vscode-server.js +10 -0
  540. package/dist/vscode/vscode-server.js.map +1 -1
  541. package/dist/wizards/mcp-wizard.d.ts.map +1 -1
  542. package/dist/wizards/mcp-wizard.js +2 -1
  543. package/dist/wizards/mcp-wizard.js.map +1 -1
  544. package/dist/wizards/provider-wizard.d.ts.map +1 -1
  545. package/dist/wizards/provider-wizard.js +4 -2
  546. package/dist/wizards/provider-wizard.js.map +1 -1
  547. package/dist/wizards/steps/location-step.d.ts.map +1 -1
  548. package/dist/wizards/steps/location-step.js +2 -1
  549. package/dist/wizards/steps/location-step.js.map +1 -1
  550. package/dist/wizards/steps/mcp-step.d.ts.map +1 -1
  551. package/dist/wizards/steps/mcp-step.js +3 -2
  552. package/dist/wizards/steps/mcp-step.js.map +1 -1
  553. package/dist/wizards/steps/provider-step.d.ts.map +1 -1
  554. package/dist/wizards/steps/provider-step.js +5 -2
  555. package/dist/wizards/steps/provider-step.js.map +1 -1
  556. package/dist/wizards/steps/summary-step.d.ts.map +1 -1
  557. package/dist/wizards/steps/summary-step.js +2 -1
  558. package/dist/wizards/steps/summary-step.js.map +1 -1
  559. package/dist/wizards/templates/mcp-templates.d.ts +0 -8
  560. package/dist/wizards/templates/mcp-templates.d.ts.map +1 -1
  561. package/dist/wizards/templates/mcp-templates.js +8 -6
  562. package/dist/wizards/templates/mcp-templates.js.map +1 -1
  563. package/dist/wizards/templates/provider-templates.d.ts.map +1 -1
  564. package/dist/wizards/templates/provider-templates.js +59 -0
  565. package/dist/wizards/templates/provider-templates.js.map +1 -1
  566. package/dist/wizards/validation.d.ts.map +1 -1
  567. package/dist/wizards/validation.js +2 -4
  568. package/dist/wizards/validation.js.map +1 -1
  569. package/package.json +22 -23
  570. package/source/app/prompts/main-prompt.md +21 -3
  571. package/source/config/themes.json +787 -0
  572. package/dist/ai-sdk-client/chat/tool-processor.d.ts +0 -10
  573. package/dist/ai-sdk-client/chat/tool-processor.d.ts.map +0 -1
  574. package/dist/ai-sdk-client/chat/tool-processor.js +0 -53
  575. package/dist/ai-sdk-client/chat/tool-processor.js.map +0 -1
  576. package/dist/hooks/chat-handler/utils/context-checker.d.ts +0 -15
  577. package/dist/hooks/chat-handler/utils/context-checker.d.ts.map +0 -1
  578. package/dist/hooks/chat-handler/utils/context-checker.js +0 -68
  579. package/dist/hooks/chat-handler/utils/context-checker.js.map +0 -1
  580. package/dist/tool-calling/json-parser.d.ts +0 -24
  581. package/dist/tool-calling/json-parser.d.ts.map +0 -1
  582. package/dist/tool-calling/json-parser.js +0 -202
  583. package/dist/tool-calling/json-parser.js.map +0 -1
  584. package/dist/tools/string-replace.d.ts +0 -3
  585. package/dist/tools/string-replace.d.ts.map +0 -1
  586. package/dist/tools/string-replace.js +0 -461
  587. package/dist/tools/string-replace.js.map +0 -1
  588. package/dist/tools/write-file.d.ts +0 -3
  589. package/dist/tools/write-file.d.ts.map +0 -1
  590. package/dist/tools/write-file.js.map +0 -1
package/dist/app/App.js CHANGED
@@ -6,8 +6,10 @@ import { createStaticComponents } from '../app/components/app-container.js';
6
6
  import { ChatHistory } from '../app/components/chat-history.js';
7
7
  import { ChatInput } from '../app/components/chat-input.js';
8
8
  import { ModalSelectors } from '../app/components/modal-selectors.js';
9
- import { shouldRenderWelcome } from '../app/helpers.js';
10
9
  import { FileExplorer } from '../components/file-explorer.js';
10
+ import { IdeSelector } from '../components/ide-selector.js';
11
+ import { SuccessMessage } from '../components/message-box.js';
12
+ import { SchedulerView } from '../components/scheduler-view.js';
11
13
  import SecurityDisclaimer from '../components/security-disclaimer.js';
12
14
  import { shouldPromptExtensionInstall, VSCodeExtensionPrompt, } from '../components/vscode-extension-prompt.js';
13
15
  import WelcomeMessage from '../components/welcome-message.js';
@@ -18,9 +20,12 @@ import { useChatHandler } from '../hooks/chat-handler/index.js';
18
20
  import { useAppHandlers } from '../hooks/useAppHandlers.js';
19
21
  import { useAppInitialization } from '../hooks/useAppInitialization.js';
20
22
  import { useAppState } from '../hooks/useAppState.js';
23
+ import { useContextPercentage } from '../hooks/useContextPercentage.js';
21
24
  import { useDirectoryTrust } from '../hooks/useDirectoryTrust.js';
22
25
  import { useModeHandlers } from '../hooks/useModeHandlers.js';
23
26
  import { useNonInteractiveMode } from '../hooks/useNonInteractiveMode.js';
27
+ import { useSchedulerMode } from '../hooks/useSchedulerMode.js';
28
+ import { useSessionAutosave } from '../hooks/useSessionAutosave.js';
24
29
  import { ThemeContext } from '../hooks/useTheme.js';
25
30
  import { TitleShapeContext, updateTitleShape } from '../hooks/useTitleShape.js';
26
31
  import { useToolHandler } from '../hooks/useToolHandler.js';
@@ -29,7 +34,12 @@ import { useVSCodeServer } from '../hooks/useVSCodeServer.js';
29
34
  import { generateCorrelationId, withNewCorrelationContext, } from '../utils/logging/index.js';
30
35
  import { createPinoLogger } from '../utils/logging/pino-logger.js';
31
36
  import { setGlobalMessageQueue } from '../utils/message-queue.js';
32
- export default function App({ vscodeMode = false, vscodePort, nonInteractivePrompt, nonInteractiveMode = false, }) {
37
+ import { setGlobalQuestionHandler, } from '../utils/question-queue.js';
38
+ import { getShutdownManager } from '../utils/shutdown/index.js';
39
+ import { displayCompactCountsSummary } from '../utils/tool-result-display.js';
40
+ import { isExtensionInstalled } from '../vscode/extension-installer.js';
41
+ import { shouldRenderWelcome } from './helpers.js';
42
+ export default function App({ vscodeMode = false, vscodePort, nonInteractivePrompt, nonInteractiveMode = false, cliProvider, cliModel, }) {
33
43
  // Memoize the logger to prevent recreation on every render
34
44
  const logger = useMemo(() => createPinoLogger(), []);
35
45
  // Log application startup with key configuration
@@ -66,9 +76,7 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
66
76
  const [extensionPromptComplete, setExtensionPromptComplete] = React.useState(false);
67
77
  const handleExit = () => {
68
78
  exit();
69
- // Force exit - at security disclaimer stage, no services need cleanup
70
- // TODO: Replace with ShutdownManager.gracefulShutdown() once #239 is implemented
71
- process.exit(0);
79
+ void getShutdownManager().gracefulShutdown(0);
72
80
  };
73
81
  // VS Code server integration
74
82
  // Reference to handleMessageSubmit that will be set after appHandlers is created
@@ -108,8 +116,9 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
108
116
  });
109
117
  }
110
118
  }, [logger]);
119
+ const effectiveVscodeEnabled = vscodeMode || appState.isVscodeEnabled;
111
120
  const vscodeServer = useVSCodeServer({
112
- enabled: vscodeMode,
121
+ enabled: effectiveVscodeEnabled,
113
122
  port: vscodePort,
114
123
  currentModel: appState.currentModel,
115
124
  currentProvider: appState.currentProvider,
@@ -139,6 +148,27 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
139
148
  chatQueueFunction: 'addToChatQueue',
140
149
  });
141
150
  }, [appState.addToChatQueue, logger]);
151
+ // Question handler - ref holds the resolver for the pending question promise
152
+ const questionResolverRef = React.useRef(null);
153
+ // Initialize global question handler
154
+ React.useEffect(() => {
155
+ setGlobalQuestionHandler((question) => {
156
+ return new Promise(resolve => {
157
+ questionResolverRef.current = resolve;
158
+ appState.setPendingQuestion(question);
159
+ appState.setIsQuestionMode(true);
160
+ });
161
+ });
162
+ }, [appState.setPendingQuestion, appState.setIsQuestionMode, appState]);
163
+ // Handle user answering a question
164
+ const handleQuestionAnswer = React.useCallback((answer) => {
165
+ if (questionResolverRef.current) {
166
+ questionResolverRef.current(answer);
167
+ questionResolverRef.current = null;
168
+ }
169
+ appState.setIsQuestionMode(false);
170
+ appState.setPendingQuestion(null);
171
+ }, [appState.setIsQuestionMode, appState.setPendingQuestion, appState]);
142
172
  // Log important application state changes
143
173
  React.useEffect(() => {
144
174
  if (appState.client) {
@@ -176,6 +206,7 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
176
206
  const chatHandler = useChatHandler({
177
207
  client: appState.client,
178
208
  toolManager: appState.toolManager,
209
+ customCommandLoader: appState.customCommandLoader,
179
210
  messages: appState.messages,
180
211
  setMessages: appState.updateMessages,
181
212
  currentProvider: appState.currentProvider,
@@ -200,7 +231,24 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
200
231
  },
201
232
  onConversationComplete: () => {
202
233
  appState.setIsConversationComplete(true);
234
+ appState.setCompactToolCounts(null);
235
+ appState.compactToolCountsRef.current = {};
203
236
  },
237
+ compactToolDisplayRef: appState.compactToolDisplayRef,
238
+ onSetCompactToolCounts: appState.setCompactToolCounts,
239
+ compactToolCountsRef: appState.compactToolCountsRef,
240
+ });
241
+ // Track context window usage percentage
242
+ useContextPercentage({
243
+ currentModel: appState.currentModel,
244
+ messages: appState.messages,
245
+ tokenizer: appState.tokenizer,
246
+ getMessageTokens: appState.getMessageTokens,
247
+ toolManager: appState.toolManager,
248
+ streamingTokenCount: chatHandler.tokenCount,
249
+ contextLimit: appState.contextLimit,
250
+ setContextPercentUsed: appState.setContextPercentUsed,
251
+ setContextLimit: appState.setContextLimit,
204
252
  });
205
253
  // Setup tool handler
206
254
  const toolHandler = useToolHandler({
@@ -223,6 +271,7 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
223
271
  client: appState.client,
224
272
  currentProvider: appState.currentProvider,
225
273
  setDevelopmentMode: appState.setDevelopmentMode,
274
+ compactToolDisplay: appState.compactToolDisplay,
226
275
  });
227
276
  // Log when application is fully ready
228
277
  useEffect(() => {
@@ -230,8 +279,8 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
230
279
  appState.client &&
231
280
  !appState.isToolExecuting &&
232
281
  !appState.isToolConfirmationMode &&
233
- !appState.isConfigWizardMode &&
234
- !appState.isMcpWizardMode &&
282
+ appState.activeMode !== 'configWizard' &&
283
+ appState.activeMode !== 'mcpWizard' &&
235
284
  appState.pendingToolCalls.length === 0) {
236
285
  const correlationId = generateCorrelationId();
237
286
  withNewCorrelationContext(() => {
@@ -252,8 +301,7 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
252
301
  appState.client,
253
302
  appState.isToolExecuting,
254
303
  appState.isToolConfirmationMode,
255
- appState.isConfigWizardMode,
256
- appState.isMcpWizardMode,
304
+ appState.activeMode,
257
305
  appState.pendingToolCalls.length,
258
306
  logger,
259
307
  appState.developmentMode,
@@ -278,30 +326,62 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
278
326
  addToChatQueue: appState.addToChatQueue,
279
327
  getNextComponentKey: appState.getNextComponentKey,
280
328
  customCommandCache: appState.customCommandCache,
281
- setIsConfigWizardMode: appState.setIsConfigWizardMode,
329
+ setActiveMode: appState.setActiveMode,
330
+ cliProvider,
331
+ cliModel,
282
332
  });
283
333
  // Setup mode handlers
284
334
  const modeHandlers = useModeHandlers({
285
335
  client: appState.client,
286
336
  currentModel: appState.currentModel,
287
337
  currentProvider: appState.currentProvider,
288
- currentTheme: appState.currentTheme,
289
338
  setClient: appState.setClient,
290
339
  setCurrentModel: appState.setCurrentModel,
291
340
  setCurrentProvider: appState.setCurrentProvider,
292
- setCurrentTheme: appState.setCurrentTheme,
293
341
  setMessages: appState.updateMessages,
294
- setIsModelSelectionMode: appState.setIsModelSelectionMode,
295
- setIsProviderSelectionMode: appState.setIsProviderSelectionMode,
296
- setIsModelDatabaseMode: appState.setIsModelDatabaseMode,
297
- setIsConfigWizardMode: appState.setIsConfigWizardMode,
342
+ setActiveMode: appState.setActiveMode,
298
343
  setIsSettingsMode: appState.setIsSettingsMode,
299
- setIsMcpWizardMode: appState.setIsMcpWizardMode,
300
- setIsExplorerMode: appState.setIsExplorerMode,
301
344
  addToChatQueue: appState.addToChatQueue,
302
345
  getNextComponentKey: appState.getNextComponentKey,
303
346
  reinitializeMCPServers: appInitialization.reinitializeMCPServers,
304
347
  });
348
+ // Scheduler mode enter/exit handlers
349
+ const enterSchedulerMode = React.useCallback(() => {
350
+ appState.setActiveMode('scheduler');
351
+ }, [appState.setActiveMode, appState]);
352
+ const exitSchedulerMode = React.useCallback(() => {
353
+ appState.setActiveMode(null);
354
+ }, [appState.setActiveMode, appState]);
355
+ // IDE selection handler
356
+ const handleIdeSelect = React.useCallback((ide) => {
357
+ appState.setActiveMode(null);
358
+ if (ide === 'vscode') {
359
+ appState.setIsVscodeEnabled(true);
360
+ // Check if extension needs installing
361
+ void (async () => {
362
+ if (!(await isExtensionInstalled())) {
363
+ setShowExtensionPrompt(true);
364
+ setExtensionPromptComplete(false);
365
+ }
366
+ else {
367
+ appState.addToChatQueue(_jsx(SuccessMessage, { message: "VS Code integration enabled. Starting server...", hideBox: true }, `ide-vscode-enabled-${appState.getNextComponentKey()}`));
368
+ }
369
+ })();
370
+ }
371
+ }, [appState]);
372
+ // Show confirmation once VS Code server is ready with its port
373
+ const prevVscodePortRef = React.useRef(vscodeServer.actualPort);
374
+ React.useEffect(() => {
375
+ const prevPort = prevVscodePortRef.current;
376
+ prevVscodePortRef.current = vscodeServer.actualPort;
377
+ // Only show message when port transitions from null to a value
378
+ // and it was triggered by /ide (not the --vscode CLI flag)
379
+ if (prevPort === null &&
380
+ vscodeServer.actualPort !== null &&
381
+ appState.isVscodeEnabled) {
382
+ appState.addToChatQueue(_jsx(SuccessMessage, { message: `VS Code server listening on port ${vscodeServer.actualPort}`, hideBox: true }, `ide-vscode-ready-${appState.getNextComponentKey()}`));
383
+ }
384
+ }, [vscodeServer.actualPort, appState]);
305
385
  // Setup app handlers
306
386
  const appHandlers = useAppHandlers({
307
387
  messages: appState.messages,
@@ -323,8 +403,12 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
323
403
  setDevelopmentMode: appState.setDevelopmentMode,
324
404
  setIsConversationComplete: appState.setIsConversationComplete,
325
405
  setIsToolExecuting: appState.setIsToolExecuting,
326
- setIsCheckpointLoadMode: appState.setIsCheckpointLoadMode,
406
+ setActiveMode: appState.setActiveMode,
327
407
  setCheckpointLoadData: appState.setCheckpointLoadData,
408
+ setShowAllSessions: appState.setShowAllSessions,
409
+ setCurrentSessionId: appState.setCurrentSessionId,
410
+ setCurrentProvider: appState.setCurrentProvider,
411
+ setCurrentModel: appState.setCurrentModel,
328
412
  addToChatQueue: appState.addToChatQueue,
329
413
  setLiveComponent: appState.setLiveComponent,
330
414
  client: appState.client,
@@ -336,6 +420,8 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
336
420
  enterSettingsMode: modeHandlers.enterSettingsMode,
337
421
  enterMcpWizardMode: modeHandlers.enterMcpWizardMode,
338
422
  enterExplorerMode: modeHandlers.enterExplorerMode,
423
+ enterIdeSelectionMode: modeHandlers.enterIdeSelectionMode,
424
+ enterSchedulerMode,
339
425
  handleChatMessage: chatHandler.handleChatMessage,
340
426
  });
341
427
  // Update the ref so VS Code prompts can be submitted
@@ -357,6 +443,27 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
357
443
  setDevelopmentMode: appState.setDevelopmentMode,
358
444
  handleMessageSubmit: appHandlers.handleMessageSubmit,
359
445
  });
446
+ // Setup scheduler mode
447
+ const schedulerMode = useSchedulerMode({
448
+ isSchedulerMode: appState.isSchedulerMode,
449
+ mcpInitialized: appState.mcpInitialized,
450
+ setDevelopmentMode: appState.setDevelopmentMode,
451
+ handleMessageSubmit: appHandlers.handleMessageSubmit,
452
+ clearMessages: appHandlers.clearMessages,
453
+ isConversationComplete: appState.isConversationComplete,
454
+ isToolExecuting: appState.isToolExecuting,
455
+ isToolConfirmationMode: appState.isToolConfirmationMode,
456
+ messages: appState.messages,
457
+ addToChatQueue: appState.addToChatQueue,
458
+ });
459
+ // Setup session autosave
460
+ useSessionAutosave({
461
+ messages: appState.messages,
462
+ currentProvider: appState.currentProvider,
463
+ currentModel: appState.currentModel,
464
+ currentSessionId: appState.currentSessionId,
465
+ setCurrentSessionId: appState.setCurrentSessionId,
466
+ });
360
467
  const shouldShowWelcome = shouldRenderWelcome(nonInteractiveMode);
361
468
  // Memoize static components
362
469
  const staticComponents = React.useMemo(() => createStaticComponents({
@@ -369,7 +476,7 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
369
476
  lspServersStatus: appState.lspServersStatus,
370
477
  preferencesLoaded: appState.preferencesLoaded,
371
478
  customCommandsCount: appState.customCommandsCount,
372
- vscodeMode,
479
+ vscodeMode: effectiveVscodeEnabled,
373
480
  vscodePort: vscodeServer.actualPort,
374
481
  vscodeRequestedPort: vscodeServer.requestedPort,
375
482
  }), [
@@ -382,7 +489,7 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
382
489
  appState.lspServersStatus,
383
490
  appState.preferencesLoaded,
384
491
  appState.customCommandsCount,
385
- vscodeMode,
492
+ effectiveVscodeEnabled,
386
493
  vscodeServer.actualPort,
387
494
  vscodeServer.requestedPort,
388
495
  ]);
@@ -423,20 +530,24 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
423
530
  } })] }) }) }));
424
531
  }
425
532
  // Main application render
426
- return (_jsx(ThemeContext.Provider, { value: themeContextValue, children: _jsx(TitleShapeContext.Provider, { value: titleShapeContextValue, children: _jsx(UIStateProvider, { children: _jsxs(Box, { flexDirection: "column", padding: 1, width: "100%", children: [_jsx(ChatHistory, { startChat: appState.startChat, staticComponents: staticComponents, queuedComponents: appState.chatComponents, liveComponent: appState.liveComponent }), appState.isExplorerMode && (_jsx(Box, { marginLeft: -1, flexDirection: "column", children: _jsx(FileExplorer, { onClose: modeHandlers.handleExplorerCancel }) })), (appState.isModelSelectionMode ||
427
- appState.isProviderSelectionMode ||
428
- appState.isModelDatabaseMode ||
429
- appState.isConfigWizardMode ||
430
- appState.isMcpWizardMode ||
431
- appState.isSettingsMode ||
432
- appState.isCheckpointLoadMode) && (_jsx(Box, { marginLeft: -1, flexDirection: "column", children: _jsx(ModalSelectors, { isModelSelectionMode: appState.isModelSelectionMode, isProviderSelectionMode: appState.isProviderSelectionMode, isModelDatabaseMode: appState.isModelDatabaseMode, isConfigWizardMode: appState.isConfigWizardMode, isMcpWizardMode: appState.isMcpWizardMode, isSettingsMode: appState.isSettingsMode, isCheckpointLoadMode: appState.isCheckpointLoadMode, client: appState.client, currentModel: appState.currentModel, currentProvider: appState.currentProvider, checkpointLoadData: appState.checkpointLoadData, onModelSelect: modeHandlers.handleModelSelect, onModelSelectionCancel: modeHandlers.handleModelSelectionCancel, onProviderSelect: modeHandlers.handleProviderSelect, onProviderSelectionCancel: modeHandlers.handleProviderSelectionCancel, onModelDatabaseCancel: modeHandlers.handleModelDatabaseCancel, onConfigWizardComplete: modeHandlers.handleConfigWizardComplete, onConfigWizardCancel: modeHandlers.handleConfigWizardCancel, onMcpWizardComplete: modeHandlers.handleMcpWizardComplete, onMcpWizardCancel: modeHandlers.handleMcpWizardCancel, onSettingsCancel: modeHandlers.handleSettingsCancel, onCheckpointSelect: appHandlers.handleCheckpointSelect, onCheckpointCancel: appHandlers.handleCheckpointCancel }) })), appState.startChat &&
433
- !(appState.isModelSelectionMode ||
434
- appState.isProviderSelectionMode ||
435
- appState.isModelDatabaseMode ||
436
- appState.isConfigWizardMode ||
437
- appState.isSettingsMode ||
438
- appState.isMcpWizardMode ||
439
- appState.isCheckpointLoadMode ||
440
- appState.isExplorerMode) && (_jsx(ChatInput, { isCancelling: appState.isCancelling, isToolExecuting: appState.isToolExecuting, isToolConfirmationMode: appState.isToolConfirmationMode, pendingToolCalls: appState.pendingToolCalls, currentToolIndex: appState.currentToolIndex, mcpInitialized: appState.mcpInitialized, client: appState.client, nonInteractivePrompt: nonInteractivePrompt, nonInteractiveLoadingMessage: nonInteractiveLoadingMessage, customCommands: Array.from(appState.customCommandCache.keys()), inputDisabled: chatHandler.isGenerating || appState.isToolExecuting, developmentMode: appState.developmentMode, onToolConfirm: toolHandler.handleToolConfirmation, onToolCancel: toolHandler.handleToolConfirmationCancel, onSubmit: appHandlers.handleMessageSubmit, onCancel: appHandlers.handleCancel, onToggleMode: appHandlers.handleToggleDevelopmentMode }))] }) }) }) }));
533
+ return (_jsx(ThemeContext.Provider, { value: themeContextValue, children: _jsx(TitleShapeContext.Provider, { value: titleShapeContextValue, children: _jsx(UIStateProvider, { children: _jsxs(Box, { flexDirection: "column", padding: 1, width: "100%", children: [_jsx(ChatHistory, { startChat: appState.startChat, staticComponents: staticComponents, queuedComponents: appState.chatComponents, liveComponent: appState.liveComponent }), appState.isExplorerMode && (_jsx(Box, { marginLeft: -1, flexDirection: "column", children: _jsx(FileExplorer, { onClose: modeHandlers.handleExplorerCancel }) })), appState.isIdeSelectionMode && (_jsx(Box, { marginLeft: -1, flexDirection: "column", children: _jsx(IdeSelector, { onSelect: handleIdeSelect, onCancel: modeHandlers.handleIdeSelectionCancel }) })), (appState.activeMode !== null &&
534
+ appState.activeMode !== 'explorer' &&
535
+ appState.activeMode !== 'ideSelection' &&
536
+ appState.activeMode !== 'scheduler') ||
537
+ appState.isSettingsMode ? (_jsx(Box, { marginLeft: -1, flexDirection: "column", children: _jsx(ModalSelectors, { activeMode: appState.activeMode, isSettingsMode: appState.isSettingsMode, showAllSessions: appState.showAllSessions, client: appState.client, currentModel: appState.currentModel, currentProvider: appState.currentProvider, checkpointLoadData: appState.checkpointLoadData, onModelSelect: modeHandlers.handleModelSelect, onModelSelectionCancel: modeHandlers.handleModelSelectionCancel, onProviderSelect: modeHandlers.handleProviderSelect, onProviderSelectionCancel: modeHandlers.handleProviderSelectionCancel, onModelDatabaseCancel: modeHandlers.handleModelDatabaseCancel, onConfigWizardComplete: modeHandlers.handleConfigWizardComplete, onConfigWizardCancel: modeHandlers.handleConfigWizardCancel, onMcpWizardComplete: modeHandlers.handleMcpWizardComplete, onMcpWizardCancel: modeHandlers.handleMcpWizardCancel, onSettingsCancel: modeHandlers.handleSettingsCancel, onCheckpointSelect: appHandlers.handleCheckpointSelect, onCheckpointCancel: appHandlers.handleCheckpointCancel, onSessionSelect: sessionId => void appHandlers.handleSessionSelect(sessionId), onSessionCancel: appHandlers.handleSessionCancel }) })) : null, appState.isSchedulerMode && (_jsx(SchedulerView, { activeJobCount: schedulerMode.activeJobCount, queueLength: schedulerMode.queueLength, isProcessing: schedulerMode.isProcessing, currentJobCommand: schedulerMode.currentJobCommand, developmentMode: appState.developmentMode, contextPercentUsed: appState.contextPercentUsed, onExit: exitSchedulerMode })), appState.startChat &&
538
+ appState.activeMode === null &&
539
+ !appState.isSettingsMode && (_jsx(ChatInput, { isCancelling: appState.isCancelling, isToolExecuting: appState.isToolExecuting, isToolConfirmationMode: appState.isToolConfirmationMode, isQuestionMode: appState.isQuestionMode, pendingToolCalls: appState.pendingToolCalls, currentToolIndex: appState.currentToolIndex, pendingQuestion: appState.pendingQuestion, onQuestionAnswer: handleQuestionAnswer, mcpInitialized: appState.mcpInitialized, client: appState.client, nonInteractivePrompt: nonInteractivePrompt, nonInteractiveLoadingMessage: nonInteractiveLoadingMessage, customCommands: Array.from(appState.customCommandCache.keys()), inputDisabled: chatHandler.isGenerating || appState.isToolExecuting, developmentMode: appState.developmentMode, contextPercentUsed: appState.contextPercentUsed, compactToolCounts: appState.compactToolCounts, compactToolDisplay: appState.compactToolDisplay, onToggleCompactDisplay: () => {
540
+ const expanding = appState.compactToolDisplay;
541
+ appState.setCompactToolDisplay(!expanding);
542
+ // When expanding, flush accumulated counts to static
543
+ if (expanding) {
544
+ const counts = appState.compactToolCountsRef.current;
545
+ if (Object.keys(counts).length > 0) {
546
+ displayCompactCountsSummary(counts, appState.addToChatQueue, appState.getNextComponentKey);
547
+ appState.compactToolCountsRef.current = {};
548
+ appState.setCompactToolCounts(null);
549
+ }
550
+ }
551
+ }, onToolConfirm: toolHandler.handleToolConfirmation, onToolCancel: toolHandler.handleToolConfirmationCancel, onSubmit: appHandlers.handleMessageSubmit, onCancel: appHandlers.handleCancel, onToggleMode: appHandlers.handleToggleDevelopmentMode }))] }) }) }) }));
441
552
  }
442
553
  //# sourceMappingURL=App.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../../source/app/App.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"App.js","sourceRoot":"","sources":["../../source/app/App.tsx"],"names":[],"mappings":"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"}
@@ -1,11 +1,15 @@
1
1
  import React from 'react';
2
2
  import type { DevelopmentMode, ToolCall } from '../../types/index.js';
3
+ import type { PendingQuestion } from '../../utils/question-queue.js';
3
4
  export interface ChatInputProps {
4
5
  isCancelling: boolean;
5
6
  isToolExecuting: boolean;
6
7
  isToolConfirmationMode: boolean;
8
+ isQuestionMode: boolean;
7
9
  pendingToolCalls: ToolCall[];
8
10
  currentToolIndex: number;
11
+ pendingQuestion: PendingQuestion | null;
12
+ onQuestionAnswer: (answer: string) => void;
9
13
  mcpInitialized: boolean;
10
14
  client: unknown | null;
11
15
  nonInteractivePrompt?: string;
@@ -13,6 +17,10 @@ export interface ChatInputProps {
13
17
  customCommands: string[];
14
18
  inputDisabled: boolean;
15
19
  developmentMode: DevelopmentMode;
20
+ contextPercentUsed: number | null;
21
+ compactToolCounts?: Record<string, number> | null;
22
+ onToggleCompactDisplay?: () => void;
23
+ compactToolDisplay?: boolean;
16
24
  onToolConfirm: (confirmed: boolean) => void;
17
25
  onToolCancel: () => void;
18
26
  onSubmit: (message: string) => Promise<void>;
@@ -26,5 +34,5 @@ export interface ChatInputProps {
26
34
  * It does not contain ink's Static component, so it's safe to hide when
27
35
  * modal dialogs are shown.
28
36
  */
29
- export declare function ChatInput({ isCancelling, isToolExecuting, isToolConfirmationMode, pendingToolCalls, currentToolIndex, mcpInitialized, client, nonInteractivePrompt, nonInteractiveLoadingMessage, customCommands, inputDisabled, developmentMode, onToolConfirm, onToolCancel, onSubmit, onCancel, onToggleMode, }: ChatInputProps): React.ReactElement;
37
+ export declare function ChatInput({ isCancelling, isToolExecuting, isToolConfirmationMode, isQuestionMode, pendingToolCalls, currentToolIndex, pendingQuestion, onQuestionAnswer, mcpInitialized, client, nonInteractivePrompt, nonInteractiveLoadingMessage, customCommands, inputDisabled, developmentMode, contextPercentUsed, compactToolCounts, onToggleCompactDisplay, compactToolDisplay, onToolConfirm, onToolCancel, onSubmit, onCancel, onToggleMode, }: ChatInputProps): React.ReactElement;
30
38
  //# sourceMappingURL=chat-input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat-input.d.ts","sourceRoot":"","sources":["../../../source/app/components/chat-input.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,KAAK,EAAC,eAAe,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AAEvD,MAAM,WAAW,cAAc;IAE9B,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,sBAAsB,EAAE,OAAO,CAAC;IAGhC,gBAAgB,EAAE,QAAQ,EAAE,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IAGzB,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IAGvB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,4BAA4B,EAAE,MAAM,GAAG,IAAI,CAAC;IAG5C,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,eAAe,CAAC;IAGjC,aAAa,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,IAAI,CAAC;CACzB;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,EACzB,YAAY,EACZ,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,MAAM,EACN,oBAAoB,EACpB,4BAA4B,EAC5B,cAAc,EACd,aAAa,EACb,eAAe,EACf,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,YAAY,GACZ,EAAE,cAAc,GAAG,KAAK,CAAC,YAAY,CAmDrC"}
1
+ {"version":3,"file":"chat-input.d.ts","sourceRoot":"","sources":["../../../source/app/components/chat-input.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,OAAO,KAAK,EAAC,eAAe,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AACvD,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAG5D,MAAM,WAAW,cAAc;IAE9B,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,sBAAsB,EAAE,OAAO,CAAC;IAChC,cAAc,EAAE,OAAO,CAAC;IAGxB,gBAAgB,EAAE,QAAQ,EAAE,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IAGzB,eAAe,EAAE,eAAe,GAAG,IAAI,CAAC;IACxC,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAG3C,cAAc,EAAE,OAAO,CAAC;IACxB,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IAGvB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,4BAA4B,EAAE,MAAM,GAAG,IAAI,CAAC;IAG5C,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,eAAe,CAAC;IACjC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAGlC,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAClD,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;IACpC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAG7B,aAAa,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,IAAI,CAAC;CACzB;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,EACzB,YAAY,EACZ,eAAe,EACf,sBAAsB,EACtB,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,MAAM,EACN,oBAAoB,EACpB,4BAA4B,EAC5B,cAAc,EACd,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,EACtB,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,YAAY,GACZ,EAAE,cAAc,GAAG,KAAK,CAAC,YAAY,CAiErC"}
@@ -2,10 +2,12 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
2
2
  import { Box, Text } from 'ink';
3
3
  import Spinner from 'ink-spinner';
4
4
  import CancellingIndicator from '../../components/cancelling-indicator.js';
5
+ import QuestionPrompt from '../../components/question-prompt.js';
5
6
  import ToolConfirmation from '../../components/tool-confirmation.js';
6
7
  import ToolExecutionIndicator from '../../components/tool-execution-indicator.js';
7
8
  import UserInput from '../../components/user-input.js';
8
9
  import { useTheme } from '../../hooks/useTheme.js';
10
+ import { LiveCompactCounts } from '../../utils/tool-result-display.js';
9
11
  /**
10
12
  * Chat input component that handles user input and tool interactions.
11
13
  *
@@ -13,19 +15,20 @@ import { useTheme } from '../../hooks/useTheme.js';
13
15
  * It does not contain ink's Static component, so it's safe to hide when
14
16
  * modal dialogs are shown.
15
17
  */
16
- export function ChatInput({ isCancelling, isToolExecuting, isToolConfirmationMode, pendingToolCalls, currentToolIndex, mcpInitialized, client, nonInteractivePrompt, nonInteractiveLoadingMessage, customCommands, inputDisabled, developmentMode, onToolConfirm, onToolCancel, onSubmit, onCancel, onToggleMode, }) {
18
+ export function ChatInput({ isCancelling, isToolExecuting, isToolConfirmationMode, isQuestionMode, pendingToolCalls, currentToolIndex, pendingQuestion, onQuestionAnswer, mcpInitialized, client, nonInteractivePrompt, nonInteractiveLoadingMessage, customCommands, inputDisabled, developmentMode, contextPercentUsed, compactToolCounts, onToggleCompactDisplay, compactToolDisplay, onToolConfirm, onToolCancel, onSubmit, onCancel, onToggleMode, }) {
17
19
  const { colors } = useTheme();
18
20
  const loadingLabel = nonInteractivePrompt
19
21
  ? (nonInteractiveLoadingMessage ?? 'Loading...')
20
22
  : 'Loading...';
21
- return (_jsxs(Box, { flexDirection: "column", marginLeft: -1, children: [isCancelling && _jsx(CancellingIndicator, {}), isToolConfirmationMode && pendingToolCalls[currentToolIndex] ? (_jsx(ToolConfirmation, { toolCall: pendingToolCalls[currentToolIndex], onConfirm: onToolConfirm, onCancel: onToolCancel })) : /* Tool Execution - skip indicator for streaming tools (they show their own progress) */
23
+ return (_jsxs(Box, { flexDirection: "column", marginLeft: -1, children: [compactToolCounts && Object.keys(compactToolCounts).length > 0 && (_jsx(LiveCompactCounts, { counts: compactToolCounts })), isCancelling && _jsx(CancellingIndicator, {}), isToolConfirmationMode && pendingToolCalls[currentToolIndex] ? (_jsx(ToolConfirmation, { toolCall: pendingToolCalls[currentToolIndex], onConfirm: onToolConfirm, onCancel: onToolCancel })) : /* Tool Execution - skip indicator for streaming tools (they show their own progress) */
22
24
  isToolExecuting &&
23
25
  pendingToolCalls[currentToolIndex] &&
24
- pendingToolCalls[currentToolIndex].function.name !== 'execute_bash' ? (_jsx(ToolExecutionIndicator, { toolName: pendingToolCalls[currentToolIndex].function.name, currentIndex: currentToolIndex, totalTools: pendingToolCalls.length })) : /* User Input */
25
- mcpInitialized && client && !nonInteractivePrompt ? (_jsx(UserInput, { customCommands: customCommands, onSubmit: msg => void onSubmit(msg), disabled: inputDisabled, onCancel: onCancel, onToggleMode: onToggleMode, developmentMode: developmentMode })) : /* Client Missing */
26
- mcpInitialized && !client ? (_jsx(_Fragment, {})) : /* Non-Interactive Complete */
27
- nonInteractivePrompt && !nonInteractiveLoadingMessage ? (_jsx(Text, { color: colors.secondary, children: "Completed. Exiting." })) : (
28
- /* Loading */
29
- _jsxs(Text, { color: colors.secondary, children: [_jsx(Spinner, { type: "dots" }), " ", loadingLabel] }))] }));
26
+ pendingToolCalls[currentToolIndex].function.name !== 'execute_bash' ? (_jsx(ToolExecutionIndicator, { toolName: pendingToolCalls[currentToolIndex].function.name, currentIndex: currentToolIndex, totalTools: pendingToolCalls.length })) : /* Question Prompt (ask_question tool) */
27
+ isQuestionMode && pendingQuestion ? (_jsx(QuestionPrompt, { question: pendingQuestion, onAnswer: onQuestionAnswer })) : /* User Input */
28
+ mcpInitialized && client && !nonInteractivePrompt ? (_jsx(UserInput, { customCommands: customCommands, onSubmit: msg => void onSubmit(msg), disabled: inputDisabled, onCancel: onCancel, onToggleMode: onToggleMode, onToggleCompactDisplay: onToggleCompactDisplay, compactToolDisplay: compactToolDisplay, developmentMode: developmentMode, contextPercentUsed: contextPercentUsed })) : /* Client Missing */
29
+ mcpInitialized && !client ? (_jsx(_Fragment, {})) : /* Non-Interactive Complete */
30
+ nonInteractivePrompt && !nonInteractiveLoadingMessage ? (_jsx(Text, { color: colors.secondary, children: "Completed. Exiting." })) : (
31
+ /* Loading */
32
+ _jsxs(Text, { color: colors.secondary, children: [_jsx(Spinner, { type: "dots" }), " ", loadingLabel] }))] }));
30
33
  }
31
34
  //# sourceMappingURL=chat-input.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat-input.js","sourceRoot":"","sources":["../../../source/app/components/chat-input.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAC,MAAM,KAAK,CAAC;AAC9B,OAAO,OAAO,MAAM,aAAa,CAAC;AAElC,OAAO,mBAAmB,MAAM,mCAAmC,CAAC;AACpE,OAAO,gBAAgB,MAAM,gCAAgC,CAAC;AAC9D,OAAO,sBAAsB,MAAM,uCAAuC,CAAC;AAC3E,OAAO,SAAS,MAAM,yBAAyB,CAAC;AAChD,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAkC1C;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,EACzB,YAAY,EACZ,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,MAAM,EACN,oBAAoB,EACpB,4BAA4B,EAC5B,cAAc,EACd,aAAa,EACb,eAAe,EACf,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,YAAY,GACI;IAChB,MAAM,EAAC,MAAM,EAAC,GAAG,QAAQ,EAAE,CAAC;IAE5B,MAAM,YAAY,GAAG,oBAAoB;QACxC,CAAC,CAAC,CAAC,4BAA4B,IAAI,YAAY,CAAC;QAChD,CAAC,CAAC,YAAY,CAAC;IAEhB,OAAO,CACN,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC,CAAC,aACxC,YAAY,IAAI,KAAC,mBAAmB,KAAG,EAGvC,sBAAsB,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAC/D,KAAC,gBAAgB,IAChB,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,EAC5C,SAAS,EAAE,aAAa,EACxB,QAAQ,EAAE,YAAY,GACrB,CACF,CAAC,CAAC,CAAC,wFAAwF;gBAC5F,eAAe;oBACd,gBAAgB,CAAC,gBAAgB,CAAC;oBAClC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,CACtE,KAAC,sBAAsB,IACtB,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,IAAI,EAC1D,YAAY,EAAE,gBAAgB,EAC9B,UAAU,EAAE,gBAAgB,CAAC,MAAM,GAClC,CACF,CAAC,CAAC,CAAC,gBAAgB;oBACpB,cAAc,IAAI,MAAM,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CACnD,KAAC,SAAS,IACT,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,KAAK,QAAQ,CAAC,GAAG,CAAC,EACnC,QAAQ,EAAE,aAAa,EACvB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,eAAe,GAC/B,CACF,CAAC,CAAC,CAAC,oBAAoB;wBACxB,cAAc,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAC3B,mBAAK,CACL,CAAC,CAAC,CAAC,8BAA8B;4BAClC,oBAAoB,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC,CACvD,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,oCAA4B,CACzD,CAAC,CAAC,CAAC;4BACH,aAAa;4BACb,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,aAC5B,KAAC,OAAO,IAAC,IAAI,EAAC,MAAM,GAAG,OAAE,YAAY,IAC/B,CACP,IACI,CACN,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"chat-input.js","sourceRoot":"","sources":["../../../source/app/components/chat-input.tsx"],"names":[],"mappings":"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"}
@@ -1,13 +1,10 @@
1
1
  import React from 'react';
2
+ import type { ActiveMode } from '../../hooks/useAppState.js';
2
3
  import type { CheckpointListItem, LLMClient } from '../../types/index.js';
3
4
  export interface ModalSelectorsProps {
4
- isModelSelectionMode: boolean;
5
- isProviderSelectionMode: boolean;
6
- isModelDatabaseMode: boolean;
7
- isConfigWizardMode: boolean;
8
- isMcpWizardMode: boolean;
9
- isCheckpointLoadMode: boolean;
5
+ activeMode: ActiveMode;
10
6
  isSettingsMode: boolean;
7
+ showAllSessions: boolean;
11
8
  client: LLMClient | null;
12
9
  currentModel: string;
13
10
  currentProvider: string;
@@ -26,11 +23,13 @@ export interface ModalSelectorsProps {
26
23
  onMcpWizardCancel: () => void;
27
24
  onCheckpointSelect: (name: string, backup: boolean) => Promise<void>;
28
25
  onCheckpointCancel: () => void;
26
+ onSessionSelect: (sessionId: string) => void;
27
+ onSessionCancel: () => void;
29
28
  onSettingsCancel: () => void;
30
29
  }
31
30
  /**
32
31
  * Renders the appropriate modal selector based on current application mode
33
32
  * Returns null if no modal is active
34
33
  */
35
- export declare function ModalSelectors({ isModelSelectionMode, isProviderSelectionMode, isModelDatabaseMode, isConfigWizardMode, isMcpWizardMode, isCheckpointLoadMode, isSettingsMode, client, currentModel, currentProvider, checkpointLoadData, onModelSelect, onModelSelectionCancel, onProviderSelect, onProviderSelectionCancel, onModelDatabaseCancel, onConfigWizardComplete, onConfigWizardCancel, onMcpWizardComplete, onMcpWizardCancel, onCheckpointSelect, onCheckpointCancel, onSettingsCancel, }: ModalSelectorsProps): React.ReactElement | null;
34
+ export declare function ModalSelectors({ activeMode, isSettingsMode, showAllSessions, client, currentModel, currentProvider, checkpointLoadData, onModelSelect, onModelSelectionCancel, onProviderSelect, onProviderSelectionCancel, onModelDatabaseCancel, onConfigWizardComplete, onConfigWizardCancel, onMcpWizardComplete, onMcpWizardCancel, onCheckpointSelect, onCheckpointCancel, onSessionSelect, onSessionCancel, onSettingsCancel, }: ModalSelectorsProps): React.ReactElement | null;
36
35
  //# sourceMappingURL=modal-selectors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"modal-selectors.d.ts","sourceRoot":"","sources":["../../../source/app/components/modal-selectors.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,KAAK,EAAC,kBAAkB,EAAE,SAAS,EAAC,MAAM,SAAS,CAAC;AAK3D,MAAM,WAAW,mBAAmB;IAEnC,oBAAoB,EAAE,OAAO,CAAC;IAC9B,uBAAuB,EAAE,OAAO,CAAC;IACjC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,eAAe,EAAE,OAAO,CAAC;IACzB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,cAAc,EAAE,OAAO,CAAC;IAGxB,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE;QACnB,WAAW,EAAE,kBAAkB,EAAE,CAAC;QAClC,mBAAmB,EAAE,MAAM,CAAC;KAC5B,GAAG,IAAI,CAAC;IAGT,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,sBAAsB,EAAE,MAAM,IAAI,CAAC;IAGnC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,yBAAyB,EAAE,MAAM,IAAI,CAAC;IAGtC,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAGlC,sBAAsB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,oBAAoB,EAAE,MAAM,IAAI,CAAC;IAGjC,mBAAmB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAG9B,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAG/B,gBAAgB,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,EAC9B,oBAAoB,EACpB,uBAAuB,EACvB,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,MAAM,EACN,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,GAChB,EAAE,mBAAmB,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CA8DjD"}
1
+ {"version":3,"file":"modal-selectors.d.ts","sourceRoot":"","sources":["../../../source/app/components/modal-selectors.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,qBAAqB,CAAC;AACpD,OAAO,KAAK,EAAC,kBAAkB,EAAE,SAAS,EAAC,MAAM,SAAS,CAAC;AAK3D,MAAM,WAAW,mBAAmB;IACnC,UAAU,EAAE,UAAU,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IAGzB,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE;QACnB,WAAW,EAAE,kBAAkB,EAAE,CAAC;QAClC,mBAAmB,EAAE,MAAM,CAAC;KAC5B,GAAG,IAAI,CAAC;IAGT,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,sBAAsB,EAAE,MAAM,IAAI,CAAC;IAGnC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,yBAAyB,EAAE,MAAM,IAAI,CAAC;IAGtC,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAGlC,sBAAsB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,oBAAoB,EAAE,MAAM,IAAI,CAAC;IAGjC,mBAAmB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAG9B,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAG/B,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,eAAe,EAAE,MAAM,IAAI,CAAC;IAG5B,gBAAgB,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,EAC9B,UAAU,EACV,cAAc,EACd,eAAe,EACf,MAAM,EACN,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,gBAAgB,GAChB,EAAE,mBAAmB,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,CA0EjD"}