Claude Code CLI · 手动配置

v2.1.1832026-06-19ProprietaryGitHub
适用场景
不用 CC Switch,直接改 settings.json 或系统环境变量
面向读者
想搞清 CC Switch 写了什么;要程序化生成配置;多 Key 要写脚本切
TL;DR
改 ~/.claude/settings.json 的 env 段即热生效;环境变量优先级更高

配置文件位置

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

启动 claude 时:

  • 没有该文件 → 触发 Anthropic 官方 OAuth 引导(需要 Anthropic 账号)
  • 文件存在且 env 段配置正确 → 跳过 OAuth 流程,直接使用配置的 API Key
  • 有文件但 env 段缺字段 → 拿不到 Key,报 401

结论:配好 settings.json 就不需要登录。


最小可用模板

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

保存后不用重启,下一次发请求即生效(Claude Code 支持热切换)。


完整环境变量字段

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

认证与路由

变量用途
ANTHROPIC_API_KEY作为 x-api-key 请求头发送。中转站若校验标准 Anthropic Key,用这个
ANTHROPIC_AUTH_TOKEN作为 Authorization: Bearer 请求头发送。很多第三方网关用的是这个,不是 ANTHROPIC_API_KEY
ANTHROPIC_BASE_URL请求目标地址。本站填 https://foropencode.com不带 /v1

模型选择

变量用途
ANTHROPIC_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 小时长缓存(需对应分组支持)

国内网络必做配置

{
  "ENABLE_TOOL_SEARCH": true,
  "skipWebFetchPreflight": true,
  "env": {
    "ANTHROPIC_BASE_URL": "https://foropencode.com",
    "ANTHROPIC_API_KEY": "sk-xxx",
    "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1"
  }
}
字段为什么
ENABLE_TOOL_SEARCH减少工具调用时的 Token 泄漏
skipWebFetchPreflight不设置则 WebFetch 整体失效——CC 会先打 claude.ai 做预检,国内网络拦截后整个工具炸掉
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC关掉遥测和更新检查

详见 CC-017:WebFetch 预检失败


系统环境变量(备用)

不想改 settings.json,也可以在系统级注入环境变量。优先级高于 settings.json

~/.zshrc~/.bashrc

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

source ~/.zshrc新开终端跑 claude


AWS 分组 400 的补充项

如果使用 AWS 分组时出现 400,且报错与请求内容无关:

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

保存后重启所有终端,再启动 claude 生效。详见 CC-006


验证 & 排查

claude
/status

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

现象排障页
401 / Invalid API KeyCC-007CC-016
Key 看起来对但仍 401CC-021 不可见字符
OAuth 残留覆盖中转CC-018
vip_2_cc 报错model 改为 GPT 模型名

相关