@machina.ai/cell-cli 1.41.1-rc2 → 1.45.1-rc2

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 (560) hide show
  1. package/dist/index.js +17 -17
  2. package/dist/index.js.map +1 -1
  3. package/dist/package.json +4 -4
  4. package/dist/src/acp/README.md +81 -0
  5. package/dist/src/acp/{commandHandler.d.ts → acpCommandHandler.d.ts} +1 -1
  6. package/dist/src/acp/{commandHandler.js → acpCommandHandler.js} +2 -2
  7. package/dist/src/acp/acpCommandHandler.js.map +1 -0
  8. package/dist/src/acp/{commandHandler.test.js → acpCommandHandler.test.js} +4 -5
  9. package/dist/src/acp/acpCommandHandler.test.js.map +1 -0
  10. package/dist/src/acp/acpErrors.d.ts +1 -1
  11. package/dist/src/acp/acpErrors.js +1 -1
  12. package/dist/src/acp/acpErrors.test.d.ts +1 -1
  13. package/dist/src/acp/acpErrors.test.js +1 -1
  14. package/dist/src/acp/{fileSystemService.d.ts → acpFileSystemService.d.ts} +1 -1
  15. package/dist/src/acp/{fileSystemService.js → acpFileSystemService.js} +7 -4
  16. package/dist/src/acp/acpFileSystemService.js.map +1 -0
  17. package/dist/src/acp/{fileSystemService.test.js → acpFileSystemService.test.js} +3 -3
  18. package/dist/src/acp/acpFileSystemService.test.js.map +1 -0
  19. package/dist/src/acp/acpResume.test.d.ts +1 -1
  20. package/dist/src/acp/acpResume.test.js +12 -7
  21. package/dist/src/acp/acpResume.test.js.map +1 -1
  22. package/dist/src/acp/acpRpcDispatcher.d.ts +28 -0
  23. package/dist/src/acp/acpRpcDispatcher.js +177 -0
  24. package/dist/src/acp/acpRpcDispatcher.js.map +1 -0
  25. package/dist/src/acp/acpRpcDispatcher.test.d.ts +6 -0
  26. package/dist/src/acp/acpRpcDispatcher.test.js +238 -0
  27. package/dist/src/acp/acpRpcDispatcher.test.js.map +1 -0
  28. package/dist/src/acp/acpSession.d.ts +36 -0
  29. package/dist/src/acp/{acpClient.js → acpSession.js} +333 -781
  30. package/dist/src/acp/acpSession.js.map +1 -0
  31. package/dist/src/acp/acpSession.test.d.ts +6 -0
  32. package/dist/src/acp/acpSession.test.js +739 -0
  33. package/dist/src/acp/acpSession.test.js.map +1 -0
  34. package/dist/src/acp/acpSessionManager.d.ts +30 -0
  35. package/dist/src/acp/acpSessionManager.js +206 -0
  36. package/dist/src/acp/acpSessionManager.js.map +1 -0
  37. package/dist/src/acp/acpSessionManager.test.d.ts +6 -0
  38. package/dist/src/acp/acpSessionManager.test.js +283 -0
  39. package/dist/src/acp/acpSessionManager.test.js.map +1 -0
  40. package/dist/src/acp/acpStdioTransport.d.ts +9 -0
  41. package/dist/src/acp/acpStdioTransport.js +23 -0
  42. package/dist/src/acp/acpStdioTransport.js.map +1 -0
  43. package/dist/src/acp/acpUtils.d.ts +56 -0
  44. package/dist/src/acp/acpUtils.js +288 -0
  45. package/dist/src/acp/acpUtils.js.map +1 -0
  46. package/dist/src/acp/commands/commandRegistry.d.ts +1 -1
  47. package/dist/src/acp/commands/commandRegistry.js +1 -1
  48. package/dist/src/acp/commands/extensions.d.ts +1 -1
  49. package/dist/src/acp/commands/extensions.js +1 -1
  50. package/dist/src/acp/commands/extensions.test.d.ts +6 -0
  51. package/dist/src/acp/commands/extensions.test.js +70 -0
  52. package/dist/src/acp/commands/extensions.test.js.map +1 -0
  53. package/dist/src/acp/commands/init.d.ts +1 -1
  54. package/dist/src/acp/commands/init.js +1 -1
  55. package/dist/src/acp/commands/memory.d.ts +3 -8
  56. package/dist/src/acp/commands/memory.js +18 -47
  57. package/dist/src/acp/commands/memory.js.map +1 -1
  58. package/dist/src/acp/commands/restore.d.ts +1 -1
  59. package/dist/src/acp/commands/restore.js +1 -1
  60. package/dist/src/acp/commands/restore.test.js +7 -13
  61. package/dist/src/acp/commands/restore.test.js.map +1 -1
  62. package/dist/src/acp/commands/types.d.ts +1 -1
  63. package/dist/src/acp/commands/types.js +1 -1
  64. package/dist/src/commands/extensions/configure.test.js +6 -2
  65. package/dist/src/commands/extensions/configure.test.js.map +1 -1
  66. package/dist/src/commands/extensions/utils.d.ts +1 -1
  67. package/dist/src/commands/extensions/utils.js +1 -2
  68. package/dist/src/commands/extensions/utils.js.map +1 -1
  69. package/dist/src/commands/mcp/list.js +19 -5
  70. package/dist/src/commands/mcp/list.js.map +1 -1
  71. package/dist/src/commands/mcp/list.test.js +285 -100
  72. package/dist/src/commands/mcp/list.test.js.map +1 -1
  73. package/dist/src/config/auth.d.ts +1 -1
  74. package/dist/src/config/auth.js +4 -3
  75. package/dist/src/config/auth.js.map +1 -1
  76. package/dist/src/config/auth.test.js +11 -4
  77. package/dist/src/config/auth.test.js.map +1 -1
  78. package/dist/src/config/config.d.ts +4 -0
  79. package/dist/src/config/config.js +65 -47
  80. package/dist/src/config/config.js.map +1 -1
  81. package/dist/src/config/config.test.js +25 -106
  82. package/dist/src/config/config.test.js.map +1 -1
  83. package/dist/src/config/extension-manager-agents.test.js +2 -0
  84. package/dist/src/config/extension-manager-agents.test.js.map +1 -1
  85. package/dist/src/config/extension-manager-hydration.test.js +2 -0
  86. package/dist/src/config/extension-manager-hydration.test.js.map +1 -1
  87. package/dist/src/config/extension-manager-scope.test.js +4 -2
  88. package/dist/src/config/extension-manager-scope.test.js.map +1 -1
  89. package/dist/src/config/extension-manager-themes.spec.js +2 -0
  90. package/dist/src/config/extension-manager-themes.spec.js.map +1 -1
  91. package/dist/src/config/extension-manager.d.ts +2 -2
  92. package/dist/src/config/extension-manager.js +2 -1
  93. package/dist/src/config/extension-manager.js.map +1 -1
  94. package/dist/src/config/extensionRegistryClient.js +0 -1
  95. package/dist/src/config/extensionRegistryClient.js.map +1 -1
  96. package/dist/src/config/extensions/consent.d.ts +1 -1
  97. package/dist/src/config/extensions/consent.js +5 -4
  98. package/dist/src/config/extensions/consent.js.map +1 -1
  99. package/dist/src/config/extensions/consent.test.js +22 -0
  100. package/dist/src/config/extensions/consent.test.js.map +1 -1
  101. package/dist/src/config/extensions/extensionEnablement.js +4 -2
  102. package/dist/src/config/extensions/extensionEnablement.js.map +1 -1
  103. package/dist/src/config/extensions/extensionSettings.d.ts +3 -3
  104. package/dist/src/config/extensions/extensionSettings.js +7 -3
  105. package/dist/src/config/extensions/extensionSettings.js.map +1 -1
  106. package/dist/src/config/extensions/variables.js +1 -3
  107. package/dist/src/config/extensions/variables.js.map +1 -1
  108. package/dist/src/config/footerItems.d.ts +4 -0
  109. package/dist/src/config/footerItems.js +6 -0
  110. package/dist/src/config/footerItems.js.map +1 -1
  111. package/dist/src/config/footerItems.test.js +1 -0
  112. package/dist/src/config/footerItems.test.js.map +1 -1
  113. package/dist/src/config/mcp/mcpServerEnablement.js +1 -1
  114. package/dist/src/config/mcp/mcpServerEnablement.js.map +1 -1
  115. package/dist/src/config/mutual-exclusivity.test.js +33 -0
  116. package/dist/src/config/mutual-exclusivity.test.js.map +1 -0
  117. package/dist/src/config/settings-env-isolation.test.d.ts +6 -0
  118. package/dist/src/config/settings-env-isolation.test.js +188 -0
  119. package/dist/src/config/settings-env-isolation.test.js.map +1 -0
  120. package/dist/src/config/settings.d.ts +15 -1
  121. package/dist/src/config/settings.js +85 -10
  122. package/dist/src/config/settings.js.map +1 -1
  123. package/dist/src/config/settings.test.js +167 -0
  124. package/dist/src/config/settings.test.js.map +1 -1
  125. package/dist/src/config/settingsSchema.d.ts +56 -25
  126. package/dist/src/config/settingsSchema.js +66 -27
  127. package/dist/src/config/settingsSchema.js.map +1 -1
  128. package/dist/src/config/settingsSchema.test.js +8 -0
  129. package/dist/src/config/settingsSchema.test.js.map +1 -1
  130. package/dist/src/config/skipExtensions.test.d.ts +6 -0
  131. package/dist/src/config/skipExtensions.test.js +49 -0
  132. package/dist/src/config/skipExtensions.test.js.map +1 -0
  133. package/dist/src/config/workspace-policy-cli.test.js +0 -5
  134. package/dist/src/config/workspace-policy-cli.test.js.map +1 -1
  135. package/dist/src/gemini.d.ts +2 -2
  136. package/dist/src/gemini.js +108 -30
  137. package/dist/src/gemini.js.map +1 -1
  138. package/dist/src/gemini.test.js +147 -16
  139. package/dist/src/gemini.test.js.map +1 -1
  140. package/dist/src/gemini_cleanup.test.js +1 -1
  141. package/dist/src/gemini_cleanup.test.js.map +1 -1
  142. package/dist/src/generated/git-commit.d.ts +2 -2
  143. package/dist/src/generated/git-commit.js +2 -2
  144. package/dist/src/interactiveCli.js +1 -1
  145. package/dist/src/interactiveCli.js.map +1 -1
  146. package/dist/src/nonInteractiveCli.d.ts +7 -0
  147. package/dist/src/nonInteractiveCli.js +56 -6
  148. package/dist/src/nonInteractiveCli.js.map +1 -1
  149. package/dist/src/nonInteractiveCli.test.js +253 -18
  150. package/dist/src/nonInteractiveCli.test.js.map +1 -1
  151. package/dist/src/nonInteractiveCliAgentSession.d.ts +7 -0
  152. package/dist/src/nonInteractiveCliAgentSession.js +22 -3
  153. package/dist/src/nonInteractiveCliAgentSession.js.map +1 -1
  154. package/dist/src/nonInteractiveCliAgentSession.test.js +200 -20
  155. package/dist/src/nonInteractiveCliAgentSession.test.js.map +1 -1
  156. package/dist/src/output-redirection.test.d.ts +6 -0
  157. package/dist/src/output-redirection.test.js +77 -0
  158. package/dist/src/output-redirection.test.js.map +1 -0
  159. package/dist/src/patches/http-proxy-agent.d.ts +6 -0
  160. package/dist/src/patches/http-proxy-agent.js +8 -0
  161. package/dist/src/patches/http-proxy-agent.js.map +1 -0
  162. package/dist/src/patches/https-proxy-agent.d.ts +6 -0
  163. package/dist/src/patches/https-proxy-agent.js +8 -0
  164. package/dist/src/patches/https-proxy-agent.js.map +1 -0
  165. package/dist/src/services/BuiltinCommandLoader.js +5 -1
  166. package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
  167. package/dist/src/services/BuiltinCommandLoader.test.js +6 -1
  168. package/dist/src/services/BuiltinCommandLoader.test.js.map +1 -1
  169. package/dist/src/services/FileCommandLoader.d.ts +21 -0
  170. package/dist/src/services/FileCommandLoader.js +58 -6
  171. package/dist/src/services/FileCommandLoader.js.map +1 -1
  172. package/dist/src/services/FileCommandLoader.test.js +27 -1
  173. package/dist/src/services/FileCommandLoader.test.js.map +1 -1
  174. package/dist/src/test-utils/mockCommandContext.js +6 -1
  175. package/dist/src/test-utils/mockCommandContext.js.map +1 -1
  176. package/dist/src/test-utils/mockConfig.js +0 -3
  177. package/dist/src/test-utils/mockConfig.js.map +1 -1
  178. package/dist/src/test-utils/render.js +1 -0
  179. package/dist/src/test-utils/render.js.map +1 -1
  180. package/dist/src/test-utils/settings.d.ts +1 -0
  181. package/dist/src/test-utils/settings.js.map +1 -1
  182. package/dist/src/ui/AppContainer.js +60 -73
  183. package/dist/src/ui/AppContainer.js.map +1 -1
  184. package/dist/src/ui/AppContainer.test.js +101 -1
  185. package/dist/src/ui/AppContainer.test.js.map +1 -1
  186. package/dist/src/ui/auth/AuthDialog.js +6 -3
  187. package/dist/src/ui/auth/AuthDialog.js.map +1 -1
  188. package/dist/src/ui/auth/AuthDialog.test.js +33 -10
  189. package/dist/src/ui/auth/AuthDialog.test.js.map +1 -1
  190. package/dist/src/ui/auth/LoginRestartDialog.d.ts +13 -0
  191. package/dist/src/ui/auth/{LoginWithGoogleRestartDialog.js → LoginRestartDialog.js} +7 -6
  192. package/dist/src/ui/auth/LoginRestartDialog.js.map +1 -0
  193. package/dist/src/ui/auth/LoginRestartDialog.test.d.ts +6 -0
  194. package/dist/src/ui/auth/{LoginWithGoogleRestartDialog.test.js → LoginRestartDialog.test.js} +13 -8
  195. package/dist/src/ui/auth/LoginRestartDialog.test.js.map +1 -0
  196. package/dist/src/ui/auth/useAuth.d.ts +1 -1
  197. package/dist/src/ui/auth/useAuth.js +2 -2
  198. package/dist/src/ui/auth/useAuth.js.map +1 -1
  199. package/dist/src/ui/auth/useAuth.test.js +10 -10
  200. package/dist/src/ui/auth/useAuth.test.js.map +1 -1
  201. package/dist/src/ui/commands/agentsCommand.js +19 -2
  202. package/dist/src/ui/commands/agentsCommand.js.map +1 -1
  203. package/dist/src/ui/commands/agentsCommand.test.js +34 -3
  204. package/dist/src/ui/commands/agentsCommand.test.js.map +1 -1
  205. package/dist/src/ui/commands/bugCommand.js +36 -0
  206. package/dist/src/ui/commands/bugCommand.js.map +1 -1
  207. package/dist/src/ui/commands/bugCommand.test.js +106 -1
  208. package/dist/src/ui/commands/bugCommand.test.js.map +1 -1
  209. package/dist/src/ui/commands/bugMemoryCommand.d.ts +7 -0
  210. package/dist/src/ui/commands/bugMemoryCommand.js +62 -0
  211. package/dist/src/ui/commands/bugMemoryCommand.js.map +1 -0
  212. package/dist/src/ui/commands/bugMemoryCommand.test.js +100 -0
  213. package/dist/src/ui/commands/bugMemoryCommand.test.js.map +1 -0
  214. package/dist/src/ui/commands/commandsCommand.js +52 -4
  215. package/dist/src/ui/commands/commandsCommand.js.map +1 -1
  216. package/dist/src/ui/commands/commandsCommand.test.js +75 -2
  217. package/dist/src/ui/commands/commandsCommand.test.js.map +1 -1
  218. package/dist/src/ui/commands/compressCommand.js +28 -26
  219. package/dist/src/ui/commands/compressCommand.js.map +1 -1
  220. package/dist/src/ui/commands/compressCommand.test.js +5 -0
  221. package/dist/src/ui/commands/compressCommand.test.js.map +1 -1
  222. package/dist/src/ui/commands/directoryCommand.js +2 -2
  223. package/dist/src/ui/commands/directoryCommand.js.map +1 -1
  224. package/dist/src/ui/commands/directoryCommand.test.js +1 -0
  225. package/dist/src/ui/commands/directoryCommand.test.js.map +1 -1
  226. package/dist/src/ui/commands/exportSessionCommand.d.ts +7 -0
  227. package/dist/src/ui/commands/exportSessionCommand.js +74 -0
  228. package/dist/src/ui/commands/exportSessionCommand.js.map +1 -0
  229. package/dist/src/ui/commands/exportSessionCommand.test.js +100 -0
  230. package/dist/src/ui/commands/exportSessionCommand.test.js.map +1 -0
  231. package/dist/src/ui/commands/extensionsCommand.js +1 -0
  232. package/dist/src/ui/commands/extensionsCommand.js.map +1 -1
  233. package/dist/src/ui/commands/extensionsCommand.test.js +4 -0
  234. package/dist/src/ui/commands/extensionsCommand.test.js.map +1 -1
  235. package/dist/src/ui/commands/memoryCommand.d.ts +2 -1
  236. package/dist/src/ui/commands/memoryCommand.js +110 -117
  237. package/dist/src/ui/commands/memoryCommand.js.map +1 -1
  238. package/dist/src/ui/commands/memoryCommand.test.js +18 -71
  239. package/dist/src/ui/commands/memoryCommand.test.js.map +1 -1
  240. package/dist/src/ui/commands/quitCommand.js +3 -1
  241. package/dist/src/ui/commands/quitCommand.js.map +1 -1
  242. package/dist/src/ui/commands/quitCommand.test.js +46 -1
  243. package/dist/src/ui/commands/quitCommand.test.js.map +1 -1
  244. package/dist/src/ui/commands/rewindCommand.js.map +1 -1
  245. package/dist/src/ui/commands/skillsCommand.js +1 -1
  246. package/dist/src/ui/commands/skillsCommand.js.map +1 -1
  247. package/dist/src/ui/commands/skillsCommand.test.js +19 -0
  248. package/dist/src/ui/commands/skillsCommand.test.js.map +1 -1
  249. package/dist/src/ui/commands/types.d.ts +3 -1
  250. package/dist/src/ui/commands/types.js.map +1 -1
  251. package/dist/src/ui/components/AsciiArt.d.ts +6 -6
  252. package/dist/src/ui/components/AsciiArt.js +6 -6
  253. package/dist/src/ui/components/AskUserDialog.js +3 -1
  254. package/dist/src/ui/components/AskUserDialog.js.map +1 -1
  255. package/dist/src/ui/components/AskUserDialog.test.js +43 -0
  256. package/dist/src/ui/components/AskUserDialog.test.js.map +1 -1
  257. package/dist/src/ui/components/Composer.js +1 -1
  258. package/dist/src/ui/components/Composer.js.map +1 -1
  259. package/dist/src/ui/components/DialogManager.js +4 -0
  260. package/dist/src/ui/components/DialogManager.js.map +1 -1
  261. package/dist/src/ui/components/EditorSettingsDialog.js +3 -6
  262. package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -1
  263. package/dist/src/ui/components/Footer.js +6 -0
  264. package/dist/src/ui/components/Footer.js.map +1 -1
  265. package/dist/src/ui/components/FooterConfigDialog.js +1 -0
  266. package/dist/src/ui/components/FooterConfigDialog.js.map +1 -1
  267. package/dist/src/ui/components/FooterConfigDialog.test.js +1 -1
  268. package/dist/src/ui/components/FooterConfigDialog.test.js.map +1 -1
  269. package/dist/src/ui/components/HistoryItemDisplay.js +3 -1
  270. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  271. package/dist/src/ui/components/HistoryItemDisplay.test.js +15 -0
  272. package/dist/src/ui/components/HistoryItemDisplay.test.js.map +1 -1
  273. package/dist/src/ui/components/{SkillInboxDialog.d.ts → InboxDialog.d.ts} +3 -2
  274. package/dist/src/ui/components/InboxDialog.js +756 -0
  275. package/dist/src/ui/components/InboxDialog.js.map +1 -0
  276. package/dist/src/ui/components/InboxDialog.test.d.ts +6 -0
  277. package/dist/src/ui/components/InboxDialog.test.js +824 -0
  278. package/dist/src/ui/components/InboxDialog.test.js.map +1 -0
  279. package/dist/src/ui/components/InputPrompt.d.ts +3 -0
  280. package/dist/src/ui/components/InputPrompt.js +35 -17
  281. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  282. package/dist/src/ui/components/InputPrompt.test.js +95 -46
  283. package/dist/src/ui/components/InputPrompt.test.js.map +1 -1
  284. package/dist/src/ui/components/ListeningIndicator.d.ts +10 -0
  285. package/dist/src/ui/components/ListeningIndicator.js +30 -0
  286. package/dist/src/ui/components/ListeningIndicator.js.map +1 -0
  287. package/dist/src/ui/components/MainContent.test.js +23 -3
  288. package/dist/src/ui/components/MainContent.test.js.map +1 -1
  289. package/dist/src/ui/components/ModelDialog.js +32 -37
  290. package/dist/src/ui/components/ModelDialog.js.map +1 -1
  291. package/dist/src/ui/components/ModelDialog.test.js +30 -27
  292. package/dist/src/ui/components/ModelDialog.test.js.map +1 -1
  293. package/dist/src/ui/components/ModelStatsDisplay.js +1 -1
  294. package/dist/src/ui/components/ModelStatsDisplay.js.map +1 -1
  295. package/dist/src/ui/components/ModelStatsDisplay.test.js +41 -0
  296. package/dist/src/ui/components/ModelStatsDisplay.test.js.map +1 -1
  297. package/dist/src/ui/components/SessionBrowser.js +7 -0
  298. package/dist/src/ui/components/SessionBrowser.js.map +1 -1
  299. package/dist/src/ui/components/SessionSummaryDisplay.js +9 -4
  300. package/dist/src/ui/components/SessionSummaryDisplay.js.map +1 -1
  301. package/dist/src/ui/components/SessionSummaryDisplay.test.js +12 -23
  302. package/dist/src/ui/components/SessionSummaryDisplay.test.js.map +1 -1
  303. package/dist/src/ui/components/SettingsDialog.js +37 -17
  304. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  305. package/dist/src/ui/components/SettingsDialog.test.js +83 -1
  306. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
  307. package/dist/src/ui/components/StatsDisplay.js +2 -2
  308. package/dist/src/ui/components/StatsDisplay.js.map +1 -1
  309. package/dist/src/ui/components/StatsDisplay.test.js +24 -0
  310. package/dist/src/ui/components/StatsDisplay.test.js.map +1 -1
  311. package/dist/src/ui/components/ThemeDialog.constants.d.ts +26 -0
  312. package/dist/src/ui/components/ThemeDialog.constants.js +27 -0
  313. package/dist/src/ui/components/ThemeDialog.constants.js.map +1 -0
  314. package/dist/src/ui/components/ThemeDialog.js +5 -15
  315. package/dist/src/ui/components/ThemeDialog.js.map +1 -1
  316. package/dist/src/ui/components/ToolConfirmationQueue.test.js +1 -1
  317. package/dist/src/ui/components/ToolConfirmationQueue.test.js.map +1 -1
  318. package/dist/src/ui/components/VoiceModelDialog.js +7 -2
  319. package/dist/src/ui/components/VoiceModelDialog.js.map +1 -1
  320. package/dist/src/ui/components/VoiceModelDialog.test.d.ts +6 -0
  321. package/dist/src/ui/components/VoiceModelDialog.test.js +68 -0
  322. package/dist/src/ui/components/VoiceModelDialog.test.js.map +1 -0
  323. package/dist/src/ui/components/messages/ExportSessionMessage.d.ts +11 -0
  324. package/dist/src/ui/components/messages/ExportSessionMessage.js +15 -0
  325. package/dist/src/ui/components/messages/ExportSessionMessage.js.map +1 -0
  326. package/dist/src/ui/components/messages/ExportSessionMessage.test.d.ts +6 -0
  327. package/dist/src/ui/components/messages/ExportSessionMessage.test.js +31 -0
  328. package/dist/src/ui/components/messages/ExportSessionMessage.test.js.map +1 -0
  329. package/dist/src/ui/components/messages/ShellToolMessage.js +6 -2
  330. package/dist/src/ui/components/messages/ShellToolMessage.js.map +1 -1
  331. package/dist/src/ui/components/messages/ShellToolMessage.test.js +33 -0
  332. package/dist/src/ui/components/messages/ShellToolMessage.test.js.map +1 -1
  333. package/dist/src/ui/components/messages/SubagentGroupDisplay.js +13 -13
  334. package/dist/src/ui/components/messages/SubagentGroupDisplay.js.map +1 -1
  335. package/dist/src/ui/components/messages/SubagentGroupDisplay.test.js +5 -5
  336. package/dist/src/ui/components/messages/SubagentGroupDisplay.test.js.map +1 -1
  337. package/dist/src/ui/components/messages/SubagentHistoryMessage.test.js +4 -3
  338. package/dist/src/ui/components/messages/SubagentHistoryMessage.test.js.map +1 -1
  339. package/dist/src/ui/components/messages/SubagentProgressDisplay.d.ts +1 -1
  340. package/dist/src/ui/components/messages/SubagentProgressDisplay.js +7 -6
  341. package/dist/src/ui/components/messages/SubagentProgressDisplay.js.map +1 -1
  342. package/dist/src/ui/components/messages/SubagentProgressDisplay.test.js +10 -9
  343. package/dist/src/ui/components/messages/SubagentProgressDisplay.test.js.map +1 -1
  344. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +3 -9
  345. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  346. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +60 -0
  347. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -1
  348. package/dist/src/ui/components/messages/ToolGroupDisplay.d.ts +13 -0
  349. package/dist/src/ui/components/messages/ToolGroupDisplay.js +78 -0
  350. package/dist/src/ui/components/messages/ToolGroupDisplay.js.map +1 -0
  351. package/dist/src/ui/components/messages/ToolGroupDisplay.test.d.ts +6 -0
  352. package/dist/src/ui/components/messages/ToolGroupDisplay.test.js +210 -0
  353. package/dist/src/ui/components/messages/ToolGroupDisplay.test.js.map +1 -0
  354. package/dist/src/ui/components/messages/ToolGroupMessage.js +4 -2
  355. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
  356. package/dist/src/ui/components/messages/ToolGroupMessage.test.js +28 -0
  357. package/dist/src/ui/components/messages/ToolGroupMessage.test.js.map +1 -1
  358. package/dist/src/ui/components/messages/ToolGroupMessageRegression.test.js +3 -3
  359. package/dist/src/ui/components/messages/ToolGroupMessageRegression.test.js.map +1 -1
  360. package/dist/src/ui/components/messages/ToolMessage.js +6 -2
  361. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  362. package/dist/src/ui/components/messages/ToolShared.d.ts +1 -0
  363. package/dist/src/ui/components/messages/ToolShared.js +5 -3
  364. package/dist/src/ui/components/messages/ToolShared.js.map +1 -1
  365. package/dist/src/ui/components/messages/ToolShared.test.js +18 -1
  366. package/dist/src/ui/components/messages/ToolShared.test.js.map +1 -1
  367. package/dist/src/ui/components/shared/BaseSettingsDialog.d.ts +6 -1
  368. package/dist/src/ui/components/shared/BaseSettingsDialog.js +8 -8
  369. package/dist/src/ui/components/shared/BaseSettingsDialog.js.map +1 -1
  370. package/dist/src/ui/components/shared/performance.test.js +9 -0
  371. package/dist/src/ui/components/shared/performance.test.js.map +1 -1
  372. package/dist/src/ui/components/shared/text-buffer.js +22 -5
  373. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  374. package/dist/src/ui/components/shared/text-buffer.test.js +211 -0
  375. package/dist/src/ui/components/shared/text-buffer.test.js.map +1 -1
  376. package/dist/src/ui/constants/tips.js +0 -1
  377. package/dist/src/ui/constants/tips.js.map +1 -1
  378. package/dist/src/ui/contexts/UIActionsContext.d.ts +1 -0
  379. package/dist/src/ui/contexts/UIActionsContext.js.map +1 -1
  380. package/dist/src/ui/contexts/UIStateContext.d.ts +2 -0
  381. package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
  382. package/dist/src/ui/hooks/atCommandProcessor.js +78 -69
  383. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  384. package/dist/src/ui/hooks/atCommandProcessor.test.js +128 -18
  385. package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -1
  386. package/dist/src/ui/hooks/slashCommandProcessor.js +13 -0
  387. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  388. package/dist/src/ui/hooks/slashCommandProcessor.test.js +85 -0
  389. package/dist/src/ui/hooks/slashCommandProcessor.test.js.map +1 -1
  390. package/dist/src/ui/hooks/useAgentStream.d.ts +2 -2
  391. package/dist/src/ui/hooks/useAgentStream.js +63 -30
  392. package/dist/src/ui/hooks/useAgentStream.js.map +1 -1
  393. package/dist/src/ui/hooks/useAgentStream.test.js +1 -1
  394. package/dist/src/ui/hooks/useAgentStream.test.js.map +1 -1
  395. package/dist/src/ui/hooks/useAtCompletion.js +0 -2
  396. package/dist/src/ui/hooks/useAtCompletion.js.map +1 -1
  397. package/dist/src/ui/hooks/useGeminiStream.d.ts +2 -2
  398. package/dist/src/ui/hooks/useGeminiStream.js +48 -29
  399. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  400. package/dist/src/ui/hooks/useGeminiStream.test.js +44 -82
  401. package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
  402. package/dist/src/ui/hooks/useGitBranchName.js +29 -16
  403. package/dist/src/ui/hooks/useGitBranchName.js.map +1 -1
  404. package/dist/src/ui/hooks/useGitBranchName.test.js +102 -51
  405. package/dist/src/ui/hooks/useGitBranchName.test.js.map +1 -1
  406. package/dist/src/ui/hooks/useIncludeDirsTrust.js +2 -2
  407. package/dist/src/ui/hooks/useIncludeDirsTrust.js.map +1 -1
  408. package/dist/src/ui/hooks/useIncludeDirsTrust.test.js +2 -0
  409. package/dist/src/ui/hooks/useIncludeDirsTrust.test.js.map +1 -1
  410. package/dist/src/ui/hooks/useMessageQueue.d.ts +2 -1
  411. package/dist/src/ui/hooks/useMessageQueue.js +3 -1
  412. package/dist/src/ui/hooks/useMessageQueue.js.map +1 -1
  413. package/dist/src/ui/hooks/useMessageQueue.test.js +38 -0
  414. package/dist/src/ui/hooks/useMessageQueue.test.js.map +1 -1
  415. package/dist/src/ui/hooks/useSessionBrowser.d.ts +3 -3
  416. package/dist/src/ui/hooks/useSessionBrowser.js.map +1 -1
  417. package/dist/src/ui/hooks/useSessionBrowser.test.js +44 -38
  418. package/dist/src/ui/hooks/useSessionBrowser.test.js.map +1 -1
  419. package/dist/src/ui/hooks/useSessionResume.d.ts +3 -3
  420. package/dist/src/ui/hooks/useSessionResume.js.map +1 -1
  421. package/dist/src/ui/hooks/useSessionResume.test.js +6 -4
  422. package/dist/src/ui/hooks/useSessionResume.test.js.map +1 -1
  423. package/dist/src/ui/hooks/useSuspend.d.ts +1 -3
  424. package/dist/src/ui/hooks/useSuspend.js +3 -17
  425. package/dist/src/ui/hooks/useSuspend.js.map +1 -1
  426. package/dist/src/ui/hooks/useSuspend.test.js +0 -14
  427. package/dist/src/ui/hooks/useSuspend.test.js.map +1 -1
  428. package/dist/src/ui/hooks/useToolScheduler.test.js +6 -6
  429. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  430. package/dist/src/ui/hooks/useVoiceMode.js +25 -19
  431. package/dist/src/ui/hooks/useVoiceMode.js.map +1 -1
  432. package/dist/src/ui/hooks/vim-passthrough.test.js +10 -0
  433. package/dist/src/ui/hooks/vim-passthrough.test.js.map +1 -1
  434. package/dist/src/ui/hooks/vim.js +8 -0
  435. package/dist/src/ui/hooks/vim.js.map +1 -1
  436. package/dist/src/ui/hooks/vim.test.js +61 -0
  437. package/dist/src/ui/hooks/vim.test.js.map +1 -1
  438. package/dist/src/ui/key/keyBindings.d.ts +2 -0
  439. package/dist/src/ui/key/keyBindings.js +26 -9
  440. package/dist/src/ui/key/keyBindings.js.map +1 -1
  441. package/dist/src/ui/key/keyBindings.test.js +24 -0
  442. package/dist/src/ui/key/keyBindings.test.js.map +1 -1
  443. package/dist/src/ui/key/keyMatchers.test.js +26 -5
  444. package/dist/src/ui/key/keyMatchers.test.js.map +1 -1
  445. package/dist/src/ui/themes/theme-manager.js +0 -2
  446. package/dist/src/ui/themes/theme-manager.js.map +1 -1
  447. package/dist/src/ui/types.d.ts +23 -2
  448. package/dist/src/ui/types.js +3 -2
  449. package/dist/src/ui/types.js.map +1 -1
  450. package/dist/src/ui/utils/TableRenderer.js +6 -6
  451. package/dist/src/ui/utils/TableRenderer.js.map +1 -1
  452. package/dist/src/ui/utils/TableRenderer.test.js +10 -0
  453. package/dist/src/ui/utils/TableRenderer.test.js.map +1 -1
  454. package/dist/src/ui/utils/directoryUtils.test.js +0 -5
  455. package/dist/src/ui/utils/directoryUtils.test.js.map +1 -1
  456. package/dist/src/ui/utils/editorUtils.d.ts +2 -1
  457. package/dist/src/ui/utils/editorUtils.js +75 -28
  458. package/dist/src/ui/utils/editorUtils.js.map +1 -1
  459. package/dist/src/ui/utils/latexToUnicode.d.ts +21 -0
  460. package/dist/src/ui/utils/latexToUnicode.js +538 -0
  461. package/dist/src/ui/utils/latexToUnicode.js.map +1 -0
  462. package/dist/src/ui/utils/latexToUnicode.test.d.ts +6 -0
  463. package/dist/src/ui/utils/latexToUnicode.test.js +222 -0
  464. package/dist/src/ui/utils/latexToUnicode.test.js.map +1 -0
  465. package/dist/src/ui/utils/markdownParsingUtils.d.ts +1 -5
  466. package/dist/src/ui/utils/markdownParsingUtils.js +36 -1
  467. package/dist/src/ui/utils/markdownParsingUtils.js.map +1 -1
  468. package/dist/src/ui/utils/markdownParsingUtils.test.js +35 -0
  469. package/dist/src/ui/utils/markdownParsingUtils.test.js.map +1 -1
  470. package/dist/src/ui/utils/memorySnapshot.d.ts +19 -0
  471. package/dist/src/ui/utils/memorySnapshot.js +28 -0
  472. package/dist/src/ui/utils/memorySnapshot.js.map +1 -0
  473. package/dist/src/ui/utils/memorySnapshot.test.d.ts +6 -0
  474. package/dist/src/ui/utils/memorySnapshot.test.js +62 -0
  475. package/dist/src/ui/utils/memorySnapshot.test.js.map +1 -0
  476. package/dist/src/ui/utils/updateCheck.js +11 -2
  477. package/dist/src/ui/utils/updateCheck.js.map +1 -1
  478. package/dist/src/ui/utils/updateCheck.test.js +73 -0
  479. package/dist/src/ui/utils/updateCheck.test.js.map +1 -1
  480. package/dist/src/utils/commands.d.ts +1 -1
  481. package/dist/src/utils/commands.js +1 -1
  482. package/dist/src/utils/commands.test.js +14 -14
  483. package/dist/src/utils/commands.test.js.map +1 -1
  484. package/dist/src/utils/envVarResolver.js +10 -7
  485. package/dist/src/utils/envVarResolver.js.map +1 -1
  486. package/dist/src/utils/gitUtils.js +1 -2
  487. package/dist/src/utils/gitUtils.js.map +1 -1
  488. package/dist/src/utils/handleAutoUpdate.d.ts +1 -1
  489. package/dist/src/utils/handleAutoUpdate.js +15 -3
  490. package/dist/src/utils/handleAutoUpdate.js.map +1 -1
  491. package/dist/src/utils/handleAutoUpdate.test.js +45 -16
  492. package/dist/src/utils/handleAutoUpdate.test.js.map +1 -1
  493. package/dist/src/utils/installationInfo.d.ts +1 -0
  494. package/dist/src/utils/installationInfo.js +16 -1
  495. package/dist/src/utils/installationInfo.js.map +1 -1
  496. package/dist/src/utils/installationInfo.test.js +16 -0
  497. package/dist/src/utils/installationInfo.test.js.map +1 -1
  498. package/dist/src/utils/jsonoutput.js +0 -2
  499. package/dist/src/utils/jsonoutput.js.map +1 -1
  500. package/dist/src/utils/processUtils.d.ts +28 -0
  501. package/dist/src/utils/processUtils.js +71 -0
  502. package/dist/src/utils/processUtils.js.map +1 -1
  503. package/dist/src/utils/processUtils.test.js +122 -1
  504. package/dist/src/utils/processUtils.test.js.map +1 -1
  505. package/dist/src/utils/readStdin.js +22 -4
  506. package/dist/src/utils/readStdin.js.map +1 -1
  507. package/dist/src/utils/readStdin.test.js +32 -0
  508. package/dist/src/utils/readStdin.test.js.map +1 -1
  509. package/dist/src/utils/relaunch.js +6 -13
  510. package/dist/src/utils/relaunch.js.map +1 -1
  511. package/dist/src/utils/relaunch.test.js +82 -86
  512. package/dist/src/utils/relaunch.test.js.map +1 -1
  513. package/dist/src/utils/sandbox.js +34 -24
  514. package/dist/src/utils/sandbox.js.map +1 -1
  515. package/dist/src/utils/sandbox.test.js +108 -9
  516. package/dist/src/utils/sandbox.test.js.map +1 -1
  517. package/dist/src/utils/sandboxUtils.js +12 -7
  518. package/dist/src/utils/sandboxUtils.js.map +1 -1
  519. package/dist/src/utils/sandboxUtils.test.js +68 -0
  520. package/dist/src/utils/sandboxUtils.test.js.map +1 -1
  521. package/dist/src/utils/sessionCleanup.js +49 -14
  522. package/dist/src/utils/sessionCleanup.js.map +1 -1
  523. package/dist/src/utils/sessionCleanup.test.js +63 -0
  524. package/dist/src/utils/sessionCleanup.test.js.map +1 -1
  525. package/dist/src/utils/sessionUtils.js +22 -7
  526. package/dist/src/utils/sessionUtils.js.map +1 -1
  527. package/dist/src/utils/sessionUtils.test.js +99 -0
  528. package/dist/src/utils/sessionUtils.test.js.map +1 -1
  529. package/dist/src/utils/sessions.js +2 -4
  530. package/dist/src/utils/sessions.js.map +1 -1
  531. package/dist/src/utils/sessions.test.js +9 -12
  532. package/dist/src/utils/sessions.test.js.map +1 -1
  533. package/dist/src/utils/userStartupWarnings.js +4 -3
  534. package/dist/src/utils/userStartupWarnings.js.map +1 -1
  535. package/dist/src/utils/userStartupWarnings.test.js +40 -3
  536. package/dist/src/utils/userStartupWarnings.test.js.map +1 -1
  537. package/dist/src/validateNonInterActiveAuth.js +1 -1
  538. package/dist/src/validateNonInterActiveAuth.js.map +1 -1
  539. package/dist/tsconfig.tsbuildinfo +1 -1
  540. package/package.json +4 -4
  541. package/dist/src/acp/acpClient.d.ts +0 -56
  542. package/dist/src/acp/acpClient.js.map +0 -1
  543. package/dist/src/acp/acpClient.test.js +0 -1816
  544. package/dist/src/acp/acpClient.test.js.map +0 -1
  545. package/dist/src/acp/commandHandler.js.map +0 -1
  546. package/dist/src/acp/commandHandler.test.js.map +0 -1
  547. package/dist/src/acp/fileSystemService.js.map +0 -1
  548. package/dist/src/acp/fileSystemService.test.js.map +0 -1
  549. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.d.ts +0 -12
  550. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.js.map +0 -1
  551. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.js.map +0 -1
  552. package/dist/src/ui/components/SkillInboxDialog.js +0 -420
  553. package/dist/src/ui/components/SkillInboxDialog.js.map +0 -1
  554. package/dist/src/ui/components/SkillInboxDialog.test.js +0 -467
  555. package/dist/src/ui/components/SkillInboxDialog.test.js.map +0 -1
  556. /package/dist/src/acp/{commandHandler.test.d.ts → acpCommandHandler.test.d.ts} +0 -0
  557. /package/dist/src/{ui/components/SkillInboxDialog.test.d.ts → acp/acpFileSystemService.test.d.ts} +0 -0
  558. /package/dist/src/{acp/acpClient.test.d.ts → config/mutual-exclusivity.test.d.ts} +0 -0
  559. /package/dist/src/{acp/fileSystemService.test.d.ts → ui/commands/bugMemoryCommand.test.d.ts} +0 -0
  560. /package/dist/src/ui/{auth/LoginWithGoogleRestartDialog.test.d.ts → commands/exportSessionCommand.test.d.ts} +0 -0
@@ -20,6 +20,7 @@ export function useVoiceMode({ buffer, config, settings, setQueueErrorMessage, i
20
20
  const recorderRef = useRef(null);
21
21
  const transcriptionServiceRef = useRef(null);
22
22
  const turnBaselineRef = useRef(null);
23
+ const turnBaselineCursorOffsetRef = useRef(0);
23
24
  const pttStateRef = useRef('idle');
24
25
  const pttTimerRef = useRef(null);
25
26
  const disconnectTimerRef = useRef(null);
@@ -38,21 +39,24 @@ export function useVoiceMode({ buffer, config, settings, setQueueErrorMessage, i
38
39
  recorderRef.current = null;
39
40
  }
40
41
  const serviceToDisconnect = transcriptionServiceRef.current;
41
- transcriptionServiceRef.current = null;
42
42
  if (serviceToDisconnect) {
43
- const isLive = settings.experimental.voice?.backend === 'gemini-live';
44
- const gracePeriodMs = settings.experimental.voice?.stopGracePeriodMs ??
45
- (isLive ? 2000 : 1000);
43
+ const gracePeriodMs = settings.experimental.voice.stopGracePeriodMs;
46
44
  debugLogger.debug(`[Voice] Draining transcription for ${gracePeriodMs}ms`);
47
45
  if (disconnectTimerRef.current)
48
46
  clearTimeout(disconnectTimerRef.current);
49
47
  disconnectTimerRef.current = setTimeout(() => {
50
48
  debugLogger.debug('[Voice] Grace period ended, disconnecting service');
51
49
  serviceToDisconnect.disconnect();
50
+ if (transcriptionServiceRef.current === serviceToDisconnect) {
51
+ transcriptionServiceRef.current = null;
52
+ }
52
53
  disconnectTimerRef.current = null;
54
+ liveTranscriptionRef.current = '';
53
55
  }, gracePeriodMs);
54
56
  }
55
- liveTranscriptionRef.current = '';
57
+ else {
58
+ liveTranscriptionRef.current = '';
59
+ }
56
60
  pttStateRef.current = 'idle';
57
61
  }, [settings.experimental.voice]);
58
62
  const startVoiceRecording = useCallback(() => {
@@ -66,6 +70,7 @@ export function useVoiceMode({ buffer, config, settings, setQueueErrorMessage, i
66
70
  }
67
71
  recordingInProgressRef.current = true;
68
72
  turnBaselineRef.current = bufferRef.current.text;
73
+ turnBaselineCursorOffsetRef.current = bufferRef.current.getOffset();
69
74
  setIsConnecting(true);
70
75
  setIsRecording(true);
71
76
  isRecordingRef.current = true;
@@ -127,20 +132,18 @@ export function useVoiceMode({ buffer, config, settings, setQueueErrorMessage, i
127
132
  return;
128
133
  }
129
134
  if (text) {
130
- const currentBufferText = bufferRef.current.text;
131
- const previousTranscription = liveTranscriptionRef.current;
132
- let newTotalText = currentBufferText;
133
- if (previousTranscription &&
134
- currentBufferText.endsWith(previousTranscription)) {
135
- newTotalText = currentBufferText.slice(0, -previousTranscription.length);
136
- }
137
- else if (currentBufferText &&
138
- !currentBufferText.endsWith(' ') &&
139
- !currentBufferText.endsWith('\n')) {
140
- newTotalText += ' ';
141
- }
142
- newTotalText += text;
143
- bufferRef.current.setText(newTotalText, 'end');
135
+ const baseline = turnBaselineRef.current ?? '';
136
+ const insertOffset = turnBaselineCursorOffsetRef.current;
137
+ const textBefore = baseline.slice(0, insertOffset);
138
+ const textAfter = baseline.slice(insertOffset);
139
+ const prefix = textBefore.length > 0 && !/\s$/.test(textBefore)
140
+ ? textBefore + ' '
141
+ : textBefore;
142
+ const suffix = text.length > 0 && textAfter.length > 0 && !/^\s/.test(textAfter)
143
+ ? ' '
144
+ : '';
145
+ const newTotalText = prefix + text + suffix + textAfter;
146
+ bufferRef.current.setText(newTotalText, prefix.length + text.length);
144
147
  }
145
148
  liveTranscriptionRef.current = text;
146
149
  });
@@ -148,6 +151,9 @@ export function useVoiceMode({ buffer, config, settings, setQueueErrorMessage, i
148
151
  if (transcriptionServiceRef.current !== currentService &&
149
152
  stopRequestedRef.current)
150
153
  return;
154
+ // Advance the baseline so subsequent turns append after this turn's text
155
+ turnBaselineRef.current = bufferRef.current.text;
156
+ turnBaselineCursorOffsetRef.current = bufferRef.current.getOffset();
151
157
  liveTranscriptionRef.current = '';
152
158
  });
153
159
  currentService.on('error', (err) => {
@@ -1 +1 @@
1
- {"version":3,"file":"useVoiceMode.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useVoiceMode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useVoiceMode.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useVoiceMode.ts"],"names":[],"mappings":"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"}
@@ -70,5 +70,15 @@ describe('useVim passthrough', () => {
70
70
  });
71
71
  expect(handled).toBe(false);
72
72
  });
73
+ it.each(['H', 'M', 'Q', 'm'])('should ignore unmapped printable key %s in NORMAL mode', async (sequence) => {
74
+ mockVimContext.vimMode = 'NORMAL';
75
+ const { result } = await renderHook(() => useVim(mockBuffer));
76
+ let handled = false;
77
+ act(() => {
78
+ handled = result.current.handleInput(createKey({ name: sequence, sequence, insertable: true }));
79
+ });
80
+ expect(handled).toBe(true);
81
+ expect(mockBuffer.handleInput).not.toHaveBeenCalled();
82
+ });
73
83
  });
74
84
  //# sourceMappingURL=vim-passthrough.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"vim-passthrough.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/vim-passthrough.test.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vim-passthrough.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/vim-passthrough.test.tsx"],"names":[],"mappings":"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"}
@@ -1268,6 +1268,14 @@ export function useVim(buffer, onSubmit) {
1268
1268
  }
1269
1269
  // Unknown command, clear count and pending states
1270
1270
  dispatch({ type: 'CLEAR_PENDING_STATES' });
1271
+ // Ignore unmapped Insertable keys in Normal Mode, but let
1272
+ // modifier-key chords (ctrl/alt/cmd) fall through to other handlers.
1273
+ if (normalizedKey.insertable &&
1274
+ !normalizedKey.ctrl &&
1275
+ !normalizedKey.alt &&
1276
+ !normalizedKey.cmd) {
1277
+ return true;
1278
+ }
1271
1279
  // Not handled by vim so allow other handlers to process it.
1272
1280
  return false;
1273
1281
  }
@@ -1 +1 @@
1
- {"version":3,"file":"vim.js","sourceRoot":"","sources":["../../../../src/ui/hooks/vim.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vim.js","sourceRoot":"","sources":["../../../../src/ui/hooks/vim.ts"],"names":[],"mappings":"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"}
@@ -1794,6 +1794,67 @@ describe('useVim hook', async () => {
1794
1794
  expect(mockBuffer.vimFindCharForward).toHaveBeenCalledWith('o', 2, false);
1795
1795
  });
1796
1796
  });
1797
+ describe('should handle unmapped keys in Normal mode', () => {
1798
+ it.each([
1799
+ { char: 'm', insertable: true },
1800
+ { char: 'n', insertable: true },
1801
+ { char: 'p', insertable: true },
1802
+ { char: 'q', insertable: true },
1803
+ { char: 's', insertable: true },
1804
+ { char: 'v', insertable: true },
1805
+ { char: 'y', insertable: true },
1806
+ { char: 'z', insertable: true },
1807
+ { char: 'H', insertable: true },
1808
+ { char: 'J', insertable: true },
1809
+ { char: 'K', insertable: true },
1810
+ { char: 'L', insertable: true },
1811
+ { char: 'M', insertable: true },
1812
+ { char: 'N', insertable: true },
1813
+ { char: 'P', insertable: true },
1814
+ { char: 'Q', insertable: true },
1815
+ { char: 'R', insertable: true },
1816
+ { char: 'S', insertable: true },
1817
+ { char: 'U', insertable: true },
1818
+ { char: 'V', insertable: true },
1819
+ { char: 'Y', insertable: true },
1820
+ { char: 'Z', insertable: true },
1821
+ { char: '/', insertable: true },
1822
+ { char: '#', insertable: true },
1823
+ { char: '%', insertable: true },
1824
+ { char: '&', insertable: true },
1825
+ { char: "'", insertable: true },
1826
+ { char: '(', insertable: true },
1827
+ { char: ')', insertable: true },
1828
+ { char: '*', insertable: true },
1829
+ { char: '+', insertable: true },
1830
+ { char: '-', insertable: true },
1831
+ { char: '/', insertable: true },
1832
+ { char: ':', insertable: true },
1833
+ { char: '<', insertable: true },
1834
+ { char: '=', insertable: true },
1835
+ { char: '>', insertable: true },
1836
+ { char: '@', insertable: true },
1837
+ { char: '[', insertable: true },
1838
+ { char: '\\', insertable: true },
1839
+ { char: ']', insertable: true },
1840
+ { char: '_', insertable: true },
1841
+ { char: '`', insertable: true },
1842
+ { char: '{', insertable: true },
1843
+ { char: '|', insertable: true },
1844
+ { char: '}', insertable: true },
1845
+ ])('$char: should be swallowed and do nothing in Normal mode', async ({ char, insertable }) => {
1846
+ const { result } = await renderVimHook();
1847
+ exitInsertMode(result);
1848
+ let handled = false;
1849
+ act(() => {
1850
+ handled = result.current.handleInput(createKey({ sequence: char, name: char, insertable }));
1851
+ });
1852
+ expect(handled).toBe(true);
1853
+ expect(mockVimContext.setVimMode).not.toHaveBeenCalledWith('INSERT');
1854
+ expect(mockBuffer.vimFindCharForward).not.toHaveBeenCalled();
1855
+ expect(mockBuffer.vimFindCharBackward).not.toHaveBeenCalled();
1856
+ });
1857
+ });
1797
1858
  describe('Operator + find motions (df, dt, dF, dT, cf, ct, cF, cT)', async () => {
1798
1859
  it('df{char}: executes delete-to-char, not a dangling operator', async () => {
1799
1860
  const { result } = await renderVimHook();