@machina.ai/cell-cli 1.22.5-rc1 → 1.25.0-rc3

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 (723) hide show
  1. package/dist/package.json +5 -4
  2. package/dist/src/commands/extensions/configure.d.ts +13 -0
  3. package/dist/src/commands/extensions/configure.js +131 -0
  4. package/dist/src/commands/extensions/configure.js.map +1 -0
  5. package/dist/src/commands/extensions/configure.test.d.ts +1 -0
  6. package/dist/src/commands/extensions/configure.test.js +197 -0
  7. package/dist/src/commands/extensions/configure.test.js.map +1 -0
  8. package/dist/src/commands/extensions/disable.test.js.map +1 -1
  9. package/dist/src/commands/extensions/enable.test.js.map +1 -1
  10. package/dist/src/commands/extensions/install.js +7 -31
  11. package/dist/src/commands/extensions/install.js.map +1 -1
  12. package/dist/src/commands/extensions/install.test.js +21 -3
  13. package/dist/src/commands/extensions/install.test.js.map +1 -1
  14. package/dist/src/commands/extensions/link.test.js.map +1 -1
  15. package/dist/src/commands/extensions/uninstall.test.js.map +1 -1
  16. package/dist/src/commands/extensions/utils.d.ts +2 -1
  17. package/dist/src/commands/extensions/utils.js +5 -1
  18. package/dist/src/commands/extensions/utils.js.map +1 -1
  19. package/dist/src/commands/extensions/validate.js +1 -1
  20. package/dist/src/commands/extensions/validate.js.map +1 -1
  21. package/dist/src/commands/extensions/validate.test.js +1 -1
  22. package/dist/src/commands/extensions/validate.test.js.map +1 -1
  23. package/dist/src/commands/extensions.js +2 -2
  24. package/dist/src/commands/extensions.js.map +1 -1
  25. package/dist/src/commands/hooks/migrate.js +1 -1
  26. package/dist/src/commands/hooks/migrate.js.map +1 -1
  27. package/dist/src/commands/hooks/migrate.test.js +1 -1
  28. package/dist/src/commands/hooks/migrate.test.js.map +1 -1
  29. package/dist/src/commands/mcp/add.test.js +1 -1
  30. package/dist/src/commands/mcp/add.test.js.map +1 -1
  31. package/dist/src/commands/mcp/list.js +7 -1
  32. package/dist/src/commands/mcp/list.js.map +1 -1
  33. package/dist/src/commands/skills/disable.d.ts +14 -0
  34. package/dist/src/commands/skills/disable.js +45 -0
  35. package/dist/src/commands/skills/disable.js.map +1 -0
  36. package/dist/src/commands/skills/disable.test.d.ts +6 -0
  37. package/dist/src/commands/skills/disable.test.js +80 -0
  38. package/dist/src/commands/skills/disable.test.js.map +1 -0
  39. package/dist/src/commands/skills/enable.d.ts +12 -0
  40. package/dist/src/commands/skills/enable.js +35 -0
  41. package/dist/src/commands/skills/enable.js.map +1 -0
  42. package/dist/src/commands/skills/enable.test.d.ts +6 -0
  43. package/dist/src/commands/skills/enable.test.js +107 -0
  44. package/dist/src/commands/skills/enable.test.js.map +1 -0
  45. package/dist/src/commands/skills/install.d.ts +14 -0
  46. package/dist/src/commands/skills/install.js +61 -0
  47. package/dist/src/commands/skills/install.js.map +1 -0
  48. package/dist/src/commands/skills/install.test.d.ts +6 -0
  49. package/dist/src/commands/skills/install.test.js +57 -0
  50. package/dist/src/commands/skills/install.test.js.map +1 -0
  51. package/dist/src/commands/skills/list.d.ts +10 -0
  52. package/dist/src/commands/skills/list.js +60 -0
  53. package/dist/src/commands/skills/list.js.map +1 -0
  54. package/dist/src/commands/skills/list.test.d.ts +6 -0
  55. package/dist/src/commands/skills/list.test.js +136 -0
  56. package/dist/src/commands/skills/list.test.js.map +1 -0
  57. package/dist/src/commands/skills/uninstall.d.ts +13 -0
  58. package/dist/src/commands/skills/uninstall.js +56 -0
  59. package/dist/src/commands/skills/uninstall.js.map +1 -0
  60. package/dist/src/commands/skills/uninstall.test.d.ts +6 -0
  61. package/dist/src/commands/skills/uninstall.test.js +61 -0
  62. package/dist/src/commands/skills/uninstall.test.js.map +1 -0
  63. package/dist/src/commands/{extensions/settings.d.ts → skills.d.ts} +2 -2
  64. package/dist/src/commands/skills.js +30 -0
  65. package/dist/src/commands/skills.js.map +1 -0
  66. package/dist/src/commands/skills.test.d.ts +6 -0
  67. package/dist/src/commands/skills.test.js +49 -0
  68. package/dist/src/commands/skills.test.js.map +1 -0
  69. package/dist/src/config/config.d.ts +10 -3
  70. package/dist/src/config/config.js +91 -31
  71. package/dist/src/config/config.js.map +1 -1
  72. package/dist/src/config/config.test.js +224 -13
  73. package/dist/src/config/config.test.js.map +1 -1
  74. package/dist/src/config/extension-manager-agents.test.d.ts +6 -0
  75. package/dist/src/config/extension-manager-agents.test.js +115 -0
  76. package/dist/src/config/extension-manager-agents.test.js.map +1 -0
  77. package/dist/src/config/extension-manager-scope.test.js +164 -0
  78. package/dist/src/config/extension-manager-scope.test.js.map +1 -0
  79. package/dist/src/config/extension-manager-skills.test.js +150 -0
  80. package/dist/src/config/extension-manager-skills.test.js.map +1 -0
  81. package/dist/src/config/extension-manager.d.ts +6 -1
  82. package/dist/src/config/extension-manager.js +157 -34
  83. package/dist/src/config/extension-manager.js.map +1 -1
  84. package/dist/src/config/extension.test.js +98 -16
  85. package/dist/src/config/extension.test.js.map +1 -1
  86. package/dist/src/config/extensions/consent.d.ts +5 -3
  87. package/dist/src/config/extensions/consent.js +30 -7
  88. package/dist/src/config/extensions/consent.js.map +1 -1
  89. package/dist/src/config/extensions/consent.test.js +97 -3
  90. package/dist/src/config/extensions/consent.test.js.map +1 -1
  91. package/dist/src/config/extensions/extensionSettings.d.ts +5 -3
  92. package/dist/src/config/extensions/extensionSettings.js +32 -12
  93. package/dist/src/config/extensions/extensionSettings.js.map +1 -1
  94. package/dist/src/config/extensions/extensionSettings.test.js +8 -8
  95. package/dist/src/config/extensions/extensionSettings.test.js.map +1 -1
  96. package/dist/src/config/extensions/extensionUpdates.test.js +231 -0
  97. package/dist/src/config/extensions/extensionUpdates.test.js.map +1 -0
  98. package/dist/src/config/extensions/github.js +1 -1
  99. package/dist/src/config/extensions/github.js.map +1 -1
  100. package/dist/src/config/extensions/github.test.js +2 -2
  101. package/dist/src/config/extensions/github.test.js.map +1 -1
  102. package/dist/src/config/extensions/storage.js +2 -2
  103. package/dist/src/config/extensions/storage.js.map +1 -1
  104. package/dist/src/config/extensions/update.js +1 -1
  105. package/dist/src/config/extensions/update.js.map +1 -1
  106. package/dist/src/config/extensions/update.test.js +8 -8
  107. package/dist/src/config/extensions/update.test.js.map +1 -1
  108. package/dist/src/config/keyBindings.d.ts +14 -2
  109. package/dist/src/config/keyBindings.js +89 -11
  110. package/dist/src/config/keyBindings.js.map +1 -1
  111. package/dist/src/config/policy-engine.integration.test.js +13 -1
  112. package/dist/src/config/policy-engine.integration.test.js.map +1 -1
  113. package/dist/src/config/settings-validation.js +1 -1
  114. package/dist/src/config/settings-validation.js.map +1 -1
  115. package/dist/src/config/settings-validation.test.js +49 -1
  116. package/dist/src/config/settings-validation.test.js.map +1 -1
  117. package/dist/src/config/settings.d.ts +9 -7
  118. package/dist/src/config/settings.js +127 -250
  119. package/dist/src/config/settings.js.map +1 -1
  120. package/dist/src/config/settings.test.js +245 -594
  121. package/dist/src/config/settings.test.js.map +1 -1
  122. package/dist/src/config/settingsSchema.d.ts +284 -33
  123. package/dist/src/config/settingsSchema.js +328 -31
  124. package/dist/src/config/settingsSchema.js.map +1 -1
  125. package/dist/src/config/settingsSchema.test.js +17 -9
  126. package/dist/src/config/settingsSchema.test.js.map +1 -1
  127. package/dist/src/config/settings_repro.test.js +1 -1
  128. package/dist/src/config/settings_repro.test.js.map +1 -1
  129. package/dist/src/config/settings_validation_warning.test.d.ts +6 -0
  130. package/dist/src/config/settings_validation_warning.test.js +123 -0
  131. package/dist/src/config/settings_validation_warning.test.js.map +1 -0
  132. package/dist/src/config/trustedFolders.d.ts +1 -0
  133. package/dist/src/config/trustedFolders.js +18 -4
  134. package/dist/src/config/trustedFolders.js.map +1 -1
  135. package/dist/src/config/trustedFolders.test.js +45 -0
  136. package/dist/src/config/trustedFolders.test.js.map +1 -1
  137. package/dist/src/gemini.js +117 -85
  138. package/dist/src/gemini.js.map +1 -1
  139. package/dist/src/gemini.test.js +72 -95
  140. package/dist/src/gemini.test.js.map +1 -1
  141. package/dist/src/gemini_cleanup.test.js +6 -0
  142. package/dist/src/gemini_cleanup.test.js.map +1 -1
  143. package/dist/src/generated/git-commit.d.ts +3 -3
  144. package/dist/src/generated/git-commit.js +3 -3
  145. package/dist/src/nonInteractiveCli.js +54 -1
  146. package/dist/src/nonInteractiveCli.js.map +1 -1
  147. package/dist/src/nonInteractiveCli.test.js +94 -11
  148. package/dist/src/nonInteractiveCli.test.js.map +1 -1
  149. package/dist/src/services/BuiltinCommandLoader.d.ts +1 -1
  150. package/dist/src/services/BuiltinCommandLoader.js +65 -9
  151. package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
  152. package/dist/src/services/BuiltinCommandLoader.test.js +67 -13
  153. package/dist/src/services/BuiltinCommandLoader.test.js.map +1 -1
  154. package/dist/src/services/FileCommandLoader.js +6 -6
  155. package/dist/src/services/FileCommandLoader.js.map +1 -1
  156. package/dist/src/services/prompt-processors/shellProcessor.js +13 -11
  157. package/dist/src/services/prompt-processors/shellProcessor.js.map +1 -1
  158. package/dist/src/services/prompt-processors/shellProcessor.test.js +93 -61
  159. package/dist/src/services/prompt-processors/shellProcessor.test.js.map +1 -1
  160. package/dist/src/test-utils/render.js +4 -2
  161. package/dist/src/test-utils/render.js.map +1 -1
  162. package/dist/src/ui/App.test.js +2 -2
  163. package/dist/src/ui/App.test.js.map +1 -1
  164. package/dist/src/ui/AppContainer.js +158 -77
  165. package/dist/src/ui/AppContainer.js.map +1 -1
  166. package/dist/src/ui/AppContainer.test.js +230 -41
  167. package/dist/src/ui/AppContainer.test.js.map +1 -1
  168. package/dist/src/ui/IdeIntegrationNudge.test.js +18 -7
  169. package/dist/src/ui/IdeIntegrationNudge.test.js.map +1 -1
  170. package/dist/src/ui/auth/AuthDialog.d.ts +4 -1
  171. package/dist/src/ui/auth/AuthDialog.js +8 -2
  172. package/dist/src/ui/auth/AuthDialog.js.map +1 -1
  173. package/dist/src/ui/auth/AuthDialog.test.js +17 -0
  174. package/dist/src/ui/auth/AuthDialog.test.js.map +1 -1
  175. package/dist/src/ui/auth/AuthInProgress.test.js +16 -6
  176. package/dist/src/ui/auth/AuthInProgress.test.js.map +1 -1
  177. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.d.ts +10 -0
  178. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.js +27 -0
  179. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.js.map +1 -0
  180. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.d.ts +6 -0
  181. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.js +68 -0
  182. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.js.map +1 -0
  183. package/dist/src/ui/commands/aboutCommand.js +1 -1
  184. package/dist/src/ui/commands/aboutCommand.js.map +1 -1
  185. package/dist/src/ui/commands/aboutCommand.test.js +4 -4
  186. package/dist/src/ui/commands/aboutCommand.test.js.map +1 -1
  187. package/dist/src/ui/commands/agentsCommand.d.ts +7 -0
  188. package/dist/src/ui/commands/agentsCommand.js +79 -0
  189. package/dist/src/ui/commands/agentsCommand.js.map +1 -0
  190. package/dist/src/ui/commands/agentsCommand.test.d.ts +6 -0
  191. package/dist/src/ui/commands/agentsCommand.test.js +91 -0
  192. package/dist/src/ui/commands/agentsCommand.test.js.map +1 -0
  193. package/dist/src/ui/commands/authCommand.js +30 -3
  194. package/dist/src/ui/commands/authCommand.js.map +1 -1
  195. package/dist/src/ui/commands/authCommand.test.js +72 -4
  196. package/dist/src/ui/commands/authCommand.test.js.map +1 -1
  197. package/dist/src/ui/commands/bugCommand.js +36 -4
  198. package/dist/src/ui/commands/bugCommand.js.map +1 -1
  199. package/dist/src/ui/commands/bugCommand.test.js +83 -2
  200. package/dist/src/ui/commands/bugCommand.test.js.map +1 -1
  201. package/dist/src/ui/commands/chatCommand.d.ts +1 -2
  202. package/dist/src/ui/commands/chatCommand.js +50 -50
  203. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  204. package/dist/src/ui/commands/chatCommand.test.js +84 -58
  205. package/dist/src/ui/commands/chatCommand.test.js.map +1 -1
  206. package/dist/src/ui/commands/clearCommand.js +12 -8
  207. package/dist/src/ui/commands/clearCommand.js.map +1 -1
  208. package/dist/src/ui/commands/clearCommand.test.js +4 -0
  209. package/dist/src/ui/commands/clearCommand.test.js.map +1 -1
  210. package/dist/src/ui/commands/copyCommand.js +1 -1
  211. package/dist/src/ui/commands/copyCommand.js.map +1 -1
  212. package/dist/src/ui/commands/directoryCommand.js +27 -10
  213. package/dist/src/ui/commands/directoryCommand.js.map +1 -1
  214. package/dist/src/ui/commands/directoryCommand.test.js +47 -11
  215. package/dist/src/ui/commands/directoryCommand.test.js.map +1 -1
  216. package/dist/src/ui/commands/extensionsCommand.js +193 -24
  217. package/dist/src/ui/commands/extensionsCommand.js.map +1 -1
  218. package/dist/src/ui/commands/extensionsCommand.test.js +217 -27
  219. package/dist/src/ui/commands/extensionsCommand.test.js.map +1 -1
  220. package/dist/src/ui/commands/helpCommand.js +1 -1
  221. package/dist/src/ui/commands/helpCommand.js.map +1 -1
  222. package/dist/src/ui/commands/helpCommand.test.js +1 -1
  223. package/dist/src/ui/commands/helpCommand.test.js.map +1 -1
  224. package/dist/src/ui/commands/hooksCommand.js +155 -20
  225. package/dist/src/ui/commands/hooksCommand.js.map +1 -1
  226. package/dist/src/ui/commands/hooksCommand.test.js +196 -17
  227. package/dist/src/ui/commands/hooksCommand.test.js.map +1 -1
  228. package/dist/src/ui/commands/mcpCommand.js +7 -7
  229. package/dist/src/ui/commands/mcpCommand.js.map +1 -1
  230. package/dist/src/ui/commands/mcpCommand.test.js +14 -6
  231. package/dist/src/ui/commands/mcpCommand.test.js.map +1 -1
  232. package/dist/src/ui/commands/memoryCommand.js +19 -33
  233. package/dist/src/ui/commands/memoryCommand.js.map +1 -1
  234. package/dist/src/ui/commands/memoryCommand.test.js +112 -16
  235. package/dist/src/ui/commands/memoryCommand.test.js.map +1 -1
  236. package/dist/src/ui/commands/restoreCommand.js +1 -1
  237. package/dist/src/ui/commands/restoreCommand.js.map +1 -1
  238. package/dist/src/ui/commands/skillsCommand.d.ts +7 -0
  239. package/dist/src/ui/commands/skillsCommand.js +235 -0
  240. package/dist/src/ui/commands/skillsCommand.js.map +1 -0
  241. package/dist/src/ui/commands/skillsCommand.test.d.ts +6 -0
  242. package/dist/src/ui/commands/skillsCommand.test.js +405 -0
  243. package/dist/src/ui/commands/skillsCommand.test.js.map +1 -0
  244. package/dist/src/ui/commands/statsCommand.js +4 -4
  245. package/dist/src/ui/commands/statsCommand.js.map +1 -1
  246. package/dist/src/ui/commands/statsCommand.test.js +4 -4
  247. package/dist/src/ui/commands/statsCommand.test.js.map +1 -1
  248. package/dist/src/ui/commands/toolsCommand.js +2 -2
  249. package/dist/src/ui/commands/toolsCommand.js.map +1 -1
  250. package/dist/src/ui/commands/toolsCommand.test.js +2 -2
  251. package/dist/src/ui/commands/toolsCommand.test.js.map +1 -1
  252. package/dist/src/ui/commands/types.d.ts +15 -2
  253. package/dist/src/ui/commands/types.js +1 -0
  254. package/dist/src/ui/commands/types.js.map +1 -1
  255. package/dist/src/ui/components/AsciiArt.d.ts +6 -6
  256. package/dist/src/ui/components/AsciiArt.js +6 -6
  257. package/dist/src/ui/components/Composer.js +7 -7
  258. package/dist/src/ui/components/Composer.js.map +1 -1
  259. package/dist/src/ui/components/Composer.test.js +23 -4
  260. package/dist/src/ui/components/Composer.test.js.map +1 -1
  261. package/dist/src/ui/components/ContextSummaryDisplay.d.ts +1 -0
  262. package/dist/src/ui/components/ContextSummaryDisplay.js +12 -5
  263. package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -1
  264. package/dist/src/ui/components/ContextSummaryDisplay.test.js +56 -25
  265. package/dist/src/ui/components/ContextSummaryDisplay.test.js.map +1 -1
  266. package/dist/src/ui/components/DialogManager.js +2 -2
  267. package/dist/src/ui/components/DialogManager.js.map +1 -1
  268. package/dist/src/ui/components/EditorSettingsDialog.js +2 -1
  269. package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -1
  270. package/dist/src/ui/components/EditorSettingsDialog.test.js +3 -2
  271. package/dist/src/ui/components/EditorSettingsDialog.test.js.map +1 -1
  272. package/dist/src/ui/components/FolderTrustDialog.js +20 -15
  273. package/dist/src/ui/components/FolderTrustDialog.js.map +1 -1
  274. package/dist/src/ui/components/FolderTrustDialog.test.js +12 -2
  275. package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
  276. package/dist/src/ui/components/Footer.js +4 -4
  277. package/dist/src/ui/components/Footer.js.map +1 -1
  278. package/dist/src/ui/components/Help.js +1 -1
  279. package/dist/src/ui/components/Help.js.map +1 -1
  280. package/dist/src/ui/components/HistoryItemDisplay.js +3 -1
  281. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  282. package/dist/src/ui/components/HistoryItemDisplay.test.js +21 -0
  283. package/dist/src/ui/components/HistoryItemDisplay.test.js.map +1 -1
  284. package/dist/src/ui/components/HookStatusDisplay.d.ts +12 -0
  285. package/dist/src/ui/components/HookStatusDisplay.js +20 -0
  286. package/dist/src/ui/components/HookStatusDisplay.js.map +1 -0
  287. package/dist/src/ui/components/HookStatusDisplay.test.d.ts +6 -0
  288. package/dist/src/ui/components/HookStatusDisplay.test.js +51 -0
  289. package/dist/src/ui/components/HookStatusDisplay.test.js.map +1 -0
  290. package/dist/src/ui/components/IdeTrustChangeDialog.js +2 -1
  291. package/dist/src/ui/components/IdeTrustChangeDialog.js.map +1 -1
  292. package/dist/src/ui/components/IdeTrustChangeDialog.test.js +4 -3
  293. package/dist/src/ui/components/IdeTrustChangeDialog.test.js.map +1 -1
  294. package/dist/src/ui/components/InputPrompt.js +54 -24
  295. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  296. package/dist/src/ui/components/InputPrompt.test.js +172 -7
  297. package/dist/src/ui/components/InputPrompt.test.js.map +1 -1
  298. package/dist/src/ui/components/LogoutConfirmationDialog.d.ts +15 -0
  299. package/dist/src/ui/components/LogoutConfirmationDialog.js +37 -0
  300. package/dist/src/ui/components/LogoutConfirmationDialog.js.map +1 -0
  301. package/dist/src/ui/components/LogoutConfirmationDialog.test.d.ts +6 -0
  302. package/dist/src/ui/components/LogoutConfirmationDialog.test.js +59 -0
  303. package/dist/src/ui/components/LogoutConfirmationDialog.test.js.map +1 -0
  304. package/dist/src/ui/components/MainContent.js +12 -10
  305. package/dist/src/ui/components/MainContent.js.map +1 -1
  306. package/dist/src/ui/components/MainContent.test.js +19 -9
  307. package/dist/src/ui/components/MainContent.test.js.map +1 -1
  308. package/dist/src/ui/components/ModelDialog.js +7 -3
  309. package/dist/src/ui/components/ModelDialog.js.map +1 -1
  310. package/dist/src/ui/components/ModelDialog.test.js +16 -2
  311. package/dist/src/ui/components/ModelDialog.test.js.map +1 -1
  312. package/dist/src/ui/components/ModelStatsDisplay.js +68 -14
  313. package/dist/src/ui/components/ModelStatsDisplay.js.map +1 -1
  314. package/dist/src/ui/components/ModelStatsDisplay.test.js +53 -2
  315. package/dist/src/ui/components/ModelStatsDisplay.test.js.map +1 -1
  316. package/dist/src/ui/components/MultiFolderTrustDialog.d.ts +2 -2
  317. package/dist/src/ui/components/MultiFolderTrustDialog.js +2 -2
  318. package/dist/src/ui/components/MultiFolderTrustDialog.js.map +1 -1
  319. package/dist/src/ui/components/MultiFolderTrustDialog.test.js +9 -9
  320. package/dist/src/ui/components/MultiFolderTrustDialog.test.js.map +1 -1
  321. package/dist/src/ui/components/Notifications.js +3 -4
  322. package/dist/src/ui/components/Notifications.js.map +1 -1
  323. package/dist/src/ui/components/Notifications.test.js +1 -0
  324. package/dist/src/ui/components/Notifications.test.js.map +1 -1
  325. package/dist/src/ui/components/ProQuotaDialog.d.ts +1 -3
  326. package/dist/src/ui/components/ProQuotaDialog.js +3 -21
  327. package/dist/src/ui/components/ProQuotaDialog.js.map +1 -1
  328. package/dist/src/ui/components/ProQuotaDialog.test.js +25 -10
  329. package/dist/src/ui/components/ProQuotaDialog.test.js.map +1 -1
  330. package/dist/src/ui/components/SettingsDialog.js +36 -16
  331. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  332. package/dist/src/ui/components/SettingsDialog.test.js +20 -3
  333. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
  334. package/dist/src/ui/components/StatusDisplay.d.ts +11 -0
  335. package/dist/src/ui/components/StatusDisplay.js +40 -0
  336. package/dist/src/ui/components/StatusDisplay.js.map +1 -0
  337. package/dist/src/ui/components/StatusDisplay.test.d.ts +6 -0
  338. package/dist/src/ui/components/StatusDisplay.test.js +144 -0
  339. package/dist/src/ui/components/StatusDisplay.test.js.map +1 -0
  340. package/dist/src/ui/components/StickyHeader.d.ts +2 -0
  341. package/dist/src/ui/components/StickyHeader.js +1 -1
  342. package/dist/src/ui/components/StickyHeader.js.map +1 -1
  343. package/dist/src/ui/components/SuggestionsDisplay.js +7 -2
  344. package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -1
  345. package/dist/src/ui/components/Table.d.ts +21 -0
  346. package/dist/src/ui/components/Table.js +7 -0
  347. package/dist/src/ui/components/Table.js.map +1 -0
  348. package/dist/src/ui/components/Table.test.d.ts +6 -0
  349. package/dist/src/ui/components/Table.test.js +53 -0
  350. package/dist/src/ui/components/Table.test.js.map +1 -0
  351. package/dist/src/ui/components/ThemeDialog.js +63 -17
  352. package/dist/src/ui/components/ThemeDialog.js.map +1 -1
  353. package/dist/src/ui/components/ThemeDialog.test.js +66 -1
  354. package/dist/src/ui/components/ThemeDialog.test.js.map +1 -1
  355. package/dist/src/ui/components/messages/DiffRenderer.js +5 -13
  356. package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -1
  357. package/dist/src/ui/components/messages/DiffRenderer.test.js +26 -17
  358. package/dist/src/ui/components/messages/DiffRenderer.test.js.map +1 -1
  359. package/dist/src/ui/components/messages/ShellToolMessage.js +8 -5
  360. package/dist/src/ui/components/messages/ShellToolMessage.js.map +1 -1
  361. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +1 -5
  362. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  363. package/dist/src/ui/components/messages/ToolMessage.js +6 -2
  364. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  365. package/dist/src/ui/components/messages/ToolMessage.test.js +1 -0
  366. package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -1
  367. package/dist/src/ui/components/messages/ToolResultDisplay.js +22 -16
  368. package/dist/src/ui/components/messages/ToolResultDisplay.js.map +1 -1
  369. package/dist/src/ui/components/messages/ToolResultDisplay.test.js +36 -18
  370. package/dist/src/ui/components/messages/ToolResultDisplay.test.js.map +1 -1
  371. package/dist/src/ui/components/messages/ToolStickyHeaderRegression.test.d.ts +6 -0
  372. package/dist/src/ui/components/messages/ToolStickyHeaderRegression.test.js +134 -0
  373. package/dist/src/ui/components/messages/ToolStickyHeaderRegression.test.js.map +1 -0
  374. package/dist/src/ui/components/shared/MaxSizedBox.d.ts +2 -38
  375. package/dist/src/ui/components/shared/MaxSizedBox.js +34 -418
  376. package/dist/src/ui/components/shared/MaxSizedBox.js.map +1 -1
  377. package/dist/src/ui/components/shared/MaxSizedBox.test.js +48 -133
  378. package/dist/src/ui/components/shared/MaxSizedBox.test.js.map +1 -1
  379. package/dist/src/ui/components/shared/RadioButtonSelect.d.ts +4 -1
  380. package/dist/src/ui/components/shared/RadioButtonSelect.js +11 -10
  381. package/dist/src/ui/components/shared/RadioButtonSelect.js.map +1 -1
  382. package/dist/src/ui/components/shared/text-buffer.d.ts +40 -4
  383. package/dist/src/ui/components/shared/text-buffer.js +234 -64
  384. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  385. package/dist/src/ui/components/shared/text-buffer.test.js +147 -1
  386. package/dist/src/ui/components/shared/text-buffer.test.js.map +1 -1
  387. package/dist/src/ui/components/shared/vim-buffer-actions.test.js +3 -0
  388. package/dist/src/ui/components/shared/vim-buffer-actions.test.js.map +1 -1
  389. package/dist/src/ui/components/views/AgentsStatus.d.ts +13 -0
  390. package/dist/src/ui/components/views/AgentsStatus.js +23 -0
  391. package/dist/src/ui/components/views/AgentsStatus.js.map +1 -0
  392. package/dist/src/ui/components/views/ExtensionsList.js +3 -2
  393. package/dist/src/ui/components/views/ExtensionsList.js.map +1 -1
  394. package/dist/src/ui/components/views/ExtensionsList.test.js +37 -0
  395. package/dist/src/ui/components/views/ExtensionsList.test.js.map +1 -1
  396. package/dist/src/ui/components/views/HooksList.d.ts +2 -0
  397. package/dist/src/ui/components/views/HooksList.js +12 -7
  398. package/dist/src/ui/components/views/HooksList.js.map +1 -1
  399. package/dist/src/ui/components/views/McpStatus.js +7 -2
  400. package/dist/src/ui/components/views/McpStatus.js.map +1 -1
  401. package/dist/src/ui/components/views/McpStatus.test.js +10 -0
  402. package/dist/src/ui/components/views/McpStatus.test.js.map +1 -1
  403. package/dist/src/ui/components/views/SkillsList.d.ts +13 -0
  404. package/dist/src/ui/components/views/SkillsList.js +17 -0
  405. package/dist/src/ui/components/views/SkillsList.js.map +1 -0
  406. package/dist/src/ui/components/views/SkillsList.test.d.ts +6 -0
  407. package/dist/src/ui/components/views/SkillsList.test.js +97 -0
  408. package/dist/src/ui/components/views/SkillsList.test.js.map +1 -0
  409. package/dist/src/ui/constants/tips.js +1 -4
  410. package/dist/src/ui/constants/tips.js.map +1 -1
  411. package/dist/src/ui/constants.d.ts +4 -3
  412. package/dist/src/ui/constants.js +5 -6
  413. package/dist/src/ui/constants.js.map +1 -1
  414. package/dist/src/ui/contexts/KeypressContext.d.ts +1 -0
  415. package/dist/src/ui/contexts/KeypressContext.js +84 -6
  416. package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
  417. package/dist/src/ui/contexts/KeypressContext.test.js +130 -9
  418. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
  419. package/dist/src/ui/contexts/UIActionsContext.d.ts +3 -0
  420. package/dist/src/ui/contexts/UIActionsContext.js.map +1 -1
  421. package/dist/src/ui/contexts/UIStateContext.d.ts +5 -1
  422. package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
  423. package/dist/src/ui/contexts/VimModeContext.js +1 -1
  424. package/dist/src/ui/contexts/VimModeContext.js.map +1 -1
  425. package/dist/src/ui/hooks/atCommandProcessor.js +17 -3
  426. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  427. package/dist/src/ui/hooks/atCommandProcessor.test.js +9 -3
  428. package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -1
  429. package/dist/src/ui/hooks/atCommandProcessor_agents.test.d.ts +6 -0
  430. package/dist/src/ui/hooks/atCommandProcessor_agents.test.js +183 -0
  431. package/dist/src/ui/hooks/atCommandProcessor_agents.test.js.map +1 -0
  432. package/dist/src/ui/hooks/slashCommandProcessor.js +18 -7
  433. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  434. package/dist/src/ui/hooks/slashCommandProcessor.test.js +2 -3
  435. package/dist/src/ui/hooks/slashCommandProcessor.test.js.map +1 -1
  436. package/dist/src/ui/hooks/useAtCompletion.js +31 -0
  437. package/dist/src/ui/hooks/useAtCompletion.js.map +1 -1
  438. package/dist/src/ui/hooks/useAtCompletion_agents.test.d.ts +6 -0
  439. package/dist/src/ui/hooks/useAtCompletion_agents.test.js +85 -0
  440. package/dist/src/ui/hooks/useAtCompletion_agents.test.js.map +1 -0
  441. package/dist/src/ui/hooks/useAutoAcceptIndicator.d.ts +2 -1
  442. package/dist/src/ui/hooks/useAutoAcceptIndicator.js +5 -4
  443. package/dist/src/ui/hooks/useAutoAcceptIndicator.js.map +1 -1
  444. package/dist/src/ui/hooks/useCommandCompletion.d.ts +1 -0
  445. package/dist/src/ui/hooks/useCommandCompletion.js +13 -8
  446. package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -1
  447. package/dist/src/ui/hooks/useCommandCompletion.test.js +88 -2
  448. package/dist/src/ui/hooks/useCommandCompletion.test.js.map +1 -1
  449. package/dist/src/ui/hooks/useExtensionUpdates.js +5 -7
  450. package/dist/src/ui/hooks/useExtensionUpdates.js.map +1 -1
  451. package/dist/src/ui/hooks/useExtensionUpdates.test.js +20 -4
  452. package/dist/src/ui/hooks/useExtensionUpdates.test.js.map +1 -1
  453. package/dist/src/ui/hooks/useFolderTrust.js +14 -19
  454. package/dist/src/ui/hooks/useFolderTrust.js.map +1 -1
  455. package/dist/src/ui/hooks/useFolderTrust.test.js +31 -23
  456. package/dist/src/ui/hooks/useFolderTrust.test.js.map +1 -1
  457. package/dist/src/ui/hooks/useGeminiStream.d.ts +2 -1
  458. package/dist/src/ui/hooks/useGeminiStream.js +84 -16
  459. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  460. package/dist/src/ui/hooks/useGeminiStream.test.js +290 -10
  461. package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
  462. package/dist/src/ui/hooks/useHistoryManager.d.ts +1 -1
  463. package/dist/src/ui/hooks/useHistoryManager.js +1 -1
  464. package/dist/src/ui/hooks/useHistoryManager.js.map +1 -1
  465. package/dist/src/ui/hooks/useHistoryManager.test.js +16 -0
  466. package/dist/src/ui/hooks/useHistoryManager.test.js.map +1 -1
  467. package/dist/src/ui/hooks/useHookDisplayState.d.ts +7 -0
  468. package/dist/src/ui/hooks/useHookDisplayState.js +83 -0
  469. package/dist/src/ui/hooks/useHookDisplayState.js.map +1 -0
  470. package/dist/src/ui/hooks/useHookDisplayState.test.d.ts +6 -0
  471. package/dist/src/ui/hooks/useHookDisplayState.test.js +180 -0
  472. package/dist/src/ui/hooks/useHookDisplayState.test.js.map +1 -0
  473. package/dist/src/ui/hooks/useIncludeDirsTrust.js +4 -4
  474. package/dist/src/ui/hooks/useIncludeDirsTrust.js.map +1 -1
  475. package/dist/src/ui/hooks/useIncludeDirsTrust.test.js +2 -2
  476. package/dist/src/ui/hooks/useIncludeDirsTrust.test.js.map +1 -1
  477. package/dist/src/ui/hooks/useKittyKeyboardProtocol.js +2 -2
  478. package/dist/src/ui/hooks/useKittyKeyboardProtocol.js.map +1 -1
  479. package/dist/src/ui/hooks/useLoadingIndicator.d.ts +2 -1
  480. package/dist/src/ui/hooks/useLoadingIndicator.js +7 -3
  481. package/dist/src/ui/hooks/useLoadingIndicator.js.map +1 -1
  482. package/dist/src/ui/hooks/useLoadingIndicator.test.js +14 -4
  483. package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -1
  484. package/dist/src/ui/hooks/usePermissionsModifyTrust.test.js +10 -3
  485. package/dist/src/ui/hooks/usePermissionsModifyTrust.test.js.map +1 -1
  486. package/dist/src/ui/hooks/usePhraseCycler.d.ts +1 -1
  487. package/dist/src/ui/hooks/usePhraseCycler.js +2 -2
  488. package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
  489. package/dist/src/ui/hooks/usePromptCompletion.js +0 -2
  490. package/dist/src/ui/hooks/usePromptCompletion.js.map +1 -1
  491. package/dist/src/ui/hooks/useQuotaAndFallback.js +11 -9
  492. package/dist/src/ui/hooks/useQuotaAndFallback.js.map +1 -1
  493. package/dist/src/ui/hooks/useQuotaAndFallback.test.js +22 -16
  494. package/dist/src/ui/hooks/useQuotaAndFallback.test.js.map +1 -1
  495. package/dist/src/ui/hooks/useReactToolScheduler.d.ts +1 -1
  496. package/dist/src/ui/hooks/useReactToolScheduler.js +1 -1
  497. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  498. package/dist/src/ui/hooks/useRewind.d.ts +14 -0
  499. package/dist/src/ui/hooks/useRewind.js +31 -0
  500. package/dist/src/ui/hooks/useRewind.js.map +1 -0
  501. package/dist/src/ui/hooks/useRewind.test.d.ts +6 -0
  502. package/dist/src/ui/hooks/useRewind.test.js +100 -0
  503. package/dist/src/ui/hooks/useRewind.test.js.map +1 -0
  504. package/dist/src/ui/hooks/useSelectionList.js +2 -1
  505. package/dist/src/ui/hooks/useSelectionList.js.map +1 -1
  506. package/dist/src/ui/hooks/useSessionBrowser.js +3 -3
  507. package/dist/src/ui/hooks/useSessionBrowser.js.map +1 -1
  508. package/dist/src/ui/hooks/useSessionBrowser.test.js +4 -10
  509. package/dist/src/ui/hooks/useSessionBrowser.test.js.map +1 -1
  510. package/dist/src/ui/hooks/useShellHistory.js +3 -3
  511. package/dist/src/ui/hooks/useShellHistory.js.map +1 -1
  512. package/dist/src/ui/hooks/useSlashCompletion.js +26 -11
  513. package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -1
  514. package/dist/src/ui/hooks/useSlashCompletion.test.js +115 -5
  515. package/dist/src/ui/hooks/useSlashCompletion.test.js.map +1 -1
  516. package/dist/src/ui/hooks/useToolScheduler.test.js +73 -50
  517. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  518. package/dist/src/ui/hooks/vim.test.js +7 -0
  519. package/dist/src/ui/hooks/vim.test.js.map +1 -1
  520. package/dist/src/ui/keyMatchers.test.js +79 -53
  521. package/dist/src/ui/keyMatchers.test.js.map +1 -1
  522. package/dist/src/ui/themes/ansi-light.js +1 -1
  523. package/dist/src/ui/themes/ansi-light.js.map +1 -1
  524. package/dist/src/ui/themes/ansi.js +1 -1
  525. package/dist/src/ui/themes/ansi.js.map +1 -1
  526. package/dist/src/ui/themes/color-utils.d.ts +1 -0
  527. package/dist/src/ui/themes/color-utils.js +13 -0
  528. package/dist/src/ui/themes/color-utils.js.map +1 -1
  529. package/dist/src/ui/themes/color-utils.test.js +20 -1
  530. package/dist/src/ui/themes/color-utils.test.js.map +1 -1
  531. package/dist/src/ui/themes/shades-of-purple.js +1 -1
  532. package/dist/src/ui/themes/shades-of-purple.js.map +1 -1
  533. package/dist/src/ui/themes/theme-manager.d.ts +5 -0
  534. package/dist/src/ui/themes/theme-manager.js +9 -3
  535. package/dist/src/ui/themes/theme-manager.js.map +1 -1
  536. package/dist/src/ui/themes/theme-manager.test.js +7 -0
  537. package/dist/src/ui/themes/theme-manager.test.js.map +1 -1
  538. package/dist/src/ui/themes/theme.d.ts +12 -0
  539. package/dist/src/ui/themes/theme.js +34 -4
  540. package/dist/src/ui/themes/theme.js.map +1 -1
  541. package/dist/src/ui/themes/theme.test.js +23 -0
  542. package/dist/src/ui/themes/theme.test.js.map +1 -1
  543. package/dist/src/ui/types.d.ts +23 -4
  544. package/dist/src/ui/types.js +4 -0
  545. package/dist/src/ui/types.js.map +1 -1
  546. package/dist/src/ui/utils/CodeColorizer.js +2 -2
  547. package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
  548. package/dist/src/ui/utils/CodeColorizer.test.js +1 -1
  549. package/dist/src/ui/utils/CodeColorizer.test.js.map +1 -1
  550. package/dist/src/ui/utils/ConsolePatcher.js +1 -0
  551. package/dist/src/ui/utils/ConsolePatcher.js.map +1 -1
  552. package/dist/src/ui/utils/InlineMarkdownRenderer.js +2 -1
  553. package/dist/src/ui/utils/InlineMarkdownRenderer.js.map +1 -1
  554. package/dist/src/ui/utils/MarkdownDisplay.test.js +1 -1
  555. package/dist/src/ui/utils/MarkdownDisplay.test.js.map +1 -1
  556. package/dist/src/ui/utils/clipboardUtils.d.ts +2 -2
  557. package/dist/src/ui/utils/clipboardUtils.js +50 -4
  558. package/dist/src/ui/utils/clipboardUtils.js.map +1 -1
  559. package/dist/src/ui/utils/clipboardUtils.test.js +12 -12
  560. package/dist/src/ui/utils/clipboardUtils.test.js.map +1 -1
  561. package/dist/src/ui/utils/clipboardUtils.windows.test.d.ts +6 -0
  562. package/dist/src/ui/utils/clipboardUtils.windows.test.js +52 -0
  563. package/dist/src/ui/utils/clipboardUtils.windows.test.js.map +1 -0
  564. package/dist/src/ui/utils/commandUtils.js +13 -10
  565. package/dist/src/ui/utils/commandUtils.js.map +1 -1
  566. package/dist/src/ui/utils/commandUtils.test.js +39 -2
  567. package/dist/src/ui/utils/commandUtils.test.js.map +1 -1
  568. package/dist/src/ui/utils/directoryUtils.d.ts +8 -0
  569. package/dist/src/ui/utils/directoryUtils.js +95 -3
  570. package/dist/src/ui/utils/directoryUtils.js.map +1 -1
  571. package/dist/src/ui/utils/directoryUtils.test.js +193 -3
  572. package/dist/src/ui/utils/directoryUtils.test.js.map +1 -1
  573. package/dist/src/ui/utils/highlight.d.ts +3 -2
  574. package/dist/src/ui/utils/highlight.js +46 -36
  575. package/dist/src/ui/utils/highlight.js.map +1 -1
  576. package/dist/src/ui/utils/highlight.test.js +75 -0
  577. package/dist/src/ui/utils/highlight.test.js.map +1 -1
  578. package/dist/src/ui/utils/historyExportUtils.d.ts +21 -0
  579. package/dist/src/ui/utils/historyExportUtils.js +59 -0
  580. package/dist/src/ui/utils/historyExportUtils.js.map +1 -0
  581. package/dist/src/ui/utils/rewindFileOps.d.ts +47 -0
  582. package/dist/src/ui/utils/rewindFileOps.js +190 -0
  583. package/dist/src/ui/utils/rewindFileOps.js.map +1 -0
  584. package/dist/src/ui/utils/rewindFileOps.test.d.ts +6 -0
  585. package/dist/src/ui/utils/rewindFileOps.test.js +375 -0
  586. package/dist/src/ui/utils/rewindFileOps.test.js.map +1 -0
  587. package/dist/src/ui/utils/terminalCapabilityManager.d.ts +41 -0
  588. package/dist/src/ui/utils/terminalCapabilityManager.js +209 -0
  589. package/dist/src/ui/utils/terminalCapabilityManager.js.map +1 -0
  590. package/dist/src/ui/utils/terminalCapabilityManager.test.d.ts +6 -0
  591. package/dist/src/ui/utils/terminalCapabilityManager.test.js +221 -0
  592. package/dist/src/ui/utils/terminalCapabilityManager.test.js.map +1 -0
  593. package/dist/src/ui/utils/terminalSetup.d.ts +1 -1
  594. package/dist/src/ui/utils/terminalSetup.js +21 -6
  595. package/dist/src/ui/utils/terminalSetup.js.map +1 -1
  596. package/dist/src/ui/utils/terminalSetup.test.js +11 -2
  597. package/dist/src/ui/utils/terminalSetup.test.js.map +1 -1
  598. package/dist/src/ui/utils/textUtils.js +9 -1
  599. package/dist/src/ui/utils/textUtils.js.map +1 -1
  600. package/dist/src/ui/utils/textUtils.test.js +12 -1
  601. package/dist/src/ui/utils/textUtils.test.js.map +1 -1
  602. package/dist/src/ui/utils/ui-sizing.js +1 -1
  603. package/dist/src/ui/utils/ui-sizing.js.map +1 -1
  604. package/dist/src/ui/utils/ui-sizing.test.js +2 -2
  605. package/dist/src/ui/utils/ui-sizing.test.js.map +1 -1
  606. package/dist/src/utils/activityLogger.d.ts +47 -0
  607. package/dist/src/utils/activityLogger.js +297 -0
  608. package/dist/src/utils/activityLogger.js.map +1 -0
  609. package/dist/src/utils/cleanup.d.ts +5 -0
  610. package/dist/src/utils/cleanup.js +17 -0
  611. package/dist/src/utils/cleanup.js.map +1 -1
  612. package/dist/src/utils/cleanup.test.js +21 -31
  613. package/dist/src/utils/cleanup.test.js.map +1 -1
  614. package/dist/src/utils/errors.js +9 -10
  615. package/dist/src/utils/errors.js.map +1 -1
  616. package/dist/src/utils/errors.test.js +95 -37
  617. package/dist/src/utils/errors.test.js.map +1 -1
  618. package/dist/src/utils/handleAutoUpdate.test.js +2 -2
  619. package/dist/src/utils/processUtils.d.ts +1 -1
  620. package/dist/src/utils/processUtils.js +1 -1
  621. package/dist/src/utils/processUtils.js.map +1 -1
  622. package/dist/src/utils/readStdin.js +7 -0
  623. package/dist/src/utils/readStdin.js.map +1 -1
  624. package/dist/src/utils/readStdin.test.js +4 -0
  625. package/dist/src/utils/readStdin.test.js.map +1 -1
  626. package/dist/src/utils/readStdin_safety.test.d.ts +6 -0
  627. package/dist/src/utils/readStdin_safety.test.js +68 -0
  628. package/dist/src/utils/readStdin_safety.test.js.map +1 -0
  629. package/dist/src/utils/relaunch.js +3 -1
  630. package/dist/src/utils/relaunch.js.map +1 -1
  631. package/dist/src/utils/relaunch.test.js +13 -7
  632. package/dist/src/utils/relaunch.test.js.map +1 -1
  633. package/dist/src/utils/resolvePath.js +3 -3
  634. package/dist/src/utils/resolvePath.js.map +1 -1
  635. package/dist/src/utils/resolvePath.test.js +3 -0
  636. package/dist/src/utils/resolvePath.test.js.map +1 -1
  637. package/dist/src/utils/sandbox.js +27 -17
  638. package/dist/src/utils/sandbox.js.map +1 -1
  639. package/dist/src/utils/sandbox.test.js +17 -5
  640. package/dist/src/utils/sandbox.test.js.map +1 -1
  641. package/dist/src/utils/sessionCleanup.integration.test.js +2 -2
  642. package/dist/src/utils/sessionCleanup.integration.test.js.map +1 -1
  643. package/dist/src/utils/sessionCleanup.js +16 -4
  644. package/dist/src/utils/sessionCleanup.js.map +1 -1
  645. package/dist/src/utils/sessionCleanup.test.js +18 -68
  646. package/dist/src/utils/sessionCleanup.test.js.map +1 -1
  647. package/dist/src/utils/sessionUtils.d.ts +20 -0
  648. package/dist/src/utils/sessionUtils.js +32 -4
  649. package/dist/src/utils/sessionUtils.js.map +1 -1
  650. package/dist/src/utils/sessionUtils.test.js +3 -3
  651. package/dist/src/utils/sessionUtils.test.js.map +1 -1
  652. package/dist/src/utils/sessions.js +9 -9
  653. package/dist/src/utils/sessions.js.map +1 -1
  654. package/dist/src/utils/sessions.test.js +38 -41
  655. package/dist/src/utils/sessions.test.js.map +1 -1
  656. package/dist/src/utils/settingsUtils.js +0 -5
  657. package/dist/src/utils/settingsUtils.js.map +1 -1
  658. package/dist/src/utils/skillSettings.d.ts +33 -0
  659. package/dist/src/utils/skillSettings.js +101 -0
  660. package/dist/src/utils/skillSettings.js.map +1 -0
  661. package/dist/src/utils/skillUtils.d.ts +29 -0
  662. package/dist/src/utils/skillUtils.js +144 -0
  663. package/dist/src/utils/skillUtils.js.map +1 -0
  664. package/dist/src/utils/skillUtils.test.d.ts +6 -0
  665. package/dist/src/utils/skillUtils.test.js +57 -0
  666. package/dist/src/utils/skillUtils.test.js.map +1 -0
  667. package/dist/src/utils/terminalTheme.d.ts +15 -0
  668. package/dist/src/utils/terminalTheme.js +50 -0
  669. package/dist/src/utils/terminalTheme.js.map +1 -0
  670. package/dist/src/utils/userStartupWarnings.d.ts +2 -1
  671. package/dist/src/utils/userStartupWarnings.js +17 -7
  672. package/dist/src/utils/userStartupWarnings.js.map +1 -1
  673. package/dist/src/utils/userStartupWarnings.test.js +37 -6
  674. package/dist/src/utils/userStartupWarnings.test.js.map +1 -1
  675. package/dist/src/utils/windowTitle.d.ts +13 -4
  676. package/dist/src/utils/windowTitle.js +65 -7
  677. package/dist/src/utils/windowTitle.js.map +1 -1
  678. package/dist/src/utils/windowTitle.test.js +183 -40
  679. package/dist/src/utils/windowTitle.test.js.map +1 -1
  680. package/dist/src/validateNonInterActiveAuth.d.ts +1 -1
  681. package/dist/src/validateNonInterActiveAuth.js +1 -2
  682. package/dist/src/validateNonInterActiveAuth.js.map +1 -1
  683. package/dist/src/zed-integration/fileSystemService.d.ts +3 -3
  684. package/dist/src/zed-integration/fileSystemService.js +5 -7
  685. package/dist/src/zed-integration/fileSystemService.js.map +1 -1
  686. package/dist/src/zed-integration/fileSystemService.test.js +11 -13
  687. package/dist/src/zed-integration/fileSystemService.test.js.map +1 -1
  688. package/dist/src/zed-integration/zedIntegration.d.ts +5 -5
  689. package/dist/src/zed-integration/zedIntegration.js +42 -21
  690. package/dist/src/zed-integration/zedIntegration.js.map +1 -1
  691. package/dist/src/zed-integration/zedIntegration.test.js +29 -18
  692. package/dist/src/zed-integration/zedIntegration.test.js.map +1 -1
  693. package/dist/tsconfig.tsbuildinfo +1 -1
  694. package/package.json +5 -4
  695. package/dist/src/commands/extensions/settings.js +0 -111
  696. package/dist/src/commands/extensions/settings.js.map +0 -1
  697. package/dist/src/ui/hooks/useBracketedPaste.d.ts +0 -12
  698. package/dist/src/ui/hooks/useBracketedPaste.js +0 -31
  699. package/dist/src/ui/hooks/useBracketedPaste.js.map +0 -1
  700. package/dist/src/ui/utils/bracketedPaste.d.ts +0 -7
  701. package/dist/src/ui/utils/bracketedPaste.js +0 -15
  702. package/dist/src/ui/utils/bracketedPaste.js.map +0 -1
  703. package/dist/src/ui/utils/kittyProtocolDetector.d.ts +0 -17
  704. package/dist/src/ui/utils/kittyProtocolDetector.js +0 -111
  705. package/dist/src/ui/utils/kittyProtocolDetector.js.map +0 -1
  706. package/dist/src/ui/utils/kittyProtocolDetector.test.js +0 -113
  707. package/dist/src/ui/utils/kittyProtocolDetector.test.js.map +0 -1
  708. package/dist/src/zed-integration/acp.d.ts +0 -41
  709. package/dist/src/zed-integration/acp.js +0 -72
  710. package/dist/src/zed-integration/acp.js.map +0 -1
  711. package/dist/src/zed-integration/acp.test.js +0 -214
  712. package/dist/src/zed-integration/acp.test.js.map +0 -1
  713. package/dist/src/zed-integration/connection.d.ts +0 -28
  714. package/dist/src/zed-integration/connection.js +0 -165
  715. package/dist/src/zed-integration/connection.js.map +0 -1
  716. package/dist/src/zed-integration/connection.test.js +0 -175
  717. package/dist/src/zed-integration/connection.test.js.map +0 -1
  718. package/dist/src/zed-integration/schema.d.ts +0 -11792
  719. package/dist/src/zed-integration/schema.js +0 -311
  720. package/dist/src/zed-integration/schema.js.map +0 -1
  721. /package/dist/src/{ui/utils/kittyProtocolDetector.test.d.ts → config/extension-manager-scope.test.d.ts} +0 -0
  722. /package/dist/src/{zed-integration/acp.test.d.ts → config/extension-manager-skills.test.d.ts} +0 -0
  723. /package/dist/src/{zed-integration/connection.test.d.ts → config/extensions/extensionUpdates.test.d.ts} +0 -0
@@ -7,15 +7,24 @@ import { vi, describe, it, expect, beforeEach, afterEach } from 'vitest';
7
7
  import { createMockCommandContext } from '../../test-utils/mockCommandContext.js';
8
8
  import { AuthType } from '@google/gemini-cli-core';
9
9
  import * as fsPromises from 'node:fs/promises';
10
- import { chatCommand, serializeHistoryToMarkdown } from './chatCommand.js';
10
+ import { chatCommand, debugCommand } from './chatCommand.js';
11
+ import { serializeHistoryToMarkdown, exportHistoryToFile, } from '../utils/historyExportUtils.js';
11
12
  import path from 'node:path';
12
13
  vi.mock('fs/promises', () => ({
13
14
  stat: vi.fn(),
14
15
  readdir: vi.fn().mockResolvedValue(['file1.txt', 'file2.txt']),
15
16
  writeFile: vi.fn(),
16
17
  }));
18
+ vi.mock('../utils/historyExportUtils.js', async (importOriginal) => {
19
+ const actual = await importOriginal();
20
+ return {
21
+ ...actual,
22
+ exportHistoryToFile: vi.fn(),
23
+ };
24
+ });
17
25
  describe('chatCommand', () => {
18
- const mockFs = fsPromises;
26
+ const mockFs = vi.mocked(fsPromises);
27
+ const mockExport = vi.mocked(exportHistoryToFile);
19
28
  let mockContext;
20
29
  let mockGetChat;
21
30
  let mockSaveCheckpoint;
@@ -31,7 +40,7 @@ describe('chatCommand', () => {
31
40
  };
32
41
  beforeEach(() => {
33
42
  mockGetHistory = vi.fn().mockReturnValue([]);
34
- mockGetChat = vi.fn().mockResolvedValue({
43
+ mockGetChat = vi.fn().mockReturnValue({
35
44
  getHistory: mockGetHistory,
36
45
  });
37
46
  mockSaveCheckpoint = vi.fn().mockResolvedValue(undefined);
@@ -99,7 +108,7 @@ describe('chatCommand', () => {
99
108
  mtime: date2.toISOString(),
100
109
  },
101
110
  ],
102
- }, expect.any(Number));
111
+ });
103
112
  });
104
113
  });
105
114
  describe('save subcommand', () => {
@@ -129,7 +138,6 @@ describe('chatCommand', () => {
129
138
  });
130
139
  mockGetHistory.mockReturnValue([
131
140
  { role: 'user', parts: [{ text: 'context for our chat' }] },
132
- { role: 'model', parts: [{ text: 'Got it. Thanks for the context!' }] },
133
141
  ]);
134
142
  result = await saveCommand?.action?.(mockContext, tag);
135
143
  expect(result).toEqual({
@@ -169,9 +177,7 @@ describe('chatCommand', () => {
169
177
  it('should save the conversation if overwrite is confirmed', async () => {
170
178
  const history = [
171
179
  { role: 'user', parts: [{ text: 'context for our chat' }] },
172
- { role: 'model', parts: [{ text: 'Got it. Thanks for the context!' }] },
173
180
  { role: 'user', parts: [{ text: 'hello' }] },
174
- { role: 'model', parts: [{ text: 'Hi there!' }] },
175
181
  ];
176
182
  mockGetHistory.mockReturnValue(history);
177
183
  mockContext.overwriteConfirmed = true;
@@ -211,6 +217,7 @@ describe('chatCommand', () => {
211
217
  });
212
218
  it('should resume a conversation with matching authType', async () => {
213
219
  const conversation = [
220
+ { role: 'user', parts: [{ text: 'system setup' }] },
214
221
  { role: 'user', parts: [{ text: 'hello gemini' }] },
215
222
  { role: 'model', parts: [{ text: 'hello world' }] },
216
223
  ];
@@ -230,6 +237,7 @@ describe('chatCommand', () => {
230
237
  });
231
238
  it('should block resuming a conversation with mismatched authType', async () => {
232
239
  const conversation = [
240
+ { role: 'user', parts: [{ text: 'system setup' }] },
233
241
  { role: 'user', parts: [{ text: 'hello gemini' }] },
234
242
  { role: 'model', parts: [{ text: 'hello world' }] },
235
243
  ];
@@ -246,6 +254,7 @@ describe('chatCommand', () => {
246
254
  });
247
255
  it('should resume a legacy conversation without authType', async () => {
248
256
  const conversation = [
257
+ { role: 'user', parts: [{ text: 'system setup' }] },
249
258
  { role: 'user', parts: [{ text: 'hello gemini' }] },
250
259
  { role: 'model', parts: [{ text: 'hello world' }] },
251
260
  ];
@@ -348,9 +357,10 @@ describe('chatCommand', () => {
348
357
  it('should default to a json file if no path is provided', async () => {
349
358
  const result = await shareCommand?.action?.(mockContext, '');
350
359
  const expectedPath = path.join(process.cwd(), 'gemini-conversation-1234567890.json');
351
- const [actualPath, actualContent] = mockFs.writeFile.mock.calls[0];
352
- expect(actualPath).toEqual(expectedPath);
353
- expect(actualContent).toEqual(JSON.stringify(mockHistory, null, 2));
360
+ expect(mockExport).toHaveBeenCalledWith({
361
+ history: mockHistory,
362
+ filePath: expectedPath,
363
+ });
354
364
  expect(result).toEqual({
355
365
  type: 'message',
356
366
  messageType: 'info',
@@ -361,9 +371,10 @@ describe('chatCommand', () => {
361
371
  const filePath = 'my-chat.json';
362
372
  const result = await shareCommand?.action?.(mockContext, filePath);
363
373
  const expectedPath = path.join(process.cwd(), 'my-chat.json');
364
- const [actualPath, actualContent] = mockFs.writeFile.mock.calls[0];
365
- expect(actualPath).toEqual(expectedPath);
366
- expect(actualContent).toEqual(JSON.stringify(mockHistory, null, 2));
374
+ expect(mockExport).toHaveBeenCalledWith({
375
+ history: mockHistory,
376
+ filePath: expectedPath,
377
+ });
367
378
  expect(result).toEqual({
368
379
  type: 'message',
369
380
  messageType: 'info',
@@ -374,30 +385,10 @@ describe('chatCommand', () => {
374
385
  const filePath = 'my-chat.md';
375
386
  const result = await shareCommand?.action?.(mockContext, filePath);
376
387
  const expectedPath = path.join(process.cwd(), 'my-chat.md');
377
- const [actualPath, actualContent] = mockFs.writeFile.mock.calls[0];
378
- expect(actualPath).toEqual(expectedPath);
379
- const expectedContent = `## USER 🧑‍💻
380
-
381
- context
382
-
383
- ---
384
-
385
- ## MODEL ✨
386
-
387
- context response
388
-
389
- ---
390
-
391
- ## USER 🧑‍💻
392
-
393
- Hello
394
-
395
- ---
396
-
397
- ## MODEL ✨
398
-
399
- Hi there!`;
400
- expect(actualContent).toEqual(expectedContent);
388
+ expect(mockExport).toHaveBeenCalledWith({
389
+ history: mockHistory,
390
+ filePath: expectedPath,
391
+ });
401
392
  expect(result).toEqual({
402
393
  type: 'message',
403
394
  messageType: 'info',
@@ -407,7 +398,7 @@ Hi there!`;
407
398
  it('should return an error for unsupported file extensions', async () => {
408
399
  const filePath = 'my-chat.txt';
409
400
  const result = await shareCommand?.action?.(mockContext, filePath);
410
- expect(mockFs.writeFile).not.toHaveBeenCalled();
401
+ expect(mockExport).not.toHaveBeenCalled();
411
402
  expect(result).toEqual({
412
403
  type: 'message',
413
404
  messageType: 'error',
@@ -417,10 +408,9 @@ Hi there!`;
417
408
  it('should inform if there is no conversation to share', async () => {
418
409
  mockGetHistory.mockReturnValue([
419
410
  { role: 'user', parts: [{ text: 'context' }] },
420
- { role: 'model', parts: [{ text: 'context response' }] },
421
411
  ]);
422
412
  const result = await shareCommand?.action?.(mockContext, 'my-chat.json');
423
- expect(mockFs.writeFile).not.toHaveBeenCalled();
413
+ expect(mockExport).not.toHaveBeenCalled();
424
414
  expect(result).toEqual({
425
415
  type: 'message',
426
416
  messageType: 'info',
@@ -429,7 +419,7 @@ Hi there!`;
429
419
  });
430
420
  it('should handle errors during file writing', async () => {
431
421
  const error = new Error('Permission denied');
432
- mockFs.writeFile.mockRejectedValue(error);
422
+ mockExport.mockRejectedValue(error);
433
423
  const result = await shareCommand?.action?.(mockContext, 'my-chat.json');
434
424
  expect(result).toEqual({
435
425
  type: 'message',
@@ -441,29 +431,18 @@ Hi there!`;
441
431
  const filePath = 'my-chat.json';
442
432
  await shareCommand?.action?.(mockContext, filePath);
443
433
  const expectedPath = path.join(process.cwd(), 'my-chat.json');
444
- const [actualPath, actualContent] = mockFs.writeFile.mock.calls[0];
445
- expect(actualPath).toEqual(expectedPath);
446
- const parsedContent = JSON.parse(actualContent);
447
- expect(Array.isArray(parsedContent)).toBe(true);
448
- parsedContent.forEach((item) => {
449
- expect(item).toHaveProperty('role');
450
- expect(item).toHaveProperty('parts');
451
- expect(Array.isArray(item.parts)).toBe(true);
434
+ expect(mockExport).toHaveBeenCalledWith({
435
+ history: mockHistory,
436
+ filePath: expectedPath,
452
437
  });
453
438
  });
454
439
  it('should output correct markdown format', async () => {
455
440
  const filePath = 'my-chat.md';
456
441
  await shareCommand?.action?.(mockContext, filePath);
457
442
  const expectedPath = path.join(process.cwd(), 'my-chat.md');
458
- const [actualPath, actualContent] = mockFs.writeFile.mock.calls[0];
459
- expect(actualPath).toEqual(expectedPath);
460
- const entries = actualContent.split('\n\n---\n\n');
461
- expect(entries.length).toBe(mockHistory.length);
462
- entries.forEach((entry, index) => {
463
- const { role, parts } = mockHistory[index];
464
- const text = parts.map((p) => p.text).join('');
465
- const roleIcon = role === 'user' ? '🧑‍💻' : '✨';
466
- expect(entry).toBe(`## ${role.toUpperCase()} ${roleIcon}\n\n${text}`);
443
+ expect(mockExport).toHaveBeenCalledWith({
444
+ history: mockHistory,
445
+ filePath: expectedPath,
467
446
  });
468
447
  });
469
448
  });
@@ -589,6 +568,53 @@ Hi there!`;
589
568
  const result = serializeHistoryToMarkdown(history);
590
569
  expect(result).toBe(expectedMarkdown);
591
570
  });
571
+ describe('debug subcommand', () => {
572
+ let mockGetLatestApiRequest;
573
+ beforeEach(() => {
574
+ mockGetLatestApiRequest = vi.fn();
575
+ mockContext.services.config.getLatestApiRequest =
576
+ mockGetLatestApiRequest;
577
+ vi.spyOn(process, 'cwd').mockReturnValue('/project/root');
578
+ vi.spyOn(Date, 'now').mockReturnValue(1234567890);
579
+ mockFs.writeFile.mockClear();
580
+ });
581
+ it('should return an error if no API request is found', async () => {
582
+ mockGetLatestApiRequest.mockReturnValue(undefined);
583
+ const result = await debugCommand.action?.(mockContext, '');
584
+ expect(result).toEqual({
585
+ type: 'message',
586
+ messageType: 'error',
587
+ content: 'No recent API request found to export.',
588
+ });
589
+ expect(mockFs.writeFile).not.toHaveBeenCalled();
590
+ });
591
+ it('should convert and write the API request to a json file', async () => {
592
+ const mockRequest = {
593
+ contents: [{ role: 'user', parts: [{ text: 'test' }] }],
594
+ };
595
+ mockGetLatestApiRequest.mockReturnValue(mockRequest);
596
+ const result = await debugCommand.action?.(mockContext, '');
597
+ const expectedFilename = 'gcli-request-1234567890.json';
598
+ const expectedPath = path.join('/project/root', expectedFilename);
599
+ expect(mockFs.writeFile).toHaveBeenCalledWith(expectedPath, expect.stringContaining('"role": "user"'));
600
+ expect(result).toEqual({
601
+ type: 'message',
602
+ messageType: 'info',
603
+ content: `Debug API request saved to ${expectedFilename}`,
604
+ });
605
+ });
606
+ it('should handle errors during file write', async () => {
607
+ const mockRequest = { contents: [] };
608
+ mockGetLatestApiRequest.mockReturnValue(mockRequest);
609
+ mockFs.writeFile.mockRejectedValue(new Error('Write failed'));
610
+ const result = await debugCommand.action?.(mockContext, '');
611
+ expect(result).toEqual({
612
+ type: 'message',
613
+ messageType: 'error',
614
+ content: 'Error saving debug request: Write failed',
615
+ });
616
+ });
617
+ });
592
618
  });
593
619
  });
594
620
  //# sourceMappingURL=chatCommand.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chatCommand.test.js","sourceRoot":"","sources":["../../../../src/ui/commands/chatCommand.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatCommand.test.js","sourceRoot":"","sources":["../../../../src/ui/commands/chatCommand.test.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,9 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { uiTelemetryService, fireSessionEndHook, fireSessionStartHook, SessionEndReason, SessionStartSource, flushTelemetry, } from '@google/gemini-cli-core';
6
+ import { uiTelemetryService, SessionEndReason, SessionStartSource, flushTelemetry, } from '@google/gemini-cli-core';
7
7
  import { CommandKind } from './types.js';
8
+ import { MessageType } from '../types.js';
8
9
  import { randomUUID } from 'node:crypto';
9
10
  export const clearCommand = {
10
11
  name: 'clear',
@@ -18,11 +19,8 @@ export const clearCommand = {
18
19
  ?.getGeminiClient()
19
20
  ?.getChat()
20
21
  .getChatRecordingService();
21
- const messageBus = config?.getMessageBus();
22
22
  // Fire SessionEnd hook before clearing
23
- if (config?.getEnableHooks() && messageBus) {
24
- await fireSessionEndHook(messageBus, SessionEndReason.Clear);
25
- }
23
+ await config?.getHookSystem()?.fireSessionEndEvent(SessionEndReason.Clear);
26
24
  if (geminiClient) {
27
25
  context.ui.setDebugMessage('Clearing terminal and resetting chat.');
28
26
  // If resetChat fails, the exception will propagate and halt the command,
@@ -39,9 +37,9 @@ export const clearCommand = {
39
37
  chatRecordingService.initialize();
40
38
  }
41
39
  // Fire SessionStart hook after clearing
42
- if (config?.getEnableHooks() && messageBus) {
43
- await fireSessionStartHook(messageBus, SessionStartSource.Clear);
44
- }
40
+ const result = await config
41
+ ?.getHookSystem()
42
+ ?.fireSessionStartEvent(SessionStartSource.Clear);
45
43
  // Give the event loop a chance to process any pending telemetry operations
46
44
  // This ensures logger.emit() calls have fully propagated to the BatchLogRecordProcessor
47
45
  await new Promise((resolve) => setImmediate(resolve));
@@ -52,6 +50,12 @@ export const clearCommand = {
52
50
  }
53
51
  uiTelemetryService.setLastPromptTokenCount(0);
54
52
  context.ui.clear();
53
+ if (result?.finalOutput?.systemMessage) {
54
+ context.ui.addItem({
55
+ type: MessageType.INFO,
56
+ text: result.finalOutput.systemMessage,
57
+ }, Date.now());
58
+ }
55
59
  },
56
60
  };
57
61
  //# sourceMappingURL=clearCommand.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clearCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/clearCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,GACf,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,2CAA2C;IACxD,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,WAAW,EAAE,IAAI;IACjB,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QAC/B,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC;QAChE,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QACvC,MAAM,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM;YAClD,EAAE,eAAe,EAAE;YACnB,EAAE,OAAO,EAAE;aACV,uBAAuB,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,MAAM,EAAE,aAAa,EAAE,CAAC;QAE3C,uCAAuC;QACvC,IAAI,MAAM,EAAE,cAAc,EAAE,IAAI,UAAU,EAAE,CAAC;YAC3C,MAAM,kBAAkB,CAAC,UAAU,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC,uCAAuC,CAAC,CAAC;YACpE,yEAAyE;YACzE,iEAAiE;YACjE,MAAM,YAAY,CAAC,SAAS,EAAE,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;QACnD,CAAC;QAED,2DAA2D;QAC3D,IAAI,MAAM,IAAI,oBAAoB,EAAE,CAAC;YACnC,MAAM,YAAY,GAAG,UAAU,EAAE,CAAC;YAClC,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YAClC,oBAAoB,CAAC,UAAU,EAAE,CAAC;QACpC,CAAC;QAED,wCAAwC;QACxC,IAAI,MAAM,EAAE,cAAc,EAAE,IAAI,UAAU,EAAE,CAAC;YAC3C,MAAM,oBAAoB,CAAC,UAAU,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACnE,CAAC;QAED,2EAA2E;QAC3E,wFAAwF;QACxF,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;QAEtD,kEAAkE;QAClE,+DAA+D;QAC/D,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QAED,kBAAkB,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"clearCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/clearCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,GACf,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,2CAA2C;IACxD,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,WAAW,EAAE,IAAI;IACjB,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QAC/B,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC;QAChE,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QACvC,MAAM,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM;YAClD,EAAE,eAAe,EAAE;YACnB,EAAE,OAAO,EAAE;aACV,uBAAuB,EAAE,CAAC;QAE7B,uCAAuC;QACvC,MAAM,MAAM,EAAE,aAAa,EAAE,EAAE,mBAAmB,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAE3E,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC,uCAAuC,CAAC,CAAC;YACpE,yEAAyE;YACzE,iEAAiE;YACjE,MAAM,YAAY,CAAC,SAAS,EAAE,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,EAAE,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;QACnD,CAAC;QAED,2DAA2D;QAC3D,IAAI,MAAM,IAAI,oBAAoB,EAAE,CAAC;YACnC,MAAM,YAAY,GAAG,UAAU,EAAE,CAAC;YAClC,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YAClC,oBAAoB,CAAC,UAAU,EAAE,CAAC;QACpC,CAAC;QAED,wCAAwC;QACxC,MAAM,MAAM,GAAG,MAAM,MAAM;YACzB,EAAE,aAAa,EAAE;YACjB,EAAE,qBAAqB,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAEpD,2EAA2E;QAC3E,wFAAwF;QACxF,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;QAEtD,kEAAkE;QAClE,+DAA+D;QAC/D,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QAED,kBAAkB,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QAEnB,IAAI,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;YACvC,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;gBACE,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,aAAa;aACvC,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -37,6 +37,10 @@ describe('clearCommand', () => {
37
37
  setSessionId: vi.fn(),
38
38
  getEnableHooks: vi.fn().mockReturnValue(false),
39
39
  getMessageBus: vi.fn().mockReturnValue(undefined),
40
+ getHookSystem: vi.fn().mockReturnValue({
41
+ fireSessionEndEvent: vi.fn().mockResolvedValue(undefined),
42
+ fireSessionStartEvent: vi.fn().mockResolvedValue(undefined),
43
+ }),
40
44
  },
41
45
  },
42
46
  });
@@ -1 +1 @@
1
- {"version":3,"file":"clearCommand.test.js","sourceRoot":"","sources":["../../../../src/ui/commands/clearCommand.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clearCommand.test.js","sourceRoot":"","sources":["../../../../src/ui/commands/clearCommand.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAuB,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAElF,6BAA6B;AAC7B,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;IAC5C,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;IAChE,OAAO;QACL,GAAG,MAAM;QACT,kBAAkB,EAAE;YAClB,uBAAuB,EAAE,EAAE,CAAC,EAAE,EAAE;SACjC;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,IAAI,WAA2B,CAAC;IAChC,IAAI,aAAuC,CAAC;IAE5C,UAAU,CAAC,GAAG,EAAE;QACd,aAAa,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QACrD,MAAM,2BAA2B,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5C,EAAE,CAAC,aAAa,EAAE,CAAC;QAEnB,WAAW,GAAG,wBAAwB,CAAC;YACrC,QAAQ,EAAE;gBACR,MAAM,EAAE;oBACN,eAAe,EAAE,GAAG,EAAE,CACpB,CAAC;wBACC,SAAS,EAAE,aAAa;wBACxB,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;4BACd,uBAAuB,EAAE,2BAA2B;yBACrD,CAAC;qBACH,CAA4B;oBAC/B,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE;oBACrB,cAAc,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC;oBAC9C,aAAa,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC;oBACjD,aAAa,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;wBACrC,mBAAmB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;wBACzD,qBAAqB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;qBAC5D,CAAC;iBACH;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8FAA8F,EAAE,KAAK,IAAI,EAAE;QAC5G,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QAE3C,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,oBAAoB,CACzD,uCAAuC,CACxC,CAAC;QACF,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAEhE,MAAM,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;QAC3E,MAAM,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAEtD,iCAAiC;QACjC,MAAM,oBAAoB,GAAI,WAAW,CAAC,EAAE,CAAC,eAAwB,CAAC,IAAI;aACvE,mBAAmB,CAAC,CAAC,CAAC,CAAC;QAC1B,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,mBAAmB,GACvB,kBAAkB,CAAC,uBACpB,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,UAAU,GAAI,WAAW,CAAC,EAAE,CAAC,KAAc,CAAC,IAAI;aACnD,mBAAmB,CAAC,CAAC,CAAC,CAAC;QAE1B,MAAM,CAAC,oBAAoB,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;QAC1D,MAAM,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;QACzD,MAAM,CAAC,mBAAmB,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;QACnF,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,iBAAiB,GAAG,wBAAwB,CAAC;YACjD,QAAQ,EAAE;gBACR,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,MAAM,YAAY,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;QAEjD,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,oBAAoB,CAC/D,oBAAoB,CACrB,CAAC;QACF,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC7C,MAAM,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;QAC3E,MAAM,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -12,7 +12,7 @@ export const copyCommand = {
12
12
  kind: CommandKind.BUILT_IN,
13
13
  autoExecute: true,
14
14
  action: async (context, _args) => {
15
- const chat = await context.services.config?.getGeminiClient()?.getChat();
15
+ const chat = context.services.config?.getGeminiClient()?.getChat();
16
16
  const history = chat?.getHistory();
17
17
  // Get the last message from the AI (model role)
18
18
  const lastAiMessage = history
@@ -1 +1 @@
1
- {"version":3,"file":"copyCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/copyCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,CAAC,MAAM,WAAW,GAAiB;IACvC,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,mDAAmD;IAChE,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,WAAW,EAAE,IAAI;IACjB,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAA4C,EAAE;QACzE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,OAAO,EAAE,CAAC;QACzE,MAAM,OAAO,GAAG,IAAI,EAAE,UAAU,EAAE,CAAC;QAEnC,gDAAgD;QAChD,MAAM,aAAa,GAAG,OAAO;YAC3B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,GAAG,EAAE;YACvD,CAAC,CAAC,SAAS,CAAC;QAEd,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,MAAM;gBACnB,OAAO,EAAE,sBAAsB;aAChC,CAAC;QACJ,CAAC;QACD,8BAA8B;QAC9B,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK;YACtC,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;aAC5B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;aACxB,IAAI,CAAC,EAAE,CAAC,CAAC;QAEZ,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC;gBACH,MAAM,eAAe,CAAC,YAAY,CAAC,CAAC;gBAEpC,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,MAAM;oBACnB,OAAO,EAAE,qCAAqC;iBAC/C,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvE,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAE3B,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,OAAO;oBACpB,OAAO,EAAE,oCAAoC,OAAO,EAAE;iBACvD,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,MAAM;gBACnB,OAAO,EAAE,0CAA0C;aACpD,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"copyCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/copyCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,CAAC,MAAM,WAAW,GAAiB;IACvC,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,mDAAmD;IAChE,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,WAAW,EAAE,IAAI;IACjB,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAA4C,EAAE;QACzE,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,OAAO,EAAE,CAAC;QACnE,MAAM,OAAO,GAAG,IAAI,EAAE,UAAU,EAAE,CAAC;QAEnC,gDAAgD;QAChD,MAAM,aAAa,GAAG,OAAO;YAC3B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,GAAG,EAAE;YACvD,CAAC,CAAC,SAAS,CAAC;QAEd,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,MAAM;gBACnB,OAAO,EAAE,sBAAsB;aAChC,CAAC;QACJ,CAAC;QACD,8BAA8B;QAC9B,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK;YACtC,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;aAC5B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;aACxB,IAAI,CAAC,EAAE,CAAC,CAAC;QAEZ,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC;gBACH,MAAM,eAAe,CAAC,YAAY,CAAC,CAAC;gBAEpC,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,MAAM;oBACnB,OAAO,EAAE,qCAAqC;iBAC/C,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvE,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAE3B,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,OAAO;oBACpB,OAAO,EAAE,oCAAoC,OAAO,EAAE;iBACvD,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,MAAM;gBACnB,OAAO,EAAE,0CAA0C;aACpD,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -9,13 +9,13 @@ import { MultiFolderTrustDialog } from '../components/MultiFolderTrustDialog.js'
9
9
  import { CommandKind } from './types.js';
10
10
  import { MessageType } from '../types.js';
11
11
  import { refreshServerHierarchicalMemory } from '@google/gemini-cli-core';
12
- import { expandHomeDir } from '../utils/directoryUtils.js';
12
+ import { expandHomeDir, getDirectorySuggestions, } from '../utils/directoryUtils.js';
13
13
  async function finishAddingDirectories(config, addItem, added, errors) {
14
14
  if (!config) {
15
15
  addItem({
16
16
  type: MessageType.ERROR,
17
17
  text: 'Configuration is not available.',
18
- }, Date.now());
18
+ });
19
19
  return;
20
20
  }
21
21
  try {
@@ -25,7 +25,7 @@ async function finishAddingDirectories(config, addItem, added, errors) {
25
25
  addItem({
26
26
  type: MessageType.INFO,
27
27
  text: `Successfully added GEMINI.md files from the following directories if there are:\n- ${added.join('\n- ')}`,
28
- }, Date.now());
28
+ });
29
29
  }
30
30
  catch (error) {
31
31
  errors.push(`Error refreshing memory: ${error.message}`);
@@ -38,10 +38,10 @@ async function finishAddingDirectories(config, addItem, added, errors) {
38
38
  addItem({
39
39
  type: MessageType.INFO,
40
40
  text: `Successfully added directories:\n- ${added.join('\n- ')}`,
41
- }, Date.now());
41
+ });
42
42
  }
43
43
  if (errors.length > 0) {
44
- addItem({ type: MessageType.ERROR, text: errors.join('\n') }, Date.now());
44
+ addItem({ type: MessageType.ERROR, text: errors.join('\n') });
45
45
  }
46
46
  }
47
47
  export const directoryCommand = {
@@ -55,6 +55,23 @@ export const directoryCommand = {
55
55
  description: 'Add directories to the workspace. Use comma to separate multiple paths',
56
56
  kind: CommandKind.BUILT_IN,
57
57
  autoExecute: false,
58
+ showCompletionLoading: false,
59
+ completion: async (context, partialArg) => {
60
+ // Support multiple paths separated by commas
61
+ const parts = partialArg.split(',');
62
+ const lastPart = parts[parts.length - 1];
63
+ const leadingWhitespace = lastPart.match(/^\s*/)?.[0] ?? '';
64
+ const trimmedLastPart = lastPart.trimStart();
65
+ if (trimmedLastPart === '') {
66
+ return [];
67
+ }
68
+ const suggestions = await getDirectorySuggestions(trimmedLastPart);
69
+ if (parts.length > 1) {
70
+ const prefix = parts.slice(0, -1).join(',') + ',';
71
+ return suggestions.map((s) => prefix + leadingWhitespace + s);
72
+ }
73
+ return suggestions.map((s) => leadingWhitespace + s);
74
+ },
58
75
  action: async (context, args) => {
59
76
  const { ui: { addItem }, services: { config, settings }, } = context;
60
77
  const [...rest] = args.split(' ');
@@ -62,7 +79,7 @@ export const directoryCommand = {
62
79
  addItem({
63
80
  type: MessageType.ERROR,
64
81
  text: 'Configuration is not available.',
65
- }, Date.now());
82
+ });
66
83
  return;
67
84
  }
68
85
  if (config.isRestrictiveSandbox()) {
@@ -80,7 +97,7 @@ export const directoryCommand = {
80
97
  addItem({
81
98
  type: MessageType.ERROR,
82
99
  text: 'Please provide at least one path to add.',
83
- }, Date.now());
100
+ });
84
101
  return;
85
102
  }
86
103
  const added = [];
@@ -102,7 +119,7 @@ export const directoryCommand = {
102
119
  addItem({
103
120
  type: MessageType.INFO,
104
121
  text: `The following directories are already in the workspace:\n- ${alreadyAdded.join('\n- ')}`,
105
- }, Date.now());
122
+ });
106
123
  }
107
124
  if (pathsToProcess.length === 0) {
108
125
  return;
@@ -172,7 +189,7 @@ export const directoryCommand = {
172
189
  addItem({
173
190
  type: MessageType.ERROR,
174
191
  text: 'Configuration is not available.',
175
- }, Date.now());
192
+ });
176
193
  return;
177
194
  }
178
195
  const workspaceContext = config.getWorkspaceContext();
@@ -181,7 +198,7 @@ export const directoryCommand = {
181
198
  addItem({
182
199
  type: MessageType.INFO,
183
200
  text: `Current workspace directories:\n${directoryList}`,
184
- }, Date.now());
201
+ });
185
202
  },
186
203
  },
187
204
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"directoryCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/directoryCommand.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"directoryCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/directoryCommand.tsx"],"names":[],"mappings":"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"}