@google/gemini-cli 0.6.0-nightly.20250910.a31830a3 → 0.6.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 (336) hide show
  1. package/LICENSE +2 -2
  2. package/README.md +12 -2
  3. package/dist/index.js +0 -0
  4. package/dist/package.json +3 -2
  5. package/dist/src/commands/extensions/disable.d.ts +1 -1
  6. package/dist/src/commands/extensions/disable.js +3 -3
  7. package/dist/src/commands/extensions/disable.js.map +1 -1
  8. package/dist/src/commands/extensions/enable.d.ts +1 -1
  9. package/dist/src/commands/extensions/enable.js +5 -7
  10. package/dist/src/commands/extensions/enable.js.map +1 -1
  11. package/dist/src/commands/extensions/install.d.ts +1 -0
  12. package/dist/src/commands/extensions/install.js +10 -2
  13. package/dist/src/commands/extensions/install.js.map +1 -1
  14. package/dist/src/commands/extensions/install.test.js +75 -2
  15. package/dist/src/commands/extensions/install.test.js.map +1 -1
  16. package/dist/src/commands/extensions/update.js +14 -4
  17. package/dist/src/commands/extensions/update.js.map +1 -1
  18. package/dist/src/config/config.d.ts +1 -1
  19. package/dist/src/config/config.js +19 -5
  20. package/dist/src/config/config.js.map +1 -1
  21. package/dist/src/config/extension.d.ts +17 -8
  22. package/dist/src/config/extension.js +192 -73
  23. package/dist/src/config/extension.js.map +1 -1
  24. package/dist/src/config/extensions/extensionEnablement.d.ts +30 -0
  25. package/dist/src/config/extensions/extensionEnablement.js +113 -0
  26. package/dist/src/config/extensions/extensionEnablement.js.map +1 -0
  27. package/dist/src/config/extensions/extensionEnablement.test.d.ts +6 -0
  28. package/dist/src/config/extensions/extensionEnablement.test.js +116 -0
  29. package/dist/src/config/extensions/extensionEnablement.test.js.map +1 -0
  30. package/dist/src/config/extensions/variableSchema.d.ts +8 -0
  31. package/dist/src/config/extensions/variableSchema.js +4 -0
  32. package/dist/src/config/extensions/variableSchema.js.map +1 -1
  33. package/dist/src/config/keyBindings.d.ts +4 -1
  34. package/dist/src/config/keyBindings.js +8 -0
  35. package/dist/src/config/keyBindings.js.map +1 -1
  36. package/dist/src/config/settings.d.ts +3 -0
  37. package/dist/src/config/settings.js +54 -15
  38. package/dist/src/config/settings.js.map +1 -1
  39. package/dist/src/config/settingsSchema.d.ts +67 -1
  40. package/dist/src/config/settingsSchema.js +64 -1
  41. package/dist/src/config/settingsSchema.js.map +1 -1
  42. package/dist/src/config/settingsSchema.test.js +6 -0
  43. package/dist/src/config/settingsSchema.test.js.map +1 -1
  44. package/dist/src/config/trustedFolders.d.ts +1 -1
  45. package/dist/src/config/trustedFolders.js +9 -4
  46. package/dist/src/config/trustedFolders.js.map +1 -1
  47. package/dist/src/config/trustedFolders.test.js +41 -25
  48. package/dist/src/config/trustedFolders.test.js.map +1 -1
  49. package/dist/src/core/initializer.js +6 -1
  50. package/dist/src/core/initializer.js.map +1 -1
  51. package/dist/src/gemini.js +34 -24
  52. package/dist/src/gemini.js.map +1 -1
  53. package/dist/src/gemini.test.js +11 -2
  54. package/dist/src/gemini.test.js.map +1 -1
  55. package/dist/src/generated/git-commit.d.ts +2 -2
  56. package/dist/src/generated/git-commit.js +2 -2
  57. package/dist/src/generated/git-commit.js.map +1 -1
  58. package/dist/src/nonInteractiveCli.js +23 -9
  59. package/dist/src/nonInteractiveCli.js.map +1 -1
  60. package/dist/src/services/McpPromptLoader.js +43 -8
  61. package/dist/src/services/McpPromptLoader.js.map +1 -1
  62. package/dist/src/services/McpPromptLoader.test.js +228 -1
  63. package/dist/src/services/McpPromptLoader.test.js.map +1 -1
  64. package/dist/src/services/prompt-processors/shellProcessor.js +8 -1
  65. package/dist/src/services/prompt-processors/shellProcessor.js.map +1 -1
  66. package/dist/src/ui/AppContainer.js +69 -32
  67. package/dist/src/ui/AppContainer.js.map +1 -1
  68. package/dist/src/ui/AppContainer.test.js +36 -0
  69. package/dist/src/ui/AppContainer.test.js.map +1 -1
  70. package/dist/src/ui/IdeIntegrationNudge.js +2 -1
  71. package/dist/src/ui/IdeIntegrationNudge.js.map +1 -1
  72. package/dist/src/ui/auth/AuthDialog.js +2 -2
  73. package/dist/src/ui/auth/AuthDialog.js.map +1 -1
  74. package/dist/src/ui/auth/AuthInProgress.js +2 -2
  75. package/dist/src/ui/auth/AuthInProgress.js.map +1 -1
  76. package/dist/src/ui/commands/chatCommand.d.ts +2 -0
  77. package/dist/src/ui/commands/chatCommand.js +82 -3
  78. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  79. package/dist/src/ui/commands/extensionsCommand.js +70 -16
  80. package/dist/src/ui/commands/extensionsCommand.js.map +1 -1
  81. package/dist/src/ui/commands/ideCommand.js +2 -2
  82. package/dist/src/ui/commands/ideCommand.js.map +1 -1
  83. package/dist/src/ui/commands/types.d.ts +4 -1
  84. package/dist/src/ui/commands/types.js +0 -1
  85. package/dist/src/ui/commands/types.js.map +1 -1
  86. package/dist/src/ui/components/AboutBox.js +2 -2
  87. package/dist/src/ui/components/AboutBox.js.map +1 -1
  88. package/dist/src/ui/components/AnsiOutput.d.ts +13 -0
  89. package/dist/src/ui/components/AnsiOutput.js +12 -0
  90. package/dist/src/ui/components/AnsiOutput.js.map +1 -0
  91. package/dist/src/ui/components/AnsiOutput.test.d.ts +6 -0
  92. package/dist/src/ui/components/AnsiOutput.test.js +97 -0
  93. package/dist/src/ui/components/AnsiOutput.test.js.map +1 -0
  94. package/dist/src/ui/components/AutoAcceptIndicator.js +4 -4
  95. package/dist/src/ui/components/AutoAcceptIndicator.js.map +1 -1
  96. package/dist/src/ui/components/Composer.js +10 -5
  97. package/dist/src/ui/components/Composer.js.map +1 -1
  98. package/dist/src/ui/components/ConfigInitDisplay.js +2 -1
  99. package/dist/src/ui/components/ConfigInitDisplay.js.map +1 -1
  100. package/dist/src/ui/components/ConsoleSummaryDisplay.js +2 -2
  101. package/dist/src/ui/components/ConsoleSummaryDisplay.js.map +1 -1
  102. package/dist/src/ui/components/ContextSummaryDisplay.js +3 -3
  103. package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -1
  104. package/dist/src/ui/components/ContextUsageDisplay.js +2 -2
  105. package/dist/src/ui/components/ContextUsageDisplay.js.map +1 -1
  106. package/dist/src/ui/components/DebugProfiler.js +2 -2
  107. package/dist/src/ui/components/DebugProfiler.js.map +1 -1
  108. package/dist/src/ui/components/DetailedMessagesDisplay.js +7 -7
  109. package/dist/src/ui/components/DetailedMessagesDisplay.js.map +1 -1
  110. package/dist/src/ui/components/DialogManager.js +9 -5
  111. package/dist/src/ui/components/DialogManager.js.map +1 -1
  112. package/dist/src/ui/components/EditorSettingsDialog.js +5 -5
  113. package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -1
  114. package/dist/src/ui/components/FolderTrustDialog.js +4 -3
  115. package/dist/src/ui/components/FolderTrustDialog.js.map +1 -1
  116. package/dist/src/ui/components/FolderTrustDialog.test.js +6 -1
  117. package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
  118. package/dist/src/ui/components/Footer.d.ts +3 -0
  119. package/dist/src/ui/components/Footer.js +8 -3
  120. package/dist/src/ui/components/Footer.js.map +1 -1
  121. package/dist/src/ui/components/GeminiRespondingSpinner.js +3 -2
  122. package/dist/src/ui/components/GeminiRespondingSpinner.js.map +1 -1
  123. package/dist/src/ui/components/Header.js +2 -2
  124. package/dist/src/ui/components/Header.js.map +1 -1
  125. package/dist/src/ui/components/Help.js +5 -5
  126. package/dist/src/ui/components/Help.js.map +1 -1
  127. package/dist/src/ui/components/HistoryItemDisplay.d.ts +2 -0
  128. package/dist/src/ui/components/HistoryItemDisplay.js +2 -1
  129. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  130. package/dist/src/ui/components/InputPrompt.d.ts +3 -0
  131. package/dist/src/ui/components/InputPrompt.js +97 -19
  132. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  133. package/dist/src/ui/components/LoadingIndicator.js +2 -2
  134. package/dist/src/ui/components/LoadingIndicator.js.map +1 -1
  135. package/dist/src/ui/components/LoopDetectionConfirmation.d.ts +13 -0
  136. package/dist/src/ui/components/LoopDetectionConfirmation.js +35 -0
  137. package/dist/src/ui/components/LoopDetectionConfirmation.js.map +1 -0
  138. package/dist/src/ui/components/LoopDetectionConfirmation.test.d.ts +6 -0
  139. package/dist/src/ui/components/LoopDetectionConfirmation.test.js +25 -0
  140. package/dist/src/ui/components/LoopDetectionConfirmation.test.js.map +1 -0
  141. package/dist/src/ui/components/MainContent.js +1 -1
  142. package/dist/src/ui/components/MainContent.js.map +1 -1
  143. package/dist/src/ui/components/MemoryUsageDisplay.js +6 -4
  144. package/dist/src/ui/components/MemoryUsageDisplay.js.map +1 -1
  145. package/dist/src/ui/components/ModelStatsDisplay.js +7 -7
  146. package/dist/src/ui/components/ModelStatsDisplay.js.map +1 -1
  147. package/dist/src/ui/components/Notifications.js +2 -2
  148. package/dist/src/ui/components/Notifications.js.map +1 -1
  149. package/dist/src/ui/components/PrepareLabel.d.ts +5 -5
  150. package/dist/src/ui/components/PrepareLabel.js +67 -11
  151. package/dist/src/ui/components/PrepareLabel.js.map +1 -1
  152. package/dist/src/ui/components/PrepareLabel.test.d.ts +6 -0
  153. package/dist/src/ui/components/PrepareLabel.test.js +71 -0
  154. package/dist/src/ui/components/PrepareLabel.test.js.map +1 -0
  155. package/dist/src/ui/components/ProQuotaDialog.js +2 -2
  156. package/dist/src/ui/components/ProQuotaDialog.js.map +1 -1
  157. package/dist/src/ui/components/SettingsDialog.d.ts +2 -1
  158. package/dist/src/ui/components/SettingsDialog.js +73 -17
  159. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  160. package/dist/src/ui/components/SettingsDialog.test.js +291 -0
  161. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
  162. package/dist/src/ui/components/ShellConfirmationDialog.js +2 -2
  163. package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -1
  164. package/dist/src/ui/components/ShellInputPrompt.d.ts +11 -0
  165. package/dist/src/ui/components/ShellInputPrompt.js +36 -0
  166. package/dist/src/ui/components/ShellInputPrompt.js.map +1 -0
  167. package/dist/src/ui/components/ShellModeIndicator.js +2 -2
  168. package/dist/src/ui/components/ShellModeIndicator.js.map +1 -1
  169. package/dist/src/ui/components/ShowMoreLines.js +2 -2
  170. package/dist/src/ui/components/ShowMoreLines.js.map +1 -1
  171. package/dist/src/ui/components/StatsDisplay.js +6 -6
  172. package/dist/src/ui/components/StatsDisplay.js.map +1 -1
  173. package/dist/src/ui/components/SuggestionsDisplay.d.ts +5 -2
  174. package/dist/src/ui/components/SuggestionsDisplay.js +17 -11
  175. package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -1
  176. package/dist/src/ui/components/ThemeDialog.js +4 -4
  177. package/dist/src/ui/components/ThemeDialog.js.map +1 -1
  178. package/dist/src/ui/components/ThemeDialog.test.js +10 -0
  179. package/dist/src/ui/components/ThemeDialog.test.js.map +1 -1
  180. package/dist/src/ui/components/Tips.js +2 -2
  181. package/dist/src/ui/components/Tips.js.map +1 -1
  182. package/dist/src/ui/components/ToolStatsDisplay.js +4 -4
  183. package/dist/src/ui/components/ToolStatsDisplay.js.map +1 -1
  184. package/dist/src/ui/components/UpdateNotification.js +2 -2
  185. package/dist/src/ui/components/UpdateNotification.js.map +1 -1
  186. package/dist/src/ui/components/WorkspaceMigrationDialog.js +4 -4
  187. package/dist/src/ui/components/WorkspaceMigrationDialog.js.map +1 -1
  188. package/dist/src/ui/components/messages/CompressionMessage.d.ts +1 -2
  189. package/dist/src/ui/components/messages/CompressionMessage.js +37 -8
  190. package/dist/src/ui/components/messages/CompressionMessage.js.map +1 -1
  191. package/dist/src/ui/components/messages/CompressionMessage.test.d.ts +6 -0
  192. package/dist/src/ui/components/messages/CompressionMessage.test.js +160 -0
  193. package/dist/src/ui/components/messages/CompressionMessage.test.js.map +1 -0
  194. package/dist/src/ui/components/messages/DiffRenderer.d.ts +2 -1
  195. package/dist/src/ui/components/messages/DiffRenderer.js +14 -22
  196. package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -1
  197. package/dist/src/ui/components/messages/ErrorMessage.js +2 -2
  198. package/dist/src/ui/components/messages/ErrorMessage.js.map +1 -1
  199. package/dist/src/ui/components/messages/GeminiMessage.js +2 -2
  200. package/dist/src/ui/components/messages/GeminiMessage.js.map +1 -1
  201. package/dist/src/ui/components/messages/InfoMessage.js +2 -2
  202. package/dist/src/ui/components/messages/InfoMessage.js.map +1 -1
  203. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +31 -19
  204. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  205. package/dist/src/ui/components/messages/ToolGroupMessage.d.ts +3 -0
  206. package/dist/src/ui/components/messages/ToolGroupMessage.js +10 -6
  207. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
  208. package/dist/src/ui/components/messages/ToolMessage.d.ts +4 -0
  209. package/dist/src/ui/components/messages/ToolMessage.js +17 -10
  210. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  211. package/dist/src/ui/components/messages/ToolMessage.test.js +33 -1
  212. package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -1
  213. package/dist/src/ui/components/messages/UserMessage.js +3 -3
  214. package/dist/src/ui/components/messages/UserMessage.js.map +1 -1
  215. package/dist/src/ui/components/messages/UserShellMessage.js +2 -2
  216. package/dist/src/ui/components/messages/UserShellMessage.js.map +1 -1
  217. package/dist/src/ui/components/shared/MaxSizedBox.js +2 -2
  218. package/dist/src/ui/components/shared/MaxSizedBox.js.map +1 -1
  219. package/dist/src/ui/components/shared/RadioButtonSelect.js +12 -12
  220. package/dist/src/ui/components/shared/RadioButtonSelect.js.map +1 -1
  221. package/dist/src/ui/components/shared/text-buffer.d.ts +19 -2
  222. package/dist/src/ui/components/shared/text-buffer.js +191 -133
  223. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  224. package/dist/src/ui/components/views/ExtensionsList.d.ts +6 -0
  225. package/dist/src/ui/components/views/ExtensionsList.js +47 -0
  226. package/dist/src/ui/components/views/ExtensionsList.js.map +1 -0
  227. package/dist/src/ui/components/views/ExtensionsList.test.d.ts +6 -0
  228. package/dist/src/ui/components/views/ExtensionsList.test.js +97 -0
  229. package/dist/src/ui/components/views/ExtensionsList.test.js.map +1 -0
  230. package/dist/src/ui/contexts/UIStateContext.d.ts +6 -1
  231. package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
  232. package/dist/src/ui/hooks/keyToAnsi.d.ts +15 -0
  233. package/dist/src/ui/hooks/keyToAnsi.js +67 -0
  234. package/dist/src/ui/hooks/keyToAnsi.js.map +1 -0
  235. package/dist/src/ui/hooks/shellCommandProcessor.d.ts +2 -1
  236. package/dist/src/ui/hooks/shellCommandProcessor.js +58 -15
  237. package/dist/src/ui/hooks/shellCommandProcessor.js.map +1 -1
  238. package/dist/src/ui/hooks/shellCommandProcessor.test.js +196 -17
  239. package/dist/src/ui/hooks/shellCommandProcessor.test.js.map +1 -1
  240. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +3 -1
  241. package/dist/src/ui/hooks/slashCommandProcessor.js +15 -45
  242. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  243. package/dist/src/ui/hooks/useAutoAcceptIndicator.d.ts +3 -2
  244. package/dist/src/ui/hooks/useAutoAcceptIndicator.js +9 -5
  245. package/dist/src/ui/hooks/useAutoAcceptIndicator.js.map +1 -1
  246. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js +69 -0
  247. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js.map +1 -1
  248. package/dist/src/ui/hooks/useGeminiStream.d.ts +11 -1
  249. package/dist/src/ui/hooks/useGeminiStream.js +75 -18
  250. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  251. package/dist/src/ui/hooks/useGitBranchName.js +15 -18
  252. package/dist/src/ui/hooks/useGitBranchName.js.map +1 -1
  253. package/dist/src/ui/hooks/useGitBranchName.test.js +49 -53
  254. package/dist/src/ui/hooks/useGitBranchName.test.js.map +1 -1
  255. package/dist/src/ui/hooks/useIdeTrustListener.js +2 -2
  256. package/dist/src/ui/hooks/useIdeTrustListener.js.map +1 -1
  257. package/dist/src/ui/hooks/useQuotaAndFallback.test.js +0 -2
  258. package/dist/src/ui/hooks/useQuotaAndFallback.test.js.map +1 -1
  259. package/dist/src/ui/hooks/useReactToolScheduler.d.ts +3 -2
  260. package/dist/src/ui/hooks/useReactToolScheduler.js +21 -17
  261. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  262. package/dist/src/ui/hooks/useReverseSearchCompletion.d.ts +1 -1
  263. package/dist/src/ui/hooks/useReverseSearchCompletion.js +67 -20
  264. package/dist/src/ui/hooks/useReverseSearchCompletion.js.map +1 -1
  265. package/dist/src/ui/hooks/useSlashCompletion.d.ts +1 -1
  266. package/dist/src/ui/hooks/useSlashCompletion.js +12 -1
  267. package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -1
  268. package/dist/src/ui/hooks/useSlashCompletion.test.js +14 -2
  269. package/dist/src/ui/hooks/useSlashCompletion.test.js.map +1 -1
  270. package/dist/src/ui/hooks/useToolScheduler.test.js +6 -4
  271. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  272. package/dist/src/ui/keyMatchers.test.js +8 -0
  273. package/dist/src/ui/keyMatchers.test.js.map +1 -1
  274. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js +5 -5
  275. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js.map +1 -1
  276. package/dist/src/ui/privacy/CloudPaidPrivacyNotice.js +2 -2
  277. package/dist/src/ui/privacy/CloudPaidPrivacyNotice.js.map +1 -1
  278. package/dist/src/ui/privacy/GeminiPrivacyNotice.js +2 -2
  279. package/dist/src/ui/privacy/GeminiPrivacyNotice.js.map +1 -1
  280. package/dist/src/ui/state/extensions.d.ts +14 -0
  281. package/dist/src/ui/state/extensions.js +16 -0
  282. package/dist/src/ui/state/extensions.js.map +1 -0
  283. package/dist/src/ui/themes/ayu.js +1 -1
  284. package/dist/src/ui/themes/dracula.js +2 -2
  285. package/dist/src/ui/themes/github-dark.js +1 -1
  286. package/dist/src/ui/themes/theme.js +17 -17
  287. package/dist/src/ui/themes/theme.js.map +1 -1
  288. package/dist/src/ui/types.d.ts +12 -2
  289. package/dist/src/ui/types.js +1 -0
  290. package/dist/src/ui/types.js.map +1 -1
  291. package/dist/src/ui/utils/CodeColorizer.js +3 -2
  292. package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
  293. package/dist/src/ui/utils/InlineMarkdownRenderer.js +7 -7
  294. package/dist/src/ui/utils/InlineMarkdownRenderer.js.map +1 -1
  295. package/dist/src/ui/utils/MarkdownDisplay.js +10 -10
  296. package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
  297. package/dist/src/ui/utils/MarkdownDisplay.test.js +6 -2
  298. package/dist/src/ui/utils/MarkdownDisplay.test.js.map +1 -1
  299. package/dist/src/ui/utils/TableRenderer.js +4 -4
  300. package/dist/src/ui/utils/TableRenderer.js.map +1 -1
  301. package/dist/src/ui/utils/clipboardUtils.js +5 -6
  302. package/dist/src/ui/utils/clipboardUtils.js.map +1 -1
  303. package/dist/src/ui/utils/displayUtils.js +4 -4
  304. package/dist/src/ui/utils/displayUtils.js.map +1 -1
  305. package/dist/src/ui/utils/textUtils.d.ts +9 -0
  306. package/dist/src/ui/utils/textUtils.js +52 -3
  307. package/dist/src/ui/utils/textUtils.js.map +1 -1
  308. package/dist/src/utils/commands.d.ts +20 -0
  309. package/dist/src/utils/commands.js +53 -0
  310. package/dist/src/utils/commands.js.map +1 -0
  311. package/dist/src/utils/commands.test.d.ts +6 -0
  312. package/dist/src/utils/commands.test.js +115 -0
  313. package/dist/src/utils/commands.test.js.map +1 -0
  314. package/dist/src/utils/commentJson.d.ts +9 -0
  315. package/dist/src/utils/commentJson.js +48 -0
  316. package/dist/src/utils/commentJson.js.map +1 -0
  317. package/dist/src/utils/commentJson.test.d.ts +6 -0
  318. package/dist/src/utils/commentJson.test.js +146 -0
  319. package/dist/src/utils/commentJson.test.js.map +1 -0
  320. package/dist/src/utils/errors.d.ts +21 -0
  321. package/dist/src/utils/errors.js +93 -0
  322. package/dist/src/utils/errors.js.map +1 -1
  323. package/dist/src/utils/errors.test.d.ts +6 -0
  324. package/dist/src/utils/errors.test.js +303 -0
  325. package/dist/src/utils/errors.test.js.map +1 -0
  326. package/dist/src/utils/sandbox.js +2 -0
  327. package/dist/src/utils/sandbox.js.map +1 -1
  328. package/dist/src/utils/settingsUtils.test.js +37 -2
  329. package/dist/src/utils/settingsUtils.test.js.map +1 -1
  330. package/dist/src/validateNonInterActiveAuth.js +30 -18
  331. package/dist/src/validateNonInterActiveAuth.js.map +1 -1
  332. package/dist/src/zed-integration/schema.d.ts +18 -18
  333. package/dist/src/zed-integration/zedIntegration.js +10 -7
  334. package/dist/src/zed-integration/zedIntegration.js.map +1 -1
  335. package/dist/tsconfig.tsbuildinfo +1 -1
  336. package/package.json +5 -4
@@ -14,10 +14,11 @@ import { CommandService } from '../../services/CommandService.js';
14
14
  import { BuiltinCommandLoader } from '../../services/BuiltinCommandLoader.js';
15
15
  import { FileCommandLoader } from '../../services/FileCommandLoader.js';
16
16
  import { McpPromptLoader } from '../../services/McpPromptLoader.js';
17
+ import { parseSlashCommand } from '../../utils/commands.js';
17
18
  /**
18
19
  * Hook to define and process slash commands (e.g., /help, /clear).
19
20
  */
20
- export const useSlashCommandProcessor = (config, settings, addItem, clearItems, loadHistory, refreshStatic, toggleVimEnabled, setIsProcessing, setGeminiMdFileCount, actions) => {
21
+ export const useSlashCommandProcessor = (config, settings, addItem, clearItems, loadHistory, refreshStatic, toggleVimEnabled, setIsProcessing, setGeminiMdFileCount, actions, extensionsUpdateState, isConfigInitialized) => {
21
22
  const session = useSessionStats();
22
23
  const [commands, setCommands] = useState([]);
23
24
  const [reloadTrigger, setReloadTrigger] = useState(0);
@@ -39,14 +40,14 @@ export const useSlashCommandProcessor = (config, settings, addItem, clearItems,
39
40
  // synchronously. Commands that use it will await its initialization.
40
41
  return l;
41
42
  }, [config]);
42
- const [pendingCompressionItem, setPendingCompressionItem] = useState(null);
43
+ const [pendingItem, setPendingItem] = useState(null);
43
44
  const pendingHistoryItems = useMemo(() => {
44
45
  const items = [];
45
- if (pendingCompressionItem != null) {
46
- items.push(pendingCompressionItem);
46
+ if (pendingItem != null) {
47
+ items.push(pendingItem);
47
48
  }
48
49
  return items;
49
- }, [pendingCompressionItem]);
50
+ }, [pendingItem]);
50
51
  const addMessage = useCallback((message) => {
51
52
  // Convert Message to HistoryItemWithoutId
52
53
  let historyItemContent;
@@ -120,12 +121,14 @@ export const useSlashCommandProcessor = (config, settings, addItem, clearItems,
120
121
  },
121
122
  loadHistory,
122
123
  setDebugMessage: actions.setDebugMessage,
123
- pendingItem: pendingCompressionItem,
124
- setPendingItem: setPendingCompressionItem,
124
+ pendingItem,
125
+ setPendingItem,
125
126
  toggleCorgiMode: actions.toggleCorgiMode,
126
127
  toggleVimEnabled,
127
128
  setGeminiMdFileCount,
128
129
  reloadCommands,
130
+ extensionsUpdateState,
131
+ setExtensionsUpdateState: actions.setExtensionsUpdateState,
129
132
  },
130
133
  session: {
131
134
  stats: session.stats,
@@ -142,12 +145,13 @@ export const useSlashCommandProcessor = (config, settings, addItem, clearItems,
142
145
  refreshStatic,
143
146
  session.stats,
144
147
  actions,
145
- pendingCompressionItem,
146
- setPendingCompressionItem,
148
+ pendingItem,
149
+ setPendingItem,
147
150
  toggleVimEnabled,
148
151
  sessionShellAllowlist,
149
152
  setGeminiMdFileCount,
150
153
  reloadCommands,
154
+ extensionsUpdateState,
151
155
  ]);
152
156
  useEffect(() => {
153
157
  if (!config) {
@@ -182,7 +186,7 @@ export const useSlashCommandProcessor = (config, settings, addItem, clearItems,
182
186
  return () => {
183
187
  controller.abort();
184
188
  };
185
- }, [config, reloadTrigger]);
189
+ }, [config, reloadTrigger, isConfigInitialized]);
186
190
  const handleSlashCommand = useCallback(async (rawQuery, oneTimeShellAllowlist, overwriteConfirmed) => {
187
191
  if (typeof rawQuery !== 'string') {
188
192
  return false;
@@ -194,47 +198,13 @@ export const useSlashCommandProcessor = (config, settings, addItem, clearItems,
194
198
  setIsProcessing(true);
195
199
  const userMessageTimestamp = Date.now();
196
200
  addItem({ type: MessageType.USER, text: trimmed }, userMessageTimestamp);
197
- const parts = trimmed.substring(1).trim().split(/\s+/);
198
- const commandPath = parts.filter((p) => p); // The parts of the command, e.g., ['memory', 'add']
199
- let currentCommands = commands;
200
- let commandToExecute;
201
- let pathIndex = 0;
202
201
  let hasError = false;
203
- const canonicalPath = [];
204
- for (const part of commandPath) {
205
- // TODO: For better performance and architectural clarity, this two-pass
206
- // search could be replaced. A more optimal approach would be to
207
- // pre-compute a single lookup map in `CommandService.ts` that resolves
208
- // all name and alias conflicts during the initial loading phase. The
209
- // processor would then perform a single, fast lookup on that map.
210
- // First pass: check for an exact match on the primary command name.
211
- let foundCommand = currentCommands.find((cmd) => cmd.name === part);
212
- // Second pass: if no primary name matches, check for an alias.
213
- if (!foundCommand) {
214
- foundCommand = currentCommands.find((cmd) => cmd.altNames?.includes(part));
215
- }
216
- if (foundCommand) {
217
- commandToExecute = foundCommand;
218
- canonicalPath.push(foundCommand.name);
219
- pathIndex++;
220
- if (foundCommand.subCommands) {
221
- currentCommands = foundCommand.subCommands;
222
- }
223
- else {
224
- break;
225
- }
226
- }
227
- else {
228
- break;
229
- }
230
- }
231
- const resolvedCommandPath = canonicalPath;
202
+ const { commandToExecute, args, canonicalPath: resolvedCommandPath, } = parseSlashCommand(trimmed, commands);
232
203
  const subcommand = resolvedCommandPath.length > 1
233
204
  ? resolvedCommandPath.slice(1).join(' ')
234
205
  : undefined;
235
206
  try {
236
207
  if (commandToExecute) {
237
- const args = parts.slice(pathIndex).join(' ');
238
208
  if (commandToExecute.action) {
239
209
  const fullCommandContext = {
240
210
  ...commandContext,
@@ -1 +1 @@
1
- {"version":3,"file":"slashCommandProcessor.js","sourceRoot":"","sources":["../../../../src/ui/hooks/slashCommandProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slashCommandProcessor.js","sourceRoot":"","sources":["../../../../src/ui/hooks/slashCommandProcessor.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ import { ApprovalMode, type Config } from '@google/gemini-cli-core';
7
7
  import type { HistoryItemWithoutId } from '../types.js';
8
8
  export interface UseAutoAcceptIndicatorArgs {
9
9
  config: Config;
10
- addItem: (item: HistoryItemWithoutId, timestamp: number) => void;
10
+ addItem?: (item: HistoryItemWithoutId, timestamp: number) => void;
11
+ onApprovalModeChange?: (mode: ApprovalMode) => void;
11
12
  }
12
- export declare function useAutoAcceptIndicator({ config, addItem, }: UseAutoAcceptIndicatorArgs): ApprovalMode;
13
+ export declare function useAutoAcceptIndicator({ config, addItem, onApprovalModeChange, }: UseAutoAcceptIndicatorArgs): ApprovalMode;
@@ -7,7 +7,7 @@ import { useState, useEffect } from 'react';
7
7
  import { ApprovalMode } from '@google/gemini-cli-core';
8
8
  import { useKeypress } from './useKeypress.js';
9
9
  import { MessageType } from '../types.js';
10
- export function useAutoAcceptIndicator({ config, addItem, }) {
10
+ export function useAutoAcceptIndicator({ config, addItem, onApprovalModeChange, }) {
11
11
  const currentConfigValue = config.getApprovalMode();
12
12
  const [showAutoAcceptIndicator, setShowAutoAcceptIndicator] = useState(currentConfigValue);
13
13
  useEffect(() => {
@@ -32,12 +32,16 @@ export function useAutoAcceptIndicator({ config, addItem, }) {
32
32
  config.setApprovalMode(nextApprovalMode);
33
33
  // Update local state immediately for responsiveness
34
34
  setShowAutoAcceptIndicator(nextApprovalMode);
35
+ // Notify the central handler about the approval mode change
36
+ onApprovalModeChange?.(nextApprovalMode);
35
37
  }
36
38
  catch (e) {
37
- addItem({
38
- type: MessageType.INFO,
39
- text: e.message,
40
- }, Date.now());
39
+ if (addItem) {
40
+ addItem({
41
+ type: MessageType.INFO,
42
+ text: e.message,
43
+ }, Date.now());
44
+ }
41
45
  }
42
46
  }
43
47
  }, { isActive: true });
@@ -1 +1 @@
1
- {"version":3,"file":"useAutoAcceptIndicator.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useAutoAcceptIndicator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAe,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAO1C,MAAM,UAAU,sBAAsB,CAAC,EACrC,MAAM,EACN,OAAO,GACoB;IAC3B,MAAM,kBAAkB,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;IACpD,MAAM,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,GACzD,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAE/B,SAAS,CAAC,GAAG,EAAE;QACb,0BAA0B,CAAC,kBAAkB,CAAC,CAAC;IACjD,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAEzB,WAAW,CACT,CAAC,GAAG,EAAE,EAAE;QACN,IAAI,gBAA0C,CAAC;QAE/C,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,gBAAgB;gBACd,MAAM,CAAC,eAAe,EAAE,KAAK,YAAY,CAAC,IAAI;oBAC5C,CAAC,CAAC,YAAY,CAAC,OAAO;oBACtB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC;QAC1B,CAAC;aAAM,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YAC3C,gBAAgB;gBACd,MAAM,CAAC,eAAe,EAAE,KAAK,YAAY,CAAC,SAAS;oBACjD,CAAC,CAAC,YAAY,CAAC,OAAO;oBACtB,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC;QAC/B,CAAC;QAED,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,MAAM,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;gBACzC,oDAAoD;gBACpD,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;YAC/C,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CACL;oBACE,IAAI,EAAE,WAAW,CAAC,IAAI;oBACtB,IAAI,EAAG,CAAW,CAAC,OAAO;iBAC3B,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB,CAAC;IAEF,OAAO,uBAAuB,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"useAutoAcceptIndicator.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useAutoAcceptIndicator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAe,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAQ1C,MAAM,UAAU,sBAAsB,CAAC,EACrC,MAAM,EACN,OAAO,EACP,oBAAoB,GACO;IAC3B,MAAM,kBAAkB,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;IACpD,MAAM,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,GACzD,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAE/B,SAAS,CAAC,GAAG,EAAE;QACb,0BAA0B,CAAC,kBAAkB,CAAC,CAAC;IACjD,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAEzB,WAAW,CACT,CAAC,GAAG,EAAE,EAAE;QACN,IAAI,gBAA0C,CAAC;QAE/C,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,gBAAgB;gBACd,MAAM,CAAC,eAAe,EAAE,KAAK,YAAY,CAAC,IAAI;oBAC5C,CAAC,CAAC,YAAY,CAAC,OAAO;oBACtB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC;QAC1B,CAAC;aAAM,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YAC3C,gBAAgB;gBACd,MAAM,CAAC,eAAe,EAAE,KAAK,YAAY,CAAC,SAAS;oBACjD,CAAC,CAAC,YAAY,CAAC,OAAO;oBACtB,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC;QAC/B,CAAC;QAED,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,MAAM,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;gBACzC,oDAAoD;gBACpD,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;gBAE7C,4DAA4D;gBAC5D,oBAAoB,EAAE,CAAC,gBAAgB,CAAC,CAAC;YAC3C,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CACL;wBACE,IAAI,EAAE,WAAW,CAAC,IAAI;wBACtB,IAAI,EAAG,CAAW,CAAC,OAAO;qBAC3B,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB,CAAC;IAEF,OAAO,uBAAuB,CAAC;AACjC,CAAC"}
@@ -307,5 +307,74 @@ describe('useAutoAcceptIndicator', () => {
307
307
  expect(mockAddItem).toHaveBeenCalledTimes(2);
308
308
  });
309
309
  });
310
+ it('should call onApprovalModeChange when switching to YOLO mode', () => {
311
+ mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
312
+ const mockOnApprovalModeChange = vi.fn();
313
+ renderHook(() => useAutoAcceptIndicator({
314
+ config: mockConfigInstance,
315
+ onApprovalModeChange: mockOnApprovalModeChange,
316
+ }));
317
+ act(() => {
318
+ capturedUseKeypressHandler({ name: 'y', ctrl: true });
319
+ });
320
+ expect(mockConfigInstance.setApprovalMode).toHaveBeenCalledWith(ApprovalMode.YOLO);
321
+ expect(mockOnApprovalModeChange).toHaveBeenCalledWith(ApprovalMode.YOLO);
322
+ });
323
+ it('should call onApprovalModeChange when switching to AUTO_EDIT mode', () => {
324
+ mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
325
+ const mockOnApprovalModeChange = vi.fn();
326
+ renderHook(() => useAutoAcceptIndicator({
327
+ config: mockConfigInstance,
328
+ onApprovalModeChange: mockOnApprovalModeChange,
329
+ }));
330
+ act(() => {
331
+ capturedUseKeypressHandler({ name: 'tab', shift: true });
332
+ });
333
+ expect(mockConfigInstance.setApprovalMode).toHaveBeenCalledWith(ApprovalMode.AUTO_EDIT);
334
+ expect(mockOnApprovalModeChange).toHaveBeenCalledWith(ApprovalMode.AUTO_EDIT);
335
+ });
336
+ it('should call onApprovalModeChange when switching to DEFAULT mode', () => {
337
+ mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.YOLO);
338
+ const mockOnApprovalModeChange = vi.fn();
339
+ renderHook(() => useAutoAcceptIndicator({
340
+ config: mockConfigInstance,
341
+ onApprovalModeChange: mockOnApprovalModeChange,
342
+ }));
343
+ act(() => {
344
+ capturedUseKeypressHandler({ name: 'y', ctrl: true }); // This should toggle from YOLO to DEFAULT
345
+ });
346
+ expect(mockConfigInstance.setApprovalMode).toHaveBeenCalledWith(ApprovalMode.DEFAULT);
347
+ expect(mockOnApprovalModeChange).toHaveBeenCalledWith(ApprovalMode.DEFAULT);
348
+ });
349
+ it('should not call onApprovalModeChange when callback is not provided', () => {
350
+ mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
351
+ renderHook(() => useAutoAcceptIndicator({
352
+ config: mockConfigInstance,
353
+ }));
354
+ act(() => {
355
+ capturedUseKeypressHandler({ name: 'y', ctrl: true });
356
+ });
357
+ expect(mockConfigInstance.setApprovalMode).toHaveBeenCalledWith(ApprovalMode.YOLO);
358
+ // Should not throw an error when callback is not provided
359
+ });
360
+ it('should handle multiple mode changes correctly', () => {
361
+ mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
362
+ const mockOnApprovalModeChange = vi.fn();
363
+ renderHook(() => useAutoAcceptIndicator({
364
+ config: mockConfigInstance,
365
+ onApprovalModeChange: mockOnApprovalModeChange,
366
+ }));
367
+ // Switch to YOLO
368
+ act(() => {
369
+ capturedUseKeypressHandler({ name: 'y', ctrl: true });
370
+ });
371
+ // Switch to AUTO_EDIT
372
+ act(() => {
373
+ capturedUseKeypressHandler({ name: 'tab', shift: true });
374
+ });
375
+ expect(mockOnApprovalModeChange).toHaveBeenCalledTimes(2);
376
+ expect(mockOnApprovalModeChange).toHaveBeenNthCalledWith(1, ApprovalMode.YOLO);
377
+ expect(mockOnApprovalModeChange).toHaveBeenNthCalledWith(2, ApprovalMode.AUTO_EDIT);
378
+ });
310
379
  });
311
380
  //# sourceMappingURL=useAutoAcceptIndicator.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAutoAcceptIndicator.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useAutoAcceptIndicator.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useAutoAcceptIndicator.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useAutoAcceptIndicator.test.ts"],"names":[],"mappings":"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"}
@@ -4,16 +4,18 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import type { Config, EditorType, GeminiClient, ThoughtSummary } from '@google/gemini-cli-core';
7
+ import { ApprovalMode } from '@google/gemini-cli-core';
7
8
  import { type PartListUnion } from '@google/genai';
8
9
  import type { HistoryItem, HistoryItemWithoutId, SlashCommandProcessorResult } from '../types.js';
9
10
  import { StreamingState } from '../types.js';
10
11
  import type { UseHistoryManagerReturn } from './useHistoryManager.js';
12
+ import { type TrackedToolCall } from './useReactToolScheduler.js';
11
13
  import type { LoadedSettings } from '../../config/settings.js';
12
14
  /**
13
15
  * Manages the Gemini stream, including user input, command processing,
14
16
  * API interaction, and tool call lifecycle.
15
17
  */
16
- export declare const useGeminiStream: (geminiClient: GeminiClient, history: HistoryItem[], addItem: UseHistoryManagerReturn["addItem"], config: Config, settings: LoadedSettings, onDebugMessage: (message: string) => void, handleSlashCommand: (cmd: PartListUnion) => Promise<SlashCommandProcessorResult | false>, shellModeActive: boolean, getPreferredEditor: () => EditorType | undefined, onAuthError: (error: string) => void, performMemoryRefresh: () => Promise<void>, modelSwitchedFromQuotaError: boolean, setModelSwitchedFromQuotaError: React.Dispatch<React.SetStateAction<boolean>>, onEditorClose: () => void, onCancelSubmit: () => void) => {
18
+ export declare const useGeminiStream: (geminiClient: GeminiClient, history: HistoryItem[], addItem: UseHistoryManagerReturn["addItem"], config: Config, settings: LoadedSettings, onDebugMessage: (message: string) => void, handleSlashCommand: (cmd: PartListUnion) => Promise<SlashCommandProcessorResult | false>, shellModeActive: boolean, getPreferredEditor: () => EditorType | undefined, onAuthError: (error: string) => void, performMemoryRefresh: () => Promise<void>, modelSwitchedFromQuotaError: boolean, setModelSwitchedFromQuotaError: React.Dispatch<React.SetStateAction<boolean>>, onEditorClose: () => void, onCancelSubmit: () => void, setShellInputFocused: (value: boolean) => void, terminalWidth: number, terminalHeight: number, isShellFocused?: boolean) => {
17
19
  streamingState: StreamingState;
18
20
  submitQuery: (query: PartListUnion, options?: {
19
21
  isContinuation: boolean;
@@ -22,4 +24,12 @@ export declare const useGeminiStream: (geminiClient: GeminiClient, history: Hist
22
24
  pendingHistoryItems: HistoryItemWithoutId[];
23
25
  thought: ThoughtSummary | null;
24
26
  cancelOngoingRequest: () => void;
27
+ pendingToolCalls: TrackedToolCall[];
28
+ handleApprovalModeChange: (newApprovalMode: ApprovalMode) => Promise<void>;
29
+ activePtyId: number | undefined;
30
+ loopDetectionConfirmationRequest: {
31
+ onComplete: (result: {
32
+ userSelection: "disable" | "keep";
33
+ }) => void;
34
+ } | null;
25
35
  };
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { useState, useRef, useCallback, useEffect, useMemo } from 'react';
7
- import { GeminiEventType as ServerGeminiEventType, getErrorMessage, isNodeError, MessageSenderType, logUserPrompt, GitService, UnauthorizedError, UserPromptEvent, DEFAULT_GEMINI_FLASH_MODEL, logConversationFinishedEvent, ConversationFinishedEvent, ApprovalMode, parseAndFormatApiError, getCodeAssistServer, UserTierId, promptIdContext, } from '@google/gemini-cli-core';
7
+ import { GeminiEventType as ServerGeminiEventType, getErrorMessage, isNodeError, MessageSenderType, logUserPrompt, GitService, UnauthorizedError, UserPromptEvent, DEFAULT_GEMINI_FLASH_MODEL, logConversationFinishedEvent, ConversationFinishedEvent, ApprovalMode, parseAndFormatApiError, ToolConfirmationOutcome, promptIdContext, } from '@google/gemini-cli-core';
8
8
  import { FinishReason } from '@google/genai';
9
9
  import { StreamingState, MessageType, ToolCallStatus } from '../types.js';
10
10
  import { isAtCommand, isSlashCommand } from '../utils/commandUtils.js';
@@ -13,9 +13,9 @@ import { handleAtCommand } from './atCommandProcessor.js';
13
13
  import { findLastSafeSplitPoint } from '../utils/markdownUtilities.js';
14
14
  import { useStateAndRef } from './useStateAndRef.js';
15
15
  import { useLogger } from './useLogger.js';
16
+ import { useReactToolScheduler, mapToDisplay as mapTrackedToolCallsToDisplay, } from './useReactToolScheduler.js';
16
17
  import { promises as fs } from 'node:fs';
17
18
  import path from 'node:path';
18
- import { useReactToolScheduler, mapToDisplay as mapTrackedToolCallsToDisplay, } from './useReactToolScheduler.js';
19
19
  import { useSessionStats } from '../contexts/SessionContext.js';
20
20
  import { useKeypress } from './useKeypress.js';
21
21
  var StreamProcessingStatus;
@@ -24,19 +24,19 @@ var StreamProcessingStatus;
24
24
  StreamProcessingStatus[StreamProcessingStatus["UserCancelled"] = 1] = "UserCancelled";
25
25
  StreamProcessingStatus[StreamProcessingStatus["Error"] = 2] = "Error";
26
26
  })(StreamProcessingStatus || (StreamProcessingStatus = {}));
27
- function showCitations(settings, config) {
27
+ const EDIT_TOOL_NAMES = new Set(['replace', 'write_file']);
28
+ function showCitations(settings) {
28
29
  const enabled = settings?.merged?.ui?.showCitations;
29
30
  if (enabled !== undefined) {
30
31
  return enabled;
31
32
  }
32
- const server = getCodeAssistServer(config);
33
- return (server && server.userTier !== UserTierId.FREE) ?? false;
33
+ return true;
34
34
  }
35
35
  /**
36
36
  * Manages the Gemini stream, including user input, command processing,
37
37
  * API interaction, and tool call lifecycle.
38
38
  */
39
- export const useGeminiStream = (geminiClient, history, addItem, config, settings, onDebugMessage, handleSlashCommand, shellModeActive, getPreferredEditor, onAuthError, performMemoryRefresh, modelSwitchedFromQuotaError, setModelSwitchedFromQuotaError, onEditorClose, onCancelSubmit) => {
39
+ export const useGeminiStream = (geminiClient, history, addItem, config, settings, onDebugMessage, handleSlashCommand, shellModeActive, getPreferredEditor, onAuthError, performMemoryRefresh, modelSwitchedFromQuotaError, setModelSwitchedFromQuotaError, onEditorClose, onCancelSubmit, setShellInputFocused, terminalWidth, terminalHeight, isShellFocused) => {
40
40
  const [initError, setInitError] = useState(null);
41
41
  const abortControllerRef = useRef(null);
42
42
  const turnCancelledRef = useRef(false);
@@ -61,15 +61,29 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
61
61
  // Handle tool response submission immediately when tools complete
62
62
  await handleCompletedTools(completedToolCallsFromScheduler);
63
63
  }
64
- }, config, setPendingHistoryItem, getPreferredEditor, onEditorClose);
64
+ }, config, getPreferredEditor, onEditorClose);
65
65
  const pendingToolCallGroupDisplay = useMemo(() => toolCalls.length ? mapTrackedToolCallsToDisplay(toolCalls) : undefined, [toolCalls]);
66
+ const activeToolPtyId = useMemo(() => {
67
+ const executingShellTool = toolCalls?.find((tc) => tc.status === 'executing' && tc.request.name === 'run_shell_command');
68
+ if (executingShellTool) {
69
+ return executingShellTool.pid;
70
+ }
71
+ return undefined;
72
+ }, [toolCalls]);
66
73
  const loopDetectedRef = useRef(false);
74
+ const [loopDetectionConfirmationRequest, setLoopDetectionConfirmationRequest,] = useState(null);
67
75
  const onExec = useCallback(async (done) => {
68
76
  setIsResponding(true);
69
77
  await done;
70
78
  setIsResponding(false);
71
79
  }, []);
72
- const { handleShellCommand } = useShellCommandProcessor(addItem, setPendingHistoryItem, onExec, onDebugMessage, config, geminiClient);
80
+ const { handleShellCommand, activeShellPtyId } = useShellCommandProcessor(addItem, setPendingHistoryItem, onExec, onDebugMessage, config, geminiClient, setShellInputFocused, terminalWidth, terminalHeight);
81
+ const activePtyId = activeShellPtyId || activeToolPtyId;
82
+ useEffect(() => {
83
+ if (!activePtyId) {
84
+ setShellInputFocused(false);
85
+ }
86
+ }, [activePtyId, setShellInputFocused]);
73
87
  const streamingState = useMemo(() => {
74
88
  if (toolCalls.some((tc) => tc.status === 'awaiting_approval')) {
75
89
  return StreamingState.WaitingForConfirmation;
@@ -116,15 +130,17 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
116
130
  setPendingHistoryItem(null);
117
131
  onCancelSubmit();
118
132
  setIsResponding(false);
133
+ setShellInputFocused(false);
119
134
  }, [
120
135
  streamingState,
121
136
  addItem,
122
137
  setPendingHistoryItem,
123
138
  onCancelSubmit,
124
139
  pendingHistoryItemRef,
140
+ setShellInputFocused,
125
141
  ]);
126
142
  useKeypress((key) => {
127
- if (key.name === 'escape') {
143
+ if (key.name === 'escape' && !isShellFocused) {
128
144
  cancelOngoingRequest();
129
145
  }
130
146
  }, { isActive: streamingState === StreamingState.Responding });
@@ -303,7 +319,7 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
303
319
  setThought(null); // Reset thought when there's an error
304
320
  }, [addItem, pendingHistoryItemRef, setPendingHistoryItem, config, setThought]);
305
321
  const handleCitationEvent = useCallback((text, userMessageTimestamp) => {
306
- if (!showCitations(settings, config)) {
322
+ if (!showCitations(settings)) {
307
323
  return;
308
324
  }
309
325
  if (pendingHistoryItemRef.current) {
@@ -311,7 +327,7 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
311
327
  setPendingHistoryItem(null);
312
328
  }
313
329
  addItem({ type: MessageType.INFO, text }, userMessageTimestamp);
314
- }, [addItem, pendingHistoryItemRef, setPendingHistoryItem, settings, config]);
330
+ }, [addItem, pendingHistoryItemRef, setPendingHistoryItem, settings]);
315
331
  const handleFinishedEvent = useCallback((event, userMessageTimestamp) => {
316
332
  const finishReason = event.value.reason;
317
333
  if (!finishReason) {
@@ -352,12 +368,28 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
352
368
  text: `The session has reached the maximum number of turns: ${config.getMaxSessionTurns()}. ` +
353
369
  `Please update this limit in your setting.json file.`,
354
370
  }, Date.now()), [addItem, config]);
371
+ const handleLoopDetectionConfirmation = useCallback((result) => {
372
+ setLoopDetectionConfirmationRequest(null);
373
+ if (result.userSelection === 'disable') {
374
+ config.getGeminiClient().getLoopDetectionService().disableForSession();
375
+ addItem({
376
+ type: 'info',
377
+ text: `Loop detection has been disabled for this session. Please try your request again.`,
378
+ }, Date.now());
379
+ }
380
+ else {
381
+ addItem({
382
+ type: 'info',
383
+ text: `A potential loop was detected. This can happen due to repetitive tool calls or other model behavior. The request has been halted.`,
384
+ }, Date.now());
385
+ }
386
+ }, [config, addItem]);
355
387
  const handleLoopDetectedEvent = useCallback(() => {
356
- addItem({
357
- type: 'info',
358
- text: `A potential loop was detected. This can happen due to repetitive tool calls or other model behavior. The request has been halted.`,
359
- }, Date.now());
360
- }, [addItem]);
388
+ // Show the confirmation dialog to choose whether to disable loop detection
389
+ setLoopDetectionConfirmationRequest({
390
+ onComplete: handleLoopDetectionConfirmation,
391
+ });
392
+ }, [handleLoopDetectionConfirmation]);
361
393
  const processGeminiStreamEvents = useCallback(async (stream, userMessageTimestamp, signal) => {
362
394
  let geminiMessageBuffer = '';
363
395
  const toolCallRequests = [];
@@ -497,6 +529,28 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
497
529
  getPromptCount,
498
530
  handleLoopDetectedEvent,
499
531
  ]);
532
+ const handleApprovalModeChange = useCallback(async (newApprovalMode) => {
533
+ // Auto-approve pending tool calls when switching to auto-approval modes
534
+ if (newApprovalMode === ApprovalMode.YOLO ||
535
+ newApprovalMode === ApprovalMode.AUTO_EDIT) {
536
+ let awaitingApprovalCalls = toolCalls.filter((call) => call.status === 'awaiting_approval');
537
+ // For AUTO_EDIT mode, only approve edit tools (replace, write_file)
538
+ if (newApprovalMode === ApprovalMode.AUTO_EDIT) {
539
+ awaitingApprovalCalls = awaitingApprovalCalls.filter((call) => EDIT_TOOL_NAMES.has(call.request.name));
540
+ }
541
+ // Process pending tool calls sequentially to reduce UI chaos
542
+ for (const call of awaitingApprovalCalls) {
543
+ if (call.confirmationDetails?.onConfirm) {
544
+ try {
545
+ await call.confirmationDetails.onConfirm(ToolConfirmationOutcome.ProceedOnce);
546
+ }
547
+ catch (error) {
548
+ console.error(`Failed to auto-approve tool call ${call.request.callId}:`, error);
549
+ }
550
+ }
551
+ }
552
+ }
553
+ }, [toolCalls]);
500
554
  const handleCompletedTools = useCallback(async (completedToolCallsFromScheduler) => {
501
555
  if (isResponding) {
502
556
  return;
@@ -574,8 +628,7 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
574
628
  if (!config.getCheckpointingEnabled()) {
575
629
  return;
576
630
  }
577
- const restorableToolCalls = toolCalls.filter((toolCall) => (toolCall.request.name === 'replace' ||
578
- toolCall.request.name === 'write_file') &&
631
+ const restorableToolCalls = toolCalls.filter((toolCall) => EDIT_TOOL_NAMES.has(toolCall.request.name) &&
579
632
  toolCall.status === 'awaiting_approval');
580
633
  if (restorableToolCalls.length > 0) {
581
634
  const checkpointDir = storage.getProjectTempCheckpointsDir();
@@ -659,6 +712,10 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
659
712
  pendingHistoryItems,
660
713
  thought,
661
714
  cancelOngoingRequest,
715
+ pendingToolCalls: toolCalls,
716
+ handleApprovalModeChange,
717
+ activePtyId,
718
+ loopDetectionConfirmationRequest,
662
719
  };
663
720
  };
664
721
  //# sourceMappingURL=useGeminiStream.js.map