Gemini CLI settings (/settings command)

January 16, 2026 · View on GitHub

Control your Gemini CLI experience with the /settings command. The /settings command opens a dialog to view and edit all your Gemini CLI settings, including your UI experience, keybindings, and accessibility features.

Your Gemini CLI settings are stored in a settings.json file. In addition to using the /settings command, you can also edit them in one of the following locations:

  • User settings: ~/.gemini/settings.json
  • Workspace settings: your-project/.gemini/settings.json

Note: Workspace settings override user settings.

Settings reference

Here is a list of all the available settings, grouped by category and ordered as they appear in the UI.

General

UI LabelSettingDescriptionDefault
Preview Features (e.g., models)general.previewFeaturesEnable preview features (e.g., preview models).false
Vim Modegeneral.vimModeEnable Vim keybindingsfalse
Enable Auto Updategeneral.enableAutoUpdateEnable automatic updates.true
Enable Prompt Completiongeneral.enablePromptCompletionEnable AI-powered prompt completion suggestions while typing.false
Debug Keystroke Logginggeneral.debugKeystrokeLoggingEnable debug logging of keystrokes to the console.false
Enable Session Cleanupgeneral.sessionRetention.enabledEnable automatic session cleanupfalse

Output

UI LabelSettingDescriptionDefault
Output Formatoutput.formatThe format of the CLI output. Can be text or json."text"

UI

UI LabelSettingDescriptionDefault
Hide Window Titleui.hideWindowTitleHide the window title barfalse
Show Thoughts in Titleui.showStatusInTitleShow Gemini CLI model thoughts in the terminal window title during the working phasefalse
Dynamic Window Titleui.dynamicWindowTitleUpdate the terminal window title with current status icons (Ready: ◇, Action Required: ✋, Working: ✦)true
Show Home Directory Warningui.showHomeDirectoryWarningShow a warning when running Gemini CLI in the home directory.true
Hide Tipsui.hideTipsHide helpful tips in the UIfalse
Hide Bannerui.hideBannerHide the application bannerfalse
Hide Context Summaryui.hideContextSummaryHide the context summary (GEMINI.md, MCP servers) above the input.false
Hide CWDui.footer.hideCWDHide the current working directory path in the footer.false
Hide Sandbox Statusui.footer.hideSandboxStatusHide the sandbox status indicator in the footer.false
Hide Model Infoui.footer.hideModelInfoHide the model name and context usage in the footer.false
Hide Context Window Percentageui.footer.hideContextPercentageHides the context window remaining percentage.true
Hide Footerui.hideFooterHide the footer from the UIfalse
Show Memory Usageui.showMemoryUsageDisplay memory usage information in the UIfalse
Show Line Numbersui.showLineNumbersShow line numbers in the chat.true
Show Citationsui.showCitationsShow citations for generated text in the chat.false
Show Model Info In Chatui.showModelInfoInChatShow the model name in the chat for each model turn.false
Use Full Widthui.useFullWidthUse the entire width of the terminal for output.true
Use Alternate Screen Bufferui.useAlternateBufferUse an alternate screen buffer for the UI, preserving shell history.false
Incremental Renderingui.incrementalRenderingEnable incremental rendering for the UI. This option will reduce flickering but may cause rendering artifacts. Only supported when useAlternateBuffer is enabled.true
Enable Loading Phrasesui.accessibility.enableLoadingPhrasesEnable loading phrases during operations.true
Screen Reader Modeui.accessibility.screenReaderRender output in plain-text to be more screen reader accessiblefalse

IDE

UI LabelSettingDescriptionDefault
IDE Modeide.enabledEnable IDE integration mode.false

Model

UI LabelSettingDescriptionDefault
Max Session Turnsmodel.maxSessionTurnsMaximum number of user/model/tool turns to keep in a session. -1 means unlimited.-1
Compression Thresholdmodel.compressionThresholdThe fraction of context usage at which to trigger context compression (e.g. 0.2, 0.3).0.5
Skip Next Speaker Checkmodel.skipNextSpeakerCheckSkip the next speaker check.true

Context

UI LabelSettingDescriptionDefault
Memory Discovery Max Dirscontext.discoveryMaxDirsMaximum number of directories to search for memory.200
Load Memory From Include Directoriescontext.loadMemoryFromIncludeDirectoriesControls how /memory refresh loads GEMINI.md files. When true, include directories are scanned; when false, only the current directory is used.false
Respect .gitignorecontext.fileFiltering.respectGitIgnoreRespect .gitignore files when searching.true
Respect .geminiignorecontext.fileFiltering.respectGeminiIgnoreRespect .geminiignore files when searching.true
Enable Recursive File Searchcontext.fileFiltering.enableRecursiveFileSearchEnable recursive file search functionality when completing @ references in the prompt.true
Enable Fuzzy Searchcontext.fileFiltering.enableFuzzySearchEnable fuzzy search when searching for files.true

Tools

UI LabelSettingDescriptionDefault
Enable Interactive Shelltools.shell.enableInteractiveShellUse node-pty for an interactive shell experience. Fallback to child_process still applies.true
Show Colortools.shell.showColorShow color in shell output.false
Auto Accepttools.autoAcceptAutomatically accept and execute tool calls that are considered safe (e.g., read-only operations).false
Use Ripgreptools.useRipgrepUse ripgrep for file content search instead of the fallback implementation. Provides faster search performance.true
Enable Tool Output Truncationtools.enableToolOutputTruncationEnable truncation of large tool outputs.true
Tool Output Truncation Thresholdtools.truncateToolOutputThresholdTruncate tool output if it is larger than this many characters. Set to -1 to disable.4000000
Tool Output Truncation Linestools.truncateToolOutputLinesThe number of lines to keep when truncating tool output.1000
Disable LLM Correctiontools.disableLLMCorrectionDisable LLM-based error correction for edit tools. When enabled, tools will fail immediately if exact string matches are not found, instead of attempting to self-correct.false

Security

UI LabelSettingDescriptionDefault
Disable YOLO Modesecurity.disableYoloModeDisable YOLO mode, even if enabled by a flag.false
Allow Permanent Tool Approvalsecurity.enablePermanentToolApprovalEnable the "Allow for all future sessions" option in tool confirmation dialogs.false
Blocks extensions from Gitsecurity.blockGitExtensionsBlocks installing and loading extensions from Git.false
Folder Trustsecurity.folderTrust.enabledSetting to track whether Folder trust is enabled.false
Enable Environment Variable Redactionsecurity.environmentVariableRedaction.enabledEnable redaction of environment variables that may contain secrets.false

Experimental

UI LabelSettingDescriptionDefault
Agent Skillsexperimental.skillsEnable Agent Skills (experimental).false
Enable Codebase Investigatorexperimental.codebaseInvestigatorSettings.enabledEnable the Codebase Investigator agent.true
Codebase Investigator Max Num Turnsexperimental.codebaseInvestigatorSettings.maxNumTurnsMaximum number of turns for the Codebase Investigator agent.10
Use OSC 52 Pasteexperimental.useOSC52PasteUse OSC 52 sequence for pasting instead of clipboardy (useful for remote sessions).false
Enable CLI Help Agentexperimental.cliHelpAgentSettings.enabledEnable the CLI Help Agent.true
Planexperimental.planEnable planning features (Plan Mode and tools).false

Hooks

UI LabelSettingDescriptionDefault
Hook Notificationshooks.notificationsShow visual indicators when hooks are executing.true