跳到正文

Claude Code CLI · 手动配置

v2.1.2202026-07-25ProprietaryGitHub
适用场景
不用 CC Switch,直接改 settings.json 或系统环境变量
面向读者
想搞清 CC Switch 写了什么;要程序化生成配置;多 Key 要写脚本切
TL;DR
改 ~/.claude/settings.json 的 env 段 → 用 /status 核对实际生效来源

配置文件位置

平台路径
macOS / Linux / WSL~/.claude/settings.json
Windows%USERPROFILE%\.claude\settings.json

启动时采用哪种认证路径取决于当前版本、账户和 provider 配置。不要把“存在 settings.json”等同于“可以跳过登录或首次引导”;官方账户/API 与第三方 LLM Gateway 是不同路径。


最小可用模板

{
  "env": {
    "ANTHROPIC_BASE_URL": "https://foropencode.com",
    "ANTHROPIC_API_KEY": "sk-xxx"
  }
}

保存后重新启动一个 Claude Code 会话,并用 /status 核对实际 Base URL。不要假定所有版本和插件组合都能热切换。


完整环境变量字段

env 段所有字段在进程启动时注入到环境变量。Anthropic 官方文档列出的:

认证与路由

变量用途
ANTHROPIC_API_KEY作为 x-api-key 请求头发送。中转站若校验标准 Anthropic Key,用这个
ANTHROPIC_AUTH_TOKEN作为 Authorization: Bearer 请求头发送。很多第三方网关用的是这个,不是 ANTHROPIC_API_KEY
ANTHROPIC_BASE_URL请求目标地址。本站截图使用第三方网关 https://foropencode.com;实际路径以网关当前正式说明为准

模型选择

变量用途
ANTHROPIC_MODEL指定默认模型,覆盖 settings 的 model 设置;会被 --model 参数和会话内 /model 选择覆盖
ANTHROPIC_DEFAULT_OPUS_MODELopus 别名解析到的具体模型 ID
ANTHROPIC_DEFAULT_SONNET_MODELsonnet 别名解析到的具体模型 ID
ANTHROPIC_DEFAULT_HAIKU_MODELhaiku 别名解析到的具体模型 ID
ANTHROPIC_DEFAULT_FABLE_MODELfable 别名解析到的具体模型 ID
CLAUDE_CODE_SUBAGENT_MODEL子代理用什么模型(默认跟主模型一样)
CLAUDE_CODE_EFFORT_LEVEL推理深度档位

行为开关

变量用途
MAX_THINKING_TOKENS上限思考 token,0 关闭思考(Fable 5 例外)
DISABLE_AUTO_COMPACT1 关掉自动压缩
DISABLE_AUTOUPDATER1 关掉自动更新
CLAUDE_CODE_DISABLE_1M_CONTEXT1 让 1M 变体不出现在 /model 选择器里
CLAUDE_CODE_SAFE_MODE等价于 --safe-mode
CLAUDE_CODE_SIMPLE等价于 --bare
CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETASAWS 400 时关掉实验性 Beta 头
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC关掉遥测、更新检查

提示词缓存

变量用途
DISABLE_PROMPT_CACHING全模型关闭缓存
DISABLE_PROMPT_CACHING_{HAIKU,SONNET,OPUS,FABLE}关闭特定模型缓存
ENABLE_PROMPT_CACHING_1H启用 1 小时长缓存(需对应分组支持)

网络与非必要流量

如果组织策略要求减少非必要流量,可仅使用 Anthropic 当前文档明确列出的设置,并先理解功能影响。skipWebFetchPreflight 是官方 LLM Gateway 文档记录的 settings 选项:WebFetch 工具的域名安全预检默认仍会请求 api.anthropic.com,仅当网络确实封锁该主机时才在 settings 中设置 "skipWebFetchPreflight": true 单独关闭。ENABLE_TOOL_SEARCH 是当前官方变量,但只控制 MCP tool search,且在第三方网关下有特定兼容条件,不是通用联网修复,因此不放进最小模板。

连接异常时先检查 HTTP_PROXYHTTPS_PROXYNO_PROXY、DNS、系统时间与企业证书代理。不要关闭 TLS 校验或添加来源不明的 skip* 字段。详见 CC-017:WebFetch 排查


系统环境变量(临时/一次性配置)

不想改 settings.json,也可以在 shell 中导出环境变量。注意官方规则:当 shell 导出与 settings.jsonenv 段设置同名变量时,以 settings.json 中的值为准;shell 导出只对当前终端会话及其子进程生效,适合首次验证连接或临时切换。

~/.zshrc~/.bashrc

export ANTHROPIC_BASE_URL=https://foropencode.com
export ANTHROPIC_API_KEY=sk-xxx

source ~/.zshrc新开终端跑 claude


网关拒绝 Beta 字段时的兼容项

如果第三方网关明确返回 anthropic-beta 或 Beta schema 不兼容错误:

{
  "env": {
    "ANTHROPIC_BASE_URL": "https://foropencode.com",
    "ANTHROPIC_API_KEY": "sk-xxx",
    "CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS": "1"
  }
}

保存后重启所有终端,再启动 claude 生效。仅在错误明确与实验性 Beta 头有关、且 Anthropic 当前文档仍记录该变量时使用。详见 CC-006


验证 & 排查

claude
/status

/status 里看到的 Base URL 应该是你刚配的。看到 api.anthropic.com = 配置没生效或被覆盖。

现象排障页
401 / Invalid API KeyCC-007CC-016
Key 看起来对但仍 401CC-021 不可见字符
OAuth 残留覆盖中转CC-018
Invalid model对照当前端点实时模型列表,不照抄旧分组名或模型名

相关

资料来源:Claude Code 设置 · LLM Gateway 配置 · Claude Code 官方 GitHub(2026-07-26 核对)