跳到正文

配置参考手册

settings.json 配置和环境变量的完整参考手册。涵盖截至 Claude Code v2.1.81 的所有已确认设置。

来源: 官方设置文档 · 官方环境变量文档 · JSON Schema

图例:

  • 无标记 = 已在官方文档中确认
  • 📋 仅限 Schema = 存在于 JSON Schema 中但未出现在官方设置页面——仍然有效
  • ⚠️ 未验证 = 未经官方来源确认

作用域与优先级

Claude Code 使用四个设置作用域,按从高到低的优先级应用:

优先级作用域位置是否共享?用途
1托管服务器、MDM 配置文件、注册表或系统 managed-settings.json是(IT 部署)组织级策略,不可覆盖
2命令行启动时的 -- 标志临时会话覆盖
3本地.claude/settings.local.json否(已 gitignore)个人项目专属
4项目.claude/settings.json是(已提交)团队共享设置
5用户~/.claude/settings.json全局个人默认值

数组合并:permissions.allowsandbox.filesystem.allowWriteallowedHttpHookUrls 这样的设置会在各作用域间拼接并去重——不会替换。

拒绝优先级: permissions.deny 规则始终生效,无论任何作用域下的允许/询问规则如何。

托管设置交付方式:

  • 服务器托管(Claude.ai 管理员控制台)
  • macOS MDM:com.anthropic.claudecode plist
  • Windows 注册表:HKLM\SOFTWARE\Policies\ClaudeCode
  • 文件:位于 /Library/Application Support/ClaudeCode/(macOS)、/etc/claude-code/(Linux/WSL)、C:\Program Files\ClaudeCode(Windows)的 managed-settings.json
  • 下拉目录:与 managed-settings.json 并排的 managed-settings.d/*.json,按字母顺序合并

其他配置: ~/.claude.json 存储 OAuth 会话、MCP 服务器配置、每个项目的信任状态以及 editorMode 等偏好设置。不要将 ~/.claude.json 中的键放入 settings.json——这会触发 Schema 验证错误。


设置键

核心配置

$schema

类型: string作用域: all默认值:

用于 IDE 验证和自动补全的 JSON Schema URL。添加 "https://json.schemastore.org/claude-code-settings.json" 以在 VS Code、Cursor 和其他编辑器中启用内联验证。

JSON
{
  "$schema": "https://json.schemastore.org/claude-code-settings.json"
}

model

类型: string作用域: all默认值: "default"

覆盖所有会话的默认模型。接受别名("sonnet""opus""haiku""opusplan")或完整模型 ID,如 "claude-sonnet-4-6"ANTHROPIC_MODEL 环境变量优先级更高。

JSON
{ "model": "opus" }

agent

类型: string作用域: all默认值:

以命名子智能体的方式运行主线程。应用该智能体的系统提示、工具限制和模型。值必须匹配 .claude/agents/ 中定义的智能体。也可通过 --agent CLI 标志使用。

JSON
{ "agent": "code-reviewer" }

language

类型: string作用域: all默认值: "english"

Claude 偏好的响应语言。也设置语音听写语言。例如:"japanese""spanish""french"

cleanupPeriodDays

类型: number作用域: all默认值: 30

超过此天数未活动的会话在启动时删除。设为 0 会在启动时删除所有现有记录并完全禁用会话持久化——不写入 .jsonl 文件,/resume 不显示任何对话,且 hooks 接收空的 transcript_path

autoUpdatesChannel

类型: string作用域: all默认值: "latest"可选值: "latest" | "stable"

要跟随的发布频道。"stable" 通常落后 "latest" 约一周,并跳过存在重大回归的版本。

alwaysThinkingEnabled

类型: boolean作用域: all默认值: false

默认为所有会话启用扩展深度思考。通常通过 /config 配置而不是直接编辑。

includeGitInstructions

类型: boolean作用域: all默认值: true

在系统提示中包含内置的提交和 PR 工作流说明以及 git 状态快照。使用自定义 git 工作流技能时设为 falseCLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS 环境变量优先级更高。

voiceEnabled

类型: boolean作用域: user默认值:

启用按压即说的语音听写。运行 /voice 时自动写入。需要 Claude.ai 账户。

companyAnnouncements

类型: array of strings作用域: all默认值:

启动时向用户显示的公告。多条公告随机轮换显示。

JSON
{
  "companyAnnouncements": [
    "欢迎来到 Acme 公司!请访问 docs.acme.com 查看代码规范",
    "所有 PR 合并前需要代码审查"
  ]
}

availableModels

类型: array of strings作用域: all默认值:

限制用户可通过 /model--model、Config 工具或 ANTHROPIC_MODEL 选择的模型。不影响"默认"选项。

JSON
{ "availableModels": ["sonnet", "haiku"] }

fastModePerSessionOptIn

类型: boolean作用域: all默认值: false

true 时,快速模式不跨会话持久化。每个会话以关闭快速模式开始,需要用户通过 /fast 启用。用户偏好仍会保存。

teammateMode

类型: string作用域: all默认值: "auto"可选值: "auto" | "in-process" | "tmux"

智能体团队成员的显示方式。"auto" 在 tmux 或 iTerm2 中使用分屏,否则使用进程内模式。

showClearContextOnPlanAccept

类型: boolean作用域: all默认值: false

在计划接受屏幕上显示"清除上下文"选项。设为 true 以恢复该选项(自 v2.1.81 起默认隐藏)。

feedbackSurveyRate

类型: number作用域: all默认值:

符合条件时会话质量调查出现的概率(0-1)。设为 0 可完全抑制。在使用 Bedrock、Vertex 或 Foundry 时很有用。

disableAutoMode

类型: string作用域: all默认值:可选值: "disable"

设为 "disable" 以阻止自动模式激活。从 Shift+Tab 循环中移除 auto,并在启动时拒绝 --permission-mode auto

useAutoModeDuringPlan

类型: boolean作用域: user / local默认值: true

计划模式(计划模式)在自动模式可用时是否使用自动模式语义。不从共享项目设置中读取。

autoMode

类型: object作用域: user / local默认值:

自定义自动模式分类器。包含 environmentallowsoft_deny 等散文规则数组。不从共享项目设置中读取。

defaultShell

类型: string作用域: all默认值: "bash"可选值: "bash" | "powershell"

输入框 ! 命令的默认 shell。"powershell" 需要 CLAUDE_CODE_USE_POWERSHELL_TOOL=1

skipWebFetchPreflight 📋 仅限 Schema

类型: boolean作用域: all默认值: false

在抓取 URL 之前跳过 WebFetch 黑名单检查。

env

类型: object作用域: all默认值:

应用于每个会话的环境变量。使用此项替代包装脚本来设置变量。所有支持的键,参见环境变量部分。

JSON
{
  "env": {
    "NODE_ENV": "development",
    "CLAUDE_CODE_EFFORT_LEVEL": "medium"
  }
}

计划与记忆

plansDirectory

类型: string作用域: all默认值: "~/.claude/plans"

/plan 输出的存储目录。路径相对于项目根目录。

autoMemoryEnabled

类型: boolean作用域: all默认值: true

启用或禁用自动跨会话保存上下文的自动记忆功能。

autoMemoryDirectory

类型: string作用域: user / local / managed默认值:

自动记忆存储的自定义目录。接受带 ~/ 扩展的路径。不在项目设置(.claude/settings.json)中接受,以防止共享仓库将记忆写入重定向到敏感位置。


权限

控制 Claude 可以执行的工具和操作。

permissions.allow

类型: array of strings作用域: all默认值: []

无需提示即允许工具使用的权限规则。数组在各作用域间拼接。语法参见下方权限规则语法。

permissions.ask

类型: array of strings作用域: all默认值: []

工具使用前需要用户确认的权限规则。

permissions.deny

类型: array of strings作用域: all默认值: []

阻止工具使用的权限规则。具有最高安全优先级——不可被任何作用域下的允许/询问规则覆盖。

permissions.additionalDirectories

类型: array of strings作用域: all默认值: []

Claude 可访问的额外工作目录,超出当前项目根目录范围。

JSON
{ "permissions": { "additionalDirectories": ["../shared-libs/"] } }

permissions.defaultMode

类型: string作用域: all默认值: "default"可选值: "default" | "acceptEdits" | "plan" | "bypassPermissions"

打开 Claude Code 时的默认权限模式。在远程环境中,只支持 "acceptEdits""plan"

permissions.disableBypassPermissionsMode

类型: string作用域: all默认值:可选值: "disable"

设为 "disable" 以阻止激活绕过权限模式。禁用 --dangerously-skip-permissions 标志。在托管设置中最有用。

allowManagedPermissionRulesOnly

类型: boolean作用域: 仅 managed默认值: false

true 时,忽略用户和项目的 allowaskdeny 规则。只应用托管权限规则。

权限规则语法

规则遵循 ToolTool(specifier) 格式。评估顺序:先拒绝,再询问,再允许。第一个匹配的规则生效。

工具模式示例
Bash带通配符的命令模式Bash(npm run *), Bash(git *)
Read文件路径模式Read(.env), Read(./secrets/**)
Edit文件路径模式Edit(src/**), Edit(*.ts)
Write文件路径模式Write(*.md)
WebFetchdomain:hostnameWebFetch(domain:example.com)
WebSearch无指定符WebSearch
Task智能体名称Task(Explore)
Agent智能体名称Agent(researcher)
MCPmcp__server__toolMCP(server:tool)mcp__memory__*

Read/Edit 规则的路径前缀:

前缀含义
//从文件系统根目录的绝对路径
~/相对于主目录
/相对于项目根目录
./ 或无前缀相对路径(当前目录)

Bash 通配符说明: * 在任意位置匹配。Bash(ls *)* 前有空格)匹配 ls -la 但不匹配 lsofBash(*) 等同于 Bash(匹配所有命令)。旧版 :* 后缀(如 Bash(npm:*))已弃用。

JSON
{
  "permissions": {
    "allow": ["Edit(*)", "Bash(npm run *)", "Bash(git *)"],
    "ask": ["Bash(git push *)"],
    "deny": ["Read(.env)", "Read(./secrets/**)"],
    "defaultMode": "acceptEdits"
  }
}

Hooks

hooks

类型: object作用域: all默认值:

配置在生命周期事件时运行的自定义命令。完整格式、所有 19 个事件、退出码和环境变量,参见 hooks 文档

disableAllHooks

类型: boolean作用域: all默认值: false

禁用所有 hooks 和任何自定义状态行。

allowManagedHooksOnly

类型: boolean作用域: 仅 managed默认值: false

true 时,只加载托管 hooks 和 SDK hooks。用户、项目和插件 hooks 被阻止。

allowedHttpHookUrls

类型: array of strings作用域: all默认值: 无(不限制)

HTTP hooks 可以访问的 URL 模式白名单。支持 * 作为通配符。定义后,URL 不匹配的 hooks 被静默阻止。空数组阻止所有 HTTP hooks。数组在各设置来源间合并。

JSON
{ "allowedHttpHookUrls": ["https://hooks.example.com/*"] }

httpHookAllowedEnvVars

类型: array of strings作用域: all默认值: 无(不限制)

HTTP hooks 可在请求头值中插值的环境变量名白名单。每个 hook 的有效 allowedEnvVars 是与此列表的交集。数组在各设置来源间合并。


MCP 服务器

enableAllProjectMcpServers

类型: boolean作用域: all默认值: false

自动批准项目 .mcp.json 文件中定义的所有 MCP 服务器。避免每个服务器的确认提示。

enabledMcpjsonServers

类型: array of strings作用域: all默认值:

.mcp.json 文件中要批准的特定服务器名称白名单。

disabledMcpjsonServers

类型: array of strings作用域: all默认值:

.mcp.json 文件中要拒绝的特定服务器名称黑名单。

allowedMcpServers

类型: array作用域: 仅 managed默认值: 无(不限制)

用户可配置的 MCP 服务器白名单。每个条目通过 serverNameserverCommandserverUrl 匹配。未定义 = 不限制,空数组 = 锁定。

JSON
{
  "allowedMcpServers": [
    { "serverName": "github" },
    { "serverCommand": "npx @modelcontextprotocol/*" },
    { "serverUrl": "https://mcp.company.com/*" }
  ]
}

deniedMcpServers

类型: array作用域: 仅 managed默认值:

明确阻止的 MCP 服务器黑名单。适用于所有作用域,包括托管服务器。优先级高于 allowedMcpServers

allowManagedMcpServersOnly

类型: boolean作用域: 仅 managed默认值: false

true 时,只遵从托管设置中的 allowedMcpServers。用户仍可添加 MCP 服务器,但只有管理员定义的服务器可用。deniedMcpServers 仍从所有来源合并。

channelsEnabled

类型: boolean作用域: 仅 managed默认值: false

允许 Team 和 Enterprise 用户使用频道。未设置或 false 时,无论用户传给 --channels 的值,频道消息传递都被阻止。

allowedChannelPlugins

类型: array作用域: 仅 managed默认值: 无(使用 Anthropic 默认白名单)

可推送消息的频道插件白名单。设置后替换默认的 Anthropic 白名单。需要 channelsEnabled: true。空数组阻止所有频道插件。


沙箱

为安全配置 bash 命令沙箱化。在 macOS、Linux 和 WSL2 上可用。

sandbox.enabled

类型: boolean作用域: all默认值: false

启用 bash 沙箱化。将 bash 命令与文件系统和网络隔离。

sandbox.failIfUnavailable

类型: boolean作用域: all默认值: false

如果 sandbox.enabledtrue 但沙箱无法启动(缺少依赖、不支持的平台),则在启动时以错误退出。为 false 时显示警告,命令在无沙箱情况下运行。在要求沙箱作为硬性条件的托管部署中很有用。

sandbox.autoAllowBashIfSandboxed

类型: boolean作用域: all默认值: true

沙箱启用时自动批准 bash 命令。沙箱激活时,通常需要确认的 bash 命令会被自动批准。

sandbox.excludedCommands

类型: array of strings作用域: all默认值: []

绕过沙箱直接在环境中运行的命令。

sandbox.allowUnsandboxedCommands

类型: boolean作用域: all默认值: true

允许命令通过 dangerouslyDisableSandbox 参数退出沙箱。设为 false 可实现严格沙箱化,要求所有命令都在沙箱内运行或在 excludedCommands 中。

sandbox.enableWeakerNestedSandbox

类型: boolean作用域: all默认值: false

为非特权 Docker 环境(仅 Linux 和 WSL2)启用较弱的沙箱。降低安全性。

sandbox.enableWeakerNetworkIsolation

类型: boolean作用域: all默认值: false

(仅 macOS)允许访问系统 TLS 信任服务(com.apple.trustd.agent)。在使用带 MITM 代理和自定义 CA 的 httpProxyPort 时,Go 工具(如 ghgcloudterraform)需要此设置。降低安全性。

sandbox.network.allowUnixSockets

类型: array of strings作用域: all默认值: []

沙箱中可访问的特定 Unix 套接字路径(用于 SSH 代理、Docker 等)。

sandbox.network.allowAllUnixSockets

类型: boolean作用域: all默认值: false

允许沙箱中的所有 Unix 套接字连接。覆盖 allowUnixSockets

sandbox.network.allowLocalBinding

类型: boolean作用域: all默认值: false

允许绑定到 localhost 端口(仅 macOS)。

sandbox.network.allowedDomains

类型: array of strings作用域: all默认值: []

允许出站网络流量的域名。支持 *.example.com 等通配符。

sandbox.network.allowManagedDomainsOnly

类型: boolean作用域: 仅 managed默认值: false

true 时,只遵从托管设置中的 allowedDomainsWebFetch(domain:...) 允许规则。未允许的域名无需提示即被阻止。拒绝的域名仍从所有来源遵从。

sandbox.network.httpProxyPort

类型: number作用域: all默认值:

自定义代理的 HTTP 代理端口(1-65535)。未指定时,Claude 运行自己的代理。

sandbox.network.socksProxyPort

类型: number作用域: all默认值:

自定义代理的 SOCKS5 代理端口(1-65535)。

sandbox.network.deniedDomains ⚠️ 未验证

类型: array of strings作用域: all默认值: []

沙箱的网络域名拒绝列表。未在官方文档中确认。

sandbox.filesystem.allowWrite

类型: array of strings作用域: all默认值: []

沙箱命令可以写入的额外路径。在所有设置作用域间合并。也与 Edit(...) 允许权限规则中的路径合并。

路径前缀约定: / = 绝对路径,~/ = 相对于主目录,./ 或无前缀 = 项目设置中相对于项目,用户设置中相对于 ~/.claude

sandbox.filesystem.denyWrite

类型: array of strings作用域: all默认值: []

沙箱命令不能写入的路径。与 Edit(...) 拒绝规则合并。

sandbox.filesystem.denyRead

类型: array of strings作用域: all默认值: []

沙箱命令不能读取的路径。与 Read(...) 拒绝规则合并。

sandbox.filesystem.allowRead

类型: array of strings作用域: all默认值: []

denyRead 区域内重新允许读取访问的路径。优先级高于 denyRead。数组在所有设置作用域间合并。

sandbox.filesystem.allowManagedReadPathsOnly

类型: boolean作用域: 仅 managed默认值: false

true 时,只遵从托管设置中的 allowRead 路径。用户、项目和本地设置中的 allowRead 条目被忽略。

沙箱示例:

JSON
{
  "sandbox": {
    "enabled": true,
    "autoAllowBashIfSandboxed": true,
    "excludedCommands": ["git", "docker"],
    "filesystem": {
      "allowWrite": ["/tmp/build", "~/.kube"],
      "denyRead": ["~/.aws/credentials"]
    },
    "network": {
      "allowedDomains": ["github.com", "*.npmjs.org"],
      "allowUnixSockets": ["/var/run/docker.sock"],
      "allowLocalBinding": true
    }
  }
}

插件与市场

enabledPlugins

类型: object作用域: all默认值:

通过键(格式:plugin-name@marketplace-name)启用或禁用特定插件。

JSON
{
  "enabledPlugins": {
    "formatter@acme-tools": true,
    "experimental@acme-tools": false
  }
}

extraKnownMarketplaces

类型: object作用域: project默认值:

添加自定义插件市场。使用 source: "settings" 内联声明插件,无需托管仓库。

strictKnownMarketplaces

类型: array作用域: 仅 managed默认值: 无(不限制)

允许的插件市场白名单。设置后,用户只能从列出的市场添加插件。空数组阻止所有添加。

blockedMarketplaces

类型: array作用域: 仅 managed默认值:

阻止特定插件市场来源。阻止的来源在下载前检查,因此永远不会触及文件系统。

pluginTrustMessage

类型: string作用域: 仅 managed默认值:

附加到安装前显示的插件信任警告的自定义消息。用于组织特定的上下文,例如确认来自内部市场的插件已经过审查。

skippedMarketplaces 📋 仅限 Schema

类型: array作用域: all默认值:

用户拒绝安装的市场(自动存储)。

skippedPlugins 📋 仅限 Schema

类型: array作用域: all默认值:

用户拒绝安装的插件(自动存储)。

pluginConfigs 📋 仅限 Schema

类型: object作用域: all默认值:

plugin@marketplace 键的每插件 MCP 服务器配置。


模型配置

effortLevel

类型: string作用域: all默认值: "medium"可选值: "low" | "medium" | "high"

跨会话持久化思考力度。控制推理深度。运行 /effort low|medium|high 时自动写入。在 Opus 4.6 和 Sonnet 4.6 上受支持。CLAUDE_CODE_EFFORT_LEVEL 环境变量优先级更高。

modelOverrides

类型: object作用域: all默认值:

将 Anthropic 模型 ID 映射到提供商特定的模型 ID(例如,Bedrock 推理配置文件 ARN)。每个键是模型选择器条目名称;每个值是提供商模型 ID。

JSON
{
  "modelOverrides": {
    "claude-opus-4-6": "arn:aws:bedrock:us-east-1:123456789:inference-profile/anthropic.claude-opus-4-6-v1:0"
  }
}

模型别名参考:

别名描述
"default"您账户类型推荐的模型
"sonnet"最新的 Sonnet(Claude Sonnet 4.6)
"opus"最新的 Opus(Claude Opus 4.6)
"haiku"快速的 Haiku 模型
"sonnet[1m]"带 1M Token(词元)上下文的 Sonnet
"opusplan"规划用 Opus,执行用 Sonnet

显示与用户体验

statusLine

类型: object作用域: all默认值:

配置自定义状态行。命令通过 stdin 接收包含 context_window.used_percentagerate_limits.five_hour.used_percentage 等字段的 JSON 对象。

JSON
{
  "statusLine": {
    "type": "command",
    "command": "~/.claude/statusline.sh",
    "padding": 0
  }
}

fileSuggestion

类型: object作用域: all默认值:

配置 @ 文件路径自动补全的自定义脚本。命令通过 stdin 接收带 query 字段的 JSON,输出换行分隔的文件路径(最多 15 个)。

JSON
{
  "fileSuggestion": {
    "type": "command",
    "command": "~/.claude/file-suggestion.sh"
  }
}

outputStyle

类型: string作用域: all默认值: "Default"

控制 Claude 在整个会话中的沟通方式。等同于通过 /config → "首选输出风格"选择样式。

内置值:

  • "Default" — 简洁、任务导向的响应,针对速度优化
  • "Explanatory" — 添加解释设计选择、权衡和代码库模式的推理块
  • "Learning" — 在关键步骤暂停,插入 TODO(human) 标记,要求你编写有意义的部分(结对编程模式)

自定义样式: 引用 .claude/styles/ 中的任意文件名(不含 .md)。

JSON
{ "outputStyle": "Explanatory" }
JSON
{ "outputStyle": "strict-reviewer" }

设置跨会话持久化。Explanatory 和 Learning 会增加输出 Token(词元);第一次请求后提示缓存可抵消成本。完整文档和自定义样式示例,参见「第 9.7 节」。

spinnerTipsEnabled

类型: boolean作用域: all默认值: true

Claude 工作时在转轮中显示提示。

spinnerVerbs

类型: object作用域: all默认值:

自定义转轮和轮次时长消息中显示的动作动词。将 mode 设为 "replace" 只使用你的动词,或设为 "append" 追加到默认值。

JSON
{
  "spinnerVerbs": {
    "mode": "replace",
    "verbs": ["正在烹饪", "正在酿造", "正在制作", "正在施法"]
  }
}

spinnerTipsOverride

类型: object作用域: all默认值:

用自定义字符串覆盖转轮提示。tips:字符串数组。excludeDefault:为 true 时只显示自定义提示。

JSON
{
  "spinnerTipsOverride": {
    "tips": ["在上下文 50% 时使用 /compact", "计划模式有助于处理复杂任务"],
    "excludeDefault": true
  }
}

respectGitignore

类型: boolean作用域: all默认值: true

控制 @ 文件选择器是否遵守 .gitignore 模式。

prefersReducedMotion

类型: boolean作用域: all默认值: false

为无障碍访问减少或禁用 UI 动画(转轮、微光、闪烁效果)。


身份验证

apiKeyHelper

类型: string作用域: all默认值:

Shell 脚本路径(在 /bin/sh 中执行),输出作为 X-Api-KeyAuthorization: Bearer 请求头发送的认证 Token(词元),用于模型请求。适合短期凭证。

JSON
{ "apiKeyHelper": "/bin/generate_temp_api_key.sh" }

forceLoginMethod

类型: string作用域: all默认值:可选值: "claudeai" | "console"

将登录限制为 Claude.ai 账户("claudeai")或 Claude Console API 计费账户("console")。

forceLoginOrgUUID

类型: string作用域: all默认值:

登录时自动选择的组织 UUID,跳过组织选择步骤。需要设置 forceLoginMethod


归因

attribution.commit

类型: string作用域: all默认值: 带共同作者行的 Git trailer

添加到 git 提交的归因文本。支持 git trailers。设为空字符串可完全禁用提交归因。

attribution.pr

类型: string作用域: all默认值: 带 Claude Code 链接的生成消息

添加到拉取请求描述的归因文本。设为空字符串可禁用。

includeCoAuthoredBy

类型: boolean作用域: all默认值: true状态: 已弃用——改用 attribution

是否包含 Co-Authored-By 署名。已被 attribution 对象取代。

JSON
{
  "attribution": {
    "commit": "由 AI 生成\n\nCo-Authored-By: AI <ai@example.com>",
    "pr": ""
  }
}

工作树

worktree.symlinkDirectories

类型: array of strings作用域: all默认值: []

从主仓库符号链接到每个工作树的目录,避免磁盘上大型重复目录(例如 node_modules)。

worktree.sparsePaths

类型: array of strings作用域: all默认值: []

通过 git 稀疏检出(cone 模式)在每个工作树中检出的目录。只有列出的路径写入磁盘——适合大型 monorepo。

JSON
{
  "worktree": {
    "symlinkDirectories": ["node_modules", ".cache"],
    "sparsePaths": ["packages/my-app", "shared/utils"]
  }
}

AWS 与云

awsAuthRefresh

类型: string作用域: all默认值:

修改 .aws 目录的自定义脚本。在 API 调用前运行以刷新 AWS 凭证。

JSON
{ "awsAuthRefresh": "aws sso login --profile myprofile" }

awsCredentialExport

类型: string作用域: all默认值:

输出含 AWS 凭证 JSON 的自定义脚本。用于非标准凭证来源。

otelHeadersHelper

类型: string作用域: all默认值:

生成动态 OpenTelemetry 请求头的脚本。启动时和定期运行。预期输出格式参见监控文档。


全局配置(~/.claude.json

这些设置存储在 ~/.claude.json 中,不在 settings.json 中。将它们添加到 settings.json 会触发 Schema 验证错误。

类型默认值描述
autoConnectIdebooleanfalse从外部终端启动 Claude Code 时自动连接到正在运行的 IDE
autoInstallIdeExtensionbooleantrue从 VS Code 终端运行时自动安装 Claude Code IDE 扩展
editorModestring"normal"按键绑定模式:"normal""vim"。由 /vim 自动写入
showTurnDurationbooleantrue响应后显示轮次时长消息(如"耗时 1 分 6 秒")
terminalProgressBarEnabledbooleantrue在 ConEmu、Ghostty 1.2.0+ 和 iTerm2 3.6.6+ 中显示终端进度条

其他仅限 Schema 的键

在 JSON Schema 中确认但未在上方章节中涵盖的键:

类型描述
claudeMdExcludes 📋 仅限 Schemaarray要从加载中排除的 CLAUDE.md 文件的 glob 模式
allowManagedMcpServersOnlyboolean(托管)只有托管的 MCP 服务器可用
allowManagedHooksOnlyboolean(托管)只加载托管和 SDK hooks
autoMemoryEnabledboolean启用/禁用自动记忆功能
feedbackSurveyRatenumber调查出现概率(0-1)

环境变量

在启动 claude 前在 shell 中设置,或在 settings.jsonenv 键下配置以应用于每个会话。

身份验证

变量描述
ANTHROPIC_API_KEY直接访问 Anthropic API 的 API 密钥
ANTHROPIC_AUTH_TOKENOAuth Token(词元)(API 密钥的替代方案)
ANTHROPIC_BASE_URL自定义 API 端点(用于代理或私有部署)
ANTHROPIC_CUSTOM_HEADERSAPI 请求的自定义请求头。格式:Name: Value,多个请求头用换行分隔
CLAUDE_CODE_USER_EMAIL同步提供用于认证的用户邮箱
CLAUDE_CODE_ORGANIZATION_UUID同步提供用于认证的组织 UUID
CLAUDE_CODE_ACCOUNT_UUID覆盖认证的账户 UUID
CLAUDE_CONFIG_DIR自定义配置目录路径(覆盖默认的 ~/.claude
CLAUDE_ENV_FILE自定义环境文件路径

模型选择

变量描述
ANTHROPIC_MODEL要使用的模型。接受别名(sonnetopushaiku)或完整模型 ID。覆盖 model 设置
ANTHROPIC_DEFAULT_HAIKU_MODEL用自定义模型 ID 覆盖 Haiku 模型别名
ANTHROPIC_DEFAULT_HAIKU_MODEL_NAMEHaiku 模型覆盖的显示名称
ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTIONHaiku 模型覆盖的描述
ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIESHaiku 模型覆盖的能力
ANTHROPIC_DEFAULT_SONNET_MODEL覆盖 Sonnet 模型别名
ANTHROPIC_DEFAULT_SONNET_MODEL_NAMESonnet 模型覆盖的显示名称
ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTIONSonnet 模型覆盖的描述
ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIESSonnet 模型覆盖的能力
ANTHROPIC_DEFAULT_OPUS_MODEL覆盖 Opus 模型别名(例如 claude-opus-4-6[1m]
ANTHROPIC_DEFAULT_OPUS_MODEL_NAMEOpus 模型覆盖的显示名称
ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTIONOpus 模型覆盖的描述
ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIESOpus 模型覆盖的能力
ANTHROPIC_CUSTOM_MODEL_OPTION添加到 /model 选择器的自定义模型 ID
ANTHROPIC_CUSTOM_MODEL_OPTION_NAME自定义模型条目的显示名称
ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION自定义模型条目的显示描述
ANTHROPIC_SMALL_FAST_MODEL已弃用 — 改用 ANTHROPIC_DEFAULT_HAIKU_MODEL
ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION已弃用的 Haiku 类模型覆盖的 AWS 区域
CLAUDE_CODE_SUBAGENT_MODEL覆盖子智能体的模型(例如 haiku
CLAUDE_CODE_EFFORT_LEVEL设置思考力度:lowmediumhighmax(仅 Opus 4.6)或 auto。优先级高于 /efforteffortLevel 设置

云提供商(Bedrock、Vertex、Foundry)

变量描述
CLAUDE_CODE_USE_BEDROCK使用 AWS Bedrock(1 启用)
CLAUDE_CODE_USE_VERTEX使用 Google Vertex AI(1 启用)
CLAUDE_CODE_USE_FOUNDRY使用 Microsoft Foundry(1 启用)
AWS_BEARER_TOKEN_BEDROCKBedrock API 认证密钥
CLAUDE_CODE_SKIP_BEDROCK_AUTH跳过 Bedrock 的 AWS 认证(1 跳过)
CLAUDE_CODE_SKIP_FOUNDRY_AUTH跳过 Foundry 的 Azure 认证(1 跳过)
CLAUDE_CODE_SKIP_VERTEX_AUTH跳过 Vertex 的 Google 认证(1 跳过)
ANTHROPIC_FOUNDRY_API_KEYMicrosoft Foundry 认证的 API 密钥
ANTHROPIC_FOUNDRY_BASE_URLFoundry 资源的基础 URL
ANTHROPIC_FOUNDRY_RESOURCEFoundry 资源名称
VERTEX_REGION_CLAUDE_3_5_HAIKUClaude 3.5 Haiku 的 Vertex AI 区域覆盖
VERTEX_REGION_CLAUDE_3_7_SONNETClaude 3.7 Sonnet 的 Vertex AI 区域覆盖
VERTEX_REGION_CLAUDE_4_0_OPUSClaude 4.0 Opus 的 Vertex AI 区域覆盖
VERTEX_REGION_CLAUDE_4_0_SONNETClaude 4.0 Sonnet 的 Vertex AI 区域覆盖
VERTEX_REGION_CLAUDE_4_1_OPUSClaude 4.1 Opus 的 Vertex AI 区域覆盖

超时与限制

变量描述
BASH_DEFAULT_TIMEOUT_MS默认 bash 命令超时(毫秒)
BASH_MAX_TIMEOUT_MS最大 bash 命令超时(毫秒)
BASH_MAX_OUTPUT_LENGTH最大 bash 输出长度
MAX_THINKING_TOKENS每次响应的最大扩展深度思考 Token(词元)
CLAUDE_CODE_MAX_OUTPUT_TOKENS每次响应的最大输出 Token(词元)。默认:32,000(v2.1.77 起 Opus 4.6 为 64,000)。上限:Opus 4.6 和 Sonnet 4.6 为 128,000
CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS覆盖默认的文件读取 Token(词元)限制
CLAUDE_CODE_EXIT_AFTER_STOP_DELAYSDK 模式下此空闲时长后自动退出(毫秒)
CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MSSessionEnd hook 超时(毫秒)(替换硬编码的 1.5 秒限制)
CLAUDE_CODE_API_KEY_HELPER_TTL_MSapiKeyHelper 的凭证刷新间隔(毫秒)
CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS插件市场 git 克隆超时(毫秒,默认:120000)
CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MSOTel 请求头辅助脚本的防抖间隔(毫秒)
MCP_TIMEOUTMCP 服务器启动超时(毫秒)
MCP_TOOL_TIMEOUTMCP 工具执行超时(毫秒)

行为控制

变量描述
CLAUDECODE在 Claude Code 派生的 shell 环境(Bash 工具、tmux)中设为 1。不在 hooks 或状态行命令中设置。用于检测脚本是否在 Claude Code 内运行
CLAUDE_CODE_SHELL覆盖自动 shell 检测
CLAUDE_CODE_SHELL_PREFIX添加到所有 bash 命令的命令前缀
CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR在 bash 调用间保持工作目录(1 启用)
CLAUDE_CODE_NEW_INIT设为 true 使 /init 运行交互式设置流程,询问要生成哪些文件
CLAUDE_CODE_PLAN_MODE_REQUIRED要求会话使用计划模式
CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS设为 1 以在组织状态检查因网络错误失败时允许快速模式(在企业代理后有用)
CLAUDE_CODE_SIMPLE启用简单/最小化 UI 模式
CLAUDE_CODE_SUBPROCESS_ENV_SCRUB从子进程环境中清除的环境变量
CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD要从中加载 CLAUDE.md 文件的额外目录
CLAUDE_CODE_TMPDIRClaude Code 操作的自定义临时目录
USE_BUILTIN_RIPGREP使用内置的 ripgrep(rg) 二进制文件而非系统的 ripgrep(rg)

上下文窗口与压缩

变量描述
CLAUDE_AUTOCOMPACT_PCT_OVERRIDE自动压缩阈值百分比(1-100)。默认约 95%。较低的值(如 50)会更早触发上下文压缩。95% 以上的值没有效果
CLAUDE_CODE_AUTO_COMPACT_WINDOW用于压缩计算的上下文容量(Token(词元))。默认为模型的上下文窗口(标准 200K,扩展版 1M)。1M 模型上设置较低值(如 500000)会将其视为 500K 用于压缩计算
CLAUDE_CODE_DISABLE_1M_CONTEXT禁用 1M Token(词元)上下文窗口(1 禁用)

遥测与可观测性

变量描述
CLAUDE_CODE_ENABLE_TELEMETRY启用遥测(1 启用)
DISABLE_TELEMETRY禁用遥测(1 禁用)
DISABLE_ERROR_REPORTING禁用错误报告(1 禁用)
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC等同于同时设置 DISABLE_AUTOUPDATERDISABLE_FEEDBACK_COMMANDDISABLE_ERROR_REPORTINGDISABLE_TELEMETRY

功能开关

变量描述
CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING禁用自适应深度思考(1 禁用)
CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS禁用实验性 beta 功能(1 禁用)
CLAUDE_CODE_DISABLE_BACKGROUND_TASKS禁用后台任务(1 禁用)
CLAUDE_CODE_DISABLE_AUTO_MEMORY禁用自动记忆(1 禁用)
CLAUDE_CODE_DISABLE_FAST_MODE完全禁用快速模式(1 禁用)
CLAUDE_CODE_DISABLE_CRON禁用定时/cron 任务(1 禁用)
CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS禁用 git 相关的系统提示指令。优先级高于 includeGitInstructions 设置
CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK禁用流式请求失败时的非流式回退
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY禁用反馈调查提示(1 禁用)
CLAUDE_CODE_DISABLE_TERMINAL_TITLE禁用终端标题更新(1 禁用)
CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION启用提示建议
CLAUDE_CODE_ENABLE_TASKS设为 true 以在非交互模式(-p 标志)中启用任务跟踪。交互模式下任务默认开启
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS启用实验性智能体团队功能
ENABLE_CLAUDEAI_MCP_SERVERS启用 Claude.ai MCP 服务器
CLAUDE_CODE_USE_POWERSHELL_TOOL在 Windows 上启用 PowerShell 工具(需要设置 defaultShell: "powershell"
FORCE_AUTOUPDATE_PLUGINS强制插件自动更新(1 启用)
IS_DEMO启用演示模式

提示缓存

变量描述
DISABLE_PROMPT_CACHING禁用所有提示缓存(1 禁用)
DISABLE_PROMPT_CACHING_HAIKU禁用 Haiku 模型请求的提示缓存
DISABLE_PROMPT_CACHING_SONNET禁用 Sonnet 模型请求的提示缓存
DISABLE_PROMPT_CACHING_OPUS禁用 Opus 模型请求的提示缓存

MCP 配置

变量描述
MAX_MCP_OUTPUT_TOKENS每次调用的最大 MCP 输出 Token(词元)(默认:25000)。输出超过 10,000 Token(词元)时显示警告
ENABLE_TOOL_SEARCHMCP 工具搜索阈值(例如 auto:5 — 超过 5 个 MCP 工具时激活工具搜索)
MCP_CLIENT_SECRETMCP OAuth 客户端密钥
MCP_OAUTH_CALLBACK_PORTMCP OAuth 回调端口

代理与网络

变量描述
HTTP_PROXY网络请求的 HTTP 代理 URL
HTTPS_PROXY网络请求的 HTTPS 代理 URL
NO_PROXY绕过代理的主机名逗号分隔列表
CLAUDE_CODE_PROXY_RESOLVES_HOSTS允许代理执行 DNS 解析
CLAUDE_CODE_CLIENT_CERTmTLS 的客户端证书路径
CLAUDE_CODE_CLIENT_KEYmTLS 的客户端私钥路径
CLAUDE_CODE_CLIENT_KEY_PASSPHRASE加密 mTLS 密钥的密码

UI 与显示

变量描述
DISABLE_COST_WARNINGS禁用成本警告消息
DISABLE_INSTALLATION_CHECKS禁用安装警告
DISABLE_AUTOUPDATER禁用自动更新程序
DISABLE_FEEDBACK_COMMAND禁用 /feedback 命令。旧名称 DISABLE_BUG_COMMAND 也被接受
CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL跳过自动 IDE 扩展安装(1 跳过)。也可通过 ~/.claude.json 中的 autoInstallIdeExtension 配置
SLASH_COMMAND_TOOL_CHAR_BUDGET斜杠命令工具输出的字符预算

智能体团队与任务

变量描述
CLAUDE_CODE_TEAM_NAME智能体团队的团队名称
CLAUDE_CODE_TASK_LIST_ID任务集成的任务列表 ID

未验证的变量

这些变量出现在社区来源或旧文档中,但未在当前官方文档中确认。

变量描述
CLAUDE_CODE_MAX_TURNS ⚠️ 未验证停止前的最大智能体轮次
CLAUDE_CODE_SKIP_SETTINGS_SETUP ⚠️ 未验证跳过首次运行的设置流程
CLAUDE_CODE_DISABLE_TOOLS ⚠️ 未验证要禁用的工具的逗号分隔列表
CLAUDE_CODE_DISABLE_MCP ⚠️ 未验证禁用所有 MCP 服务器(1 禁用)
CLAUDE_CODE_HIDE_ACCOUNT_INFO ⚠️ 未验证在 UI 中隐藏邮箱/组织信息
CLAUDE_CODE_PROMPT_CACHING_ENABLED ⚠️ 未验证覆盖提示缓存行为
DISABLE_NON_ESSENTIAL_MODEL_CALLS ⚠️ 未验证禁用描述性文字和非必要的模型调用

完整示例

JSON
{
  "$schema": "https://json.schemastore.org/claude-code-settings.json",
  "model": "sonnet",
  "language": "english",
  "cleanupPeriodDays": 30,
  "autoUpdatesChannel": "stable",
  "alwaysThinkingEnabled": false,
  "includeGitInstructions": true,
  "effortLevel": "medium",
  "plansDirectory": "./plans",

  "worktree": {
    "symlinkDirectories": ["node_modules"],
    "sparsePaths": ["packages/my-app", "shared/utils"]
  },

  "permissions": {
    "allow": [
      "Edit(*)",
      "Write(*)",
      "Bash(npm run *)",
      "Bash(git *)",
      "WebFetch(domain:*)",
      "mcp__*"
    ],
    "ask": ["Bash(git push *)"],
    "deny": [
      "Read(.env)",
      "Read(./secrets/**)"
    ],
    "additionalDirectories": ["../shared/"],
    "defaultMode": "acceptEdits"
  },

  "enableAllProjectMcpServers": true,

  "sandbox": {
    "enabled": true,
    "excludedCommands": ["git", "docker"],
    "filesystem": {
      "allowWrite": ["/tmp/build"],
      "denyRead": ["~/.aws/credentials"]
    },
    "network": {
      "allowedDomains": ["github.com", "*.npmjs.org"],
      "allowUnixSockets": ["/var/run/docker.sock"]
    }
  },

  "attribution": {
    "commit": "由 Claude Code 生成",
    "pr": ""
  },

  "statusLine": {
    "type": "command",
    "command": "git branch --show-current"
  },

  "spinnerTipsEnabled": true,
  "prefersReducedMotion": false,

  "env": {
    "NODE_ENV": "development",
    "CLAUDE_CODE_EFFORT_LEVEL": "medium"
  }
}

快速参考

任务设置 / 变量
设置默认模型设置中的 modelANTHROPIC_MODEL 环境变量
锁定模型选择availableModels 数组
静默遥测DISABLE_TELEMETRY=1CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1
自动批准 bashpermissions.defaultMode: "acceptEdits"
阻止敏感文件permissions.deny: ["Read(.env)"]
减少上下文压缩CLAUDE_AUTOCOMPACT_PCT_OVERRIDE=70
设置响应语言language: "japanese"
自定义转轮文字spinnerVerbs + spinnerTipsOverride
移除归因attribution.commit: "", attribution.pr: ""
固定稳定版发布autoUpdatesChannel: "stable"
动态认证 TokenapiKeyHelper: "/path/to/script.sh"
大型 monorepoworktree.symlinkDirectories + worktree.sparsePaths
启用沙箱sandbox.enabled: true
信任所有项目 MCP 服务器enableAllProjectMcpServers: true

来源:飞书 · AI Spark 知识库 | 原文(最新版):https://lcnniolukk80.feishu.cn/wiki/TRTbwpWXriSulUkD39Mcn5l0nzc | 归档:2026-06-04