@google/gemini-cli 0.25.0-preview.0 → 0.26.0-nightly.20260119.20580d754
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/dist/google-gemini-cli-0.26.0-nightly.20260115.6cb3ae4e0.tgz +0 -0
- package/dist/package.json +4 -3
- package/dist/src/commands/extensions/configure.js +8 -1
- package/dist/src/commands/extensions/configure.js.map +1 -1
- package/dist/src/commands/hooks/migrate.js +1 -1
- package/dist/src/commands/hooks/migrate.js.map +1 -1
- package/dist/src/commands/mcp/list.js +2 -2
- package/dist/src/commands/mcp/list.js.map +1 -1
- package/dist/src/commands/mcp/list.test.js +25 -8
- package/dist/src/commands/mcp/list.test.js.map +1 -1
- package/dist/src/commands/skills/disable.js +6 -4
- package/dist/src/commands/skills/disable.js.map +1 -1
- package/dist/src/commands/skills/disable.test.js +16 -0
- package/dist/src/commands/skills/disable.test.js.map +1 -1
- package/dist/src/commands/skills/enable.test.js +3 -3
- package/dist/src/commands/skills/enable.test.js.map +1 -1
- package/dist/src/commands/skills/install.d.ts +1 -0
- package/dist/src/commands/skills/install.js +17 -2
- package/dist/src/commands/skills/install.js.map +1 -1
- package/dist/src/commands/skills/install.test.js +43 -5
- package/dist/src/commands/skills/install.test.js.map +1 -1
- package/dist/src/config/config.d.ts +3 -3
- package/dist/src/config/config.integration.test.js +3 -2
- package/dist/src/config/config.integration.test.js.map +1 -1
- package/dist/src/config/config.js +37 -26
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +361 -280
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/extension-manager-agents.test.js +3 -4
- package/dist/src/config/extension-manager-agents.test.js.map +1 -1
- package/dist/src/config/extension-manager-scope.test.js +13 -15
- package/dist/src/config/extension-manager-scope.test.js.map +1 -1
- package/dist/src/config/extension-manager-skills.test.js +5 -7
- package/dist/src/config/extension-manager-skills.test.js.map +1 -1
- package/dist/src/config/extension-manager.d.ts +2 -2
- package/dist/src/config/extension-manager.js +16 -11
- package/dist/src/config/extension-manager.js.map +1 -1
- package/dist/src/config/extension.test.js +13 -21
- package/dist/src/config/extension.test.js.map +1 -1
- package/dist/src/config/extensions/consent.d.ts +4 -0
- package/dist/src/config/extensions/consent.js +40 -16
- package/dist/src/config/extensions/consent.js.map +1 -1
- package/dist/src/config/extensions/consent.test.js +31 -7
- package/dist/src/config/extensions/consent.test.js.map +1 -1
- package/dist/src/config/extensions/extensionUpdates.test.js +5 -2
- package/dist/src/config/extensions/extensionUpdates.test.js.map +1 -1
- package/dist/src/config/keyBindings.d.ts +58 -59
- package/dist/src/config/keyBindings.js +131 -135
- package/dist/src/config/keyBindings.js.map +1 -1
- package/dist/src/config/keyBindings.test.js +3 -8
- package/dist/src/config/keyBindings.test.js.map +1 -1
- package/dist/src/config/policy-engine.integration.test.js +15 -0
- package/dist/src/config/policy-engine.integration.test.js.map +1 -1
- package/dist/src/config/settings.d.ts +24 -6
- package/dist/src/config/settings.js +150 -6
- package/dist/src/config/settings.js.map +1 -1
- package/dist/src/config/settings.test.js +258 -3
- package/dist/src/config/settings.test.js.map +1 -1
- package/dist/src/config/settingsSchema.d.ts +53 -20
- package/dist/src/config/settingsSchema.js +48 -22
- package/dist/src/config/settingsSchema.js.map +1 -1
- package/dist/src/config/settingsSchema.test.js +22 -2
- package/dist/src/config/settingsSchema.test.js.map +1 -1
- package/dist/src/config/skills-backward-compatibility.test.js +99 -0
- package/dist/src/config/skills-backward-compatibility.test.js.map +1 -0
- package/dist/src/core/initializer.js +2 -2
- package/dist/src/core/initializer.js.map +1 -1
- package/dist/src/core/initializer.test.js.map +1 -1
- package/dist/src/core/theme.js +1 -1
- package/dist/src/core/theme.js.map +1 -1
- package/dist/src/core/theme.test.js.map +1 -1
- package/dist/src/gemini.js +51 -19
- package/dist/src/gemini.js.map +1 -1
- package/dist/src/gemini.test.js +48 -61
- 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.d.ts +1 -2
- package/dist/src/nonInteractiveCli.js +1 -16
- package/dist/src/nonInteractiveCli.js.map +1 -1
- package/dist/src/nonInteractiveCli.test.js +0 -39
- package/dist/src/nonInteractiveCli.test.js.map +1 -1
- package/dist/src/test-utils/mockCommandContext.js +7 -1
- package/dist/src/test-utils/mockCommandContext.js.map +1 -1
- package/dist/src/test-utils/render.js +2 -0
- package/dist/src/test-utils/render.js.map +1 -1
- package/dist/src/ui/App.test.js +2 -2
- package/dist/src/ui/App.test.js.map +1 -1
- package/dist/src/ui/AppContainer.js +41 -35
- package/dist/src/ui/AppContainer.js.map +1 -1
- package/dist/src/ui/AppContainer.test.js +33 -22
- package/dist/src/ui/AppContainer.test.js.map +1 -1
- package/dist/src/ui/auth/ApiAuthDialog.test.js +0 -1
- package/dist/src/ui/auth/ApiAuthDialog.test.js.map +1 -1
- package/dist/src/ui/auth/AuthDialog.js +5 -5
- package/dist/src/ui/auth/AuthDialog.js.map +1 -1
- package/dist/src/ui/auth/AuthDialog.test.js.map +1 -1
- package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.js +0 -2
- package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.js.map +1 -1
- package/dist/src/ui/auth/useAuth.js +3 -3
- package/dist/src/ui/auth/useAuth.js.map +1 -1
- package/dist/src/ui/commands/aboutCommand.js +1 -1
- package/dist/src/ui/commands/aboutCommand.js.map +1 -1
- package/dist/src/ui/commands/agentsCommand.js +158 -1
- package/dist/src/ui/commands/agentsCommand.js.map +1 -1
- package/dist/src/ui/commands/agentsCommand.test.js +140 -1
- package/dist/src/ui/commands/agentsCommand.test.js.map +1 -1
- package/dist/src/ui/commands/hooksCommand.js +23 -23
- package/dist/src/ui/commands/hooksCommand.js.map +1 -1
- package/dist/src/ui/commands/hooksCommand.test.js +12 -15
- package/dist/src/ui/commands/hooksCommand.test.js.map +1 -1
- package/dist/src/ui/commands/policiesCommand.js +3 -0
- package/dist/src/ui/commands/policiesCommand.js.map +1 -1
- package/dist/src/ui/commands/policiesCommand.test.js +2 -1
- package/dist/src/ui/commands/policiesCommand.test.js.map +1 -1
- package/dist/src/ui/commands/skillsCommand.test.js +14 -7
- package/dist/src/ui/commands/skillsCommand.test.js.map +1 -1
- package/dist/src/ui/components/AdminSettingsChangedDialog.d.ts +6 -0
- package/dist/src/ui/components/AdminSettingsChangedDialog.js +22 -0
- package/dist/src/ui/components/AdminSettingsChangedDialog.js.map +1 -0
- package/dist/src/ui/components/AdminSettingsChangedDialog.test.d.ts +6 -0
- package/dist/src/ui/components/AdminSettingsChangedDialog.test.js +43 -0
- package/dist/src/ui/components/AdminSettingsChangedDialog.test.js.map +1 -0
- package/dist/src/ui/components/AppHeader.js +1 -1
- package/dist/src/ui/components/AppHeader.js.map +1 -1
- package/dist/src/ui/components/Composer.js +4 -6
- package/dist/src/ui/components/Composer.js.map +1 -1
- package/dist/src/ui/components/Composer.test.js +17 -9
- package/dist/src/ui/components/Composer.test.js.map +1 -1
- package/dist/src/ui/components/DialogManager.js +4 -4
- package/dist/src/ui/components/DialogManager.js.map +1 -1
- package/dist/src/ui/components/DialogManager.test.js +0 -14
- package/dist/src/ui/components/DialogManager.test.js.map +1 -1
- package/dist/src/ui/components/EditorSettingsDialog.js +3 -3
- package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -1
- package/dist/src/ui/components/Footer.js +5 -5
- package/dist/src/ui/components/Footer.js.map +1 -1
- package/dist/src/ui/components/Help.js +2 -1
- package/dist/src/ui/components/Help.js.map +1 -1
- package/dist/src/ui/components/HistoryItemDisplay.test.js +1 -0
- package/dist/src/ui/components/HistoryItemDisplay.test.js.map +1 -1
- package/dist/src/ui/components/InputPrompt.js +6 -9
- package/dist/src/ui/components/InputPrompt.js.map +1 -1
- package/dist/src/ui/components/InputPrompt.test.js +8 -14
- package/dist/src/ui/components/InputPrompt.test.js.map +1 -1
- package/dist/src/ui/components/MultiFolderTrustDialog.test.js +0 -1
- package/dist/src/ui/components/MultiFolderTrustDialog.test.js.map +1 -1
- package/dist/src/ui/components/RewindConfirmation.d.ts +21 -0
- package/dist/src/ui/components/RewindConfirmation.js +63 -0
- package/dist/src/ui/components/RewindConfirmation.js.map +1 -0
- package/dist/src/ui/components/RewindConfirmation.test.d.ts +6 -0
- package/dist/src/ui/components/RewindConfirmation.test.js +53 -0
- package/dist/src/ui/components/RewindConfirmation.test.js.map +1 -0
- package/dist/src/ui/components/RewindViewer.d.ts +15 -0
- package/dist/src/ui/components/RewindViewer.js +79 -0
- package/dist/src/ui/components/RewindViewer.js.map +1 -0
- package/dist/src/ui/components/RewindViewer.test.d.ts +6 -0
- package/dist/src/ui/components/RewindViewer.test.js +239 -0
- package/dist/src/ui/components/RewindViewer.test.js.map +1 -0
- package/dist/src/ui/components/SessionBrowser.test.js +0 -1
- package/dist/src/ui/components/SessionBrowser.test.js.map +1 -1
- package/dist/src/ui/components/SettingsDialog.js +4 -4
- package/dist/src/ui/components/SettingsDialog.js.map +1 -1
- package/dist/src/ui/components/SettingsDialog.test.js +14 -14
- package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
- package/dist/src/ui/components/StatusDisplay.js +3 -4
- package/dist/src/ui/components/StatusDisplay.js.map +1 -1
- package/dist/src/ui/components/ThemeDialog.js +2 -2
- package/dist/src/ui/components/ThemeDialog.js.map +1 -1
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js +8 -3
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +18 -0
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -1
- package/dist/src/ui/components/shared/TextInput.test.js +0 -8
- package/dist/src/ui/components/shared/TextInput.test.js.map +1 -1
- package/dist/src/ui/components/shared/performance.test.d.ts +1 -0
- package/dist/src/ui/components/shared/performance.test.js +67 -0
- package/dist/src/ui/components/shared/performance.test.js.map +1 -0
- package/dist/src/ui/components/shared/text-buffer.d.ts +1 -0
- package/dist/src/ui/components/shared/text-buffer.js +80 -54
- package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
- package/dist/src/ui/components/shared/text-buffer.test.js +97 -21
- package/dist/src/ui/components/shared/text-buffer.test.js.map +1 -1
- package/dist/src/ui/constants/tips.js +150 -150
- package/dist/src/ui/constants/tips.js.map +1 -1
- package/dist/src/ui/constants/wittyPhrases.js +118 -118
- package/dist/src/ui/constants/wittyPhrases.js.map +1 -1
- package/dist/src/ui/constants.d.ts +2 -0
- package/dist/src/ui/constants.js +2 -0
- package/dist/src/ui/constants.js.map +1 -1
- package/dist/src/ui/contexts/KeypressContext.d.ts +0 -1
- package/dist/src/ui/contexts/KeypressContext.js +2 -6
- package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
- package/dist/src/ui/contexts/KeypressContext.test.js +2 -10
- package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
- package/dist/src/ui/contexts/UIActionsContext.d.ts +1 -0
- package/dist/src/ui/contexts/UIActionsContext.js.map +1 -1
- package/dist/src/ui/contexts/UIStateContext.d.ts +2 -2
- package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
- package/dist/src/ui/contexts/VimModeContext.js +3 -3
- package/dist/src/ui/contexts/VimModeContext.js.map +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.d.ts +0 -5
- package/dist/src/ui/hooks/slashCommandProcessor.js +42 -11
- package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.test.js +1 -144
- package/dist/src/ui/hooks/slashCommandProcessor.test.js.map +1 -1
- package/dist/src/ui/hooks/useAlternateBuffer.js +1 -1
- package/dist/src/ui/hooks/useAlternateBuffer.js.map +1 -1
- package/dist/src/ui/hooks/useAtCompletion.js +21 -1
- package/dist/src/ui/hooks/useAtCompletion.js.map +1 -1
- package/dist/src/ui/hooks/useAtCompletion.test.js +4 -4
- package/dist/src/ui/hooks/useAtCompletion.test.js.map +1 -1
- package/dist/src/ui/hooks/useAtCompletion_agents.test.js +2 -0
- package/dist/src/ui/hooks/useAtCompletion_agents.test.js.map +1 -1
- package/dist/src/ui/hooks/useFolderTrust.js +1 -1
- package/dist/src/ui/hooks/useFolderTrust.js.map +1 -1
- package/dist/src/ui/hooks/useGeminiStream.js +17 -5
- package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
- package/dist/src/ui/hooks/useGeminiStream.test.js +103 -1
- package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
- package/dist/src/ui/hooks/useKeypress.test.js +11 -13
- package/dist/src/ui/hooks/useKeypress.test.js.map +1 -1
- package/dist/src/ui/hooks/usePermissionsModifyTrust.js +1 -1
- package/dist/src/ui/hooks/usePermissionsModifyTrust.js.map +1 -1
- package/dist/src/ui/hooks/useReactToolScheduler.d.ts +1 -1
- package/dist/src/ui/hooks/useReactToolScheduler.js +1 -1
- package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
- package/dist/src/ui/hooks/useSelectionList.test.js +0 -3
- package/dist/src/ui/hooks/useSelectionList.test.js.map +1 -1
- package/dist/src/ui/hooks/useShowMemoryCommand.js +1 -1
- package/dist/src/ui/hooks/useShowMemoryCommand.js.map +1 -1
- package/dist/src/ui/hooks/useThemeCommand.js +4 -4
- package/dist/src/ui/hooks/useThemeCommand.js.map +1 -1
- package/dist/src/ui/hooks/useToolScheduler.test.js +62 -46
- package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
- package/dist/src/ui/hooks/vim.js +0 -1
- package/dist/src/ui/hooks/vim.js.map +1 -1
- package/dist/src/ui/hooks/vim.test.js +0 -1
- package/dist/src/ui/hooks/vim.test.js.map +1 -1
- package/dist/src/ui/keyMatchers.js +1 -16
- package/dist/src/ui/keyMatchers.js.map +1 -1
- package/dist/src/ui/keyMatchers.test.js +2 -14
- package/dist/src/ui/keyMatchers.test.js.map +1 -1
- package/dist/src/ui/types.d.ts +1 -5
- package/dist/src/ui/types.js.map +1 -1
- package/dist/src/ui/utils/CodeColorizer.js +1 -1
- package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
- package/dist/src/ui/utils/commandUtils.js +31 -6
- package/dist/src/ui/utils/commandUtils.js.map +1 -1
- package/dist/src/ui/utils/commandUtils.test.js +71 -10
- package/dist/src/ui/utils/commandUtils.test.js.map +1 -1
- package/dist/src/ui/utils/formatters.d.ts +9 -0
- package/dist/src/ui/utils/formatters.js +26 -0
- package/dist/src/ui/utils/formatters.js.map +1 -1
- package/dist/src/ui/utils/formatters.test.js +70 -2
- package/dist/src/ui/utils/formatters.test.js.map +1 -1
- package/dist/src/ui/utils/highlight.js +18 -1
- package/dist/src/ui/utils/highlight.js.map +1 -1
- package/dist/src/ui/utils/highlight.test.js +2 -2
- package/dist/src/ui/utils/highlight.test.js.map +1 -1
- package/dist/src/ui/utils/textUtils.d.ts +0 -1
- package/dist/src/ui/utils/textUtils.js +17 -12
- package/dist/src/ui/utils/textUtils.js.map +1 -1
- package/dist/src/ui/utils/textUtils.test.js +1 -0
- package/dist/src/ui/utils/textUtils.test.js.map +1 -1
- package/dist/src/ui/utils/ui-sizing.js +1 -1
- package/dist/src/ui/utils/ui-sizing.js.map +1 -1
- package/dist/src/ui/utils/updateCheck.js +1 -1
- package/dist/src/ui/utils/updateCheck.js.map +1 -1
- package/dist/src/ui/utils/updateCheck.test.js +3 -3
- package/dist/src/ui/utils/updateCheck.test.js.map +1 -1
- package/dist/src/utils/agentSettings.d.ts +31 -0
- package/dist/src/utils/agentSettings.js +103 -0
- package/dist/src/utils/agentSettings.js.map +1 -0
- package/dist/src/utils/agentUtils.d.ts +15 -0
- package/dist/src/utils/agentUtils.js +50 -0
- package/dist/src/utils/agentUtils.js.map +1 -0
- package/dist/src/utils/agentUtils.test.d.ts +6 -0
- package/dist/src/utils/agentUtils.test.js +121 -0
- package/dist/src/utils/agentUtils.test.js.map +1 -0
- package/dist/src/utils/handleAutoUpdate.js +4 -4
- package/dist/src/utils/handleAutoUpdate.js.map +1 -1
- package/dist/src/utils/handleAutoUpdate.test.js +8 -4
- package/dist/src/utils/handleAutoUpdate.test.js.map +1 -1
- package/dist/src/utils/installationInfo.d.ts +1 -1
- package/dist/src/utils/installationInfo.js +13 -13
- package/dist/src/utils/installationInfo.js.map +1 -1
- package/dist/src/utils/installationInfo.test.js +28 -20
- package/dist/src/utils/installationInfo.test.js.map +1 -1
- package/dist/src/utils/relaunch.d.ts +2 -1
- package/dist/src/utils/relaunch.js +6 -3
- package/dist/src/utils/relaunch.js.map +1 -1
- package/dist/src/utils/settingsUtils.d.ts +7 -0
- package/dist/src/utils/settingsUtils.js +17 -0
- package/dist/src/utils/settingsUtils.js.map +1 -1
- package/dist/src/utils/settingsUtils.test.js +33 -33
- package/dist/src/utils/settingsUtils.test.js.map +1 -1
- package/dist/src/utils/skillUtils.d.ts +2 -1
- package/dist/src/utils/skillUtils.js +58 -56
- package/dist/src/utils/skillUtils.js.map +1 -1
- package/dist/src/utils/skillUtils.test.js +13 -0
- package/dist/src/utils/skillUtils.test.js.map +1 -1
- package/dist/src/utils/terminalTheme.js +4 -4
- package/dist/src/utils/terminalTheme.js.map +1 -1
- package/dist/src/validateNonInterActiveAuth.js +1 -1
- package/dist/src/validateNonInterActiveAuth.js.map +1 -1
- package/dist/src/validateNonInterActiveAuth.test.js +2 -4
- package/dist/src/validateNonInterActiveAuth.test.js.map +1 -1
- package/dist/src/zed-integration/zedIntegration.js +8 -3
- package/dist/src/zed-integration/zedIntegration.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -4
- package/dist/src/ui/components/ShellConfirmationDialog.d.ts +0 -15
- package/dist/src/ui/components/ShellConfirmationDialog.js +0 -49
- package/dist/src/ui/components/ShellConfirmationDialog.js.map +0 -1
- package/dist/src/ui/components/ShellConfirmationDialog.test.js +0 -40
- package/dist/src/ui/components/ShellConfirmationDialog.test.js.map +0 -1
- /package/dist/src/{ui/components/ShellConfirmationDialog.test.d.ts → config/skills-backward-compatibility.test.d.ts} +0 -0
|
Binary file
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@google/gemini-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.26.0-nightly.20260119.20580d754",
|
|
4
4
|
"description": "Gemini CLI",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -26,10 +26,10 @@
|
|
|
26
26
|
"dist"
|
|
27
27
|
],
|
|
28
28
|
"config": {
|
|
29
|
-
"sandboxImageUri": "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.
|
|
29
|
+
"sandboxImageUri": "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.26.0-nightly.20260119.20580d754"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@agentclientprotocol/sdk": "^0.
|
|
32
|
+
"@agentclientprotocol/sdk": "^0.12.0",
|
|
33
33
|
"@google/gemini-cli-core": "file:../core",
|
|
34
34
|
"@google/genai": "1.30.0",
|
|
35
35
|
"@iarna/toml": "^2.2.5",
|
|
@@ -37,6 +37,7 @@
|
|
|
37
37
|
"@types/update-notifier": "^6.0.8",
|
|
38
38
|
"ansi-regex": "^6.2.2",
|
|
39
39
|
"clipboardy": "^5.0.0",
|
|
40
|
+
"color-convert": "^2.0.1",
|
|
40
41
|
"command-exists": "^1.2.9",
|
|
41
42
|
"comment-json": "^4.2.5",
|
|
42
43
|
"diff": "^7.0.0",
|
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { updateSetting, promptForSetting, ExtensionSettingScope, getScopedEnvContents, } from '../../config/extensions/extensionSettings.js';
|
|
7
7
|
import { getExtensionAndManager, getExtensionManager } from './utils.js';
|
|
8
|
-
import {
|
|
8
|
+
import { loadSettings } from '../../config/settings.js';
|
|
9
|
+
import { debugLogger, coreEvents } from '@google/gemini-cli-core';
|
|
9
10
|
import { exitCli } from '../utils.js';
|
|
10
11
|
import prompts from 'prompts';
|
|
11
12
|
export const configureCommand = {
|
|
@@ -28,6 +29,12 @@ export const configureCommand = {
|
|
|
28
29
|
}),
|
|
29
30
|
handler: async (args) => {
|
|
30
31
|
const { name, setting, scope } = args;
|
|
32
|
+
const settings = loadSettings(process.cwd()).merged;
|
|
33
|
+
if (!(settings.experimental?.extensionConfig ?? true)) {
|
|
34
|
+
coreEvents.emitFeedback('error', 'Extension configuration is currently disabled. Enable it by setting "experimental.extensionConfig" to true.');
|
|
35
|
+
await exitCli();
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
31
38
|
if (name) {
|
|
32
39
|
if (name.includes('/') || name.includes('\\') || name.includes('..')) {
|
|
33
40
|
debugLogger.error('Invalid extension name. Names cannot contain path separators or "..".');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configure.js","sourceRoot":"","sources":["../../../../src/commands/extensions/configure.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"configure.js","sourceRoot":"","sources":["../../../../src/commands/extensions/configure.ts"],"names":[],"mappings":"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"}
|
|
@@ -171,7 +171,7 @@ export async function handleMigrateFromClaude() {
|
|
|
171
171
|
// Load current Gemini settings
|
|
172
172
|
const settings = loadSettings(workingDir);
|
|
173
173
|
// Merge migrated hooks with existing hooks
|
|
174
|
-
const existingHooks = settings.merged.hooks
|
|
174
|
+
const existingHooks = settings.merged.hooks;
|
|
175
175
|
const mergedHooks = { ...existingHooks, ...migratedHooks };
|
|
176
176
|
// Update settings (setValue automatically saves)
|
|
177
177
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../../src/commands/hooks/migrate.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../../src/commands/hooks/migrate.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AAMpD;;GAEG;AACH,MAAM,aAAa,GAA2B;IAC5C,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,WAAW;IACxB,gBAAgB,EAAE,aAAa;IAC/B,IAAI,EAAE,YAAY;IAClB,YAAY,EAAE,YAAY,EAAE,oDAAoD;IAChF,YAAY,EAAE,cAAc;IAC5B,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,aAAa;IACzB,YAAY,EAAE,cAAc;CAC7B,CAAC;AAEF;;GAEG;AACH,MAAM,iBAAiB,GAA2B;IAChD,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,mBAAmB;IACzB,IAAI,EAAE,WAAW;IACjB,KAAK,EAAE,YAAY;IACnB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,EAAE,EAAE,IAAI;CACT,CAAC;AAEF;;GAEG;AACH,SAAS,gBAAgB,CAAC,OAA2B;IACnD,IAAI,CAAC,OAAO;QAAE,OAAO,OAAO,CAAC;IAE7B,IAAI,WAAW,GAAG,OAAO,CAAC;IAC1B,KAAK,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACzE,8DAA8D;QAC9D,WAAW,GAAG,WAAW,CAAC,OAAO,CAC/B,IAAI,MAAM,CAAC,MAAM,UAAU,KAAK,EAAE,GAAG,CAAC,EACtC,UAAU,CACX,CAAC;IACJ,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,UAAmB;IAC5C,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QAClD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,MAAM,IAAI,GAAG,UAAqC,CAAC;IACnD,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAE7C,oBAAoB;IACpB,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;QACtB,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QAEtC,gEAAgE;QAChE,IAAI,OAAO,QAAQ,CAAC,SAAS,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC5C,QAAQ,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,OAAO,CAC/C,uBAAuB,EACvB,qBAAqB,CACtB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,SAAS,EAAE,CAAC;QACjD,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,+DAA+D;IAC/D,IAAI,SAAS,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC7D,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,YAAqB;IAC/C,IAAI,CAAC,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;QACtD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,MAAM,GAAG,YAAuC,CAAC;IACvD,MAAM,WAAW,GAA4B,EAAE,CAAC;IAEhD,mCAAmC;IACnC,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAwC,CAAC;IAC5E,IAAI,CAAC,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;QACtD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QACpE,iBAAiB;QACjB,MAAM,eAAe,GAAG,aAAa,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC;QAE9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,SAAS;QACX,CAAC;QAED,+BAA+B;QAC/B,MAAM,mBAAmB,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,GAAY,EAAE,EAAE;YAC3D,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACpC,OAAO,GAAG,CAAC;YACb,CAAC;YAED,MAAM,UAAU,GAAG,GAA8B,CAAC;YAClD,MAAM,WAAW,GAA4B,EAAE,CAAC;YAEhD,oBAAoB;YACpB,IACE,SAAS,IAAI,UAAU;gBACvB,OAAO,UAAU,CAAC,SAAS,CAAC,KAAK,QAAQ,EACzC,CAAC;gBACD,WAAW,CAAC,SAAS,CAAC,GAAG,gBAAgB,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;YACnE,CAAC;YAED,uBAAuB;YACvB,IAAI,YAAY,IAAI,UAAU,EAAE,CAAC;gBAC/B,WAAW,CAAC,YAAY,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;YACvD,CAAC;YAED,sBAAsB;YACtB,IAAI,OAAO,IAAI,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;gBAChE,WAAW,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YACpE,CAAC;YAED,OAAO,WAAW,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,WAAW,CAAC,eAAe,CAAC,GAAG,mBAAmB,CAAC;IACrD,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAC3C,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAEjC,gDAAgD;IAChD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACnD,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IACjE,MAAM,uBAAuB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IAE5E,IAAI,cAAc,GAAmC,IAAI,CAAC;IAC1D,IAAI,UAAU,GAAG,EAAE,CAAC;IAEpB,4DAA4D;IAC5D,IAAI,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,CAAC;QAC3C,UAAU,GAAG,uBAAuB,CAAC;QACrC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;YAClE,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAGrD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,CAAC,KAAK,CACf,iBAAiB,uBAAuB,KAAK,eAAe,CAAC,KAAK,CAAC,EAAE,CACtE,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,IAAI,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC7C,UAAU,GAAG,kBAAkB,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;YAC7D,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAGrD,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,CAAC,KAAK,CACf,iBAAiB,kBAAkB,KAAK,eAAe,CAAC,KAAK,CAAC,EAAE,CACjE,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,CAAC;QACN,WAAW,CAAC,KAAK,CACf,mGAAmG,CACpG,CAAC;QACF,OAAO;IACT,CAAC;IAED,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO;IACT,CAAC;IAED,WAAW,CAAC,GAAG,CAAC,kCAAkC,UAAU,EAAE,CAAC,CAAC;IAEhE,gBAAgB;IAChB,MAAM,aAAa,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAEzD,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,WAAW,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QACtE,OAAO;IACT,CAAC;IAED,WAAW,CAAC,GAAG,CACb,aAAa,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,mBAAmB,CAClE,CAAC;IAEF,+BAA+B;IAC/B,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;IAE1C,2CAA2C;IAC3C,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAgC,CAAC;IACvE,MAAM,WAAW,GAAG,EAAE,GAAG,aAAa,EAAE,GAAG,aAAa,EAAE,CAAC;IAE3D,iDAAiD;IACjD,IAAI,CAAC;QACH,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QAEhE,WAAW,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;QAC1E,WAAW,CAAC,GAAG,CACb,iFAAiF,CAClF,CAAC;QACF,WAAW,CAAC,GAAG,CACb,6EAA6E,CAC9E,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,WAAW,CAAC,KAAK,CAAC,gCAAgC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,8CAA8C;IACxD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE;QAC1B,QAAQ,EAAE,gCAAgC;QAC1C,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;KACf,CAAC;IACJ,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,IAAI,GAAG,IAA8B,CAAC;QAC5C,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,MAAM,uBAAuB,EAAE,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,GAAG,CACb,mGAAmG,CACpG,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;CACF,CAAC"}
|
|
@@ -23,7 +23,7 @@ async function getMcpServersFromConfig() {
|
|
|
23
23
|
requestSetting: promptForSetting,
|
|
24
24
|
});
|
|
25
25
|
const extensions = await extensionManager.loadExtensions();
|
|
26
|
-
const mcpServers = { ...
|
|
26
|
+
const mcpServers = { ...settings.merged.mcpServers };
|
|
27
27
|
for (const extension of extensions) {
|
|
28
28
|
Object.entries(extension.mcpServers || {}).forEach(([key, server]) => {
|
|
29
29
|
if (mcpServers[key]) {
|
|
@@ -46,7 +46,7 @@ async function testMCPConnection(serverName, config) {
|
|
|
46
46
|
const sanitizationConfig = {
|
|
47
47
|
enableEnvironmentVariableRedaction: true,
|
|
48
48
|
allowedEnvironmentVariables: [],
|
|
49
|
-
blockedEnvironmentVariables: settings.merged.advanced
|
|
49
|
+
blockedEnvironmentVariables: settings.merged.advanced.excludedEnvVars,
|
|
50
50
|
};
|
|
51
51
|
let transport;
|
|
52
52
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/mcp/list.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EACL,eAAe,EACf,eAAe,EACf,WAAW,GACZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAChF,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,WAAW,GAAG,YAAY,CAAC;AACjC,MAAM,YAAY,GAAG,YAAY,CAAC;AAClC,MAAM,SAAS,GAAG,YAAY,CAAC;AAC/B,MAAM,WAAW,GAAG,WAAW,CAAC;AAEhC,KAAK,UAAU,uBAAuB;IAGpC,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC;QAC5C,QAAQ,EAAE,QAAQ,CAAC,MAAM;QACzB,YAAY,EAAE,OAAO,CAAC,GAAG,EAAE;QAC3B,cAAc,EAAE,4BAA4B;QAC5C,cAAc,EAAE,gBAAgB;KACjC,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,cAAc,EAAE,CAAC;IAC3D,MAAM,UAAU,GAAG,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/mcp/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,14 +5,18 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { vi, describe, it, expect, beforeEach } from 'vitest';
|
|
7
7
|
import { listMcpServers } from './list.js';
|
|
8
|
-
import { loadSettings } from '../../config/settings.js';
|
|
8
|
+
import { loadSettings, mergeSettings } from '../../config/settings.js';
|
|
9
9
|
import { createTransport, debugLogger } from '@google/gemini-cli-core';
|
|
10
10
|
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
|
|
11
11
|
import { ExtensionStorage } from '../../config/extensions/storage.js';
|
|
12
12
|
import { ExtensionManager } from '../../config/extension-manager.js';
|
|
13
|
-
vi.mock('../../config/settings.js', () =>
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
vi.mock('../../config/settings.js', async (importOriginal) => {
|
|
14
|
+
const actual = await importOriginal();
|
|
15
|
+
return {
|
|
16
|
+
...actual,
|
|
17
|
+
loadSettings: vi.fn(),
|
|
18
|
+
};
|
|
19
|
+
});
|
|
16
20
|
vi.mock('../../config/extensions/storage.js', () => ({
|
|
17
21
|
ExtensionStorage: {
|
|
18
22
|
getUserExtensionsDir: vi.fn(),
|
|
@@ -29,11 +33,13 @@ vi.mock('@google/gemini-cli-core', async (importOriginal) => {
|
|
|
29
33
|
CONNECTING: 'CONNECTING',
|
|
30
34
|
DISCONNECTED: 'DISCONNECTED',
|
|
31
35
|
},
|
|
32
|
-
Storage: vi.fn().mockImplementation((_cwd) => ({
|
|
36
|
+
Storage: Object.assign(vi.fn().mockImplementation((_cwd) => ({
|
|
33
37
|
getGlobalSettingsPath: () => '/tmp/gemini/settings.json',
|
|
34
38
|
getWorkspaceSettingsPath: () => '/tmp/gemini/workspace-settings.json',
|
|
35
39
|
getProjectTempDir: () => '/test/home/.gemini/tmp/mocked_hash',
|
|
36
|
-
})),
|
|
40
|
+
})), {
|
|
41
|
+
getGlobalSettingsPath: () => '/tmp/gemini/settings.json',
|
|
42
|
+
}),
|
|
37
43
|
GEMINI_DIR: '.gemini',
|
|
38
44
|
getErrorMessage: (e) => e instanceof Error ? e.message : String(e),
|
|
39
45
|
};
|
|
@@ -70,13 +76,18 @@ describe('mcp list command', () => {
|
|
|
70
76
|
mockedGetUserExtensionsDir.mockReturnValue('/mocked/extensions/dir');
|
|
71
77
|
});
|
|
72
78
|
it('should display message when no servers configured', async () => {
|
|
73
|
-
|
|
79
|
+
const defaultMergedSettings = mergeSettings({}, {}, {}, {}, true);
|
|
80
|
+
mockedLoadSettings.mockReturnValue({
|
|
81
|
+
merged: { ...defaultMergedSettings, mcpServers: {} },
|
|
82
|
+
});
|
|
74
83
|
await listMcpServers();
|
|
75
84
|
expect(debugLogger.log).toHaveBeenCalledWith('No MCP servers configured.');
|
|
76
85
|
});
|
|
77
86
|
it('should display different server types with connected status', async () => {
|
|
87
|
+
const defaultMergedSettings = mergeSettings({}, {}, {}, {}, true);
|
|
78
88
|
mockedLoadSettings.mockReturnValue({
|
|
79
89
|
merged: {
|
|
90
|
+
...defaultMergedSettings,
|
|
80
91
|
mcpServers: {
|
|
81
92
|
'stdio-server': { command: '/path/to/server', args: ['arg1'] },
|
|
82
93
|
'sse-server': { url: 'https://example.com/sse' },
|
|
@@ -93,8 +104,10 @@ describe('mcp list command', () => {
|
|
|
93
104
|
expect(debugLogger.log).toHaveBeenCalledWith(expect.stringContaining('http-server: https://example.com/http (http) - Connected'));
|
|
94
105
|
});
|
|
95
106
|
it('should display disconnected status when connection fails', async () => {
|
|
107
|
+
const defaultMergedSettings = mergeSettings({}, {}, {}, {}, true);
|
|
96
108
|
mockedLoadSettings.mockReturnValue({
|
|
97
109
|
merged: {
|
|
110
|
+
...defaultMergedSettings,
|
|
98
111
|
mcpServers: {
|
|
99
112
|
'test-server': { command: '/test/server' },
|
|
100
113
|
},
|
|
@@ -105,9 +118,13 @@ describe('mcp list command', () => {
|
|
|
105
118
|
expect(debugLogger.log).toHaveBeenCalledWith(expect.stringContaining('test-server: /test/server (stdio) - Disconnected'));
|
|
106
119
|
});
|
|
107
120
|
it('should merge extension servers with config servers', async () => {
|
|
121
|
+
const defaultMergedSettings = mergeSettings({}, {}, {}, {}, true);
|
|
108
122
|
mockedLoadSettings.mockReturnValue({
|
|
109
123
|
merged: {
|
|
110
|
-
|
|
124
|
+
...defaultMergedSettings,
|
|
125
|
+
mcpServers: {
|
|
126
|
+
'config-server': { command: '/config/server' },
|
|
127
|
+
},
|
|
111
128
|
},
|
|
112
129
|
});
|
|
113
130
|
mockExtensionManager.loadExtensions.mockReturnValue([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.test.js","sourceRoot":"","sources":["../../../../src/commands/mcp/list.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAa,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"list.test.js","sourceRoot":"","sources":["../../../../src/commands/mcp/list.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,13 +28,15 @@ export const disableCommand = {
|
|
|
28
28
|
})
|
|
29
29
|
.option('scope', {
|
|
30
30
|
alias: 's',
|
|
31
|
-
describe: 'The scope to disable the skill in (user or
|
|
31
|
+
describe: 'The scope to disable the skill in (user or workspace).',
|
|
32
32
|
type: 'string',
|
|
33
|
-
default: '
|
|
34
|
-
choices: ['user', '
|
|
33
|
+
default: 'workspace',
|
|
34
|
+
choices: ['user', 'workspace'],
|
|
35
35
|
}),
|
|
36
36
|
handler: async (argv) => {
|
|
37
|
-
const scope = argv['scope'] === '
|
|
37
|
+
const scope = argv['scope'] === 'workspace'
|
|
38
|
+
? SettingScope.Workspace
|
|
39
|
+
: SettingScope.User;
|
|
38
40
|
await handleDisable({
|
|
39
41
|
name: argv['name'],
|
|
40
42
|
scope,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"disable.js","sourceRoot":"","sources":["../../../../src/commands/skills/disable.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAiB;IACnD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAC7B,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;IAE5C,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,yBAAyB,CACxC,MAAM,EACN,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAC7D,CAAC;IACF,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,OAAO,EAAE,0BAA0B;IACnC,QAAQ,EAAE,0BAA0B;IACpC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,UAAU,CAAC,MAAM,EAAE;QAClB,QAAQ,EAAE,mCAAmC;QAC7C,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;KACnB,CAAC;SACD,MAAM,CAAC,OAAO,EAAE;QACf,KAAK,EAAE,GAAG;QACV,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"disable.js","sourceRoot":"","sources":["../../../../src/commands/skills/disable.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAiB;IACnD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAC7B,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;IAE5C,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,yBAAyB,CACxC,MAAM,EACN,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAC7D,CAAC;IACF,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,OAAO,EAAE,0BAA0B;IACnC,QAAQ,EAAE,0BAA0B;IACpC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,UAAU,CAAC,MAAM,EAAE;QAClB,QAAQ,EAAE,mCAAmC;QAC7C,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;KACnB,CAAC;SACD,MAAM,CAAC,OAAO,EAAE;QACf,KAAK,EAAE,GAAG;QACV,QAAQ,EAAE,wDAAwD;QAClE,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;KAC/B,CAAC;IACN,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,KAAK,GACT,IAAI,CAAC,OAAO,CAAC,KAAK,WAAW;YAC3B,CAAC,CAAC,YAAY,CAAC,SAAS;YACxB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC;QACxB,MAAM,aAAa,CAAC;YAClB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAW;YAC5B,KAAK;SACN,CAAC,CAAC;QACH,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;CACF,CAAC"}
|
|
@@ -56,6 +56,22 @@ describe('skills disable command', () => {
|
|
|
56
56
|
expect(mockSettings.setValue).toHaveBeenCalledWith(SettingScope.User, 'skills.disabled', ['skill1']);
|
|
57
57
|
expect(emitConsoleLog).toHaveBeenCalledWith('log', 'Skill "skill1" disabled by adding it to the disabled list in user (/user/settings.json) settings.');
|
|
58
58
|
});
|
|
59
|
+
it('should disable an enabled skill in workspace scope', async () => {
|
|
60
|
+
const mockSettings = {
|
|
61
|
+
forScope: vi.fn().mockReturnValue({
|
|
62
|
+
settings: { skills: { disabled: [] } },
|
|
63
|
+
path: '/workspace/.gemini/settings.json',
|
|
64
|
+
}),
|
|
65
|
+
setValue: vi.fn(),
|
|
66
|
+
};
|
|
67
|
+
mockLoadSettings.mockReturnValue(mockSettings);
|
|
68
|
+
await handleDisable({
|
|
69
|
+
name: 'skill1',
|
|
70
|
+
scope: SettingScope.Workspace,
|
|
71
|
+
});
|
|
72
|
+
expect(mockSettings.setValue).toHaveBeenCalledWith(SettingScope.Workspace, 'skills.disabled', ['skill1']);
|
|
73
|
+
expect(emitConsoleLog).toHaveBeenCalledWith('log', 'Skill "skill1" disabled by adding it to the disabled list in workspace (/workspace/.gemini/settings.json) settings.');
|
|
74
|
+
});
|
|
59
75
|
it('should log a message if the skill is already disabled', async () => {
|
|
60
76
|
const mockSettings = {
|
|
61
77
|
forScope: vi.fn().mockReturnValue({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"disable.test.js","sourceRoot":"","sources":["../../../../src/commands/skills/disable.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EACL,YAAY,EACZ,YAAY,GAGb,MAAM,0BAA0B,CAAC;AAElC,MAAM,cAAc,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AACjD,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACpC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE;QAC9B,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC,CAAC;CACH,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;IAC1D,MAAM,MAAM,GACV,MAAM,cAAc,EAA4C,CAAC;IACnE,OAAO;QACL,GAAG,MAAM;QACT,WAAW;KACZ,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,IAAI,CAAC,0BAA0B,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;IAC3D,MAAM,MAAM,GACV,MAAM,cAAc,EAA6C,CAAC;IACpE,OAAO;QACL,GAAG,MAAM;QACT,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE;QACrB,sBAAsB,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,WAAW,CAAC;KACxE,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5B,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;CACjB,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,MAAM,gBAAgB,GAAG,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAEjD,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,EAAE,CAAC,eAAe,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;QAC7B,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;YAC7D,MAAM,YAAY,GAAG;gBACnB,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;oBAChC,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE;oBACtC,IAAI,EAAE,qBAAqB;iBAC5B,CAAC;gBACF,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE;aAClB,CAAC;YACF,gBAAgB,CAAC,eAAe,CAC9B,YAAyC,CAC1C,CAAC;YAEF,MAAM,aAAa,CAAC;gBAClB,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,YAAY,CAAC,IAA4B;aACjD,CAAC,CAAC;YAEH,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CAChD,YAAY,CAAC,IAAI,EACjB,iBAAiB,EACjB,CAAC,QAAQ,CAAC,CACX,CAAC;YACF,MAAM,CAAC,cAAc,CAAC,CAAC,oBAAoB,CACzC,KAAK,EACL,mGAAmG,CACpG,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACrE,MAAM,YAAY,GAAG;gBACnB,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;oBAChC,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE;oBAC9C,IAAI,EAAE,qBAAqB;iBAC5B,CAAC;gBACF,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE;aAClB,CAAC;YACF,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,eAAe,CACrC,YAAyC,CAC1C,CAAC;YAEF,MAAM,aAAa,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;YAElE,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACrD,MAAM,CAAC,cAAc,CAAC,CAAC,oBAAoB,CACzC,KAAK,EACL,qCAAqC,CACtC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAClD,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YAChE,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"disable.test.js","sourceRoot":"","sources":["../../../../src/commands/skills/disable.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,14 +49,14 @@ describe('skills enable command', () => {
|
|
|
49
49
|
path: '/user/settings.json',
|
|
50
50
|
};
|
|
51
51
|
}
|
|
52
|
-
return { settings: {}, path: '/
|
|
52
|
+
return { settings: {}, path: '/workspace/settings.json' };
|
|
53
53
|
}),
|
|
54
54
|
setValue: vi.fn(),
|
|
55
55
|
};
|
|
56
56
|
mockLoadSettings.mockReturnValue(mockSettings);
|
|
57
57
|
await handleEnable({ name: 'skill1' });
|
|
58
58
|
expect(mockSettings.setValue).toHaveBeenCalledWith(SettingScope.User, 'skills.disabled', []);
|
|
59
|
-
expect(emitConsoleLog).toHaveBeenCalledWith('log', 'Skill "skill1" enabled by removing it from the disabled list in user (/user/settings.json) and
|
|
59
|
+
expect(emitConsoleLog).toHaveBeenCalledWith('log', 'Skill "skill1" enabled by removing it from the disabled list in user (/user/settings.json) and workspace (/workspace/settings.json) settings.');
|
|
60
60
|
});
|
|
61
61
|
it('should enable a skill across multiple scopes', async () => {
|
|
62
62
|
const mockSettings = {
|
|
@@ -81,7 +81,7 @@ describe('skills enable command', () => {
|
|
|
81
81
|
await handleEnable({ name: 'skill1' });
|
|
82
82
|
expect(mockSettings.setValue).toHaveBeenCalledWith(SettingScope.User, 'skills.disabled', []);
|
|
83
83
|
expect(mockSettings.setValue).toHaveBeenCalledWith(SettingScope.Workspace, 'skills.disabled', []);
|
|
84
|
-
expect(emitConsoleLog).toHaveBeenCalledWith('log', 'Skill "skill1" enabled by removing it from the disabled list in
|
|
84
|
+
expect(emitConsoleLog).toHaveBeenCalledWith('log', 'Skill "skill1" enabled by removing it from the disabled list in workspace (/workspace/settings.json) and user (/user/settings.json) settings.');
|
|
85
85
|
});
|
|
86
86
|
it('should log a message if the skill is already enabled', async () => {
|
|
87
87
|
const mockSettings = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enable.test.js","sourceRoot":"","sources":["../../../../src/commands/skills/enable.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EACL,YAAY,EACZ,YAAY,GAEb,MAAM,0BAA0B,CAAC;AAElC,MAAM,cAAc,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AACjD,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACpC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE;QAC9B,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC,CAAC;CACH,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;IAC1D,MAAM,MAAM,GACV,MAAM,cAAc,EAA4C,CAAC;IACnE,OAAO;QACL,GAAG,MAAM;QACT,WAAW;KACZ,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,IAAI,CAAC,0BAA0B,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;IAC3D,MAAM,MAAM,GACV,MAAM,cAAc,EAA6C,CAAC;IACpE,OAAO;QACL,GAAG,MAAM;QACT,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE;QACrB,sBAAsB,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,WAAW,CAAC;KACxE,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5B,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;CACjB,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,MAAM,gBAAgB,GAAG,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAEjD,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,EAAE,CAAC,eAAe,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,YAAY,GAAG;gBACnB,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,EAAE;oBAC7C,IAAI,KAAK,KAAK,YAAY,CAAC,IAAI,EAAE,CAAC;wBAChC,OAAO;4BACL,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE;4BAC9C,IAAI,EAAE,qBAAqB;yBAC5B,CAAC;oBACJ,CAAC;oBACD,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"enable.test.js","sourceRoot":"","sources":["../../../../src/commands/skills/enable.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,14 +8,23 @@ import { getErrorMessage } from '../../utils/errors.js';
|
|
|
8
8
|
import { exitCli } from '../utils.js';
|
|
9
9
|
import { installSkill } from '../../utils/skillUtils.js';
|
|
10
10
|
import chalk from 'chalk';
|
|
11
|
+
import { requestConsentNonInteractive, skillsConsentString, } from '../../config/extensions/consent.js';
|
|
11
12
|
export async function handleInstall(args) {
|
|
12
13
|
try {
|
|
13
|
-
const { source } = args;
|
|
14
|
+
const { source, consent } = args;
|
|
14
15
|
const scope = args.scope ?? 'user';
|
|
15
16
|
const subpath = args.path;
|
|
17
|
+
const requestConsent = async (skills, targetDir) => {
|
|
18
|
+
if (consent) {
|
|
19
|
+
debugLogger.log('You have consented to the following:');
|
|
20
|
+
debugLogger.log(await skillsConsentString(skills, source, targetDir));
|
|
21
|
+
return true;
|
|
22
|
+
}
|
|
23
|
+
return requestConsentNonInteractive(await skillsConsentString(skills, source, targetDir));
|
|
24
|
+
};
|
|
16
25
|
const installedSkills = await installSkill(source, scope, subpath, (msg) => {
|
|
17
26
|
debugLogger.log(msg);
|
|
18
|
-
});
|
|
27
|
+
}, requestConsent);
|
|
19
28
|
for (const skill of installedSkills) {
|
|
20
29
|
debugLogger.log(chalk.green(`Successfully installed skill: ${chalk.bold(skill.name)} (scope: ${scope}, location: ${skill.location})`));
|
|
21
30
|
}
|
|
@@ -42,6 +51,11 @@ export const installCommand = {
|
|
|
42
51
|
.option('path', {
|
|
43
52
|
describe: 'Sub-path within the repository to install from (only used for git repository sources).',
|
|
44
53
|
type: 'string',
|
|
54
|
+
})
|
|
55
|
+
.option('consent', {
|
|
56
|
+
describe: 'Acknowledge the security risks of installing a skill and skip the confirmation prompt.',
|
|
57
|
+
type: 'boolean',
|
|
58
|
+
default: false,
|
|
45
59
|
})
|
|
46
60
|
.check((argv) => {
|
|
47
61
|
if (!argv.source) {
|
|
@@ -54,6 +68,7 @@ export const installCommand = {
|
|
|
54
68
|
source: argv['source'],
|
|
55
69
|
scope: argv['scope'],
|
|
56
70
|
path: argv['path'],
|
|
71
|
+
consent: argv['consent'],
|
|
57
72
|
});
|
|
58
73
|
await exitCli();
|
|
59
74
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../src/commands/skills/install.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../../../../src/commands/skills/install.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,9 +5,15 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
7
7
|
const mockInstallSkill = vi.hoisted(() => vi.fn());
|
|
8
|
+
const mockRequestConsentNonInteractive = vi.hoisted(() => vi.fn());
|
|
9
|
+
const mockSkillsConsentString = vi.hoisted(() => vi.fn());
|
|
8
10
|
vi.mock('../../utils/skillUtils.js', () => ({
|
|
9
11
|
installSkill: mockInstallSkill,
|
|
10
12
|
}));
|
|
13
|
+
vi.mock('../../config/extensions/consent.js', () => ({
|
|
14
|
+
requestConsentNonInteractive: mockRequestConsentNonInteractive,
|
|
15
|
+
skillsConsentString: mockSkillsConsentString,
|
|
16
|
+
}));
|
|
11
17
|
vi.mock('@google/gemini-cli-core', () => ({
|
|
12
18
|
debugLogger: { log: vi.fn(), error: vi.fn() },
|
|
13
19
|
}));
|
|
@@ -17,6 +23,8 @@ describe('skill install command', () => {
|
|
|
17
23
|
beforeEach(() => {
|
|
18
24
|
vi.clearAllMocks();
|
|
19
25
|
vi.spyOn(process, 'exit').mockImplementation(() => undefined);
|
|
26
|
+
mockSkillsConsentString.mockResolvedValue('Mock Consent String');
|
|
27
|
+
mockRequestConsentNonInteractive.mockResolvedValue(true);
|
|
20
28
|
});
|
|
21
29
|
describe('installCommand', () => {
|
|
22
30
|
it('should have correct command and describe', () => {
|
|
@@ -25,16 +33,46 @@ describe('skill install command', () => {
|
|
|
25
33
|
});
|
|
26
34
|
});
|
|
27
35
|
it('should call installSkill with correct arguments for user scope', async () => {
|
|
28
|
-
mockInstallSkill.
|
|
29
|
-
|
|
30
|
-
|
|
36
|
+
mockInstallSkill.mockImplementation(async (_s, _sc, _p, _ol, rc) => {
|
|
37
|
+
await rc([]);
|
|
38
|
+
return [{ name: 'test-skill', location: '/mock/user/skills/test-skill' }];
|
|
39
|
+
});
|
|
31
40
|
await handleInstall({
|
|
32
41
|
source: 'https://example.com/repo.git',
|
|
33
42
|
scope: 'user',
|
|
34
43
|
});
|
|
35
|
-
expect(mockInstallSkill).toHaveBeenCalledWith('https://example.com/repo.git', 'user', undefined, expect.any(Function));
|
|
44
|
+
expect(mockInstallSkill).toHaveBeenCalledWith('https://example.com/repo.git', 'user', undefined, expect.any(Function), expect.any(Function));
|
|
36
45
|
expect(debugLogger.log).toHaveBeenCalledWith(expect.stringContaining('Successfully installed skill: test-skill'));
|
|
37
46
|
expect(debugLogger.log).toHaveBeenCalledWith(expect.stringContaining('location: /mock/user/skills/test-skill'));
|
|
47
|
+
expect(mockRequestConsentNonInteractive).toHaveBeenCalledWith('Mock Consent String');
|
|
48
|
+
});
|
|
49
|
+
it('should skip prompt and log consent when --consent is provided', async () => {
|
|
50
|
+
mockInstallSkill.mockImplementation(async (_s, _sc, _p, _ol, rc) => {
|
|
51
|
+
await rc([]);
|
|
52
|
+
return [{ name: 'test-skill', location: '/mock/user/skills/test-skill' }];
|
|
53
|
+
});
|
|
54
|
+
await handleInstall({
|
|
55
|
+
source: 'https://example.com/repo.git',
|
|
56
|
+
consent: true,
|
|
57
|
+
});
|
|
58
|
+
expect(mockRequestConsentNonInteractive).not.toHaveBeenCalled();
|
|
59
|
+
expect(debugLogger.log).toHaveBeenCalledWith('You have consented to the following:');
|
|
60
|
+
expect(debugLogger.log).toHaveBeenCalledWith('Mock Consent String');
|
|
61
|
+
expect(mockInstallSkill).toHaveBeenCalled();
|
|
62
|
+
});
|
|
63
|
+
it('should abort installation if consent is denied', async () => {
|
|
64
|
+
mockRequestConsentNonInteractive.mockResolvedValue(false);
|
|
65
|
+
mockInstallSkill.mockImplementation(async (_s, _sc, _p, _ol, rc) => {
|
|
66
|
+
if (!(await rc([]))) {
|
|
67
|
+
throw new Error('Skill installation cancelled by user.');
|
|
68
|
+
}
|
|
69
|
+
return [];
|
|
70
|
+
});
|
|
71
|
+
await handleInstall({
|
|
72
|
+
source: 'https://example.com/repo.git',
|
|
73
|
+
});
|
|
74
|
+
expect(debugLogger.error).toHaveBeenCalledWith('Skill installation cancelled by user.');
|
|
75
|
+
expect(process.exit).toHaveBeenCalledWith(1);
|
|
38
76
|
});
|
|
39
77
|
it('should call installSkill with correct arguments for workspace scope and subpath', async () => {
|
|
40
78
|
mockInstallSkill.mockResolvedValue([
|
|
@@ -45,7 +83,7 @@ describe('skill install command', () => {
|
|
|
45
83
|
scope: 'workspace',
|
|
46
84
|
path: 'my-skills-dir',
|
|
47
85
|
});
|
|
48
|
-
expect(mockInstallSkill).toHaveBeenCalledWith('https://example.com/repo.git', 'workspace', 'my-skills-dir', expect.any(Function));
|
|
86
|
+
expect(mockInstallSkill).toHaveBeenCalledWith('https://example.com/repo.git', 'workspace', 'my-skills-dir', expect.any(Function), expect.any(Function));
|
|
49
87
|
});
|
|
50
88
|
it('should handle errors gracefully', async () => {
|
|
51
89
|
mockInstallSkill.mockRejectedValue(new Error('Install failed'));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.test.js","sourceRoot":"","sources":["../../../../src/commands/skills/install.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAE9D,MAAM,gBAAgB,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"install.test.js","sourceRoot":"","sources":["../../../../src/commands/skills/install.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { Config, type HookDefinition, type HookEventName } from '@google/gemini-cli-core';
|
|
7
|
-
import type
|
|
7
|
+
import { type MergedSettings } from './settings.js';
|
|
8
8
|
import { RESUME_LATEST } from '../utils/sessionUtils.js';
|
|
9
9
|
export interface CliArgs {
|
|
10
10
|
query: string | undefined;
|
|
@@ -30,7 +30,7 @@ export interface CliArgs {
|
|
|
30
30
|
fakeResponses: string | undefined;
|
|
31
31
|
recordResponses: string | undefined;
|
|
32
32
|
}
|
|
33
|
-
export declare function parseArguments(settings:
|
|
33
|
+
export declare function parseArguments(settings: MergedSettings): Promise<CliArgs>;
|
|
34
34
|
export declare function isDebugMode(argv: CliArgs): boolean;
|
|
35
35
|
export interface LoadCliConfigOptions {
|
|
36
36
|
cwd?: string;
|
|
@@ -40,4 +40,4 @@ export interface LoadCliConfigOptions {
|
|
|
40
40
|
disabled?: string[];
|
|
41
41
|
};
|
|
42
42
|
}
|
|
43
|
-
export declare function loadCliConfig(settings:
|
|
43
|
+
export declare function loadCliConfig(settings: MergedSettings, sessionId: string, argv: CliArgs, options?: LoadCliConfigOptions): Promise<Config>;
|