Skip to content

Gemini CLI 的配置体系分为七层,从硬编码默认值到命令行参数依次覆盖。核心配置通过 settings.json 文件管理(4个文件位置),支持通过环境变量(30+个)和命令行参数按会话覆盖。本文是所有配置项的完整中文参考,包括所有分类字段定义、默认值和生效范围。

Gemini CLI 配置完整参考

配置优先级(从低到高)

优先级来源说明
1应用内置默认值代码中硬编码的默认值
2系统默认配置文件(system-defaults.json系统范围的基础默认值
3用户配置文件(~/.gemini/settings.json当前用户的全局设置
4项目配置文件(.gemini/settings.json当前项目的专属设置
5系统覆盖文件(settings.json系统范围的强制覆盖
6环境变量会话或系统级变量
7(最高)命令行参数单次启动的即时覆盖

配置文件路径

类型路径说明
系统默认文件/etc/gemini-cli/system-defaults.json(Linux)
C:\ProgramData\gemini-cli\system-defaults.json(Windows)
/Library/Application Support/GeminiCli/system-defaults.json(macOS)
最低优先级,可被所有其他层覆盖
用户配置文件~/.gemini/settings.json当前用户的全局配置
项目配置文件<项目根目录>/.gemini/settings.json仅对该项目生效
系统覆盖文件/etc/gemini-cli/settings.json(Linux)
C:\ProgramData\gemini-cli\settings.json(Windows)
/Library/Application Support/GeminiCli/settings.json(macOS)
最高优先级,覆盖所有其他配置文件

可通过 GEMINI_CLI_SYSTEM_SETTINGS_PATH 环境变量覆盖系统覆盖文件路径。

settings.json 中的环境变量引用:字符串值可使用 $VAR_NAME${VAR_NAME}${VAR_NAME:-DEFAULT} 语法引用环境变量,会在加载时自动解析。


settings.json 配置项详解

/settings 命令直接在 CLI 内打开设置界面,也可手动编辑文件。

policyPaths / adminPolicyPaths

字段类型默认说明
policyPathsarray[]额外加载的策略文件或目录路径(需重启)
adminPolicyPathsarray[]额外加载的管理员策略文件或目录(需重启)

general — 通用设置

字段类型默认说明
general.preferredEditorstringundefined打开文件时使用的首选编辑器
general.vimModebooleanfalse启用 Vim 键位绑定
general.defaultApprovalModeenum"default"工具执行的默认批准模式:default(每次提示)、auto_edit(自动批准编辑工具)、plan(只读规划模式)。YOLO 模式只能通过命令行启用
general.devtoolsbooleanfalse启动时开启 DevTools 检查器
general.enableAutoUpdatebooleantrue启用自动更新
general.enableAutoUpdateNotificationbooleantrue启用更新通知提示
general.enableNotificationsbooleanfalse启用终端运行事件通知
general.notificationMethodenum"auto"通知方式:autoosc9osc777bell
general.checkpointing.enabledbooleanfalse启用会话检查点(需重启)
general.plan.enabledbooleantrue启用 Plan Mode(需重启)
general.plan.directorystringundefinedPlan Mode 规划产物的存储目录(需重启)
general.plan.modelRoutingbooleantruePlan Mode 期间自动在 Pro/Flash 间路由(规划用 Pro,实现用 Flash)
general.retryFetchErrorsbooleantrue遇到 fetch failed 错误时自动重试
general.maxAttemptsnumber10主对话模型的最大请求次数,不超过 10
general.sessionRetention.enabledbooleantrue启用自动会话清理
general.sessionRetention.maxAgestring"30d"自动删除超过此期限的会话(如 30d7d24h
general.sessionRetention.maxCountnumberundefined保留最近 N 个会话(与 maxAge 二选一)
general.sessionRetention.minRetentionstring"1d"最短保留期(安全下限,默认 1 天)
general.topicUpdateNarrationbooleantrue启用主题与更新通信模型,减少冗余输出

output — 输出格式

字段类型默认说明
output.formatenum"text"输出格式:text(可读文本)或 json(JSON)

ui — 界面显示

字段类型默认说明
ui.themestringundefinedUI 颜色主题,详见主题定制
ui.autoThemeSwitchingbooleantrue根据终端背景色自动切换亮色/暗色主题
ui.customThemesobject{}自定义主题定义
ui.inlineThinkingModeenum"off"内联显示模型思考:offfull
ui.showStatusInTitlebooleanfalse在终端窗口标题中显示当前状态
ui.dynamicWindowTitlebooleantrue动态更新窗口标题(就绪: ◇,等待: ✋,工作中: ✦)
ui.hideBannerbooleanfalse隐藏启动横幅
ui.hideTipsbooleanfalse隐藏界面提示
ui.hideFooterbooleanfalse隐藏底部状态栏
ui.hideContextSummarybooleanfalse隐藏输入框上方的上下文摘要(GEMINI.md、MCP 服务器)
ui.compactToolOutputbooleantrue以紧凑格式显示工具输出(文件列表、读取结果等)
ui.showLineNumbersbooleantrue在对话中显示行号
ui.showCitationsbooleanfalse显示生成文本的引用来源
ui.showModelInfoInChatbooleanfalse在对话中显示每轮使用的模型名称
ui.showUserIdentitybooleantrue显示已登录用户的身份(如邮箱)
ui.escapePastedAtSymbolsbooleanfalse粘贴文本中的 @ 符号自动转义,防止意外触发 @path 展开
ui.loadingPhrasesenum"off"模型工作时显示的内容:tipswittyalloff
ui.customWittyPhrasesarray[]自定义等待提示语(替换默认提示)
ui.errorVerbosityenum"low"可恢复错误的显示级别:low(隐藏)或 full(完整)
ui.useAlternateBufferbooleanfalse使用备用屏幕缓冲区,保留 Shell 历史(需重启)
ui.footer.itemsarrayundefined底部状态栏显示的项目 ID 列表
ui.footer.showLabelsbooleantrue在底部状态栏项目上方显示标签头
ui.accessibility.screenReaderbooleanfalse以纯文本渲染,提升屏幕阅读器兼容性(需重启)

ide — IDE 集成

字段类型默认说明
ide.enabledbooleanfalse启用 IDE 集成模式(需重启)

privacy — 隐私

字段类型默认说明
privacy.usageStatisticsEnabledbooleantrue启用匿名使用统计收集(需重启)

billing — 计费

字段类型默认说明
billing.overageStrategyenum"ask"配额耗尽时的处理方式:ask(每次询问)、always(自动使用积分)、never(禁止使用积分)
billing.vertexAi.requestTypeenumundefinedVertex AI 请求类型:dedicatedshared(需重启)
billing.vertexAi.sharedRequestTypeenumundefinedVertex AI 共享请求类型:priorityflex(需重启)

model — 模型设置

字段类型默认说明
model.namestringundefined使用的 Gemini 模型名称,如 gemini-2.5-proauto 表示自动选择
model.maxSessionTurnsnumber-1会话保留的最大对话轮数,-1 为不限制
model.summarizeToolOutputobjectundefined工具输出摘要配置,按工具名指定 Token 预算,如 {"run_shell_command": {"tokenBudget": 2000}}
model.compressionThresholdnumber0.5触发上下文压缩的使用率阈值(需重启)
model.disableLoopDetectionbooleanfalse禁用死循环自动检测(需重启)

agents — 代理配置

字段类型默认说明
agents.overridesobject{}特定代理的覆盖配置(需重启)
agents.browser.sessionModeenum"persistent"浏览器会话模式:persistent(持久)、isolated(隔离)、existing(复用现有)(需重启)
agents.browser.headlessbooleanfalse无头模式运行浏览器(需重启)
agents.browser.allowedDomainsarray["github.com", "*.google.com", "localhost"]浏览器代理允许访问的域名列表(需重启)
agents.browser.maxActionsPerTasknumber100每次浏览器任务的最大工具调用次数(硬限制)
agents.browser.confirmSensitiveActionsbooleanfalse敏感操作(如表单填写)需要手动确认(需重启)

context — 上下文与文件过滤

字段类型默认说明
context.fileNamestring | arrayundefined上下文文件名,默认为 GEMINI.md
context.includeDirectoryTreebooleantrue初始请求时是否包含当前目录树
context.discoveryMaxDirsnumber200GEMINI.md 发现时的最大目录扫描数
context.memoryBoundaryMarkersarray[".git"]标记记忆发现边界的文件/目录名,向上遍历时在此停止(需重启)
context.includeDirectoriesarray[]额外包含到工作区上下文的目录
context.fileFiltering.respectGitIgnorebooleantrue搜索时遵守 .gitignore(需重启)
context.fileFiltering.respectGeminiIgnorebooleantrue搜索时遵守 .geminiignore(需重启)
context.fileFiltering.enableFuzzySearchbooleantrue搜索文件时启用模糊匹配(需重启)
context.fileFiltering.customIgnoreFilePathsarray[]额外的忽略文件路径(优先级高于 .geminiignore)(需重启)

tools — 工具控制

字段类型默认说明
tools.sandboxstringundefined沙箱执行环境:true/false"docker""podman""lxc" 或自定义路径(需重启)
tools.sandboxAllowedPathsarray[]沙箱额外允许访问的路径列表(需重启)
tools.sandboxNetworkAccessbooleanfalse沙箱是否允许网络访问(需重启)
tools.shell.enableInteractiveShellbooleantrue使用 node-pty 提供交互式 Shell 体验(需重启)
tools.shell.backgroundCompletionBehaviorenum"silent"后台 Shell 命令完成时的行为:silent(静默)、inject(自动返回输出)、notify(显示简短通知)
tools.shell.inactivityTimeoutnumber300Shell 命令无输出最大等待时间(秒,默认 5 分钟)
tools.corearrayundefined内置工具白名单,只允许列表中的工具(需重启)
tools.allowedarrayundefined绕过确认对话框的工具名列表,如 ["run_shell_command(git)"](需重启)
tools.confirmationRequiredarrayundefined始终需要用户确认的工具(优先级高于 allowed)(需重启)
tools.excludearrayundefined禁止发现的工具名列表(已废弃,推荐使用 Policy Engine 的 deny 规则)(需重启)
tools.useRipgrepbooleantrue文件内容搜索使用 ripgrep(性能更好)
tools.truncateToolOutputThresholdnumber40000截断大型工具输出的最大字符数(0 或负数禁用截断)(需重启)
tools.disableLLMCorrectionbooleantrue禁用编辑工具的 LLM 自动纠错(需重启)

mcp — MCP 服务器管控

字段类型默认说明
mcp.allowedarrayundefinedMCP 服务器白名单,只允许列表中的服务器(需重启)
mcp.excludedarrayundefinedMCP 服务器黑名单,排除列表中的服务器(需重启)

security — 安全设置

字段类型默认说明
security.disableYoloModebooleanfalse禁用 YOLO 模式(即使通过命令行参数也无法启用)(需重启)
security.disableAlwaysAllowbooleanfalse禁用工具确认对话框中的"始终允许"选项(需重启)
security.enablePermanentToolApprovalbooleanfalse启用"对所有未来会话都允许"选项
security.toolSandboxingbooleanfalse工具级沙箱隔离(每个工具单独隔离,而非整个 CLI 进程)(需重启)
security.blockGitExtensionsbooleanfalse禁止从 Git 安装和加载扩展(需重启)
security.allowedExtensionsarray[]允许的扩展正则模式列表(覆盖 blockGitExtensions)(需重启)
security.folderTrust.enabledbooleantrue启用文件夹信任机制(需重启)
security.environmentVariableRedaction.enabledbooleanfalse启用敏感环境变量自动脱敏(需重启)
security.environmentVariableRedaction.allowedarray[]始终不脱敏的环境变量列表(需重启)
security.environmentVariableRedaction.blockedarray[]始终脱敏的环境变量列表(需重启)
security.auth.enforcedTypestringundefined强制认证类型,不匹配时提示重新认证(需重启)
security.enableConsecabooleanfalse启用基于 LLM 的上下文感知安全检查器(需重启)

admin — 管理员专用设置

这些设置通常放在系统级 settings.json 中由管理员配置:

字段类型默认说明
admin.secureModeEnabledbooleanfalse禁用 YOLO 模式和"始终允许"选项
admin.extensions.enabledbooleantrue是否允许安装和使用扩展
admin.mcp.enabledbooleantrue是否允许使用 MCP 服务器
admin.mcp.configobject{}管理员配置的 MCP 服务器白名单
admin.mcp.requiredConfigobject{}管理员强制注入的 MCP 服务器
admin.skills.enabledbooleantrue是否允许使用 Skills

advanced — 高级设置

字段类型默认说明
advanced.autoConfigureMemorybooleantrue自动配置 Node.js 内存限制(仅从全局用户配置文件读取)(需重启)
advanced.excludedEnvVarsarray["DEBUG", "DEBUG_MODE"]从项目 .env 文件排除的环境变量
advanced.bugCommandobjectundefined/bug 命令的配置(可重定向到内部工单系统)

experimental — 实验性功能

字段类型默认说明
experimental.modelSteeringbooleanfalse启用 Model Steering(任务执行中实时引导)
experimental.worktreesbooleanfalse启用自动 Git Worktree 管理(需重启)
experimental.enableAgentsbooleantrue启用本地和远程子代理(需重启)
experimental.gemmabooleanfalse启用 Gemma 4 模型访问(需重启)
experimental.autoMemorybooleanfalse后台自动从历史会话提取可复用技能(需重启)
experimental.memoryV2booleantrue使用新版记忆机制(通过 edit/write_file 直接管理 GEMINI.md)(需重启)
experimental.jitContextbooleantrue启用 JIT 上下文加载(按需加载 GEMINI.md,而非启动时全量加载)(需重启)
experimental.directWebFetchbooleanfalse绕过 LLM 摘要的直接 Web 抓取(需重启)
experimental.contextManagementbooleanfalse启用上下文管理逻辑(需重启)
experimental.taskTrackerbooleanfalse启用任务追踪工具(需重启)
experimental.useOSC52Pastebooleanfalse使用 OSC 52 协议粘贴(远程终端场景)
experimental.useOSC52Copybooleanfalse使用 OSC 52 协议复制(远程终端场景)
experimental.gemmaModelRouter.enabledbooleanfalse启用本地 Gemma 模型路由(需配置本地端点)(需重启)

skills — Skills 功能

字段类型默认说明
skills.enabledbooleantrue启用 Agent Skills(需重启)
skills.disabledarray[]禁用的 Skills 列表(需重启)

hooksConfig — Hooks 系统控制

字段类型默认说明
hooksConfig.enabledbooleantrue启用 Hooks 系统(关闭后所有 Hook 停止执行)(需重启)
hooksConfig.disabledarray[]禁用的 Hook 名称列表
hooksConfig.notificationsbooleantrueHook 执行时显示视觉指示器

hooks — Hook 事件绑定

每个字段都是一个命令数组(Hook 处理器列表):

字段触发时机说明
hooks.BeforeTool工具执行前可拦截、验证或修改工具调用
hooks.AfterTool工具执行后处理结果、记录日志或触发后续操作
hooks.BeforeAgentAgent 循环开始前设置上下文或初始化资源
hooks.AfterAgentAgent 循环完成后清理或汇总结果
hooks.Notification通知事件时(错误/警告/信息)日志或告警
hooks.SessionStart会话开始时初始化会话资源
hooks.SessionEnd会话结束时清理或持久化会话数据
hooks.PreCompress对话历史压缩前备份或分析历史
hooks.BeforeModelLLM 请求前修改 Prompt、注入上下文
hooks.AfterModelLLM 响应后处理输出或提取信息
hooks.BeforeToolSelection工具选择前动态过滤可用工具

mcpServers — MCP 服务器配置

每个服务器用名称作为 key,值为服务器参数对象。服务器名不能包含下划线(使用连字符,如 my-server):

json
{
  "mcpServers": {
    "my-server": {
      "command": "bin/mcp_server.py",
      "args": ["--verbose"],
      "env": { "API_KEY": "$MY_API_KEY" },
      "timeout": 5000,
      "trust": false,
      "includeTools": ["tool-a", "tool-b"],
      "excludeTools": ["dangerous-tool"]
    },
    "remote-server": {
      "httpUrl": "https://mcp-server.example.com",
      "headers": { "Authorization": "Bearer $TOKEN" }
    }
  }
}
参数类型说明
commandstring启动 MCP 服务器的命令(stdio 通信)
argsarray传递给命令的参数列表
envobject服务器进程的环境变量
cwdstring服务器启动的工作目录
urlstring使用 SSE 通信的 MCP 服务器 URL
httpUrlstring使用可流式 HTTP 通信的 MCP 服务器 URL(优先于 urlcommand
headersobjectHTTP 请求头(用于 url/httpUrl)
timeoutnumber请求超时时间(毫秒)
trustboolean信任该服务器,绕过所有工具调用确认
includeToolsarray工具白名单,只暴露列表中的工具
excludeToolsarray工具黑名单(优先于 includeTools)

telemetry — 遥测配置

字段类型说明
telemetry.enabledboolean是否启用遥测
telemetry.targetstring遥测目标:local(本地文件)或 gcp(Google Cloud)
telemetry.otlpEndpointstringOTLP 导出器端点,默认 http://localhost:4317
telemetry.otlpProtocolstringOTLP 协议:grpchttp
telemetry.logPromptsboolean是否在日志中包含用户 Prompt 内容(企业环境建议 false
telemetry.outfilestringtarget: local 时的日志输出文件路径
telemetry.tracesboolean是否捕获带大属性的详细 trace(工具输出、文件读取等)默认 false

完整示例 settings.json

json
{
  "general": {
    "vimMode": true,
    "preferredEditor": "code",
    "sessionRetention": {
      "enabled": true,
      "maxAge": "30d"
    }
  },
  "ui": {
    "theme": "GitHub",
    "hideBanner": true,
    "loadingPhrases": "witty"
  },
  "model": {
    "name": "gemini-2.5-pro",
    "maxSessionTurns": 50
  },
  "tools": {
    "sandbox": "docker",
    "allowed": ["run_shell_command(git)"],
    "exclude": []
  },
  "mcpServers": {
    "my-jira": {
      "command": "node",
      "args": ["jira-mcp.js"],
      "timeout": 10000
    }
  },
  "telemetry": {
    "enabled": true,
    "target": "local",
    "outfile": "~/.gemini/telemetry.json",
    "logPrompts": false
  },
  "privacy": {
    "usageStatisticsEnabled": false
  }
}

环境变量速查

变量名说明
GEMINI_API_KEYGemini API 密钥
GEMINI_MODEL覆盖默认模型,如 gemini-2.5-pro
GEMINI_CLI_HOME覆盖用户配置根目录(.gemini 的父目录)
GEMINI_CLI_SYSTEM_SETTINGS_PATH覆盖系统覆盖配置文件路径
GEMINI_CLI_SYSTEM_DEFAULTS_PATH覆盖系统默认配置文件路径
GEMINI_CLI_TRUST_WORKSPACE设为 true 时信任当前工作区(跳过文件夹信任检查,适合 CI/CD)
GEMINI_CLI_TRUSTED_FOLDERS_PATH覆盖 trustedFolders.json 的存储路径
GEMINI_CLI_IDE_PID手动指定关联的 IDE 进程 PID
GEMINI_CLI_SURFACE自定义 User-Agent 标签(用于 API 流量追踪)
GEMINI_SANDBOX沙箱配置:true/false/docker/podman/自定义命令
GEMINI_SYSTEM_MD覆盖系统提示词:true 使用 .gemini/system.md,其他值作为路径
GEMINI_WRITE_SYSTEM_MD将当前内置提示词写入文件(运行一次即生成)
GEMINI_TELEMETRY_ENABLED覆盖 telemetry.enabled
GEMINI_TELEMETRY_TARGET覆盖 telemetry.targetlocalgcp
GEMINI_TELEMETRY_OTLP_ENDPOINT覆盖 telemetry.otlpEndpoint
GEMINI_TELEMETRY_LOG_PROMPTS覆盖 telemetry.logPrompts
GEMINI_TELEMETRY_OUTFILE覆盖 telemetry.outfile
GOOGLE_API_KEYGoogle Cloud API 密钥(Vertex AI Express 模式)
GOOGLE_CLOUD_PROJECTGoogle Cloud 项目 ID(Code Assist 或 Vertex AI)
GOOGLE_CLOUD_LOCATIONGoogle Cloud 区域(Vertex AI 非 Express 模式必填)
GOOGLE_APPLICATION_CREDENTIALSGCP 应用凭据 JSON 文件路径
GOOGLE_GENAI_API_VERSION覆盖 Gemini API 版本(如 v1
GOOGLE_GEMINI_BASE_URL覆盖 Gemini API 基础 URL(用于代理)
GOOGLE_VERTEX_BASE_URL覆盖 Vertex AI API 基础 URL(用于代理)
OTLP_GOOGLE_CLOUD_PROJECTGoogle Cloud 遥测项目 ID
SEATBELT_PROFILEmacOS 沙箱配置文件:permissive-openrestrictive-openstrict-open、自定义
DEBUG / DEBUG_MODE启用详细调试日志(默认从项目 .env 排除)
NO_COLOR禁用所有颜色输出
CLI_TITLE自定义 CLI 标题
BUILD_SANDBOX自动构建自定义沙箱镜像(仅源码运行支持)

命令行参数速查

bash
# 基础启动
gemini [提示词]                    # 交互模式,可直接附带初始提示词
gemini -p "提示词"                 # 无头模式(单次提示,已废弃,推荐用 gemini "提示词")
gemini -i "提示词"                 # 交互模式,提示词作为初始输入

# 模型与模式
gemini --model gemini-2.5-pro     # 指定模型(最高优先级)
gemini --approval-mode auto_edit  # 设置批准模式(default/auto_edit/yolo/plan)
gemini --yolo                     # YOLO 模式(自动批准所有工具)
gemini --sandbox / -s             # 启用沙箱

# 会话管理
gemini --list-sessions            # 列出所有可用会话
gemini --resume [session_id]      # 恢复会话(session_id 可为序号、UUID 或 latest)
gemini --delete-session <id>      # 删除指定会话

# 输出格式
gemini --output-format json       # JSON 输出(适合脚本)
gemini --output-format stream-json # 流式 JSON 输出

# 工具与 MCP
gemini --allowed-tools "run_shell_command(git)"  # 指定绕过确认的工具
gemini --allowed-mcp-server-names "my-server"   # 允许的 MCP 服务器名

# 扩展
gemini -e my-extension            # 使用指定扩展
gemini -e none                    # 禁用所有扩展
gemini --list-extensions          # 列出所有可用扩展

# 目录
gemini --include-directories /path1,/path2  # 包含额外目录(最多 5 个)

# 调试与帮助
gemini --debug / -d               # 启用调试模式
gemini --screen-reader            # 屏幕阅读器模式
gemini --version                  # 显示版本
gemini --help / -h                # 显示帮助

# 高级
gemini --acp                      # 以 ACP 模式启动(IDE 集成)

环境变量脱敏

Gemini CLI 在执行工具时自动脱敏可能包含敏感信息的环境变量。

默认脱敏规则(按名称):名称包含 TOKENSECRETPASSWORDKEYAUTHCREDENTIALPRIVATECERT 的变量。

默认脱敏规则(按值):RSA/OpenSSH/PGP 私钥、证书、包含凭据的 URL、GitHub/Google/AWS/Stripe/Slack 等平台的 API Token。

始终不脱敏:系统变量(PATHHOME 等)、以 GEMINI_CLI_ 开头的变量、GitHub Actions 变量。

自定义配置

json
{
  "security": {
    "allowedEnvironmentVariables": ["MY_PUBLIC_KEY"],
    "blockedEnvironmentVariables": ["INTERNAL_IP_ADDRESS"]
  }
}

GEMINI.md 上下文文件层级

上下文文件(默认名 GEMINI.md,可通过 context.fileName 配置)按以下顺序加载:

  1. 全局上下文~/.gemini/GEMINI.md(对所有项目生效)
  2. 项目根及父目录:从当前目录向上查找,到 .git 目录或 home 目录为止
  3. 子目录上下文:当前目录下的子目录(最多 200 个,可通过 context.discoveryMaxDirs 配置)

所有找到的文件内容拼接后(附带文件路径标记)作为系统提示词传给模型。使用 /memory show 查看当前加载的完整上下文,用 /memory refresh 强制重新扫描。


沙箱配置

Gemini CLI 可以在沙箱中执行工具,防止意外操作影响系统。默认不启用,可通过以下方式开启:

  • --sandbox-s 命令行标志
  • GEMINI_SANDBOX=true 环境变量
  • --yolo 模式默认启用沙箱

默认使用预置的 gemini-cli-sandbox Docker 镜像。创建项目级自定义 Dockerfile(.gemini/sandbox.Dockerfile)可定制沙箱环境:

dockerfile
FROM gemini-cli-sandbox

# 安装自定义依赖
USER root
RUN apt-get update && apt-get install -y some-package
USER node

常见问题

Q: settings.json 修改后需要重启 CLI 吗?

A: 部分设置标注了"需重启",修改后需要退出并重新启动 CLI 才能生效。未标注的设置大多可以通过 /settings 命令实时生效,或等下一轮对话时生效。

Q: 如何查看当前所有生效的配置?

A: 使用 /settings 命令可以打开交互式设置界面,查看和修改所有配置项。/memory show 可以查看当前加载的 GEMINI.md 内容。

Q: 项目 settings.json 和用户 settings.json 冲突时以哪个为准?

A: 项目配置(.gemini/settings.json)优先级高于用户配置(~/.gemini/settings.json)。单值字段(如 theme)以更高优先级层为准;数组和对象字段(如 mcpServers)会合并。系统覆盖文件(/etc/gemini-cli/settings.json)优先级最高,覆盖所有其他文件。