@mmmbuto/gemini-cli-termux 0.30.3-termux → 0.30.5-termux
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +42 -193
- package/bundle/docs/cli/settings.md +8 -9
- package/bundle/docs/extensions/reference.md +14 -38
- package/bundle/docs/hooks/reference.md +0 -8
- package/bundle/docs/reference/configuration.md +0 -8
- package/bundle/gemini.js +10730 -11704
- package/bundle/node_modules/@google/gemini-cli-devtools/package.json +1 -1
- package/bundle/package.json +2 -1
- package/package.json +67 -5
- package/packages/cli/dist/index.js +0 -0
- package/packages/cli/dist/package.json +2 -2
- package/packages/cli/dist/src/commands/extensions/examples/custom-commands/gemini-extension.json +2 -2
- package/packages/cli/dist/src/commands/extensions/examples/exclude-tools/gemini-extension.json +3 -3
- package/packages/cli/dist/src/commands/extensions/examples/hooks/gemini-extension.json +2 -2
- package/packages/cli/dist/src/commands/extensions/examples/hooks/hooks/hooks.json +11 -11
- package/packages/cli/dist/src/commands/extensions/examples/mcp-server/example.js +1 -1
- package/packages/cli/dist/src/commands/extensions/examples/mcp-server/gemini-extension.json +8 -8
- package/packages/cli/dist/src/commands/extensions/examples/mcp-server/package.json +9 -9
- package/packages/cli/dist/src/commands/extensions/examples/skills/gemini-extension.json +2 -2
- package/packages/cli/dist/src/commands/extensions/examples/themes-example/README.md +8 -5
- package/packages/cli/dist/src/commands/extensions/examples/themes-example/gemini-extension.json +27 -27
- package/packages/cli/dist/src/config/config.js +4 -65
- package/packages/cli/dist/src/config/config.js.map +1 -1
- package/packages/cli/dist/src/config/settingsSchema.d.ts +1 -235
- package/packages/cli/dist/src/config/settingsSchema.js +1 -235
- package/packages/cli/dist/src/config/settingsSchema.js.map +1 -1
- package/packages/cli/dist/src/gemini.js +0 -2
- package/packages/cli/dist/src/gemini.js.map +1 -1
- package/packages/cli/dist/src/generated/git-commit.d.ts +2 -2
- package/packages/cli/dist/src/generated/git-commit.js +2 -2
- package/packages/cli/dist/src/patches/empty-module.d.ts +2 -0
- package/packages/cli/dist/src/patches/empty-module.js +2 -0
- package/packages/cli/dist/src/patches/empty-module.js.map +1 -0
- package/packages/cli/dist/src/services/McpPromptLoader.js +3 -6
- package/packages/cli/dist/src/services/McpPromptLoader.js.map +1 -1
- package/packages/cli/dist/src/ui/components/AgentConfigDialog.js +19 -5
- package/packages/cli/dist/src/ui/components/AgentConfigDialog.js.map +1 -1
- package/packages/cli/dist/src/ui/components/AgentConfigDialog.test.js +41 -19
- package/packages/cli/dist/src/ui/components/AgentConfigDialog.test.js.map +1 -1
- package/packages/cli/dist/src/ui/components/DialogManager.d.ts +1 -1
- package/packages/cli/dist/src/ui/components/DialogManager.js +34 -7
- package/packages/cli/dist/src/ui/components/DialogManager.js.map +1 -1
- package/packages/cli/dist/src/ui/components/InputPrompt.d.ts +9 -0
- package/packages/cli/dist/src/ui/components/InputPrompt.js +350 -125
- package/packages/cli/dist/src/ui/components/InputPrompt.js.map +1 -1
- package/packages/cli/dist/src/ui/components/InputPrompt.test.js +788 -35
- package/packages/cli/dist/src/ui/components/InputPrompt.test.js.map +1 -1
- package/packages/cli/dist/src/ui/components/messages/ShellToolMessage.js +2 -2
- package/packages/cli/dist/src/ui/components/messages/ShellToolMessage.js.map +1 -1
- package/packages/cli/dist/src/ui/components/messages/ToolConfirmationMessage.js +4 -77
- package/packages/cli/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
- package/packages/cli/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +0 -51
- package/packages/cli/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -1
- package/packages/cli/dist/src/ui/components/messages/ToolMessage.js +2 -2
- package/packages/cli/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
- package/packages/cli/dist/src/ui/components/messages/ToolShared.d.ts +0 -1
- package/packages/cli/dist/src/ui/components/messages/ToolShared.js +2 -2
- package/packages/cli/dist/src/ui/components/messages/ToolShared.js.map +1 -1
- package/packages/cli/dist/src/ui/components/shared/BaseSettingsDialog.js +4 -1
- package/packages/cli/dist/src/ui/components/shared/BaseSettingsDialog.js.map +1 -1
- package/packages/cli/dist/src/ui/components/shared/BaseSettingsDialog.test.js +139 -40
- package/packages/cli/dist/src/ui/components/shared/BaseSettingsDialog.test.js.map +1 -1
- package/packages/cli/dist/src/ui/components/shared/TextInput.js +2 -1
- package/packages/cli/dist/src/ui/components/shared/TextInput.js.map +1 -1
- package/packages/cli/dist/src/ui/hooks/toolMapping.js +0 -1
- package/packages/cli/dist/src/ui/hooks/toolMapping.js.map +1 -1
- package/packages/cli/dist/src/ui/hooks/toolMapping.test.js +0 -13
- package/packages/cli/dist/src/ui/hooks/toolMapping.test.js.map +1 -1
- package/packages/cli/dist/src/ui/hooks/useToolScheduler.js +2 -18
- package/packages/cli/dist/src/ui/hooks/useToolScheduler.js.map +1 -1
- package/packages/cli/dist/src/ui/hooks/useToolScheduler.test.js +0 -44
- package/packages/cli/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
- package/packages/cli/dist/src/ui/keyMatchers.test.js.map +1 -1
- package/packages/cli/dist/src/ui/types.d.ts +0 -1
- package/packages/cli/dist/src/ui/types.js.map +1 -1
- package/packages/cli/dist/src/ui/utils/commandUtils.js +4 -1
- package/packages/cli/dist/src/ui/utils/commandUtils.js.map +1 -1
- package/packages/cli/dist/src/utils/activityLogger.js +23 -94
- package/packages/cli/dist/src/utils/activityLogger.js.map +1 -1
- package/packages/cli/dist/src/utils/handleAutoUpdate.d.ts +1 -1
- package/packages/cli/dist/src/utils/handleAutoUpdate.js +1 -1
- package/packages/cli/dist/src/utils/handleAutoUpdate.js.map +1 -1
- package/packages/cli/dist/src/utils/handleAutoUpdate.test.js +11 -11
- package/packages/cli/dist/src/utils/handleAutoUpdate.test.js.map +1 -1
- package/{bundle/sandbox-macos-restrictive-closed.sb → packages/cli/dist/src/utils/sandbox-macos-strict-open.sb} +42 -4
- package/packages/cli/dist/src/utils/{sandbox-macos-restrictive-closed.sb → sandbox-macos-strict-proxied.sb} +44 -4
- package/packages/cli/dist/tsconfig.tsbuildinfo +1 -1
- package/packages/core/dist/docs/admin/enterprise-controls.md +115 -0
- package/packages/core/dist/docs/changelogs/index.md +57 -1
- package/packages/core/dist/docs/changelogs/latest.md +357 -314
- package/packages/core/dist/docs/changelogs/preview.md +288 -411
- package/packages/core/dist/docs/cli/checkpointing.md +2 -3
- package/packages/core/dist/docs/cli/cli-reference.md +42 -28
- package/packages/core/dist/docs/cli/custom-commands.md +3 -0
- package/packages/core/dist/docs/cli/enterprise.md +28 -8
- package/packages/core/dist/docs/cli/gemini-md.md +21 -13
- package/packages/core/dist/docs/cli/headless.md +34 -372
- package/packages/core/dist/docs/cli/model.md +1 -1
- package/packages/core/dist/docs/cli/plan-mode.md +245 -0
- package/packages/core/dist/docs/cli/rewind.md +11 -11
- package/packages/core/dist/docs/cli/sandbox.md +6 -5
- package/packages/core/dist/docs/cli/session-management.md +61 -44
- package/packages/core/dist/docs/cli/settings.md +64 -49
- package/packages/core/dist/docs/cli/skills.md +29 -7
- package/packages/core/dist/docs/cli/telemetry.md +41 -5
- package/packages/core/dist/docs/cli/themes.md +88 -54
- package/packages/core/dist/docs/cli/trusted-folders.md +31 -0
- package/packages/core/dist/docs/cli/tutorials/automation.md +187 -0
- package/packages/core/dist/docs/cli/tutorials/file-management.md +142 -0
- package/packages/core/dist/docs/cli/tutorials/mcp-setup.md +105 -0
- package/packages/core/dist/docs/cli/tutorials/memory-management.md +126 -0
- package/packages/core/dist/docs/cli/tutorials/session-management.md +105 -0
- package/packages/core/dist/docs/cli/tutorials/shell-commands.md +107 -0
- package/packages/core/dist/docs/cli/tutorials/skills-getting-started.md +36 -31
- package/packages/core/dist/docs/cli/tutorials/task-planning.md +93 -0
- package/packages/core/dist/docs/cli/tutorials/web-tools.md +78 -0
- package/packages/core/dist/docs/core/index.md +7 -7
- package/packages/core/dist/docs/core/subagents.md +40 -40
- package/packages/core/dist/docs/extensions/best-practices.md +102 -53
- package/packages/core/dist/docs/extensions/index.md +37 -21
- package/packages/core/dist/docs/extensions/reference.md +148 -219
- package/packages/core/dist/docs/extensions/releasing.md +93 -122
- package/packages/core/dist/docs/extensions/writing-extensions.md +87 -76
- package/packages/core/dist/docs/get-started/authentication.md +4 -4
- package/packages/core/dist/docs/get-started/examples.md +39 -119
- package/packages/core/dist/docs/get-started/gemini-3.md +17 -3
- package/packages/core/dist/docs/get-started/index.md +16 -5
- package/packages/core/dist/docs/get-started/installation.md +110 -77
- package/packages/core/dist/docs/hooks/best-practices.md +1 -1
- package/packages/core/dist/docs/hooks/reference.md +2 -2
- package/packages/core/dist/docs/index.md +142 -149
- package/packages/core/dist/docs/redirects.json +19 -0
- package/packages/core/dist/docs/reference/commands.md +523 -0
- package/{bundle/docs/get-started → packages/core/dist/docs/reference}/configuration.md +180 -71
- package/packages/core/dist/docs/{cli → reference}/keyboard-shortcuts.md +49 -35
- package/packages/core/dist/docs/{core → reference}/policy-engine.md +76 -32
- package/packages/core/dist/docs/releases.md +2 -2
- package/{bundle/docs → packages/core/dist/docs/resources}/faq.md +1 -1
- package/packages/core/dist/docs/{quota-and-pricing.md → resources/quota-and-pricing.md} +12 -5
- package/{bundle/docs → packages/core/dist/docs/resources}/tos-privacy.md +3 -3
- package/packages/core/dist/docs/{troubleshooting.md → resources/troubleshooting.md} +1 -1
- package/packages/core/dist/docs/sidebar.json +194 -113
- package/packages/core/dist/docs/tools/activate-skill.md +43 -0
- package/packages/core/dist/docs/tools/ask-user.md +95 -0
- package/packages/core/dist/docs/tools/file-system.md +55 -143
- package/packages/core/dist/docs/tools/index.md +97 -93
- package/packages/core/dist/docs/tools/internal-docs.md +46 -0
- package/packages/core/dist/docs/tools/mcp-server.md +65 -16
- package/packages/core/dist/docs/tools/memory.md +21 -40
- package/packages/core/dist/docs/tools/planning.md +57 -0
- package/packages/core/dist/docs/tools/shell.md +44 -88
- package/packages/core/dist/docs/tools/todos.md +22 -44
- package/packages/core/dist/docs/tools/web-fetch.md +22 -46
- package/packages/core/dist/docs/tools/web-search.md +19 -29
- package/packages/core/dist/src/code_assist/types.d.ts +14 -14
- package/packages/core/dist/src/config/config.d.ts +1 -13
- package/packages/core/dist/src/config/config.js +6 -39
- package/packages/core/dist/src/config/config.js.map +1 -1
- package/packages/core/dist/src/confirmation-bus/types.d.ts +0 -3
- package/packages/core/dist/src/confirmation-bus/types.js.map +1 -1
- package/packages/core/dist/src/core/coreToolHookTriggers.d.ts +1 -1
- package/packages/core/dist/src/core/coreToolHookTriggers.js +3 -8
- package/packages/core/dist/src/core/coreToolHookTriggers.js.map +1 -1
- package/packages/core/dist/src/generated/git-commit.d.ts +2 -2
- package/packages/core/dist/src/generated/git-commit.js +2 -2
- package/packages/core/dist/src/hooks/hookEventHandler.d.ts +2 -2
- package/packages/core/dist/src/hooks/hookEventHandler.js +2 -8
- package/packages/core/dist/src/hooks/hookEventHandler.js.map +1 -1
- package/packages/core/dist/src/hooks/hookSystem.d.ts +2 -2
- package/packages/core/dist/src/hooks/hookSystem.js +4 -4
- package/packages/core/dist/src/hooks/hookSystem.js.map +1 -1
- package/packages/core/dist/src/hooks/types.d.ts +0 -18
- package/packages/core/dist/src/hooks/types.js +0 -17
- package/packages/core/dist/src/hooks/types.js.map +1 -1
- package/packages/core/dist/src/ide/ide-client.js +1 -1
- package/packages/core/dist/src/ide/ide-client.js.map +1 -1
- package/packages/core/dist/src/ide/types.d.ts +8 -8
- package/packages/core/dist/src/index.d.ts +2 -0
- package/packages/core/dist/src/index.js +2 -0
- package/packages/core/dist/src/index.js.map +1 -1
- package/packages/core/dist/src/policy/policies/plan.toml +29 -43
- package/packages/core/dist/src/policy/policies/read-only.toml +12 -11
- package/packages/core/dist/src/policy/policies/write.toml +11 -10
- package/packages/core/dist/src/policy/policies/yolo.toml +24 -12
- package/packages/core/dist/src/policy/policy-engine.js +1 -5
- package/packages/core/dist/src/policy/policy-engine.js.map +1 -1
- package/packages/core/dist/src/policy/types.d.ts +1 -2
- package/packages/core/dist/src/policy/types.js +0 -1
- package/packages/core/dist/src/policy/types.js.map +1 -1
- package/packages/core/dist/src/safety/context-builder.d.ts +3 -3
- package/packages/core/dist/src/safety/context-builder.js +4 -60
- package/packages/core/dist/src/safety/context-builder.js.map +1 -1
- package/packages/core/dist/src/safety/context-builder.test.js +18 -98
- package/packages/core/dist/src/safety/context-builder.test.js.map +1 -1
- package/packages/core/dist/src/safety/protocol.d.ts +0 -4
- package/packages/core/dist/src/safety/registry.d.ts +1 -2
- package/packages/core/dist/src/safety/registry.js +4 -14
- package/packages/core/dist/src/safety/registry.js.map +1 -1
- package/packages/core/dist/src/safety/registry.test.js +2 -5
- package/packages/core/dist/src/safety/registry.test.js.map +1 -1
- package/packages/core/dist/src/scheduler/scheduler.d.ts +1 -1
- package/packages/core/dist/src/scheduler/scheduler.js +4 -49
- package/packages/core/dist/src/scheduler/scheduler.js.map +1 -1
- package/packages/core/dist/src/scheduler/scheduler.test.js +0 -91
- package/packages/core/dist/src/scheduler/scheduler.test.js.map +1 -1
- package/packages/core/dist/src/scheduler/state-manager.d.ts +0 -6
- package/packages/core/dist/src/scheduler/state-manager.js +0 -12
- package/packages/core/dist/src/scheduler/state-manager.js.map +1 -1
- package/packages/core/dist/src/scheduler/tool-executor.js +7 -9
- package/packages/core/dist/src/scheduler/tool-executor.js.map +1 -1
- package/packages/core/dist/src/scheduler/tool-executor.test.js +1 -1
- package/packages/core/dist/src/scheduler/tool-executor.test.js.map +1 -1
- package/packages/core/dist/src/scheduler/types.d.ts +0 -13
- package/packages/core/dist/src/services/shellExecutionService.d.ts +1 -1
- package/packages/core/dist/src/services/shellExecutionService.js +7 -8
- package/packages/core/dist/src/services/shellExecutionService.js.map +1 -1
- package/packages/core/dist/src/services/shellExecutionService.test.js +5 -5
- package/packages/core/dist/src/services/shellExecutionService.test.js.map +1 -1
- package/packages/core/dist/src/services/test-data/resolved-aliases-retry.golden.json +251 -251
- package/packages/core/dist/src/services/test-data/resolved-aliases.golden.json +251 -251
- package/packages/core/dist/src/skills/builtin/skill-creator/scripts/init_skill.cjs +5 -1
- package/packages/core/dist/src/skills/builtin/skill-creator/scripts/package_skill.cjs +5 -1
- package/packages/core/dist/src/skills/builtin/skill-creator/scripts/validate_skill.cjs +5 -1
- package/packages/core/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +1 -3
- package/packages/core/dist/src/telemetry/clearcut-logger/clearcut-logger.js +0 -2
- package/packages/core/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
- package/packages/core/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +1 -9
- package/packages/core/dist/src/telemetry/clearcut-logger/event-metadata-key.js +1 -19
- package/packages/core/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
- package/packages/core/dist/src/telemetry/index.d.ts +1 -2
- package/packages/core/dist/src/telemetry/index.js +1 -2
- package/packages/core/dist/src/telemetry/index.js.map +1 -1
- package/packages/core/dist/src/telemetry/loggers.js +0 -4
- package/packages/core/dist/src/telemetry/loggers.js.map +1 -1
- package/packages/core/dist/src/telemetry/trace.js.map +1 -1
- package/packages/core/dist/src/telemetry/types.d.ts +0 -26
- package/packages/core/dist/src/telemetry/types.js +2 -76
- package/packages/core/dist/src/telemetry/types.js.map +1 -1
- package/packages/core/dist/src/tools/diffOptions.d.ts +2 -2
- package/packages/core/dist/src/tools/diffOptions.js.map +1 -1
- package/packages/core/dist/src/tools/mcp-client.test.js.map +1 -1
- package/packages/core/dist/src/tools/mcp-tool.d.ts +1 -3
- package/packages/core/dist/src/tools/mcp-tool.js +2 -9
- package/packages/core/dist/src/tools/mcp-tool.js.map +1 -1
- package/packages/core/dist/src/tools/memoryTool.d.ts +0 -10
- package/packages/core/dist/src/tools/memoryTool.js +30 -25
- package/packages/core/dist/src/tools/memoryTool.js.map +1 -1
- package/packages/core/dist/src/tools/tool-names.d.ts +6 -0
- package/packages/core/dist/src/tools/tool-names.js +16 -1
- package/packages/core/dist/src/tools/tool-names.js.map +1 -1
- package/packages/core/dist/src/tools/tools.d.ts +0 -11
- package/packages/core/dist/src/tools/tools.js.map +1 -1
- package/packages/core/dist/src/utils/getPty.d.ts +14 -1
- package/packages/core/dist/src/utils/getPty.js +67 -2
- package/packages/core/dist/src/utils/getPty.js.map +1 -1
- package/packages/core/dist/src/utils/memoryDiscovery.d.ts +11 -3
- package/packages/core/dist/src/utils/memoryDiscovery.js +56 -21
- package/packages/core/dist/src/utils/memoryDiscovery.js.map +1 -1
- package/packages/core/dist/src/utils/secure-browser-launcher.js +40 -29
- package/packages/core/dist/src/utils/secure-browser-launcher.js.map +1 -1
- package/packages/core/dist/src/utils/textUtils.d.ts +0 -9
- package/packages/core/dist/src/utils/textUtils.js +0 -15
- package/packages/core/dist/src/utils/textUtils.js.map +1 -1
- package/packages/core/dist/src/utils/textUtils.test.js +1 -42
- package/packages/core/dist/src/utils/textUtils.test.js.map +1 -1
- package/packages/core/dist/tsconfig.tsbuildinfo +1 -1
- package/packages/test-utils/dist/tsconfig.tsbuildinfo +1 -1
- package/bundle/docs/ROADMAP.md +0 -113
- package/bundle/docs/TERMUX.md +0 -95
- package/bundle/docs/architecture.md +0 -80
- package/bundle/docs/assets/hero.png +0 -0
- package/bundle/docs/cli/authentication.md +0 -3
- package/bundle/docs/cli/commands.md +0 -430
- package/bundle/docs/cli/context-memory.md +0 -69
- package/bundle/docs/cli/index.md +0 -65
- package/bundle/docs/cli/keyboard-shortcuts.md +0 -140
- package/bundle/docs/cli/tutorials.md +0 -87
- package/bundle/docs/core/policy-engine.md +0 -305
- package/bundle/docs/get-started/configuration-v1.md +0 -888
- package/bundle/docs/patches/README.md +0 -74
- package/bundle/docs/patches/mcp-sdk-typings-shim.md +0 -27
- package/bundle/docs/quota-and-pricing.md +0 -158
- package/bundle/docs/termux-api/COMMANDS.md +0 -592
- package/bundle/docs/termux-api/DISCOVERY_SETUP.md +0 -670
- package/bundle/docs/termux-api/EXECUTION_PLAN.md +0 -532
- package/bundle/docs/termux-api/MERGE_STRATEGY.md +0 -365
- package/bundle/docs/termux-api/PATCHES.md +0 -480
- package/bundle/docs/termux-api/README.md +0 -416
- package/bundle/docs/troubleshooting.md +0 -173
- package/bundle/policies/conseca.toml +0 -6
- package/bundle/sandbox-macos-permissive-closed.sb +0 -32
- package/packages/cli/README.md +0 -173
- package/packages/cli/dist/src/commands/extensions/examples/mcp-server/example.d.ts +0 -6
- package/packages/cli/dist/src/commands/extensions/examples/mcp-server/example.js.map +0 -1
- package/packages/cli/dist/src/commands/extensions/examples/mcp-server/example.test.d.ts +0 -6
- package/packages/cli/dist/src/commands/extensions/examples/mcp-server/example.test.js +0 -111
- package/packages/cli/dist/src/commands/extensions/examples/mcp-server/example.test.js.map +0 -1
- package/packages/cli/dist/src/ui/components/messages/ToolConfirmationMessageOverflow.test.d.ts +0 -6
- package/packages/cli/dist/src/ui/components/messages/ToolConfirmationMessageOverflow.test.js +0 -93
- package/packages/cli/dist/src/ui/components/messages/ToolConfirmationMessageOverflow.test.js.map +0 -1
- package/packages/cli/dist/src/ui/hooks/useReactToolScheduler.d.ts +0 -42
- package/packages/cli/dist/src/ui/hooks/useReactToolScheduler.js +0 -105
- package/packages/cli/dist/src/ui/hooks/useReactToolScheduler.js.map +0 -1
- package/packages/cli/dist/src/ui/hooks/useReactToolScheduler.test.d.ts +0 -6
- package/packages/cli/dist/src/ui/hooks/useReactToolScheduler.test.js +0 -58
- package/packages/cli/dist/src/ui/hooks/useReactToolScheduler.test.js.map +0 -1
- package/packages/cli/dist/src/ui/hooks/useRefreshMemoryCommand.d.ts +0 -6
- package/packages/cli/dist/src/ui/hooks/useRefreshMemoryCommand.js +0 -7
- package/packages/cli/dist/src/ui/hooks/useRefreshMemoryCommand.js.map +0 -1
- package/packages/cli/dist/src/ui/hooks/useShowMemoryCommand.d.ts +0 -9
- package/packages/cli/dist/src/ui/hooks/useShowMemoryCommand.js +0 -59
- package/packages/cli/dist/src/ui/hooks/useShowMemoryCommand.js.map +0 -1
- package/packages/cli/dist/src/ui/hooks/useToolExecutionScheduler.d.ts +0 -30
- package/packages/cli/dist/src/ui/hooks/useToolExecutionScheduler.js +0 -149
- package/packages/cli/dist/src/ui/hooks/useToolExecutionScheduler.js.map +0 -1
- package/packages/cli/dist/src/ui/hooks/useToolExecutionScheduler.test.d.ts +0 -6
- package/packages/cli/dist/src/ui/hooks/useToolExecutionScheduler.test.js +0 -376
- package/packages/cli/dist/src/ui/hooks/useToolExecutionScheduler.test.js.map +0 -1
- package/packages/cli/dist/src/ui/hooks/useToolSchedulerFacade.test.d.ts +0 -6
- package/packages/cli/dist/src/ui/hooks/useToolSchedulerFacade.test.js +0 -45
- package/packages/cli/dist/src/ui/hooks/useToolSchedulerFacade.test.js.map +0 -1
- package/packages/cli/dist/src/ui/utils/InlineMarkdownRenderer.test.d.ts +0 -6
- package/packages/cli/dist/src/ui/utils/InlineMarkdownRenderer.test.js +0 -21
- package/packages/cli/dist/src/ui/utils/InlineMarkdownRenderer.test.js.map +0 -1
- package/packages/cli/dist/src/ui/utils/terminalUtils.test.d.ts +0 -6
- package/packages/cli/dist/src/ui/utils/terminalUtils.test.js +0 -40
- package/packages/cli/dist/src/ui/utils/terminalUtils.test.js.map +0 -1
- package/packages/cli/dist/src/utils/checks.d.ts +0 -19
- package/packages/cli/dist/src/utils/checks.js +0 -24
- package/packages/cli/dist/src/utils/checks.js.map +0 -1
- package/packages/cli/dist/src/utils/checks.test.d.ts +0 -6
- package/packages/cli/dist/src/utils/checks.test.js +0 -29
- package/packages/cli/dist/src/utils/checks.test.js.map +0 -1
- package/packages/cli/dist/src/utils/sandbox-macos-permissive-closed.sb +0 -32
- package/packages/cli/index.js +0 -2
- package/packages/core/dist/docs/TERMUX.md +0 -95
- package/packages/core/dist/docs/architecture.md +0 -80
- package/packages/core/dist/docs/assets/hero.png +0 -0
- package/packages/core/dist/docs/cli/authentication.md +0 -3
- package/packages/core/dist/docs/cli/commands.md +0 -430
- package/packages/core/dist/docs/cli/context-memory.md +0 -69
- package/packages/core/dist/docs/cli/index.md +0 -65
- package/packages/core/dist/docs/cli/tutorials.md +0 -87
- package/packages/core/dist/docs/cli/uninstall.md +0 -65
- package/packages/core/dist/docs/core/memport.md +0 -246
- package/packages/core/dist/docs/core/tools-api.md +0 -131
- package/packages/core/dist/docs/faq.md +0 -154
- package/packages/core/dist/docs/get-started/configuration-v1.md +0 -888
- package/packages/core/dist/docs/get-started/configuration.md +0 -1585
- package/packages/core/dist/docs/patches/README.md +0 -74
- package/packages/core/dist/docs/patches/mcp-sdk-typings-shim.md +0 -27
- package/packages/core/dist/docs/termux-api/COMMANDS.md +0 -592
- package/packages/core/dist/docs/termux-api/DISCOVERY_SETUP.md +0 -670
- package/packages/core/dist/docs/termux-api/EXECUTION_PLAN.md +0 -532
- package/packages/core/dist/docs/termux-api/MERGE_STRATEGY.md +0 -365
- package/packages/core/dist/docs/termux-api/PATCHES.md +0 -480
- package/packages/core/dist/docs/termux-api/README.md +0 -416
- package/packages/core/dist/docs/tos-privacy.md +0 -96
- package/packages/core/dist/src/safety/conseca/conseca.d.ts +0 -31
- package/packages/core/dist/src/safety/conseca/conseca.js +0 -105
- package/packages/core/dist/src/safety/conseca/conseca.js.map +0 -1
- package/packages/core/dist/src/safety/conseca/conseca.test.d.ts +0 -6
- package/packages/core/dist/src/safety/conseca/conseca.test.js +0 -226
- package/packages/core/dist/src/safety/conseca/conseca.test.js.map +0 -1
- package/packages/core/dist/src/safety/conseca/integration.test.d.ts +0 -6
- package/packages/core/dist/src/safety/conseca/integration.test.js +0 -19
- package/packages/core/dist/src/safety/conseca/integration.test.js.map +0 -1
- package/packages/core/dist/src/safety/conseca/policy-enforcer.d.ts +0 -13
- package/packages/core/dist/src/safety/conseca/policy-enforcer.js +0 -135
- package/packages/core/dist/src/safety/conseca/policy-enforcer.js.map +0 -1
- package/packages/core/dist/src/safety/conseca/policy-enforcer.test.d.ts +0 -6
- package/packages/core/dist/src/safety/conseca/policy-enforcer.test.js +0 -141
- package/packages/core/dist/src/safety/conseca/policy-enforcer.test.js.map +0 -1
- package/packages/core/dist/src/safety/conseca/policy-generator.d.ts +0 -15
- package/packages/core/dist/src/safety/conseca/policy-generator.js +0 -144
- package/packages/core/dist/src/safety/conseca/policy-generator.js.map +0 -1
- package/packages/core/dist/src/safety/conseca/policy-generator.test.d.ts +0 -6
- package/packages/core/dist/src/safety/conseca/policy-generator.test.js +0 -84
- package/packages/core/dist/src/safety/conseca/policy-generator.test.js.map +0 -1
- package/packages/core/dist/src/safety/conseca/types.d.ts +0 -15
- package/packages/core/dist/src/safety/conseca/types.js +0 -7
- package/packages/core/dist/src/safety/conseca/types.js.map +0 -1
- package/packages/core/dist/src/telemetry/conseca-logger.d.ts +0 -9
- package/packages/core/dist/src/telemetry/conseca-logger.js +0 -91
- package/packages/core/dist/src/telemetry/conseca-logger.js.map +0 -1
- package/packages/core/dist/src/telemetry/conseca-logger.test.d.ts +0 -6
- package/packages/core/dist/src/telemetry/conseca-logger.test.js +0 -89
- package/packages/core/dist/src/telemetry/conseca-logger.test.js.map +0 -1
- package/packages/core/dist/src/tools/mcpImportTool.d.ts +0 -31
- package/packages/core/dist/src/tools/mcpImportTool.js +0 -143
- package/packages/core/dist/src/tools/mcpImportTool.js.map +0 -1
- package/packages/core/dist/src/utils/contextMemory.d.ts +0 -67
- package/packages/core/dist/src/utils/contextMemory.js +0 -493
- package/packages/core/dist/src/utils/contextMemory.js.map +0 -1
- package/packages/core/dist/src/utils/contextMemory.test.d.ts +0 -6
- package/packages/core/dist/src/utils/contextMemory.test.js +0 -183
- package/packages/core/dist/src/utils/contextMemory.test.js.map +0 -1
- /package/{bundle/docs/core → packages/core/dist/docs/reference}/memport.md +0 -0
- /package/{bundle/docs/core → packages/core/dist/docs/reference}/tools-api.md +0 -0
- /package/{bundle/docs/cli → packages/core/dist/docs/resources}/uninstall.md +0 -0
|
@@ -101,8 +101,8 @@ execution.
|
|
|
101
101
|
|
|
102
102
|
#### Global MCP settings (`mcp`)
|
|
103
103
|
|
|
104
|
-
The `mcp` object in your `settings.json`
|
|
105
|
-
|
|
104
|
+
The `mcp` object in your `settings.json` lets you define global rules for all
|
|
105
|
+
MCP servers.
|
|
106
106
|
|
|
107
107
|
- **`mcp.serverCommand`** (string): A global command to start an MCP server.
|
|
108
108
|
- **`mcp.allowed`** (array of strings): A list of MCP server names to allow. If
|
|
@@ -163,7 +163,8 @@ Each server configuration supports the following properties:
|
|
|
163
163
|
- **`args`** (string[]): Command-line arguments for Stdio transport
|
|
164
164
|
- **`headers`** (object): Custom HTTP headers when using `url` or `httpUrl`
|
|
165
165
|
- **`env`** (object): Environment variables for the server process. Values can
|
|
166
|
-
reference environment variables using `$VAR_NAME` or `${VAR_NAME}` syntax
|
|
166
|
+
reference environment variables using `$VAR_NAME` or `${VAR_NAME}` syntax (all
|
|
167
|
+
platforms), or `%VAR_NAME%` (Windows only).
|
|
167
168
|
- **`cwd`** (string): Working directory for Stdio transport
|
|
168
169
|
- **`timeout`** (number): Request timeout in milliseconds (default: 600,000ms =
|
|
169
170
|
10 minutes)
|
|
@@ -184,6 +185,63 @@ Each server configuration supports the following properties:
|
|
|
184
185
|
Service Account to impersonate. Used with
|
|
185
186
|
`authProviderType: 'service_account_impersonation'`.
|
|
186
187
|
|
|
188
|
+
### Environment variable expansion
|
|
189
|
+
|
|
190
|
+
Gemini CLI automatically expands environment variables in the `env` block of
|
|
191
|
+
your MCP server configuration. This allows you to securely reference variables
|
|
192
|
+
defined in your shell or environment without hardcoding sensitive information
|
|
193
|
+
directly in your `settings.json` file.
|
|
194
|
+
|
|
195
|
+
The expansion utility supports:
|
|
196
|
+
|
|
197
|
+
- **POSIX/Bash syntax:** `$VARIABLE_NAME` or `${VARIABLE_NAME}` (supported on
|
|
198
|
+
all platforms)
|
|
199
|
+
- **Windows syntax:** `%VARIABLE_NAME%` (supported only when running on Windows)
|
|
200
|
+
|
|
201
|
+
If a variable is not defined in the current environment, it resolves to an empty
|
|
202
|
+
string.
|
|
203
|
+
|
|
204
|
+
**Example:**
|
|
205
|
+
|
|
206
|
+
```json
|
|
207
|
+
"env": {
|
|
208
|
+
"API_KEY": "$MY_EXTERNAL_TOKEN",
|
|
209
|
+
"LOG_LEVEL": "$LOG_LEVEL",
|
|
210
|
+
"TEMP_DIR": "%TEMP%"
|
|
211
|
+
}
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
### Security and environment sanitization
|
|
215
|
+
|
|
216
|
+
To protect your credentials, Gemini CLI performs environment sanitization when
|
|
217
|
+
spawning MCP server processes.
|
|
218
|
+
|
|
219
|
+
#### Automatic redaction
|
|
220
|
+
|
|
221
|
+
By default, the CLI redacts sensitive environment variables from the base
|
|
222
|
+
environment (inherited from the host process) to prevent unintended exposure to
|
|
223
|
+
third-party MCP servers. This includes:
|
|
224
|
+
|
|
225
|
+
- Core project keys: `GEMINI_API_KEY`, `GOOGLE_API_KEY`, etc.
|
|
226
|
+
- Variables matching sensitive patterns: `*TOKEN*`, `*SECRET*`, `*PASSWORD*`,
|
|
227
|
+
`*KEY*`, `*AUTH*`, `*CREDENTIAL*`.
|
|
228
|
+
- Certificates and private key patterns.
|
|
229
|
+
|
|
230
|
+
#### Explicit overrides
|
|
231
|
+
|
|
232
|
+
If an environment variable must be passed to an MCP server, you must explicitly
|
|
233
|
+
state it in the `env` property of the server configuration in `settings.json`.
|
|
234
|
+
Explicitly defined variables (including those from extensions) are trusted and
|
|
235
|
+
are **not** subjected to the automatic redaction process.
|
|
236
|
+
|
|
237
|
+
This follows the security principle that if a variable is explicitly configured
|
|
238
|
+
by the user for a specific server, it constitutes informed consent to share that
|
|
239
|
+
specific data with that server.
|
|
240
|
+
|
|
241
|
+
> **Note:** Even when explicitly defined, you should avoid hardcoding secrets.
|
|
242
|
+
> Instead, use environment variable expansion (e.g., `"MY_KEY": "$MY_KEY"`) to
|
|
243
|
+
> securely pull the value from your host environment at runtime.
|
|
244
|
+
|
|
187
245
|
### OAuth support for remote MCP servers
|
|
188
246
|
|
|
189
247
|
The Gemini CLI supports OAuth 2.0 authentication for remote MCP servers using
|
|
@@ -738,22 +796,13 @@ The MCP integration tracks several states:
|
|
|
738
796
|
- **Trust settings:** The `trust` option bypasses all confirmation dialogs. Use
|
|
739
797
|
cautiously and only for servers you completely control
|
|
740
798
|
- **Access tokens:** Be security-aware when configuring environment variables
|
|
741
|
-
containing API keys or tokens
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
and variables matching patterns like `*TOKEN*`, `*SECRET*`, `*PASSWORD*`) when
|
|
745
|
-
spawning MCP servers using the `stdio` transport. This prevents unintended
|
|
746
|
-
exposure of your credentials to third-party servers.
|
|
747
|
-
- **Explicit environment variables:** If you need to pass a specific environment
|
|
748
|
-
variable to an MCP server, you should define it explicitly in the `env`
|
|
749
|
-
property of the server configuration in `settings.json`.
|
|
799
|
+
containing API keys or tokens. See
|
|
800
|
+
[Security and environment sanitization](#security-and-environment-sanitization)
|
|
801
|
+
for details on how Gemini CLI protects your credentials.
|
|
750
802
|
- **Sandbox compatibility:** When using sandboxing, ensure MCP servers are
|
|
751
|
-
available within the sandbox environment
|
|
803
|
+
available within the sandbox environment
|
|
752
804
|
- **Private data:** Using broadly scoped personal access tokens can lead to
|
|
753
805
|
information leakage between repositories.
|
|
754
|
-
- **Untrusted servers:** Be extremely cautious when adding MCP servers from
|
|
755
|
-
untrusted or third-party sources. Malicious servers could attempt to
|
|
756
|
-
exfiltrate data or perform unauthorized actions through the tools they expose.
|
|
757
806
|
|
|
758
807
|
### Performance and resource management
|
|
759
808
|
|
|
@@ -1,54 +1,35 @@
|
|
|
1
1
|
# Memory tool (`save_memory`)
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
The `save_memory` tool allows the Gemini agent to persist specific facts, user
|
|
4
|
+
preferences, and project details across sessions.
|
|
4
5
|
|
|
5
|
-
##
|
|
6
|
+
## Technical reference
|
|
6
7
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
across sessions, providing personalized and directed assistance.
|
|
8
|
+
This tool appends information to the `## Gemini Added Memories` section of your
|
|
9
|
+
global `GEMINI.md` file (typically located at `~/.gemini/GEMINI.md`).
|
|
10
10
|
|
|
11
11
|
### Arguments
|
|
12
12
|
|
|
13
|
-
`
|
|
14
|
-
|
|
15
|
-
- `fact` (string, required): The specific fact or piece of information to
|
|
16
|
-
remember. This should be a clear, self-contained statement written in natural
|
|
13
|
+
- `fact` (string, required): A clear, self-contained statement in natural
|
|
17
14
|
language.
|
|
18
15
|
|
|
19
|
-
##
|
|
20
|
-
|
|
21
|
-
The tool appends the provided `fact` to a special `GEMINI.md` file located in
|
|
22
|
-
the user's home directory (`~/.gemini/GEMINI.md`). This file can be configured
|
|
23
|
-
to have a different name.
|
|
24
|
-
|
|
25
|
-
Once added, the facts are stored under a `## Gemini Added Memories` section.
|
|
26
|
-
This file is loaded as context in subsequent sessions, allowing the CLI to
|
|
27
|
-
recall the saved information.
|
|
28
|
-
|
|
29
|
-
Usage:
|
|
30
|
-
|
|
31
|
-
```
|
|
32
|
-
save_memory(fact="Your fact here.")
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
### `save_memory` examples
|
|
36
|
-
|
|
37
|
-
Remember a user preference:
|
|
16
|
+
## Technical behavior
|
|
38
17
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
18
|
+
- **Storage:** Appends to the global context file in the user's home directory.
|
|
19
|
+
- **Loading:** The stored facts are automatically included in the hierarchical
|
|
20
|
+
context system for all future sessions.
|
|
21
|
+
- **Format:** Saves data as a bulleted list item within a dedicated Markdown
|
|
22
|
+
section.
|
|
42
23
|
|
|
43
|
-
|
|
24
|
+
## Use cases
|
|
44
25
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
26
|
+
- Persisting user preferences (for example, "I prefer functional programming").
|
|
27
|
+
- Saving project-wide architectural decisions.
|
|
28
|
+
- Storing frequently used aliases or system configurations.
|
|
48
29
|
|
|
49
|
-
##
|
|
30
|
+
## Next steps
|
|
50
31
|
|
|
51
|
-
-
|
|
52
|
-
|
|
53
|
-
-
|
|
54
|
-
|
|
32
|
+
- Follow the [Memory management guide](../cli/tutorials/memory-management.md)
|
|
33
|
+
for practical examples.
|
|
34
|
+
- Learn how the [Project context (GEMINI.md)](../cli/gemini-md.md) system loads
|
|
35
|
+
this information.
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# Gemini CLI planning tools
|
|
2
|
+
|
|
3
|
+
Planning tools allow the Gemini model to switch into a safe, read-only "Plan
|
|
4
|
+
Mode" for researching and planning complex changes, and to signal the
|
|
5
|
+
finalization of a plan to the user.
|
|
6
|
+
|
|
7
|
+
## 1. `enter_plan_mode` (EnterPlanMode)
|
|
8
|
+
|
|
9
|
+
`enter_plan_mode` switches the CLI to Plan Mode. This tool is typically called
|
|
10
|
+
by the agent when you ask it to "start a plan" using natural language. In this
|
|
11
|
+
mode, the agent is restricted to read-only tools to allow for safe exploration
|
|
12
|
+
and planning.
|
|
13
|
+
|
|
14
|
+
> **Note:** This tool is not available when the CLI is in YOLO mode.
|
|
15
|
+
|
|
16
|
+
- **Tool name:** `enter_plan_mode`
|
|
17
|
+
- **Display name:** Enter Plan Mode
|
|
18
|
+
- **File:** `enter-plan-mode.ts`
|
|
19
|
+
- **Parameters:**
|
|
20
|
+
- `reason` (string, optional): A short reason explaining why the agent is
|
|
21
|
+
entering plan mode (e.g., "Starting a complex feature implementation").
|
|
22
|
+
- **Behavior:**
|
|
23
|
+
- Switches the CLI's approval mode to `PLAN`.
|
|
24
|
+
- Notifies the user that the agent has entered Plan Mode.
|
|
25
|
+
- **Output (`llmContent`):** A message indicating the switch, e.g.,
|
|
26
|
+
`Switching to Plan mode.`
|
|
27
|
+
- **Confirmation:** Yes. The user is prompted to confirm entering Plan Mode.
|
|
28
|
+
|
|
29
|
+
## 2. `exit_plan_mode` (ExitPlanMode)
|
|
30
|
+
|
|
31
|
+
`exit_plan_mode` signals that the planning phase is complete. It presents the
|
|
32
|
+
finalized plan to the user and requests approval to start the implementation.
|
|
33
|
+
|
|
34
|
+
- **Tool name:** `exit_plan_mode`
|
|
35
|
+
- **Display name:** Exit Plan Mode
|
|
36
|
+
- **File:** `exit-plan-mode.ts`
|
|
37
|
+
- **Parameters:**
|
|
38
|
+
- `plan_path` (string, required): The path to the finalized Markdown plan
|
|
39
|
+
file. This file MUST be located within the project's temporary plans
|
|
40
|
+
directory (e.g., `~/.gemini/tmp/<project>/plans/`).
|
|
41
|
+
- **Behavior:**
|
|
42
|
+
- Validates that the `plan_path` is within the allowed directory and that the
|
|
43
|
+
file exists and has content.
|
|
44
|
+
- Presents the plan to the user for review.
|
|
45
|
+
- If the user approves the plan:
|
|
46
|
+
- Switches the CLI's approval mode to the user's chosen approval mode (
|
|
47
|
+
`DEFAULT` or `AUTO_EDIT`).
|
|
48
|
+
- Marks the plan as approved for implementation.
|
|
49
|
+
- If the user rejects the plan:
|
|
50
|
+
- Stays in Plan Mode.
|
|
51
|
+
- Returns user feedback to the model to refine the plan.
|
|
52
|
+
- **Output (`llmContent`):**
|
|
53
|
+
- On approval: A message indicating the plan was approved and the new approval
|
|
54
|
+
mode.
|
|
55
|
+
- On rejection: A message containing the user's feedback.
|
|
56
|
+
- **Confirmation:** Yes. Shows the finalized plan and asks for user approval to
|
|
57
|
+
proceed with implementation.
|
|
@@ -1,70 +1,33 @@
|
|
|
1
1
|
# Shell tool (`run_shell_command`)
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
The `run_shell_command` tool allows the Gemini model to execute commands
|
|
4
|
+
directly on your system's shell. It is the primary mechanism for the agent to
|
|
5
|
+
interact with your environment beyond simple file edits.
|
|
4
6
|
|
|
5
|
-
##
|
|
7
|
+
## Technical reference
|
|
6
8
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
command, including interactive commands that require user input (e.g., `vim`,
|
|
10
|
-
`git rebase -i`) if the `tools.shell.enableInteractiveShell` setting is set to
|
|
11
|
-
`true`.
|
|
12
|
-
|
|
13
|
-
On Windows, commands are executed with `powershell.exe -NoProfile -Command`
|
|
14
|
-
(unless you explicitly point `ComSpec` at another shell). On other platforms,
|
|
15
|
-
they are executed with `bash -c`.
|
|
9
|
+
On Windows, commands execute with `powershell.exe -NoProfile -Command`. On other
|
|
10
|
+
platforms, they execute with `bash -c`.
|
|
16
11
|
|
|
17
12
|
### Arguments
|
|
18
13
|
|
|
19
|
-
`run_shell_command` takes the following arguments:
|
|
20
|
-
|
|
21
14
|
- `command` (string, required): The exact shell command to execute.
|
|
22
|
-
- `description` (string, optional): A brief description
|
|
23
|
-
|
|
24
|
-
- `
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
## How to use `run_shell_command` with the Gemini CLI
|
|
15
|
+
- `description` (string, optional): A brief description shown to the user for
|
|
16
|
+
confirmation.
|
|
17
|
+
- `dir_path` (string, optional): The absolute path or relative path from
|
|
18
|
+
workspace root where the command runs.
|
|
19
|
+
- `is_background` (boolean, optional): Whether to move the process to the
|
|
20
|
+
background immediately after starting.
|
|
29
21
|
|
|
30
|
-
|
|
31
|
-
`run_shell_command` can start background processes using `&`. The tool returns
|
|
32
|
-
detailed information about the execution, including:
|
|
22
|
+
### Return values
|
|
33
23
|
|
|
34
|
-
|
|
35
|
-
- `Directory`: The directory where the command was run.
|
|
36
|
-
- `Stdout`: Output from the standard output stream.
|
|
37
|
-
- `Stderr`: Output from the standard error stream.
|
|
38
|
-
- `Error`: Any error message reported by the subprocess.
|
|
39
|
-
- `Exit Code`: The exit code of the command.
|
|
40
|
-
- `Signal`: The signal number if the command was terminated by a signal.
|
|
41
|
-
- `Background PIDs`: A list of PIDs for any background processes started.
|
|
24
|
+
The tool returns a JSON object containing:
|
|
42
25
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
## `run_shell_command` examples
|
|
50
|
-
|
|
51
|
-
List files in the current directory:
|
|
52
|
-
|
|
53
|
-
```
|
|
54
|
-
run_shell_command(command="ls -la")
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
Run a script in a specific directory:
|
|
58
|
-
|
|
59
|
-
```
|
|
60
|
-
run_shell_command(command="./my_script.sh", directory="scripts", description="Run my custom script")
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
Start a background server:
|
|
64
|
-
|
|
65
|
-
```
|
|
66
|
-
run_shell_command(command="npm run dev &", description="Start development server in background")
|
|
67
|
-
```
|
|
26
|
+
- `Command`: The executed string.
|
|
27
|
+
- `Directory`: The execution path.
|
|
28
|
+
- `Stdout` / `Stderr`: The output streams.
|
|
29
|
+
- `Exit Code`: The process return code.
|
|
30
|
+
- `Background PIDs`: PIDs of any started background processes.
|
|
68
31
|
|
|
69
32
|
## Configuration
|
|
70
33
|
|
|
@@ -167,10 +130,11 @@ configuration file.
|
|
|
167
130
|
`"tools": {"core": ["run_shell_command(git)"]}` will only allow `git`
|
|
168
131
|
commands. Including the generic `run_shell_command` acts as a wildcard,
|
|
169
132
|
allowing any command not explicitly blocked.
|
|
170
|
-
- `tools.exclude
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
133
|
+
- `tools.exclude` [DEPRECATED]: To block specific commands, use the
|
|
134
|
+
[Policy Engine](../reference/policy-engine.md). Historically, this setting
|
|
135
|
+
allowed adding entries to the `exclude` list under the `tools` category in the
|
|
136
|
+
format `run_shell_command(<command>)`. For example,
|
|
137
|
+
`"tools": {"exclude": ["run_shell_command(rm)"]}` will block `rm` commands.
|
|
174
138
|
|
|
175
139
|
The validation logic is designed to be secure and flexible:
|
|
176
140
|
|
|
@@ -223,38 +187,30 @@ To block `rm` and allow all other commands:
|
|
|
223
187
|
If a command prefix is in both `tools.core` and `tools.exclude`, it will be
|
|
224
188
|
blocked.
|
|
225
189
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
```
|
|
190
|
+
- **`tools.shell.enableInteractiveShell`**: (boolean) Uses `node-pty` for
|
|
191
|
+
real-time interaction.
|
|
192
|
+
- **`tools.shell.showColor`**: (boolean) Preserves ANSI colors in output.
|
|
193
|
+
- **`tools.shell.inactivityTimeout`**: (number) Seconds to wait for output
|
|
194
|
+
before killing the process.
|
|
234
195
|
|
|
235
|
-
|
|
236
|
-
- `git status`: Allowed
|
|
196
|
+
### Command restrictions
|
|
237
197
|
|
|
238
|
-
|
|
198
|
+
You can limit which commands the agent is allowed to request using these
|
|
199
|
+
settings:
|
|
239
200
|
|
|
240
|
-
|
|
241
|
-
`
|
|
201
|
+
- **`tools.core`**: An allowlist of command prefixes (for example,
|
|
202
|
+
`["git", "npm test"]`).
|
|
203
|
+
- **`tools.exclude`**: A blocklist of command prefixes.
|
|
242
204
|
|
|
243
|
-
|
|
244
|
-
{
|
|
245
|
-
"tools": {
|
|
246
|
-
"exclude": ["run_shell_command"]
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
|
-
```
|
|
205
|
+
## Use cases
|
|
250
206
|
|
|
251
|
-
-
|
|
252
|
-
-
|
|
207
|
+
- Running build scripts and test suites.
|
|
208
|
+
- Initializing or managing version control systems.
|
|
209
|
+
- Installing project dependencies.
|
|
210
|
+
- Starting development servers or background watchers.
|
|
253
211
|
|
|
254
|
-
##
|
|
212
|
+
## Next steps
|
|
255
213
|
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
untrusted code. It is recommended to use `coreTools` to explicitly select
|
|
260
|
-
commands that can be executed.
|
|
214
|
+
- Follow the [Shell commands tutorial](../cli/tutorials/shell-commands.md) for
|
|
215
|
+
practical examples.
|
|
216
|
+
- Learn about [Sandboxing](../cli/sandbox.md) to isolate command execution.
|
|
@@ -1,57 +1,35 @@
|
|
|
1
1
|
# Todo tool (`write_todos`)
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
The `write_todos` tool allows the Gemini agent to maintain an internal list of
|
|
4
|
+
subtasks for multi-step requests.
|
|
4
5
|
|
|
5
|
-
##
|
|
6
|
+
## Technical reference
|
|
6
7
|
|
|
7
|
-
The
|
|
8
|
-
|
|
9
|
-
visibility into the agent's plan and its current progress. It also helps with
|
|
10
|
-
alignment where the agent is less likely to lose track of its current goal.
|
|
8
|
+
The agent uses this tool to manage its execution plan and provide progress
|
|
9
|
+
updates to the CLI interface.
|
|
11
10
|
|
|
12
11
|
### Arguments
|
|
13
12
|
|
|
14
|
-
`
|
|
13
|
+
- `todos` (array of objects, required): The complete list of tasks. Each object
|
|
14
|
+
includes:
|
|
15
|
+
- `description` (string): Technical description of the task.
|
|
16
|
+
- `status` (enum): `pending`, `in_progress`, `completed`, or `cancelled`.
|
|
15
17
|
|
|
16
|
-
|
|
17
|
-
replaces the existing list. Each item includes:
|
|
18
|
-
- `description` (string): The task description.
|
|
19
|
-
- `status` (string): The current status (`pending`, `in_progress`,
|
|
20
|
-
`completed`, or `cancelled`).
|
|
18
|
+
## Technical behavior
|
|
21
19
|
|
|
22
|
-
|
|
20
|
+
- **Interface:** Updates the progress indicator above the CLI input prompt.
|
|
21
|
+
- **Exclusivity:** Only one task can be marked `in_progress` at any time.
|
|
22
|
+
- **Persistence:** Todo state is scoped to the current session.
|
|
23
|
+
- **Interaction:** Users can toggle the full list view using **Ctrl+T**.
|
|
23
24
|
|
|
24
|
-
|
|
25
|
-
plan.
|
|
25
|
+
## Use cases
|
|
26
26
|
|
|
27
|
-
-
|
|
28
|
-
|
|
29
|
-
-
|
|
30
|
-
indicating exactly what the agent is currently working on.
|
|
31
|
-
- **Dynamic updates:** The plan may evolve as the agent discovers new
|
|
32
|
-
information, leading to new tasks being added or unnecessary ones being
|
|
33
|
-
cancelled.
|
|
27
|
+
- Breaking down a complex feature implementation into manageable steps.
|
|
28
|
+
- Coordinating multi-file refactoring tasks.
|
|
29
|
+
- Providing visibility into the agent's current focus during long-running tasks.
|
|
34
30
|
|
|
35
|
-
|
|
36
|
-
keeping you informed of the immediate action. You can toggle the full view of
|
|
37
|
-
the todo list at any time by pressing `Ctrl+T`.
|
|
31
|
+
## Next steps
|
|
38
32
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
write_todos({
|
|
43
|
-
todos: [
|
|
44
|
-
{ description: 'Initialize new React project', status: 'completed' },
|
|
45
|
-
{ description: 'Implement state management', status: 'in_progress' },
|
|
46
|
-
{ description: 'Create API service', status: 'pending' },
|
|
47
|
-
],
|
|
48
|
-
});
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
## Important notes
|
|
52
|
-
|
|
53
|
-
- **Enabling:** This tool is enabled by default. You can disable it in your
|
|
54
|
-
`settings.json` file by setting `"useWriteTodos": false`.
|
|
55
|
-
|
|
56
|
-
- **Intended use:** This tool is primarily used by the agent for complex,
|
|
57
|
-
multi-turn tasks. It is generally not used for simple, single-turn questions.
|
|
33
|
+
- Follow the [Task planning tutorial](../cli/tutorials/task-planning.md) for
|
|
34
|
+
usage details.
|
|
35
|
+
- Learn about [Session management](../cli/session-management.md) for context.
|
|
@@ -1,59 +1,35 @@
|
|
|
1
1
|
# Web fetch tool (`web_fetch`)
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
The `web_fetch` tool allows the Gemini agent to retrieve and process content
|
|
4
|
+
from specific URLs provided in your prompt.
|
|
4
5
|
|
|
5
|
-
##
|
|
6
|
+
## Technical reference
|
|
6
7
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
in a prompt. `web_fetch` takes a natural language prompt and returns a generated
|
|
10
|
-
response.
|
|
8
|
+
The agent uses this tool when you include URLs in your prompt and request
|
|
9
|
+
specific operations like summarization or extraction.
|
|
11
10
|
|
|
12
11
|
### Arguments
|
|
13
12
|
|
|
14
|
-
`
|
|
13
|
+
- `prompt` (string, required): A request containing up to 20 valid URLs
|
|
14
|
+
(starting with `http://` or `https://`) and instructions on how to process
|
|
15
|
+
them.
|
|
15
16
|
|
|
16
|
-
|
|
17
|
-
(up to 20) to fetch and specific instructions on how to process their content.
|
|
18
|
-
For example:
|
|
19
|
-
`"Summarize https://example.com/article and extract key points from https://another.com/data"`.
|
|
20
|
-
The prompt must contain at least one URL starting with `http://` or
|
|
21
|
-
`https://`.
|
|
17
|
+
## Technical behavior
|
|
22
18
|
|
|
23
|
-
|
|
19
|
+
- **Confirmation:** Triggers a confirmation dialog showing the converted URLs.
|
|
20
|
+
- **Processing:** Uses the Gemini API's `urlContext` for retrieval.
|
|
21
|
+
- **Fallback:** If API access fails, the tool attempts to fetch raw content
|
|
22
|
+
directly from your local machine.
|
|
23
|
+
- **Formatting:** Returns a synthesized response with source attribution.
|
|
24
24
|
|
|
25
|
-
|
|
26
|
-
contains URLs. The tool will ask for confirmation before fetching any URLs. Once
|
|
27
|
-
confirmed, the tool will process URLs through Gemini API's `urlContext`.
|
|
25
|
+
## Use cases
|
|
28
26
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
provide the response to the user.
|
|
27
|
+
- Summarizing technical articles or blog posts.
|
|
28
|
+
- Comparing data between two or more web pages.
|
|
29
|
+
- Extracting specific information from a documentation site.
|
|
33
30
|
|
|
34
|
-
|
|
31
|
+
## Next steps
|
|
35
32
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
## `web_fetch` examples
|
|
41
|
-
|
|
42
|
-
Summarize a single article:
|
|
43
|
-
|
|
44
|
-
```
|
|
45
|
-
web_fetch(prompt="Can you summarize the main points of https://example.com/news/latest")
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
Compare two articles:
|
|
49
|
-
|
|
50
|
-
```
|
|
51
|
-
web_fetch(prompt="What are the differences in the conclusions of these two papers: https://arxiv.org/abs/2401.0001 and https://arxiv.org/abs/2401.0002?")
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
## Important notes
|
|
55
|
-
|
|
56
|
-
- **URL processing:** `web_fetch` relies on the Gemini API's ability to access
|
|
57
|
-
and process the given URLs.
|
|
58
|
-
- **Output quality:** The quality of the output will depend on the clarity of
|
|
59
|
-
the instructions in the prompt.
|
|
33
|
+
- Follow the [Web tools guide](../cli/tutorials/web-tools.md) for practical
|
|
34
|
+
usage examples.
|
|
35
|
+
- See the [Web search tool reference](./web-search.md) for general queries.
|
|
@@ -1,42 +1,32 @@
|
|
|
1
1
|
# Web search tool (`google_web_search`)
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
The `google_web_search` tool allows the Gemini agent to retrieve up-to-date
|
|
4
|
+
information, news, and facts from the internet via Google Search.
|
|
4
5
|
|
|
5
|
-
##
|
|
6
|
+
## Technical reference
|
|
6
7
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
sources.
|
|
8
|
+
The agent uses this tool when your request requires knowledge of current events
|
|
9
|
+
or specific online documentation not available in its internal training data.
|
|
10
10
|
|
|
11
11
|
### Arguments
|
|
12
12
|
|
|
13
|
-
`
|
|
13
|
+
- `query` (string, required): The search query to be executed.
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
## Technical behavior
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
- **Grounding:** Returns a generated summary based on search results.
|
|
18
|
+
- **Citations:** Includes source URIs and titles for factual grounding.
|
|
19
|
+
- **Processing:** The Gemini API processes the search results before returning a
|
|
20
|
+
synthesized response to the agent.
|
|
18
21
|
|
|
19
|
-
|
|
20
|
-
performs a web search. `google_web_search` will return a generated response
|
|
21
|
-
based on the search results, including citations and sources.
|
|
22
|
+
## Use cases
|
|
22
23
|
|
|
23
|
-
|
|
24
|
+
- Researching the latest version of a software library or API.
|
|
25
|
+
- Finding solutions to recent software bugs or security vulnerabilities.
|
|
26
|
+
- Retrieving news or documentation updated after the model's knowledge cutoff.
|
|
24
27
|
|
|
25
|
-
|
|
26
|
-
google_web_search(query="Your query goes here.")
|
|
27
|
-
```
|
|
28
|
+
## Next steps
|
|
28
29
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
```
|
|
34
|
-
google_web_search(query="latest advancements in AI-powered code generation")
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
## Important notes
|
|
38
|
-
|
|
39
|
-
- **Response returned:** The `google_web_search` tool returns a processed
|
|
40
|
-
summary, not a raw list of search results.
|
|
41
|
-
- **Citations:** The response includes citations to the sources used to generate
|
|
42
|
-
the summary.
|
|
30
|
+
- Follow the [Web tools guide](../cli/tutorials/web-tools.md) for practical
|
|
31
|
+
usage examples.
|
|
32
|
+
- Explore the [Web fetch tool reference](./web-fetch.md) for direct URL access.
|