@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
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Activate skill tool (`activate_skill`)
|
|
2
|
+
|
|
3
|
+
The `activate_skill` tool lets Gemini CLI load specialized procedural expertise
|
|
4
|
+
and resources when they are relevant to your request.
|
|
5
|
+
|
|
6
|
+
## Description
|
|
7
|
+
|
|
8
|
+
Skills are packages of instructions and tools designed for specific engineering
|
|
9
|
+
tasks, such as reviewing code or creating pull requests. Gemini CLI uses this
|
|
10
|
+
tool to "activate" a skill, which provides it with detailed guidelines and
|
|
11
|
+
specialized tools tailored to that task.
|
|
12
|
+
|
|
13
|
+
### Arguments
|
|
14
|
+
|
|
15
|
+
`activate_skill` takes one argument:
|
|
16
|
+
|
|
17
|
+
- `name` (enum, required): The name of the skill to activate (for example,
|
|
18
|
+
`code-reviewer`, `pr-creator`, or `docs-writer`).
|
|
19
|
+
|
|
20
|
+
## Usage
|
|
21
|
+
|
|
22
|
+
The `activate_skill` tool is used exclusively by the Gemini agent. You cannot
|
|
23
|
+
invoke this tool manually.
|
|
24
|
+
|
|
25
|
+
When the agent identifies that a task matches a discovered skill, it requests to
|
|
26
|
+
activate that skill. Once activated, the agent's behavior is guided by the
|
|
27
|
+
skill's specific instructions until the task is complete.
|
|
28
|
+
|
|
29
|
+
## Behavior
|
|
30
|
+
|
|
31
|
+
The agent uses this tool to provide professional-grade assistance:
|
|
32
|
+
|
|
33
|
+
- **Specialized logic:** Skills contain expert-level procedures for complex
|
|
34
|
+
workflows.
|
|
35
|
+
- **Dynamic capability:** Activating a skill can grant the agent access to new,
|
|
36
|
+
task-specific tools.
|
|
37
|
+
- **Contextual awareness:** Skills help the agent focus on the most relevant
|
|
38
|
+
standards and conventions for a particular task.
|
|
39
|
+
|
|
40
|
+
## Next steps
|
|
41
|
+
|
|
42
|
+
- Learn how to [Use Agent Skills](../cli/skills.md).
|
|
43
|
+
- See the [Creating Agent Skills](../cli/creating-skills.md) guide.
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# Ask User Tool
|
|
2
|
+
|
|
3
|
+
The `ask_user` tool lets Gemini CLI ask you one or more questions to gather
|
|
4
|
+
preferences, clarify requirements, or make decisions. It supports multiple
|
|
5
|
+
question types including multiple-choice, free-form text, and Yes/No
|
|
6
|
+
confirmation.
|
|
7
|
+
|
|
8
|
+
## `ask_user` (Ask User)
|
|
9
|
+
|
|
10
|
+
- **Tool name:** `ask_user`
|
|
11
|
+
- **Display name:** Ask User
|
|
12
|
+
- **File:** `ask-user.ts`
|
|
13
|
+
- **Parameters:**
|
|
14
|
+
- `questions` (array of objects, required): A list of 1 to 4 questions to ask.
|
|
15
|
+
Each question object has the following properties:
|
|
16
|
+
- `question` (string, required): The complete question text.
|
|
17
|
+
- `header` (string, required): A short label (max 16 chars) displayed as a
|
|
18
|
+
chip/tag (e.g., "Auth", "Database").
|
|
19
|
+
- `type` (string, optional): The type of question. Defaults to `'choice'`.
|
|
20
|
+
- `'choice'`: Multiple-choice with options (supports multi-select).
|
|
21
|
+
- `'text'`: Free-form text input.
|
|
22
|
+
- `'yesno'`: Yes/No confirmation.
|
|
23
|
+
- `options` (array of objects, optional): Required for `'choice'` type. 2-4
|
|
24
|
+
selectable options.
|
|
25
|
+
- `label` (string, required): Display text (1-5 words).
|
|
26
|
+
- `description` (string, required): Brief explanation.
|
|
27
|
+
- `multiSelect` (boolean, optional): For `'choice'` type, allows selecting
|
|
28
|
+
multiple options.
|
|
29
|
+
- `placeholder` (string, optional): Hint text for input fields.
|
|
30
|
+
|
|
31
|
+
- **Behavior:**
|
|
32
|
+
- Presents an interactive dialog to the user with the specified questions.
|
|
33
|
+
- Pauses execution until the user provides answers or dismisses the dialog.
|
|
34
|
+
- Returns the user's answers to the model.
|
|
35
|
+
|
|
36
|
+
- **Output (`llmContent`):** A JSON string containing the user's answers,
|
|
37
|
+
indexed by question position (e.g.,
|
|
38
|
+
`{"answers":{"0": "Option A", "1": "Some text"}}`).
|
|
39
|
+
|
|
40
|
+
- **Confirmation:** Yes. The tool inherently involves user interaction.
|
|
41
|
+
|
|
42
|
+
## Usage Examples
|
|
43
|
+
|
|
44
|
+
### Multiple Choice Question
|
|
45
|
+
|
|
46
|
+
```json
|
|
47
|
+
{
|
|
48
|
+
"questions": [
|
|
49
|
+
{
|
|
50
|
+
"header": "Database",
|
|
51
|
+
"question": "Which database would you like to use?",
|
|
52
|
+
"type": "choice",
|
|
53
|
+
"options": [
|
|
54
|
+
{
|
|
55
|
+
"label": "PostgreSQL",
|
|
56
|
+
"description": "Powerful, open source object-relational database system."
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"label": "SQLite",
|
|
60
|
+
"description": "C-library that implements a SQL database engine."
|
|
61
|
+
}
|
|
62
|
+
]
|
|
63
|
+
}
|
|
64
|
+
]
|
|
65
|
+
}
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Text Input Question
|
|
69
|
+
|
|
70
|
+
```json
|
|
71
|
+
{
|
|
72
|
+
"questions": [
|
|
73
|
+
{
|
|
74
|
+
"header": "Project Name",
|
|
75
|
+
"question": "What is the name of your new project?",
|
|
76
|
+
"type": "text",
|
|
77
|
+
"placeholder": "e.g., my-awesome-app"
|
|
78
|
+
}
|
|
79
|
+
]
|
|
80
|
+
}
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### Yes/No Question
|
|
84
|
+
|
|
85
|
+
```json
|
|
86
|
+
{
|
|
87
|
+
"questions": [
|
|
88
|
+
{
|
|
89
|
+
"header": "Deploy",
|
|
90
|
+
"question": "Do you want to deploy the application now?",
|
|
91
|
+
"type": "yesno"
|
|
92
|
+
}
|
|
93
|
+
]
|
|
94
|
+
}
|
|
95
|
+
```
|
|
@@ -1,99 +1,49 @@
|
|
|
1
|
-
#
|
|
1
|
+
# File system tools reference
|
|
2
2
|
|
|
3
|
-
The Gemini CLI provides a
|
|
4
|
-
|
|
5
|
-
list, search, and modify files and directories, all under your control and
|
|
6
|
-
typically with confirmation for sensitive operations.
|
|
3
|
+
The Gemini CLI core provides a suite of tools for interacting with the local
|
|
4
|
+
file system. These tools allow the model to explore and modify your codebase.
|
|
7
5
|
|
|
8
|
-
|
|
9
|
-
current working directory where you launched the CLI) for security. Paths that
|
|
10
|
-
you provide to these tools are generally expected to be absolute or are resolved
|
|
11
|
-
relative to this root directory.
|
|
6
|
+
## Technical reference
|
|
12
7
|
|
|
13
|
-
|
|
8
|
+
All file system tools operate within a `rootDirectory` (the current working
|
|
9
|
+
directory or workspace root) for security.
|
|
14
10
|
|
|
15
|
-
`list_directory`
|
|
16
|
-
|
|
17
|
-
|
|
11
|
+
### `list_directory` (ReadFolder)
|
|
12
|
+
|
|
13
|
+
Lists the names of files and subdirectories directly within a specified path.
|
|
18
14
|
|
|
19
15
|
- **Tool name:** `list_directory`
|
|
20
|
-
- **
|
|
21
|
-
-
|
|
22
|
-
-
|
|
23
|
-
- `
|
|
24
|
-
|
|
25
|
-
from the listing (e.g., `["*.log", ".git"]`).
|
|
26
|
-
- `respect_git_ignore` (boolean, optional): Whether to respect `.gitignore`
|
|
27
|
-
patterns when listing files. Defaults to `true`.
|
|
28
|
-
- **Behavior:**
|
|
29
|
-
- Returns a list of file and directory names.
|
|
30
|
-
- Indicates whether each entry is a directory.
|
|
31
|
-
- Sorts entries with directories first, then alphabetically.
|
|
32
|
-
- **Output (`llmContent`):** A string like:
|
|
33
|
-
`Directory listing for /path/to/your/folder:\n[DIR] subfolder1\nfile1.txt\nfile2.png`
|
|
34
|
-
- **Confirmation:** No.
|
|
16
|
+
- **Arguments:**
|
|
17
|
+
- `dir_path` (string, required): Absolute or relative path to the directory.
|
|
18
|
+
- `ignore` (array, optional): Glob patterns to exclude.
|
|
19
|
+
- `file_filtering_options` (object, optional): Configuration for `.gitignore`
|
|
20
|
+
and `.geminiignore` compliance.
|
|
35
21
|
|
|
36
|
-
|
|
22
|
+
### `read_file` (ReadFile)
|
|
37
23
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
OGG, FLAC), and PDF files. For text files, it can read specific line ranges.
|
|
41
|
-
Other binary file types are generally skipped.
|
|
24
|
+
Reads and returns the content of a specific file. Supports text, images, audio,
|
|
25
|
+
and PDF.
|
|
42
26
|
|
|
43
27
|
- **Tool name:** `read_file`
|
|
44
|
-
- **
|
|
45
|
-
-
|
|
46
|
-
-
|
|
47
|
-
- `
|
|
48
|
-
- `offset` (number, optional): For text files, the 0-based line number to
|
|
49
|
-
start reading from. Requires `limit` to be set.
|
|
50
|
-
- `limit` (number, optional): For text files, the maximum number of lines to
|
|
51
|
-
read. If omitted, reads a default maximum (e.g., 2000 lines) or the entire
|
|
52
|
-
file if feasible.
|
|
53
|
-
- **Behavior:**
|
|
54
|
-
- For text files: Returns the content. If `offset` and `limit` are used,
|
|
55
|
-
returns only that slice of lines. Indicates if content was truncated due to
|
|
56
|
-
line limits or line length limits.
|
|
57
|
-
- For image, audio, and PDF files: Returns the file content as a
|
|
58
|
-
base64-encoded data structure suitable for model consumption.
|
|
59
|
-
- For other binary files: Attempts to identify and skip them, returning a
|
|
60
|
-
message indicating it's a generic binary file.
|
|
61
|
-
- **Output:** (`llmContent`):
|
|
62
|
-
- For text files: The file content, potentially prefixed with a truncation
|
|
63
|
-
message (e.g.,
|
|
64
|
-
`[File content truncated: showing lines 1-100 of 500 total lines...]\nActual file content...`).
|
|
65
|
-
- For image/audio/PDF files: An object containing `inlineData` with `mimeType`
|
|
66
|
-
and base64 `data` (e.g.,
|
|
67
|
-
`{ inlineData: { mimeType: 'image/png', data: 'base64encodedstring' } }`).
|
|
68
|
-
- For other binary files: A message like
|
|
69
|
-
`Cannot display content of binary file: /path/to/data.bin`.
|
|
70
|
-
- **Confirmation:** No.
|
|
28
|
+
- **Arguments:**
|
|
29
|
+
- `file_path` (string, required): Path to the file.
|
|
30
|
+
- `offset` (number, optional): Start line for text files (0-based).
|
|
31
|
+
- `limit` (number, optional): Maximum lines to read.
|
|
71
32
|
|
|
72
|
-
|
|
33
|
+
### `write_file` (WriteFile)
|
|
73
34
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
directories) will be created.
|
|
35
|
+
Writes content to a specified file, overwriting it if it exists or creating it
|
|
36
|
+
if not.
|
|
77
37
|
|
|
78
38
|
- **Tool name:** `write_file`
|
|
79
|
-
- **
|
|
80
|
-
-
|
|
81
|
-
-
|
|
82
|
-
|
|
83
|
-
- `content` (string, required): The content to write into the file.
|
|
84
|
-
- **Behavior:**
|
|
85
|
-
- Writes the provided `content` to the `file_path`.
|
|
86
|
-
- Creates parent directories if they don't exist.
|
|
87
|
-
- **Output (`llmContent`):** A success message, e.g.,
|
|
88
|
-
`Successfully overwrote file: /path/to/your/file.txt` or
|
|
89
|
-
`Successfully created and wrote to new file: /path/to/new/file.txt`.
|
|
90
|
-
- **Confirmation:** Yes. Shows a diff of changes and asks for user approval
|
|
91
|
-
before writing.
|
|
39
|
+
- **Arguments:**
|
|
40
|
+
- `file_path` (string, required): Path to the file.
|
|
41
|
+
- `content` (string, required): Data to write.
|
|
42
|
+
- **Confirmation:** Requires manual user approval.
|
|
92
43
|
|
|
93
|
-
|
|
44
|
+
### `glob` (FindFiles)
|
|
94
45
|
|
|
95
|
-
|
|
96
|
-
`*.md`), returning absolute paths sorted by modification time (newest first).
|
|
46
|
+
Finds files matching specific glob patterns across the workspace.
|
|
97
47
|
|
|
98
48
|
- **Tool name:** `glob`
|
|
99
49
|
- **Display name:** FindFiles
|
|
@@ -117,14 +67,13 @@ directories) will be created.
|
|
|
117
67
|
`Found 5 file(s) matching "*.ts" within src, sorted by modification time (newest first):\nsrc/file1.ts\nsrc/subdir/file2.ts...`
|
|
118
68
|
- **Confirmation:** No.
|
|
119
69
|
|
|
120
|
-
## 5. `
|
|
70
|
+
## 5. `grep_search` (SearchText)
|
|
121
71
|
|
|
122
|
-
`
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
numbers.
|
|
72
|
+
`grep_search` searches for a regular expression pattern within the content of
|
|
73
|
+
files in a specified directory. Can filter files by a glob pattern. Returns the
|
|
74
|
+
lines containing matches, along with their file paths and line numbers.
|
|
126
75
|
|
|
127
|
-
- **Tool name:** `
|
|
76
|
+
- **Tool name:** `grep_search`
|
|
128
77
|
- **Display name:** SearchText
|
|
129
78
|
- **File:** `grep.ts`
|
|
130
79
|
- **Parameters:**
|
|
@@ -156,62 +105,25 @@ numbers.
|
|
|
156
105
|
|
|
157
106
|
## 6. `replace` (Edit)
|
|
158
107
|
|
|
159
|
-
`replace` replaces text within a file. By default,
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
108
|
+
`replace` replaces text within a file. By default, the tool expects to find and
|
|
109
|
+
replace exactly ONE occurrence of `old_string`. If you want to replace multiple
|
|
110
|
+
occurrences of the exact same string, set `allow_multiple` to `true`. This tool
|
|
111
|
+
is designed for precise, targeted changes and requires significant context
|
|
112
|
+
around the `old_string` to ensure it modifies the correct location.
|
|
163
113
|
|
|
164
114
|
- **Tool name:** `replace`
|
|
165
|
-
- **
|
|
166
|
-
-
|
|
167
|
-
-
|
|
168
|
-
- `
|
|
169
|
-
- `
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
replace. Defaults to `1`.
|
|
181
|
-
|
|
182
|
-
- **Behavior:**
|
|
183
|
-
- If `old_string` is empty and `file_path` does not exist, creates a new file
|
|
184
|
-
with `new_string` as content.
|
|
185
|
-
- If `old_string` is provided, it reads the `file_path` and attempts to find
|
|
186
|
-
exactly one occurrence of `old_string`.
|
|
187
|
-
- If one occurrence is found, it replaces it with `new_string`.
|
|
188
|
-
- **Enhanced reliability (multi-stage edit correction):** To significantly
|
|
189
|
-
improve the success rate of edits, especially when the model-provided
|
|
190
|
-
`old_string` might not be perfectly precise, the tool incorporates a
|
|
191
|
-
multi-stage edit correction mechanism.
|
|
192
|
-
- If the initial `old_string` isn't found or matches multiple locations, the
|
|
193
|
-
tool can leverage the Gemini model to iteratively refine `old_string` (and
|
|
194
|
-
potentially `new_string`).
|
|
195
|
-
- This self-correction process attempts to identify the unique segment the
|
|
196
|
-
model intended to modify, making the `replace` operation more robust even
|
|
197
|
-
with slightly imperfect initial context.
|
|
198
|
-
- **Failure conditions:** Despite the correction mechanism, the tool will fail
|
|
199
|
-
if:
|
|
200
|
-
- `file_path` is not absolute or is outside the root directory.
|
|
201
|
-
- `old_string` is not empty, but the `file_path` does not exist.
|
|
202
|
-
- `old_string` is empty, but the `file_path` already exists.
|
|
203
|
-
- `old_string` is not found in the file after attempts to correct it.
|
|
204
|
-
- `old_string` is found multiple times, and the self-correction mechanism
|
|
205
|
-
cannot resolve it to a single, unambiguous match.
|
|
206
|
-
- **Output (`llmContent`):**
|
|
207
|
-
- On success:
|
|
208
|
-
`Successfully modified file: /path/to/file.txt (1 replacements).` or
|
|
209
|
-
`Created new file: /path/to/new_file.txt with provided content.`
|
|
210
|
-
- On failure: An error message explaining the reason (e.g.,
|
|
211
|
-
`Failed to edit, 0 occurrences found...`,
|
|
212
|
-
`Failed to edit, expected 1 occurrences but found 2...`).
|
|
213
|
-
- **Confirmation:** Yes. Shows a diff of the proposed changes and asks for user
|
|
214
|
-
approval before writing to the file.
|
|
215
|
-
|
|
216
|
-
These file system tools provide a foundation for the Gemini CLI to understand
|
|
217
|
-
and interact with your local project context.
|
|
115
|
+
- **Arguments:**
|
|
116
|
+
- `file_path` (string, required): Path to the file.
|
|
117
|
+
- `instruction` (string, required): Semantic description of the change.
|
|
118
|
+
- `old_string` (string, required): Exact literal text to find.
|
|
119
|
+
- `new_string` (string, required): Exact literal text to replace with.
|
|
120
|
+
- `allow_multiple` (boolean, optional): If `true`, replaces all occurrences.
|
|
121
|
+
If `false` (default), only succeeds if exactly one occurrence is found.
|
|
122
|
+
- **Confirmation:** Requires manual user approval.
|
|
123
|
+
|
|
124
|
+
## Next steps
|
|
125
|
+
|
|
126
|
+
- Follow the [File management tutorial](../cli/tutorials/file-management.md) for
|
|
127
|
+
practical examples.
|
|
128
|
+
- Learn about [Trusted folders](../cli/trusted-folders.md) to manage access
|
|
129
|
+
permissions.
|
|
@@ -1,98 +1,102 @@
|
|
|
1
1
|
# Gemini CLI tools
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
and
|
|
7
|
-
|
|
8
|
-
##
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
tool.
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
3
|
+
Gemini CLI uses tools to interact with your local environment, access
|
|
4
|
+
information, and perform actions on your behalf. These tools extend the model's
|
|
5
|
+
capabilities beyond text generation, letting it read files, execute commands,
|
|
6
|
+
and search the web.
|
|
7
|
+
|
|
8
|
+
## User-triggered tools
|
|
9
|
+
|
|
10
|
+
You can directly trigger these tools using special syntax in your prompts.
|
|
11
|
+
|
|
12
|
+
- **[File access](./file-system.md#read_many_files) (`@`):** Use the `@` symbol
|
|
13
|
+
followed by a file or directory path to include its content in your prompt.
|
|
14
|
+
This triggers the `read_many_files` tool.
|
|
15
|
+
- **[Shell commands](./shell.md) (`!`):** Use the `!` symbol followed by a
|
|
16
|
+
system command to execute it directly. This triggers the `run_shell_command`
|
|
17
|
+
tool.
|
|
18
|
+
|
|
19
|
+
## Model-triggered tools
|
|
20
|
+
|
|
21
|
+
The Gemini model automatically requests these tools when it needs to perform
|
|
22
|
+
specific actions or gather information to fulfill your requests. You do not call
|
|
23
|
+
these tools manually.
|
|
24
|
+
|
|
25
|
+
### File management
|
|
26
|
+
|
|
27
|
+
These tools let the model explore and modify your local codebase.
|
|
28
|
+
|
|
29
|
+
- **[Directory listing](./file-system.md#list_directory) (`list_directory`):**
|
|
30
|
+
Lists files and subdirectories.
|
|
31
|
+
- **[File reading](./file-system.md#read_file) (`read_file`):** Reads the
|
|
32
|
+
content of a specific file.
|
|
33
|
+
- **[File writing](./file-system.md#write_file) (`write_file`):** Creates or
|
|
34
|
+
overwrites a file with new content.
|
|
35
|
+
- **[File search](./file-system.md#glob) (`glob`):** Finds files matching a glob
|
|
36
|
+
pattern.
|
|
37
|
+
- **[Text search](./file-system.md#search_file_content)
|
|
38
|
+
(`search_file_content`):** Searches for text within files using grep or
|
|
39
|
+
ripgrep.
|
|
40
|
+
- **[Text replacement](./file-system.md#replace) (`replace`):** Performs precise
|
|
41
|
+
edits within a file.
|
|
42
|
+
|
|
43
|
+
### Agent coordination
|
|
44
|
+
|
|
45
|
+
These tools help the model manage its plan and interact with you.
|
|
46
|
+
|
|
47
|
+
- **Ask user (`ask_user`):** Requests clarification or missing information from
|
|
48
|
+
you via an interactive dialog.
|
|
49
|
+
- **[Memory](./memory.md) (`save_memory`):** Saves important facts to your
|
|
50
|
+
long-term memory (`GEMINI.md`).
|
|
51
|
+
- **[Todos](./todos.md) (`write_todos`):** Manages a list of subtasks for
|
|
52
|
+
complex plans.
|
|
53
|
+
- **[Agent Skills](../cli/skills.md) (`activate_skill`):** Loads specialized
|
|
54
|
+
procedural expertise when needed.
|
|
55
|
+
- **Internal docs (`get_internal_docs`):** Accesses Gemini CLI's own
|
|
56
|
+
documentation to help answer your questions.
|
|
57
|
+
|
|
58
|
+
### Information gathering
|
|
59
|
+
|
|
60
|
+
These tools provide the model with access to external data.
|
|
61
|
+
|
|
62
|
+
- **[Web fetch](./web-fetch.md) (`web_fetch`):** Retrieves and processes content
|
|
63
|
+
from specific URLs.
|
|
64
|
+
- **[Web search](./web-search.md) (`google_web_search`):** Performs a Google
|
|
65
|
+
Search to find up-to-date information.
|
|
66
|
+
|
|
67
|
+
## How to use tools
|
|
68
|
+
|
|
69
|
+
You use tools indirectly by providing natural language prompts to Gemini CLI.
|
|
70
|
+
|
|
71
|
+
1. **Prompt:** You enter a request or use syntax like `@` or `!`.
|
|
72
|
+
2. **Request:** The model analyzes your request and identifies if a tool is
|
|
73
|
+
required.
|
|
74
|
+
3. **Validation:** If a tool is needed, the CLI validates the parameters and
|
|
75
|
+
checks your security settings.
|
|
76
|
+
4. **Confirmation:** For sensitive operations (like writing files), the CLI
|
|
77
|
+
prompts you for approval.
|
|
78
|
+
5. **Execution:** The tool runs, and its output is sent back to the model.
|
|
79
|
+
6. **Response:** The model uses the results to generate a final, grounded
|
|
80
|
+
answer.
|
|
54
81
|
|
|
55
82
|
## Security and confirmation
|
|
56
83
|
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
- **
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
- **[File System Tools](./file-system.md):** For interacting with files and
|
|
78
|
-
directories (reading, writing, listing, searching, etc.).
|
|
79
|
-
- **[Shell Tool](./shell.md) (`run_shell_command`):** For executing shell
|
|
80
|
-
commands.
|
|
81
|
-
- **[Web Fetch Tool](./web-fetch.md) (`web_fetch`):** For retrieving content
|
|
82
|
-
from URLs.
|
|
83
|
-
- **[Web Search Tool](./web-search.md) (`google_web_search`):** For searching
|
|
84
|
-
the web.
|
|
85
|
-
- **[Memory Tool](./memory.md) (`save_memory`):** For saving and recalling
|
|
86
|
-
information across sessions.
|
|
87
|
-
- **[Todo Tool](./todos.md) (`write_todos`):** For managing subtasks of complex
|
|
88
|
-
requests.
|
|
89
|
-
|
|
90
|
-
Additionally, these tools incorporate:
|
|
91
|
-
|
|
92
|
-
- **[MCP servers](./mcp-server.md)**: MCP servers act as a bridge between the
|
|
93
|
-
Gemini model and your local environment or other services like APIs.
|
|
94
|
-
- **[Agent Skills](../cli/skills.md)**: On-demand expertise packages that are
|
|
95
|
-
activated via the `activate_skill` tool to provide specialized guidance and
|
|
96
|
-
resources.
|
|
97
|
-
- **[Sandboxing](../cli/sandbox.md)**: Sandboxing isolates the model and its
|
|
98
|
-
changes from your environment to reduce potential risk.
|
|
84
|
+
Safety is a core part of the tool system. To protect your system, Gemini CLI
|
|
85
|
+
implements several safeguards.
|
|
86
|
+
|
|
87
|
+
- **User confirmation:** You must manually approve tools that modify files or
|
|
88
|
+
execute shell commands. The CLI shows you a diff or the exact command before
|
|
89
|
+
you confirm.
|
|
90
|
+
- **Sandboxing:** You can run tool executions in secure, containerized
|
|
91
|
+
environments to isolate changes from your host system. For more details, see
|
|
92
|
+
the [Sandboxing](../cli/sandbox.md) guide.
|
|
93
|
+
- **Trusted folders:** You can configure which directories allow the model to
|
|
94
|
+
use system tools.
|
|
95
|
+
|
|
96
|
+
Always review confirmation prompts carefully before allowing a tool to execute.
|
|
97
|
+
|
|
98
|
+
## Next steps
|
|
99
|
+
|
|
100
|
+
- Learn how to [Provide context](../cli/gemini-md.md) to guide tool use.
|
|
101
|
+
- Explore the [Command reference](../reference/commands.md) for tool-related
|
|
102
|
+
slash commands.
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Internal documentation tool (`get_internal_docs`)
|
|
2
|
+
|
|
3
|
+
The `get_internal_docs` tool lets Gemini CLI access its own technical
|
|
4
|
+
documentation to provide more accurate answers about its capabilities and usage.
|
|
5
|
+
|
|
6
|
+
## Description
|
|
7
|
+
|
|
8
|
+
This tool is used when Gemini CLI needs to verify specific details about Gemini
|
|
9
|
+
CLI's internal features, built-in commands, or configuration options. It
|
|
10
|
+
provides direct access to the Markdown files in the `docs/` directory.
|
|
11
|
+
|
|
12
|
+
### Arguments
|
|
13
|
+
|
|
14
|
+
`get_internal_docs` takes one optional argument:
|
|
15
|
+
|
|
16
|
+
- `path` (string, optional): The relative path to a specific documentation file
|
|
17
|
+
(for example, `reference/commands.md`). If omitted, the tool returns a list of
|
|
18
|
+
all available documentation paths.
|
|
19
|
+
|
|
20
|
+
## Usage
|
|
21
|
+
|
|
22
|
+
The `get_internal_docs` tool is used exclusively by Gemini CLI. You cannot
|
|
23
|
+
invoke this tool manually.
|
|
24
|
+
|
|
25
|
+
When Gemini CLI uses this tool, it retrieves the content of the requested
|
|
26
|
+
documentation file and processes it to answer your question. This ensures that
|
|
27
|
+
the information provided by the AI is grounded in the latest project
|
|
28
|
+
documentation.
|
|
29
|
+
|
|
30
|
+
## Behavior
|
|
31
|
+
|
|
32
|
+
Gemini CLI uses this tool to ensure technical accuracy:
|
|
33
|
+
|
|
34
|
+
- **Capability discovery:** If Gemini CLI is unsure how a feature works, it can
|
|
35
|
+
lookup the corresponding documentation.
|
|
36
|
+
- **Reference lookup:** Gemini CLI can verify slash command sub-commands or
|
|
37
|
+
specific setting names.
|
|
38
|
+
- **Self-correction:** Gemini CLI can use the documentation to correct its
|
|
39
|
+
understanding of Gemini CLI's system logic.
|
|
40
|
+
|
|
41
|
+
## Next steps
|
|
42
|
+
|
|
43
|
+
- Explore the [Command reference](../reference/commands.md) for a detailed guide
|
|
44
|
+
to slash commands.
|
|
45
|
+
- See the [Configuration guide](../reference/configuration.md) for settings
|
|
46
|
+
reference.
|