本页目录16
要点速览
- 所有变量在 Claude Code 启动时读取,修改后须重新运行 `claude` 才生效
- 可在 shell 中 `export`、PowerShell 中 `$env:` 设置,也可写入 `settings.json` 的 `env` 键
- 优先级:CLI 标志(`--model`) > 环境变量(`ANTHROPIC_MODEL`) > `settings.json` 字段
- `API_TIMEOUT_MS` 默认 600000(10 分钟),最大值 2147483647;`BASH_DEFAULT_TIMEOUT_MS` 默认 120000(2 分钟)
- `CLAUDECODE=1` 由 Claude Code 子进程自动注入,可用于脚本中判断运行环境
- Bedrock / Vertex AI / Microsoft Foundry 各有独立前缀变量,不与主 `ANTHROPIC_*` 变量混用
本文是对 Claude Code 官方环境变量参考页的中文整理,完整与最新内容以原文为准:https://code.claude.com/docs/en/env-vars
设置方式
| 平台 | 语法示例 |
|---|---|
| macOS / Linux / WSL (Bash/Zsh) | export VAR_NAME="value" |
| Windows PowerShell | $env:VAR_NAME = "value" |
| Windows CMD | set VAR_NAME=value |
配置文件 env 键 | 在 JSON 中写 "env": { "VAR_NAME": "value" } |
配置文件作用范围
| 文件路径 | 作用范围 |
|---|---|
~/.claude/settings.json | 用户全局(所有项目) |
.claude/settings.json | 项目级(可提交到版本控制) |
.claude/settings.local.json | 项目级·用户私有(不提交) |
配置优先级
--model CLI 标志 / /model 命令 > ANTHROPIC_MODEL 环境变量 > settings.json 中的 model 字段。环境变量始终覆盖同名 settings 字段。
认证类
| 变量名 | 说明 |
|---|---|
ANTHROPIC_API_KEY | API 密钥(设置后覆盖订阅认证) |
ANTHROPIC_AUTH_TOKEN | 自定义 Authorization 请求头值 |
ANTHROPIC_WORKSPACE_ID | 用于工作负载身份联合(Workload Identity Federation) |
模型配置类
| 变量名 | 说明 |
|---|---|
ANTHROPIC_MODEL | 指定使用的模型名称/设置 |
ANTHROPIC_DEFAULT_HAIKU_MODEL | 覆盖 Haiku 级别默认模型 |
ANTHROPIC_DEFAULT_SONNET_MODEL | 覆盖 Sonnet 级别默认模型 |
ANTHROPIC_DEFAULT_OPUS_MODEL | 覆盖 Opus 级别默认模型 |
ANTHROPIC_DEFAULT_FABLE_MODEL | 覆盖 Fable 级别默认模型 |
CLAUDE_CODE_EFFORT_LEVEL | 推理努力级别,取值:low / medium / high / xhigh / max / auto |
API 与请求配置类
| 变量名 | 默认值 | 说明 |
|---|---|---|
API_TIMEOUT_MS | 600000(10 分钟) | 请求超时时间,最大值 2147483647 |
API_FORCE_IDLE_TIMEOUT | — | 覆盖 5 分钟空闲超时,设为 0 可禁用 |
ANTHROPIC_BASE_URL | — | 覆盖 API 端点(用于代理/网关) |
ANTHROPIC_CUSTOM_HEADERS | — | 追加自定义请求头,格式:Name: Value |
ANTHROPIC_BETAS | — | 逗号分隔的 beta 功能标识,追加到请求头 |
云服务商集成类
| 变量名 | 所属平台 |
|---|---|
ANTHROPIC_AWS_API_KEY | AWS |
ANTHROPIC_AWS_BASE_URL | AWS |
ANTHROPIC_AWS_WORKSPACE_ID | AWS |
ANTHROPIC_BEDROCK_BASE_URL | Amazon Bedrock |
ANTHROPIC_BEDROCK_SERVICE_TIER | Amazon Bedrock |
AWS_BEARER_TOKEN_BEDROCK | Amazon Bedrock |
ANTHROPIC_VERTEX_BASE_URL | Google Vertex AI |
ANTHROPIC_VERTEX_PROJECT_ID | Google Vertex AI |
ANTHROPIC_FOUNDRY_API_KEY | Microsoft Foundry |
ANTHROPIC_FOUNDRY_BASE_URL | Microsoft Foundry |
ANTHROPIC_FOUNDRY_RESOURCE | Microsoft Foundry |
工具与命令类
| 变量名 | 默认值 | 说明 |
|---|---|---|
BASH_DEFAULT_TIMEOUT_MS | 120000(2 分钟) | Bash 命令默认超时 |
BASH_MAX_TIMEOUT_MS | 600000(10 分钟) | Bash 命令最大超时 |
BASH_MAX_OUTPUT_LENGTH | — | 超过此字符数后输出将保存到文件 |
CLAUDE_CODE_DISABLE_CRON | — | 禁用定时任务 |
CLAUDE_CODE_DISABLE_ARTIFACT | — | 禁用 Artifact 发布 |
UI 与显示类
| 变量名 | 说明 |
|---|---|
CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN | 禁用全屏渲染(alternate screen) |
CLAUDE_CODE_DISABLE_MOUSE | 禁用鼠标追踪 |
CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL | 禁用虚拟滚动 |
CLAUDE_AX_SCREEN_READER | 启用屏幕阅读器友好输出(v2.1.181+) |
功能开关类
| 变量名 | 说明 |
|---|---|
CLAUDE_CODE_DISABLE_AUTO_MEMORY | 禁用自动记忆文件 |
CLAUDE_CODE_DISABLE_THINKING | 在请求中省略 thinking 参数 |
CLAUDE_CODE_DISABLE_FAST_MODE | 禁用快速模式 |
CLAUDE_CODE_DISABLE_AGENT_VIEW | 禁用后台 Agent 视图 |
CLAUDE_CODE_DISABLE_ATTACHMENTS | 禁用文件附件处理 |
IDE 集成类
| 变量名 | 默认值 | 说明 |
|---|---|---|
CLAUDE_CODE_AUTO_CONNECT_IDE | 自动检测 | 自动连接到受支持的 IDE |
安全与 TLS 类
| 变量名 | 说明 |
|---|---|
CLAUDE_CODE_CERT_STORE | CA 证书来源,取值:bundled / system |
CLAUDE_CODE_CLIENT_CERT | mTLS 客户端证书路径 |
CLAUDE_CODE_CLIENT_KEY | mTLS 客户端密钥路径 |
CLAUDE_CODE_CLIENT_KEY_PASSPHRASE | 加密密钥的解密口令 |
上下文与记忆管理类
| 变量名 | 说明 |
|---|---|
CLAUDE_CODE_AUTO_COMPACT_WINDOW | 自动压缩触发的上下文容量(token 数) |
CLAUDE_AUTOCOMPACT_PCT_OVERRIDE | 触发压缩的百分比阈值(取值范围:1~100) |
MAX_THINKING_TOKENS | 扩展思考(Extended Thinking)的 token 预算上限 |
调试与日志类
| 变量名 | 说明 |
|---|---|
CLAUDE_CODE_DEBUG_LOGS_DIR | 覆盖调试日志文件保存路径 |
CLAUDE_CODE_DEBUG_LOG_LEVEL | 最低日志级别,取值:verbose / debug / info / warn / error |
DEBUG | 启用调试模式(还需配合 --debug 或 /debug 使用) |
后台任务类
| 变量名 | 默认值 | 说明 |
|---|---|---|
CLAUDE_AUTO_BACKGROUND_TASKS | — | 强制启用长任务自动后台化 |
CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS | 600000 | 后台子 Agent 的停滞超时时间 |
运行时注入与其他变量
| 变量名 | 说明 |
|---|---|
CLAUDECODE | Claude Code 子进程运行时自动设为 1,可在脚本中用于判断运行环境 |
CLAUDE_CODE_CHILD_SESSION | 嵌套会话中自动设为 1(v2.1.172+) |
CCR_FORCE_BUNDLE | 强制 claude --remote 进行打包(bundle) |
注意:所有环境变量在启动时读取,修改后需重新执行
claude方可生效。