Created
July 12, 2025 17:48
-
-
Save tillahoffmann/83ac97d9e32cac1689a67954f1a8a191 to your computer and use it in GitHub Desktop.
JSON schema for Gemini CLI settings.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"$schema": "http://json-schema.org/draft-07/schema#", | |
"title": "Gemini CLI Settings", | |
"description": "Configuration for the Gemini CLI, based on settings in .gemini/settings.json.", | |
"type": "object", | |
"properties": { | |
"theme": { | |
"type": "string", | |
"description": "Sets the visual theme for Gemini CLI." | |
}, | |
"selectedAuthType": { | |
"type": "string", | |
"description": "The selected authentication type.", | |
"enum": [ | |
"google-auth", | |
"gemini-api-key" | |
] | |
}, | |
"sandbox": { | |
"type": [ | |
"boolean", | |
"string" | |
], | |
"description": "Controls whether and how to use sandboxing for tool execution. If set to true, Gemini CLI uses a pre-built `gemini-cli-sandbox` Docker image." | |
}, | |
"coreTools": { | |
"type": "array", | |
"items": { | |
"type": "string" | |
}, | |
"description": "A list of core tool names that should be made available to the model. This can be used to restrict the set of built-in tools." | |
}, | |
"excludeTools": { | |
"type": "array", | |
"items": { | |
"type": "string" | |
}, | |
"description": "A list of core tool names that should be excluded from the model. A tool listed in both `excludeTools` and `coreTools` is excluded." | |
}, | |
"toolDiscoveryCommand": { | |
"type": "string", | |
"description": "Defines a custom shell command for discovering tools from your project. The shell command must return on `stdout` a JSON array of function declarations." | |
}, | |
"toolCallCommand": { | |
"type": "string", | |
"description": "Defines a custom shell command for calling a specific tool that was discovered using `toolDiscoveryCommand`." | |
}, | |
"mcpServerCommand": { | |
"type": "string", | |
"description": "Defines a custom shell command for starting an MCP server." | |
}, | |
"mcpServers": { | |
"type": "object", | |
"description": "Configures connections to one or more Model-Context Protocol (MCP) servers for discovering and using custom tools.", | |
"additionalProperties": { | |
"type": "object", | |
"properties": { | |
"command": { | |
"type": "string" | |
}, | |
"args": { | |
"type": "array", | |
"items": { | |
"type": "string" | |
} | |
}, | |
"env": { | |
"type": "object", | |
"additionalProperties": { | |
"type": "string" | |
} | |
}, | |
"cwd": { | |
"type": "string" | |
}, | |
"timeout": { | |
"type": "number" | |
}, | |
"trust": { | |
"type": "boolean" | |
} | |
}, | |
"required": [ | |
"command" | |
] | |
} | |
}, | |
"showMemoryUsage": { | |
"type": "boolean", | |
"description": "Displays the current memory usage." | |
}, | |
"contextFileName": { | |
"type": [ | |
"string", | |
"array" | |
], | |
"items": { | |
"type": "string" | |
}, | |
"description": "Specifies the filename for context files (e.g., `GEMINI.md`, `AGENTS.md`). Can be a single filename or a list of accepted filenames." | |
}, | |
"accessibility": { | |
"type": "object", | |
"properties": { | |
"disableLoadingPhrases": { | |
"type": "boolean", | |
"description": "Disables the display of loading phrases." | |
} | |
} | |
}, | |
"telemetry": { | |
"type": "object", | |
"description": "Configures logging and metrics collection for Gemini CLI.", | |
"properties": { | |
"enabled": { | |
"type": "boolean", | |
"description": "Whether or not telemetry is enabled." | |
}, | |
"target": { | |
"type": "string", | |
"description": "The destination for collected telemetry. Supported values are `local` and `gcp`." | |
}, | |
"otlpEndpoint": { | |
"type": "string", | |
"description": "The endpoint for the OTLP Exporter." | |
}, | |
"logPrompts": { | |
"type": "boolean", | |
"description": "Whether or not to include the content of user prompts in the logs." | |
} | |
} | |
}, | |
"usageStatisticsEnabled": { | |
"type": "boolean", | |
"description": "Enables or disables the collection of usage statistics." | |
}, | |
"preferredEditor": { | |
"type": "string", | |
"description": "Specifies the preferred editor to use for viewing diffs." | |
}, | |
"bugCommand": { | |
"type": "object", | |
"description": "Overrides the default URL for the `/bug` command.", | |
"properties": { | |
"urlTemplate": { | |
"type": "string", | |
"description": "A URL that can contain `{title}` and `{info}` placeholders." | |
} | |
} | |
}, | |
"checkpointing": { | |
"type": "object", | |
"description": "Configures the checkpointing feature, which allows you to save and restore conversation and file states.", | |
"properties": { | |
"enabled": { | |
"type": "boolean", | |
"description": "When `true`, the `/restore` command is available." | |
} | |
} | |
}, | |
"autoConfigureMaxOldSpaceSize": { | |
"type": "boolean", | |
"description": "Automatically configures the --max-old-space-size for Node.js." | |
}, | |
"fileFiltering": { | |
"type": "object", | |
"description": "Controls git-aware file filtering behavior for @ commands and file discovery tools.", | |
"properties": { | |
"respectGitIgnore": { | |
"type": "boolean", | |
"description": "Whether to respect .gitignore patterns when discovering files." | |
}, | |
"enableRecursiveFileSearch": { | |
"type": "boolean", | |
"description": "Whether to enable searching recursively for filenames under the current tree when completing @ prefixes in the prompt." | |
} | |
} | |
}, | |
"hideWindowTitle": { | |
"type": "boolean", | |
"description": "Does not display the ANSI-controlled terminal title." | |
}, | |
"hideTips": { | |
"type": "boolean", | |
"description": "Enables or disables helpful tips in the CLI interface." | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment