@google/gemini-cli 0.26.0-preview.4 → 0.27.0-nightly.20260126.cb772a5b7
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.
- package/README.md +18 -1
- package/dist/google-gemini-cli-0.27.0-nightly.20260121.97aac696f.tgz +0 -0
- package/dist/package.json +3 -4
- package/dist/src/commands/extensions.js +4 -1
- package/dist/src/commands/extensions.js.map +1 -1
- package/dist/src/commands/hooks.js +4 -1
- package/dist/src/commands/hooks.js.map +1 -1
- package/dist/src/commands/mcp/enableDisable.d.ts +13 -0
- package/dist/src/commands/mcp/enableDisable.js +122 -0
- package/dist/src/commands/mcp/enableDisable.js.map +1 -0
- package/dist/src/commands/mcp/list.d.ts +2 -0
- package/dist/src/commands/mcp/list.js +1 -1
- package/dist/src/commands/mcp/list.js.map +1 -1
- package/dist/src/commands/mcp.js +7 -1
- package/dist/src/commands/mcp.js.map +1 -1
- package/dist/src/commands/mcp.test.js +3 -1
- package/dist/src/commands/mcp.test.js.map +1 -1
- package/dist/src/commands/skills.js +4 -1
- package/dist/src/commands/skills.js.map +1 -1
- package/dist/src/config/config.d.ts +4 -0
- package/dist/src/config/config.js +41 -20
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +181 -15
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/keyBindings.d.ts +8 -5
- package/dist/src/config/keyBindings.js +38 -32
- package/dist/src/config/keyBindings.js.map +1 -1
- package/dist/src/config/keyBindings.test.js +8 -5
- package/dist/src/config/keyBindings.test.js.map +1 -1
- package/dist/src/config/mcp/index.d.ts +6 -0
- package/dist/src/config/mcp/index.js +7 -0
- package/dist/src/config/mcp/index.js.map +1 -0
- package/dist/src/config/mcp/mcpServerEnablement.d.ts +145 -0
- package/dist/src/config/mcp/mcpServerEnablement.js +254 -0
- package/dist/src/config/mcp/mcpServerEnablement.js.map +1 -0
- package/dist/src/config/mcp/mcpServerEnablement.test.js +147 -0
- package/dist/src/config/mcp/mcpServerEnablement.test.js.map +1 -0
- package/dist/src/config/sandboxConfig.test.js +11 -5
- package/dist/src/config/sandboxConfig.test.js.map +1 -1
- package/dist/src/config/settings.js +76 -0
- package/dist/src/config/settings.js.map +1 -1
- package/dist/src/config/settings.test.js +44 -0
- package/dist/src/config/settings.test.js.map +1 -1
- package/dist/src/config/settingsSchema.d.ts +21 -78
- package/dist/src/config/settingsSchema.js +21 -79
- package/dist/src/config/settingsSchema.js.map +1 -1
- package/dist/src/config/settingsSchema.test.js +1 -1
- package/dist/src/config/settingsSchema.test.js.map +1 -1
- package/dist/src/config/settings_repro.test.js +6 -2
- package/dist/src/config/settings_repro.test.js.map +1 -1
- package/dist/src/gemini.js +12 -7
- package/dist/src/gemini.js.map +1 -1
- package/dist/src/gemini.test.js +140 -10
- package/dist/src/gemini.test.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/generated/git-commit.js.map +1 -1
- package/dist/src/nonInteractiveCli.js +11 -3
- package/dist/src/nonInteractiveCli.js.map +1 -1
- package/dist/src/nonInteractiveCli.test.js +193 -3
- package/dist/src/nonInteractiveCli.test.js.map +1 -1
- package/dist/src/nonInteractiveCliCommands.js +6 -1
- package/dist/src/nonInteractiveCliCommands.js.map +1 -1
- package/dist/src/services/BuiltinCommandLoader.js +2 -0
- package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
- package/dist/src/services/FileCommandLoader.js +12 -4
- package/dist/src/services/FileCommandLoader.js.map +1 -1
- package/dist/src/services/FileCommandLoader.test.js +56 -0
- package/dist/src/services/FileCommandLoader.test.js.map +1 -1
- package/dist/src/test-utils/mockCommandContext.js +2 -0
- package/dist/src/test-utils/mockCommandContext.js.map +1 -1
- package/dist/src/test-utils/persistentStateFake.d.ts +26 -0
- package/dist/src/test-utils/persistentStateFake.js +39 -0
- package/dist/src/test-utils/persistentStateFake.js.map +1 -0
- package/dist/src/test-utils/render.d.ts +10 -1
- package/dist/src/test-utils/render.js +45 -16
- package/dist/src/test-utils/render.js.map +1 -1
- package/dist/src/ui/App.test.js +96 -38
- package/dist/src/ui/App.test.js.map +1 -1
- package/dist/src/ui/AppContainer.js +78 -18
- package/dist/src/ui/AppContainer.js.map +1 -1
- package/dist/src/ui/AppContainer.test.js +185 -19
- package/dist/src/ui/AppContainer.test.js.map +1 -1
- package/dist/src/ui/auth/ApiAuthDialog.test.js +5 -5
- package/dist/src/ui/auth/ApiAuthDialog.test.js.map +1 -1
- package/dist/src/ui/auth/AuthDialog.test.js +13 -9
- package/dist/src/ui/auth/AuthDialog.test.js.map +1 -1
- package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.js +6 -6
- package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.js.map +1 -1
- package/dist/src/ui/commands/aboutCommand.js +2 -0
- package/dist/src/ui/commands/aboutCommand.js.map +1 -1
- package/dist/src/ui/commands/aboutCommand.test.js +12 -0
- package/dist/src/ui/commands/aboutCommand.test.js.map +1 -1
- package/dist/src/ui/commands/agentsCommand.js +75 -4
- package/dist/src/ui/commands/agentsCommand.js.map +1 -1
- package/dist/src/ui/commands/agentsCommand.test.js +114 -0
- package/dist/src/ui/commands/agentsCommand.test.js.map +1 -1
- package/dist/src/ui/commands/directoryCommand.js +53 -49
- package/dist/src/ui/commands/directoryCommand.js.map +1 -1
- package/dist/src/ui/commands/directoryCommand.test.js +79 -23
- package/dist/src/ui/commands/directoryCommand.test.js.map +1 -1
- package/dist/src/ui/commands/initCommand.test.js +8 -4
- package/dist/src/ui/commands/initCommand.test.js.map +1 -1
- package/dist/src/ui/commands/mcpCommand.js +136 -5
- package/dist/src/ui/commands/mcpCommand.js.map +1 -1
- package/dist/src/ui/commands/policiesCommand.js +33 -20
- package/dist/src/ui/commands/policiesCommand.js.map +1 -1
- package/dist/src/ui/commands/policiesCommand.test.js +7 -4
- package/dist/src/ui/commands/policiesCommand.test.js.map +1 -1
- package/dist/src/ui/commands/rewindCommand.d.ts +7 -0
- package/dist/src/ui/commands/rewindCommand.js +132 -0
- package/dist/src/ui/commands/rewindCommand.js.map +1 -0
- package/dist/src/ui/commands/rewindCommand.test.js +242 -0
- package/dist/src/ui/commands/rewindCommand.test.js.map +1 -0
- package/dist/src/ui/commands/skillsCommand.js +6 -4
- package/dist/src/ui/commands/skillsCommand.js.map +1 -1
- package/dist/src/ui/commands/skillsCommand.test.js +17 -3
- package/dist/src/ui/commands/skillsCommand.test.js.map +1 -1
- package/dist/src/ui/commands/types.d.ts +5 -3
- package/dist/src/ui/commands/types.js.map +1 -1
- package/dist/src/ui/components/AboutBox.d.ts +1 -0
- package/dist/src/ui/components/AboutBox.js +5 -1
- package/dist/src/ui/components/AboutBox.js.map +1 -1
- package/dist/src/ui/components/AboutBox.test.js +8 -2
- package/dist/src/ui/components/AboutBox.test.js.map +1 -1
- package/dist/src/ui/components/AgentConfigDialog.d.ts +18 -0
- package/dist/src/ui/components/AgentConfigDialog.js +296 -0
- package/dist/src/ui/components/AgentConfigDialog.js.map +1 -0
- package/dist/src/ui/components/AgentConfigDialog.test.js +241 -0
- package/dist/src/ui/components/AgentConfigDialog.test.js.map +1 -0
- package/dist/src/ui/components/AlternateBufferQuittingDisplay.js +9 -2
- package/dist/src/ui/components/AlternateBufferQuittingDisplay.js.map +1 -1
- package/dist/src/ui/components/AlternateBufferQuittingDisplay.test.js +54 -25
- package/dist/src/ui/components/AlternateBufferQuittingDisplay.test.js.map +1 -1
- package/dist/src/ui/components/AppHeader.js +4 -1
- package/dist/src/ui/components/AppHeader.js.map +1 -1
- package/dist/src/ui/components/AppHeader.test.js +95 -22
- package/dist/src/ui/components/AppHeader.test.js.map +1 -1
- package/dist/src/ui/components/{AutoAcceptIndicator.d.ts → ApprovalModeIndicator.d.ts} +2 -2
- package/dist/src/ui/components/{AutoAcceptIndicator.js → ApprovalModeIndicator.js} +8 -3
- package/dist/src/ui/components/ApprovalModeIndicator.js.map +1 -0
- package/dist/src/ui/components/ApprovalModeIndicator.test.d.ts +6 -0
- package/dist/src/ui/components/{AutoAcceptIndicator.test.js → ApprovalModeIndicator.test.js} +13 -7
- package/dist/src/ui/components/ApprovalModeIndicator.test.js.map +1 -0
- package/dist/src/ui/components/AskUserDialog.d.ts +39 -0
- package/dist/src/ui/components/AskUserDialog.js +618 -0
- package/dist/src/ui/components/AskUserDialog.js.map +1 -0
- package/dist/src/ui/components/AskUserDialog.test.d.ts +6 -0
- package/dist/src/ui/components/AskUserDialog.test.js +598 -0
- package/dist/src/ui/components/AskUserDialog.test.js.map +1 -0
- package/dist/src/ui/components/Composer.d.ts +3 -1
- package/dist/src/ui/components/Composer.js +5 -5
- package/dist/src/ui/components/Composer.js.map +1 -1
- package/dist/src/ui/components/Composer.test.js +6 -6
- package/dist/src/ui/components/Composer.test.js.map +1 -1
- package/dist/src/ui/components/ConfigInitDisplay.js +3 -4
- package/dist/src/ui/components/ConfigInitDisplay.js.map +1 -1
- package/dist/src/ui/components/ConfigInitDisplay.test.js +13 -29
- package/dist/src/ui/components/ConfigInitDisplay.test.js.map +1 -1
- package/dist/src/ui/components/ContextUsageDisplay.test.js +7 -3
- package/dist/src/ui/components/ContextUsageDisplay.test.js.map +1 -1
- package/dist/src/ui/components/DialogManager.js +13 -0
- package/dist/src/ui/components/DialogManager.js.map +1 -1
- package/dist/src/ui/components/DialogManager.test.js +24 -0
- package/dist/src/ui/components/DialogManager.test.js.map +1 -1
- package/dist/src/ui/components/FolderTrustDialog.test.js +3 -1
- package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
- package/dist/src/ui/components/Footer.test.js +7 -0
- package/dist/src/ui/components/Footer.test.js.map +1 -1
- package/dist/src/ui/components/Help.js +5 -2
- package/dist/src/ui/components/Help.js.map +1 -1
- package/dist/src/ui/components/HistoryItemDisplay.js +1 -1
- package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
- package/dist/src/ui/components/InputPrompt.js +32 -20
- package/dist/src/ui/components/InputPrompt.js.map +1 -1
- package/dist/src/ui/components/InputPrompt.test.js +75 -1
- package/dist/src/ui/components/InputPrompt.test.js.map +1 -1
- package/dist/src/ui/components/MultiFolderTrustDialog.js +2 -1
- package/dist/src/ui/components/MultiFolderTrustDialog.js.map +1 -1
- package/dist/src/ui/components/MultiFolderTrustDialog.test.js +12 -10
- package/dist/src/ui/components/MultiFolderTrustDialog.test.js.map +1 -1
- package/dist/src/ui/components/Notifications.js +14 -20
- package/dist/src/ui/components/Notifications.js.map +1 -1
- package/dist/src/ui/components/Notifications.test.js +45 -35
- package/dist/src/ui/components/Notifications.test.js.map +1 -1
- package/dist/src/ui/components/RewindViewer.d.ts +1 -1
- package/dist/src/ui/components/RewindViewer.js +65 -17
- package/dist/src/ui/components/RewindViewer.js.map +1 -1
- package/dist/src/ui/components/RewindViewer.test.js +5 -3
- package/dist/src/ui/components/RewindViewer.test.js.map +1 -1
- package/dist/src/ui/components/SessionBrowser.js +3 -2
- package/dist/src/ui/components/SessionBrowser.js.map +1 -1
- package/dist/src/ui/components/SessionBrowser.test.js +10 -3
- package/dist/src/ui/components/SessionBrowser.test.js.map +1 -1
- package/dist/src/ui/components/SettingsDialog.d.ts +1 -1
- package/dist/src/ui/components/SettingsDialog.js +266 -516
- package/dist/src/ui/components/SettingsDialog.js.map +1 -1
- package/dist/src/ui/components/SettingsDialog.test.js +2 -2
- package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
- package/dist/src/ui/components/ShellInputPrompt.test.js +17 -8
- package/dist/src/ui/components/ShellInputPrompt.test.js.map +1 -1
- package/dist/src/ui/components/SuggestionsDisplay.d.ts +1 -1
- package/dist/src/ui/components/SuggestionsDisplay.js +4 -3
- package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -1
- package/dist/src/ui/components/ToolConfirmationQueue.d.ts +12 -0
- package/dist/src/ui/components/ToolConfirmationQueue.js +30 -0
- package/dist/src/ui/components/ToolConfirmationQueue.js.map +1 -0
- package/dist/src/ui/components/ToolConfirmationQueue.test.d.ts +6 -0
- package/dist/src/ui/components/ToolConfirmationQueue.test.js +71 -0
- package/dist/src/ui/components/ToolConfirmationQueue.test.js.map +1 -0
- package/dist/src/ui/components/messages/RedirectionConfirmation.test.js +2 -4
- package/dist/src/ui/components/messages/RedirectionConfirmation.test.js.map +1 -1
- package/dist/src/ui/components/messages/ShellToolMessage.js +6 -41
- package/dist/src/ui/components/messages/ShellToolMessage.js.map +1 -1
- package/dist/src/ui/components/messages/ToolConfirmationMessage.d.ts +3 -2
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js +61 -76
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +20 -7
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -1
- package/dist/src/ui/components/messages/ToolGroupMessage.js +34 -18
- package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
- package/dist/src/ui/components/messages/ToolGroupMessage.test.js +209 -24
- package/dist/src/ui/components/messages/ToolGroupMessage.test.js.map +1 -1
- package/dist/src/ui/components/messages/ToolMessage.d.ts +1 -1
- package/dist/src/ui/components/messages/ToolMessage.js +7 -29
- package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
- package/dist/src/ui/components/messages/ToolMessageFocusHint.test.d.ts +6 -0
- package/dist/src/ui/components/messages/ToolMessageFocusHint.test.js +89 -0
- package/dist/src/ui/components/messages/ToolMessageFocusHint.test.js.map +1 -0
- package/dist/src/ui/components/messages/ToolShared.d.ts +26 -0
- package/dist/src/ui/components/messages/ToolShared.js +59 -6
- package/dist/src/ui/components/messages/ToolShared.js.map +1 -1
- package/dist/src/ui/components/shared/BaseSelectionList.d.ts +3 -1
- package/dist/src/ui/components/shared/BaseSelectionList.js +4 -2
- package/dist/src/ui/components/shared/BaseSelectionList.js.map +1 -1
- package/dist/src/ui/components/shared/BaseSelectionList.test.js +1 -0
- package/dist/src/ui/components/shared/BaseSelectionList.test.js.map +1 -1
- package/dist/src/ui/components/shared/BaseSettingsDialog.d.ts +72 -0
- package/dist/src/ui/components/shared/BaseSettingsDialog.js +293 -0
- package/dist/src/ui/components/shared/BaseSettingsDialog.js.map +1 -0
- package/dist/src/ui/components/shared/BaseSettingsDialog.test.d.ts +6 -0
- package/dist/src/ui/components/shared/BaseSettingsDialog.test.js +434 -0
- package/dist/src/ui/components/shared/BaseSettingsDialog.test.js.map +1 -0
- package/dist/src/ui/components/shared/ExpandableText.d.ts +17 -0
- package/dist/src/ui/components/{PrepareLabel.js → shared/ExpandableText.js} +30 -15
- package/dist/src/ui/components/shared/ExpandableText.js.map +1 -0
- package/dist/src/ui/components/shared/ExpandableText.test.d.ts +6 -0
- package/dist/src/ui/components/{PrepareLabel.test.js → shared/ExpandableText.test.js} +22 -11
- package/dist/src/ui/components/shared/ExpandableText.test.js.map +1 -0
- package/dist/src/ui/components/shared/TabHeader.d.ts +51 -0
- package/dist/src/ui/components/shared/TabHeader.js +42 -0
- package/dist/src/ui/components/shared/TabHeader.js.map +1 -0
- package/dist/src/ui/components/shared/TabHeader.test.d.ts +6 -0
- package/dist/src/ui/components/shared/TabHeader.test.js +106 -0
- package/dist/src/ui/components/shared/TabHeader.test.js.map +1 -0
- package/dist/src/ui/components/shared/TextInput.test.js +32 -24
- package/dist/src/ui/components/shared/TextInput.test.js.map +1 -1
- package/dist/src/ui/components/shared/text-buffer.d.ts +13 -0
- package/dist/src/ui/components/shared/text-buffer.js +173 -14
- package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
- package/dist/src/ui/components/shared/text-buffer.test.js +256 -44
- package/dist/src/ui/components/shared/text-buffer.test.js.map +1 -1
- package/dist/src/ui/components/shared/vim-buffer-actions.test.js +4 -1
- package/dist/src/ui/components/shared/vim-buffer-actions.test.js.map +1 -1
- package/dist/src/ui/components/views/McpStatus.d.ts +1 -0
- package/dist/src/ui/components/views/McpStatus.js +30 -18
- package/dist/src/ui/components/views/McpStatus.js.map +1 -1
- package/dist/src/ui/components/views/McpStatus.test.js +7 -0
- package/dist/src/ui/components/views/McpStatus.test.js.map +1 -1
- package/dist/src/ui/constants/tips.js +2 -2
- package/dist/src/ui/constants/tips.js.map +1 -1
- package/dist/src/ui/constants.d.ts +1 -0
- package/dist/src/ui/constants.js +1 -0
- package/dist/src/ui/constants.js.map +1 -1
- package/dist/src/ui/contexts/KeypressContext.d.ts +3 -2
- package/dist/src/ui/contexts/KeypressContext.js +33 -25
- package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
- package/dist/src/ui/contexts/KeypressContext.test.js +151 -41
- package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
- package/dist/src/ui/contexts/MouseContext.test.js +8 -8
- package/dist/src/ui/contexts/MouseContext.test.js.map +1 -1
- package/dist/src/ui/contexts/ToolActionsContext.d.ts +20 -0
- package/dist/src/ui/contexts/ToolActionsContext.js +74 -0
- package/dist/src/ui/contexts/ToolActionsContext.js.map +1 -0
- package/dist/src/ui/contexts/ToolActionsContext.test.d.ts +6 -0
- package/dist/src/ui/contexts/ToolActionsContext.test.js +135 -0
- package/dist/src/ui/contexts/ToolActionsContext.test.js.map +1 -0
- package/dist/src/ui/contexts/UIActionsContext.d.ts +3 -1
- package/dist/src/ui/contexts/UIActionsContext.js.map +1 -1
- package/dist/src/ui/contexts/UIStateContext.d.ts +6 -2
- package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
- package/dist/src/ui/hooks/atCommandProcessor.js +19 -4
- package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/keyToAnsi.js +1 -1
- package/dist/src/ui/hooks/keyToAnsi.js.map +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.d.ts +3 -1
- package/dist/src/ui/hooks/slashCommandProcessor.js +24 -7
- package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.test.js +126 -30
- package/dist/src/ui/hooks/slashCommandProcessor.test.js.map +1 -1
- package/dist/src/ui/hooks/toolMapping.js +8 -11
- package/dist/src/ui/hooks/toolMapping.js.map +1 -1
- package/dist/src/ui/hooks/toolMapping.test.js +27 -6
- package/dist/src/ui/hooks/toolMapping.test.js.map +1 -1
- package/dist/src/ui/hooks/{useAutoAcceptIndicator.d.ts → useApprovalModeIndicator.d.ts} +2 -2
- package/dist/src/ui/hooks/{useAutoAcceptIndicator.js → useApprovalModeIndicator.js} +25 -11
- package/dist/src/ui/hooks/useApprovalModeIndicator.js.map +1 -0
- package/dist/src/ui/hooks/useApprovalModeIndicator.test.d.ts +6 -0
- package/dist/src/ui/hooks/{useAutoAcceptIndicator.test.js → useApprovalModeIndicator.test.js} +56 -31
- package/dist/src/ui/hooks/useApprovalModeIndicator.test.js.map +1 -0
- package/dist/src/ui/hooks/useConfirmingTool.d.ts +16 -0
- package/dist/src/ui/hooks/useConfirmingTool.js +39 -0
- package/dist/src/ui/hooks/useConfirmingTool.js.map +1 -0
- package/dist/src/ui/hooks/useGeminiStream.d.ts +1 -1
- package/dist/src/ui/hooks/useGeminiStream.js +20 -8
- package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
- package/dist/src/ui/hooks/useGeminiStream.test.js +79 -19
- package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
- package/dist/src/ui/hooks/useIncludeDirsTrust.d.ts +1 -1
- package/dist/src/ui/hooks/useIncludeDirsTrust.js +9 -20
- package/dist/src/ui/hooks/useIncludeDirsTrust.js.map +1 -1
- package/dist/src/ui/hooks/useIncludeDirsTrust.test.js +33 -12
- package/dist/src/ui/hooks/useIncludeDirsTrust.test.js.map +1 -1
- package/dist/src/ui/hooks/useKeypress.test.js +10 -3
- package/dist/src/ui/hooks/useKeypress.test.js.map +1 -1
- package/dist/src/ui/hooks/useLoadingIndicator.d.ts +7 -1
- package/dist/src/ui/hooks/useLoadingIndicator.js +3 -3
- package/dist/src/ui/hooks/useLoadingIndicator.js.map +1 -1
- package/dist/src/ui/hooks/useLoadingIndicator.test.js +17 -9
- package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -1
- package/dist/src/ui/hooks/usePhraseCycler.d.ts +2 -2
- package/dist/src/ui/hooks/usePhraseCycler.js +4 -14
- package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
- package/dist/src/ui/hooks/usePhraseCycler.test.js +13 -42
- package/dist/src/ui/hooks/usePhraseCycler.test.js.map +1 -1
- package/dist/src/ui/hooks/useSelectionList.d.ts +4 -1
- package/dist/src/ui/hooks/useSelectionList.js +51 -13
- package/dist/src/ui/hooks/useSelectionList.js.map +1 -1
- package/dist/src/ui/hooks/useSelectionList.test.js +35 -3
- package/dist/src/ui/hooks/useSelectionList.test.js.map +1 -1
- package/dist/src/ui/hooks/useSessionResume.test.js +3 -2
- package/dist/src/ui/hooks/useSessionResume.test.js.map +1 -1
- package/dist/src/ui/hooks/useShellInactivityStatus.d.ts +26 -0
- package/dist/src/ui/hooks/useShellInactivityStatus.js +46 -0
- package/dist/src/ui/hooks/useShellInactivityStatus.js.map +1 -0
- package/dist/src/ui/hooks/useShellInactivityStatus.test.d.ts +6 -0
- package/dist/src/ui/hooks/useShellInactivityStatus.test.js +84 -0
- package/dist/src/ui/hooks/useShellInactivityStatus.test.js.map +1 -0
- package/dist/src/ui/hooks/useTabbedNavigation.d.ts +53 -0
- package/dist/src/ui/hooks/useTabbedNavigation.js +150 -0
- package/dist/src/ui/hooks/useTabbedNavigation.js.map +1 -0
- package/dist/src/ui/hooks/useTabbedNavigation.test.d.ts +6 -0
- package/dist/src/ui/hooks/useTabbedNavigation.test.js +187 -0
- package/dist/src/ui/hooks/useTabbedNavigation.test.js.map +1 -0
- package/dist/src/ui/hooks/useTips.d.ts +10 -0
- package/dist/src/ui/hooks/useTips.js +18 -0
- package/dist/src/ui/hooks/useTips.js.map +1 -0
- package/dist/src/ui/hooks/useTips.test.d.ts +6 -0
- package/dist/src/ui/hooks/useTips.test.js +33 -0
- package/dist/src/ui/hooks/useTips.test.js.map +1 -0
- package/dist/src/ui/hooks/useToolExecutionScheduler.d.ts +30 -0
- package/dist/src/ui/hooks/useToolExecutionScheduler.js +113 -0
- package/dist/src/ui/hooks/useToolExecutionScheduler.js.map +1 -0
- package/dist/src/ui/hooks/useToolExecutionScheduler.test.d.ts +6 -0
- package/dist/src/ui/hooks/useToolExecutionScheduler.test.js +296 -0
- package/dist/src/ui/hooks/useToolExecutionScheduler.test.js.map +1 -0
- package/dist/src/ui/hooks/useToolScheduler.d.ts +29 -0
- package/dist/src/ui/hooks/useToolScheduler.js +30 -0
- package/dist/src/ui/hooks/useToolScheduler.js.map +1 -0
- package/dist/src/ui/hooks/useToolScheduler.test.js +1 -1
- package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
- package/dist/src/ui/hooks/useToolSchedulerFacade.test.d.ts +6 -0
- package/dist/src/ui/hooks/useToolSchedulerFacade.test.js +45 -0
- package/dist/src/ui/hooks/useToolSchedulerFacade.test.js.map +1 -0
- package/dist/src/ui/hooks/useTurnActivityMonitor.d.ts +16 -0
- package/dist/src/ui/hooks/useTurnActivityMonitor.js +49 -0
- package/dist/src/ui/hooks/useTurnActivityMonitor.js.map +1 -0
- package/dist/src/ui/hooks/useTurnActivityMonitor.test.d.ts +6 -0
- package/dist/src/ui/hooks/useTurnActivityMonitor.test.js +97 -0
- package/dist/src/ui/hooks/useTurnActivityMonitor.test.js.map +1 -0
- package/dist/src/ui/hooks/vim.js +5 -3
- package/dist/src/ui/hooks/vim.js.map +1 -1
- package/dist/src/ui/hooks/vim.test.js +4 -2
- package/dist/src/ui/hooks/vim.test.js.map +1 -1
- package/dist/src/ui/keyMatchers.js +5 -13
- package/dist/src/ui/keyMatchers.js.map +1 -1
- package/dist/src/ui/keyMatchers.test.js +23 -20
- package/dist/src/ui/keyMatchers.test.js.map +1 -1
- package/dist/src/ui/layouts/DefaultAppLayout.js +10 -2
- package/dist/src/ui/layouts/DefaultAppLayout.js.map +1 -1
- package/dist/src/ui/noninteractive/nonInteractiveUi.js +1 -0
- package/dist/src/ui/noninteractive/nonInteractiveUi.js.map +1 -1
- package/dist/src/ui/types.d.ts +11 -3
- package/dist/src/ui/types.js.map +1 -1
- package/dist/src/ui/utils/clipboardUtils.d.ts +4 -4
- package/dist/src/ui/utils/clipboardUtils.js +198 -12
- package/dist/src/ui/utils/clipboardUtils.js.map +1 -1
- package/dist/src/ui/utils/clipboardUtils.test.js +219 -47
- package/dist/src/ui/utils/clipboardUtils.test.js.map +1 -1
- package/dist/src/ui/utils/clipboardUtils.windows.test.js +3 -0
- package/dist/src/ui/utils/clipboardUtils.windows.test.js.map +1 -1
- package/dist/src/ui/utils/commandUtils.test.js +11 -3
- package/dist/src/ui/utils/commandUtils.test.js.map +1 -1
- package/dist/src/ui/utils/directoryUtils.d.ts +10 -0
- package/dist/src/ui/utils/directoryUtils.js +12 -0
- package/dist/src/ui/utils/directoryUtils.js.map +1 -1
- package/dist/src/ui/utils/directoryUtils.test.js +8 -4
- package/dist/src/ui/utils/directoryUtils.test.js.map +1 -1
- package/dist/src/ui/utils/formatters.d.ts +1 -1
- package/dist/src/ui/utils/formatters.js +2 -3
- package/dist/src/ui/utils/formatters.js.map +1 -1
- package/dist/src/ui/utils/highlight.d.ts +2 -2
- package/dist/src/ui/utils/highlight.js +9 -3
- package/dist/src/ui/utils/highlight.js.map +1 -1
- package/dist/src/ui/utils/highlight.test.js +3 -0
- package/dist/src/ui/utils/highlight.test.js.map +1 -1
- package/dist/src/ui/utils/terminalCapabilityManager.d.ts +1 -2
- package/dist/src/ui/utils/terminalCapabilityManager.js +2 -8
- package/dist/src/ui/utils/terminalCapabilityManager.js.map +1 -1
- package/dist/src/ui/utils/terminalCapabilityManager.test.js +2 -3
- package/dist/src/ui/utils/terminalCapabilityManager.test.js.map +1 -1
- package/dist/src/ui/utils/terminalSetup.test.js +5 -3
- package/dist/src/ui/utils/terminalSetup.test.js.map +1 -1
- package/dist/src/ui/utils/textUtils.d.ts +5 -0
- package/dist/src/ui/utils/textUtils.js +14 -0
- package/dist/src/ui/utils/textUtils.js.map +1 -1
- package/dist/src/ui/utils/textUtils.test.js +19 -1
- package/dist/src/ui/utils/textUtils.test.js.map +1 -1
- package/dist/src/utils/cleanup.js +15 -0
- package/dist/src/utils/cleanup.js.map +1 -1
- package/dist/src/utils/events.d.ts +1 -6
- package/dist/src/utils/events.js +0 -2
- package/dist/src/utils/events.js.map +1 -1
- package/dist/src/utils/events.test.js +4 -4
- package/dist/src/utils/events.test.js.map +1 -1
- package/dist/src/utils/handleAutoUpdate.test.js +3 -0
- package/dist/src/utils/handleAutoUpdate.test.js.map +1 -1
- package/dist/src/utils/installationInfo.js +4 -2
- package/dist/src/utils/installationInfo.js.map +1 -1
- package/dist/src/utils/persistentState.d.ts +2 -0
- package/dist/src/utils/persistentState.js.map +1 -1
- package/dist/src/utils/windowTitle.d.ts +2 -1
- package/dist/src/utils/windowTitle.js +8 -1
- package/dist/src/utils/windowTitle.js.map +1 -1
- package/dist/src/utils/windowTitle.test.js +25 -1
- package/dist/src/utils/windowTitle.test.js.map +1 -1
- package/dist/src/zed-integration/zedIntegration.js +26 -5
- package/dist/src/zed-integration/zedIntegration.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -5
- package/dist/google-gemini-cli-0.26.0-preview.3.tgz +0 -0
- package/dist/src/ui/components/AutoAcceptIndicator.js.map +0 -1
- package/dist/src/ui/components/AutoAcceptIndicator.test.js.map +0 -1
- package/dist/src/ui/components/PrepareLabel.d.ts +0 -15
- package/dist/src/ui/components/PrepareLabel.js.map +0 -1
- package/dist/src/ui/components/PrepareLabel.test.js.map +0 -1
- package/dist/src/ui/hooks/useAutoAcceptIndicator.js.map +0 -1
- package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js.map +0 -1
- /package/dist/src/{ui/components/AutoAcceptIndicator.test.d.ts → config/mcp/mcpServerEnablement.test.d.ts} +0 -0
- /package/dist/src/ui/{components/PrepareLabel.test.d.ts → commands/rewindCommand.test.d.ts} +0 -0
- /package/dist/src/ui/{hooks/useAutoAcceptIndicator.test.d.ts → components/AgentConfigDialog.test.d.ts} +0 -0
package/dist/src/ui/hooks/{useAutoAcceptIndicator.test.js → useApprovalModeIndicator.test.js}
RENAMED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
import { describe, it, expect, vi, beforeEach, } from 'vitest';
|
|
7
7
|
import { act } from 'react';
|
|
8
8
|
import { renderHook } from '../../test-utils/render.js';
|
|
9
|
-
import {
|
|
9
|
+
import { useApprovalModeIndicator } from './useApprovalModeIndicator.js';
|
|
10
10
|
import { Config, ApprovalMode } from '@google/gemini-cli-core';
|
|
11
11
|
import { useKeypress } from './useKeypress.js';
|
|
12
12
|
import { MessageType } from '../types.js';
|
|
@@ -18,19 +18,22 @@ vi.mock('@google/gemini-cli-core', async () => {
|
|
|
18
18
|
Config: vi.fn(),
|
|
19
19
|
};
|
|
20
20
|
});
|
|
21
|
-
describe('
|
|
21
|
+
describe('useApprovalModeIndicator', () => {
|
|
22
22
|
let mockConfigInstance;
|
|
23
23
|
let capturedUseKeypressHandler;
|
|
24
24
|
let mockedUseKeypress;
|
|
25
25
|
beforeEach(() => {
|
|
26
26
|
vi.resetAllMocks();
|
|
27
27
|
Config.mockImplementation(() => {
|
|
28
|
-
const instanceGetApprovalModeMock = vi
|
|
28
|
+
const instanceGetApprovalModeMock = vi
|
|
29
|
+
.fn()
|
|
30
|
+
.mockReturnValue(ApprovalMode.DEFAULT);
|
|
29
31
|
const instanceSetApprovalModeMock = vi.fn();
|
|
30
32
|
const instance = {
|
|
31
33
|
getApprovalMode: instanceGetApprovalModeMock,
|
|
32
34
|
setApprovalMode: instanceSetApprovalModeMock,
|
|
33
35
|
isYoloModeDisabled: vi.fn().mockReturnValue(false),
|
|
36
|
+
isPlanEnabled: vi.fn().mockReturnValue(false),
|
|
34
37
|
isTrustedFolder: vi.fn().mockReturnValue(true),
|
|
35
38
|
getCoreTools: vi.fn().mockReturnValue([]),
|
|
36
39
|
getToolDiscoveryCommand: vi.fn().mockReturnValue(undefined),
|
|
@@ -61,7 +64,7 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
61
64
|
});
|
|
62
65
|
it('should initialize with ApprovalMode.AUTO_EDIT if config.getApprovalMode returns ApprovalMode.AUTO_EDIT', () => {
|
|
63
66
|
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.AUTO_EDIT);
|
|
64
|
-
const { result } = renderHook(() =>
|
|
67
|
+
const { result } = renderHook(() => useApprovalModeIndicator({
|
|
65
68
|
config: mockConfigInstance,
|
|
66
69
|
addItem: vi.fn(),
|
|
67
70
|
}));
|
|
@@ -70,7 +73,7 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
70
73
|
});
|
|
71
74
|
it('should initialize with ApprovalMode.DEFAULT if config.getApprovalMode returns ApprovalMode.DEFAULT', () => {
|
|
72
75
|
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
|
|
73
|
-
const { result } = renderHook(() =>
|
|
76
|
+
const { result } = renderHook(() => useApprovalModeIndicator({
|
|
74
77
|
config: mockConfigInstance,
|
|
75
78
|
addItem: vi.fn(),
|
|
76
79
|
}));
|
|
@@ -79,20 +82,21 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
79
82
|
});
|
|
80
83
|
it('should initialize with ApprovalMode.YOLO if config.getApprovalMode returns ApprovalMode.YOLO', () => {
|
|
81
84
|
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.YOLO);
|
|
82
|
-
const { result } = renderHook(() =>
|
|
85
|
+
const { result } = renderHook(() => useApprovalModeIndicator({
|
|
83
86
|
config: mockConfigInstance,
|
|
84
87
|
addItem: vi.fn(),
|
|
85
88
|
}));
|
|
86
89
|
expect(result.current).toBe(ApprovalMode.YOLO);
|
|
87
90
|
expect(mockConfigInstance.getApprovalMode).toHaveBeenCalledTimes(1);
|
|
88
91
|
});
|
|
89
|
-
it('should
|
|
92
|
+
it('should cycle the indicator and update config when Shift+Tab or Ctrl+Y is pressed', () => {
|
|
90
93
|
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
|
|
91
|
-
const { result } = renderHook(() =>
|
|
94
|
+
const { result } = renderHook(() => useApprovalModeIndicator({
|
|
92
95
|
config: mockConfigInstance,
|
|
93
96
|
addItem: vi.fn(),
|
|
94
97
|
}));
|
|
95
98
|
expect(result.current).toBe(ApprovalMode.DEFAULT);
|
|
99
|
+
// Shift+Tab cycles to AUTO_EDIT
|
|
96
100
|
act(() => {
|
|
97
101
|
capturedUseKeypressHandler({
|
|
98
102
|
name: 'tab',
|
|
@@ -106,16 +110,22 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
106
110
|
});
|
|
107
111
|
expect(mockConfigInstance.setApprovalMode).toHaveBeenCalledWith(ApprovalMode.YOLO);
|
|
108
112
|
expect(result.current).toBe(ApprovalMode.YOLO);
|
|
113
|
+
// Shift+Tab cycles back to DEFAULT (since PLAN is disabled by default in mock)
|
|
109
114
|
act(() => {
|
|
110
|
-
capturedUseKeypressHandler({
|
|
115
|
+
capturedUseKeypressHandler({
|
|
116
|
+
name: 'tab',
|
|
117
|
+
shift: true,
|
|
118
|
+
});
|
|
111
119
|
});
|
|
112
|
-
expect(mockConfigInstance.setApprovalMode).toHaveBeenCalledWith(ApprovalMode.
|
|
113
|
-
expect(result.current).toBe(ApprovalMode.
|
|
120
|
+
expect(mockConfigInstance.setApprovalMode).toHaveBeenCalledWith(ApprovalMode.AUTO_EDIT);
|
|
121
|
+
expect(result.current).toBe(ApprovalMode.AUTO_EDIT);
|
|
122
|
+
// Ctrl+Y toggles YOLO
|
|
114
123
|
act(() => {
|
|
115
124
|
capturedUseKeypressHandler({ name: 'y', ctrl: true });
|
|
116
125
|
});
|
|
117
126
|
expect(mockConfigInstance.setApprovalMode).toHaveBeenCalledWith(ApprovalMode.YOLO);
|
|
118
127
|
expect(result.current).toBe(ApprovalMode.YOLO);
|
|
128
|
+
// Shift+Tab from YOLO jumps to AUTO_EDIT
|
|
119
129
|
act(() => {
|
|
120
130
|
capturedUseKeypressHandler({
|
|
121
131
|
name: 'tab',
|
|
@@ -124,18 +134,33 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
124
134
|
});
|
|
125
135
|
expect(mockConfigInstance.setApprovalMode).toHaveBeenCalledWith(ApprovalMode.AUTO_EDIT);
|
|
126
136
|
expect(result.current).toBe(ApprovalMode.AUTO_EDIT);
|
|
137
|
+
});
|
|
138
|
+
it('should cycle through DEFAULT -> AUTO_EDIT -> PLAN -> DEFAULT when plan is enabled', () => {
|
|
139
|
+
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
|
|
140
|
+
mockConfigInstance.isPlanEnabled.mockReturnValue(true);
|
|
141
|
+
renderHook(() => useApprovalModeIndicator({
|
|
142
|
+
config: mockConfigInstance,
|
|
143
|
+
addItem: vi.fn(),
|
|
144
|
+
}));
|
|
145
|
+
// DEFAULT -> PLAN
|
|
127
146
|
act(() => {
|
|
128
|
-
capturedUseKeypressHandler({
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
147
|
+
capturedUseKeypressHandler({ name: 'tab', shift: true });
|
|
148
|
+
});
|
|
149
|
+
expect(mockConfigInstance.setApprovalMode).toHaveBeenCalledWith(ApprovalMode.PLAN);
|
|
150
|
+
// PLAN -> AUTO_EDIT
|
|
151
|
+
act(() => {
|
|
152
|
+
capturedUseKeypressHandler({ name: 'tab', shift: true });
|
|
153
|
+
});
|
|
154
|
+
expect(mockConfigInstance.setApprovalMode).toHaveBeenCalledWith(ApprovalMode.AUTO_EDIT);
|
|
155
|
+
// AUTO_EDIT -> DEFAULT
|
|
156
|
+
act(() => {
|
|
157
|
+
capturedUseKeypressHandler({ name: 'tab', shift: true });
|
|
132
158
|
});
|
|
133
159
|
expect(mockConfigInstance.setApprovalMode).toHaveBeenCalledWith(ApprovalMode.DEFAULT);
|
|
134
|
-
expect(result.current).toBe(ApprovalMode.DEFAULT);
|
|
135
160
|
});
|
|
136
161
|
it('should not toggle if only one key or other keys combinations are pressed', () => {
|
|
137
162
|
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
|
|
138
|
-
renderHook(() =>
|
|
163
|
+
renderHook(() => useApprovalModeIndicator({
|
|
139
164
|
config: mockConfigInstance,
|
|
140
165
|
addItem: vi.fn(),
|
|
141
166
|
}));
|
|
@@ -176,15 +201,15 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
176
201
|
act(() => {
|
|
177
202
|
capturedUseKeypressHandler({
|
|
178
203
|
name: 'a',
|
|
179
|
-
ctrl: true,
|
|
180
204
|
shift: true,
|
|
205
|
+
ctrl: true,
|
|
181
206
|
});
|
|
182
207
|
});
|
|
183
208
|
expect(mockConfigInstance.setApprovalMode).not.toHaveBeenCalled();
|
|
184
209
|
});
|
|
185
210
|
it('should update indicator when config value changes externally (useEffect dependency)', () => {
|
|
186
211
|
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
|
|
187
|
-
const { result, rerender } = renderHook((props) =>
|
|
212
|
+
const { result, rerender } = renderHook((props) => useApprovalModeIndicator(props), {
|
|
188
213
|
initialProps: {
|
|
189
214
|
config: mockConfigInstance,
|
|
190
215
|
addItem: vi.fn(),
|
|
@@ -209,7 +234,7 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
209
234
|
throw new Error('Cannot enable privileged approval modes in an untrusted folder.');
|
|
210
235
|
});
|
|
211
236
|
const mockAddItem = vi.fn();
|
|
212
|
-
const { result } = renderHook(() =>
|
|
237
|
+
const { result } = renderHook(() => useApprovalModeIndicator({
|
|
213
238
|
config: mockConfigInstance,
|
|
214
239
|
addItem: mockAddItem,
|
|
215
240
|
}));
|
|
@@ -229,7 +254,7 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
229
254
|
throw new Error('Cannot enable privileged approval modes in an untrusted folder.');
|
|
230
255
|
});
|
|
231
256
|
const mockAddItem = vi.fn();
|
|
232
|
-
const { result } = renderHook(() =>
|
|
257
|
+
const { result } = renderHook(() => useApprovalModeIndicator({
|
|
233
258
|
config: mockConfigInstance,
|
|
234
259
|
addItem: mockAddItem,
|
|
235
260
|
}));
|
|
@@ -249,7 +274,7 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
249
274
|
it('should disable YOLO mode when Ctrl+Y is pressed', () => {
|
|
250
275
|
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.YOLO);
|
|
251
276
|
const mockAddItem = vi.fn();
|
|
252
|
-
renderHook(() =>
|
|
277
|
+
renderHook(() => useApprovalModeIndicator({
|
|
253
278
|
config: mockConfigInstance,
|
|
254
279
|
addItem: mockAddItem,
|
|
255
280
|
}));
|
|
@@ -262,7 +287,7 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
262
287
|
it('should disable AUTO_EDIT mode when Shift+Tab is pressed', () => {
|
|
263
288
|
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.AUTO_EDIT);
|
|
264
289
|
const mockAddItem = vi.fn();
|
|
265
|
-
renderHook(() =>
|
|
290
|
+
renderHook(() => useApprovalModeIndicator({
|
|
266
291
|
config: mockConfigInstance,
|
|
267
292
|
addItem: mockAddItem,
|
|
268
293
|
}));
|
|
@@ -282,7 +307,7 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
282
307
|
throw new Error(errorMessage);
|
|
283
308
|
});
|
|
284
309
|
const mockAddItem = vi.fn();
|
|
285
|
-
renderHook(() =>
|
|
310
|
+
renderHook(() => useApprovalModeIndicator({
|
|
286
311
|
config: mockConfigInstance,
|
|
287
312
|
addItem: mockAddItem,
|
|
288
313
|
}));
|
|
@@ -318,7 +343,7 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
318
343
|
it('should not enable YOLO mode when Ctrl+Y is pressed and add an info message', () => {
|
|
319
344
|
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
|
|
320
345
|
const mockAddItem = vi.fn();
|
|
321
|
-
const { result } = renderHook(() =>
|
|
346
|
+
const { result } = renderHook(() => useApprovalModeIndicator({
|
|
322
347
|
config: mockConfigInstance,
|
|
323
348
|
addItem: mockAddItem,
|
|
324
349
|
}));
|
|
@@ -340,7 +365,7 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
340
365
|
it('should call onApprovalModeChange when switching to YOLO mode', () => {
|
|
341
366
|
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
|
|
342
367
|
const mockOnApprovalModeChange = vi.fn();
|
|
343
|
-
renderHook(() =>
|
|
368
|
+
renderHook(() => useApprovalModeIndicator({
|
|
344
369
|
config: mockConfigInstance,
|
|
345
370
|
onApprovalModeChange: mockOnApprovalModeChange,
|
|
346
371
|
}));
|
|
@@ -353,7 +378,7 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
353
378
|
it('should call onApprovalModeChange when switching to AUTO_EDIT mode', () => {
|
|
354
379
|
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
|
|
355
380
|
const mockOnApprovalModeChange = vi.fn();
|
|
356
|
-
renderHook(() =>
|
|
381
|
+
renderHook(() => useApprovalModeIndicator({
|
|
357
382
|
config: mockConfigInstance,
|
|
358
383
|
onApprovalModeChange: mockOnApprovalModeChange,
|
|
359
384
|
}));
|
|
@@ -366,7 +391,7 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
366
391
|
it('should call onApprovalModeChange when switching to DEFAULT mode', () => {
|
|
367
392
|
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.YOLO);
|
|
368
393
|
const mockOnApprovalModeChange = vi.fn();
|
|
369
|
-
renderHook(() =>
|
|
394
|
+
renderHook(() => useApprovalModeIndicator({
|
|
370
395
|
config: mockConfigInstance,
|
|
371
396
|
onApprovalModeChange: mockOnApprovalModeChange,
|
|
372
397
|
}));
|
|
@@ -378,7 +403,7 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
378
403
|
});
|
|
379
404
|
it('should not call onApprovalModeChange when callback is not provided', () => {
|
|
380
405
|
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
|
|
381
|
-
renderHook(() =>
|
|
406
|
+
renderHook(() => useApprovalModeIndicator({
|
|
382
407
|
config: mockConfigInstance,
|
|
383
408
|
}));
|
|
384
409
|
act(() => {
|
|
@@ -390,7 +415,7 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
390
415
|
it('should handle multiple mode changes correctly', () => {
|
|
391
416
|
mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
|
|
392
417
|
const mockOnApprovalModeChange = vi.fn();
|
|
393
|
-
renderHook(() =>
|
|
418
|
+
renderHook(() => useApprovalModeIndicator({
|
|
394
419
|
config: mockConfigInstance,
|
|
395
420
|
onApprovalModeChange: mockOnApprovalModeChange,
|
|
396
421
|
}));
|
|
@@ -407,4 +432,4 @@ describe('useAutoAcceptIndicator', () => {
|
|
|
407
432
|
expect(mockOnApprovalModeChange).toHaveBeenNthCalledWith(2, ApprovalMode.AUTO_EDIT);
|
|
408
433
|
});
|
|
409
434
|
});
|
|
410
|
-
//# sourceMappingURL=
|
|
435
|
+
//# sourceMappingURL=useApprovalModeIndicator.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useApprovalModeIndicator.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useApprovalModeIndicator.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { type IndividualToolCallDisplay } from '../types.js';
|
|
7
|
+
export interface ConfirmingToolState {
|
|
8
|
+
tool: IndividualToolCallDisplay;
|
|
9
|
+
index: number;
|
|
10
|
+
total: number;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Selects the "Head" of the confirmation queue.
|
|
14
|
+
* Returns the first tool in the pending state that requires confirmation.
|
|
15
|
+
*/
|
|
16
|
+
export declare function useConfirmingTool(): ConfirmingToolState | null;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { useMemo } from 'react';
|
|
7
|
+
import { useUIState } from '../contexts/UIStateContext.js';
|
|
8
|
+
import { ToolCallStatus, } from '../types.js';
|
|
9
|
+
/**
|
|
10
|
+
* Selects the "Head" of the confirmation queue.
|
|
11
|
+
* Returns the first tool in the pending state that requires confirmation.
|
|
12
|
+
*/
|
|
13
|
+
export function useConfirmingTool() {
|
|
14
|
+
// We use pendingHistoryItems to ensure we capture tools from both
|
|
15
|
+
// Gemini responses and Slash commands.
|
|
16
|
+
const { pendingHistoryItems } = useUIState();
|
|
17
|
+
return useMemo(() => {
|
|
18
|
+
// 1. Flatten all pending tools from all pending history groups
|
|
19
|
+
const allPendingTools = pendingHistoryItems
|
|
20
|
+
.filter((item) => item.type === 'tool_group')
|
|
21
|
+
.flatMap((group) => group.tools);
|
|
22
|
+
// 2. Filter for those requiring confirmation
|
|
23
|
+
const confirmingTools = allPendingTools.filter((t) => t.status === ToolCallStatus.Confirming);
|
|
24
|
+
if (confirmingTools.length === 0) {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
// 3. Select Head (FIFO)
|
|
28
|
+
const head = confirmingTools[0];
|
|
29
|
+
// 4. Calculate progress based on the full tool list
|
|
30
|
+
// This gives the user context of where they are in the current batch.
|
|
31
|
+
const headIndexInFullList = allPendingTools.findIndex((t) => t.callId === head.callId);
|
|
32
|
+
return {
|
|
33
|
+
tool: head,
|
|
34
|
+
index: headIndexInFullList + 1,
|
|
35
|
+
total: allPendingTools.length,
|
|
36
|
+
};
|
|
37
|
+
}, [pendingHistoryItems]);
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=useConfirmingTool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useConfirmingTool.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useConfirmingTool.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EACL,cAAc,GAGf,MAAM,aAAa,CAAC;AAQrB;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAC/B,kEAAkE;IAClE,uCAAuC;IACvC,MAAM,EAAE,mBAAmB,EAAE,GAAG,UAAU,EAAE,CAAC;IAE7C,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,+DAA+D;QAC/D,MAAM,eAAe,GAAG,mBAAmB;aACxC,MAAM,CACL,CAAC,IAAI,EAAgC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,YAAY,CACnE;aACA,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAEnC,6CAA6C;QAC7C,MAAM,eAAe,GAAG,eAAe,CAAC,MAAM,CAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,cAAc,CAAC,UAAU,CAC9C,CAAC;QAEF,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,wBAAwB;QACxB,MAAM,IAAI,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;QAEhC,oDAAoD;QACpD,sEAAsE;QACtE,MAAM,mBAAmB,GAAG,eAAe,CAAC,SAAS,CACnD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAChC,CAAC;QAEF,OAAO;YACL,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,mBAAmB,GAAG,CAAC;YAC9B,KAAK,EAAE,eAAe,CAAC,MAAM;SAC9B,CAAC;IACJ,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAC5B,CAAC"}
|
|
@@ -9,7 +9,7 @@ import { type PartListUnion } from '@google/genai';
|
|
|
9
9
|
import type { HistoryItem, HistoryItemWithoutId, SlashCommandProcessorResult } from '../types.js';
|
|
10
10
|
import { StreamingState } from '../types.js';
|
|
11
11
|
import type { UseHistoryManagerReturn } from './useHistoryManager.js';
|
|
12
|
-
import { type TrackedToolCall } from './
|
|
12
|
+
import { type TrackedToolCall } from './useToolScheduler.js';
|
|
13
13
|
import type { LoadedSettings } from '../../config/settings.js';
|
|
14
14
|
/**
|
|
15
15
|
* Manages the Gemini stream, including user input, command processing,
|
|
@@ -15,7 +15,7 @@ import { useStateAndRef } from './useStateAndRef.js';
|
|
|
15
15
|
import { useLogger } from './useLogger.js';
|
|
16
16
|
import { SHELL_COMMAND_NAME } from '../constants.js';
|
|
17
17
|
import { mapToDisplay as mapTrackedToolCallsToDisplay } from './toolMapping.js';
|
|
18
|
-
import {
|
|
18
|
+
import { useToolScheduler, } from './useToolScheduler.js';
|
|
19
19
|
import { promises as fs } from 'node:fs';
|
|
20
20
|
import path from 'node:path';
|
|
21
21
|
import { useSessionStats } from '../contexts/SessionContext.js';
|
|
@@ -66,7 +66,7 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
66
66
|
coreEvents.off(CoreEvent.RetryAttempt, handleRetryAttempt);
|
|
67
67
|
};
|
|
68
68
|
}, []);
|
|
69
|
-
const [toolCalls, scheduleToolCalls, markToolsAsSubmitted, setToolCallsForDisplay, cancelAllToolCalls, lastToolOutputTime,] =
|
|
69
|
+
const [toolCalls, scheduleToolCalls, markToolsAsSubmitted, setToolCallsForDisplay, cancelAllToolCalls, lastToolOutputTime,] = useToolScheduler(async (completedToolCallsFromScheduler) => {
|
|
70
70
|
// This onComplete is called when ALL scheduled tools for a given batch are done.
|
|
71
71
|
if (completedToolCallsFromScheduler.length > 0) {
|
|
72
72
|
// Add the final state of these tools to the history for display.
|
|
@@ -288,6 +288,8 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
288
288
|
}
|
|
289
289
|
// Handle @-commands (which might involve tool calls)
|
|
290
290
|
if (isAtCommand(trimmedQuery)) {
|
|
291
|
+
// Add user's turn before @ command processing for correct UI ordering.
|
|
292
|
+
addItem({ type: MessageType.USER, text: trimmedQuery }, userMessageTimestamp);
|
|
291
293
|
const atCommandResult = await handleAtCommand({
|
|
292
294
|
query: trimmedQuery,
|
|
293
295
|
config,
|
|
@@ -296,8 +298,6 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
296
298
|
messageId: userMessageTimestamp,
|
|
297
299
|
signal: abortSignal,
|
|
298
300
|
});
|
|
299
|
-
// Add user's turn after @ command processing is done.
|
|
300
|
-
addItem({ type: MessageType.USER, text: trimmedQuery }, userMessageTimestamp);
|
|
301
301
|
if (atCommandResult.error) {
|
|
302
302
|
onDebugMessage(atCommandResult.error);
|
|
303
303
|
return { queryToSend: null, shouldProceed: false };
|
|
@@ -497,7 +497,7 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
497
497
|
model: eventValue,
|
|
498
498
|
}, userMessageTimestamp);
|
|
499
499
|
}, [addItem, pendingHistoryItemRef, setPendingHistoryItem, settings]);
|
|
500
|
-
const handleAgentExecutionStoppedEvent = useCallback((reason, userMessageTimestamp, systemMessage) => {
|
|
500
|
+
const handleAgentExecutionStoppedEvent = useCallback((reason, userMessageTimestamp, systemMessage, contextCleared) => {
|
|
501
501
|
if (pendingHistoryItemRef.current) {
|
|
502
502
|
addItem(pendingHistoryItemRef.current, userMessageTimestamp);
|
|
503
503
|
setPendingHistoryItem(null);
|
|
@@ -506,9 +506,15 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
506
506
|
type: MessageType.INFO,
|
|
507
507
|
text: `Agent execution stopped: ${systemMessage?.trim() || reason}`,
|
|
508
508
|
}, userMessageTimestamp);
|
|
509
|
+
if (contextCleared) {
|
|
510
|
+
addItem({
|
|
511
|
+
type: MessageType.INFO,
|
|
512
|
+
text: 'Conversation context has been cleared.',
|
|
513
|
+
}, userMessageTimestamp);
|
|
514
|
+
}
|
|
509
515
|
setIsResponding(false);
|
|
510
516
|
}, [addItem, pendingHistoryItemRef, setPendingHistoryItem, setIsResponding]);
|
|
511
|
-
const handleAgentExecutionBlockedEvent = useCallback((reason, userMessageTimestamp, systemMessage) => {
|
|
517
|
+
const handleAgentExecutionBlockedEvent = useCallback((reason, userMessageTimestamp, systemMessage, contextCleared) => {
|
|
512
518
|
if (pendingHistoryItemRef.current) {
|
|
513
519
|
addItem(pendingHistoryItemRef.current, userMessageTimestamp);
|
|
514
520
|
setPendingHistoryItem(null);
|
|
@@ -517,6 +523,12 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
517
523
|
type: MessageType.WARNING,
|
|
518
524
|
text: `Agent execution blocked: ${systemMessage?.trim() || reason}`,
|
|
519
525
|
}, userMessageTimestamp);
|
|
526
|
+
if (contextCleared) {
|
|
527
|
+
addItem({
|
|
528
|
+
type: MessageType.INFO,
|
|
529
|
+
text: 'Conversation context has been cleared.',
|
|
530
|
+
}, userMessageTimestamp);
|
|
531
|
+
}
|
|
520
532
|
}, [addItem, pendingHistoryItemRef, setPendingHistoryItem]);
|
|
521
533
|
const processGeminiStreamEvents = useCallback(async (stream, userMessageTimestamp, signal) => {
|
|
522
534
|
let geminiMessageBuffer = '';
|
|
@@ -541,10 +553,10 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
541
553
|
handleErrorEvent(event.value, userMessageTimestamp);
|
|
542
554
|
break;
|
|
543
555
|
case ServerGeminiEventType.AgentExecutionStopped:
|
|
544
|
-
handleAgentExecutionStoppedEvent(event.value.reason, userMessageTimestamp, event.value.systemMessage);
|
|
556
|
+
handleAgentExecutionStoppedEvent(event.value.reason, userMessageTimestamp, event.value.systemMessage, event.value.contextCleared);
|
|
545
557
|
break;
|
|
546
558
|
case ServerGeminiEventType.AgentExecutionBlocked:
|
|
547
|
-
handleAgentExecutionBlockedEvent(event.value.reason, userMessageTimestamp, event.value.systemMessage);
|
|
559
|
+
handleAgentExecutionBlockedEvent(event.value.reason, userMessageTimestamp, event.value.systemMessage, event.value.contextCleared);
|
|
548
560
|
break;
|
|
549
561
|
case ServerGeminiEventType.ChatCompressed:
|
|
550
562
|
handleChatCompressionEvent(event.value, userMessageTimestamp);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGeminiStream.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useGeminiStream.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useGeminiStream.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useGeminiStream.ts"],"names":[],"mappings":"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"}
|