@google/gemini-cli 0.30.0-preview.5 → 0.31.0-preview.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (725) hide show
  1. package/README.md +1 -1
  2. package/dist/index.d.ts +1 -1
  3. package/dist/index.js +15 -2
  4. package/dist/index.js.map +1 -1
  5. package/dist/package.json +7 -6
  6. package/dist/src/commands/extensions/install.js +72 -4
  7. package/dist/src/commands/extensions/install.js.map +1 -1
  8. package/dist/src/commands/extensions/install.test.js +153 -20
  9. package/dist/src/commands/extensions/install.test.js.map +1 -1
  10. package/dist/src/commands/extensions/utils.js +1 -0
  11. package/dist/src/commands/extensions/utils.js.map +1 -1
  12. package/dist/src/config/config.js +17 -5
  13. package/dist/src/config/config.js.map +1 -1
  14. package/dist/src/config/config.test.js +79 -4
  15. package/dist/src/config/config.test.js.map +1 -1
  16. package/dist/src/config/extension-manager-hydration.test.js +2 -2
  17. package/dist/src/config/extension-manager-hydration.test.js.map +1 -1
  18. package/dist/src/config/extension-manager.js +10 -6
  19. package/dist/src/config/extension-manager.js.map +1 -1
  20. package/dist/src/config/extension.test.js +20 -20
  21. package/dist/src/config/extension.test.js.map +1 -1
  22. package/dist/src/config/extensionRegistryClient.js +3 -2
  23. package/dist/src/config/extensionRegistryClient.js.map +1 -1
  24. package/dist/src/config/extensionRegistryClient.test.js +52 -0
  25. package/dist/src/config/extensionRegistryClient.test.js.map +1 -1
  26. package/dist/src/config/extensions/consent.d.ts +10 -0
  27. package/dist/src/config/extensions/consent.js +10 -3
  28. package/dist/src/config/extensions/consent.js.map +1 -1
  29. package/dist/src/config/extensions/consent.test.js +1 -1
  30. package/dist/src/config/extensions/consent.test.js.map +1 -1
  31. package/dist/src/config/extensions/extensionEnablement.js +1 -0
  32. package/dist/src/config/extensions/extensionEnablement.js.map +1 -1
  33. package/dist/src/config/extensions/extensionSettings.js +20 -3
  34. package/dist/src/config/extensions/extensionSettings.js.map +1 -1
  35. package/dist/src/config/extensions/extensionSettings.test.js +16 -0
  36. package/dist/src/config/extensions/extensionSettings.test.js.map +1 -1
  37. package/dist/src/config/extensions/github.test.js +1 -1
  38. package/dist/src/config/extensions/github.test.js.map +1 -1
  39. package/dist/src/config/extensions/variables.js +3 -1
  40. package/dist/src/config/extensions/variables.js.map +1 -1
  41. package/dist/src/config/keyBindings.js +6 -2
  42. package/dist/src/config/keyBindings.js.map +1 -1
  43. package/dist/src/config/policy-engine.integration.test.js +51 -13
  44. package/dist/src/config/policy-engine.integration.test.js.map +1 -1
  45. package/dist/src/config/policy.d.ts +15 -3
  46. package/dist/src/config/policy.js +49 -4
  47. package/dist/src/config/policy.js.map +1 -1
  48. package/dist/src/config/policy.test.d.ts +6 -0
  49. package/dist/src/config/policy.test.js +152 -0
  50. package/dist/src/config/policy.test.js.map +1 -0
  51. package/dist/src/config/settings-validation.js +1 -1
  52. package/dist/src/config/settings-validation.js.map +1 -1
  53. package/dist/src/config/settings-validation.test.js +2 -3
  54. package/dist/src/config/settings-validation.test.js.map +1 -1
  55. package/dist/src/config/settings.d.ts +2 -0
  56. package/dist/src/config/settings.js +18 -20
  57. package/dist/src/config/settings.js.map +1 -1
  58. package/dist/src/config/settings.test.js +118 -18
  59. package/dist/src/config/settings.test.js.map +1 -1
  60. package/dist/src/config/settingsSchema.d.ts +171 -9
  61. package/dist/src/config/settingsSchema.js +159 -9
  62. package/dist/src/config/settingsSchema.js.map +1 -1
  63. package/dist/src/config/settingsSchema.test.js +26 -0
  64. package/dist/src/config/settingsSchema.test.js.map +1 -1
  65. package/dist/src/config/settings_repro.test.js +0 -1
  66. package/dist/src/config/settings_repro.test.js.map +1 -1
  67. package/dist/src/config/trustedFolders.test.js +3 -1
  68. package/dist/src/config/trustedFolders.test.js.map +1 -1
  69. package/dist/src/config/workspace-policy-cli.test.d.ts +6 -0
  70. package/dist/src/config/workspace-policy-cli.test.js +180 -0
  71. package/dist/src/config/workspace-policy-cli.test.js.map +1 -0
  72. package/dist/src/gemini.d.ts +2 -2
  73. package/dist/src/gemini.js +15 -5
  74. package/dist/src/gemini.js.map +1 -1
  75. package/dist/src/gemini.test.js +18 -2
  76. package/dist/src/gemini.test.js.map +1 -1
  77. package/dist/src/gemini_cleanup.test.js +27 -24
  78. package/dist/src/gemini_cleanup.test.js.map +1 -1
  79. package/dist/src/generated/git-commit.d.ts +2 -2
  80. package/dist/src/generated/git-commit.js +2 -2
  81. package/dist/src/integration-tests/modelSteering.test.d.ts +6 -0
  82. package/dist/src/integration-tests/modelSteering.test.js +65 -0
  83. package/dist/src/integration-tests/modelSteering.test.js.map +1 -0
  84. package/dist/src/nonInteractiveCli.js +2 -3
  85. package/dist/src/nonInteractiveCli.js.map +1 -1
  86. package/dist/src/test-utils/AppRig.d.ts +1 -1
  87. package/dist/src/test-utils/AppRig.js +16 -7
  88. package/dist/src/test-utils/AppRig.js.map +1 -1
  89. package/dist/src/test-utils/AppRig.test.js +37 -2
  90. package/dist/src/test-utils/AppRig.test.js.map +1 -1
  91. package/dist/src/test-utils/async.d.ts +1 -1
  92. package/dist/src/test-utils/async.js +1 -1
  93. package/dist/src/test-utils/async.js.map +1 -1
  94. package/dist/src/test-utils/customMatchers.js +1 -1
  95. package/dist/src/test-utils/customMatchers.js.map +1 -1
  96. package/dist/src/test-utils/mockCommandContext.js +8 -2
  97. package/dist/src/test-utils/mockCommandContext.js.map +1 -1
  98. package/dist/src/test-utils/mockConfig.js +2 -1
  99. package/dist/src/test-utils/mockConfig.js.map +1 -1
  100. package/dist/src/test-utils/render.d.ts +81 -5
  101. package/dist/src/test-utils/render.js +299 -29
  102. package/dist/src/test-utils/render.js.map +1 -1
  103. package/dist/src/test-utils/render.test.js +49 -23
  104. package/dist/src/test-utils/render.test.js.map +1 -1
  105. package/dist/src/test-utils/settings.js +4 -2
  106. package/dist/src/test-utils/settings.js.map +1 -1
  107. package/dist/src/ui/App.test.js +56 -24
  108. package/dist/src/ui/App.test.js.map +1 -1
  109. package/dist/src/ui/AppContainer.d.ts +2 -2
  110. package/dist/src/ui/AppContainer.js +231 -11
  111. package/dist/src/ui/AppContainer.js.map +1 -1
  112. package/dist/src/ui/AppContainer.test.js +561 -7
  113. package/dist/src/ui/AppContainer.test.js.map +1 -1
  114. package/dist/src/ui/IdeIntegrationNudge.test.js +29 -33
  115. package/dist/src/ui/IdeIntegrationNudge.test.js.map +1 -1
  116. package/dist/src/ui/auth/ApiAuthDialog.test.js +19 -9
  117. package/dist/src/ui/auth/ApiAuthDialog.test.js.map +1 -1
  118. package/dist/src/ui/auth/AuthDialog.js +1 -1
  119. package/dist/src/ui/auth/AuthDialog.js.map +1 -1
  120. package/dist/src/ui/auth/AuthDialog.test.js +61 -27
  121. package/dist/src/ui/auth/AuthDialog.test.js.map +1 -1
  122. package/dist/src/ui/auth/AuthInProgress.test.js +35 -14
  123. package/dist/src/ui/auth/AuthInProgress.test.js.map +1 -1
  124. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.js +11 -5
  125. package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.js.map +1 -1
  126. package/dist/src/ui/colors.js +6 -0
  127. package/dist/src/ui/colors.js.map +1 -1
  128. package/dist/src/ui/commands/clearCommand.js +2 -0
  129. package/dist/src/ui/commands/clearCommand.js.map +1 -1
  130. package/dist/src/ui/commands/clearCommand.test.js +7 -1
  131. package/dist/src/ui/commands/clearCommand.test.js.map +1 -1
  132. package/dist/src/ui/commands/copyCommand.js +2 -1
  133. package/dist/src/ui/commands/copyCommand.js.map +1 -1
  134. package/dist/src/ui/commands/copyCommand.test.js +6 -4
  135. package/dist/src/ui/commands/copyCommand.test.js.map +1 -1
  136. package/dist/src/ui/commands/extensionsCommand.js +18 -0
  137. package/dist/src/ui/commands/extensionsCommand.js.map +1 -1
  138. package/dist/src/ui/commands/extensionsCommand.test.js +4 -4
  139. package/dist/src/ui/commands/extensionsCommand.test.js.map +1 -1
  140. package/dist/src/ui/commands/planCommand.js +1 -1
  141. package/dist/src/ui/commands/planCommand.js.map +1 -1
  142. package/dist/src/ui/commands/planCommand.test.js +1 -1
  143. package/dist/src/ui/commands/planCommand.test.js.map +1 -1
  144. package/dist/src/ui/commands/policiesCommand.js +5 -0
  145. package/dist/src/ui/commands/policiesCommand.js.map +1 -1
  146. package/dist/src/ui/commands/policiesCommand.test.js +38 -1
  147. package/dist/src/ui/commands/policiesCommand.test.js.map +1 -1
  148. package/dist/src/ui/commands/rewindCommand.js +3 -2
  149. package/dist/src/ui/commands/rewindCommand.js.map +1 -1
  150. package/dist/src/ui/components/AboutBox.test.js +16 -8
  151. package/dist/src/ui/components/AboutBox.test.js.map +1 -1
  152. package/dist/src/ui/components/AdminSettingsChangedDialog.test.js +7 -4
  153. package/dist/src/ui/components/AdminSettingsChangedDialog.test.js.map +1 -1
  154. package/dist/src/ui/components/AgentConfigDialog.test.js +41 -19
  155. package/dist/src/ui/components/AgentConfigDialog.test.js.map +1 -1
  156. package/dist/src/ui/components/AlternateBufferQuittingDisplay.js +1 -1
  157. package/dist/src/ui/components/AlternateBufferQuittingDisplay.js.map +1 -1
  158. package/dist/src/ui/components/AlternateBufferQuittingDisplay.test.js +24 -12
  159. package/dist/src/ui/components/AlternateBufferQuittingDisplay.test.js.map +1 -1
  160. package/dist/src/ui/components/AnsiOutput.test.js +35 -19
  161. package/dist/src/ui/components/AnsiOutput.test.js.map +1 -1
  162. package/dist/src/ui/components/AppHeader.test.js +27 -17
  163. package/dist/src/ui/components/AppHeader.test.js.map +1 -1
  164. package/dist/src/ui/components/ApprovalModeIndicator.test.js +18 -12
  165. package/dist/src/ui/components/ApprovalModeIndicator.test.js.map +1 -1
  166. package/dist/src/ui/components/AskUserDialog.test.js +147 -85
  167. package/dist/src/ui/components/AskUserDialog.test.js.map +1 -1
  168. package/dist/src/ui/components/BackgroundShellDisplay.test.js +50 -48
  169. package/dist/src/ui/components/BackgroundShellDisplay.test.js.map +1 -1
  170. package/dist/src/ui/components/Banner.test.js +8 -4
  171. package/dist/src/ui/components/Banner.test.js.map +1 -1
  172. package/dist/src/ui/components/Checklist.test.js +17 -12
  173. package/dist/src/ui/components/Checklist.test.js.map +1 -1
  174. package/dist/src/ui/components/ChecklistItem.test.js +9 -6
  175. package/dist/src/ui/components/ChecklistItem.test.js.map +1 -1
  176. package/dist/src/ui/components/CliSpinner.test.js +8 -5
  177. package/dist/src/ui/components/CliSpinner.test.js.map +1 -1
  178. package/dist/src/ui/components/Composer.js +5 -5
  179. package/dist/src/ui/components/Composer.js.map +1 -1
  180. package/dist/src/ui/components/Composer.test.js +104 -100
  181. package/dist/src/ui/components/Composer.test.js.map +1 -1
  182. package/dist/src/ui/components/ConfigInitDisplay.test.js +3 -2
  183. package/dist/src/ui/components/ConfigInitDisplay.test.js.map +1 -1
  184. package/dist/src/ui/components/ConsentPrompt.test.js +15 -8
  185. package/dist/src/ui/components/ConsentPrompt.test.js.map +1 -1
  186. package/dist/src/ui/components/ConsoleSummaryDisplay.test.js +9 -5
  187. package/dist/src/ui/components/ConsoleSummaryDisplay.test.js.map +1 -1
  188. package/dist/src/ui/components/ContextSummaryDisplay.test.js +16 -14
  189. package/dist/src/ui/components/ContextSummaryDisplay.test.js.map +1 -1
  190. package/dist/src/ui/components/ContextUsageDisplay.test.js +12 -6
  191. package/dist/src/ui/components/ContextUsageDisplay.test.js.map +1 -1
  192. package/dist/src/ui/components/CopyModeWarning.test.js +9 -5
  193. package/dist/src/ui/components/CopyModeWarning.test.js.map +1 -1
  194. package/dist/src/ui/components/DebugProfiler.test.js +17 -14
  195. package/dist/src/ui/components/DebugProfiler.test.js.map +1 -1
  196. package/dist/src/ui/components/DetailedMessagesDisplay.test.js +13 -7
  197. package/dist/src/ui/components/DetailedMessagesDisplay.test.js.map +1 -1
  198. package/dist/src/ui/components/DialogManager.js +5 -1
  199. package/dist/src/ui/components/DialogManager.js.map +1 -1
  200. package/dist/src/ui/components/DialogManager.test.js +9 -5
  201. package/dist/src/ui/components/DialogManager.test.js.map +1 -1
  202. package/dist/src/ui/components/EditorSettingsDialog.test.js +16 -8
  203. package/dist/src/ui/components/EditorSettingsDialog.test.js.map +1 -1
  204. package/dist/src/ui/components/ExitPlanModeDialog.js +2 -2
  205. package/dist/src/ui/components/ExitPlanModeDialog.js.map +1 -1
  206. package/dist/src/ui/components/ExitPlanModeDialog.test.js +2 -2
  207. package/dist/src/ui/components/ExitPlanModeDialog.test.js.map +1 -1
  208. package/dist/src/ui/components/ExitWarning.test.js +18 -10
  209. package/dist/src/ui/components/ExitWarning.test.js.map +1 -1
  210. package/dist/src/ui/components/FolderTrustDialog.d.ts +2 -0
  211. package/dist/src/ui/components/FolderTrustDialog.js +49 -3
  212. package/dist/src/ui/components/FolderTrustDialog.js.map +1 -1
  213. package/dist/src/ui/components/FolderTrustDialog.test.js +249 -18
  214. package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
  215. package/dist/src/ui/components/Footer.test.js +101 -50
  216. package/dist/src/ui/components/Footer.test.js.map +1 -1
  217. package/dist/src/ui/components/GeminiRespondingSpinner.test.js +23 -13
  218. package/dist/src/ui/components/GeminiRespondingSpinner.test.js.map +1 -1
  219. package/dist/src/ui/components/GradientRegression.test.js +20 -10
  220. package/dist/src/ui/components/GradientRegression.test.js.map +1 -1
  221. package/dist/src/ui/components/Header.test.js +2 -0
  222. package/dist/src/ui/components/Header.test.js.map +1 -1
  223. package/dist/src/ui/components/Help.test.js +9 -6
  224. package/dist/src/ui/components/Help.test.js.map +1 -1
  225. package/dist/src/ui/components/HistoryItemDisplay.d.ts +1 -2
  226. package/dist/src/ui/components/HistoryItemDisplay.js +4 -3
  227. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  228. package/dist/src/ui/components/HistoryItemDisplay.test.js +80 -35
  229. package/dist/src/ui/components/HistoryItemDisplay.test.js.map +1 -1
  230. package/dist/src/ui/components/HookStatusDisplay.test.js +13 -9
  231. package/dist/src/ui/components/HookStatusDisplay.test.js.map +1 -1
  232. package/dist/src/ui/components/IdeTrustChangeDialog.test.js +36 -16
  233. package/dist/src/ui/components/IdeTrustChangeDialog.test.js.map +1 -1
  234. package/dist/src/ui/components/InputPrompt.js +10 -12
  235. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  236. package/dist/src/ui/components/InputPrompt.test.js +127 -13
  237. package/dist/src/ui/components/InputPrompt.test.js.map +1 -1
  238. package/dist/src/ui/components/LoadingIndicator.test.js +97 -47
  239. package/dist/src/ui/components/LoadingIndicator.test.js.map +1 -1
  240. package/dist/src/ui/components/LogoutConfirmationDialog.test.js +25 -9
  241. package/dist/src/ui/components/LogoutConfirmationDialog.test.js.map +1 -1
  242. package/dist/src/ui/components/LoopDetectionConfirmation.test.js +9 -5
  243. package/dist/src/ui/components/LoopDetectionConfirmation.test.js.map +1 -1
  244. package/dist/src/ui/components/MainContent.js +35 -14
  245. package/dist/src/ui/components/MainContent.js.map +1 -1
  246. package/dist/src/ui/components/MainContent.test.js +224 -10
  247. package/dist/src/ui/components/MainContent.test.js.map +1 -1
  248. package/dist/src/ui/components/MemoryUsageDisplay.test.js +8 -3
  249. package/dist/src/ui/components/MemoryUsageDisplay.test.js.map +1 -1
  250. package/dist/src/ui/components/ModelDialog.js +6 -6
  251. package/dist/src/ui/components/ModelDialog.js.map +1 -1
  252. package/dist/src/ui/components/ModelDialog.test.js +142 -16
  253. package/dist/src/ui/components/ModelDialog.test.js.map +1 -1
  254. package/dist/src/ui/components/ModelStatsDisplay.test.js +38 -24
  255. package/dist/src/ui/components/ModelStatsDisplay.test.js.map +1 -1
  256. package/dist/src/ui/components/MultiFolderTrustDialog.test.js +32 -9
  257. package/dist/src/ui/components/MultiFolderTrustDialog.test.js.map +1 -1
  258. package/dist/src/ui/components/NewAgentsNotification.test.js +6 -4
  259. package/dist/src/ui/components/NewAgentsNotification.test.js.map +1 -1
  260. package/dist/src/ui/components/Notifications.js +50 -4
  261. package/dist/src/ui/components/Notifications.js.map +1 -1
  262. package/dist/src/ui/components/Notifications.test.js +162 -30
  263. package/dist/src/ui/components/Notifications.test.js.map +1 -1
  264. package/dist/src/ui/components/PermissionsModifyTrustDialog.test.js +36 -10
  265. package/dist/src/ui/components/PermissionsModifyTrustDialog.test.js.map +1 -1
  266. package/dist/src/ui/components/PolicyUpdateDialog.d.ts +18 -0
  267. package/dist/src/ui/components/PolicyUpdateDialog.js +59 -0
  268. package/dist/src/ui/components/PolicyUpdateDialog.js.map +1 -0
  269. package/dist/src/ui/components/PolicyUpdateDialog.test.d.ts +6 -0
  270. package/dist/src/ui/components/PolicyUpdateDialog.test.js +93 -0
  271. package/dist/src/ui/components/PolicyUpdateDialog.test.js.map +1 -0
  272. package/dist/src/ui/components/QueuedMessageDisplay.test.js +16 -11
  273. package/dist/src/ui/components/QueuedMessageDisplay.test.js.map +1 -1
  274. package/dist/src/ui/components/QuittingDisplay.test.js +9 -5
  275. package/dist/src/ui/components/QuittingDisplay.test.js.map +1 -1
  276. package/dist/src/ui/components/QuotaDisplay.test.js +40 -22
  277. package/dist/src/ui/components/QuotaDisplay.test.js.map +1 -1
  278. package/dist/src/ui/components/RawMarkdownIndicator.test.js +8 -4
  279. package/dist/src/ui/components/RawMarkdownIndicator.test.js.map +1 -1
  280. package/dist/src/ui/components/RewindConfirmation.test.js +15 -7
  281. package/dist/src/ui/components/RewindConfirmation.test.js.map +1 -1
  282. package/dist/src/ui/components/RewindViewer.js +9 -7
  283. package/dist/src/ui/components/RewindViewer.js.map +1 -1
  284. package/dist/src/ui/components/RewindViewer.test.js +54 -17
  285. package/dist/src/ui/components/RewindViewer.test.js.map +1 -1
  286. package/dist/src/ui/components/SessionBrowser.test.js +24 -11
  287. package/dist/src/ui/components/SessionBrowser.test.js.map +1 -1
  288. package/dist/src/ui/components/SessionRetentionWarningDialog.test.js +12 -7
  289. package/dist/src/ui/components/SessionRetentionWarningDialog.test.js.map +1 -1
  290. package/dist/src/ui/components/SessionSummaryDisplay.js +1 -1
  291. package/dist/src/ui/components/SessionSummaryDisplay.js.map +1 -1
  292. package/dist/src/ui/components/SessionSummaryDisplay.test.js +7 -4
  293. package/dist/src/ui/components/SessionSummaryDisplay.test.js.map +1 -1
  294. package/dist/src/ui/components/SettingsDialog.js +76 -7
  295. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  296. package/dist/src/ui/components/SettingsDialog.test.js +252 -109
  297. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
  298. package/dist/src/ui/components/ShellInputPrompt.test.js +120 -67
  299. package/dist/src/ui/components/ShellInputPrompt.test.js.map +1 -1
  300. package/dist/src/ui/components/ShellModeIndicator.test.js +4 -2
  301. package/dist/src/ui/components/ShellModeIndicator.test.js.map +1 -1
  302. package/dist/src/ui/components/ShortcutsHelp.js +1 -1
  303. package/dist/src/ui/components/ShortcutsHelp.js.map +1 -1
  304. package/dist/src/ui/components/ShortcutsHelp.test.js +6 -3
  305. package/dist/src/ui/components/ShortcutsHelp.test.js.map +1 -1
  306. package/dist/src/ui/components/ShowMoreLines.d.ts +2 -1
  307. package/dist/src/ui/components/ShowMoreLines.js +10 -5
  308. package/dist/src/ui/components/ShowMoreLines.js.map +1 -1
  309. package/dist/src/ui/components/ShowMoreLines.test.js +47 -7
  310. package/dist/src/ui/components/ShowMoreLines.test.js.map +1 -1
  311. package/dist/src/ui/components/StatsDisplay.d.ts +1 -0
  312. package/dist/src/ui/components/StatsDisplay.js +9 -3
  313. package/dist/src/ui/components/StatsDisplay.js.map +1 -1
  314. package/dist/src/ui/components/StatsDisplay.test.js +51 -34
  315. package/dist/src/ui/components/StatsDisplay.test.js.map +1 -1
  316. package/dist/src/ui/components/StatusDisplay.test.js +30 -17
  317. package/dist/src/ui/components/StatusDisplay.test.js.map +1 -1
  318. package/dist/src/ui/components/StickyHeader.test.js +4 -2
  319. package/dist/src/ui/components/StickyHeader.test.js.map +1 -1
  320. package/dist/src/ui/components/SuggestionsDisplay.test.js +19 -13
  321. package/dist/src/ui/components/SuggestionsDisplay.test.js.map +1 -1
  322. package/dist/src/ui/components/Table.test.js +9 -6
  323. package/dist/src/ui/components/Table.test.js.map +1 -1
  324. package/dist/src/ui/components/ThemeDialog.test.js +42 -19
  325. package/dist/src/ui/components/ThemeDialog.test.js.map +1 -1
  326. package/dist/src/ui/components/ThemedGradient.test.js +4 -2
  327. package/dist/src/ui/components/ThemedGradient.test.js.map +1 -1
  328. package/dist/src/ui/components/Tips.test.js +4 -2
  329. package/dist/src/ui/components/Tips.test.js.map +1 -1
  330. package/dist/src/ui/components/ToastDisplay.js +6 -1
  331. package/dist/src/ui/components/ToastDisplay.js.map +1 -1
  332. package/dist/src/ui/components/ToastDisplay.test.js +48 -17
  333. package/dist/src/ui/components/ToastDisplay.test.js.map +1 -1
  334. package/dist/src/ui/components/ToolConfirmationQueue.js +11 -8
  335. package/dist/src/ui/components/ToolConfirmationQueue.js.map +1 -1
  336. package/dist/src/ui/components/ToolConfirmationQueue.test.js +75 -17
  337. package/dist/src/ui/components/ToolConfirmationQueue.test.js.map +1 -1
  338. package/dist/src/ui/components/ToolStatsDisplay.test.js +19 -12
  339. package/dist/src/ui/components/ToolStatsDisplay.test.js.map +1 -1
  340. package/dist/src/ui/components/UpdateNotification.test.js +4 -2
  341. package/dist/src/ui/components/UpdateNotification.test.js.map +1 -1
  342. package/dist/src/ui/components/UserIdentity.test.js +16 -11
  343. package/dist/src/ui/components/UserIdentity.test.js.map +1 -1
  344. package/dist/src/ui/components/ValidationDialog.test.js +33 -16
  345. package/dist/src/ui/components/ValidationDialog.test.js.map +1 -1
  346. package/dist/src/ui/components/messages/CompressionMessage.test.js +99 -101
  347. package/dist/src/ui/components/messages/CompressionMessage.test.js.map +1 -1
  348. package/dist/src/ui/components/messages/ErrorMessage.test.js +8 -4
  349. package/dist/src/ui/components/messages/ErrorMessage.test.js.map +1 -1
  350. package/dist/src/ui/components/messages/GeminiMessage.js +5 -1
  351. package/dist/src/ui/components/messages/GeminiMessage.js.map +1 -1
  352. package/dist/src/ui/components/messages/GeminiMessage.test.js +12 -6
  353. package/dist/src/ui/components/messages/GeminiMessage.test.js.map +1 -1
  354. package/dist/src/ui/components/messages/HintMessage.d.ts +11 -0
  355. package/dist/src/ui/components/messages/HintMessage.js +14 -0
  356. package/dist/src/ui/components/messages/HintMessage.js.map +1 -0
  357. package/dist/src/ui/components/messages/InfoMessage.d.ts +1 -0
  358. package/dist/src/ui/components/messages/InfoMessage.js +2 -2
  359. package/dist/src/ui/components/messages/InfoMessage.js.map +1 -1
  360. package/dist/src/ui/components/messages/InfoMessage.test.js +12 -6
  361. package/dist/src/ui/components/messages/InfoMessage.test.js.map +1 -1
  362. package/dist/src/ui/components/messages/RedirectionConfirmation.test.js +4 -2
  363. package/dist/src/ui/components/messages/RedirectionConfirmation.test.js.map +1 -1
  364. package/dist/src/ui/components/messages/ShellToolMessage.d.ts +1 -2
  365. package/dist/src/ui/components/messages/ShellToolMessage.js +15 -29
  366. package/dist/src/ui/components/messages/ShellToolMessage.js.map +1 -1
  367. package/dist/src/ui/components/messages/ShellToolMessage.test.js +91 -22
  368. package/dist/src/ui/components/messages/ShellToolMessage.test.js.map +1 -1
  369. package/dist/src/ui/components/messages/ThinkingMessage.test.js +25 -13
  370. package/dist/src/ui/components/messages/ThinkingMessage.test.js.map +1 -1
  371. package/dist/src/ui/components/messages/Todo.test.js +34 -19
  372. package/dist/src/ui/components/messages/Todo.test.js.map +1 -1
  373. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +128 -13
  374. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  375. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +175 -20
  376. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -1
  377. package/dist/src/ui/components/messages/ToolGroupMessage.d.ts +3 -4
  378. package/dist/src/ui/components/messages/ToolGroupMessage.js +91 -35
  379. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
  380. package/dist/src/ui/components/messages/ToolGroupMessage.test.js +286 -63
  381. package/dist/src/ui/components/messages/ToolGroupMessage.test.js.map +1 -1
  382. package/dist/src/ui/components/messages/ToolMessage.js +4 -4
  383. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  384. package/dist/src/ui/components/messages/ToolMessage.test.js +118 -39
  385. package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -1
  386. package/dist/src/ui/components/messages/ToolMessageFocusHint.test.js +15 -6
  387. package/dist/src/ui/components/messages/ToolMessageFocusHint.test.js.map +1 -1
  388. package/dist/src/ui/components/messages/ToolMessageRawMarkdown.test.js +4 -2
  389. package/dist/src/ui/components/messages/ToolMessageRawMarkdown.test.js.map +1 -1
  390. package/dist/src/ui/components/messages/ToolOverflowConsistencyChecks.test.d.ts +6 -0
  391. package/dist/src/ui/components/messages/ToolOverflowConsistencyChecks.test.js +79 -0
  392. package/dist/src/ui/components/messages/ToolOverflowConsistencyChecks.test.js.map +1 -0
  393. package/dist/src/ui/components/messages/ToolResultDisplay.js +25 -14
  394. package/dist/src/ui/components/messages/ToolResultDisplay.js.map +1 -1
  395. package/dist/src/ui/components/messages/ToolResultDisplay.test.js +81 -31
  396. package/dist/src/ui/components/messages/ToolResultDisplay.test.js.map +1 -1
  397. package/dist/src/ui/components/messages/ToolResultDisplayOverflow.test.js +5 -5
  398. package/dist/src/ui/components/messages/ToolResultDisplayOverflow.test.js.map +1 -1
  399. package/dist/src/ui/components/messages/ToolShared.d.ts +8 -0
  400. package/dist/src/ui/components/messages/ToolShared.js +27 -9
  401. package/dist/src/ui/components/messages/ToolShared.js.map +1 -1
  402. package/dist/src/ui/components/messages/ToolShared.test.d.ts +6 -0
  403. package/dist/src/ui/components/messages/ToolShared.test.js +52 -0
  404. package/dist/src/ui/components/messages/ToolShared.test.js.map +1 -0
  405. package/dist/src/ui/components/messages/ToolStickyHeaderRegression.test.js +11 -4
  406. package/dist/src/ui/components/messages/ToolStickyHeaderRegression.test.js.map +1 -1
  407. package/dist/src/ui/components/messages/UserMessage.js +1 -2
  408. package/dist/src/ui/components/messages/UserMessage.js.map +1 -1
  409. package/dist/src/ui/components/messages/UserMessage.test.js +16 -8
  410. package/dist/src/ui/components/messages/UserMessage.test.js.map +1 -1
  411. package/dist/src/ui/components/messages/UserShellMessage.js +1 -2
  412. package/dist/src/ui/components/messages/UserShellMessage.js.map +1 -1
  413. package/dist/src/ui/components/messages/WarningMessage.test.js +8 -4
  414. package/dist/src/ui/components/messages/WarningMessage.test.js.map +1 -1
  415. package/dist/src/ui/components/shared/BaseSelectionList.test.js +118 -106
  416. package/dist/src/ui/components/shared/BaseSelectionList.test.js.map +1 -1
  417. package/dist/src/ui/components/shared/BaseSettingsDialog.js +22 -24
  418. package/dist/src/ui/components/shared/BaseSettingsDialog.js.map +1 -1
  419. package/dist/src/ui/components/shared/BaseSettingsDialog.test.js +139 -40
  420. package/dist/src/ui/components/shared/BaseSettingsDialog.test.js.map +1 -1
  421. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.test.js +10 -6
  422. package/dist/src/ui/components/shared/DescriptiveRadioButtonSelect.test.js.map +1 -1
  423. package/dist/src/ui/components/shared/EnumSelector.test.js +42 -20
  424. package/dist/src/ui/components/shared/EnumSelector.test.js.map +1 -1
  425. package/dist/src/ui/components/shared/ExpandableText.test.js +21 -14
  426. package/dist/src/ui/components/shared/ExpandableText.test.js.map +1 -1
  427. package/dist/src/ui/components/shared/HalfLinePaddedBox.test.js +8 -4
  428. package/dist/src/ui/components/shared/HalfLinePaddedBox.test.js.map +1 -1
  429. package/dist/src/ui/components/shared/MaxSizedBox.test.js +41 -30
  430. package/dist/src/ui/components/shared/MaxSizedBox.test.js.map +1 -1
  431. package/dist/src/ui/components/shared/Scrollable.js +2 -3
  432. package/dist/src/ui/components/shared/Scrollable.js.map +1 -1
  433. package/dist/src/ui/components/shared/Scrollable.test.js +33 -17
  434. package/dist/src/ui/components/shared/Scrollable.test.js.map +1 -1
  435. package/dist/src/ui/components/shared/ScrollableList.js +1 -1
  436. package/dist/src/ui/components/shared/ScrollableList.js.map +1 -1
  437. package/dist/src/ui/components/shared/ScrollableList.test.js +36 -6
  438. package/dist/src/ui/components/shared/ScrollableList.test.js.map +1 -1
  439. package/dist/src/ui/components/shared/SearchableList.d.ts +46 -14
  440. package/dist/src/ui/components/shared/SearchableList.js +69 -57
  441. package/dist/src/ui/components/shared/SearchableList.js.map +1 -1
  442. package/dist/src/ui/components/shared/SearchableList.test.js +67 -14
  443. package/dist/src/ui/components/shared/SearchableList.test.js.map +1 -1
  444. package/dist/src/ui/components/shared/SectionHeader.d.ts +1 -0
  445. package/dist/src/ui/components/shared/SectionHeader.js +1 -1
  446. package/dist/src/ui/components/shared/SectionHeader.js.map +1 -1
  447. package/dist/src/ui/components/shared/SectionHeader.test.js +9 -2
  448. package/dist/src/ui/components/shared/SectionHeader.test.js.map +1 -1
  449. package/dist/src/ui/components/shared/TabHeader.js +1 -1
  450. package/dist/src/ui/components/shared/TabHeader.js.map +1 -1
  451. package/dist/src/ui/components/shared/TabHeader.test.js +65 -25
  452. package/dist/src/ui/components/shared/TabHeader.test.js.map +1 -1
  453. package/dist/src/ui/components/shared/TextInput.test.js +111 -65
  454. package/dist/src/ui/components/shared/TextInput.test.js.map +1 -1
  455. package/dist/src/ui/components/shared/VirtualizedList.test.js +27 -35
  456. package/dist/src/ui/components/shared/VirtualizedList.test.js.map +1 -1
  457. package/dist/src/ui/components/triage/TriageDuplicates.js +1 -0
  458. package/dist/src/ui/components/triage/TriageDuplicates.js.map +1 -1
  459. package/dist/src/ui/components/triage/TriageIssues.js +1 -0
  460. package/dist/src/ui/components/triage/TriageIssues.js.map +1 -1
  461. package/dist/src/ui/components/views/ChatList.test.js +9 -6
  462. package/dist/src/ui/components/views/ChatList.test.js.map +1 -1
  463. package/dist/src/ui/components/views/ExtensionRegistryView.d.ts +15 -0
  464. package/dist/src/ui/components/views/ExtensionRegistryView.js +60 -0
  465. package/dist/src/ui/components/views/ExtensionRegistryView.js.map +1 -0
  466. package/dist/src/ui/components/views/ExtensionRegistryView.test.d.ts +6 -0
  467. package/dist/src/ui/components/views/ExtensionRegistryView.test.js +168 -0
  468. package/dist/src/ui/components/views/ExtensionRegistryView.test.js.map +1 -0
  469. package/dist/src/ui/components/views/ExtensionsList.test.js +21 -19
  470. package/dist/src/ui/components/views/ExtensionsList.test.js.map +1 -1
  471. package/dist/src/ui/components/views/McpStatus.test.js +38 -25
  472. package/dist/src/ui/components/views/McpStatus.test.js.map +1 -1
  473. package/dist/src/ui/components/views/SkillsList.test.js +18 -12
  474. package/dist/src/ui/components/views/SkillsList.test.js.map +1 -1
  475. package/dist/src/ui/components/views/ToolsList.test.js +9 -6
  476. package/dist/src/ui/components/views/ToolsList.test.js.map +1 -1
  477. package/dist/src/ui/constants/tips.js +1 -1
  478. package/dist/src/ui/constants/tips.js.map +1 -1
  479. package/dist/src/ui/constants.d.ts +2 -1
  480. package/dist/src/ui/constants.js +2 -1
  481. package/dist/src/ui/constants.js.map +1 -1
  482. package/dist/src/ui/contexts/AppContext.d.ts +2 -1
  483. package/dist/src/ui/contexts/AppContext.js.map +1 -1
  484. package/dist/src/ui/contexts/KeypressContext.js +37 -8
  485. package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
  486. package/dist/src/ui/contexts/KeypressContext.test.js +68 -0
  487. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
  488. package/dist/src/ui/contexts/OverflowContext.d.ts +3 -3
  489. package/dist/src/ui/contexts/OverflowContext.js +5 -1
  490. package/dist/src/ui/contexts/OverflowContext.js.map +1 -1
  491. package/dist/src/ui/contexts/TerminalContext.test.js +26 -15
  492. package/dist/src/ui/contexts/TerminalContext.test.js.map +1 -1
  493. package/dist/src/ui/contexts/UIActionsContext.d.ts +6 -1
  494. package/dist/src/ui/contexts/UIActionsContext.js +1 -1
  495. package/dist/src/ui/contexts/UIActionsContext.js.map +1 -1
  496. package/dist/src/ui/contexts/UIStateContext.d.ts +7 -1
  497. package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
  498. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  499. package/dist/src/ui/hooks/atCommandProcessor.test.js +6 -2
  500. package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -1
  501. package/dist/src/ui/hooks/slashCommandProcessor.js +23 -11
  502. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  503. package/dist/src/ui/hooks/slashCommandProcessor.test.js +30 -14
  504. package/dist/src/ui/hooks/slashCommandProcessor.test.js.map +1 -1
  505. package/dist/src/ui/hooks/toolMapping.d.ts +2 -0
  506. package/dist/src/ui/hooks/toolMapping.js +13 -1
  507. package/dist/src/ui/hooks/toolMapping.js.map +1 -1
  508. package/dist/src/ui/hooks/toolMapping.test.js +42 -0
  509. package/dist/src/ui/hooks/toolMapping.test.js.map +1 -1
  510. package/dist/src/ui/hooks/useAnimatedScrollbar.js +13 -3
  511. package/dist/src/ui/hooks/useAnimatedScrollbar.js.map +1 -1
  512. package/dist/src/ui/hooks/useAtCompletion.js +74 -22
  513. package/dist/src/ui/hooks/useAtCompletion.js.map +1 -1
  514. package/dist/src/ui/hooks/useAtCompletion.test.js +88 -0
  515. package/dist/src/ui/hooks/useAtCompletion.test.js.map +1 -1
  516. package/dist/src/ui/hooks/useCommandCompletion.js +2 -3
  517. package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -1
  518. package/dist/src/ui/hooks/useCommandCompletion.test.js +0 -4
  519. package/dist/src/ui/hooks/useCommandCompletion.test.js.map +1 -1
  520. package/dist/src/ui/hooks/useConfirmingTool.d.ts +2 -6
  521. package/dist/src/ui/hooks/useConfirmingTool.js +2 -23
  522. package/dist/src/ui/hooks/useConfirmingTool.js.map +1 -1
  523. package/dist/src/ui/hooks/useConsoleMessages.js +18 -6
  524. package/dist/src/ui/hooks/useConsoleMessages.js.map +1 -1
  525. package/dist/src/ui/hooks/useConsoleMessages.test.js +4 -4
  526. package/dist/src/ui/hooks/useExtensionRegistry.d.ts +13 -0
  527. package/dist/src/ui/hooks/useExtensionRegistry.js +70 -0
  528. package/dist/src/ui/hooks/useExtensionRegistry.js.map +1 -0
  529. package/dist/src/ui/hooks/useFocus.d.ts +4 -1
  530. package/dist/src/ui/hooks/useFocus.js +7 -1
  531. package/dist/src/ui/hooks/useFocus.js.map +1 -1
  532. package/dist/src/ui/hooks/useFocus.test.js +20 -11
  533. package/dist/src/ui/hooks/useFocus.test.js.map +1 -1
  534. package/dist/src/ui/hooks/useFolderTrust.d.ts +2 -0
  535. package/dist/src/ui/hooks/useFolderTrust.js +15 -3
  536. package/dist/src/ui/hooks/useFolderTrust.js.map +1 -1
  537. package/dist/src/ui/hooks/useFolderTrust.test.js +3 -0
  538. package/dist/src/ui/hooks/useFolderTrust.test.js.map +1 -1
  539. package/dist/src/ui/hooks/useGeminiStream.d.ts +1 -1
  540. package/dist/src/ui/hooks/useGeminiStream.js +86 -20
  541. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  542. package/dist/src/ui/hooks/useGeminiStream.test.js +150 -1
  543. package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
  544. package/dist/src/ui/hooks/useLoadingIndicator.d.ts +3 -1
  545. package/dist/src/ui/hooks/useLoadingIndicator.js +2 -2
  546. package/dist/src/ui/hooks/useLoadingIndicator.js.map +1 -1
  547. package/dist/src/ui/hooks/useLoadingIndicator.test.js +9 -4
  548. package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -1
  549. package/dist/src/ui/hooks/useMouseClick.test.js +15 -7
  550. package/dist/src/ui/hooks/useMouseClick.test.js.map +1 -1
  551. package/dist/src/ui/hooks/usePhraseCycler.d.ts +4 -2
  552. package/dist/src/ui/hooks/usePhraseCycler.js +38 -26
  553. package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
  554. package/dist/src/ui/hooks/usePhraseCycler.test.js +123 -73
  555. package/dist/src/ui/hooks/usePhraseCycler.test.js.map +1 -1
  556. package/dist/src/ui/hooks/usePromptCompletion.d.ts +1 -2
  557. package/dist/src/ui/hooks/usePromptCompletion.js +2 -2
  558. package/dist/src/ui/hooks/usePromptCompletion.js.map +1 -1
  559. package/dist/src/ui/hooks/useRegistrySearch.d.ts +19 -0
  560. package/dist/src/ui/hooks/useRegistrySearch.js +35 -0
  561. package/dist/src/ui/hooks/useRegistrySearch.js.map +1 -0
  562. package/dist/src/ui/hooks/useRunEventNotifications.d.ts +22 -0
  563. package/dist/src/ui/hooks/useRunEventNotifications.js +93 -0
  564. package/dist/src/ui/hooks/useRunEventNotifications.js.map +1 -0
  565. package/dist/src/ui/hooks/useSearchBuffer.d.ts +11 -0
  566. package/dist/src/ui/hooks/useSearchBuffer.js +24 -0
  567. package/dist/src/ui/hooks/useSearchBuffer.js.map +1 -0
  568. package/dist/src/ui/hooks/useSelectionList.test.js +111 -45
  569. package/dist/src/ui/hooks/useSelectionList.test.js.map +1 -1
  570. package/dist/src/ui/hooks/useSessionBrowser.js +3 -2
  571. package/dist/src/ui/hooks/useSessionBrowser.js.map +1 -1
  572. package/dist/src/ui/hooks/useSessionBrowser.test.js +15 -12
  573. package/dist/src/ui/hooks/useSessionBrowser.test.js.map +1 -1
  574. package/dist/src/ui/hooks/useSessionResume.js +2 -2
  575. package/dist/src/ui/hooks/useSessionResume.js.map +1 -1
  576. package/dist/src/ui/hooks/useSlashCompletion.js +1 -0
  577. package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -1
  578. package/dist/src/ui/hooks/useStateAndRef.js +1 -0
  579. package/dist/src/ui/hooks/useStateAndRef.js.map +1 -1
  580. package/dist/src/ui/hooks/useTerminalTheme.test.js +29 -18
  581. package/dist/src/ui/hooks/useTerminalTheme.test.js.map +1 -1
  582. package/dist/src/ui/hooks/useToolScheduler.js +19 -2
  583. package/dist/src/ui/hooks/useToolScheduler.js.map +1 -1
  584. package/dist/src/ui/hooks/useToolScheduler.test.js +44 -0
  585. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  586. package/dist/src/ui/keyMatchers.test.js +1 -0
  587. package/dist/src/ui/keyMatchers.test.js.map +1 -1
  588. package/dist/src/ui/layouts/DefaultAppLayout.test.js +12 -6
  589. package/dist/src/ui/layouts/DefaultAppLayout.test.js.map +1 -1
  590. package/dist/src/ui/privacy/CloudFreePrivacyNotice.test.js +24 -8
  591. package/dist/src/ui/privacy/CloudFreePrivacyNotice.test.js.map +1 -1
  592. package/dist/src/ui/privacy/CloudPaidPrivacyNotice.test.js +16 -5
  593. package/dist/src/ui/privacy/CloudPaidPrivacyNotice.test.js.map +1 -1
  594. package/dist/src/ui/privacy/GeminiPrivacyNotice.test.js +16 -5
  595. package/dist/src/ui/privacy/GeminiPrivacyNotice.test.js.map +1 -1
  596. package/dist/src/ui/privacy/PrivacyNotice.test.js +4 -2
  597. package/dist/src/ui/privacy/PrivacyNotice.test.js.map +1 -1
  598. package/dist/src/ui/themes/no-color.js +4 -0
  599. package/dist/src/ui/themes/no-color.js.map +1 -1
  600. package/dist/src/ui/themes/semantic-tokens.d.ts +2 -0
  601. package/dist/src/ui/themes/semantic-tokens.js +6 -2
  602. package/dist/src/ui/themes/semantic-tokens.js.map +1 -1
  603. package/dist/src/ui/themes/solarized-dark.js +2 -0
  604. package/dist/src/ui/themes/solarized-dark.js.map +1 -1
  605. package/dist/src/ui/themes/solarized-light.js +2 -0
  606. package/dist/src/ui/themes/solarized-light.js.map +1 -1
  607. package/dist/src/ui/themes/theme-manager.js +9 -4
  608. package/dist/src/ui/themes/theme-manager.js.map +1 -1
  609. package/dist/src/ui/themes/theme.d.ts +2 -0
  610. package/dist/src/ui/themes/theme.js +20 -7
  611. package/dist/src/ui/themes/theme.js.map +1 -1
  612. package/dist/src/ui/themes/theme.test.js +7 -7
  613. package/dist/src/ui/themes/theme.test.js.map +1 -1
  614. package/dist/src/ui/types.d.ts +14 -2
  615. package/dist/src/ui/types.js +1 -0
  616. package/dist/src/ui/types.js.map +1 -1
  617. package/dist/src/ui/utils/CodeColorizer.js +3 -5
  618. package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
  619. package/dist/src/ui/utils/CodeColorizer.test.js +4 -2
  620. package/dist/src/ui/utils/CodeColorizer.test.js.map +1 -1
  621. package/dist/src/ui/utils/InlineMarkdownRenderer.js +3 -1
  622. package/dist/src/ui/utils/InlineMarkdownRenderer.js.map +1 -1
  623. package/dist/src/ui/utils/MarkdownDisplay.js +1 -1
  624. package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
  625. package/dist/src/ui/utils/MarkdownDisplay.test.js +65 -33
  626. package/dist/src/ui/utils/MarkdownDisplay.test.js.map +1 -1
  627. package/dist/src/ui/utils/TableRenderer.js +7 -3
  628. package/dist/src/ui/utils/TableRenderer.js.map +1 -1
  629. package/dist/src/ui/utils/TableRenderer.test.js +43 -22
  630. package/dist/src/ui/utils/TableRenderer.test.js.map +1 -1
  631. package/dist/src/ui/utils/borderStyles.d.ts +18 -0
  632. package/dist/src/ui/utils/borderStyles.js +78 -0
  633. package/dist/src/ui/utils/borderStyles.js.map +1 -0
  634. package/dist/src/ui/utils/commandUtils.d.ts +2 -1
  635. package/dist/src/ui/utils/commandUtils.js +8 -3
  636. package/dist/src/ui/utils/commandUtils.js.map +1 -1
  637. package/dist/src/ui/utils/commandUtils.test.js +18 -0
  638. package/dist/src/ui/utils/commandUtils.test.js.map +1 -1
  639. package/dist/src/ui/utils/confirmingTool.d.ts +15 -0
  640. package/dist/src/ui/utils/confirmingTool.js +27 -0
  641. package/dist/src/ui/utils/confirmingTool.js.map +1 -0
  642. package/dist/src/ui/utils/pendingAttentionNotification.d.ts +12 -0
  643. package/dist/src/ui/utils/pendingAttentionNotification.js +101 -0
  644. package/dist/src/ui/utils/pendingAttentionNotification.js.map +1 -0
  645. package/dist/src/ui/utils/pendingAttentionNotification.test.d.ts +6 -0
  646. package/dist/src/ui/utils/pendingAttentionNotification.test.js +79 -0
  647. package/dist/src/ui/utils/pendingAttentionNotification.test.js.map +1 -0
  648. package/dist/src/ui/utils/terminalCapabilityManager.d.ts +2 -0
  649. package/dist/src/ui/utils/terminalCapabilityManager.js +18 -0
  650. package/dist/src/ui/utils/terminalCapabilityManager.js.map +1 -1
  651. package/dist/src/ui/utils/terminalCapabilityManager.test.js +68 -0
  652. package/dist/src/ui/utils/terminalCapabilityManager.test.js.map +1 -1
  653. package/dist/src/ui/utils/terminalSetup.d.ts +24 -0
  654. package/dist/src/ui/utils/terminalSetup.js +130 -34
  655. package/dist/src/ui/utils/terminalSetup.js.map +1 -1
  656. package/dist/src/ui/utils/terminalSetup.test.js +35 -1
  657. package/dist/src/ui/utils/terminalSetup.test.js.map +1 -1
  658. package/dist/src/ui/utils/textUtils.d.ts +4 -0
  659. package/dist/src/ui/utils/textUtils.js +10 -1
  660. package/dist/src/ui/utils/textUtils.js.map +1 -1
  661. package/dist/src/ui/utils/textUtils.test.js +25 -2
  662. package/dist/src/ui/utils/textUtils.test.js.map +1 -1
  663. package/dist/src/ui/utils/toolLayoutUtils.d.ts +44 -0
  664. package/dist/src/ui/utils/toolLayoutUtils.js +73 -0
  665. package/dist/src/ui/utils/toolLayoutUtils.js.map +1 -0
  666. package/dist/src/ui/utils/urlSecurityUtils.d.ts +32 -0
  667. package/dist/src/ui/utils/urlSecurityUtils.js +71 -0
  668. package/dist/src/ui/utils/urlSecurityUtils.js.map +1 -0
  669. package/dist/src/ui/utils/urlSecurityUtils.test.d.ts +6 -0
  670. package/dist/src/ui/utils/urlSecurityUtils.test.js +49 -0
  671. package/dist/src/ui/utils/urlSecurityUtils.test.js.map +1 -0
  672. package/dist/src/utils/activityLogger.js +95 -24
  673. package/dist/src/utils/activityLogger.js.map +1 -1
  674. package/dist/src/utils/devtoolsService.js +1 -2
  675. package/dist/src/utils/devtoolsService.js.map +1 -1
  676. package/dist/src/utils/devtoolsService.test.js +1 -1
  677. package/dist/src/utils/devtoolsService.test.js.map +1 -1
  678. package/dist/src/utils/envVarResolver.js +4 -1
  679. package/dist/src/utils/envVarResolver.js.map +1 -1
  680. package/dist/src/utils/gitUtils.js +2 -0
  681. package/dist/src/utils/gitUtils.js.map +1 -1
  682. package/dist/src/utils/jsonoutput.js +2 -0
  683. package/dist/src/utils/jsonoutput.js.map +1 -1
  684. package/dist/src/utils/persistentState.d.ts +2 -0
  685. package/dist/src/utils/persistentState.js +1 -0
  686. package/dist/src/utils/persistentState.js.map +1 -1
  687. package/dist/src/utils/readStdin.js +1 -0
  688. package/dist/src/utils/readStdin.js.map +1 -1
  689. package/dist/src/utils/sessionUtils.d.ts +1 -6
  690. package/dist/src/utils/sessionUtils.js +8 -101
  691. package/dist/src/utils/sessionUtils.js.map +1 -1
  692. package/dist/src/utils/sessionUtils.test.js +47 -0
  693. package/dist/src/utils/sessionUtils.test.js.map +1 -1
  694. package/dist/src/utils/settingsUtils.js +2 -0
  695. package/dist/src/utils/settingsUtils.js.map +1 -1
  696. package/dist/src/utils/skillUtils.test.js +7 -5
  697. package/dist/src/utils/skillUtils.test.js.map +1 -1
  698. package/dist/src/utils/terminalNotifications.d.ts +25 -0
  699. package/dist/src/utils/terminalNotifications.js +77 -0
  700. package/dist/src/utils/terminalNotifications.js.map +1 -0
  701. package/dist/src/utils/terminalNotifications.test.d.ts +6 -0
  702. package/dist/src/utils/terminalNotifications.test.js +123 -0
  703. package/dist/src/utils/terminalNotifications.test.js.map +1 -0
  704. package/dist/src/utils/userStartupWarnings.d.ts +4 -1
  705. package/dist/src/utils/userStartupWarnings.js +22 -4
  706. package/dist/src/utils/userStartupWarnings.js.map +1 -1
  707. package/dist/src/utils/userStartupWarnings.test.js +53 -11
  708. package/dist/src/utils/userStartupWarnings.test.js.map +1 -1
  709. package/dist/src/zed-integration/acpErrors.js +2 -0
  710. package/dist/src/zed-integration/acpErrors.js.map +1 -1
  711. package/dist/src/zed-integration/acpResume.test.js +53 -3
  712. package/dist/src/zed-integration/acpResume.test.js.map +1 -1
  713. package/dist/src/zed-integration/fileSystemService.js +2 -0
  714. package/dist/src/zed-integration/fileSystemService.js.map +1 -1
  715. package/dist/src/zed-integration/zedIntegration.d.ts +2 -0
  716. package/dist/src/zed-integration/zedIntegration.js +77 -6
  717. package/dist/src/zed-integration/zedIntegration.js.map +1 -1
  718. package/dist/src/zed-integration/zedIntegration.test.js +176 -2
  719. package/dist/src/zed-integration/zedIntegration.test.js.map +1 -1
  720. package/dist/tsconfig.tsbuildinfo +1 -1
  721. package/package.json +8 -7
  722. package/dist/google-gemini-cli-0.30.0-preview.4.tgz +0 -0
  723. package/dist/src/ui/hooks/useFuzzyList.d.ts +0 -25
  724. package/dist/src/ui/hooks/useFuzzyList.js +0 -100
  725. package/dist/src/ui/hooks/useFuzzyList.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"terminalSetup.js","sourceRoot":"","sources":["../../../../src/ui/utils/terminalSetup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminalSetup.js","sourceRoot":"","sources":["../../../../src/ui/utils/terminalSetup.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,8 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
7
- import { terminalSetup, VSCODE_SHIFT_ENTER_SEQUENCE } from './terminalSetup.js';
7
+ import { terminalSetup, VSCODE_SHIFT_ENTER_SEQUENCE, shouldPromptForTerminalSetup, } from './terminalSetup.js';
8
+ import { terminalCapabilityManager } from './terminalCapabilityManager.js';
8
9
  // Mock dependencies
9
10
  const mocks = vi.hoisted(() => ({
10
11
  exec: vi.fn(),
@@ -163,5 +164,38 @@ describe('terminalSetup', () => {
163
164
  expect(mocks.writeFile).toHaveBeenCalled();
164
165
  });
165
166
  });
167
+ describe('shouldPromptForTerminalSetup', () => {
168
+ it('should return false when kitty protocol is already enabled', async () => {
169
+ vi.mocked(terminalCapabilityManager.isKittyProtocolEnabled).mockReturnValue(true);
170
+ const result = await shouldPromptForTerminalSetup();
171
+ expect(result).toBe(false);
172
+ });
173
+ it('should return false when both Shift+Enter and Ctrl+Enter bindings already exist', async () => {
174
+ vi.mocked(terminalCapabilityManager.isKittyProtocolEnabled).mockReturnValue(false);
175
+ process.env['TERM_PROGRAM'] = 'vscode';
176
+ const existingBindings = [
177
+ {
178
+ key: 'shift+enter',
179
+ command: 'workbench.action.terminal.sendSequence',
180
+ args: { text: VSCODE_SHIFT_ENTER_SEQUENCE },
181
+ },
182
+ {
183
+ key: 'ctrl+enter',
184
+ command: 'workbench.action.terminal.sendSequence',
185
+ args: { text: VSCODE_SHIFT_ENTER_SEQUENCE },
186
+ },
187
+ ];
188
+ mocks.readFile.mockResolvedValue(JSON.stringify(existingBindings));
189
+ const result = await shouldPromptForTerminalSetup();
190
+ expect(result).toBe(false);
191
+ });
192
+ it('should return true when keybindings file does not exist', async () => {
193
+ vi.mocked(terminalCapabilityManager.isKittyProtocolEnabled).mockReturnValue(false);
194
+ process.env['TERM_PROGRAM'] = 'vscode';
195
+ mocks.readFile.mockRejectedValue(new Error('ENOENT'));
196
+ const result = await shouldPromptForTerminalSetup();
197
+ expect(result).toBe(true);
198
+ });
199
+ });
166
200
  });
167
201
  //# sourceMappingURL=terminalSetup.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"terminalSetup.test.js","sourceRoot":"","sources":["../../../../src/ui/utils/terminalSetup.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminalSetup.test.js","sourceRoot":"","sources":["../../../../src/ui/utils/terminalSetup.test.ts"],"names":[],"mappings":"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"}
@@ -31,9 +31,13 @@ export declare function cpSlice(str: string, start: number, end?: number): strin
31
31
  * - VT control sequences (via Node.js util.stripVTControlCharacters)
32
32
  * - C0 control chars (0x00-0x1F) except TAB(0x09), LF(0x0A), CR(0x0D)
33
33
  * - C1 control chars (0x80-0x9F) that can cause display issues
34
+ * - BiDi control chars (U+200E, U+200F, U+202A-U+202E, U+2066-U+2069)
35
+ * - Zero-width chars (U+200B, U+FEFF)
34
36
  *
35
37
  * Characters preserved:
36
38
  * - All printable Unicode including emojis
39
+ * - ZWJ (U+200D) - needed for complex emoji sequences
40
+ * - ZWNJ (U+200C) - preserve zero-width non-joiner
37
41
  * - DEL (0x7F) - handled functionally by applyOperations, not a display issue
38
42
  * - CR/LF (0x0D/0x0A) - needed for line breaks
39
43
  * - TAB (0x09) - preserve tabs
@@ -90,9 +90,13 @@ export function cpSlice(str, start, end) {
90
90
  * - VT control sequences (via Node.js util.stripVTControlCharacters)
91
91
  * - C0 control chars (0x00-0x1F) except TAB(0x09), LF(0x0A), CR(0x0D)
92
92
  * - C1 control chars (0x80-0x9F) that can cause display issues
93
+ * - BiDi control chars (U+200E, U+200F, U+202A-U+202E, U+2066-U+2069)
94
+ * - Zero-width chars (U+200B, U+FEFF)
93
95
  *
94
96
  * Characters preserved:
95
97
  * - All printable Unicode including emojis
98
+ * - ZWJ (U+200D) - needed for complex emoji sequences
99
+ * - ZWNJ (U+200C) - preserve zero-width non-joiner
96
100
  * - DEL (0x7F) - handled functionally by applyOperations, not a display issue
97
101
  * - CR/LF (0x0D/0x0A) - needed for line breaks
98
102
  * - TAB (0x09) - preserve tabs
@@ -103,8 +107,11 @@ export function stripUnsafeCharacters(str) {
103
107
  // Use a regex to strip remaining unsafe control characters
104
108
  // C0: 0x00-0x1F except 0x09 (TAB), 0x0A (LF), 0x0D (CR)
105
109
  // C1: 0x80-0x9F
110
+ // BiDi: U+200E (LRM), U+200F (RLM), U+202A-U+202E, U+2066-U+2069
111
+ // Zero-width: U+200B (ZWSP), U+FEFF (BOM)
112
+ return strippedVT.replace(
106
113
  // eslint-disable-next-line no-control-regex
107
- return strippedVT.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x80-\x9F]/g, '');
114
+ /[\x00-\x08\x0B\x0C\x0E-\x1F\x80-\x9F\u200E\u200F\u202A-\u202E\u2066-\u2069\u200B\uFEFF]/g, '');
108
115
  }
109
116
  /**
110
117
  * Sanitize a string for display in inline UI components (e.g. Help, Suggestions).
@@ -187,7 +194,9 @@ export function escapeAnsiCtrlCodes(obj) {
187
194
  if (Array.isArray(obj)) {
188
195
  let newArr = null;
189
196
  for (let i = 0; i < obj.length; i++) {
197
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
190
198
  const value = obj[i];
199
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
191
200
  const escapedValue = escapeAnsiCtrlCodes(value);
192
201
  if (escapedValue !== value) {
193
202
  if (newArr === null) {
@@ -1 +1 @@
1
- {"version":3,"file":"textUtils.js","sourceRoot":"","sources":["../../../../src/ui/utils/textUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"textUtils.js","sourceRoot":"","sources":["../../../../src/ui/utils/textUtils.ts"],"names":[],"mappings":"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"}
@@ -32,11 +32,11 @@ describe('textUtils', () => {
32
32
  it('should handle unicode characters that crash string-width', () => {
33
33
  // U+0602 caused string-width to crash (see #16418)
34
34
  const char = '؂';
35
- expect(getCachedStringWidth(char)).toBe(1);
35
+ expect(getCachedStringWidth(char)).toBe(0);
36
36
  });
37
37
  it('should handle unicode characters that crash string-width with ANSI codes', () => {
38
38
  const charWithAnsi = '\u001b[31m' + '؂' + '\u001b[0m';
39
- expect(getCachedStringWidth(charWithAnsi)).toBe(1);
39
+ expect(getCachedStringWidth(charWithAnsi)).toBe(0);
40
40
  });
41
41
  });
42
42
  describe('stripUnsafeCharacters', () => {
@@ -260,6 +260,29 @@ describe('textUtils', () => {
260
260
  expect(stripUnsafeCharacters(input)).toBe('Hello 世界 🌍 привет');
261
261
  });
262
262
  });
263
+ describe('BiDi and deceptive Unicode characters', () => {
264
+ it('should strip BiDi override characters', () => {
265
+ const input = 'safe\u202Etxt.sh';
266
+ // When stripped, it should be 'safetxt.sh'
267
+ expect(stripUnsafeCharacters(input)).toBe('safetxt.sh');
268
+ });
269
+ it('should strip all BiDi control characters (LRM, RLM, U+202A-U+202E, U+2066-U+2069)', () => {
270
+ const bidiChars = '\u200E\u200F\u202A\u202B\u202C\u202D\u202E\u2066\u2067\u2068\u2069';
271
+ expect(stripUnsafeCharacters('a' + bidiChars + 'b')).toBe('ab');
272
+ });
273
+ it('should strip zero-width characters (U+200B, U+FEFF)', () => {
274
+ const zeroWidthChars = '\u200B\uFEFF';
275
+ expect(stripUnsafeCharacters('a' + zeroWidthChars + 'b')).toBe('ab');
276
+ });
277
+ it('should preserve ZWJ (U+200D) for complex emojis', () => {
278
+ const input = 'Family: 👨‍👩‍👧‍👦';
279
+ expect(stripUnsafeCharacters(input)).toBe('Family: 👨‍👩‍👧‍👦');
280
+ });
281
+ it('should preserve ZWNJ (U+200C)', () => {
282
+ const input = 'hello\u200Cworld';
283
+ expect(stripUnsafeCharacters(input)).toBe('hello\u200Cworld');
284
+ });
285
+ });
263
286
  describe('performance: regex vs array-based', () => {
264
287
  it('should handle real-world terminal output with control chars', () => {
265
288
  // Simulate terminal output with various control sequences
@@ -1 +1 @@
1
- {"version":3,"file":"textUtils.test.js","sourceRoot":"","sources":["../../../../src/ui/utils/textUtils.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"textUtils.test.js","sourceRoot":"","sources":["../../../../src/ui/utils/textUtils.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { CoreToolCallStatus } from '@google/gemini-cli-core';
7
+ /**
8
+ * Constants used for calculating available height for tool results.
9
+ * These MUST be kept in sync between ToolGroupMessage (for overflow detection)
10
+ * and ToolResultDisplay (for actual truncation).
11
+ */
12
+ export declare const TOOL_RESULT_STATIC_HEIGHT = 1;
13
+ export declare const TOOL_RESULT_ASB_RESERVED_LINE_COUNT = 6;
14
+ export declare const TOOL_RESULT_STANDARD_RESERVED_LINE_COUNT = 2;
15
+ export declare const TOOL_RESULT_MIN_LINES_SHOWN = 2;
16
+ /**
17
+ * Calculates the final height available for the content of a tool result display.
18
+ *
19
+ * This accounts for:
20
+ * 1. The static height of the tool message (name, status line).
21
+ * 2. Reserved space for hints and padding (different in ASB vs Standard mode).
22
+ * 3. Enforcing a minimum number of lines shown.
23
+ */
24
+ export declare function calculateToolContentMaxLines(options: {
25
+ availableTerminalHeight: number | undefined;
26
+ isAlternateBuffer: boolean;
27
+ maxLinesLimit?: number;
28
+ }): number | undefined;
29
+ /**
30
+ * Calculates the maximum number of lines to display for shell output.
31
+ *
32
+ * This logic distinguishes between:
33
+ * 1. Process Status: Active (Executing) vs Completed.
34
+ * 2. UI Focus: Whether the user is currently interacting with the shell.
35
+ * 3. Expansion State: Whether the user has explicitly requested to "Show More Lines" (CTRL+O).
36
+ */
37
+ export declare function calculateShellMaxLines(options: {
38
+ status: CoreToolCallStatus;
39
+ isAlternateBuffer: boolean;
40
+ isThisShellFocused: boolean;
41
+ availableTerminalHeight: number | undefined;
42
+ constrainHeight: boolean;
43
+ isExpandable: boolean | undefined;
44
+ }): number | undefined;
@@ -0,0 +1,73 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { ACTIVE_SHELL_MAX_LINES, COMPLETED_SHELL_MAX_LINES, } from '../constants.js';
7
+ import { CoreToolCallStatus } from '@google/gemini-cli-core';
8
+ /**
9
+ * Constants used for calculating available height for tool results.
10
+ * These MUST be kept in sync between ToolGroupMessage (for overflow detection)
11
+ * and ToolResultDisplay (for actual truncation).
12
+ */
13
+ export const TOOL_RESULT_STATIC_HEIGHT = 1;
14
+ export const TOOL_RESULT_ASB_RESERVED_LINE_COUNT = 6;
15
+ export const TOOL_RESULT_STANDARD_RESERVED_LINE_COUNT = 2;
16
+ export const TOOL_RESULT_MIN_LINES_SHOWN = 2;
17
+ /**
18
+ * Calculates the final height available for the content of a tool result display.
19
+ *
20
+ * This accounts for:
21
+ * 1. The static height of the tool message (name, status line).
22
+ * 2. Reserved space for hints and padding (different in ASB vs Standard mode).
23
+ * 3. Enforcing a minimum number of lines shown.
24
+ */
25
+ export function calculateToolContentMaxLines(options) {
26
+ const { availableTerminalHeight, isAlternateBuffer, maxLinesLimit } = options;
27
+ const reservedLines = isAlternateBuffer
28
+ ? TOOL_RESULT_ASB_RESERVED_LINE_COUNT
29
+ : TOOL_RESULT_STANDARD_RESERVED_LINE_COUNT;
30
+ let contentHeight = availableTerminalHeight
31
+ ? Math.max(availableTerminalHeight - TOOL_RESULT_STATIC_HEIGHT - reservedLines, TOOL_RESULT_MIN_LINES_SHOWN + 1)
32
+ : undefined;
33
+ if (maxLinesLimit) {
34
+ contentHeight =
35
+ contentHeight !== undefined
36
+ ? Math.min(contentHeight, maxLinesLimit)
37
+ : maxLinesLimit;
38
+ }
39
+ return contentHeight;
40
+ }
41
+ /**
42
+ * Calculates the maximum number of lines to display for shell output.
43
+ *
44
+ * This logic distinguishes between:
45
+ * 1. Process Status: Active (Executing) vs Completed.
46
+ * 2. UI Focus: Whether the user is currently interacting with the shell.
47
+ * 3. Expansion State: Whether the user has explicitly requested to "Show More Lines" (CTRL+O).
48
+ */
49
+ export function calculateShellMaxLines(options) {
50
+ const { status, isAlternateBuffer, isThisShellFocused, availableTerminalHeight, constrainHeight, isExpandable, } = options;
51
+ // 1. If the user explicitly requested expansion (unconstrained), remove all caps.
52
+ if (!constrainHeight && isExpandable) {
53
+ return undefined;
54
+ }
55
+ // 2. Handle cases where height is unknown (Standard mode history).
56
+ if (availableTerminalHeight === undefined) {
57
+ return isAlternateBuffer ? ACTIVE_SHELL_MAX_LINES : undefined;
58
+ }
59
+ const maxLinesBasedOnHeight = Math.max(1, availableTerminalHeight - 2);
60
+ // 3. Handle ASB mode focus expansion.
61
+ // We allow a focused shell in ASB mode to take up the full available height,
62
+ // BUT only if we aren't trying to maintain a constrained view (e.g., history items).
63
+ if (isAlternateBuffer && isThisShellFocused && !constrainHeight) {
64
+ return maxLinesBasedOnHeight;
65
+ }
66
+ // 4. Fall back to process-based constants.
67
+ const isExecuting = status === CoreToolCallStatus.Executing;
68
+ const shellMaxLinesLimit = isExecuting
69
+ ? ACTIVE_SHELL_MAX_LINES
70
+ : COMPLETED_SHELL_MAX_LINES;
71
+ return Math.min(maxLinesBasedOnHeight, shellMaxLinesLimit);
72
+ }
73
+ //# sourceMappingURL=toolLayoutUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolLayoutUtils.js","sourceRoot":"","sources":["../../../../src/ui/utils/toolLayoutUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AAC3C,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,CAAC;AACrD,MAAM,CAAC,MAAM,wCAAwC,GAAG,CAAC,CAAC;AAC1D,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC;AAE7C;;;;;;;GAOG;AACH,MAAM,UAAU,4BAA4B,CAAC,OAI5C;IACC,MAAM,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAE9E,MAAM,aAAa,GAAG,iBAAiB;QACrC,CAAC,CAAC,mCAAmC;QACrC,CAAC,CAAC,wCAAwC,CAAC;IAE7C,IAAI,aAAa,GAAG,uBAAuB;QACzC,CAAC,CAAC,IAAI,CAAC,GAAG,CACN,uBAAuB,GAAG,yBAAyB,GAAG,aAAa,EACnE,2BAA2B,GAAG,CAAC,CAChC;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,IAAI,aAAa,EAAE,CAAC;QAClB,aAAa;YACX,aAAa,KAAK,SAAS;gBACzB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC;gBACxC,CAAC,CAAC,aAAa,CAAC;IACtB,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAOtC;IACC,MAAM,EACJ,MAAM,EACN,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,YAAY,GACb,GAAG,OAAO,CAAC;IAEZ,kFAAkF;IAClF,IAAI,CAAC,eAAe,IAAI,YAAY,EAAE,CAAC;QACrC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,mEAAmE;IACnE,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;QAC1C,OAAO,iBAAiB,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,SAAS,CAAC;IAChE,CAAC;IAED,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,uBAAuB,GAAG,CAAC,CAAC,CAAC;IAEvE,sCAAsC;IACtC,6EAA6E;IAC7E,qFAAqF;IACrF,IAAI,iBAAiB,IAAI,kBAAkB,IAAI,CAAC,eAAe,EAAE,CAAC;QAChE,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAED,2CAA2C;IAC3C,MAAM,WAAW,GAAG,MAAM,KAAK,kBAAkB,CAAC,SAAS,CAAC;IAC5D,MAAM,kBAAkB,GAAG,WAAW;QACpC,CAAC,CAAC,sBAAsB;QACxB,CAAC,CAAC,yBAAyB,CAAC;IAE9B,OAAO,IAAI,CAAC,GAAG,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,CAAC;AAC7D,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Details about a deceptive URL.
8
+ */
9
+ export interface DeceptiveUrlDetails {
10
+ /** The Unicode version of the visually deceptive URL. */
11
+ originalUrl: string;
12
+ /** The ASCII-safe Punycode version of the URL. */
13
+ punycodeUrl: string;
14
+ }
15
+ /**
16
+ * Converts a URL (string or object) to its visually deceptive Unicode version.
17
+ *
18
+ * This function manually reconstructs the URL to bypass the automatic Punycode
19
+ * conversion performed by the WHATWG URL class when setting the hostname.
20
+ *
21
+ * @param urlInput The URL string or URL object to convert.
22
+ * @returns The reconstructed URL string with the hostname in Unicode.
23
+ */
24
+ export declare function toUnicodeUrl(urlInput: string | URL): string;
25
+ /**
26
+ * Extracts deceptive URL details if a URL hostname contains non-ASCII characters
27
+ * or is already in Punycode.
28
+ *
29
+ * @param urlString The URL string to check.
30
+ * @returns DeceptiveUrlDetails if a potential deceptive URL is detected, otherwise null.
31
+ */
32
+ export declare function getDeceptiveUrlDetails(urlString: string): DeceptiveUrlDetails | null;
@@ -0,0 +1,71 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import url from 'node:url';
7
+ /**
8
+ * Whether a hostname contains non-ASCII or Punycode markers.
9
+ *
10
+ * @param hostname The hostname to check.
11
+ * @returns true if deceptive markers are found, false otherwise.
12
+ */
13
+ function containsDeceptiveMarkers(hostname) {
14
+ return (
15
+ // eslint-disable-next-line no-control-regex
16
+ hostname.toLowerCase().includes('xn--') || /[^\x00-\x7F]/.test(hostname));
17
+ }
18
+ /**
19
+ * Converts a URL (string or object) to its visually deceptive Unicode version.
20
+ *
21
+ * This function manually reconstructs the URL to bypass the automatic Punycode
22
+ * conversion performed by the WHATWG URL class when setting the hostname.
23
+ *
24
+ * @param urlInput The URL string or URL object to convert.
25
+ * @returns The reconstructed URL string with the hostname in Unicode.
26
+ */
27
+ export function toUnicodeUrl(urlInput) {
28
+ try {
29
+ const urlObj = typeof urlInput === 'string' ? new URL(urlInput) : urlInput;
30
+ const punycodeHost = urlObj.hostname;
31
+ const unicodeHost = url.domainToUnicode(punycodeHost);
32
+ // Reconstruct the URL manually because the WHATWG URL class automatically
33
+ // Punycodes the hostname if we try to set it.
34
+ const protocol = urlObj.protocol + '//';
35
+ const credentials = urlObj.username
36
+ ? `${urlObj.username}${urlObj.password ? ':' + urlObj.password : ''}@`
37
+ : '';
38
+ const port = urlObj.port ? ':' + urlObj.port : '';
39
+ return `${protocol}${credentials}${unicodeHost}${port}${urlObj.pathname}${urlObj.search}${urlObj.hash}`;
40
+ }
41
+ catch {
42
+ return typeof urlInput === 'string' ? urlInput : urlInput.href;
43
+ }
44
+ }
45
+ /**
46
+ * Extracts deceptive URL details if a URL hostname contains non-ASCII characters
47
+ * or is already in Punycode.
48
+ *
49
+ * @param urlString The URL string to check.
50
+ * @returns DeceptiveUrlDetails if a potential deceptive URL is detected, otherwise null.
51
+ */
52
+ export function getDeceptiveUrlDetails(urlString) {
53
+ try {
54
+ if (!urlString.includes('://')) {
55
+ return null;
56
+ }
57
+ const urlObj = new URL(urlString);
58
+ if (!containsDeceptiveMarkers(urlObj.hostname)) {
59
+ return null;
60
+ }
61
+ return {
62
+ originalUrl: toUnicodeUrl(urlObj),
63
+ punycodeUrl: urlObj.href,
64
+ };
65
+ }
66
+ catch {
67
+ // If URL parsing fails, it's not a valid URL we can safely analyze.
68
+ return null;
69
+ }
70
+ }
71
+ //# sourceMappingURL=urlSecurityUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"urlSecurityUtils.js","sourceRoot":"","sources":["../../../../src/ui/utils/urlSecurityUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,GAAG,MAAM,UAAU,CAAC;AAY3B;;;;;GAKG;AACH,SAAS,wBAAwB,CAAC,QAAgB;IAChD,OAAO;IACL,4CAA4C;IAC5C,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CACzE,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,QAAsB;IACjD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC3E,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC;QACrC,MAAM,WAAW,GAAG,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAEtD,0EAA0E;QAC1E,8CAA8C;QAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;QACxC,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ;YACjC,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG;YACtE,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAElD,OAAO,GAAG,QAAQ,GAAG,WAAW,GAAG,WAAW,GAAG,IAAI,GAAG,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IAC1G,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;IACjE,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CACpC,SAAiB;IAEjB,IAAI,CAAC;QACH,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;QAElC,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,WAAW,EAAE,YAAY,CAAC,MAAM,CAAC;YACjC,WAAW,EAAE,MAAM,CAAC,IAAI;SACzB,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,oEAAoE;QACpE,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export {};
@@ -0,0 +1,49 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { describe, it, expect } from 'vitest';
7
+ import { getDeceptiveUrlDetails, toUnicodeUrl } from './urlSecurityUtils.js';
8
+ describe('urlSecurityUtils', () => {
9
+ describe('toUnicodeUrl', () => {
10
+ it('should convert a Punycode URL string to its Unicode version', () => {
11
+ expect(toUnicodeUrl('https://xn--tst-qla.com/')).toBe('https://täst.com/');
12
+ });
13
+ it('should convert a URL object to its Unicode version', () => {
14
+ const urlObj = new URL('https://xn--tst-qla.com/path');
15
+ expect(toUnicodeUrl(urlObj)).toBe('https://täst.com/path');
16
+ });
17
+ it('should handle complex URLs with credentials and ports', () => {
18
+ const complexUrl = 'https://user:pass@xn--tst-qla.com:8080/path?q=1#hash';
19
+ expect(toUnicodeUrl(complexUrl)).toBe('https://user:pass@täst.com:8080/path?q=1#hash');
20
+ });
21
+ it('should correctly reconstruct the URL even if the hostname appears in the path', () => {
22
+ const urlWithHostnameInPath = 'https://xn--tst-qla.com/some/path/xn--tst-qla.com/index.html';
23
+ expect(toUnicodeUrl(urlWithHostnameInPath)).toBe('https://täst.com/some/path/xn--tst-qla.com/index.html');
24
+ });
25
+ it('should return the original string if URL parsing fails', () => {
26
+ expect(toUnicodeUrl('not a url')).toBe('not a url');
27
+ });
28
+ it('should return the original string for already safe URLs', () => {
29
+ expect(toUnicodeUrl('https://google.com/')).toBe('https://google.com/');
30
+ });
31
+ });
32
+ describe('getDeceptiveUrlDetails', () => {
33
+ it('should return full details for a deceptive URL', () => {
34
+ const details = getDeceptiveUrlDetails('https://еxample.com');
35
+ expect(details).not.toBeNull();
36
+ expect(details?.originalUrl).toBe('https://еxample.com/');
37
+ expect(details?.punycodeUrl).toBe('https://xn--xample-2of.com/');
38
+ });
39
+ it('should return null for safe URLs', () => {
40
+ expect(getDeceptiveUrlDetails('https://google.com')).toBeNull();
41
+ });
42
+ it('should handle already Punycoded hostnames', () => {
43
+ const details = getDeceptiveUrlDetails('https://xn--tst-qla.com');
44
+ expect(details).not.toBeNull();
45
+ expect(details?.originalUrl).toBe('https://täst.com/');
46
+ });
47
+ });
48
+ });
49
+ //# sourceMappingURL=urlSecurityUtils.test.js.map