@machina.ai/cell-cli 1.20.2-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 (873) 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.js.map +1 -1
  9. package/dist/src/commands/extensions/disable.test.js.map +1 -1
  10. package/dist/src/commands/extensions/enable.js.map +1 -1
  11. package/dist/src/commands/extensions/enable.test.js.map +1 -1
  12. package/dist/src/commands/extensions/examples/mcp-server/example.test.js +1 -1
  13. package/dist/src/commands/extensions/examples/mcp-server/example.test.js.map +1 -1
  14. package/dist/src/commands/extensions/examples/mcp-server/example.test.ts +4 -12
  15. package/dist/src/commands/extensions/install.js +7 -31
  16. package/dist/src/commands/extensions/install.js.map +1 -1
  17. package/dist/src/commands/extensions/install.test.js +21 -3
  18. package/dist/src/commands/extensions/install.test.js.map +1 -1
  19. package/dist/src/commands/extensions/link.test.js.map +1 -1
  20. package/dist/src/commands/extensions/list.test.js +0 -1
  21. package/dist/src/commands/extensions/list.test.js.map +1 -1
  22. package/dist/src/commands/extensions/uninstall.js.map +1 -1
  23. package/dist/src/commands/extensions/uninstall.test.js.map +1 -1
  24. package/dist/src/commands/extensions/update.test.js.map +1 -1
  25. package/dist/src/commands/extensions/utils.d.ts +14 -0
  26. package/dist/src/commands/extensions/utils.js +33 -0
  27. package/dist/src/commands/extensions/utils.js.map +1 -0
  28. package/dist/src/commands/extensions/validate.js +1 -1
  29. package/dist/src/commands/extensions/validate.js.map +1 -1
  30. package/dist/src/commands/extensions/validate.test.js +1 -1
  31. package/dist/src/commands/extensions/validate.test.js.map +1 -1
  32. package/dist/src/commands/extensions.js +2 -0
  33. package/dist/src/commands/extensions.js.map +1 -1
  34. package/dist/src/commands/hooks/migrate.d.ts +11 -0
  35. package/dist/src/commands/hooks/migrate.js +206 -0
  36. package/dist/src/commands/hooks/migrate.js.map +1 -0
  37. package/dist/src/commands/hooks/migrate.test.js +389 -0
  38. package/dist/src/commands/hooks/migrate.test.js.map +1 -0
  39. package/dist/src/commands/hooks.d.ts +7 -0
  40. package/dist/src/commands/hooks.js +22 -0
  41. package/dist/src/commands/hooks.js.map +1 -0
  42. package/dist/src/commands/mcp/add.js +4 -2
  43. package/dist/src/commands/mcp/add.js.map +1 -1
  44. package/dist/src/commands/mcp/add.test.js +24 -2
  45. package/dist/src/commands/mcp/add.test.js.map +1 -1
  46. package/dist/src/commands/mcp/list.js +7 -1
  47. package/dist/src/commands/mcp/list.js.map +1 -1
  48. package/dist/src/commands/skills/disable.d.ts +14 -0
  49. package/dist/src/commands/skills/disable.js +45 -0
  50. package/dist/src/commands/skills/disable.js.map +1 -0
  51. package/dist/src/commands/skills/disable.test.d.ts +6 -0
  52. package/dist/src/commands/skills/disable.test.js +80 -0
  53. package/dist/src/commands/skills/disable.test.js.map +1 -0
  54. package/dist/src/commands/skills/enable.d.ts +12 -0
  55. package/dist/src/commands/skills/enable.js +35 -0
  56. package/dist/src/commands/skills/enable.js.map +1 -0
  57. package/dist/src/commands/skills/enable.test.d.ts +6 -0
  58. package/dist/src/commands/skills/enable.test.js +107 -0
  59. package/dist/src/commands/skills/enable.test.js.map +1 -0
  60. package/dist/src/commands/skills/install.d.ts +14 -0
  61. package/dist/src/commands/skills/install.js +61 -0
  62. package/dist/src/commands/skills/install.js.map +1 -0
  63. package/dist/src/commands/skills/install.test.d.ts +6 -0
  64. package/dist/src/commands/skills/install.test.js +57 -0
  65. package/dist/src/commands/skills/install.test.js.map +1 -0
  66. package/dist/src/commands/skills/list.d.ts +10 -0
  67. package/dist/src/commands/skills/list.js +60 -0
  68. package/dist/src/commands/skills/list.js.map +1 -0
  69. package/dist/src/commands/skills/list.test.d.ts +6 -0
  70. package/dist/src/commands/skills/list.test.js +136 -0
  71. package/dist/src/commands/skills/list.test.js.map +1 -0
  72. package/dist/src/commands/skills/uninstall.d.ts +13 -0
  73. package/dist/src/commands/skills/uninstall.js +56 -0
  74. package/dist/src/commands/skills/uninstall.js.map +1 -0
  75. package/dist/src/commands/skills/uninstall.test.d.ts +6 -0
  76. package/dist/src/commands/skills/uninstall.test.js +61 -0
  77. package/dist/src/commands/skills/uninstall.test.js.map +1 -0
  78. package/dist/src/commands/skills.d.ts +7 -0
  79. package/dist/src/commands/skills.js +30 -0
  80. package/dist/src/commands/skills.js.map +1 -0
  81. package/dist/src/commands/skills.test.d.ts +6 -0
  82. package/dist/src/commands/skills.test.js +49 -0
  83. package/dist/src/commands/skills.test.js.map +1 -0
  84. package/dist/src/config/config.d.ts +10 -3
  85. package/dist/src/config/config.js +101 -34
  86. package/dist/src/config/config.js.map +1 -1
  87. package/dist/src/config/config.test.js +225 -16
  88. package/dist/src/config/config.test.js.map +1 -1
  89. package/dist/src/config/extension-manager-agents.test.d.ts +6 -0
  90. package/dist/src/config/extension-manager-agents.test.js +115 -0
  91. package/dist/src/config/extension-manager-agents.test.js.map +1 -0
  92. package/dist/src/config/extension-manager-scope.test.js +164 -0
  93. package/dist/src/config/extension-manager-scope.test.js.map +1 -0
  94. package/dist/src/config/extension-manager-skills.test.js +150 -0
  95. package/dist/src/config/extension-manager-skills.test.js.map +1 -0
  96. package/dist/src/config/extension-manager.d.ts +7 -1
  97. package/dist/src/config/extension-manager.js +202 -37
  98. package/dist/src/config/extension-manager.js.map +1 -1
  99. package/dist/src/config/extension.test.js +178 -13
  100. package/dist/src/config/extension.test.js.map +1 -1
  101. package/dist/src/config/extensions/consent.d.ts +5 -3
  102. package/dist/src/config/extensions/consent.js +33 -7
  103. package/dist/src/config/extensions/consent.js.map +1 -1
  104. package/dist/src/config/extensions/consent.test.js +114 -10
  105. package/dist/src/config/extensions/consent.test.js.map +1 -1
  106. package/dist/src/config/extensions/extensionSettings.d.ts +9 -1
  107. package/dist/src/config/extensions/extensionSettings.js +107 -17
  108. package/dist/src/config/extensions/extensionSettings.js.map +1 -1
  109. package/dist/src/config/extensions/extensionSettings.test.js +189 -54
  110. package/dist/src/config/extensions/extensionSettings.test.js.map +1 -1
  111. package/dist/src/config/extensions/extensionUpdates.test.js +231 -0
  112. package/dist/src/config/extensions/extensionUpdates.test.js.map +1 -0
  113. package/dist/src/config/extensions/github.d.ts +4 -1
  114. package/dist/src/config/extensions/github.js +33 -7
  115. package/dist/src/config/extensions/github.js.map +1 -1
  116. package/dist/src/config/extensions/github.test.js +190 -2
  117. package/dist/src/config/extensions/github.test.js.map +1 -1
  118. package/dist/src/config/extensions/github_fetch.js.map +1 -1
  119. package/dist/src/config/extensions/storage.js +2 -2
  120. package/dist/src/config/extensions/storage.js.map +1 -1
  121. package/dist/src/config/extensions/update.js +1 -1
  122. package/dist/src/config/extensions/update.js.map +1 -1
  123. package/dist/src/config/extensions/update.test.js +8 -8
  124. package/dist/src/config/extensions/update.test.js.map +1 -1
  125. package/dist/src/config/keyBindings.d.ts +14 -2
  126. package/dist/src/config/keyBindings.js +89 -11
  127. package/dist/src/config/keyBindings.js.map +1 -1
  128. package/dist/src/config/policy-engine.integration.test.js +13 -1
  129. package/dist/src/config/policy-engine.integration.test.js.map +1 -1
  130. package/dist/src/config/settings-validation.d.ts +23 -0
  131. package/dist/src/config/settings-validation.js +249 -0
  132. package/dist/src/config/settings-validation.js.map +1 -0
  133. package/dist/src/config/settings-validation.test.d.ts +6 -0
  134. package/dist/src/config/settings-validation.test.js +370 -0
  135. package/dist/src/config/settings-validation.test.js.map +1 -0
  136. package/dist/src/config/settings.d.ts +9 -7
  137. package/dist/src/config/settings.js +138 -233
  138. package/dist/src/config/settings.js.map +1 -1
  139. package/dist/src/config/settings.test.js +245 -571
  140. package/dist/src/config/settings.test.js.map +1 -1
  141. package/dist/src/config/settingsSchema.d.ts +459 -35
  142. package/dist/src/config/settingsSchema.js +541 -32
  143. package/dist/src/config/settingsSchema.js.map +1 -1
  144. package/dist/src/config/settingsSchema.test.js +22 -4
  145. package/dist/src/config/settingsSchema.test.js.map +1 -1
  146. package/dist/src/config/settings_repro.test.d.ts +6 -0
  147. package/dist/src/config/settings_repro.test.js +162 -0
  148. package/dist/src/config/settings_repro.test.js.map +1 -0
  149. package/dist/src/config/settings_validation_warning.test.d.ts +6 -0
  150. package/dist/src/config/settings_validation_warning.test.js +123 -0
  151. package/dist/src/config/settings_validation_warning.test.js.map +1 -0
  152. package/dist/src/config/trustedFolders.d.ts +1 -0
  153. package/dist/src/config/trustedFolders.js +18 -4
  154. package/dist/src/config/trustedFolders.js.map +1 -1
  155. package/dist/src/config/trustedFolders.test.js +45 -0
  156. package/dist/src/config/trustedFolders.test.js.map +1 -1
  157. package/dist/src/gemini.js +135 -69
  158. package/dist/src/gemini.js.map +1 -1
  159. package/dist/src/gemini.test.js +85 -99
  160. package/dist/src/gemini.test.js.map +1 -1
  161. package/dist/src/gemini_cleanup.test.js +7 -0
  162. package/dist/src/gemini_cleanup.test.js.map +1 -1
  163. package/dist/src/generated/git-commit.d.ts +3 -3
  164. package/dist/src/generated/git-commit.js +3 -3
  165. package/dist/src/nonInteractiveCli.js +59 -9
  166. package/dist/src/nonInteractiveCli.js.map +1 -1
  167. package/dist/src/nonInteractiveCli.test.js +114 -21
  168. package/dist/src/nonInteractiveCli.test.js.map +1 -1
  169. package/dist/src/services/BuiltinCommandLoader.d.ts +1 -1
  170. package/dist/src/services/BuiltinCommandLoader.js +66 -8
  171. package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
  172. package/dist/src/services/BuiltinCommandLoader.test.js +70 -12
  173. package/dist/src/services/BuiltinCommandLoader.test.js.map +1 -1
  174. package/dist/src/services/FeedbackService.js.map +1 -1
  175. package/dist/src/services/FileCommandLoader.js +6 -6
  176. package/dist/src/services/FileCommandLoader.js.map +1 -1
  177. package/dist/src/services/FileCommandLoader.test.js.map +1 -1
  178. package/dist/src/services/McpPromptLoader.js +1 -0
  179. package/dist/src/services/McpPromptLoader.js.map +1 -1
  180. package/dist/src/services/McpPromptLoader.test.js +40 -0
  181. package/dist/src/services/McpPromptLoader.test.js.map +1 -1
  182. package/dist/src/services/prompt-processors/shellProcessor.js +13 -11
  183. package/dist/src/services/prompt-processors/shellProcessor.js.map +1 -1
  184. package/dist/src/services/prompt-processors/shellProcessor.test.js +93 -61
  185. package/dist/src/services/prompt-processors/shellProcessor.test.js.map +1 -1
  186. package/dist/src/test-utils/render.js +5 -2
  187. package/dist/src/test-utils/render.js.map +1 -1
  188. package/dist/src/ui/App.test.js +2 -2
  189. package/dist/src/ui/App.test.js.map +1 -1
  190. package/dist/src/ui/AppContainer.js +200 -94
  191. package/dist/src/ui/AppContainer.js.map +1 -1
  192. package/dist/src/ui/AppContainer.test.js +405 -69
  193. package/dist/src/ui/AppContainer.test.js.map +1 -1
  194. package/dist/src/ui/IdeIntegrationNudge.test.js +18 -7
  195. package/dist/src/ui/IdeIntegrationNudge.test.js.map +1 -1
  196. package/dist/src/ui/auth/ApiAuthDialog.js +36 -3
  197. package/dist/src/ui/auth/ApiAuthDialog.js.map +1 -1
  198. package/dist/src/ui/auth/ApiAuthDialog.test.js +26 -2
  199. package/dist/src/ui/auth/ApiAuthDialog.test.js.map +1 -1
  200. package/dist/src/ui/auth/AuthDialog.d.ts +4 -1
  201. package/dist/src/ui/auth/AuthDialog.js +11 -4
  202. package/dist/src/ui/auth/AuthDialog.js.map +1 -1
  203. package/dist/src/ui/auth/AuthDialog.test.js +19 -2
  204. package/dist/src/ui/auth/AuthDialog.test.js.map +1 -1
  205. package/dist/src/ui/auth/AuthInProgress.test.js +16 -6
  206. package/dist/src/ui/auth/AuthInProgress.test.js.map +1 -1
  207. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.d.ts +10 -0
  208. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.js +27 -0
  209. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.js.map +1 -0
  210. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.d.ts +6 -0
  211. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.js +68 -0
  212. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.js.map +1 -0
  213. package/dist/src/ui/auth/useAuth.js +9 -4
  214. package/dist/src/ui/auth/useAuth.js.map +1 -1
  215. package/dist/src/ui/auth/useAuth.test.js +2 -2
  216. package/dist/src/ui/auth/useAuth.test.js.map +1 -1
  217. package/dist/src/ui/commands/aboutCommand.js +3 -4
  218. package/dist/src/ui/commands/aboutCommand.js.map +1 -1
  219. package/dist/src/ui/commands/aboutCommand.test.js +7 -10
  220. package/dist/src/ui/commands/aboutCommand.test.js.map +1 -1
  221. package/dist/src/ui/commands/agentsCommand.d.ts +7 -0
  222. package/dist/src/ui/commands/agentsCommand.js +79 -0
  223. package/dist/src/ui/commands/agentsCommand.js.map +1 -0
  224. package/dist/src/ui/commands/agentsCommand.test.d.ts +6 -0
  225. package/dist/src/ui/commands/agentsCommand.test.js +91 -0
  226. package/dist/src/ui/commands/agentsCommand.test.js.map +1 -0
  227. package/dist/src/ui/commands/authCommand.js +30 -3
  228. package/dist/src/ui/commands/authCommand.js.map +1 -1
  229. package/dist/src/ui/commands/authCommand.test.js +72 -4
  230. package/dist/src/ui/commands/authCommand.test.js.map +1 -1
  231. package/dist/src/ui/commands/bugCommand.js +37 -6
  232. package/dist/src/ui/commands/bugCommand.js.map +1 -1
  233. package/dist/src/ui/commands/bugCommand.test.js +86 -5
  234. package/dist/src/ui/commands/bugCommand.test.js.map +1 -1
  235. package/dist/src/ui/commands/chatCommand.d.ts +1 -2
  236. package/dist/src/ui/commands/chatCommand.js +52 -52
  237. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  238. package/dist/src/ui/commands/chatCommand.test.js +95 -69
  239. package/dist/src/ui/commands/chatCommand.test.js.map +1 -1
  240. package/dist/src/ui/commands/clearCommand.js +22 -1
  241. package/dist/src/ui/commands/clearCommand.js.map +1 -1
  242. package/dist/src/ui/commands/clearCommand.test.js +6 -0
  243. package/dist/src/ui/commands/clearCommand.test.js.map +1 -1
  244. package/dist/src/ui/commands/copyCommand.js +1 -1
  245. package/dist/src/ui/commands/copyCommand.js.map +1 -1
  246. package/dist/src/ui/commands/directoryCommand.js +27 -10
  247. package/dist/src/ui/commands/directoryCommand.js.map +1 -1
  248. package/dist/src/ui/commands/directoryCommand.test.js +49 -11
  249. package/dist/src/ui/commands/directoryCommand.test.js.map +1 -1
  250. package/dist/src/ui/commands/extensionsCommand.js +194 -24
  251. package/dist/src/ui/commands/extensionsCommand.js.map +1 -1
  252. package/dist/src/ui/commands/extensionsCommand.test.js +217 -27
  253. package/dist/src/ui/commands/extensionsCommand.test.js.map +1 -1
  254. package/dist/src/ui/commands/helpCommand.js +1 -1
  255. package/dist/src/ui/commands/helpCommand.js.map +1 -1
  256. package/dist/src/ui/commands/helpCommand.test.js +1 -1
  257. package/dist/src/ui/commands/helpCommand.test.js.map +1 -1
  258. package/dist/src/ui/commands/hooksCommand.d.ts +7 -0
  259. package/dist/src/ui/commands/hooksCommand.js +342 -0
  260. package/dist/src/ui/commands/hooksCommand.js.map +1 -0
  261. package/dist/src/ui/commands/hooksCommand.test.d.ts +6 -0
  262. package/dist/src/ui/commands/hooksCommand.test.js +575 -0
  263. package/dist/src/ui/commands/hooksCommand.test.js.map +1 -0
  264. package/dist/src/ui/commands/ideCommand.test.js.map +1 -1
  265. package/dist/src/ui/commands/initCommand.js +10 -50
  266. package/dist/src/ui/commands/initCommand.js.map +1 -1
  267. package/dist/src/ui/commands/initCommand.test.js.map +1 -1
  268. package/dist/src/ui/commands/mcpCommand.js +34 -16
  269. package/dist/src/ui/commands/mcpCommand.js.map +1 -1
  270. package/dist/src/ui/commands/mcpCommand.test.js +43 -6
  271. package/dist/src/ui/commands/mcpCommand.test.js.map +1 -1
  272. package/dist/src/ui/commands/memoryCommand.js +19 -33
  273. package/dist/src/ui/commands/memoryCommand.js.map +1 -1
  274. package/dist/src/ui/commands/memoryCommand.test.js +112 -16
  275. package/dist/src/ui/commands/memoryCommand.test.js.map +1 -1
  276. package/dist/src/ui/commands/modelCommand.js +10 -5
  277. package/dist/src/ui/commands/modelCommand.js.map +1 -1
  278. package/dist/src/ui/commands/modelCommand.test.js +12 -1
  279. package/dist/src/ui/commands/modelCommand.test.js.map +1 -1
  280. package/dist/src/ui/commands/restoreCommand.d.ts +1 -1
  281. package/dist/src/ui/commands/restoreCommand.js +38 -33
  282. package/dist/src/ui/commands/restoreCommand.js.map +1 -1
  283. package/dist/src/ui/commands/restoreCommand.test.js +6 -6
  284. package/dist/src/ui/commands/restoreCommand.test.js.map +1 -1
  285. package/dist/src/ui/commands/setupGithubCommand.test.js.map +1 -1
  286. package/dist/src/ui/commands/skillsCommand.d.ts +7 -0
  287. package/dist/src/ui/commands/skillsCommand.js +235 -0
  288. package/dist/src/ui/commands/skillsCommand.js.map +1 -0
  289. package/dist/src/ui/commands/skillsCommand.test.d.ts +6 -0
  290. package/dist/src/ui/commands/skillsCommand.test.js +405 -0
  291. package/dist/src/ui/commands/skillsCommand.test.js.map +1 -0
  292. package/dist/src/ui/commands/statsCommand.js +6 -10
  293. package/dist/src/ui/commands/statsCommand.js.map +1 -1
  294. package/dist/src/ui/commands/statsCommand.test.js +20 -3
  295. package/dist/src/ui/commands/statsCommand.test.js.map +1 -1
  296. package/dist/src/ui/commands/terminalSetupCommand.js +1 -0
  297. package/dist/src/ui/commands/terminalSetupCommand.js.map +1 -1
  298. package/dist/src/ui/commands/toolsCommand.js +2 -2
  299. package/dist/src/ui/commands/toolsCommand.js.map +1 -1
  300. package/dist/src/ui/commands/toolsCommand.test.js +2 -2
  301. package/dist/src/ui/commands/toolsCommand.test.js.map +1 -1
  302. package/dist/src/ui/commands/types.d.ts +16 -38
  303. package/dist/src/ui/commands/types.js +1 -0
  304. package/dist/src/ui/commands/types.js.map +1 -1
  305. package/dist/src/ui/components/AnsiOutput.js +1 -1
  306. package/dist/src/ui/components/AnsiOutput.js.map +1 -1
  307. package/dist/src/ui/components/AppHeader.test.js +8 -0
  308. package/dist/src/ui/components/AppHeader.test.js.map +1 -1
  309. package/dist/src/ui/components/AsciiArt.d.ts +6 -6
  310. package/dist/src/ui/components/AsciiArt.js +6 -6
  311. package/dist/src/ui/components/Composer.js +7 -7
  312. package/dist/src/ui/components/Composer.js.map +1 -1
  313. package/dist/src/ui/components/Composer.test.js +23 -4
  314. package/dist/src/ui/components/Composer.test.js.map +1 -1
  315. package/dist/src/ui/components/ContextSummaryDisplay.d.ts +1 -0
  316. package/dist/src/ui/components/ContextSummaryDisplay.js +12 -5
  317. package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -1
  318. package/dist/src/ui/components/ContextSummaryDisplay.test.js +56 -25
  319. package/dist/src/ui/components/ContextSummaryDisplay.test.js.map +1 -1
  320. package/dist/src/ui/components/DetailedMessagesDisplay.js +3 -3
  321. package/dist/src/ui/components/DetailedMessagesDisplay.js.map +1 -1
  322. package/dist/src/ui/components/DetailedMessagesDisplay.test.js +2 -12
  323. package/dist/src/ui/components/DetailedMessagesDisplay.test.js.map +1 -1
  324. package/dist/src/ui/components/DialogManager.js +3 -3
  325. package/dist/src/ui/components/DialogManager.js.map +1 -1
  326. package/dist/src/ui/components/EditorSettingsDialog.js +2 -1
  327. package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -1
  328. package/dist/src/ui/components/EditorSettingsDialog.test.js +10 -2
  329. package/dist/src/ui/components/EditorSettingsDialog.test.js.map +1 -1
  330. package/dist/src/ui/components/FolderTrustDialog.js +20 -14
  331. package/dist/src/ui/components/FolderTrustDialog.js.map +1 -1
  332. package/dist/src/ui/components/FolderTrustDialog.test.js +12 -2
  333. package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
  334. package/dist/src/ui/components/Footer.js +6 -6
  335. package/dist/src/ui/components/Footer.js.map +1 -1
  336. package/dist/src/ui/components/GeminiRespondingSpinner.test.js +3 -0
  337. package/dist/src/ui/components/GeminiRespondingSpinner.test.js.map +1 -1
  338. package/dist/src/ui/components/Header.js +3 -1
  339. package/dist/src/ui/components/Header.js.map +1 -1
  340. package/dist/src/ui/components/Header.test.js +3 -1
  341. package/dist/src/ui/components/Header.test.js.map +1 -1
  342. package/dist/src/ui/components/Help.js +1 -1
  343. package/dist/src/ui/components/Help.js.map +1 -1
  344. package/dist/src/ui/components/HistoryItemDisplay.js +4 -1
  345. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  346. package/dist/src/ui/components/HistoryItemDisplay.test.js +21 -0
  347. package/dist/src/ui/components/HistoryItemDisplay.test.js.map +1 -1
  348. package/dist/src/ui/components/HookStatusDisplay.d.ts +12 -0
  349. package/dist/src/ui/components/HookStatusDisplay.js +20 -0
  350. package/dist/src/ui/components/HookStatusDisplay.js.map +1 -0
  351. package/dist/src/ui/components/HookStatusDisplay.test.d.ts +6 -0
  352. package/dist/src/ui/components/HookStatusDisplay.test.js +51 -0
  353. package/dist/src/ui/components/HookStatusDisplay.test.js.map +1 -0
  354. package/dist/src/ui/components/IdeTrustChangeDialog.js +3 -1
  355. package/dist/src/ui/components/IdeTrustChangeDialog.js.map +1 -1
  356. package/dist/src/ui/components/IdeTrustChangeDialog.test.js +4 -3
  357. package/dist/src/ui/components/IdeTrustChangeDialog.test.js.map +1 -1
  358. package/dist/src/ui/components/InputPrompt.js +77 -26
  359. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  360. package/dist/src/ui/components/InputPrompt.test.js +307 -7
  361. package/dist/src/ui/components/InputPrompt.test.js.map +1 -1
  362. package/dist/src/ui/components/LogoutConfirmationDialog.d.ts +15 -0
  363. package/dist/src/ui/components/LogoutConfirmationDialog.js +37 -0
  364. package/dist/src/ui/components/LogoutConfirmationDialog.js.map +1 -0
  365. package/dist/src/ui/components/LogoutConfirmationDialog.test.d.ts +6 -0
  366. package/dist/src/ui/components/LogoutConfirmationDialog.test.js +59 -0
  367. package/dist/src/ui/components/LogoutConfirmationDialog.test.js.map +1 -0
  368. package/dist/src/ui/components/MainContent.js +12 -10
  369. package/dist/src/ui/components/MainContent.js.map +1 -1
  370. package/dist/src/ui/components/MainContent.test.js +19 -9
  371. package/dist/src/ui/components/MainContent.test.js.map +1 -1
  372. package/dist/src/ui/components/ModelDialog.js +122 -41
  373. package/dist/src/ui/components/ModelDialog.js.map +1 -1
  374. package/dist/src/ui/components/ModelDialog.test.js +171 -148
  375. package/dist/src/ui/components/ModelDialog.test.js.map +1 -1
  376. package/dist/src/ui/components/ModelStatsDisplay.js +68 -14
  377. package/dist/src/ui/components/ModelStatsDisplay.js.map +1 -1
  378. package/dist/src/ui/components/ModelStatsDisplay.test.js +62 -4
  379. package/dist/src/ui/components/ModelStatsDisplay.test.js.map +1 -1
  380. package/dist/src/ui/components/MultiFolderTrustDialog.d.ts +2 -2
  381. package/dist/src/ui/components/MultiFolderTrustDialog.js +3 -2
  382. package/dist/src/ui/components/MultiFolderTrustDialog.js.map +1 -1
  383. package/dist/src/ui/components/MultiFolderTrustDialog.test.js +9 -9
  384. package/dist/src/ui/components/MultiFolderTrustDialog.test.js.map +1 -1
  385. package/dist/src/ui/components/Notifications.js +5 -4
  386. package/dist/src/ui/components/Notifications.js.map +1 -1
  387. package/dist/src/ui/components/Notifications.test.js +1 -0
  388. package/dist/src/ui/components/Notifications.test.js.map +1 -1
  389. package/dist/src/ui/components/PermissionsModifyTrustDialog.js +1 -0
  390. package/dist/src/ui/components/PermissionsModifyTrustDialog.js.map +1 -1
  391. package/dist/src/ui/components/ProQuotaDialog.d.ts +1 -3
  392. package/dist/src/ui/components/ProQuotaDialog.js +16 -32
  393. package/dist/src/ui/components/ProQuotaDialog.js.map +1 -1
  394. package/dist/src/ui/components/ProQuotaDialog.test.js +43 -29
  395. package/dist/src/ui/components/ProQuotaDialog.test.js.map +1 -1
  396. package/dist/src/ui/components/QuittingDisplay.test.js.map +1 -1
  397. package/dist/src/ui/components/SessionBrowser.js +2 -0
  398. package/dist/src/ui/components/SessionBrowser.js.map +1 -1
  399. package/dist/src/ui/components/SessionSummaryDisplay.test.js +1 -0
  400. package/dist/src/ui/components/SessionSummaryDisplay.test.js.map +1 -1
  401. package/dist/src/ui/components/SettingsDialog.js +166 -77
  402. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  403. package/dist/src/ui/components/SettingsDialog.test.js +118 -13
  404. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
  405. package/dist/src/ui/components/ShellConfirmationDialog.js +4 -4
  406. package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -1
  407. package/dist/src/ui/components/ShellConfirmationDialog.test.js +4 -4
  408. package/dist/src/ui/components/ShellConfirmationDialog.test.js.map +1 -1
  409. package/dist/src/ui/components/StatsDisplay.d.ts +1 -1
  410. package/dist/src/ui/components/StatsDisplay.js +66 -21
  411. package/dist/src/ui/components/StatsDisplay.js.map +1 -1
  412. package/dist/src/ui/components/StatsDisplay.test.js +44 -7
  413. package/dist/src/ui/components/StatsDisplay.test.js.map +1 -1
  414. package/dist/src/ui/components/StatusDisplay.d.ts +11 -0
  415. package/dist/src/ui/components/StatusDisplay.js +40 -0
  416. package/dist/src/ui/components/StatusDisplay.js.map +1 -0
  417. package/dist/src/ui/components/StatusDisplay.test.d.ts +6 -0
  418. package/dist/src/ui/components/StatusDisplay.test.js +144 -0
  419. package/dist/src/ui/components/StatusDisplay.test.js.map +1 -0
  420. package/dist/src/ui/components/StickyHeader.d.ts +2 -0
  421. package/dist/src/ui/components/StickyHeader.js +1 -1
  422. package/dist/src/ui/components/StickyHeader.js.map +1 -1
  423. package/dist/src/ui/components/SuggestionsDisplay.js +7 -2
  424. package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -1
  425. package/dist/src/ui/components/Table.d.ts +21 -0
  426. package/dist/src/ui/components/Table.js +7 -0
  427. package/dist/src/ui/components/Table.js.map +1 -0
  428. package/dist/src/ui/components/Table.test.d.ts +6 -0
  429. package/dist/src/ui/components/Table.test.js +53 -0
  430. package/dist/src/ui/components/Table.test.js.map +1 -0
  431. package/dist/src/ui/components/ThemeDialog.js +63 -17
  432. package/dist/src/ui/components/ThemeDialog.js.map +1 -1
  433. package/dist/src/ui/components/ThemeDialog.test.js +66 -1
  434. package/dist/src/ui/components/ThemeDialog.test.js.map +1 -1
  435. package/dist/src/ui/components/ToolStatsDisplay.js.map +1 -1
  436. package/dist/src/ui/components/messages/DiffRenderer.js +5 -13
  437. package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -1
  438. package/dist/src/ui/components/messages/DiffRenderer.test.js +26 -17
  439. package/dist/src/ui/components/messages/DiffRenderer.test.js.map +1 -1
  440. package/dist/src/ui/components/messages/ShellToolMessage.js +8 -5
  441. package/dist/src/ui/components/messages/ShellToolMessage.js.map +1 -1
  442. package/dist/src/ui/components/messages/Todo.js.map +1 -1
  443. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +55 -24
  444. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  445. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +40 -4
  446. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -1
  447. package/dist/src/ui/components/messages/ToolGroupMessage.test.js +45 -1
  448. package/dist/src/ui/components/messages/ToolGroupMessage.test.js.map +1 -1
  449. package/dist/src/ui/components/messages/ToolMessage.js +6 -2
  450. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  451. package/dist/src/ui/components/messages/ToolMessage.test.js +1 -0
  452. package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -1
  453. package/dist/src/ui/components/messages/ToolResultDisplay.js +22 -16
  454. package/dist/src/ui/components/messages/ToolResultDisplay.js.map +1 -1
  455. package/dist/src/ui/components/messages/ToolResultDisplay.test.js +36 -18
  456. package/dist/src/ui/components/messages/ToolResultDisplay.test.js.map +1 -1
  457. package/dist/src/ui/components/messages/ToolStickyHeaderRegression.test.d.ts +6 -0
  458. package/dist/src/ui/components/messages/ToolStickyHeaderRegression.test.js +134 -0
  459. package/dist/src/ui/components/messages/ToolStickyHeaderRegression.test.js.map +1 -0
  460. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.d.ts +1 -1
  461. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.js +1 -1
  462. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.js.map +1 -1
  463. package/dist/src/ui/components/shared/MaxSizedBox.d.ts +2 -38
  464. package/dist/src/ui/components/shared/MaxSizedBox.js +34 -418
  465. package/dist/src/ui/components/shared/MaxSizedBox.js.map +1 -1
  466. package/dist/src/ui/components/shared/MaxSizedBox.test.js +48 -133
  467. package/dist/src/ui/components/shared/MaxSizedBox.test.js.map +1 -1
  468. package/dist/src/ui/components/shared/RadioButtonSelect.d.ts +4 -1
  469. package/dist/src/ui/components/shared/RadioButtonSelect.js +11 -10
  470. package/dist/src/ui/components/shared/RadioButtonSelect.js.map +1 -1
  471. package/dist/src/ui/components/shared/VirtualizedList.js.map +1 -1
  472. package/dist/src/ui/components/shared/text-buffer.d.ts +40 -4
  473. package/dist/src/ui/components/shared/text-buffer.js +279 -102
  474. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  475. package/dist/src/ui/components/shared/text-buffer.test.js +247 -1
  476. package/dist/src/ui/components/shared/text-buffer.test.js.map +1 -1
  477. package/dist/src/ui/components/shared/vim-buffer-actions.test.js +3 -0
  478. package/dist/src/ui/components/shared/vim-buffer-actions.test.js.map +1 -1
  479. package/dist/src/ui/components/views/AgentsStatus.d.ts +13 -0
  480. package/dist/src/ui/components/views/AgentsStatus.js +23 -0
  481. package/dist/src/ui/components/views/AgentsStatus.js.map +1 -0
  482. package/dist/src/ui/components/views/ExtensionsList.js +3 -2
  483. package/dist/src/ui/components/views/ExtensionsList.js.map +1 -1
  484. package/dist/src/ui/components/views/ExtensionsList.test.js +37 -0
  485. package/dist/src/ui/components/views/ExtensionsList.test.js.map +1 -1
  486. package/dist/src/ui/components/views/HooksList.d.ts +24 -0
  487. package/dist/src/ui/components/views/HooksList.js +28 -0
  488. package/dist/src/ui/components/views/HooksList.js.map +1 -0
  489. package/dist/src/ui/components/views/McpStatus.d.ts +2 -1
  490. package/dist/src/ui/components/views/McpStatus.js +18 -3
  491. package/dist/src/ui/components/views/McpStatus.js.map +1 -1
  492. package/dist/src/ui/components/views/McpStatus.test.js +23 -0
  493. package/dist/src/ui/components/views/McpStatus.test.js.map +1 -1
  494. package/dist/src/ui/components/views/SkillsList.d.ts +13 -0
  495. package/dist/src/ui/components/views/SkillsList.js +17 -0
  496. package/dist/src/ui/components/views/SkillsList.js.map +1 -0
  497. package/dist/src/ui/components/views/SkillsList.test.d.ts +6 -0
  498. package/dist/src/ui/components/views/SkillsList.test.js +97 -0
  499. package/dist/src/ui/components/views/SkillsList.test.js.map +1 -0
  500. package/dist/src/ui/constants/tips.js +1 -5
  501. package/dist/src/ui/constants/tips.js.map +1 -1
  502. package/dist/src/ui/constants.d.ts +4 -3
  503. package/dist/src/ui/constants.js +5 -6
  504. package/dist/src/ui/constants.js.map +1 -1
  505. package/dist/src/ui/contexts/KeypressContext.d.ts +1 -0
  506. package/dist/src/ui/contexts/KeypressContext.js +84 -6
  507. package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
  508. package/dist/src/ui/contexts/KeypressContext.test.js +136 -9
  509. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
  510. package/dist/src/ui/contexts/SessionContext.d.ts +1 -0
  511. package/dist/src/ui/contexts/SessionContext.js +2 -1
  512. package/dist/src/ui/contexts/SessionContext.js.map +1 -1
  513. package/dist/src/ui/contexts/SessionContext.test.js +3 -0
  514. package/dist/src/ui/contexts/SessionContext.test.js.map +1 -1
  515. package/dist/src/ui/contexts/UIActionsContext.d.ts +3 -0
  516. package/dist/src/ui/contexts/UIActionsContext.js.map +1 -1
  517. package/dist/src/ui/contexts/UIStateContext.d.ts +5 -1
  518. package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
  519. package/dist/src/ui/contexts/VimModeContext.js +1 -1
  520. package/dist/src/ui/contexts/VimModeContext.js.map +1 -1
  521. package/dist/src/ui/hooks/atCommandProcessor.d.ts +7 -6
  522. package/dist/src/ui/hooks/atCommandProcessor.js +156 -29
  523. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  524. package/dist/src/ui/hooks/atCommandProcessor.test.js +133 -35
  525. package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -1
  526. package/dist/src/ui/hooks/atCommandProcessor_agents.test.d.ts +6 -0
  527. package/dist/src/ui/hooks/atCommandProcessor_agents.test.js +183 -0
  528. package/dist/src/ui/hooks/atCommandProcessor_agents.test.js.map +1 -0
  529. package/dist/src/ui/hooks/shellCommandProcessor.js +2 -0
  530. package/dist/src/ui/hooks/shellCommandProcessor.js.map +1 -1
  531. package/dist/src/ui/hooks/slashCommandProcessor.js +21 -7
  532. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  533. package/dist/src/ui/hooks/slashCommandProcessor.test.js +2 -3
  534. package/dist/src/ui/hooks/slashCommandProcessor.test.js.map +1 -1
  535. package/dist/src/ui/hooks/useAtCompletion.js +83 -2
  536. package/dist/src/ui/hooks/useAtCompletion.js.map +1 -1
  537. package/dist/src/ui/hooks/useAtCompletion.test.js +21 -0
  538. package/dist/src/ui/hooks/useAtCompletion.test.js.map +1 -1
  539. package/dist/src/ui/hooks/useAtCompletion_agents.test.d.ts +6 -0
  540. package/dist/src/ui/hooks/useAtCompletion_agents.test.js +85 -0
  541. package/dist/src/ui/hooks/useAtCompletion_agents.test.js.map +1 -0
  542. package/dist/src/ui/hooks/useAutoAcceptIndicator.d.ts +2 -1
  543. package/dist/src/ui/hooks/useAutoAcceptIndicator.js +5 -4
  544. package/dist/src/ui/hooks/useAutoAcceptIndicator.js.map +1 -1
  545. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js +1 -1
  546. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js.map +1 -1
  547. package/dist/src/ui/hooks/useCommandCompletion.d.ts +3 -0
  548. package/dist/src/ui/hooks/useCommandCompletion.js +13 -8
  549. package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -1
  550. package/dist/src/ui/hooks/useCommandCompletion.test.js +88 -2
  551. package/dist/src/ui/hooks/useCommandCompletion.test.js.map +1 -1
  552. package/dist/src/ui/hooks/useExtensionUpdates.js +7 -7
  553. package/dist/src/ui/hooks/useExtensionUpdates.js.map +1 -1
  554. package/dist/src/ui/hooks/useExtensionUpdates.test.js +20 -4
  555. package/dist/src/ui/hooks/useExtensionUpdates.test.js.map +1 -1
  556. package/dist/src/ui/hooks/useFolderTrust.js +14 -19
  557. package/dist/src/ui/hooks/useFolderTrust.js.map +1 -1
  558. package/dist/src/ui/hooks/useFolderTrust.test.js +31 -23
  559. package/dist/src/ui/hooks/useFolderTrust.test.js.map +1 -1
  560. package/dist/src/ui/hooks/useGeminiStream.d.ts +2 -1
  561. package/dist/src/ui/hooks/useGeminiStream.js +102 -71
  562. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  563. package/dist/src/ui/hooks/useGeminiStream.test.js +294 -10
  564. package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
  565. package/dist/src/ui/hooks/useGitBranchName.js +3 -0
  566. package/dist/src/ui/hooks/useGitBranchName.js.map +1 -1
  567. package/dist/src/ui/hooks/useHistoryManager.d.ts +1 -1
  568. package/dist/src/ui/hooks/useHistoryManager.js +1 -1
  569. package/dist/src/ui/hooks/useHistoryManager.js.map +1 -1
  570. package/dist/src/ui/hooks/useHistoryManager.test.js +16 -0
  571. package/dist/src/ui/hooks/useHistoryManager.test.js.map +1 -1
  572. package/dist/src/ui/hooks/useHookDisplayState.d.ts +7 -0
  573. package/dist/src/ui/hooks/useHookDisplayState.js +83 -0
  574. package/dist/src/ui/hooks/useHookDisplayState.js.map +1 -0
  575. package/dist/src/ui/hooks/useHookDisplayState.test.d.ts +6 -0
  576. package/dist/src/ui/hooks/useHookDisplayState.test.js +180 -0
  577. package/dist/src/ui/hooks/useHookDisplayState.test.js.map +1 -0
  578. package/dist/src/ui/hooks/useIdeTrustListener.js +2 -0
  579. package/dist/src/ui/hooks/useIdeTrustListener.js.map +1 -1
  580. package/dist/src/ui/hooks/useIncludeDirsTrust.js +6 -4
  581. package/dist/src/ui/hooks/useIncludeDirsTrust.js.map +1 -1
  582. package/dist/src/ui/hooks/useIncludeDirsTrust.test.js +2 -2
  583. package/dist/src/ui/hooks/useIncludeDirsTrust.test.js.map +1 -1
  584. package/dist/src/ui/hooks/useKittyKeyboardProtocol.js +2 -2
  585. package/dist/src/ui/hooks/useKittyKeyboardProtocol.js.map +1 -1
  586. package/dist/src/ui/hooks/useLoadingIndicator.d.ts +2 -1
  587. package/dist/src/ui/hooks/useLoadingIndicator.js +7 -3
  588. package/dist/src/ui/hooks/useLoadingIndicator.js.map +1 -1
  589. package/dist/src/ui/hooks/useLoadingIndicator.test.js +15 -4
  590. package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -1
  591. package/dist/src/ui/hooks/usePermissionsModifyTrust.test.js +10 -3
  592. package/dist/src/ui/hooks/usePermissionsModifyTrust.test.js.map +1 -1
  593. package/dist/src/ui/hooks/usePhraseCycler.d.ts +1 -1
  594. package/dist/src/ui/hooks/usePhraseCycler.js +2 -2
  595. package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
  596. package/dist/src/ui/hooks/usePrivacySettings.js +5 -16
  597. package/dist/src/ui/hooks/usePrivacySettings.js.map +1 -1
  598. package/dist/src/ui/hooks/usePrivacySettings.test.js +3 -9
  599. package/dist/src/ui/hooks/usePrivacySettings.test.js.map +1 -1
  600. package/dist/src/ui/hooks/usePromptCompletion.js +1 -2
  601. package/dist/src/ui/hooks/usePromptCompletion.js.map +1 -1
  602. package/dist/src/ui/hooks/useQuotaAndFallback.js +19 -18
  603. package/dist/src/ui/hooks/useQuotaAndFallback.js.map +1 -1
  604. package/dist/src/ui/hooks/useQuotaAndFallback.test.js +29 -23
  605. package/dist/src/ui/hooks/useQuotaAndFallback.test.js.map +1 -1
  606. package/dist/src/ui/hooks/useReactToolScheduler.d.ts +1 -1
  607. package/dist/src/ui/hooks/useReactToolScheduler.js +1 -1
  608. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  609. package/dist/src/ui/hooks/useRewind.d.ts +14 -0
  610. package/dist/src/ui/hooks/useRewind.js +31 -0
  611. package/dist/src/ui/hooks/useRewind.js.map +1 -0
  612. package/dist/src/ui/hooks/useRewind.test.d.ts +6 -0
  613. package/dist/src/ui/hooks/useRewind.test.js +100 -0
  614. package/dist/src/ui/hooks/useRewind.test.js.map +1 -0
  615. package/dist/src/ui/hooks/useSelectionList.js +2 -1
  616. package/dist/src/ui/hooks/useSelectionList.js.map +1 -1
  617. package/dist/src/ui/hooks/useSelectionList.test.js +2 -0
  618. package/dist/src/ui/hooks/useSelectionList.test.js.map +1 -1
  619. package/dist/src/ui/hooks/useSessionBrowser.js +3 -3
  620. package/dist/src/ui/hooks/useSessionBrowser.js.map +1 -1
  621. package/dist/src/ui/hooks/useSessionBrowser.test.js +4 -10
  622. package/dist/src/ui/hooks/useSessionBrowser.test.js.map +1 -1
  623. package/dist/src/ui/hooks/useSessionResume.js +1 -0
  624. package/dist/src/ui/hooks/useSessionResume.js.map +1 -1
  625. package/dist/src/ui/hooks/useShellHistory.js +5 -3
  626. package/dist/src/ui/hooks/useShellHistory.js.map +1 -1
  627. package/dist/src/ui/hooks/useSlashCompletion.d.ts +2 -0
  628. package/dist/src/ui/hooks/useSlashCompletion.js +29 -11
  629. package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -1
  630. package/dist/src/ui/hooks/useSlashCompletion.test.js +115 -5
  631. package/dist/src/ui/hooks/useSlashCompletion.test.js.map +1 -1
  632. package/dist/src/{utils/version.d.ts → ui/hooks/useSnowfall.d.ts} +1 -1
  633. package/dist/src/ui/hooks/useSnowfall.js +126 -0
  634. package/dist/src/ui/hooks/useSnowfall.js.map +1 -0
  635. package/dist/src/ui/hooks/useSnowfall.test.d.ts +6 -0
  636. package/dist/src/ui/hooks/useSnowfall.test.js +88 -0
  637. package/dist/src/ui/hooks/useSnowfall.test.js.map +1 -0
  638. package/dist/src/ui/hooks/useToolScheduler.test.js +86 -53
  639. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  640. package/dist/src/ui/hooks/vim.test.js +7 -0
  641. package/dist/src/ui/hooks/vim.test.js.map +1 -1
  642. package/dist/src/ui/keyMatchers.test.js +79 -53
  643. package/dist/src/ui/keyMatchers.test.js.map +1 -1
  644. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js +1 -0
  645. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js.map +1 -1
  646. package/dist/src/ui/themes/ansi-light.js +1 -1
  647. package/dist/src/ui/themes/ansi-light.js.map +1 -1
  648. package/dist/src/ui/themes/ansi.js +1 -1
  649. package/dist/src/ui/themes/ansi.js.map +1 -1
  650. package/dist/src/ui/themes/color-utils.d.ts +1 -0
  651. package/dist/src/ui/themes/color-utils.js +13 -0
  652. package/dist/src/ui/themes/color-utils.js.map +1 -1
  653. package/dist/src/ui/themes/color-utils.test.js +20 -1
  654. package/dist/src/ui/themes/color-utils.test.js.map +1 -1
  655. package/dist/src/ui/themes/shades-of-purple.js +1 -1
  656. package/dist/src/ui/themes/shades-of-purple.js.map +1 -1
  657. package/dist/src/ui/themes/theme-manager.d.ts +5 -0
  658. package/dist/src/ui/themes/theme-manager.js +9 -3
  659. package/dist/src/ui/themes/theme-manager.js.map +1 -1
  660. package/dist/src/ui/themes/theme-manager.test.js +7 -0
  661. package/dist/src/ui/themes/theme-manager.test.js.map +1 -1
  662. package/dist/src/ui/themes/theme.d.ts +12 -0
  663. package/dist/src/ui/themes/theme.js +34 -4
  664. package/dist/src/ui/themes/theme.js.map +1 -1
  665. package/dist/src/ui/themes/theme.test.js +23 -0
  666. package/dist/src/ui/themes/theme.test.js.map +1 -1
  667. package/dist/src/ui/types.d.ts +48 -5
  668. package/dist/src/ui/types.js +5 -0
  669. package/dist/src/ui/types.js.map +1 -1
  670. package/dist/src/ui/utils/CodeColorizer.js +2 -2
  671. package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
  672. package/dist/src/ui/utils/CodeColorizer.test.js +1 -1
  673. package/dist/src/ui/utils/CodeColorizer.test.js.map +1 -1
  674. package/dist/src/ui/utils/ConsolePatcher.js +1 -0
  675. package/dist/src/ui/utils/ConsolePatcher.js.map +1 -1
  676. package/dist/src/ui/utils/InlineMarkdownRenderer.js +2 -1
  677. package/dist/src/ui/utils/InlineMarkdownRenderer.js.map +1 -1
  678. package/dist/src/ui/utils/MarkdownDisplay.test.js +1 -1
  679. package/dist/src/ui/utils/MarkdownDisplay.test.js.map +1 -1
  680. package/dist/src/ui/utils/clipboardUtils.d.ts +27 -2
  681. package/dist/src/ui/utils/clipboardUtils.js +148 -16
  682. package/dist/src/ui/utils/clipboardUtils.js.map +1 -1
  683. package/dist/src/ui/utils/clipboardUtils.test.js +135 -13
  684. package/dist/src/ui/utils/clipboardUtils.test.js.map +1 -1
  685. package/dist/src/ui/utils/clipboardUtils.windows.test.d.ts +6 -0
  686. package/dist/src/ui/utils/clipboardUtils.windows.test.js +52 -0
  687. package/dist/src/ui/utils/clipboardUtils.windows.test.js.map +1 -0
  688. package/dist/src/ui/utils/commandUtils.d.ts +1 -1
  689. package/dist/src/ui/utils/commandUtils.js +111 -1
  690. package/dist/src/ui/utils/commandUtils.js.map +1 -1
  691. package/dist/src/ui/utils/commandUtils.test.js +200 -6
  692. package/dist/src/ui/utils/commandUtils.test.js.map +1 -1
  693. package/dist/src/ui/utils/computeStats.js +2 -0
  694. package/dist/src/ui/utils/computeStats.js.map +1 -1
  695. package/dist/src/ui/utils/computeStats.test.js +9 -0
  696. package/dist/src/ui/utils/computeStats.test.js.map +1 -1
  697. package/dist/src/ui/utils/directoryUtils.d.ts +8 -0
  698. package/dist/src/ui/utils/directoryUtils.js +95 -3
  699. package/dist/src/ui/utils/directoryUtils.js.map +1 -1
  700. package/dist/src/ui/utils/directoryUtils.test.js +193 -3
  701. package/dist/src/ui/utils/directoryUtils.test.js.map +1 -1
  702. package/dist/src/ui/utils/highlight.d.ts +3 -2
  703. package/dist/src/ui/utils/highlight.js +51 -37
  704. package/dist/src/ui/utils/highlight.js.map +1 -1
  705. package/dist/src/ui/utils/highlight.test.js +75 -0
  706. package/dist/src/ui/utils/highlight.test.js.map +1 -1
  707. package/dist/src/ui/utils/historyExportUtils.d.ts +21 -0
  708. package/dist/src/ui/utils/historyExportUtils.js +59 -0
  709. package/dist/src/ui/utils/historyExportUtils.js.map +1 -0
  710. package/dist/src/ui/utils/rewindFileOps.d.ts +47 -0
  711. package/dist/src/ui/utils/rewindFileOps.js +190 -0
  712. package/dist/src/ui/utils/rewindFileOps.js.map +1 -0
  713. package/dist/src/ui/utils/rewindFileOps.test.d.ts +6 -0
  714. package/dist/src/ui/utils/rewindFileOps.test.js +375 -0
  715. package/dist/src/ui/utils/rewindFileOps.test.js.map +1 -0
  716. package/dist/src/ui/utils/terminalCapabilityManager.d.ts +41 -0
  717. package/dist/src/ui/utils/terminalCapabilityManager.js +209 -0
  718. package/dist/src/ui/utils/terminalCapabilityManager.js.map +1 -0
  719. package/dist/src/ui/utils/terminalCapabilityManager.test.d.ts +6 -0
  720. package/dist/src/ui/utils/terminalCapabilityManager.test.js +221 -0
  721. package/dist/src/ui/utils/terminalCapabilityManager.test.js.map +1 -0
  722. package/dist/src/ui/utils/terminalSetup.d.ts +1 -1
  723. package/dist/src/ui/utils/terminalSetup.js +21 -6
  724. package/dist/src/ui/utils/terminalSetup.js.map +1 -1
  725. package/dist/src/ui/utils/terminalSetup.test.js +16 -2
  726. package/dist/src/ui/utils/terminalSetup.test.js.map +1 -1
  727. package/dist/src/ui/utils/textUtils.js +9 -1
  728. package/dist/src/ui/utils/textUtils.js.map +1 -1
  729. package/dist/src/ui/utils/textUtils.test.js +12 -1
  730. package/dist/src/ui/utils/textUtils.test.js.map +1 -1
  731. package/dist/src/ui/utils/ui-sizing.js +1 -1
  732. package/dist/src/ui/utils/ui-sizing.js.map +1 -1
  733. package/dist/src/ui/utils/ui-sizing.test.js +2 -2
  734. package/dist/src/ui/utils/ui-sizing.test.js.map +1 -1
  735. package/dist/src/utils/activityLogger.d.ts +47 -0
  736. package/dist/src/utils/activityLogger.js +297 -0
  737. package/dist/src/utils/activityLogger.js.map +1 -0
  738. package/dist/src/utils/cleanup.d.ts +11 -0
  739. package/dist/src/utils/cleanup.js +36 -1
  740. package/dist/src/utils/cleanup.js.map +1 -1
  741. package/dist/src/utils/cleanup.test.js +21 -31
  742. package/dist/src/utils/cleanup.test.js.map +1 -1
  743. package/dist/src/utils/deepMerge.js +7 -2
  744. package/dist/src/utils/deepMerge.js.map +1 -1
  745. package/dist/src/utils/deepMerge.test.js +58 -0
  746. package/dist/src/utils/deepMerge.test.js.map +1 -1
  747. package/dist/src/utils/envVarResolver.js.map +1 -1
  748. package/dist/src/utils/envVarResolver.test.js.map +1 -1
  749. package/dist/src/utils/errors.js +13 -14
  750. package/dist/src/utils/errors.js.map +1 -1
  751. package/dist/src/utils/errors.test.js +115 -39
  752. package/dist/src/utils/errors.test.js.map +1 -1
  753. package/dist/src/utils/handleAutoUpdate.d.ts +1 -1
  754. package/dist/src/utils/handleAutoUpdate.js +7 -10
  755. package/dist/src/utils/handleAutoUpdate.js.map +1 -1
  756. package/dist/src/utils/handleAutoUpdate.test.js +12 -10
  757. package/dist/src/utils/handleAutoUpdate.test.js.map +1 -1
  758. package/dist/src/utils/installationInfo.js +1 -1
  759. package/dist/src/utils/installationInfo.js.map +1 -1
  760. package/dist/src/utils/installationInfo.test.js +1 -1
  761. package/dist/src/utils/installationInfo.test.js.map +1 -1
  762. package/dist/src/utils/processUtils.d.ts +1 -1
  763. package/dist/src/utils/processUtils.js +1 -1
  764. package/dist/src/utils/processUtils.js.map +1 -1
  765. package/dist/src/utils/readStdin.js +7 -0
  766. package/dist/src/utils/readStdin.js.map +1 -1
  767. package/dist/src/utils/readStdin.test.js +4 -0
  768. package/dist/src/utils/readStdin.test.js.map +1 -1
  769. package/dist/src/utils/readStdin_safety.test.d.ts +6 -0
  770. package/dist/src/utils/readStdin_safety.test.js +68 -0
  771. package/dist/src/utils/readStdin_safety.test.js.map +1 -0
  772. package/dist/src/utils/relaunch.js +3 -1
  773. package/dist/src/utils/relaunch.js.map +1 -1
  774. package/dist/src/utils/relaunch.test.js +13 -7
  775. package/dist/src/utils/relaunch.test.js.map +1 -1
  776. package/dist/src/utils/resolvePath.js +3 -3
  777. package/dist/src/utils/resolvePath.js.map +1 -1
  778. package/dist/src/utils/resolvePath.test.js +3 -0
  779. package/dist/src/utils/resolvePath.test.js.map +1 -1
  780. package/dist/src/utils/sandbox.js +27 -17
  781. package/dist/src/utils/sandbox.js.map +1 -1
  782. package/dist/src/utils/sandbox.test.js +17 -5
  783. package/dist/src/utils/sandbox.test.js.map +1 -1
  784. package/dist/src/utils/sandboxUtils.js +3 -2
  785. package/dist/src/utils/sandboxUtils.js.map +1 -1
  786. package/dist/src/utils/sandboxUtils.test.js +3 -0
  787. package/dist/src/utils/sandboxUtils.test.js.map +1 -1
  788. package/dist/src/utils/sessionCleanup.integration.test.js +2 -2
  789. package/dist/src/utils/sessionCleanup.integration.test.js.map +1 -1
  790. package/dist/src/utils/sessionCleanup.js +16 -4
  791. package/dist/src/utils/sessionCleanup.js.map +1 -1
  792. package/dist/src/utils/sessionCleanup.test.js +18 -68
  793. package/dist/src/utils/sessionCleanup.test.js.map +1 -1
  794. package/dist/src/utils/sessionUtils.d.ts +22 -0
  795. package/dist/src/utils/sessionUtils.js +37 -5
  796. package/dist/src/utils/sessionUtils.js.map +1 -1
  797. package/dist/src/utils/sessionUtils.test.js +3 -3
  798. package/dist/src/utils/sessionUtils.test.js.map +1 -1
  799. package/dist/src/utils/sessions.js +14 -12
  800. package/dist/src/utils/sessions.js.map +1 -1
  801. package/dist/src/utils/sessions.test.js +62 -39
  802. package/dist/src/utils/sessions.test.js.map +1 -1
  803. package/dist/src/utils/settingsUtils.js +0 -5
  804. package/dist/src/utils/settingsUtils.js.map +1 -1
  805. package/dist/src/utils/skillSettings.d.ts +33 -0
  806. package/dist/src/utils/skillSettings.js +101 -0
  807. package/dist/src/utils/skillSettings.js.map +1 -0
  808. package/dist/src/utils/skillUtils.d.ts +29 -0
  809. package/dist/src/utils/skillUtils.js +144 -0
  810. package/dist/src/utils/skillUtils.js.map +1 -0
  811. package/dist/src/utils/skillUtils.test.d.ts +6 -0
  812. package/dist/src/utils/skillUtils.test.js +57 -0
  813. package/dist/src/utils/skillUtils.test.js.map +1 -0
  814. package/dist/src/utils/terminalTheme.d.ts +15 -0
  815. package/dist/src/utils/terminalTheme.js +50 -0
  816. package/dist/src/utils/terminalTheme.js.map +1 -0
  817. package/dist/src/utils/userStartupWarnings.d.ts +2 -1
  818. package/dist/src/utils/userStartupWarnings.js +17 -7
  819. package/dist/src/utils/userStartupWarnings.js.map +1 -1
  820. package/dist/src/utils/userStartupWarnings.test.js +37 -6
  821. package/dist/src/utils/userStartupWarnings.test.js.map +1 -1
  822. package/dist/src/utils/windowTitle.d.ts +13 -4
  823. package/dist/src/utils/windowTitle.js +65 -7
  824. package/dist/src/utils/windowTitle.js.map +1 -1
  825. package/dist/src/utils/windowTitle.test.js +183 -40
  826. package/dist/src/utils/windowTitle.test.js.map +1 -1
  827. package/dist/src/validateNonInterActiveAuth.d.ts +1 -1
  828. package/dist/src/validateNonInterActiveAuth.js +1 -2
  829. package/dist/src/validateNonInterActiveAuth.js.map +1 -1
  830. package/dist/src/zed-integration/fileSystemService.d.ts +3 -4
  831. package/dist/src/zed-integration/fileSystemService.js +5 -10
  832. package/dist/src/zed-integration/fileSystemService.js.map +1 -1
  833. package/dist/src/zed-integration/fileSystemService.test.js +11 -21
  834. package/dist/src/zed-integration/fileSystemService.test.js.map +1 -1
  835. package/dist/src/zed-integration/zedIntegration.d.ts +5 -5
  836. package/dist/src/zed-integration/zedIntegration.js +54 -24
  837. package/dist/src/zed-integration/zedIntegration.js.map +1 -1
  838. package/dist/src/zed-integration/zedIntegration.test.js +29 -18
  839. package/dist/src/zed-integration/zedIntegration.test.js.map +1 -1
  840. package/dist/tsconfig.tsbuildinfo +1 -1
  841. package/package.json +5 -4
  842. package/dist/src/ui/hooks/useBracketedPaste.d.ts +0 -12
  843. package/dist/src/ui/hooks/useBracketedPaste.js +0 -31
  844. package/dist/src/ui/hooks/useBracketedPaste.js.map +0 -1
  845. package/dist/src/ui/utils/bracketedPaste.d.ts +0 -7
  846. package/dist/src/ui/utils/bracketedPaste.js +0 -15
  847. package/dist/src/ui/utils/bracketedPaste.js.map +0 -1
  848. package/dist/src/ui/utils/kittyProtocolDetector.d.ts +0 -17
  849. package/dist/src/ui/utils/kittyProtocolDetector.js +0 -111
  850. package/dist/src/ui/utils/kittyProtocolDetector.js.map +0 -1
  851. package/dist/src/ui/utils/kittyProtocolDetector.test.js +0 -113
  852. package/dist/src/ui/utils/kittyProtocolDetector.test.js.map +0 -1
  853. package/dist/src/utils/version.js +0 -15
  854. package/dist/src/utils/version.js.map +0 -1
  855. package/dist/src/utils/version.test.js +0 -39
  856. package/dist/src/utils/version.test.js.map +0 -1
  857. package/dist/src/zed-integration/acp.d.ts +0 -41
  858. package/dist/src/zed-integration/acp.js +0 -72
  859. package/dist/src/zed-integration/acp.js.map +0 -1
  860. package/dist/src/zed-integration/acp.test.js +0 -222
  861. package/dist/src/zed-integration/acp.test.js.map +0 -1
  862. package/dist/src/zed-integration/connection.d.ts +0 -28
  863. package/dist/src/zed-integration/connection.js +0 -163
  864. package/dist/src/zed-integration/connection.js.map +0 -1
  865. package/dist/src/zed-integration/connection.test.js +0 -175
  866. package/dist/src/zed-integration/connection.test.js.map +0 -1
  867. package/dist/src/zed-integration/schema.d.ts +0 -11792
  868. package/dist/src/zed-integration/schema.js +0 -311
  869. package/dist/src/zed-integration/schema.js.map +0 -1
  870. /package/dist/src/{ui/utils/kittyProtocolDetector.test.d.ts → commands/hooks/migrate.test.d.ts} +0 -0
  871. /package/dist/src/{utils/version.test.d.ts → config/extension-manager-scope.test.d.ts} +0 -0
  872. /package/dist/src/{zed-integration/acp.test.d.ts → config/extension-manager-skills.test.d.ts} +0 -0
  873. /package/dist/src/{zed-integration/connection.test.d.ts → config/extensions/extensionUpdates.test.d.ts} +0 -0
@@ -71,9 +71,16 @@ function useCommandParser(query, slashCommands) {
71
71
  if (!hasTrailingSpace && currentLevel) {
72
72
  exactMatchAsParent = currentLevel.find((cmd) => matchesCommand(cmd, partial) && cmd.subCommands);
73
73
  if (exactMatchAsParent) {
74
- leafCommand = exactMatchAsParent;
75
- currentLevel = exactMatchAsParent.subCommands;
76
- partial = '';
74
+ // Only descend if there are NO other matches for the partial at this level.
75
+ // This ensures that typing "/memory" still shows "/memory-leak" if it exists.
76
+ const otherMatches = currentLevel.filter((cmd) => cmd !== exactMatchAsParent &&
77
+ (cmd.name.toLowerCase().startsWith(partial.toLowerCase()) ||
78
+ cmd.altNames?.some((alt) => alt.toLowerCase().startsWith(partial.toLowerCase()))));
79
+ if (otherMatches.length === 0) {
80
+ leafCommand = exactMatchAsParent;
81
+ currentLevel = exactMatchAsParent.subCommands;
82
+ partial = '';
83
+ }
77
84
  }
78
85
  }
79
86
  const depth = commandPathParts.length;
@@ -107,7 +114,10 @@ function useCommandSuggestions(query, parserResult, commandContext, getFzfForCom
107
114
  debugLogger.warn('Attempted argument completion without completion function');
108
115
  return;
109
116
  }
110
- setIsLoading(true);
117
+ const showLoading = leafCommand.showCompletionLoading !== false;
118
+ if (showLoading) {
119
+ setIsLoading(true);
120
+ }
111
121
  try {
112
122
  const rawParts = [...commandPathParts];
113
123
  if (partial)
@@ -139,6 +149,7 @@ function useCommandSuggestions(query, parserResult, commandContext, getFzfForCom
139
149
  }
140
150
  }
141
151
  };
152
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
142
153
  fetchAndSetSuggestions();
143
154
  return () => abortController.abort();
144
155
  }
@@ -181,7 +192,17 @@ function useCommandSuggestions(query, parserResult, commandContext, getFzfForCom
181
192
  }
182
193
  }
183
194
  if (!signal.aborted) {
184
- const finalSuggestions = potentialSuggestions.map((cmd) => ({
195
+ // Sort potentialSuggestions so that exact match (by name or altName) comes first
196
+ const sortedSuggestions = [...potentialSuggestions].sort((a, b) => {
197
+ const aIsExact = matchesCommand(a, partial);
198
+ const bIsExact = matchesCommand(b, partial);
199
+ if (aIsExact && !bIsExact)
200
+ return -1;
201
+ if (!aIsExact && bIsExact)
202
+ return 1;
203
+ return 0;
204
+ });
205
+ const finalSuggestions = sortedSuggestions.map((cmd) => ({
185
206
  label: cmd.name,
186
207
  value: cmd.name,
187
208
  description: cmd.description,
@@ -348,12 +369,7 @@ export function useSlashCompletion(props) {
348
369
  if (!enabled || query === null) {
349
370
  return;
350
371
  }
351
- if (isPerfectMatch) {
352
- setSuggestions([]);
353
- }
354
- else {
355
- setSuggestions(hookSuggestions);
356
- }
372
+ setSuggestions(hookSuggestions);
357
373
  setIsLoadingSuggestions(isLoading);
358
374
  setIsPerfectMatch(isPerfectMatch);
359
375
  setCompletionStart(calculatedStart);
@@ -374,6 +390,8 @@ export function useSlashCompletion(props) {
374
390
  completionStart,
375
391
  completionEnd,
376
392
  getCommandFromSuggestion: (suggestion) => getCommandFromSuggestion(suggestion, parserResult),
393
+ isArgumentCompletion: parserResult.isArgumentCompletion,
394
+ leafCommand: parserResult.leafCommand,
377
395
  };
378
396
  }
379
397
  //# sourceMappingURL=useSlashCompletion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSlashCompletion.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useSlashCompletion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSlashCompletion.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useSlashCompletion.ts"],"names":[],"mappings":"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"}
@@ -244,7 +244,7 @@ describe('useSlashCompletion', () => {
244
244
  });
245
245
  unmount();
246
246
  });
247
- it('should NOT provide suggestions for a perfectly typed command that is a leaf node', async () => {
247
+ it('should provide suggestions even for a perfectly typed command that is a leaf node', async () => {
248
248
  const slashCommands = [
249
249
  createTestCommand({
250
250
  name: 'clear',
@@ -260,12 +260,13 @@ describe('useSlashCompletion', () => {
260
260
  unmount = hook.unmount;
261
261
  });
262
262
  await waitFor(() => {
263
- expect(result.current.suggestions).toHaveLength(0);
263
+ expect(result.current.suggestions).toHaveLength(1);
264
+ expect(result.current.suggestions[0].label).toBe('clear');
264
265
  expect(result.current.completionStart).toBe(1);
265
266
  });
266
267
  unmount();
267
268
  });
268
- it.each([['/?'], ['/usage']])('should not suggest commands when altNames is fully typed', async (query) => {
269
+ it.each([['/?'], ['/usage']])('should suggest commands even when altNames is fully typed', async (query) => {
269
270
  const mockSlashCommands = [
270
271
  createTestCommand({
271
272
  name: 'help',
@@ -288,11 +289,86 @@ describe('useSlashCompletion', () => {
288
289
  unmount = hook.unmount;
289
290
  });
290
291
  await waitFor(() => {
291
- expect(result.current.suggestions).toHaveLength(0);
292
+ expect(result.current.suggestions).toHaveLength(1);
292
293
  expect(result.current.completionStart).toBe(1);
293
294
  });
294
295
  unmount();
295
296
  });
297
+ it('should show all matching suggestions even when one is a perfect match', async () => {
298
+ const slashCommands = [
299
+ createTestCommand({
300
+ name: 'review',
301
+ description: 'Review code',
302
+ action: vi.fn(),
303
+ }),
304
+ createTestCommand({
305
+ name: 'review-frontend',
306
+ description: 'Review frontend code',
307
+ action: vi.fn(),
308
+ }),
309
+ createTestCommand({
310
+ name: 'oncall:pr-review',
311
+ description: 'Review PR as oncall',
312
+ action: vi.fn(),
313
+ }),
314
+ ];
315
+ const { result, unmount } = renderHook(() => useTestHarnessForSlashCompletion(true, '/review', slashCommands, mockCommandContext));
316
+ await waitFor(() => {
317
+ // All three should match 'review' in our fuzzy mock or as prefix/exact
318
+ expect(result.current.suggestions.length).toBe(3);
319
+ // 'review' should be first because it is an exact match
320
+ expect(result.current.suggestions[0].label).toBe('review');
321
+ const labels = result.current.suggestions.map((s) => s.label);
322
+ expect(labels).toContain('review');
323
+ expect(labels).toContain('review-frontend');
324
+ expect(labels).toContain('oncall:pr-review');
325
+ expect(result.current.isPerfectMatch).toBe(true);
326
+ });
327
+ unmount();
328
+ });
329
+ it('should sort exact altName matches to the top', async () => {
330
+ const slashCommands = [
331
+ createTestCommand({
332
+ name: 'help',
333
+ altNames: ['?'],
334
+ description: 'Show help',
335
+ action: vi.fn(),
336
+ }),
337
+ createTestCommand({
338
+ name: 'question-mark',
339
+ description: 'Alternative name for help',
340
+ action: vi.fn(),
341
+ }),
342
+ ];
343
+ const { result, unmount } = renderHook(() => useTestHarnessForSlashCompletion(true, '/?', slashCommands, mockCommandContext));
344
+ await waitFor(() => {
345
+ // 'help' should be first because '?' is an exact altName match
346
+ expect(result.current.suggestions[0].label).toBe('help');
347
+ expect(result.current.isPerfectMatch).toBe(true);
348
+ });
349
+ unmount();
350
+ });
351
+ it('should suggest subcommands when a parent command is fully typed without a trailing space', async () => {
352
+ const slashCommands = [
353
+ createTestCommand({
354
+ name: 'chat',
355
+ description: 'Manage chat history',
356
+ subCommands: [
357
+ createTestCommand({ name: 'list', description: 'List chats' }),
358
+ createTestCommand({ name: 'save', description: 'Save chat' }),
359
+ ],
360
+ }),
361
+ ];
362
+ const { result, unmount } = renderHook(() => useTestHarnessForSlashCompletion(true, '/chat', slashCommands, mockCommandContext));
363
+ await waitFor(() => {
364
+ // Should show subcommands of 'chat'
365
+ expect(result.current.suggestions).toHaveLength(2);
366
+ expect(result.current.suggestions.map((s) => s.label)).toEqual(expect.arrayContaining(['list', 'save']));
367
+ // completionStart should be at the end of '/chat' to append subcommands
368
+ expect(result.current.completionStart).toBe(5);
369
+ });
370
+ unmount();
371
+ });
296
372
  it('should not provide suggestions for a fully typed command that has no sub-commands or argument completion', async () => {
297
373
  const slashCommands = [
298
374
  createTestCommand({ name: 'clear', description: 'Clear the screen' }),
@@ -384,6 +460,40 @@ describe('useSlashCompletion', () => {
384
460
  });
385
461
  unmount();
386
462
  });
463
+ it('should suggest parent command (and siblings) instead of sub-commands when no trailing space', async () => {
464
+ const slashCommands = [
465
+ createTestCommand({
466
+ name: 'memory',
467
+ description: 'Manage memory',
468
+ subCommands: [
469
+ createTestCommand({ name: 'show', description: 'Show memory' }),
470
+ ],
471
+ }),
472
+ createTestCommand({
473
+ name: 'memory-leak',
474
+ description: 'Debug memory leaks',
475
+ }),
476
+ ];
477
+ const { result } = renderHook(() => useTestHarnessForSlashCompletion(true, '/memory', slashCommands, mockCommandContext));
478
+ // Should verify that we see BOTH 'memory' and 'memory-leak'
479
+ await waitFor(() => {
480
+ expect(result.current.suggestions).toHaveLength(2);
481
+ expect(result.current.suggestions).toEqual(expect.arrayContaining([
482
+ {
483
+ label: 'memory',
484
+ value: 'memory',
485
+ description: 'Manage memory',
486
+ commandKind: CommandKind.BUILT_IN,
487
+ },
488
+ {
489
+ label: 'memory-leak',
490
+ value: 'memory-leak',
491
+ description: 'Debug memory leaks',
492
+ commandKind: CommandKind.BUILT_IN,
493
+ },
494
+ ]));
495
+ });
496
+ });
387
497
  it('should suggest all sub-commands when the query ends with the parent command and a space', async () => {
388
498
  const slashCommands = [
389
499
  createTestCommand({
@@ -648,7 +758,7 @@ describe('useSlashCompletion', () => {
648
758
  ],
649
759
  },
650
760
  ];
651
- const { result, unmount } = renderHook(() => useTestHarnessForSlashCompletion(true, '/memory', slashCommands, mockCommandContext));
761
+ const { result, unmount } = renderHook(() => useTestHarnessForSlashCompletion(true, '/memory ', slashCommands, mockCommandContext));
652
762
  await waitFor(() => {
653
763
  expect(result.current.suggestions).toEqual(expect.arrayContaining([
654
764
  {
@@ -1 +1 @@
1
- {"version":3,"file":"useSlashCompletion.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useSlashCompletion.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSlashCompletion.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useSlashCompletion.test.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,4 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- export declare function getCliVersion(): Promise<string>;
6
+ export declare const useSnowfall: (displayTitle: string) => string;
@@ -0,0 +1,126 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { useState, useEffect, useMemo } from 'react';
7
+ import { getAsciiArtWidth } from '../utils/textUtils.js';
8
+ import { debugState } from '../debug.js';
9
+ import { themeManager } from '../themes/theme-manager.js';
10
+ import { Holiday } from '../themes/holiday.js';
11
+ import { useUIState } from '../contexts/UIStateContext.js';
12
+ import { useTerminalSize } from './useTerminalSize.js';
13
+ import { shortAsciiLogo } from '../components/AsciiArt.js';
14
+ const SNOW_CHARS = ['*', '.', '·', '+'];
15
+ const FRAME_RATE = 150; // ms
16
+ const addHolidayTrees = (art) => {
17
+ const holidayTree = `
18
+ *
19
+ ***
20
+ *****
21
+ *******
22
+ *********
23
+ |_|`;
24
+ const treeLines = holidayTree.split('\n').filter((l) => l.length > 0);
25
+ const treeWidth = getAsciiArtWidth(holidayTree);
26
+ const logoWidth = getAsciiArtWidth(art);
27
+ // Create three trees side by side
28
+ const treeSpacing = ' ';
29
+ const tripleTreeLines = treeLines.map((line) => {
30
+ const paddedLine = line.padEnd(treeWidth, ' ');
31
+ return `${paddedLine}${treeSpacing}${paddedLine}${treeSpacing}${paddedLine}`;
32
+ });
33
+ const tripleTreeWidth = treeWidth * 3 + treeSpacing.length * 2;
34
+ const paddingCount = Math.max(0, Math.floor((logoWidth - tripleTreeWidth) / 2));
35
+ const treePadding = ' '.repeat(paddingCount);
36
+ const centeredTripleTrees = tripleTreeLines
37
+ .map((line) => treePadding + line)
38
+ .join('\n');
39
+ // Add vertical padding and the trees below the logo
40
+ return `\n\n${art}\n${centeredTripleTrees}\n\n`;
41
+ };
42
+ export const useSnowfall = (displayTitle) => {
43
+ const isHolidaySeason = new Date().getMonth() === 11 || new Date().getMonth() === 0;
44
+ const currentTheme = themeManager.getActiveTheme();
45
+ const { columns: terminalWidth } = useTerminalSize();
46
+ const { history, historyRemountKey } = useUIState();
47
+ const hasStartedChat = history.some((item) => item.type === 'user' && item.text !== '/theme');
48
+ const widthOfShortLogo = getAsciiArtWidth(shortAsciiLogo);
49
+ const [showSnow, setShowSnow] = useState(true);
50
+ useEffect(() => {
51
+ setShowSnow(true);
52
+ const timer = setTimeout(() => {
53
+ setShowSnow(false);
54
+ }, 15000);
55
+ return () => clearTimeout(timer);
56
+ }, [historyRemountKey]);
57
+ const showAnimation = isHolidaySeason &&
58
+ currentTheme.name === Holiday.name &&
59
+ terminalWidth >= widthOfShortLogo &&
60
+ !hasStartedChat &&
61
+ showSnow;
62
+ const displayArt = useMemo(() => {
63
+ if (showAnimation) {
64
+ return addHolidayTrees(displayTitle);
65
+ }
66
+ return displayTitle;
67
+ }, [displayTitle, showAnimation]);
68
+ const [snowflakes, setSnowflakes] = useState([]);
69
+ // We don't need 'frame' state if we just use functional updates for snowflakes,
70
+ // but we need a trigger. A simple interval is fine.
71
+ const lines = displayArt.split('\n');
72
+ const height = lines.length;
73
+ const width = getAsciiArtWidth(displayArt);
74
+ useEffect(() => {
75
+ if (!showAnimation) {
76
+ setSnowflakes([]);
77
+ return;
78
+ }
79
+ debugState.debugNumAnimatedComponents++;
80
+ const timer = setInterval(() => {
81
+ setSnowflakes((prev) => {
82
+ // Move existing flakes
83
+ const moved = prev
84
+ .map((flake) => ({ ...flake, y: flake.y + 1 }))
85
+ .filter((flake) => flake.y < height);
86
+ // Spawn new flakes
87
+ // Adjust spawn rate based on width to keep density consistent
88
+ const spawnChance = 0.3;
89
+ const newFlakes = [];
90
+ if (Math.random() < spawnChance) {
91
+ // Spawn 1 to 2 flakes
92
+ const count = Math.floor(Math.random() * 2) + 1;
93
+ for (let i = 0; i < count; i++) {
94
+ newFlakes.push({
95
+ x: Math.floor(Math.random() * width),
96
+ y: 0,
97
+ char: SNOW_CHARS[Math.floor(Math.random() * SNOW_CHARS.length)],
98
+ });
99
+ }
100
+ }
101
+ return [...moved, ...newFlakes];
102
+ });
103
+ }, FRAME_RATE);
104
+ return () => {
105
+ debugState.debugNumAnimatedComponents--;
106
+ clearInterval(timer);
107
+ };
108
+ }, [height, width, showAnimation]);
109
+ if (!showAnimation)
110
+ return displayTitle;
111
+ // Render current frame
112
+ if (snowflakes.length === 0)
113
+ return displayArt;
114
+ const grid = lines.map((line) => line.padEnd(width, ' ').split(''));
115
+ snowflakes.forEach((flake) => {
116
+ if (flake.y >= 0 && flake.y < height && flake.x >= 0 && flake.x < width) {
117
+ // Overwrite with snow character
118
+ // We check if the row exists just in case
119
+ if (grid[flake.y]) {
120
+ grid[flake.y][flake.x] = flake.char;
121
+ }
122
+ }
123
+ });
124
+ return grid.map((row) => row.join('')).join('\n');
125
+ };
126
+ //# sourceMappingURL=useSnowfall.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSnowfall.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useSnowfall.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export {};