@google/gemini-cli-core 0.36.0-preview.7 → 0.37.0-preview.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/docs/CONTRIBUTING.md +10 -7
- package/dist/docs/assets/theme-tokyonight-dark.png +0 -0
- package/dist/docs/changelogs/index.md +24 -0
- package/dist/docs/changelogs/latest.md +366 -459
- package/dist/docs/changelogs/preview.md +362 -356
- package/dist/docs/cli/acp-mode.md +126 -0
- package/dist/docs/cli/cli-reference.md +1 -1
- package/dist/docs/cli/notifications.md +5 -5
- package/dist/docs/cli/plan-mode.md +12 -8
- package/dist/docs/cli/sandbox.md +1 -1
- package/dist/docs/cli/settings.md +14 -13
- package/dist/docs/cli/themes.md +5 -0
- package/dist/docs/core/index.md +2 -2
- package/dist/docs/core/subagents.md +134 -23
- package/dist/docs/get-started/gemini-3.md +1 -1
- package/dist/docs/get-started/index.md +127 -1
- package/dist/docs/ide-integration/index.md +99 -24
- package/dist/docs/index.md +0 -2
- package/dist/docs/redirects.json +1 -0
- package/dist/docs/reference/commands.md +1 -3
- package/dist/docs/reference/configuration.md +183 -92
- package/dist/docs/reference/keyboard-shortcuts.md +14 -6
- package/dist/docs/reference/policy-engine.md +16 -30
- package/dist/docs/reference/tools.md +56 -23
- package/dist/docs/resources/quota-and-pricing.md +23 -9
- package/dist/docs/sidebar.json +11 -4
- package/dist/docs/tools/planning.md +6 -4
- package/dist/src/agents/agentLoader.d.ts +12 -12
- package/dist/src/agents/agentLoader.js +1 -0
- package/dist/src/agents/agentLoader.js.map +1 -1
- package/dist/src/agents/browser/automationOverlay.js +2 -10
- package/dist/src/agents/browser/automationOverlay.js.map +1 -1
- package/dist/src/agents/browser/browserAgentDefinition.js +10 -3
- package/dist/src/agents/browser/browserAgentDefinition.js.map +1 -1
- package/dist/src/agents/browser/browserAgentFactory.d.ts +4 -4
- package/dist/src/agents/browser/browserAgentFactory.js +15 -29
- package/dist/src/agents/browser/browserAgentFactory.js.map +1 -1
- package/dist/src/agents/browser/browserAgentFactory.test.js +41 -24
- package/dist/src/agents/browser/browserAgentFactory.test.js.map +1 -1
- package/dist/src/agents/browser/browserAgentInvocation.d.ts +1 -0
- package/dist/src/agents/browser/browserAgentInvocation.js +60 -27
- package/dist/src/agents/browser/browserAgentInvocation.js.map +1 -1
- package/dist/src/agents/browser/browserAgentInvocation.test.js +59 -5
- package/dist/src/agents/browser/browserAgentInvocation.test.js.map +1 -1
- package/dist/src/agents/browser/browserManager.d.ts +51 -8
- package/dist/src/agents/browser/browserManager.js +242 -70
- package/dist/src/agents/browser/browserManager.js.map +1 -1
- package/dist/src/agents/browser/browserManager.test.js +384 -17
- package/dist/src/agents/browser/browserManager.test.js.map +1 -1
- package/dist/src/agents/browser/inputBlocker.d.ts +4 -4
- package/dist/src/agents/browser/inputBlocker.js +8 -18
- package/dist/src/agents/browser/inputBlocker.js.map +1 -1
- package/dist/src/agents/browser/inputBlocker.test.js +31 -3
- package/dist/src/agents/browser/inputBlocker.test.js.map +1 -1
- package/dist/src/agents/browser/mcpToolWrapper.d.ts +1 -1
- package/dist/src/agents/browser/mcpToolWrapper.js +9 -6
- package/dist/src/agents/browser/mcpToolWrapper.js.map +1 -1
- package/dist/src/agents/browser/mcpToolWrapper.test.js +2 -2
- package/dist/src/agents/browser/mcpToolWrapper.test.js.map +1 -1
- package/dist/src/agents/browser/snapshotSuperseder.d.ts +31 -0
- package/dist/src/agents/browser/snapshotSuperseder.js +101 -0
- package/dist/src/agents/browser/snapshotSuperseder.js.map +1 -0
- package/dist/src/agents/browser/snapshotSuperseder.test.js +158 -0
- package/dist/src/agents/browser/snapshotSuperseder.test.js.map +1 -0
- package/dist/src/agents/local-executor.d.ts +4 -0
- package/dist/src/agents/local-executor.js +46 -19
- package/dist/src/agents/local-executor.js.map +1 -1
- package/dist/src/agents/local-executor.test.js +118 -18
- package/dist/src/agents/local-executor.test.js.map +1 -1
- package/dist/src/agents/local-invocation.d.ts +1 -0
- package/dist/src/agents/local-invocation.js +19 -9
- package/dist/src/agents/local-invocation.js.map +1 -1
- package/dist/src/agents/local-invocation.test.js +24 -0
- package/dist/src/agents/local-invocation.test.js.map +1 -1
- package/dist/src/agents/registry.js +16 -1
- package/dist/src/agents/registry.js.map +1 -1
- package/dist/src/agents/registry.test.js +67 -0
- package/dist/src/agents/registry.test.js.map +1 -1
- package/dist/src/agents/types.d.ts +9 -0
- package/dist/src/agents/types.js.map +1 -1
- package/dist/src/code_assist/oauth2.js +8 -3
- package/dist/src/code_assist/oauth2.js.map +1 -1
- package/dist/src/code_assist/oauth2.test.js +57 -0
- package/dist/src/code_assist/oauth2.test.js.map +1 -1
- package/dist/src/code_assist/setup.js +5 -2
- package/dist/src/code_assist/setup.js.map +1 -1
- package/dist/src/code_assist/setup.test.js +27 -1
- package/dist/src/code_assist/setup.test.js.map +1 -1
- package/dist/src/code_assist/types.d.ts +80 -80
- package/dist/src/config/agent-loop-context.d.ts +2 -0
- package/dist/src/config/config.d.ts +81 -16
- package/dist/src/config/config.js +147 -51
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +89 -2
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/defaultModelConfigs.js +9 -0
- package/dist/src/config/defaultModelConfigs.js.map +1 -1
- package/dist/src/config/memory.d.ts +1 -0
- package/dist/src/config/memory.js +6 -0
- package/dist/src/config/memory.js.map +1 -1
- package/dist/src/config/storage.d.ts +1 -0
- package/dist/src/config/storage.js +4 -0
- package/dist/src/config/storage.js.map +1 -1
- package/dist/src/config/storage.test.js +5 -0
- package/dist/src/config/storage.test.js.map +1 -1
- package/dist/src/config/topicState.d.ts +21 -0
- package/dist/src/config/topicState.js +41 -0
- package/dist/src/config/topicState.js.map +1 -0
- package/dist/src/confirmation-bus/types.d.ts +9 -2
- package/dist/src/confirmation-bus/types.js +1 -0
- package/dist/src/confirmation-bus/types.js.map +1 -1
- package/dist/src/context/agentHistoryProvider.d.ts +45 -0
- package/dist/src/context/agentHistoryProvider.js +298 -0
- package/dist/src/context/agentHistoryProvider.js.map +1 -0
- package/dist/src/context/agentHistoryProvider.test.d.ts +6 -0
- package/dist/src/context/agentHistoryProvider.test.js +394 -0
- package/dist/src/context/agentHistoryProvider.test.js.map +1 -0
- package/dist/src/context/chatCompressionService.js.map +1 -0
- package/dist/src/context/chatCompressionService.test.js.map +1 -0
- package/dist/src/{services → context}/contextManager.d.ts +2 -0
- package/dist/src/{services → context}/contextManager.js +18 -9
- package/dist/src/context/contextManager.js.map +1 -0
- package/dist/src/{services → context}/contextManager.test.js +21 -6
- package/dist/src/context/contextManager.test.js.map +1 -0
- package/dist/src/context/toolDistillationService.d.ts +38 -0
- package/dist/src/context/toolDistillationService.js +170 -0
- package/dist/src/context/toolDistillationService.js.map +1 -0
- package/dist/src/context/toolDistillationService.test.d.ts +6 -0
- package/dist/src/context/toolDistillationService.test.js +83 -0
- package/dist/src/context/toolDistillationService.test.js.map +1 -0
- package/dist/src/{services → context}/toolOutputMaskingService.d.ts +2 -2
- package/dist/src/{services → context}/toolOutputMaskingService.js +7 -7
- package/dist/src/context/toolOutputMaskingService.js.map +1 -0
- package/dist/src/context/toolOutputMaskingService.test.d.ts +6 -0
- package/dist/src/{services → context}/toolOutputMaskingService.test.js +4 -5
- package/dist/src/context/toolOutputMaskingService.test.js.map +1 -0
- package/dist/src/context/truncation.d.ts +26 -0
- package/dist/src/context/truncation.js +102 -0
- package/dist/src/context/truncation.js.map +1 -0
- package/dist/src/core/client.d.ts +3 -1
- package/dist/src/core/client.js +23 -13
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/client.test.js +29 -34
- package/dist/src/core/client.test.js.map +1 -1
- package/dist/src/core/contentGenerator.d.ts +0 -1
- package/dist/src/core/contentGenerator.js +2 -28
- package/dist/src/core/contentGenerator.js.map +1 -1
- package/dist/src/core/contentGenerator.test.js +1 -101
- package/dist/src/core/contentGenerator.test.js.map +1 -1
- package/dist/src/core/geminiChat.js +4 -5
- package/dist/src/core/geminiChat.js.map +1 -1
- package/dist/src/core/geminiChat.test.js +71 -18
- package/dist/src/core/geminiChat.test.js.map +1 -1
- package/dist/src/core/prompts-substitution.test.js +5 -0
- package/dist/src/core/prompts-substitution.test.js.map +1 -1
- package/dist/src/core/prompts.test.js +3 -0
- package/dist/src/core/prompts.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/index.d.ts +7 -3
- package/dist/src/index.js +9 -5
- package/dist/src/index.js.map +1 -1
- package/dist/src/policy/config.d.ts +1 -1
- package/dist/src/policy/config.js +5 -2
- package/dist/src/policy/config.js.map +1 -1
- package/dist/src/policy/policies/discovered.toml +7 -0
- package/dist/src/policy/policies/non-interactive.toml +7 -0
- package/dist/src/policy/policies/plan.toml +25 -0
- package/dist/src/policy/policies/read-only.toml +6 -0
- package/dist/src/policy/policies/sandbox-default.toml +3 -2
- package/dist/src/policy/policies/write.toml +21 -0
- package/dist/src/policy/policies/yolo.toml +1 -1
- package/dist/src/policy/policy-engine.d.ts +2 -4
- package/dist/src/policy/policy-engine.js +24 -37
- package/dist/src/policy/policy-engine.js.map +1 -1
- package/dist/src/policy/policy-engine.test.js +107 -29
- package/dist/src/policy/policy-engine.test.js.map +1 -1
- package/dist/src/policy/topic-policy.test.d.ts +6 -0
- package/dist/src/policy/topic-policy.test.js +48 -0
- package/dist/src/policy/topic-policy.test.js.map +1 -0
- package/dist/src/policy/types.d.ts +3 -6
- package/dist/src/policy/types.js.map +1 -1
- package/dist/src/prompts/promptProvider.js +20 -4
- package/dist/src/prompts/promptProvider.js.map +1 -1
- package/dist/src/prompts/promptProvider.test.js +84 -1
- package/dist/src/prompts/promptProvider.test.js.map +1 -1
- package/dist/src/prompts/snippets-memory-manager.test.js +1 -1
- package/dist/src/prompts/snippets-memory-manager.test.js.map +1 -1
- package/dist/src/prompts/snippets.d.ts +3 -4
- package/dist/src/prompts/snippets.js +33 -51
- package/dist/src/prompts/snippets.js.map +1 -1
- package/dist/src/prompts/snippets.legacy.d.ts +6 -4
- package/dist/src/prompts/snippets.legacy.js +32 -7
- package/dist/src/prompts/snippets.legacy.js.map +1 -1
- package/dist/src/sandbox/linux/LinuxSandboxManager.d.ts +11 -1
- package/dist/src/sandbox/linux/LinuxSandboxManager.js +261 -27
- package/dist/src/sandbox/linux/LinuxSandboxManager.js.map +1 -1
- package/dist/src/sandbox/linux/LinuxSandboxManager.test.js +430 -125
- package/dist/src/sandbox/linux/LinuxSandboxManager.test.js.map +1 -1
- package/dist/src/sandbox/macos/MacOsSandboxManager.d.ts +7 -22
- package/dist/src/sandbox/macos/MacOsSandboxManager.js +58 -57
- package/dist/src/sandbox/macos/MacOsSandboxManager.js.map +1 -1
- package/dist/src/sandbox/macos/MacOsSandboxManager.test.js +148 -103
- package/dist/src/sandbox/macos/MacOsSandboxManager.test.js.map +1 -1
- package/dist/src/sandbox/macos/baseProfile.d.ts +1 -1
- package/dist/src/sandbox/macos/baseProfile.js +0 -6
- package/dist/src/sandbox/macos/baseProfile.js.map +1 -1
- package/dist/src/sandbox/macos/seatbeltArgsBuilder.d.ts +10 -10
- package/dist/src/sandbox/macos/seatbeltArgsBuilder.js +80 -92
- package/dist/src/sandbox/macos/seatbeltArgsBuilder.js.map +1 -1
- package/dist/src/sandbox/macos/seatbeltArgsBuilder.test.js +135 -99
- package/dist/src/sandbox/macos/seatbeltArgsBuilder.test.js.map +1 -1
- package/dist/src/sandbox/{macos → utils}/commandSafety.d.ts +11 -0
- package/dist/src/sandbox/{macos → utils}/commandSafety.js +47 -14
- package/dist/src/sandbox/utils/commandSafety.js.map +1 -0
- package/dist/src/sandbox/utils/commandUtils.d.ts +9 -0
- package/dist/src/sandbox/utils/commandUtils.js +57 -0
- package/dist/src/sandbox/utils/commandUtils.js.map +1 -0
- package/dist/src/sandbox/utils/fsUtils.d.ts +11 -0
- package/dist/src/sandbox/utils/fsUtils.js +82 -0
- package/dist/src/sandbox/utils/fsUtils.js.map +1 -0
- package/dist/src/sandbox/utils/sandboxDenialUtils.d.ts +12 -0
- package/dist/src/sandbox/utils/sandboxDenialUtils.js +68 -0
- package/dist/src/sandbox/utils/sandboxDenialUtils.js.map +1 -0
- package/dist/src/sandbox/utils/sandboxDenialUtils.test.d.ts +6 -0
- package/dist/src/sandbox/utils/sandboxDenialUtils.test.js +37 -0
- package/dist/src/sandbox/utils/sandboxDenialUtils.test.js.map +1 -0
- package/dist/src/sandbox/utils/sandboxReadWriteUtils.d.ts +5 -0
- package/dist/src/sandbox/utils/sandboxReadWriteUtils.js +60 -0
- package/dist/src/sandbox/utils/sandboxReadWriteUtils.js.map +1 -0
- package/dist/src/sandbox/windows/GeminiSandbox.cs +257 -216
- package/dist/src/sandbox/windows/WindowsSandboxManager.d.ts +12 -2
- package/dist/src/sandbox/windows/WindowsSandboxManager.js +250 -38
- package/dist/src/sandbox/windows/WindowsSandboxManager.js.map +1 -1
- package/dist/src/sandbox/windows/WindowsSandboxManager.test.js +326 -9
- package/dist/src/sandbox/windows/WindowsSandboxManager.test.js.map +1 -1
- package/dist/src/sandbox/windows/commandSafety.d.ts +19 -0
- package/dist/src/sandbox/windows/commandSafety.js +128 -0
- package/dist/src/sandbox/windows/commandSafety.js.map +1 -0
- package/dist/src/sandbox/windows/commandSafety.test.d.ts +6 -0
- package/dist/src/sandbox/windows/commandSafety.test.js +42 -0
- package/dist/src/sandbox/windows/commandSafety.test.js.map +1 -0
- package/dist/src/sandbox/windows/windowsSandboxDenialUtils.d.ts +12 -0
- package/dist/src/sandbox/windows/windowsSandboxDenialUtils.js +68 -0
- package/dist/src/sandbox/windows/windowsSandboxDenialUtils.js.map +1 -0
- package/dist/src/sandbox/windows/windowsSandboxDenialUtils.test.d.ts +6 -0
- package/dist/src/sandbox/windows/windowsSandboxDenialUtils.test.js +68 -0
- package/dist/src/sandbox/windows/windowsSandboxDenialUtils.test.js.map +1 -0
- package/dist/src/scheduler/scheduler.js +12 -2
- package/dist/src/scheduler/scheduler.js.map +1 -1
- package/dist/src/scheduler/scheduler.test.js +52 -0
- package/dist/src/scheduler/scheduler.test.js.map +1 -1
- package/dist/src/scheduler/scheduler_hooks.test.js +1 -0
- package/dist/src/scheduler/scheduler_hooks.test.js.map +1 -1
- package/dist/src/scheduler/state-manager.js +1 -1
- package/dist/src/scheduler/state-manager.js.map +1 -1
- package/dist/src/scheduler/state-manager.test.js +10 -0
- package/dist/src/scheduler/state-manager.test.js.map +1 -1
- package/dist/src/scheduler/tool-executor.js +7 -2
- package/dist/src/scheduler/tool-executor.js.map +1 -1
- package/dist/src/scheduler/tool-executor.test.js +38 -0
- package/dist/src/scheduler/tool-executor.test.js.map +1 -1
- package/dist/src/scheduler/types.d.ts +4 -2
- package/dist/src/services/chatRecordingService.d.ts +1 -13
- package/dist/src/services/chatRecordingService.js +45 -46
- package/dist/src/services/chatRecordingService.js.map +1 -1
- package/dist/src/services/chatRecordingService.test.js +79 -10
- package/dist/src/services/chatRecordingService.test.js.map +1 -1
- package/dist/src/services/executionLifecycleService.d.ts +43 -6
- package/dist/src/services/executionLifecycleService.js +49 -12
- package/dist/src/services/executionLifecycleService.js.map +1 -1
- package/dist/src/services/executionLifecycleService.test.js +157 -3
- package/dist/src/services/executionLifecycleService.test.js.map +1 -1
- package/dist/src/services/fileDiscoveryService.d.ts +17 -2
- package/dist/src/services/fileDiscoveryService.js +84 -20
- package/dist/src/services/fileDiscoveryService.js.map +1 -1
- package/dist/src/services/fileDiscoveryService.test.js +67 -1
- package/dist/src/services/fileDiscoveryService.test.js.map +1 -1
- package/dist/src/services/modelConfigService.d.ts +11 -0
- package/dist/src/services/modelConfigService.js +67 -0
- package/dist/src/services/modelConfigService.js.map +1 -1
- package/dist/src/services/modelConfigService.test.js +30 -0
- package/dist/src/services/modelConfigService.test.js.map +1 -1
- package/dist/src/services/sandboxManager.d.ts +90 -8
- package/dist/src/services/sandboxManager.integration.test.js +438 -0
- package/dist/src/services/sandboxManager.integration.test.js.map +1 -0
- package/dist/src/services/sandboxManager.js +156 -13
- package/dist/src/services/sandboxManager.js.map +1 -1
- package/dist/src/services/sandboxManager.test.js +373 -117
- package/dist/src/services/sandboxManager.test.js.map +1 -1
- package/dist/src/services/sandboxManagerFactory.d.ts +2 -3
- package/dist/src/services/sandboxManagerFactory.js +10 -17
- package/dist/src/services/sandboxManagerFactory.js.map +1 -1
- package/dist/src/services/sandboxedFileSystemService.d.ts +1 -0
- package/dist/src/services/sandboxedFileSystemService.js +32 -3
- package/dist/src/services/sandboxedFileSystemService.js.map +1 -1
- package/dist/src/services/sandboxedFileSystemService.test.js +83 -12
- package/dist/src/services/sandboxedFileSystemService.test.js.map +1 -1
- package/dist/src/services/shellExecutionService.d.ts +2 -0
- package/dist/src/services/shellExecutionService.js +45 -16
- package/dist/src/services/shellExecutionService.js.map +1 -1
- package/dist/src/services/shellExecutionService.test.js +5 -4
- package/dist/src/services/shellExecutionService.test.js.map +1 -1
- package/dist/src/services/test-data/resolved-aliases-retry.golden.json +4 -0
- package/dist/src/services/test-data/resolved-aliases.golden.json +4 -0
- package/dist/src/services/types.d.ts +14 -0
- package/dist/src/services/types.js +7 -0
- package/dist/src/services/types.js.map +1 -0
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +6 -0
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +5 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +2 -1
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +3 -1
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
- package/dist/src/telemetry/loggers.js +1 -1
- package/dist/src/telemetry/loggers.js.map +1 -1
- package/dist/src/telemetry/loggers.test.js +8 -3
- package/dist/src/telemetry/loggers.test.js.map +1 -1
- package/dist/src/telemetry/metrics.d.ts +10 -1
- package/dist/src/telemetry/metrics.js +19 -4
- package/dist/src/telemetry/metrics.js.map +1 -1
- package/dist/src/telemetry/metrics.test.js +44 -0
- package/dist/src/telemetry/metrics.test.js.map +1 -1
- package/dist/src/telemetry/types.d.ts +3 -3
- package/dist/src/telemetry/types.js +9 -4
- package/dist/src/telemetry/types.js.map +1 -1
- package/dist/src/test-utils/mock-message-bus.d.ts +1 -1
- package/dist/src/test-utils/mock-message-bus.js +1 -1
- package/dist/src/test-utils/mock-message-bus.js.map +1 -1
- package/dist/src/tools/definitions/base-declarations.d.ts +6 -0
- package/dist/src/tools/definitions/base-declarations.js +7 -0
- package/dist/src/tools/definitions/base-declarations.js.map +1 -1
- package/dist/src/tools/definitions/coreTools.d.ts +2 -1
- package/dist/src/tools/definitions/coreTools.js +9 -3
- package/dist/src/tools/definitions/coreTools.js.map +1 -1
- package/dist/src/tools/definitions/dynamic-declaration-helpers.d.ts +4 -0
- package/dist/src/tools/definitions/dynamic-declaration-helpers.js +29 -2
- package/dist/src/tools/definitions/dynamic-declaration-helpers.js.map +1 -1
- package/dist/src/tools/definitions/model-family-sets/default-legacy.js +11 -6
- package/dist/src/tools/definitions/model-family-sets/default-legacy.js.map +1 -1
- package/dist/src/tools/definitions/model-family-sets/gemini-3.js +10 -4
- package/dist/src/tools/definitions/model-family-sets/gemini-3.js.map +1 -1
- package/dist/src/tools/definitions/trackerTools.js +3 -3
- package/dist/src/tools/definitions/trackerTools.js.map +1 -1
- package/dist/src/tools/definitions/types.d.ts +1 -0
- package/dist/src/tools/enter-plan-mode.js +15 -0
- package/dist/src/tools/enter-plan-mode.js.map +1 -1
- package/dist/src/tools/enter-plan-mode.test.js +25 -0
- package/dist/src/tools/enter-plan-mode.test.js.map +1 -1
- package/dist/src/tools/grep-utils.d.ts +2 -1
- package/dist/src/tools/grep-utils.js +22 -3
- package/dist/src/tools/grep-utils.js.map +1 -1
- package/dist/src/tools/grep.js +16 -3
- package/dist/src/tools/grep.js.map +1 -1
- package/dist/src/tools/grep.test.js +34 -6
- package/dist/src/tools/grep.test.js.map +1 -1
- package/dist/src/tools/ls.js +6 -4
- package/dist/src/tools/ls.js.map +1 -1
- package/dist/src/tools/ls.test.js +22 -7
- package/dist/src/tools/ls.test.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.js +6 -3
- package/dist/src/tools/mcp-client-manager.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.test.js +35 -0
- package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
- package/dist/src/tools/memoryTool.d.ts +9 -2
- package/dist/src/tools/memoryTool.js +39 -15
- package/dist/src/tools/memoryTool.js.map +1 -1
- package/dist/src/tools/memoryTool.test.js +61 -2
- package/dist/src/tools/memoryTool.test.js.map +1 -1
- package/dist/src/tools/read-many-files.js +12 -4
- package/dist/src/tools/read-many-files.js.map +1 -1
- package/dist/src/tools/read-many-files.test.js +17 -17
- package/dist/src/tools/read-many-files.test.js.map +1 -1
- package/dist/src/tools/ripGrep.js +14 -1
- package/dist/src/tools/ripGrep.js.map +1 -1
- package/dist/src/tools/ripGrep.test.js +9 -9
- package/dist/src/tools/ripGrep.test.js.map +1 -1
- package/dist/src/tools/shell.d.ts +10 -0
- package/dist/src/tools/shell.js +97 -124
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/tools/shell.test.js +22 -3
- package/dist/src/tools/shell.test.js.map +1 -1
- package/dist/src/tools/tool-names.d.ts +4 -4
- package/dist/src/tools/tool-names.js +5 -3
- package/dist/src/tools/tool-names.js.map +1 -1
- package/dist/src/tools/tool-registry.js +11 -1
- package/dist/src/tools/tool-registry.js.map +1 -1
- package/dist/src/tools/tool-registry.test.js +43 -1
- package/dist/src/tools/tool-registry.test.js.map +1 -1
- package/dist/src/tools/tools.d.ts +12 -1
- package/dist/src/tools/tools.js +15 -0
- package/dist/src/tools/tools.js.map +1 -1
- package/dist/src/tools/tools.test.js +42 -1
- package/dist/src/tools/tools.test.js.map +1 -1
- package/dist/src/tools/topicTool.d.ts +29 -0
- package/dist/src/tools/topicTool.js +72 -0
- package/dist/src/tools/topicTool.js.map +1 -0
- package/dist/src/tools/topicTool.test.d.ts +6 -0
- package/dist/src/tools/topicTool.test.js +105 -0
- package/dist/src/tools/topicTool.test.js.map +1 -0
- package/dist/src/tools/web-fetch.js +38 -20
- package/dist/src/tools/web-fetch.js.map +1 -1
- package/dist/src/tools/web-fetch.test.js +28 -0
- package/dist/src/tools/web-fetch.test.js.map +1 -1
- package/dist/src/utils/checkpointUtils.d.ts +4 -4
- package/dist/src/utils/errors.d.ts +3 -0
- package/dist/src/utils/errors.js +28 -6
- package/dist/src/utils/errors.js.map +1 -1
- package/dist/src/utils/errors.test.js +23 -0
- package/dist/src/utils/errors.test.js.map +1 -1
- package/dist/src/utils/getFolderStructure.js +1 -1
- package/dist/src/utils/getFolderStructure.js.map +1 -1
- package/dist/src/utils/gitIgnoreParser.d.ts +2 -2
- package/dist/src/utils/gitIgnoreParser.js +28 -50
- package/dist/src/utils/gitIgnoreParser.js.map +1 -1
- package/dist/src/utils/gitIgnoreParser.test.js +51 -185
- package/dist/src/utils/gitIgnoreParser.test.js.map +1 -1
- package/dist/src/utils/ignoreFileParser.d.ts +2 -2
- package/dist/src/utils/ignoreFileParser.js +6 -17
- package/dist/src/utils/ignoreFileParser.js.map +1 -1
- package/dist/src/utils/ignoreFileParser.test.js +40 -132
- package/dist/src/utils/ignoreFileParser.test.js.map +1 -1
- package/dist/src/utils/ignorePathUtils.d.ts +11 -0
- package/dist/src/utils/ignorePathUtils.js +39 -0
- package/dist/src/utils/ignorePathUtils.js.map +1 -0
- package/dist/src/utils/ignorePathUtils.test.d.ts +6 -0
- package/dist/src/utils/ignorePathUtils.test.js +70 -0
- package/dist/src/utils/ignorePathUtils.test.js.map +1 -0
- package/dist/src/utils/memoryDiscovery.d.ts +6 -4
- package/dist/src/utils/memoryDiscovery.js +66 -41
- package/dist/src/utils/memoryDiscovery.js.map +1 -1
- package/dist/src/utils/memoryDiscovery.test.js +40 -0
- package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
- package/dist/src/utils/memoryImportProcessor.d.ts +1 -1
- package/dist/src/utils/memoryImportProcessor.js +24 -15
- package/dist/src/utils/memoryImportProcessor.js.map +1 -1
- package/dist/src/utils/sessionOperations.d.ts +19 -0
- package/dist/src/utils/sessionOperations.js +101 -0
- package/dist/src/utils/sessionOperations.js.map +1 -0
- package/dist/src/utils/sessionOperations.test.d.ts +6 -0
- package/dist/src/utils/sessionOperations.test.js +92 -0
- package/dist/src/utils/sessionOperations.test.js.map +1 -0
- package/dist/src/utils/shell-utils.d.ts +15 -0
- package/dist/src/utils/shell-utils.js +43 -2
- package/dist/src/utils/shell-utils.js.map +1 -1
- package/dist/src/utils/textUtils.d.ts +8 -0
- package/dist/src/utils/textUtils.js +16 -0
- package/dist/src/utils/textUtils.js.map +1 -1
- package/dist/src/utils/tokenCalculation.d.ts +2 -0
- package/dist/src/utils/tokenCalculation.js +2 -2
- package/dist/src/utils/tokenCalculation.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/dist/docs/get-started/examples.md +0 -141
- package/dist/google-gemini-cli-core-0.36.0-preview.6.tgz +0 -0
- package/dist/src/sandbox/macos/MacOsSandboxManager.integration.test.js +0 -164
- package/dist/src/sandbox/macos/MacOsSandboxManager.integration.test.js.map +0 -1
- package/dist/src/sandbox/macos/commandSafety.js.map +0 -1
- package/dist/src/services/chatCompressionService.js.map +0 -1
- package/dist/src/services/chatCompressionService.test.js.map +0 -1
- package/dist/src/services/contextManager.js.map +0 -1
- package/dist/src/services/contextManager.test.js.map +0 -1
- package/dist/src/services/toolOutputMaskingService.js.map +0 -1
- package/dist/src/services/toolOutputMaskingService.test.js.map +0 -1
- /package/dist/src/{services/toolOutputMaskingService.test.d.ts → agents/browser/snapshotSuperseder.test.d.ts} +0 -0
- /package/dist/src/{services → context}/chatCompressionService.d.ts +0 -0
- /package/dist/src/{services → context}/chatCompressionService.js +0 -0
- /package/dist/src/{services → context}/chatCompressionService.test.d.ts +0 -0
- /package/dist/src/{services → context}/chatCompressionService.test.js +0 -0
- /package/dist/src/{services → context}/contextManager.test.d.ts +0 -0
- /package/dist/src/{sandbox/macos/MacOsSandboxManager.integration.test.d.ts → services/sandboxManager.integration.test.d.ts} +0 -0
|
@@ -1,15 +1,29 @@
|
|
|
1
|
-
# IDE
|
|
1
|
+
# IDE Integration
|
|
2
2
|
|
|
3
3
|
Gemini CLI can integrate with your IDE to provide a more seamless and
|
|
4
4
|
context-aware experience. This integration allows the CLI to understand your
|
|
5
5
|
workspace better and enables powerful features like native in-editor diffing.
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
[Visual Studio Code](https://code.visualstudio.com/), and other editors that
|
|
9
|
-
support VS Code extensions. To build support for other editors, see the
|
|
10
|
-
[IDE Companion Extension Spec](./ide-companion-spec.md).
|
|
7
|
+
There are two primary ways to integrate Gemini CLI with an IDE:
|
|
11
8
|
|
|
12
|
-
|
|
9
|
+
1. **VS Code companion extension**: Install the "Gemini CLI Companion"
|
|
10
|
+
extension on [Antigravity](https://antigravity.google),
|
|
11
|
+
[Visual Studio Code](https://code.visualstudio.com/), or other VS Code
|
|
12
|
+
compatible editors.
|
|
13
|
+
2. **Agent Client Protocol (ACP)**: An open protocol for interoperability
|
|
14
|
+
between AI coding agents and IDEs. This method is used for integrations with
|
|
15
|
+
tools like JetBrains and Zed, which leverage the ACP Agent Registry for easy
|
|
16
|
+
discovery and installation of compatible agents like Gemini CLI.
|
|
17
|
+
|
|
18
|
+
## VS Code companion extension
|
|
19
|
+
|
|
20
|
+
The **Gemini CLI Companion extension** grants Gemini CLI direct access to your
|
|
21
|
+
VS Code compatible IDEs and improves your experience by providing real-time
|
|
22
|
+
context such as open files, cursor positions, and text selection. The extension
|
|
23
|
+
also enables a native diffing interface so you can seamlessly review and apply
|
|
24
|
+
AI-generated code changes directly within your editor.
|
|
25
|
+
|
|
26
|
+
### Features
|
|
13
27
|
|
|
14
28
|
- **Workspace context:** The CLI automatically gains awareness of your workspace
|
|
15
29
|
to provide more relevant and accurate responses. This context includes:
|
|
@@ -19,8 +33,8 @@ support VS Code extensions. To build support for other editors, see the
|
|
|
19
33
|
truncated).
|
|
20
34
|
|
|
21
35
|
- **Native diffing:** When Gemini suggests code modifications, you can view the
|
|
22
|
-
changes directly within your IDE's native diff viewer. This
|
|
23
|
-
|
|
36
|
+
changes directly within your IDE's native diff viewer. This lets you review,
|
|
37
|
+
edit, and accept or reject the suggested changes seamlessly.
|
|
24
38
|
|
|
25
39
|
- **VS Code commands:** You can access Gemini CLI features directly from the VS
|
|
26
40
|
Code Command Palette (`Cmd+Shift+P` or `Ctrl+Shift+P`):
|
|
@@ -32,18 +46,18 @@ support VS Code extensions. To build support for other editors, see the
|
|
|
32
46
|
- `Gemini CLI: View Third-Party Notices`: Displays the third-party notices for
|
|
33
47
|
the extension.
|
|
34
48
|
|
|
35
|
-
|
|
49
|
+
### Installation and setup
|
|
36
50
|
|
|
37
51
|
There are three ways to set up the IDE integration:
|
|
38
52
|
|
|
39
|
-
|
|
53
|
+
#### 1. Automatic nudge (recommended)
|
|
40
54
|
|
|
41
55
|
When you run Gemini CLI inside a supported editor, it will automatically detect
|
|
42
56
|
your environment and prompt you to connect. Answering "Yes" will automatically
|
|
43
57
|
run the necessary setup, which includes installing the companion extension and
|
|
44
58
|
enabling the connection.
|
|
45
59
|
|
|
46
|
-
|
|
60
|
+
#### 2. Manual installation from CLI
|
|
47
61
|
|
|
48
62
|
If you previously dismissed the prompt or want to install the extension
|
|
49
63
|
manually, you can run the following command inside Gemini CLI:
|
|
@@ -54,7 +68,7 @@ manually, you can run the following command inside Gemini CLI:
|
|
|
54
68
|
|
|
55
69
|
This will find the correct extension for your IDE and install it.
|
|
56
70
|
|
|
57
|
-
|
|
71
|
+
#### 3. Manual installation from a marketplace
|
|
58
72
|
|
|
59
73
|
You can also install the extension directly from a marketplace.
|
|
60
74
|
|
|
@@ -75,9 +89,9 @@ You can also install the extension directly from a marketplace.
|
|
|
75
89
|
> After manually installing the extension, you must run `/ide enable` in the CLI
|
|
76
90
|
> to activate the integration.
|
|
77
91
|
|
|
78
|
-
|
|
92
|
+
### Usage
|
|
79
93
|
|
|
80
|
-
|
|
94
|
+
#### Enabling and disabling
|
|
81
95
|
|
|
82
96
|
You can control the IDE integration from within the CLI:
|
|
83
97
|
|
|
@@ -93,7 +107,7 @@ You can control the IDE integration from within the CLI:
|
|
|
93
107
|
When enabled, Gemini CLI will automatically attempt to connect to the IDE
|
|
94
108
|
companion extension.
|
|
95
109
|
|
|
96
|
-
|
|
110
|
+
#### Checking the status
|
|
97
111
|
|
|
98
112
|
To check the connection status and see the context the CLI has received from the
|
|
99
113
|
IDE, run:
|
|
@@ -108,9 +122,9 @@ recently opened files it is aware of.
|
|
|
108
122
|
<!-- prettier-ignore -->
|
|
109
123
|
> [!NOTE]
|
|
110
124
|
> The file list is limited to 10 recently accessed files within your
|
|
111
|
-
> workspace and only includes local files on disk.
|
|
125
|
+
> workspace and only includes local files on disk.
|
|
112
126
|
|
|
113
|
-
|
|
127
|
+
#### Working with diffs
|
|
114
128
|
|
|
115
129
|
When you ask Gemini to modify a file, it can open a diff view directly in your
|
|
116
130
|
editor.
|
|
@@ -135,6 +149,63 @@ accepting them.
|
|
|
135
149
|
If you select ‘Allow for this session’ in the CLI, changes will no longer show
|
|
136
150
|
up in the IDE as they will be auto-accepted.
|
|
137
151
|
|
|
152
|
+
## Agent Client Protocol (ACP)
|
|
153
|
+
|
|
154
|
+
ACP is an open protocol that standardizes how AI coding agents communicate with
|
|
155
|
+
code editors and IDEs. It addresses the challenge of fragmented distribution,
|
|
156
|
+
where agents traditionally needed custom integrations for each client. With ACP,
|
|
157
|
+
developers can implement their agent once, and it becomes compatible with any
|
|
158
|
+
ACP-compliant editor.
|
|
159
|
+
|
|
160
|
+
For a comprehensive introduction to ACP, including its architecture and
|
|
161
|
+
benefits, refer to the official
|
|
162
|
+
[ACP Introduction](https://agentclientprotocol.com/get-started/introduction)
|
|
163
|
+
documentation.
|
|
164
|
+
|
|
165
|
+
### The ACP Agent Registry
|
|
166
|
+
|
|
167
|
+
Gemini CLI is officially available in the **ACP Agent Registry**. This allows
|
|
168
|
+
you to install and update Gemini CLI directly within supporting IDEs and
|
|
169
|
+
eliminates the need for manual downloads or IDE-specific extensions.
|
|
170
|
+
|
|
171
|
+
Using the registry ensures:
|
|
172
|
+
|
|
173
|
+
- **Ease of use**: Discover and install agents directly within your IDE
|
|
174
|
+
settings.
|
|
175
|
+
- **Latest versions**: Ensures users always have access to the most up-to-date
|
|
176
|
+
agent implementations.
|
|
177
|
+
|
|
178
|
+
For more details on how the registry works, visit the official
|
|
179
|
+
[ACP Agent Registry](https://agentclientprotocol.com/get-started/registry) page.
|
|
180
|
+
You can learn about how specific IDEs leverage this integration in the following
|
|
181
|
+
section.
|
|
182
|
+
|
|
183
|
+
### IDE-specific integration
|
|
184
|
+
|
|
185
|
+
Gemini CLI is an ACP-compatible agent available in the ACP Agent Registry.
|
|
186
|
+
Here’s how different IDEs leverage the ACP and the registry:
|
|
187
|
+
|
|
188
|
+
#### JetBrains IDEs
|
|
189
|
+
|
|
190
|
+
JetBrains IDEs (like IntelliJ IDEA, PyCharm, or GoLand) offer built-in registry
|
|
191
|
+
support, allowing users to find and install ACP-compatible agents directly.
|
|
192
|
+
|
|
193
|
+
For more details, refer to the official
|
|
194
|
+
[JetBrains AI Blog announcement](https://blog.jetbrains.com/ai/2026/01/acp-agent-registry/).
|
|
195
|
+
|
|
196
|
+
#### Zed
|
|
197
|
+
|
|
198
|
+
Zed, a modern code editor, also integrates with the ACP Agent Registry. This
|
|
199
|
+
allows Zed users to easily browse, install, and manage ACP agents.
|
|
200
|
+
|
|
201
|
+
Learn more about Zed's integration with the ACP Registry in their
|
|
202
|
+
[blog post](https://zed.dev/blog/acp-registry).
|
|
203
|
+
|
|
204
|
+
#### Other ACP-compatible IDEs
|
|
205
|
+
|
|
206
|
+
Any other IDE that supports the ACP Agent Registry can install Gemini CLI
|
|
207
|
+
directly through their in-built registry features.
|
|
208
|
+
|
|
138
209
|
## Using with sandboxing
|
|
139
210
|
|
|
140
211
|
If you are using Gemini CLI within a sandbox, please be aware of the following:
|
|
@@ -151,10 +222,9 @@ If you are using Gemini CLI within a sandbox, please be aware of the following:
|
|
|
151
222
|
|
|
152
223
|
## Troubleshooting
|
|
153
224
|
|
|
154
|
-
|
|
155
|
-
messages and how to resolve them.
|
|
225
|
+
### VS Code companion extension errors
|
|
156
226
|
|
|
157
|
-
|
|
227
|
+
#### Connection errors
|
|
158
228
|
|
|
159
229
|
- **Message:**
|
|
160
230
|
`🔴 Disconnected: Failed to connect to IDE companion extension in [IDE Name]. Please ensure the extension is running. To install the extension, run /ide install.`
|
|
@@ -174,7 +244,7 @@ messages and how to resolve them.
|
|
|
174
244
|
- **Solution:** Run `/ide enable` to try and reconnect. If the issue
|
|
175
245
|
continues, open a new terminal window or restart your IDE.
|
|
176
246
|
|
|
177
|
-
|
|
247
|
+
#### Manual PID override
|
|
178
248
|
|
|
179
249
|
If automatic IDE detection fails, or if you are running Gemini CLI in a
|
|
180
250
|
standalone terminal and want to manually associate it with a specific IDE
|
|
@@ -196,7 +266,7 @@ $env:GEMINI_CLI_IDE_PID=12345
|
|
|
196
266
|
When this variable is set, Gemini CLI will skip automatic detection and attempt
|
|
197
267
|
to connect using the provided PID.
|
|
198
268
|
|
|
199
|
-
|
|
269
|
+
#### Configuration errors
|
|
200
270
|
|
|
201
271
|
- **Message:**
|
|
202
272
|
`🔴 Disconnected: Directory mismatch. Gemini CLI is running in a different location than the open workspace in [IDE Name]. Please run the CLI from one of the following directories: [List of directories]`
|
|
@@ -210,7 +280,7 @@ to connect using the provided PID.
|
|
|
210
280
|
- **Cause:** You have no workspace open in your IDE.
|
|
211
281
|
- **Solution:** Open a workspace in your IDE and restart the CLI.
|
|
212
282
|
|
|
213
|
-
|
|
283
|
+
#### General errors
|
|
214
284
|
|
|
215
285
|
- **Message:**
|
|
216
286
|
`IDE integration is not supported in your current environment. To use this feature, run Gemini CLI in one of these supported IDEs: [List of IDEs]`
|
|
@@ -220,9 +290,14 @@ to connect using the provided PID.
|
|
|
220
290
|
IDE, like Antigravity or VS Code.
|
|
221
291
|
|
|
222
292
|
- **Message:**
|
|
223
|
-
`No installer is available for IDE. Please install
|
|
293
|
+
`No installer is available for IDE. Please install Gemini CLI Companion extension manually from the marketplace.`
|
|
224
294
|
- **Cause:** You ran `/ide install`, but the CLI does not have an automated
|
|
225
295
|
installer for your specific IDE.
|
|
226
296
|
- **Solution:** Open your IDE's extension marketplace, search for "Gemini CLI
|
|
227
297
|
Companion", and
|
|
228
298
|
[install it manually](#3-manual-installation-from-a-marketplace).
|
|
299
|
+
|
|
300
|
+
### ACP integration errors
|
|
301
|
+
|
|
302
|
+
For issues related to ACP integration, please refer to the debugging and
|
|
303
|
+
telemetry section in the [ACP Mode](../cli/acp-mode.md) documentation.
|
package/dist/docs/index.md
CHANGED
|
@@ -19,8 +19,6 @@ Jump in to Gemini CLI.
|
|
|
19
19
|
on your system.
|
|
20
20
|
- **[Authentication](./get-started/authentication.md):** Setup instructions for
|
|
21
21
|
personal and enterprise accounts.
|
|
22
|
-
- **[Examples](./get-started/examples.md):** Practical examples of Gemini CLI in
|
|
23
|
-
action.
|
|
24
22
|
- **[CLI cheatsheet](./cli/cli-reference.md):** A quick reference for common
|
|
25
23
|
commands and options.
|
|
26
24
|
- **[Gemini 3 on Gemini CLI](./get-started/gemini-3.md):** Learn about Gemini 3
|
package/dist/docs/redirects.json
CHANGED
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
"/docs/faq": "/docs/resources/faq",
|
|
14
14
|
"/docs/get-started/configuration": "/docs/reference/configuration",
|
|
15
15
|
"/docs/get-started/configuration-v1": "/docs/reference/configuration",
|
|
16
|
+
"/docs/get-started/examples": "/docs/get-started/index",
|
|
16
17
|
"/docs/index": "/docs",
|
|
17
18
|
"/docs/quota-and-pricing": "/docs/resources/quota-and-pricing",
|
|
18
19
|
"/docs/tos-privacy": "/docs/resources/tos-privacy",
|
|
@@ -17,8 +17,6 @@ Slash commands provide meta-level control over the CLI itself.
|
|
|
17
17
|
### `/agents`
|
|
18
18
|
|
|
19
19
|
- **Description:** Manage local and remote subagents.
|
|
20
|
-
- **Note:** This command is experimental and requires
|
|
21
|
-
`experimental.enableAgents: true` in your `settings.json`.
|
|
22
20
|
- **Sub-commands:**
|
|
23
21
|
- **`list`**:
|
|
24
22
|
- **Description:** Lists all discovered agents, including built-in, local,
|
|
@@ -305,7 +303,7 @@ Slash commands provide meta-level control over the CLI itself.
|
|
|
305
303
|
- **Description:** Switch to Plan Mode (read-only) and view the current plan if
|
|
306
304
|
one has been generated.
|
|
307
305
|
- **Note:** This feature is enabled by default. It can be disabled via the
|
|
308
|
-
`
|
|
306
|
+
`general.plan.enabled` setting in your configuration.
|
|
309
307
|
- **Sub-commands:**
|
|
310
308
|
- **`copy`**:
|
|
311
309
|
- **Description:** Copy the currently approved plan to your clipboard.
|
|
@@ -133,7 +133,7 @@ their corresponding top-level category object in your `settings.json` file.
|
|
|
133
133
|
|
|
134
134
|
- **`general.enableNotifications`** (boolean):
|
|
135
135
|
- **Description:** Enable run-event notifications for action-required prompts
|
|
136
|
-
and session completion.
|
|
136
|
+
and session completion.
|
|
137
137
|
- **Default:** `false`
|
|
138
138
|
|
|
139
139
|
- **`general.checkpointing.enabled`** (boolean):
|
|
@@ -141,9 +141,15 @@ their corresponding top-level category object in your `settings.json` file.
|
|
|
141
141
|
- **Default:** `false`
|
|
142
142
|
- **Requires restart:** Yes
|
|
143
143
|
|
|
144
|
+
- **`general.plan.enabled`** (boolean):
|
|
145
|
+
- **Description:** Enable Plan Mode for read-only safety during planning.
|
|
146
|
+
- **Default:** `true`
|
|
147
|
+
- **Requires restart:** Yes
|
|
148
|
+
|
|
144
149
|
- **`general.plan.directory`** (string):
|
|
145
150
|
- **Description:** The directory where planning artifacts are stored. If not
|
|
146
|
-
specified, defaults to the system temporary directory.
|
|
151
|
+
specified, defaults to the system temporary directory. A custom directory
|
|
152
|
+
requires a policy to allow write access in Plan Mode.
|
|
147
153
|
- **Default:** `undefined`
|
|
148
154
|
- **Requires restart:** Yes
|
|
149
155
|
|
|
@@ -256,6 +262,11 @@ their corresponding top-level category object in your `settings.json` file.
|
|
|
256
262
|
- **Description:** Show the "? for shortcuts" hint above the input.
|
|
257
263
|
- **Default:** `true`
|
|
258
264
|
|
|
265
|
+
- **`ui.compactToolOutput`** (boolean):
|
|
266
|
+
- **Description:** Display tool outputs (like directory listings and file
|
|
267
|
+
reads) in a compact, structured format.
|
|
268
|
+
- **Default:** `false`
|
|
269
|
+
|
|
259
270
|
- **`ui.hideBanner`** (boolean):
|
|
260
271
|
- **Description:** Hide the application banner
|
|
261
272
|
- **Default:** `false`
|
|
@@ -669,6 +680,11 @@ their corresponding top-level category object in your `settings.json` file.
|
|
|
669
680
|
"modelConfig": {
|
|
670
681
|
"model": "gemini-3-pro-preview"
|
|
671
682
|
}
|
|
683
|
+
},
|
|
684
|
+
"agent-history-provider-summarizer": {
|
|
685
|
+
"modelConfig": {
|
|
686
|
+
"model": "gemini-3-flash-preview"
|
|
687
|
+
}
|
|
672
688
|
}
|
|
673
689
|
}
|
|
674
690
|
```
|
|
@@ -854,6 +870,12 @@ their corresponding top-level category object in your `settings.json` file.
|
|
|
854
870
|
"hasAccessToPreview": false
|
|
855
871
|
},
|
|
856
872
|
"target": "gemini-2.5-pro"
|
|
873
|
+
},
|
|
874
|
+
{
|
|
875
|
+
"condition": {
|
|
876
|
+
"useCustomTools": true
|
|
877
|
+
},
|
|
878
|
+
"target": "gemini-3.1-pro-preview-customtools"
|
|
857
879
|
}
|
|
858
880
|
]
|
|
859
881
|
},
|
|
@@ -1239,6 +1261,11 @@ their corresponding top-level category object in your `settings.json` file.
|
|
|
1239
1261
|
- **Description:** Disable user input on browser window during automation.
|
|
1240
1262
|
- **Default:** `true`
|
|
1241
1263
|
|
|
1264
|
+
- **`agents.browser.maxActionsPerTask`** (number):
|
|
1265
|
+
- **Description:** The maximum number of tool calls allowed per browser task.
|
|
1266
|
+
Enforcement is hard: the agent will be terminated when the limit is reached.
|
|
1267
|
+
- **Default:** `100`
|
|
1268
|
+
|
|
1242
1269
|
- **`agents.browser.confirmSensitiveActions`** (boolean):
|
|
1243
1270
|
- **Description:** Require manual confirmation for sensitive browser actions
|
|
1244
1271
|
(e.g., fill_form, evaluate_script).
|
|
@@ -1270,6 +1297,18 @@ their corresponding top-level category object in your `settings.json` file.
|
|
|
1270
1297
|
- **Description:** Maximum number of directories to search for memory.
|
|
1271
1298
|
- **Default:** `200`
|
|
1272
1299
|
|
|
1300
|
+
- **`context.memoryBoundaryMarkers`** (array):
|
|
1301
|
+
- **Description:** File or directory names that mark the boundary for
|
|
1302
|
+
GEMINI.md discovery. The upward traversal stops at the first directory
|
|
1303
|
+
containing any of these markers. An empty array disables parent traversal.
|
|
1304
|
+
- **Default:**
|
|
1305
|
+
|
|
1306
|
+
```json
|
|
1307
|
+
[".git"]
|
|
1308
|
+
```
|
|
1309
|
+
|
|
1310
|
+
- **Requires restart:** Yes
|
|
1311
|
+
|
|
1273
1312
|
- **`context.includeDirectories`** (array):
|
|
1274
1313
|
- **Description:** Additional directories to include in the workspace context.
|
|
1275
1314
|
Missing directories will be skipped with a warning.
|
|
@@ -1337,6 +1376,14 @@ their corresponding top-level category object in your `settings.json` file.
|
|
|
1337
1376
|
- **Default:** `true`
|
|
1338
1377
|
- **Requires restart:** Yes
|
|
1339
1378
|
|
|
1379
|
+
- **`tools.shell.backgroundCompletionBehavior`** (enum):
|
|
1380
|
+
- **Description:** Controls what happens when a background shell command
|
|
1381
|
+
finishes. 'silent' (default): quietly exits in background. 'inject':
|
|
1382
|
+
automatically returns output to agent. 'notify': shows brief message in
|
|
1383
|
+
chat.
|
|
1384
|
+
- **Default:** `"silent"`
|
|
1385
|
+
- **Values:** `"silent"`, `"inject"`, `"notify"`
|
|
1386
|
+
|
|
1340
1387
|
- **`tools.shell.pager`** (string):
|
|
1341
1388
|
- **Description:** The pager command to use for shell output. Defaults to
|
|
1342
1389
|
`cat`.
|
|
@@ -1540,28 +1587,6 @@ their corresponding top-level category object in your `settings.json` file.
|
|
|
1540
1587
|
|
|
1541
1588
|
#### `experimental`
|
|
1542
1589
|
|
|
1543
|
-
- **`experimental.toolOutputMasking.enabled`** (boolean):
|
|
1544
|
-
- **Description:** Enables tool output masking to save tokens.
|
|
1545
|
-
- **Default:** `true`
|
|
1546
|
-
- **Requires restart:** Yes
|
|
1547
|
-
|
|
1548
|
-
- **`experimental.toolOutputMasking.toolProtectionThreshold`** (number):
|
|
1549
|
-
- **Description:** Minimum number of tokens to protect from masking (most
|
|
1550
|
-
recent tool outputs).
|
|
1551
|
-
- **Default:** `50000`
|
|
1552
|
-
- **Requires restart:** Yes
|
|
1553
|
-
|
|
1554
|
-
- **`experimental.toolOutputMasking.minPrunableTokensThreshold`** (number):
|
|
1555
|
-
- **Description:** Minimum prunable tokens required to trigger a masking pass.
|
|
1556
|
-
- **Default:** `30000`
|
|
1557
|
-
- **Requires restart:** Yes
|
|
1558
|
-
|
|
1559
|
-
- **`experimental.toolOutputMasking.protectLatestTurn`** (boolean):
|
|
1560
|
-
- **Description:** Ensures the absolute latest turn is never masked,
|
|
1561
|
-
regardless of token count.
|
|
1562
|
-
- **Default:** `true`
|
|
1563
|
-
- **Requires restart:** Yes
|
|
1564
|
-
|
|
1565
1590
|
- **`experimental.enableAgents`** (boolean):
|
|
1566
1591
|
- **Description:** Enable local and remote subagents.
|
|
1567
1592
|
- **Default:** `true`
|
|
@@ -1600,7 +1625,7 @@ their corresponding top-level category object in your `settings.json` file.
|
|
|
1600
1625
|
|
|
1601
1626
|
- **`experimental.jitContext`** (boolean):
|
|
1602
1627
|
- **Description:** Enable Just-In-Time (JIT) context loading.
|
|
1603
|
-
- **Default:** `
|
|
1628
|
+
- **Default:** `false`
|
|
1604
1629
|
- **Requires restart:** Yes
|
|
1605
1630
|
|
|
1606
1631
|
- **`experimental.useOSC52Paste`** (boolean):
|
|
@@ -1615,11 +1640,6 @@ their corresponding top-level category object in your `settings.json` file.
|
|
|
1615
1640
|
configured to allow it).
|
|
1616
1641
|
- **Default:** `false`
|
|
1617
1642
|
|
|
1618
|
-
- **`experimental.plan`** (boolean):
|
|
1619
|
-
- **Description:** Enable Plan Mode.
|
|
1620
|
-
- **Default:** `true`
|
|
1621
|
-
- **Requires restart:** Yes
|
|
1622
|
-
|
|
1623
1643
|
- **`experimental.taskTracker`** (boolean):
|
|
1624
1644
|
- **Description:** Enable task tracker tools.
|
|
1625
1645
|
- **Default:** `false`
|
|
@@ -1665,6 +1685,11 @@ their corresponding top-level category object in your `settings.json` file.
|
|
|
1665
1685
|
- **Default:** `false`
|
|
1666
1686
|
- **Requires restart:** Yes
|
|
1667
1687
|
|
|
1688
|
+
- **`experimental.contextManagement`** (boolean):
|
|
1689
|
+
- **Description:** Enable logic for context management.
|
|
1690
|
+
- **Default:** `false`
|
|
1691
|
+
- **Requires restart:** Yes
|
|
1692
|
+
|
|
1668
1693
|
- **`experimental.topicUpdateNarration`** (boolean):
|
|
1669
1694
|
- **Description:** Enable the experimental Topic & Update communication model
|
|
1670
1695
|
for reduced chattiness and structured progress reporting.
|
|
@@ -1756,6 +1781,69 @@ their corresponding top-level category object in your `settings.json` file.
|
|
|
1756
1781
|
prioritize available tools dynamically.
|
|
1757
1782
|
- **Default:** `[]`
|
|
1758
1783
|
|
|
1784
|
+
#### `contextManagement`
|
|
1785
|
+
|
|
1786
|
+
- **`contextManagement.historyWindow.maxTokens`** (number):
|
|
1787
|
+
- **Description:** The number of tokens to allow before triggering
|
|
1788
|
+
compression.
|
|
1789
|
+
- **Default:** `150000`
|
|
1790
|
+
- **Requires restart:** Yes
|
|
1791
|
+
|
|
1792
|
+
- **`contextManagement.historyWindow.retainedTokens`** (number):
|
|
1793
|
+
- **Description:** The number of tokens to always retain.
|
|
1794
|
+
- **Default:** `40000`
|
|
1795
|
+
- **Requires restart:** Yes
|
|
1796
|
+
|
|
1797
|
+
- **`contextManagement.messageLimits.normalMaxTokens`** (number):
|
|
1798
|
+
- **Description:** The target number of tokens to budget for a normal
|
|
1799
|
+
conversation turn.
|
|
1800
|
+
- **Default:** `2500`
|
|
1801
|
+
- **Requires restart:** Yes
|
|
1802
|
+
|
|
1803
|
+
- **`contextManagement.messageLimits.retainedMaxTokens`** (number):
|
|
1804
|
+
- **Description:** The maximum number of tokens a single conversation turn can
|
|
1805
|
+
consume before truncation.
|
|
1806
|
+
- **Default:** `12000`
|
|
1807
|
+
- **Requires restart:** Yes
|
|
1808
|
+
|
|
1809
|
+
- **`contextManagement.messageLimits.normalizationHeadRatio`** (number):
|
|
1810
|
+
- **Description:** The ratio of tokens to retain from the beginning of a
|
|
1811
|
+
truncated message (0.0 to 1.0).
|
|
1812
|
+
- **Default:** `0.25`
|
|
1813
|
+
- **Requires restart:** Yes
|
|
1814
|
+
|
|
1815
|
+
- **`contextManagement.tools.distillation.maxOutputTokens`** (number):
|
|
1816
|
+
- **Description:** Maximum tokens to show to the model when truncating large
|
|
1817
|
+
tool outputs.
|
|
1818
|
+
- **Default:** `10000`
|
|
1819
|
+
- **Requires restart:** Yes
|
|
1820
|
+
|
|
1821
|
+
- **`contextManagement.tools.distillation.summarizationThresholdTokens`**
|
|
1822
|
+
(number):
|
|
1823
|
+
- **Description:** Threshold above which truncated tool outputs will be
|
|
1824
|
+
summarized by an LLM.
|
|
1825
|
+
- **Default:** `20000`
|
|
1826
|
+
- **Requires restart:** Yes
|
|
1827
|
+
|
|
1828
|
+
- **`contextManagement.tools.outputMasking.protectionThresholdTokens`**
|
|
1829
|
+
(number):
|
|
1830
|
+
- **Description:** Minimum number of tokens to protect from masking (most
|
|
1831
|
+
recent tool outputs).
|
|
1832
|
+
- **Default:** `50000`
|
|
1833
|
+
- **Requires restart:** Yes
|
|
1834
|
+
|
|
1835
|
+
- **`contextManagement.tools.outputMasking.minPrunableThresholdTokens`**
|
|
1836
|
+
(number):
|
|
1837
|
+
- **Description:** Minimum prunable tokens required to trigger a masking pass.
|
|
1838
|
+
- **Default:** `30000`
|
|
1839
|
+
- **Requires restart:** Yes
|
|
1840
|
+
|
|
1841
|
+
- **`contextManagement.tools.outputMasking.protectLatestTurn`** (boolean):
|
|
1842
|
+
- **Description:** Ensures the absolute latest turn is never masked,
|
|
1843
|
+
regardless of token count.
|
|
1844
|
+
- **Default:** `true`
|
|
1845
|
+
- **Requires restart:** Yes
|
|
1846
|
+
|
|
1759
1847
|
#### `admin`
|
|
1760
1848
|
|
|
1761
1849
|
- **`admin.secureModeEnabled`** (boolean):
|
|
@@ -2148,37 +2236,14 @@ You can customize this behavior in your `settings.json` file:
|
|
|
2148
2236
|
Arguments passed directly when running the CLI can override other configurations
|
|
2149
2237
|
for that specific session.
|
|
2150
2238
|
|
|
2151
|
-
- **`--
|
|
2152
|
-
-
|
|
2153
|
-
|
|
2154
|
-
-
|
|
2155
|
-
|
|
2156
|
-
-
|
|
2157
|
-
|
|
2158
|
-
-
|
|
2159
|
-
- Starts an interactive session with the provided prompt as the initial input.
|
|
2160
|
-
- The prompt is processed within the interactive session, not before it.
|
|
2161
|
-
- Cannot be used when piping input from stdin.
|
|
2162
|
-
- Example: `gemini -i "explain this code"`
|
|
2163
|
-
- **`--output-format <format>`**:
|
|
2164
|
-
- **Description:** Specifies the format of the CLI output for non-interactive
|
|
2165
|
-
mode.
|
|
2166
|
-
- **Values:**
|
|
2167
|
-
- `text`: (Default) The standard human-readable output.
|
|
2168
|
-
- `json`: A machine-readable JSON output.
|
|
2169
|
-
- `stream-json`: A streaming JSON output that emits real-time events.
|
|
2170
|
-
- **Note:** For structured output and scripting, use the
|
|
2171
|
-
`--output-format json` or `--output-format stream-json` flag.
|
|
2172
|
-
- **`--sandbox`** (**`-s`**):
|
|
2173
|
-
- Enables sandbox mode for this session.
|
|
2174
|
-
- **`--debug`** (**`-d`**):
|
|
2175
|
-
- Enables debug mode for this session, providing more verbose output. Open the
|
|
2176
|
-
debug console with F12 to see the additional logging.
|
|
2177
|
-
|
|
2178
|
-
- **`--help`** (or **`-h`**):
|
|
2179
|
-
- Displays help information about command-line arguments.
|
|
2180
|
-
- **`--yolo`**:
|
|
2181
|
-
- Enables YOLO mode, which automatically approves all tool calls.
|
|
2239
|
+
- **`--acp`**:
|
|
2240
|
+
- Starts the agent in Agent Communication Protocol (ACP) mode.
|
|
2241
|
+
- **`--allowed-mcp-server-names`**:
|
|
2242
|
+
- A comma-separated list of MCP server names to allow for the session.
|
|
2243
|
+
- **`--allowed-tools <tool1,tool2,...>`**:
|
|
2244
|
+
- A comma-separated list of tool names that will bypass the confirmation
|
|
2245
|
+
dialog.
|
|
2246
|
+
- Example: `gemini --allowed-tools "ShellTool(git status)"`
|
|
2182
2247
|
- **`--approval-mode <mode>`**:
|
|
2183
2248
|
- Sets the approval mode for tool calls. Available modes:
|
|
2184
2249
|
- `default`: Prompt for approval on each tool call (default behavior)
|
|
@@ -2192,17 +2257,61 @@ for that specific session.
|
|
|
2192
2257
|
- Cannot be used together with `--yolo`. Use `--approval-mode=yolo` instead of
|
|
2193
2258
|
`--yolo` for the new unified approach.
|
|
2194
2259
|
- Example: `gemini --approval-mode auto_edit`
|
|
2195
|
-
- **`--
|
|
2196
|
-
-
|
|
2197
|
-
|
|
2198
|
-
|
|
2260
|
+
- **`--debug`** (**`-d`**):
|
|
2261
|
+
- Enables debug mode for this session, providing more verbose output. Open the
|
|
2262
|
+
debug console with F12 to see the additional logging.
|
|
2263
|
+
- **`--delete-session <identifier>`**:
|
|
2264
|
+
- Delete a specific chat session by its index number or full session UUID.
|
|
2265
|
+
- Use `--list-sessions` first to see available sessions, their indices, and
|
|
2266
|
+
UUIDs.
|
|
2267
|
+
- Example: `gemini --delete-session 3` or
|
|
2268
|
+
`gemini --delete-session a1b2c3d4-e5f6-7890-abcd-ef1234567890`
|
|
2199
2269
|
- **`--extensions <extension_name ...>`** (**`-e <extension_name ...>`**):
|
|
2200
2270
|
- Specifies a list of extensions to use for the session. If not provided, all
|
|
2201
2271
|
available extensions are used.
|
|
2202
2272
|
- Use the special term `gemini -e none` to disable all extensions.
|
|
2203
2273
|
- Example: `gemini -e my-extension -e my-other-extension`
|
|
2274
|
+
- **`--fake-responses`**:
|
|
2275
|
+
- Path to a file with fake model responses for testing.
|
|
2276
|
+
- **`--help`** (or **`-h`**):
|
|
2277
|
+
- Displays help information about command-line arguments.
|
|
2278
|
+
- **`--include-directories <dir1,dir2,...>`**:
|
|
2279
|
+
- Includes additional directories in the workspace for multi-directory
|
|
2280
|
+
support.
|
|
2281
|
+
- Can be specified multiple times or as comma-separated values.
|
|
2282
|
+
- 5 directories can be added at maximum.
|
|
2283
|
+
- Example: `--include-directories /path/to/project1,/path/to/project2` or
|
|
2284
|
+
`--include-directories /path/to/project1 --include-directories /path/to/project2`
|
|
2204
2285
|
- **`--list-extensions`** (**`-l`**):
|
|
2205
2286
|
- Lists all available extensions and exits.
|
|
2287
|
+
- **`--list-sessions`**:
|
|
2288
|
+
- List all available chat sessions for the current project and exit.
|
|
2289
|
+
- Shows session indices, dates, message counts, and preview of first user
|
|
2290
|
+
message.
|
|
2291
|
+
- Example: `gemini --list-sessions`
|
|
2292
|
+
- **`--model <model_name>`** (**`-m <model_name>`**):
|
|
2293
|
+
- Specifies the Gemini model to use for this session.
|
|
2294
|
+
- Example: `npm start -- --model gemini-3-pro-preview`
|
|
2295
|
+
- **`--output-format <format>`**:
|
|
2296
|
+
- **Description:** Specifies the format of the CLI output for non-interactive
|
|
2297
|
+
mode.
|
|
2298
|
+
- **Values:**
|
|
2299
|
+
- `text`: (Default) The standard human-readable output.
|
|
2300
|
+
- `json`: A machine-readable JSON output.
|
|
2301
|
+
- `stream-json`: A streaming JSON output that emits real-time events.
|
|
2302
|
+
- **Note:** For structured output and scripting, use the
|
|
2303
|
+
`--output-format json` or `--output-format stream-json` flag.
|
|
2304
|
+
- **`--prompt <your_prompt>`** (**`-p <your_prompt>`**):
|
|
2305
|
+
- **Deprecated:** Use positional arguments instead.
|
|
2306
|
+
- Used to pass a prompt directly to the command. This invokes Gemini CLI in a
|
|
2307
|
+
non-interactive mode.
|
|
2308
|
+
- **`--prompt-interactive <your_prompt>`** (**`-i <your_prompt>`**):
|
|
2309
|
+
- Starts an interactive session with the provided prompt as the initial input.
|
|
2310
|
+
- The prompt is processed within the interactive session, not before it.
|
|
2311
|
+
- Cannot be used when piping input from stdin.
|
|
2312
|
+
- Example: `gemini -i "explain this code"`
|
|
2313
|
+
- **`--record-responses`**:
|
|
2314
|
+
- Path to a file to record model responses for testing.
|
|
2206
2315
|
- **`--resume [session_id]`** (**`-r [session_id]`**):
|
|
2207
2316
|
- Resume a previous chat session. Use "latest" for the most recent session,
|
|
2208
2317
|
provide a session index number, or provide a full session UUID.
|
|
@@ -2210,37 +2319,15 @@ for that specific session.
|
|
|
2210
2319
|
- Example: `gemini --resume 5` or `gemini --resume latest` or
|
|
2211
2320
|
`gemini --resume a1b2c3d4-e5f6-7890-abcd-ef1234567890` or `gemini --resume`
|
|
2212
2321
|
- See [Session Management](../cli/session-management.md) for more details.
|
|
2213
|
-
- **`--
|
|
2214
|
-
-
|
|
2215
|
-
- Shows session indices, dates, message counts, and preview of first user
|
|
2216
|
-
message.
|
|
2217
|
-
- Example: `gemini --list-sessions`
|
|
2218
|
-
- **`--delete-session <identifier>`**:
|
|
2219
|
-
- Delete a specific chat session by its index number or full session UUID.
|
|
2220
|
-
- Use `--list-sessions` first to see available sessions, their indices, and
|
|
2221
|
-
UUIDs.
|
|
2222
|
-
- Example: `gemini --delete-session 3` or
|
|
2223
|
-
`gemini --delete-session a1b2c3d4-e5f6-7890-abcd-ef1234567890`
|
|
2224
|
-
- **`--include-directories <dir1,dir2,...>`**:
|
|
2225
|
-
- Includes additional directories in the workspace for multi-directory
|
|
2226
|
-
support.
|
|
2227
|
-
- Can be specified multiple times or as comma-separated values.
|
|
2228
|
-
- 5 directories can be added at maximum.
|
|
2229
|
-
- Example: `--include-directories /path/to/project1,/path/to/project2` or
|
|
2230
|
-
`--include-directories /path/to/project1 --include-directories /path/to/project2`
|
|
2322
|
+
- **`--sandbox`** (**`-s`**):
|
|
2323
|
+
- Enables sandbox mode for this session.
|
|
2231
2324
|
- **`--screen-reader`**:
|
|
2232
2325
|
- Enables screen reader mode, which adjusts the TUI for better compatibility
|
|
2233
2326
|
with screen readers.
|
|
2234
2327
|
- **`--version`**:
|
|
2235
2328
|
- Displays the version of the CLI.
|
|
2236
|
-
- **`--
|
|
2237
|
-
-
|
|
2238
|
-
- **`--allowed-mcp-server-names`**:
|
|
2239
|
-
- Allowed MCP server names.
|
|
2240
|
-
- **`--fake-responses`**:
|
|
2241
|
-
- Path to a file with fake model responses for testing.
|
|
2242
|
-
- **`--record-responses`**:
|
|
2243
|
-
- Path to a file to record model responses for testing.
|
|
2329
|
+
- **`--yolo`**:
|
|
2330
|
+
- Enables YOLO mode, which automatically approves all tool calls.
|
|
2244
2331
|
|
|
2245
2332
|
## Context files (hierarchical instructional context)
|
|
2246
2333
|
|
|
@@ -2365,9 +2452,13 @@ can be based on the base sandbox image:
|
|
|
2365
2452
|
```dockerfile
|
|
2366
2453
|
FROM gemini-cli-sandbox
|
|
2367
2454
|
|
|
2368
|
-
# Add your custom dependencies or configurations here
|
|
2455
|
+
# Add your custom dependencies or configurations here.
|
|
2456
|
+
# Note: The base image runs as the non-root 'node' user.
|
|
2457
|
+
# You must switch to 'root' to install system packages.
|
|
2369
2458
|
# For example:
|
|
2459
|
+
# USER root
|
|
2370
2460
|
# RUN apt-get update && apt-get install -y some-package
|
|
2461
|
+
# USER node
|
|
2371
2462
|
# COPY ./my-config /app/my-config
|
|
2372
2463
|
```
|
|
2373
2464
|
|