@nanocollective/nanocoder 1.23.0 → 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 (433) hide show
  1. package/LICENSE.md +1 -15
  2. package/README.md +25 -884
  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 +7 -2
  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 +66 -50
  26. package/dist/app/App.js.map +1 -1
  27. package/dist/app/components/chat-input.d.ts +4 -1
  28. package/dist/app/components/chat-input.d.ts.map +1 -1
  29. package/dist/app/components/chat-input.js +4 -3
  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 -5
  48. package/dist/app/utils/app-util.d.ts.map +1 -1
  49. package/dist/app/utils/app-util.js +60 -460
  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 +39 -8
  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 +1 -2
  82. package/dist/commands/context-max.d.ts.map +1 -1
  83. package/dist/commands/context-max.js +2 -9
  84. package/dist/commands/context-max.js.map +1 -1
  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/explorer.d.ts +1 -2
  98. package/dist/commands/explorer.d.ts.map +1 -1
  99. package/dist/commands/explorer.js +2 -9
  100. package/dist/commands/explorer.js.map +1 -1
  101. package/dist/commands/help.d.ts.map +1 -1
  102. package/dist/commands/help.js +1 -1
  103. package/dist/commands/help.js.map +1 -1
  104. package/dist/commands/ide.d.ts +1 -2
  105. package/dist/commands/ide.d.ts.map +1 -1
  106. package/dist/commands/ide.js +2 -9
  107. package/dist/commands/ide.js.map +1 -1
  108. package/dist/commands/index.d.ts +2 -0
  109. package/dist/commands/index.d.ts.map +1 -1
  110. package/dist/commands/index.js +2 -0
  111. package/dist/commands/index.js.map +1 -1
  112. package/dist/commands/init.d.ts.map +1 -1
  113. package/dist/commands/init.js +2 -1
  114. package/dist/commands/init.js.map +1 -1
  115. package/dist/commands/model.d.ts +1 -2
  116. package/dist/commands/model.d.ts.map +1 -1
  117. package/dist/commands/model.js +2 -10
  118. package/dist/commands/model.js.map +1 -1
  119. package/dist/commands/provider.d.ts +1 -2
  120. package/dist/commands/provider.d.ts.map +1 -1
  121. package/dist/commands/provider.js +2 -10
  122. package/dist/commands/provider.js.map +1 -1
  123. package/dist/commands/resume.d.ts +8 -0
  124. package/dist/commands/resume.d.ts.map +1 -0
  125. package/dist/commands/resume.js +11 -0
  126. package/dist/commands/resume.js.map +1 -0
  127. package/dist/commands/settings.d.ts +1 -2
  128. package/dist/commands/settings.d.ts.map +1 -1
  129. package/dist/commands/settings.js +2 -10
  130. package/dist/commands/settings.js.map +1 -1
  131. package/dist/commands/status.d.ts +1 -2
  132. package/dist/commands/status.d.ts.map +1 -1
  133. package/dist/commands/status.js +2 -10
  134. package/dist/commands/status.js.map +1 -1
  135. package/dist/components/assistant-message.d.ts.map +1 -1
  136. package/dist/components/assistant-message.js +2 -27
  137. package/dist/components/assistant-message.js.map +1 -1
  138. package/dist/components/provider-selector.d.ts.map +1 -1
  139. package/dist/components/provider-selector.js +4 -3
  140. package/dist/components/provider-selector.js.map +1 -1
  141. package/dist/components/session-selector.d.ts +12 -0
  142. package/dist/components/session-selector.d.ts.map +1 -0
  143. package/dist/components/session-selector.js +108 -0
  144. package/dist/components/session-selector.js.map +1 -0
  145. package/dist/components/tool-confirmation.d.ts.map +1 -1
  146. package/dist/components/tool-confirmation.js +9 -6
  147. package/dist/components/tool-confirmation.js.map +1 -1
  148. package/dist/components/ui/styled-title.js +2 -2
  149. package/dist/components/ui/styled-title.js.map +1 -1
  150. package/dist/components/user-input.d.ts +3 -1
  151. package/dist/components/user-input.d.ts.map +1 -1
  152. package/dist/components/user-input.js +35 -23
  153. package/dist/components/user-input.js.map +1 -1
  154. package/dist/components/user-message.d.ts.map +1 -1
  155. package/dist/components/user-message.js +1 -23
  156. package/dist/components/user-message.js.map +1 -1
  157. package/dist/components/vscode-extension-prompt.d.ts +6 -1
  158. package/dist/components/vscode-extension-prompt.d.ts.map +1 -1
  159. package/dist/components/vscode-extension-prompt.js +80 -36
  160. package/dist/components/vscode-extension-prompt.js.map +1 -1
  161. package/dist/config/copilot-credentials.d.ts +27 -0
  162. package/dist/config/copilot-credentials.d.ts.map +1 -0
  163. package/dist/config/copilot-credentials.js +81 -0
  164. package/dist/config/copilot-credentials.js.map +1 -0
  165. package/dist/config/index.d.ts +0 -2
  166. package/dist/config/index.d.ts.map +1 -1
  167. package/dist/config/index.js +63 -27
  168. package/dist/config/index.js.map +1 -1
  169. package/dist/config/mcp-config-loader.d.ts +2 -3
  170. package/dist/config/mcp-config-loader.d.ts.map +1 -1
  171. package/dist/config/mcp-config-loader.js +136 -181
  172. package/dist/config/mcp-config-loader.js.map +1 -1
  173. package/dist/config/nanocoder-tools-config.js +2 -2
  174. package/dist/config/nanocoder-tools-config.js.map +1 -1
  175. package/dist/config/themes.d.ts.map +1 -1
  176. package/dist/config/themes.js +9 -766
  177. package/dist/config/themes.js.map +1 -1
  178. package/dist/config/validation.d.ts.map +1 -1
  179. package/dist/config/validation.js +0 -19
  180. package/dist/config/validation.js.map +1 -1
  181. package/dist/custom-commands/parser.d.ts.map +1 -1
  182. package/dist/custom-commands/parser.js +0 -9
  183. package/dist/custom-commands/parser.js.map +1 -1
  184. package/dist/hooks/chat-handler/conversation/conversation-loop.d.ts +5 -0
  185. package/dist/hooks/chat-handler/conversation/conversation-loop.d.ts.map +1 -1
  186. package/dist/hooks/chat-handler/conversation/conversation-loop.js +78 -97
  187. package/dist/hooks/chat-handler/conversation/conversation-loop.js.map +1 -1
  188. package/dist/hooks/chat-handler/conversation/tool-executor.d.ts +7 -2
  189. package/dist/hooks/chat-handler/conversation/tool-executor.d.ts.map +1 -1
  190. package/dist/hooks/chat-handler/conversation/tool-executor.js +109 -41
  191. package/dist/hooks/chat-handler/conversation/tool-executor.js.map +1 -1
  192. package/dist/hooks/chat-handler/types.d.ts +3 -0
  193. package/dist/hooks/chat-handler/types.d.ts.map +1 -1
  194. package/dist/hooks/chat-handler/useChatHandler.d.ts +1 -1
  195. package/dist/hooks/chat-handler/useChatHandler.d.ts.map +1 -1
  196. package/dist/hooks/chat-handler/useChatHandler.js +7 -1
  197. package/dist/hooks/chat-handler/useChatHandler.js.map +1 -1
  198. package/dist/hooks/useAppHandlers.d.ts +8 -1
  199. package/dist/hooks/useAppHandlers.d.ts.map +1 -1
  200. package/dist/hooks/useAppHandlers.js +119 -13
  201. package/dist/hooks/useAppHandlers.js.map +1 -1
  202. package/dist/hooks/useAppInitialization.d.ts +5 -3
  203. package/dist/hooks/useAppInitialization.d.ts.map +1 -1
  204. package/dist/hooks/useAppInitialization.js +51 -30
  205. package/dist/hooks/useAppInitialization.js.map +1 -1
  206. package/dist/hooks/useAppState.d.ts +15 -10
  207. package/dist/hooks/useAppState.d.ts.map +1 -1
  208. package/dist/hooks/useAppState.js +37 -28
  209. package/dist/hooks/useAppState.js.map +1 -1
  210. package/dist/hooks/useModeHandlers.d.ts +8 -14
  211. package/dist/hooks/useModeHandlers.d.ts.map +1 -1
  212. package/dist/hooks/useModeHandlers.js +31 -101
  213. package/dist/hooks/useModeHandlers.js.map +1 -1
  214. package/dist/hooks/useNonInteractiveMode.d.ts +7 -0
  215. package/dist/hooks/useNonInteractiveMode.d.ts.map +1 -1
  216. package/dist/hooks/useNonInteractiveMode.js +39 -2
  217. package/dist/hooks/useNonInteractiveMode.js.map +1 -1
  218. package/dist/hooks/useSessionAutosave.d.ts +16 -0
  219. package/dist/hooks/useSessionAutosave.d.ts.map +1 -0
  220. package/dist/hooks/useSessionAutosave.js +133 -0
  221. package/dist/hooks/useSessionAutosave.js.map +1 -0
  222. package/dist/hooks/useToolHandler.d.ts +2 -1
  223. package/dist/hooks/useToolHandler.d.ts.map +1 -1
  224. package/dist/hooks/useToolHandler.js +9 -3
  225. package/dist/hooks/useToolHandler.js.map +1 -1
  226. package/dist/mcp/mcp-client.d.ts.map +1 -1
  227. package/dist/mcp/mcp-client.js +3 -2
  228. package/dist/mcp/mcp-client.js.map +1 -1
  229. package/dist/mcp/transport-factory.d.ts.map +1 -1
  230. package/dist/mcp/transport-factory.js +4 -36
  231. package/dist/mcp/transport-factory.js.map +1 -1
  232. package/dist/models/models-dev-client.d.ts.map +1 -1
  233. package/dist/models/models-dev-client.js +21 -14
  234. package/dist/models/models-dev-client.js.map +1 -1
  235. package/dist/session/session-manager.d.ts +57 -0
  236. package/dist/session/session-manager.d.ts.map +1 -0
  237. package/dist/session/session-manager.js +361 -0
  238. package/dist/session/session-manager.js.map +1 -0
  239. package/dist/test-utils/render-with-theme.d.ts.map +1 -1
  240. package/dist/test-utils/render-with-theme.js +2 -1
  241. package/dist/test-utils/render-with-theme.js.map +1 -1
  242. package/dist/tool-calling/tool-parser.d.ts +3 -2
  243. package/dist/tool-calling/tool-parser.d.ts.map +1 -1
  244. package/dist/tool-calling/tool-parser.js +6 -27
  245. package/dist/tool-calling/tool-parser.js.map +1 -1
  246. package/dist/tools/execute-bash.d.ts.map +1 -1
  247. package/dist/tools/execute-bash.js +5 -0
  248. package/dist/tools/execute-bash.js.map +1 -1
  249. package/dist/tools/fetch-url.d.ts.map +1 -1
  250. package/dist/tools/fetch-url.js +11 -2
  251. package/dist/tools/fetch-url.js.map +1 -1
  252. package/dist/tools/file-ops/copy-file.d.ts.map +1 -1
  253. package/dist/tools/file-ops/copy-file.js +6 -36
  254. package/dist/tools/file-ops/copy-file.js.map +1 -1
  255. package/dist/tools/file-ops/create-directory.d.ts.map +1 -1
  256. package/dist/tools/file-ops/create-directory.js +2 -19
  257. package/dist/tools/file-ops/create-directory.js.map +1 -1
  258. package/dist/tools/file-ops/delete-file.d.ts.map +1 -1
  259. package/dist/tools/file-ops/delete-file.js +6 -20
  260. package/dist/tools/file-ops/delete-file.js.map +1 -1
  261. package/dist/tools/file-ops/move-file.d.ts.map +1 -1
  262. package/dist/tools/file-ops/move-file.js +6 -36
  263. package/dist/tools/file-ops/move-file.js.map +1 -1
  264. package/dist/tools/file-ops/string-replace-preview.d.ts +10 -0
  265. package/dist/tools/file-ops/string-replace-preview.d.ts.map +1 -0
  266. package/dist/tools/file-ops/string-replace-preview.js +171 -0
  267. package/dist/tools/file-ops/string-replace-preview.js.map +1 -0
  268. package/dist/tools/file-ops/string-replace.d.ts.map +1 -1
  269. package/dist/tools/file-ops/string-replace.js +9 -292
  270. package/dist/tools/file-ops/string-replace.js.map +1 -1
  271. package/dist/tools/file-ops/write-file.d.ts.map +1 -1
  272. package/dist/tools/file-ops/write-file.js +7 -66
  273. package/dist/tools/file-ops/write-file.js.map +1 -1
  274. package/dist/tools/find-files.d.ts.map +1 -1
  275. package/dist/tools/find-files.js +1 -0
  276. package/dist/tools/find-files.js.map +1 -1
  277. package/dist/tools/git/git-diff.d.ts.map +1 -1
  278. package/dist/tools/git/git-diff.js +1 -0
  279. package/dist/tools/git/git-diff.js.map +1 -1
  280. package/dist/tools/git/git-log.d.ts.map +1 -1
  281. package/dist/tools/git/git-log.js +1 -0
  282. package/dist/tools/git/git-log.js.map +1 -1
  283. package/dist/tools/git/git-status.d.ts.map +1 -1
  284. package/dist/tools/git/git-status.js +1 -0
  285. package/dist/tools/git/git-status.js.map +1 -1
  286. package/dist/tools/index.d.ts +1 -0
  287. package/dist/tools/index.d.ts.map +1 -1
  288. package/dist/tools/index.js +7 -0
  289. package/dist/tools/index.js.map +1 -1
  290. package/dist/tools/list-directory.d.ts.map +1 -1
  291. package/dist/tools/list-directory.js +2 -1
  292. package/dist/tools/list-directory.js.map +1 -1
  293. package/dist/tools/lsp-get-diagnostics.d.ts.map +1 -1
  294. package/dist/tools/lsp-get-diagnostics.js +1 -5
  295. package/dist/tools/lsp-get-diagnostics.js.map +1 -1
  296. package/dist/tools/read-file.d.ts.map +1 -1
  297. package/dist/tools/read-file.js +1 -0
  298. package/dist/tools/read-file.js.map +1 -1
  299. package/dist/tools/search-file-contents.d.ts.map +1 -1
  300. package/dist/tools/search-file-contents.js +1 -0
  301. package/dist/tools/search-file-contents.js.map +1 -1
  302. package/dist/tools/tasks/list-tasks.d.ts.map +1 -1
  303. package/dist/tools/tasks/list-tasks.js +1 -0
  304. package/dist/tools/tasks/list-tasks.js.map +1 -1
  305. package/dist/tools/tool-manager.d.ts +10 -0
  306. package/dist/tools/tool-manager.d.ts.map +1 -1
  307. package/dist/tools/tool-manager.js +16 -2
  308. package/dist/tools/tool-manager.js.map +1 -1
  309. package/dist/tools/tool-registry.d.ts +9 -1
  310. package/dist/tools/tool-registry.d.ts.map +1 -1
  311. package/dist/tools/tool-registry.js +17 -1
  312. package/dist/tools/tool-registry.js.map +1 -1
  313. package/dist/tools/web-search.d.ts.map +1 -1
  314. package/dist/tools/web-search.js +1 -0
  315. package/dist/tools/web-search.js.map +1 -1
  316. package/dist/types/app.d.ts +3 -0
  317. package/dist/types/app.d.ts.map +1 -1
  318. package/dist/types/commands.d.ts +1 -2
  319. package/dist/types/commands.d.ts.map +1 -1
  320. package/dist/types/config.d.ts +11 -15
  321. package/dist/types/config.d.ts.map +1 -1
  322. package/dist/types/core.d.ts +13 -3
  323. package/dist/types/core.d.ts.map +1 -1
  324. package/dist/types/core.js.map +1 -1
  325. package/dist/types/markdown-parser.d.ts +2 -10
  326. package/dist/types/markdown-parser.d.ts.map +1 -1
  327. package/dist/types/mcp.d.ts +2 -28
  328. package/dist/types/mcp.d.ts.map +1 -1
  329. package/dist/types/ui.d.ts +1 -1
  330. package/dist/types/ui.d.ts.map +1 -1
  331. package/dist/utils/ansi-truncate.d.ts +6 -0
  332. package/dist/utils/ansi-truncate.d.ts.map +1 -0
  333. package/dist/utils/ansi-truncate.js +39 -0
  334. package/dist/utils/ansi-truncate.js.map +1 -0
  335. package/dist/utils/installation-detector.d.ts +6 -0
  336. package/dist/utils/installation-detector.d.ts.map +1 -1
  337. package/dist/utils/installation-detector.js +33 -19
  338. package/dist/utils/installation-detector.js.map +1 -1
  339. package/dist/utils/logging/health-monitor/checks/memory-check.d.ts.map +1 -1
  340. package/dist/utils/logging/health-monitor/checks/memory-check.js +2 -1
  341. package/dist/utils/logging/health-monitor/checks/memory-check.js.map +1 -1
  342. package/dist/utils/logging/health-monitor/core/health-monitor.d.ts.map +1 -1
  343. package/dist/utils/logging/health-monitor/core/health-monitor.js +3 -2
  344. package/dist/utils/logging/health-monitor/core/health-monitor.js.map +1 -1
  345. package/dist/utils/logging/performance.d.ts.map +1 -1
  346. package/dist/utils/logging/performance.js +21 -17
  347. package/dist/utils/logging/performance.js.map +1 -1
  348. package/dist/utils/logging/pino-logger.d.ts.map +1 -1
  349. package/dist/utils/logging/pino-logger.js +7 -8
  350. package/dist/utils/logging/pino-logger.js.map +1 -1
  351. package/dist/utils/logging/redaction.d.ts.map +1 -1
  352. package/dist/utils/logging/redaction.js +2 -0
  353. package/dist/utils/logging/redaction.js.map +1 -1
  354. package/dist/utils/logging/request-tracker.d.ts.map +1 -1
  355. package/dist/utils/logging/request-tracker.js +6 -5
  356. package/dist/utils/logging/request-tracker.js.map +1 -1
  357. package/dist/utils/logging/safe-process.d.ts +16 -0
  358. package/dist/utils/logging/safe-process.d.ts.map +1 -0
  359. package/dist/utils/logging/safe-process.js +37 -0
  360. package/dist/utils/logging/safe-process.js.map +1 -0
  361. package/dist/utils/logging/types.d.ts +0 -3
  362. package/dist/utils/logging/types.d.ts.map +1 -1
  363. package/dist/utils/message-builder.d.ts +0 -5
  364. package/dist/utils/message-builder.d.ts.map +1 -1
  365. package/dist/utils/message-builder.js +0 -8
  366. package/dist/utils/message-builder.js.map +1 -1
  367. package/dist/utils/path-validation.d.ts.map +1 -1
  368. package/dist/utils/path-validation.js +3 -1
  369. package/dist/utils/path-validation.js.map +1 -1
  370. package/dist/utils/path-validators.d.ts +16 -0
  371. package/dist/utils/path-validators.d.ts.map +1 -0
  372. package/dist/utils/path-validators.js +55 -0
  373. package/dist/utils/path-validators.js.map +1 -0
  374. package/dist/utils/response-formatter.d.ts.map +1 -1
  375. package/dist/utils/response-formatter.js +2 -17
  376. package/dist/utils/response-formatter.js.map +1 -1
  377. package/dist/utils/text-wrapping.d.ts +8 -0
  378. package/dist/utils/text-wrapping.d.ts.map +1 -0
  379. package/dist/utils/text-wrapping.js +29 -0
  380. package/dist/utils/text-wrapping.js.map +1 -0
  381. package/dist/utils/tool-approval.d.ts +6 -0
  382. package/dist/utils/tool-approval.d.ts.map +1 -0
  383. package/dist/utils/tool-approval.js +15 -0
  384. package/dist/utils/tool-approval.js.map +1 -0
  385. package/dist/utils/tool-result-display.d.ts +15 -1
  386. package/dist/utils/tool-result-display.d.ts.map +1 -1
  387. package/dist/utils/tool-result-display.js +93 -3
  388. package/dist/utils/tool-result-display.js.map +1 -1
  389. package/dist/vscode/extension-installer.d.ts +34 -7
  390. package/dist/vscode/extension-installer.d.ts.map +1 -1
  391. package/dist/vscode/extension-installer.js +151 -64
  392. package/dist/vscode/extension-installer.js.map +1 -1
  393. package/dist/vscode/index.d.ts +1 -1
  394. package/dist/vscode/index.d.ts.map +1 -1
  395. package/dist/vscode/index.js +1 -1
  396. package/dist/vscode/index.js.map +1 -1
  397. package/dist/wizards/mcp-wizard.d.ts.map +1 -1
  398. package/dist/wizards/mcp-wizard.js +2 -1
  399. package/dist/wizards/mcp-wizard.js.map +1 -1
  400. package/dist/wizards/provider-wizard.d.ts.map +1 -1
  401. package/dist/wizards/provider-wizard.js +4 -2
  402. package/dist/wizards/provider-wizard.js.map +1 -1
  403. package/dist/wizards/steps/location-step.d.ts.map +1 -1
  404. package/dist/wizards/steps/location-step.js +2 -1
  405. package/dist/wizards/steps/location-step.js.map +1 -1
  406. package/dist/wizards/steps/mcp-step.d.ts.map +1 -1
  407. package/dist/wizards/steps/mcp-step.js +2 -1
  408. package/dist/wizards/steps/mcp-step.js.map +1 -1
  409. package/dist/wizards/steps/provider-step.d.ts.map +1 -1
  410. package/dist/wizards/steps/provider-step.js +4 -1
  411. package/dist/wizards/steps/provider-step.js.map +1 -1
  412. package/dist/wizards/steps/summary-step.d.ts.map +1 -1
  413. package/dist/wizards/steps/summary-step.js +2 -1
  414. package/dist/wizards/steps/summary-step.js.map +1 -1
  415. package/dist/wizards/templates/mcp-templates.d.ts +0 -8
  416. package/dist/wizards/templates/mcp-templates.d.ts.map +1 -1
  417. package/dist/wizards/templates/mcp-templates.js.map +1 -1
  418. package/dist/wizards/templates/provider-templates.d.ts.map +1 -1
  419. package/dist/wizards/templates/provider-templates.js +59 -0
  420. package/dist/wizards/templates/provider-templates.js.map +1 -1
  421. package/dist/wizards/validation.d.ts.map +1 -1
  422. package/dist/wizards/validation.js +0 -1
  423. package/dist/wizards/validation.js.map +1 -1
  424. package/package.json +20 -12
  425. package/source/config/themes.json +787 -0
  426. package/dist/ai-sdk-client/chat/tool-processor.d.ts +0 -10
  427. package/dist/ai-sdk-client/chat/tool-processor.d.ts.map +0 -1
  428. package/dist/ai-sdk-client/chat/tool-processor.js +0 -58
  429. package/dist/ai-sdk-client/chat/tool-processor.js.map +0 -1
  430. package/dist/tool-calling/json-parser.d.ts +0 -28
  431. package/dist/tool-calling/json-parser.d.ts.map +0 -1
  432. package/dist/tool-calling/json-parser.js +0 -219
  433. package/dist/tool-calling/json-parser.js.map +0 -1
package/dist/app/App.js CHANGED
@@ -6,13 +6,12 @@ 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';
11
10
  import { IdeSelector } from '../components/ide-selector.js';
12
11
  import { SuccessMessage } from '../components/message-box.js';
13
12
  import { SchedulerView } from '../components/scheduler-view.js';
14
13
  import SecurityDisclaimer from '../components/security-disclaimer.js';
15
- import { VSCodeExtensionPrompt } from '../components/vscode-extension-prompt.js';
14
+ import { shouldPromptExtensionInstall, VSCodeExtensionPrompt, } from '../components/vscode-extension-prompt.js';
16
15
  import WelcomeMessage from '../components/welcome-message.js';
17
16
  import { updateSelectedTheme } from '../config/preferences.js';
18
17
  import { getThemeColors } from '../config/themes.js';
@@ -26,6 +25,7 @@ import { useDirectoryTrust } from '../hooks/useDirectoryTrust.js';
26
25
  import { useModeHandlers } from '../hooks/useModeHandlers.js';
27
26
  import { useNonInteractiveMode } from '../hooks/useNonInteractiveMode.js';
28
27
  import { useSchedulerMode } from '../hooks/useSchedulerMode.js';
28
+ import { useSessionAutosave } from '../hooks/useSessionAutosave.js';
29
29
  import { ThemeContext } from '../hooks/useTheme.js';
30
30
  import { TitleShapeContext, updateTitleShape } from '../hooks/useTitleShape.js';
31
31
  import { useToolHandler } from '../hooks/useToolHandler.js';
@@ -36,8 +36,10 @@ import { createPinoLogger } from '../utils/logging/pino-logger.js';
36
36
  import { setGlobalMessageQueue } from '../utils/message-queue.js';
37
37
  import { setGlobalQuestionHandler, } from '../utils/question-queue.js';
38
38
  import { getShutdownManager } from '../utils/shutdown/index.js';
39
+ import { displayCompactCountsSummary } from '../utils/tool-result-display.js';
39
40
  import { isExtensionInstalled } from '../vscode/extension-installer.js';
40
- export default function App({ vscodeMode = false, vscodePort, nonInteractivePrompt, nonInteractiveMode = false, }) {
41
+ import { shouldRenderWelcome } from './helpers.js';
42
+ export default function App({ vscodeMode = false, vscodePort, nonInteractivePrompt, nonInteractiveMode = false, cliProvider, cliModel, }) {
41
43
  // Memoize the logger to prevent recreation on every render
42
44
  const logger = useMemo(() => createPinoLogger(), []);
43
45
  // Log application startup with key configuration
@@ -70,7 +72,7 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
70
72
  });
71
73
  }, [appState.developmentMode, logger]);
72
74
  // VS Code extension installation prompt state
73
- const [showExtensionPrompt, setShowExtensionPrompt] = React.useState(() => vscodeMode && !isExtensionInstalled());
75
+ const [showExtensionPrompt, setShowExtensionPrompt] = React.useState(() => vscodeMode && shouldPromptExtensionInstall());
74
76
  const [extensionPromptComplete, setExtensionPromptComplete] = React.useState(false);
75
77
  const handleExit = () => {
76
78
  exit();
@@ -229,7 +231,12 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
229
231
  },
230
232
  onConversationComplete: () => {
231
233
  appState.setIsConversationComplete(true);
234
+ appState.setCompactToolCounts(null);
235
+ appState.compactToolCountsRef.current = {};
232
236
  },
237
+ compactToolDisplayRef: appState.compactToolDisplayRef,
238
+ onSetCompactToolCounts: appState.setCompactToolCounts,
239
+ compactToolCountsRef: appState.compactToolCountsRef,
233
240
  });
234
241
  // Track context window usage percentage
235
242
  useContextPercentage({
@@ -264,6 +271,7 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
264
271
  client: appState.client,
265
272
  currentProvider: appState.currentProvider,
266
273
  setDevelopmentMode: appState.setDevelopmentMode,
274
+ compactToolDisplay: appState.compactToolDisplay,
267
275
  });
268
276
  // Log when application is fully ready
269
277
  useEffect(() => {
@@ -271,8 +279,8 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
271
279
  appState.client &&
272
280
  !appState.isToolExecuting &&
273
281
  !appState.isToolConfirmationMode &&
274
- !appState.isConfigWizardMode &&
275
- !appState.isMcpWizardMode &&
282
+ appState.activeMode !== 'configWizard' &&
283
+ appState.activeMode !== 'mcpWizard' &&
276
284
  appState.pendingToolCalls.length === 0) {
277
285
  const correlationId = generateCorrelationId();
278
286
  withNewCorrelationContext(() => {
@@ -293,8 +301,7 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
293
301
  appState.client,
294
302
  appState.isToolExecuting,
295
303
  appState.isToolConfirmationMode,
296
- appState.isConfigWizardMode,
297
- appState.isMcpWizardMode,
304
+ appState.activeMode,
298
305
  appState.pendingToolCalls.length,
299
306
  logger,
300
307
  appState.developmentMode,
@@ -319,52 +326,47 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
319
326
  addToChatQueue: appState.addToChatQueue,
320
327
  getNextComponentKey: appState.getNextComponentKey,
321
328
  customCommandCache: appState.customCommandCache,
322
- setIsConfigWizardMode: appState.setIsConfigWizardMode,
329
+ setActiveMode: appState.setActiveMode,
330
+ cliProvider,
331
+ cliModel,
323
332
  });
324
333
  // Setup mode handlers
325
334
  const modeHandlers = useModeHandlers({
326
335
  client: appState.client,
327
336
  currentModel: appState.currentModel,
328
337
  currentProvider: appState.currentProvider,
329
- currentTheme: appState.currentTheme,
330
338
  setClient: appState.setClient,
331
339
  setCurrentModel: appState.setCurrentModel,
332
340
  setCurrentProvider: appState.setCurrentProvider,
333
- setCurrentTheme: appState.setCurrentTheme,
334
341
  setMessages: appState.updateMessages,
335
- setIsModelSelectionMode: appState.setIsModelSelectionMode,
336
- setIsProviderSelectionMode: appState.setIsProviderSelectionMode,
337
- setIsModelDatabaseMode: appState.setIsModelDatabaseMode,
338
- setIsConfigWizardMode: appState.setIsConfigWizardMode,
342
+ setActiveMode: appState.setActiveMode,
339
343
  setIsSettingsMode: appState.setIsSettingsMode,
340
- setIsMcpWizardMode: appState.setIsMcpWizardMode,
341
- setIsExplorerMode: appState.setIsExplorerMode,
342
- setIsIdeSelectionMode: appState.setIsIdeSelectionMode,
343
344
  addToChatQueue: appState.addToChatQueue,
344
345
  getNextComponentKey: appState.getNextComponentKey,
345
346
  reinitializeMCPServers: appInitialization.reinitializeMCPServers,
346
347
  });
347
- // Scheduler mode enter handler
348
+ // Scheduler mode enter/exit handlers
348
349
  const enterSchedulerMode = React.useCallback(() => {
349
- appState.setIsSchedulerMode(true);
350
- }, [appState.setIsSchedulerMode, appState]);
351
- // Scheduler mode exit handler
350
+ appState.setActiveMode('scheduler');
351
+ }, [appState.setActiveMode, appState]);
352
352
  const exitSchedulerMode = React.useCallback(() => {
353
- appState.setIsSchedulerMode(false);
354
- }, [appState.setIsSchedulerMode, appState]);
353
+ appState.setActiveMode(null);
354
+ }, [appState.setActiveMode, appState]);
355
355
  // IDE selection handler
356
356
  const handleIdeSelect = React.useCallback((ide) => {
357
- appState.setIsIdeSelectionMode(false);
357
+ appState.setActiveMode(null);
358
358
  if (ide === 'vscode') {
359
359
  appState.setIsVscodeEnabled(true);
360
360
  // Check if extension needs installing
361
- if (!isExtensionInstalled()) {
362
- setShowExtensionPrompt(true);
363
- setExtensionPromptComplete(false);
364
- }
365
- else {
366
- appState.addToChatQueue(_jsx(SuccessMessage, { message: "VS Code integration enabled. Starting server...", hideBox: true }, `ide-vscode-enabled-${appState.getNextComponentKey()}`));
367
- }
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
+ })();
368
370
  }
369
371
  }, [appState]);
370
372
  // Show confirmation once VS Code server is ready with its port
@@ -401,8 +403,12 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
401
403
  setDevelopmentMode: appState.setDevelopmentMode,
402
404
  setIsConversationComplete: appState.setIsConversationComplete,
403
405
  setIsToolExecuting: appState.setIsToolExecuting,
404
- setIsCheckpointLoadMode: appState.setIsCheckpointLoadMode,
406
+ setActiveMode: appState.setActiveMode,
405
407
  setCheckpointLoadData: appState.setCheckpointLoadData,
408
+ setShowAllSessions: appState.setShowAllSessions,
409
+ setCurrentSessionId: appState.setCurrentSessionId,
410
+ setCurrentProvider: appState.setCurrentProvider,
411
+ setCurrentModel: appState.setCurrentModel,
406
412
  addToChatQueue: appState.addToChatQueue,
407
413
  setLiveComponent: appState.setLiveComponent,
408
414
  client: appState.client,
@@ -450,6 +456,14 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
450
456
  messages: appState.messages,
451
457
  addToChatQueue: appState.addToChatQueue,
452
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
+ });
453
467
  const shouldShowWelcome = shouldRenderWelcome(nonInteractiveMode);
454
468
  // Memoize static components
455
469
  const staticComponents = React.useMemo(() => createStaticComponents({
@@ -516,22 +530,24 @@ export default function App({ vscodeMode = false, vscodePort, nonInteractiveProm
516
530
  } })] }) }) }));
517
531
  }
518
532
  // Main application render
519
- 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.isModelSelectionMode ||
520
- appState.isProviderSelectionMode ||
521
- appState.isModelDatabaseMode ||
522
- appState.isConfigWizardMode ||
523
- appState.isMcpWizardMode ||
524
- appState.isSettingsMode ||
525
- 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.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 &&
526
- !appState.isSchedulerMode &&
527
- !(appState.isModelSelectionMode ||
528
- appState.isProviderSelectionMode ||
529
- appState.isModelDatabaseMode ||
530
- appState.isConfigWizardMode ||
531
- appState.isSettingsMode ||
532
- appState.isMcpWizardMode ||
533
- appState.isCheckpointLoadMode ||
534
- appState.isExplorerMode ||
535
- appState.isIdeSelectionMode) && (_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, 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 }))] }) }) }) }));
536
552
  }
537
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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"}
@@ -18,6 +18,9 @@ export interface ChatInputProps {
18
18
  inputDisabled: boolean;
19
19
  developmentMode: DevelopmentMode;
20
20
  contextPercentUsed: number | null;
21
+ compactToolCounts?: Record<string, number> | null;
22
+ onToggleCompactDisplay?: () => void;
23
+ compactToolDisplay?: boolean;
21
24
  onToolConfirm: (confirmed: boolean) => void;
22
25
  onToolCancel: () => void;
23
26
  onSubmit: (message: string) => Promise<void>;
@@ -31,5 +34,5 @@ export interface ChatInputProps {
31
34
  * It does not contain ink's Static component, so it's safe to hide when
32
35
  * modal dialogs are shown.
33
36
  */
34
- export declare function ChatInput({ isCancelling, isToolExecuting, isToolConfirmationMode, isQuestionMode, pendingToolCalls, currentToolIndex, pendingQuestion, onQuestionAnswer, mcpInitialized, client, nonInteractivePrompt, nonInteractiveLoadingMessage, customCommands, inputDisabled, developmentMode, contextPercentUsed, 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;
35
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;AAO1B,OAAO,KAAK,EAAC,eAAe,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AACvD,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAE5D,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,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,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,YAAY,GACZ,EAAE,cAAc,GAAG,KAAK,CAAC,YAAY,CA0DrC"}
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"}
@@ -7,6 +7,7 @@ import ToolConfirmation from '../../components/tool-confirmation.js';
7
7
  import ToolExecutionIndicator from '../../components/tool-execution-indicator.js';
8
8
  import UserInput from '../../components/user-input.js';
9
9
  import { useTheme } from '../../hooks/useTheme.js';
10
+ import { LiveCompactCounts } from '../../utils/tool-result-display.js';
10
11
  /**
11
12
  * Chat input component that handles user input and tool interactions.
12
13
  *
@@ -14,17 +15,17 @@ import { useTheme } from '../../hooks/useTheme.js';
14
15
  * It does not contain ink's Static component, so it's safe to hide when
15
16
  * modal dialogs are shown.
16
17
  */
17
- export function ChatInput({ isCancelling, isToolExecuting, isToolConfirmationMode, isQuestionMode, pendingToolCalls, currentToolIndex, pendingQuestion, onQuestionAnswer, mcpInitialized, client, nonInteractivePrompt, nonInteractiveLoadingMessage, customCommands, inputDisabled, developmentMode, contextPercentUsed, 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, }) {
18
19
  const { colors } = useTheme();
19
20
  const loadingLabel = nonInteractivePrompt
20
21
  ? (nonInteractiveLoadingMessage ?? 'Loading...')
21
22
  : 'Loading...';
22
- 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) */
23
24
  isToolExecuting &&
24
25
  pendingToolCalls[currentToolIndex] &&
25
26
  pendingToolCalls[currentToolIndex].function.name !== 'execute_bash' ? (_jsx(ToolExecutionIndicator, { toolName: pendingToolCalls[currentToolIndex].function.name, currentIndex: currentToolIndex, totalTools: pendingToolCalls.length })) : /* Question Prompt (ask_question tool) */
26
27
  isQuestionMode && pendingQuestion ? (_jsx(QuestionPrompt, { question: pendingQuestion, onAnswer: onQuestionAnswer })) : /* User Input */
27
- mcpInitialized && client && !nonInteractivePrompt ? (_jsx(UserInput, { customCommands: customCommands, onSubmit: msg => void onSubmit(msg), disabled: inputDisabled, onCancel: onCancel, onToggleMode: onToggleMode, developmentMode: developmentMode, contextPercentUsed: contextPercentUsed })) : /* Client Missing */
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 */
28
29
  mcpInitialized && !client ? (_jsx(_Fragment, {})) : /* Non-Interactive Complete */
29
30
  nonInteractivePrompt && !nonInteractiveLoadingMessage ? (_jsx(Text, { color: colors.secondary, children: "Completed. Exiting." })) : (
30
31
  /* Loading */
@@ -1 +1 @@
1
- {"version":3,"file":"chat-input.js","sourceRoot":"","sources":["../../../source/app/components/chat-input.tsx"],"names":[],"mappings":"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"}
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"}
@@ -3,6 +3,7 @@ import { ModelDatabaseDisplay } from '../../commands/model-database.js';
3
3
  import CheckpointSelector from '../../components/checkpoint-selector.js';
4
4
  import ModelSelector from '../../components/model-selector.js';
5
5
  import ProviderSelector from '../../components/provider-selector.js';
6
+ import SessionSelector from '../../components/session-selector.js';
6
7
  import { McpWizard } from '../../wizards/mcp-wizard.js';
7
8
  import { ProviderWizard } from '../../wizards/provider-wizard.js';
8
9
  import { SettingsSelector } from './settings-selector.js';
@@ -10,28 +11,31 @@ import { SettingsSelector } from './settings-selector.js';
10
11
  * Renders the appropriate modal selector based on current application mode
11
12
  * Returns null if no modal is active
12
13
  */
13
- export 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, }) {
14
- if (isModelSelectionMode) {
14
+ export function ModalSelectors({ activeMode, isSettingsMode, showAllSessions, client, currentModel, currentProvider, checkpointLoadData, onModelSelect, onModelSelectionCancel, onProviderSelect, onProviderSelectionCancel, onModelDatabaseCancel, onConfigWizardComplete, onConfigWizardCancel, onMcpWizardComplete, onMcpWizardCancel, onCheckpointSelect, onCheckpointCancel, onSessionSelect, onSessionCancel, onSettingsCancel, }) {
15
+ if (activeMode === 'model') {
15
16
  return (_jsx(ModelSelector, { client: client, currentModel: currentModel, onModelSelect: model => void onModelSelect(model), onCancel: onModelSelectionCancel }));
16
17
  }
17
- if (isProviderSelectionMode) {
18
+ if (activeMode === 'provider') {
18
19
  return (_jsx(ProviderSelector, { currentProvider: currentProvider, onProviderSelect: provider => void onProviderSelect(provider), onCancel: onProviderSelectionCancel }));
19
20
  }
20
21
  if (isSettingsMode) {
21
22
  return _jsx(SettingsSelector, { onCancel: onSettingsCancel });
22
23
  }
23
- if (isModelDatabaseMode) {
24
+ if (activeMode === 'modelDatabase') {
24
25
  return _jsx(ModelDatabaseDisplay, { onCancel: onModelDatabaseCancel });
25
26
  }
26
- if (isConfigWizardMode) {
27
+ if (activeMode === 'configWizard') {
27
28
  return (_jsx(ProviderWizard, { projectDir: process.cwd(), onComplete: configPath => void onConfigWizardComplete(configPath), onCancel: onConfigWizardCancel }));
28
29
  }
29
- if (isMcpWizardMode) {
30
+ if (activeMode === 'mcpWizard') {
30
31
  return (_jsx(McpWizard, { projectDir: process.cwd(), onComplete: configPath => void onMcpWizardComplete(configPath), onCancel: onMcpWizardCancel }));
31
32
  }
32
- if (isCheckpointLoadMode && checkpointLoadData) {
33
+ if (activeMode === 'checkpointLoad' && checkpointLoadData) {
33
34
  return (_jsx(CheckpointSelector, { checkpoints: checkpointLoadData.checkpoints, currentMessageCount: checkpointLoadData.currentMessageCount, onSelect: (name, backup) => void onCheckpointSelect(name, backup), onCancel: onCheckpointCancel }));
34
35
  }
36
+ if (activeMode === 'sessionSelector') {
37
+ return (_jsx(SessionSelector, { onSelect: meta => meta ? void onSessionSelect(meta.id) : onSessionCancel(), onCancel: onSessionCancel, showAll: showAllSessions }));
38
+ }
35
39
  return null;
36
40
  }
37
41
  //# sourceMappingURL=modal-selectors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"modal-selectors.js","sourceRoot":"","sources":["../../../source/app/components/modal-selectors.tsx"],"names":[],"mappings":";AACA,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAC/D,OAAO,kBAAkB,MAAM,kCAAkC,CAAC;AAClE,OAAO,aAAa,MAAM,6BAA6B,CAAC;AACxD,OAAO,gBAAgB,MAAM,gCAAgC,CAAC;AAE9D,OAAO,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAgDrD;;;GAGG;AACH,MAAM,UAAU,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,GACK;IACrB,IAAI,oBAAoB,EAAE,CAAC;QAC1B,OAAO,CACN,KAAC,aAAa,IACb,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,aAAa,CAAC,KAAK,CAAC,EACjD,QAAQ,EAAE,sBAAsB,GAC/B,CACF,CAAC;IACH,CAAC;IAED,IAAI,uBAAuB,EAAE,CAAC;QAC7B,OAAO,CACN,KAAC,gBAAgB,IAChB,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,QAAQ,CAAC,EAAE,CAAC,KAAK,gBAAgB,CAAC,QAAQ,CAAC,EAC7D,QAAQ,EAAE,yBAAyB,GAClC,CACF,CAAC;IACH,CAAC;IAED,IAAI,cAAc,EAAE,CAAC;QACpB,OAAO,KAAC,gBAAgB,IAAC,QAAQ,EAAE,gBAAgB,GAAI,CAAC;IACzD,CAAC;IAED,IAAI,mBAAmB,EAAE,CAAC;QACzB,OAAO,KAAC,oBAAoB,IAAC,QAAQ,EAAE,qBAAqB,GAAI,CAAC;IAClE,CAAC;IAED,IAAI,kBAAkB,EAAE,CAAC;QACxB,OAAO,CACN,KAAC,cAAc,IACd,UAAU,EAAE,OAAO,CAAC,GAAG,EAAE,EACzB,UAAU,EAAE,UAAU,CAAC,EAAE,CAAC,KAAK,sBAAsB,CAAC,UAAU,CAAC,EACjE,QAAQ,EAAE,oBAAoB,GAC7B,CACF,CAAC;IACH,CAAC;IAED,IAAI,eAAe,EAAE,CAAC;QACrB,OAAO,CACN,KAAC,SAAS,IACT,UAAU,EAAE,OAAO,CAAC,GAAG,EAAE,EACzB,UAAU,EAAE,UAAU,CAAC,EAAE,CAAC,KAAK,mBAAmB,CAAC,UAAU,CAAC,EAC9D,QAAQ,EAAE,iBAAiB,GAC1B,CACF,CAAC;IACH,CAAC;IAED,IAAI,oBAAoB,IAAI,kBAAkB,EAAE,CAAC;QAChD,OAAO,CACN,KAAC,kBAAkB,IAClB,WAAW,EAAE,kBAAkB,CAAC,WAAW,EAC3C,mBAAmB,EAAE,kBAAkB,CAAC,mBAAmB,EAC3D,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,EACjE,QAAQ,EAAE,kBAAkB,GAC3B,CACF,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"modal-selectors.js","sourceRoot":"","sources":["../../../source/app/components/modal-selectors.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"settings-selector.d.ts","sourceRoot":"","sources":["../../../source/app/components/settings-selector.tsx"],"names":[],"mappings":"AAqBA,UAAU,qBAAqB;IAC9B,QAAQ,EAAE,MAAM,IAAI,CAAC;CACrB;AA2hBD,wBAAgB,gBAAgB,CAAC,EAAC,QAAQ,EAAC,EAAE,qBAAqB,uDA4BjE"}
1
+ {"version":3,"file":"settings-selector.d.ts","sourceRoot":"","sources":["../../../source/app/components/settings-selector.tsx"],"names":[],"mappings":"AAqBA,UAAU,qBAAqB;IAC9B,QAAQ,EAAE,MAAM,IAAI,CAAC;CACrB;AA8hBD,wBAAgB,gBAAgB,CAAC,EAAC,QAAQ,EAAC,EAAE,qBAAqB,uDA4BjE"}
@@ -240,7 +240,7 @@ function SettingsNanocoderShapePanel({ onBack, onCancel, }) {
240
240
  onBack();
241
241
  }
242
242
  });
243
- const shapeOptions = [
243
+ const shapeOptions = useMemo(() => [
244
244
  { label: 'Tiny (default)', value: 'tiny' },
245
245
  { label: 'Block', value: 'block' },
246
246
  { label: 'Simple', value: 'simple' },
@@ -253,11 +253,11 @@ function SettingsNanocoderShapePanel({ onBack, onCancel, }) {
253
253
  { label: 'Simple 3D', value: 'simple3d' },
254
254
  { label: 'Chrome', value: 'chrome' },
255
255
  { label: 'Huge', value: 'huge' },
256
- ];
256
+ ], []);
257
257
  const initialIndex = useMemo(() => {
258
258
  const index = shapeOptions.findIndex(option => option.value === originalShape);
259
259
  return index >= 0 ? index : 0;
260
- }, [originalShape]);
260
+ }, [originalShape, shapeOptions]);
261
261
  const handleSelect = (item) => {
262
262
  updateNanocoderShape(item.value);
263
263
  onBack();