Claude Code 环境变量参考
Claude Code 通过环境变量控制 API 认证、模型选择、Bash 执行、上下文压缩、云服务商路由等行为。可在 Shell 中临时设置(export),写入 profile 永久生效,或通过 settings.json 的 env 字段统一下发给团队。设置后修改需重新启动 claude。
环境变量可覆盖 Claude Code 行为,如模型选择、认证方式、请求路由和功能开关。很多相同的行为也可以通过 settings 文件、CLI 标志或 /model 等会话内命令配置。
本页内容:
设置环境变量
Shell 中设置的变量仅对当前终端会话生效;settings 文件中的变量在每次 claude 运行时自动生效。
在 Shell 中设置
启动 claude 前导出变量:
Bash / Zsh (macOS/Linux)
export ANTHROPIC_API_KEY="your-key"
export API_TIMEOUT_MS="1200000"
claude
要每次会话都生效,将 export 行添加到 ~/.bashrc、~/.zshrc 或对应的 profile 文件。
PowerShell (Windows)
$env:ANTHROPIC_API_KEY = "your-key"
$env:API_TIMEOUT_MS = "1200000"
claude
要永久生效,运行 [Environment]::SetEnvironmentVariable("ANTHROPIC_API_KEY", "your-key", "User") 并重启终端。
CMD (Windows)
set ANTHROPIC_API_KEY=your-key
set API_TIMEOUT_MS=1200000
claude
要永久生效,运行 setx ANTHROPIC_API_KEY "your-key" 并重启终端。
在 settings 文件中配置
在 settings.json 文件的 env 键下添加变量。Claude Code 启动时直接读取文件内容,无论通过何种方式启动都会生效。
{
"env": {
"API_TIMEOUT_MS": "1200000",
"BASH_DEFAULT_TIMEOUT_MS": "300000"
}
}
文件位置决定作用范围:
| 文件 | 作用范围 |
|---|---|
~/.claude/settings.json |
当前用户,所有项目 |
.claude/settings.json |
项目所有人(会提交到版本控制) |
.claude/settings.local.json |
当前用户,仅此项目(不提交) |
| 托管设置 | 组织全员,由管理员部署 |
详见 Settings 文件 和 Settings 优先级。
优先级规则
当同一行为既有环境变量又有 settings 字段时,环境变量优先。例如 ANTHROPIC_MODEL 会覆盖 model 设置,CLAUDE_CODE_AUTO_CONNECT_IDE 会覆盖 autoConnectIde。settings 字段仅当环境变量未设置时生效。
环境变量与 CLI 标志、会话内命令的交互因功能而异:--model 和 /model 会覆盖 ANTHROPIC_MODEL,而 CLAUDE_CODE_EFFORT_LEVEL 则会覆盖 /effort。当变量与其他配置源交互时,其表格行会说明优先级或链接到具体文档。
Claude Code 在启动时读取环境变量,修改后需要重启 claude 才能生效。
变量参考
表格中的 “用途” 字段简述变量功能,需要更详细说明的变量会链接到对应章节。
API 认证与端点
| 变量 | 用途 |
|---|---|
ANTHROPIC_API_KEY |
API 密钥,作为 X-Api-Key 请求头发送。设置后优先于 Claude Pro/Max/Team/Enterprise 订阅,即使已登录也会使用此 Key。非交互模式(-p)下始终使用 Key;交互模式下首次会提示确认。恢复订阅运行 unset ANTHROPIC_API_KEY |
ANTHROPIC_AUTH_TOKEN |
自定义 Authorization 请求头值(自动添加 Bearer 前缀) |
ANTHROPIC_BASE_URL |
覆盖 API 端点,用于通过代理或网关路由请求。指向非第一方主机时默认禁用 MCP 工具搜索。设置 ENABLE_TOOL_SEARCH=true 可开启 |
ANTHROPIC_CUSTOM_HEADERS |
自定义请求头(Name: Value 格式,多个用换行分隔) |
ANTHROPIC_WORKSPACE_ID |
工作负载身份联合的工作区 ID。当联合规则跨多个工作区时,用于指定目标工作区 |
CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS |
设为 1 移除请求中的 anthropic-beta 头。用于解决某些代理网关拒绝请求的问题(如 “Unexpected value(s) for the anthropic-beta header”) |
模型选择
| 变量 | 用途 |
|---|---|
ANTHROPIC_MODEL |
要使用的模型名称(参见模型配置) |
ANTHROPIC_DEFAULT_HAIKU_MODEL |
自定义 Haiku 类模型 |
ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION |
Haiku 模型条目显示描述 |
ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME |
Haiku 模型条目显示名称 |
ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES |
参见模型配置 |
ANTHROPIC_DEFAULT_SONNET_MODEL |
自定义 Sonnet 类模型 |
ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION |
Sonnet 模型条目显示描述 |
ANTHROPIC_DEFAULT_SONNET_MODEL_NAME |
Sonnet 模型条目显示名称 |
ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES |
同上 |
ANTHROPIC_DEFAULT_OPUS_MODEL |
自定义 Opus 类模型 |
ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION |
Opus 模型条目显示描述 |
ANTHROPIC_DEFAULT_OPUS_MODEL_NAME |
Opus 模型条目显示名称 |
ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES |
同上 |
ANTHROPIC_CUSTOM_MODEL_OPTION |
在 /model 选择器中添加自定义模型条目(不替换内置别名) |
ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION |
自定义模型条目描述(默认 Custom model (<model-id>)) |
ANTHROPIC_CUSTOM_MODEL_OPTION_NAME |
自定义模型条目显示名称(默认模型 ID) |
ANTHROPIC_CUSTOM_MODEL_OPTION_SUPPORTED_CAPABILITIES |
参见模型配置 |
CLAUDE_CODE_SUBAGENT_MODEL |
子代理使用的模型(参见模型配置) |
CLAUDE_CODE_DISABLE_1M_CONTEXT |
设为 1 禁用 1M 上下文窗口支持。1M 模型变体在模型选择器中不可用 |
CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING |
设为 1 禁用 Opus 4.6 和 Sonnet 4.6 的自适应推理(Opus 4.7 不受影响) |
CLAUDE_CODE_DISABLE_THINKING |
设为 1 强制禁用扩展思考,比 MAX_THINKING_TOKENS=0 更直接 |
CLAUDE_CODE_EFFORT_LEVEL |
设置模型努力级别:low/medium/high/xhigh/max/auto。优先于 /effort 和 effortLevel 设置 |
CLAUDE_CODE_DISABLE_FAST_MODE |
设为 1 禁用 Fast 模式 |
CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE |
设为 1 将 Fast 模式固定为 Opus 4.6 而非默认的 Opus 4.7 |
CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP |
设为 1 阻止 Opus 4.0/4.1 自动映射到当前 Opus 版本 |
MAX_THINKING_TOKENS |
覆盖扩展思考的 Token 预算。设为 0 完全禁用思考 |
Bash 执行控制
| 变量 | 用途 |
|---|---|
API_TIMEOUT_MS |
API 请求超时(毫秒,默认 600000=10 分钟,最大 2147483647)。超限将导致立即失败 |
BASH_DEFAULT_TIMEOUT_MS |
长时间运行 Bash 命令的默认超时(毫秒,默认 120000=2 分钟) |
BASH_MAX_TIMEOUT_MS |
模型可为 Bash 命令设置的最大超时(毫秒,默认 600000=10 分钟) |
BASH_MAX_OUTPUT_LENGTH |
Bash 输出最大字符数,超出后保存到文件并显示路径和短预览 |
CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR |
每次 Bash/PowerShell 命令后返回原始工作目录 |
CLAUDE_CODE_SHELL |
覆盖自动 Shell 检测(如 bash vs zsh) |
CLAUDE_CODE_SHELL_PREFIX |
包装所有 Shell 命令的前缀命令(用于日志/审计) |
CLAUDE_CODE_GIT_BASH_PATH |
(仅 Windows)Git Bash 可执行文件路径 |
CLAUDE_CODE_USE_POWERSHELL_TOOL |
控制 PowerShell 工具。Windows 无 Git Bash 时自动启用;有 Git Bash 时可手动设置 1 或 0 |
CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY |
设为 1 遵守系统 PowerShell 执行策略,默认绕过 |
CLAUDE_ENV_FILE |
每次 Bash 命令前执行的 Shell 脚本路径,用于持久化 virtualenv/conda 激活 |
CLAUDECODE |
子进程中设为 1,用于检测脚本是否在 Claude Code 内部运行 |
上下文窗口与压缩
| 变量 | 用途 |
|---|---|
CLAUDE_AUTOCOMPACT_PCT_OVERRIDE |
触发自动压缩的上下文容量百分比(1-100)。默认约 95%,设低值如 50 更早压缩 |
CLAUDE_CODE_AUTO_COMPACT_WINDOW |
用于自动压缩计算的上下文容量(Token 数)。默认 200K(标准模型)或 1M(扩展上下文模型) |
CLAUDE_CODE_MAX_OUTPUT_TOKENS |
设置最大输出 Token 数。默认和上限因模型而异 |
CLAUDE_CODE_MAX_CONTEXT_TOKENS |
覆盖活动的上下文窗口大小,仅当同时设置 DISABLE_COMPACT 时生效 |
CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS |
覆盖文件读取的默认 Token 限制 |
DISABLE_AUTO_COMPACT |
设为 1 禁用自动压缩,但 /compact 命令仍可用 |
DISABLE_COMPACT |
设为 1 禁用所有压缩(包括 /compact 命令) |
DISABLE_PROMPT_CACHING |
设为 1 禁用所有模型的提示缓存 |
DISABLE_PROMPT_CACHING_HAIKU |
设为 1 禁用 Haiku 模型提示缓存 |
DISABLE_PROMPT_CACHING_SONNET |
设为 1 禁用 Sonnet 模型提示缓存 |
DISABLE_PROMPT_CACHING_OPUS |
设为 1 禁用 Opus 模型提示缓存 |
ENABLE_PROMPT_CACHING_1H |
设为 1 申请 1 小时缓存 TTL(默认 5 分钟)。订阅用户自动获得,API Key/Bedrock/Vertex/Foundry 用户需手动 |
FORCE_PROMPT_CACHING_5M |
设为 1 强制使用 5 分钟缓存 TTL,覆盖 1 小时设置 |
CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK |
设为 1 禁用流式失败时的无流式回退,用于代理导致重复工具执行的情况 |
代理与网络
| 变量 | 用途 |
|---|---|
HTTP_PROXY |
HTTP 代理服务器 |
HTTPS_PROXY |
HTTPS 代理服务器 |
NO_PROXY |
不经过代理直接请求的域名和 IP 列表 |
CLAUDE_CODE_PROXY_RESOLVES_HOSTS |
设为 1 允许代理执行 DNS 解析 |
CLAUDE_CODE_CLIENT_CERT |
mTLS 客户端证书文件路径 |
CLAUDE_CODE_CLIENT_KEY |
mTLS 客户端私钥文件路径 |
CLAUDE_CODE_CLIENT_KEY_PASSPHRASE |
加密客户端密钥的密码(可选) |
CLAUDE_CODE_CERT_STORE |
CA 证书源列表,逗号分隔。默认 bundled,system |
CLAUDE_CODE_DISABLE_INTERLEAVED_THINKING |
设为 1 阻止发送 anthropic-beta: interleaved-thinking 头 |
CLAUDE_CODE_DISABLE_ATTRIBUTION_HEADER |
设为 0 移除系统提示开头的归属块,可提高提示缓存命中率(通过 LLM 网关时) |
AWS Bedrock
| 变量 | 用途 |
|---|---|
CLAUDE_CODE_USE_BEDROCK |
使用 Amazon Bedrock |
ANTHROPIC_BEDROCK_BASE_URL |
覆盖 Bedrock 端点 URL |
ANTHROPIC_BEDROCK_MANTLE_BASE_URL |
覆盖 Bedrock Mantle 端点 URL |
ANTHROPIC_BEDROCK_SERVICE_TIER |
Bedrock 服务层级(default/flex/priority) |
AWS_BEARER_TOKEN_BEDROCK |
Bedrock API 密钥 |
ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION |
Bedrock/Mantle 上 Haiku 类模型的 AWS 区域 |
CLAUDE_CODE_SKIP_BEDROCK_AUTH |
跳过 Bedrock AWS 认证(用于 LLM 网关) |
CLAUDE_CODE_SKIP_MANTLE_AUTH |
跳过 Bedrock Mantle AWS 认证 |
CLAUDE_CODE_USE_MANTLE |
使用 Bedrock Mantle 端点 |
CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK |
设为 1 启用 Bedrock 字节级流空闲监视器 |
Google Vertex AI
| 变量 | 用途 |
|---|---|
CLAUDE_CODE_USE_VERTEX |
使用 Google Vertex AI |
ANTHROPIC_VERTEX_BASE_URL |
覆盖 Vertex AI 端点 URL |
ANTHROPIC_VERTEX_PROJECT_ID |
GCP 项目 ID,可被 GCLOUD_PROJECT、GOOGLE_CLOUD_PROJECT 或凭证文件中的项目覆盖 |
CLAUDE_CODE_SKIP_VERTEX_AUTH |
跳过 Vertex Google 认证 |
VERTEX_REGION_CLAUDE_3_5_HAIKU |
Claude 3.5 Haiku 在 Vertex AI 上的区域 |
VERTEX_REGION_CLAUDE_3_5_SONNET |
Claude 3.5 Sonnet 区域 |
VERTEX_REGION_CLAUDE_3_7_SONNET |
Claude 3.7 Sonnet 区域 |
VERTEX_REGION_CLAUDE_4_0_OPUS |
Claude 4.0 Opus 区域 |
VERTEX_REGION_CLAUDE_4_0_SONNET |
Claude 4.0 Sonnet 区域 |
VERTEX_REGION_CLAUDE_4_1_OPUS |
Claude 4.1 Opus 区域 |
VERTEX_REGION_CLAUDE_4_5_OPUS |
Claude Opus 4.5 区域 |
VERTEX_REGION_CLAUDE_4_5_SONNET |
Claude Sonnet 4.5 区域 |
VERTEX_REGION_CLAUDE_4_6_OPUS |
Claude Opus 4.6 区域 |
VERTEX_REGION_CLAUDE_4_6_SONNET |
Claude Sonnet 4.6 区域 |
VERTEX_REGION_CLAUDE_4_7_OPUS |
Claude Opus 4.7 区域(需要 v2.1.111+) |
VERTEX_REGION_CLAUDE_HAIKU_4_5 |
Claude Haiku 4.5 区域 |
Microsoft Foundry
| 变量 | 用途 |
|---|---|
CLAUDE_CODE_USE_FOUNDRY |
使用 Microsoft Foundry |
ANTHROPIC_FOUNDRY_API_KEY |
Foundry API 密钥 |
ANTHROPIC_FOUNDRY_BASE_URL |
Foundry 资源完整 Base URL |
ANTHROPIC_FOUNDRY_RESOURCE |
Foundry 资源名称(如 my-resource) |
CLAUDE_CODE_SKIP_FOUNDRY_AUTH |
跳过 Foundry Azure 认证 |
Claude Platform on AWS
| 变量 | 用途 |
|---|---|
CLAUDE_CODE_USE_ANTHROPIC_AWS |
使用 Claude Platform on AWS |
ANTHROPIC_AWS_API_KEY |
AWS 控制台生成的工作区 API 密钥 |
ANTHROPIC_AWS_BASE_URL |
覆盖端点 URL(用于自定义区域或 LLM 网关) |
ANTHROPIC_AWS_WORKSPACE_ID |
必填,每次请求发送 anthropic-workspace-id 头 |
CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH |
跳过客户端认证(用于网关自行签名请求) |
MCP 配置
| 变量 | 用途 |
|---|---|
MCP_TIMEOUT |
MCP 服务器启动超时(毫秒,默认 30000=30 秒) |
MCP_TOOL_TIMEOUT |
MCP 工具执行超时(毫秒,默认约 28 小时) |
MAX_MCP_OUTPUT_TOKENS |
MCP 工具响应最大 Token 数(默认 25000;超 10000 时显示警告) |
MCP_CLIENT_SECRET |
MCP 服务器 OAuth 客户端密钥(预配置凭证用) |
MCP_OAUTH_CALLBACK_PORT |
OAuth 重定向回调的固定端口 |
MCP_CONNECTION_NONBLOCKING |
控制启动时是否等待 MCP 服务器连接。v2.1.142+ 默认非阻塞 |
MCP_CONNECT_TIMEOUT_MS |
阻塞 MCP 启动的连接批处理超时(毫秒,默认 5000) |
MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE |
远程 MCP 服务器并行连接数(默认 20) |
MCP_SERVER_CONNECTION_BATCH_SIZE |
本地 MCP 服务器并行连接数(默认 3) |
ENABLE_CLAUDEAI_MCP_SERVERS |
设为 false 禁用 claude.ai MCP 服务器(登录用户默认启用) |
ENABLE_TOOL_SEARCH |
控制 MCP 工具搜索:true/auto/auto:N/false。默认:非官方端点时禁用 |
CLAUDE_CODE_MCP_ALLOWLIST_ENV |
设为 1 限制 stdio MCP 服务器环境变量 |
子代理与后台任务
| 变量 | 用途 |
|---|---|
CLAUDE_CODE_DISABLE_BACKGROUND_TASKS |
设为 1 禁用所有后台任务功能(包括 Ctrl+B 快捷键) |
CLAUDE_CODE_DISABLE_CRON |
设为 1 禁用定时任务(/loop 和 cron 工具不可用) |
CLAUDE_CODE_FORK_SUBAGENT |
设为 1 启用 fork 子代理,继承完整会话上下文 |
CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS |
设为 1 禁用所有内置子代理类型(仅非交互模式) |
CLAUDE_AGENT_SDK_MCP_NO_PREFIX |
设为 1 跳过 SDK 创建的 MCP 工具名前缀 |
CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS |
后台子代理停滞超时(毫秒,默认 600000=10 分钟) |
CLAUDE_CODE_AUTO_BACKGROUND_TASKS |
设为 1 强制自动将长时间子代理移入后台 |
CLAUDE_CODE_DISABLE_AGENT_VIEW |
设为 1 关闭后台代理和代理视图 |
CLAUDE_CODE_DISABLE_AUTO_MEMORY |
设为 1 禁用自动记忆;设为 0 强制启用 |
CLAUDE_CODE_DISABLE_CLAUDE_MDS |
设为 1 阻止加载任何 CLAUDE.md 记忆文件 |
TASK_MAX_OUTPUT_LENGTH |
子代理输出最大字符数(默认 32000,最大 160000) |
CLAUDE_CODE_TASK_LIST_ID |
跨会话共享任务列表的 ID |
CLAUDE_CODE_ENABLE_TASKS |
控制是否使用结构化 Task 工具(v2.1.142+ 默认启用) |
CLAUDE_CODE_ENABLE_AWAY_SUMMARY |
覆盖会话回顾可用性:0关闭,1强制开启 |
CLAUDE_CODE_STOP_HOOK_BLOCK_CAP |
Stop/SubagentStop 钩子最大连续阻止次数(默认 8) |
安全与凭证隔离
| 变量 | 用途 |
|---|---|
CLAUDE_CODE_SUBPROCESS_ENV_SCRUB |
设为 1 从子进程环境清除 Anthropic 和云凭证,减少提示注入风险 |
CLAUDE_CODE_SCRIPT_CAPS |
JSON 对象限制每个会话中特定脚本的最大调用次数 |
CLAUDE_CODE_PERFORCE_MODE |
设为 1 启用 Perforce 写保护 |
CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS |
设为 1 移除系统提示中的内置 git 工作流指令 |
CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING |
设为 1 禁用文件检查点,/rewind 无法恢复 |
CLAUDE_CODE_GLOB_HIDDEN |
设为 false 从 Glob 结果中排除点文件 |
CLAUDE_CODE_GLOB_NO_IGNORE |
设为 false 使 Glob 遵守 .gitignore 模式 |
CLAUDE_CODE_GLOB_TIMEOUT_SECONDS |
Glob 工具文件发现超时(秒,默认 20;WSL 默认 60) |
遥测、调试与日志
| 变量 | 用途 |
|---|---|
CLAUDE_CODE_ENABLE_TELEMETRY |
设为 1 启用 OpenTelemetry 数据收集 |
CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS |
OpenTelemetry spans 刷新超时(毫秒,默认 5000) |
CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS |
动态 OTel 请求头刷新间隔(毫秒,默认 1740000=29 分钟) |
CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS |
OTel exporter 关闭超时(毫秒,默认 2000) |
CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL |
将质量调查路由到自定义 OTel collector |
CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY |
设为 1 禁用 “Claude 表现如何?” 会话质量调查 |
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC |
同时禁用自动更新、反馈、错误报告和遥测 |
CLAUDE_CODE_DEBUG_LOGS_DIR |
覆盖调试日志文件路径(注意是文件路径,不是目录) |
CLAUDE_CODE_DEBUG_LOG_LEVEL |
最低日志级别:verbose/debug(默认)/info/warn/error |
DEBUG |
设为 1/true/yes/on 启用调试模式 |
OTEL_LOG_RAW_API_BODIES |
输出 API 请求/响应 JSON 日志事件 |
OTEL_LOG_TOOL_CONTENT |
设为 1 在 OTel span 事件中包含工具输入/输出内容 |
OTEL_LOG_TOOL_DETAILS |
设为 1 在 OTel 中包含工具详情 |
OTEL_LOG_USER_PROMPTS |
设为 1 在 OTel 中包含用户提示文本 |
OTEL_METRICS_INCLUDE_ACCOUNT_UUID |
设为 false 排除账户 UUID(默认包含) |
OTEL_METRICS_INCLUDE_SESSION_ID |
设为 false 排除会话 ID(默认包含) |
OTEL_METRICS_INCLUDE_VERSION |
设为 true 包含版本号(默认排除) |
DISABLE_TELEMETRY |
设为 1 退出遥测 |
DISABLE_ERROR_REPORTING |
设为 1 退出 Sentry 错误报告 |
DISABLE_GROWTHBOOK |
设为 1 禁用功能标志获取 |
DO_NOT_TRACK |
设为 1 退出遥测(等价于 DISABLE_TELEMETRY) |
DISABLE_AUTOUPDATER |
设为 1 禁用自动更新 |
DISABLE_UPDATES |
设为 1 阻止所有更新(包括手动 claude update) |
CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE |
设为 1 允许 Claude Code 后台运行包管理器升级命令 |
显示与终端
| 变量 | 用途 |
|---|---|
CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN |
设为 1 禁用全屏渲染,使用经典界面 |
CLAUDE_CODE_NO_FLICKER |
设为 1 启用全屏渲染预览版(减少闪烁) |
CLAUDE_CODE_DISABLE_MOUSE |
设为 1 禁用全屏渲染中的鼠标跟踪 |
CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL |
设为 1 禁用虚拟滚动,渲染每条消息 |
CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT |
设为 1 全屏渲染时每帧重绘整个屏幕 |
CLAUDE_CODE_ACCESSIBILITY |
设为 1 保持原生终端光标可见,禁用反转色光标 |
CLAUDE_CODE_NATIVE_CURSOR |
设为 1 在输入提示处显示终端原生光标 |
CLAUDE_CODE_SCROLL_SPEED |
全屏渲染中鼠标滚轮滚动倍率(1-20) |
CLAUDE_CODE_SYNTAX_HIGHLIGHT |
设为 false 禁用差异输出中的语法高亮 |
CLAUDE_CODE_TMUX_TRUECOLOR |
设为 1 在 tmux 中启用 24 位真彩色 |
CLAUDE_CODE_FORCE_SYNC_OUTPUT |
设为 1 强制启用同步输出(DEC 2026) |
CLAUDE_CODE_HIDE_CWD |
设为 1 隐藏工作目录路径 |
CLAUDE_CODE_DISABLE_TERMINAL_TITLE |
设为 1 禁用终端标题自动更新 |
CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION |
设为 false 禁用提示建议(灰色预测) |
会话管理与自动退出
| 变量 | 用途 |
|---|---|
CLAUDE_CODE_EXIT_AFTER_STOP_DELAY |
查询循环空闲后自动退出前的等待毫秒数 |
CLAUDE_CODE_MAX_TURNS |
限制 agentic 轮次上限(等价于 --max-turns) |
CLAUDE_CODE_MAX_RETRIES |
重试失败 API 请求的次数(默认 10) |
CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY |
只读工具和子代理并行执行数(默认 10) |
CLAUDE_CODE_RESUME_INTERRUPTED_TURN |
设为 1 在 SDK 模式下自动继续中断的轮次 |
CLAUDE_CODE_RESUME_PROMPT |
覆盖恢复时注入的继续消息 |
CLAUDE_CODE_SESSION_ID |
子进程和钩子中自动设置当前会话 ID |
CLAUDE_CODE_SKIP_PROMPT_HISTORY |
设为 1 跳过写入提示历史和会话记录到磁盘 |
CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS |
SessionEnd 钩子的时间预算(毫秒) |
CLAUDE_ENABLE_BYTE_WATCHDOG |
强制启用字节级流空闲监视器 |
CLAUDE_ENABLE_STREAM_WATCHDOG |
启用事件级流空闲监视器 |
CLAUDE_STREAM_IDLE_TIMEOUT_MS |
流空闲监视器关闭停滞连接的超时(毫秒,默认和最小 300000=5 分钟) |
路径与目录
| 变量 | 用途 |
|---|---|
CLAUDE_CONFIG_DIR |
覆盖配置目录(默认 ~/.claude)。用于运行多个账户 |
CLAUDE_CODE_TMPDIR |
覆盖临时目录(默认:macOS /tmp,Linux/Windows os.tmpdir()) |
CLAUDE_CODE_PLUGIN_CACHE_DIR |
覆盖插件根目录(默认 ~/.claude/plugins) |
CLAUDE_CODE_PLUGIN_SEED_DIR |
只读插件种子目录(Unix 用 : 分隔,Windows 用 ;) |
CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD |
设为 1 从 --add-dir 目录加载 CLAUDE.md 文件 |
CLAUDE_CODE_IDE_HOST_OVERRIDE |
覆盖连接到 IDE 扩展的主机地址 |
CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL |
跳过 IDE 扩展自动安装 |
CLAUDE_CODE_IDE_SKIP_VALID_CHECK |
跳过 IDE lockfile 验证 |
CLAUDE_CODE_AUTO_CONNECT_IDE |
覆盖自动 IDE 连接行为 |
其他通用变量
| 变量 | 用途 |
|---|---|
CLAUDE_CODE_SIMPLE |
设为 1 运行最小系统提示(仅 Bash/文件读写/编辑工具) |
CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT |
设为 1 使用更短的系统提示和工具描述 |
CLAUDE_CODE_DISABLE_ATTACHMENTS |
设为 1 禁用附件处理(@ 语法以纯文本发送) |
CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL |
设为 1 跳过首次运行时自动添加官方插件市场 |
CLAUDE_CODE_DISABLE_POLICY_SKILLS |
设为 1 跳过加载系统级管理的技能目录 |
CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE |
设为 1 在 git pull 失败时保留现有市场缓存 |
CLAUDE_CODE_PLUGIN_PREFER_HTTPS |
设为 1 使用 HTTPS 而非 SSH 克隆 GitHub 插件 |
CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS |
插件 git 操作超时(毫秒,默认 120000) |
CLAUDE_CODE_SYNC_PLUGIN_INSTALL |
非交互模式下等待插件安装完成后再进行第一个查询 |
CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS |
同步插件安装超时(毫秒) |
CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH |
非交互模式下在后台安装完成后刷新插件状态 |
CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY |
设为 1 从网关的 /v1/models 端点填充模型选择器 |
CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING |
控制工具调用输入是否边生成边流式传输(Anthropic API 默认启用) |
CLAUDE_CODE_EXTRA_BODY |
JSON 对象,合并到每个 API 请求体顶层 |
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS |
设为 1 启用 Agent Teams(实验性,默认关闭) |
CLAUDE_CODE_TEAM_NAME |
Agent Teams 的团队名称 |
CLAUDE_CODE_REMOTE |
云端远程会话中设为 true |
CLAUDE_CODE_REMOTE_SESSION_ID |
云端远程会话 ID |
CCR_FORCE_BUNDLE |
设为 1 强制 claude --remote 打包上传本地仓库 |
CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX |
Remote Control 会话名称前缀(默认主机名) |
CLAUDE_CODE_OAUTH_TOKEN |
OAuth 访问令牌(通过 claude setup-token 生成) |
CLAUDE_CODE_OAUTH_REFRESH_TOKEN |
OAuth 刷新令牌(需配合 CLAUDE_CODE_OAUTH_SCOPES) |
CLAUDE_CODE_OAUTH_SCOPES |
OAuth 作用域 |
CLAUDE_CODE_API_KEY_HELPER_TTL_MS |
凭证刷新间隔(使用 apiKeyHelper 时) |
CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST |
宿主平台设置后忽略用户 settings 中的提供商变量 |
CLAUDE_CODE_USE_NATIVE_FILE_SEARCH |
使用 Node.js 文件 API 而非 ripgrep 发现自定义命令等 |
USE_BUILTIN_RIPGREP |
设为 0 使用系统安装的 rg |
SLASH_COMMAND_TOOL_CHAR_BUDGET |
技能元数据字符预算(动态默认为上下文的 1%) |
ANTHROPIC_BETAS |
逗号分隔的额外 anthropic-beta 请求头值 |
MAX_STRUCTURED_OUTPUT_RETRIES |
非交互模式下结构验证失败的重试次数(默认 5) |
FALLBACK_FOR_ALL_PRIMARY_MODELS |
设置后所有主模型过载时触发回退(默认仅 Opus) |
FORCE_AUTOUPDATE_PLUGINS |
即使主自动更新器禁用也强制更新插件 |
CLAUDE_CODE_NEW_INIT |
设为 1 使 /init 运行交互式设置流程 |
IS_DEMO |
设为 1 启用演示模式 |
DISABLE_COST_WARNINGS |
设为 1 禁用费用警告 |
DISABLE_DOCTOR_COMMAND |
设为 1 隐藏 /doctor 命令 |
DISABLE_EXTRA_USAGE_COMMAND |
设为 1 隐藏 /usage-credits 命令 |
DISABLE_FEEDBACK_COMMAND |
设为 1 禁用 /feedback 命令 |
DISABLE_INSTALL_GITHUB_APP_COMMAND |
设为 1 隐藏 /install-github-app 命令 |
DISABLE_INSTALLATION_CHECKS |
设为 1 禁用安装警告 |
DISABLE_LOGIN_COMMAND |
设为 1 隐藏 /login 命令 |
DISABLE_LOGOUT_COMMAND |
设为 1 隐藏 /logout 命令 |
DISABLE_UPGRADE_COMMAND |
设为 1 隐藏 /upgrade 命令 |
ANTHROPIC_SMALL_FAST_MODEL |
[已弃用] 后台任务的 Haiku 类模型名称 |
标准 OpenTelemetry exporter 变量(OTEL_METRICS_EXPORTER、OTEL_LOGS_EXPORTER、OTEL_EXPORTER_OTLP_ENDPOINT 等)也受支持,详见监控。
常见问题
如何设置 Claude Code 的 API Key?
设置 ANTHROPIC_API_KEY 环境变量。临时使用 export ANTHROPIC_API_KEY="your-key"(Unix)或 $env:ANTHROPIC_API_KEY = "your-key"(PowerShell);永久有效可添加到 profile 文件或使用 settings.json 的 env 字段。注意:设置后该 Key 会优先于订阅被使用,要恢复订阅请运行 unset ANTHROPIC_API_KEY。
Claude Code 如何切换模型?
设置 ANTHROPIC_MODEL 环境变量为目标模型名(如 claude-sonnet-4-6)。也可设置 ANTHROPIC_DEFAULT_HAIKU_MODEL、ANTHROPIC_DEFAULT_SONNET_MODEL、ANTHROPIC_DEFAULT_OPUS_MODEL 分别覆盖三种基础别名。优先级:CLI 标志 --model 和会话内的 /model 命令会覆盖环境变量。
如何通过环境变量配置企业代理?
设置 HTTP_PROXY 和 HTTPS_PROXY 指向企业代理。如果不希望某些地址走代理,设置 NO_PROXY。如果代理和 Anthropic API 之间的 TLS 检查有特殊证书,还需通过 CLAUDE_CODE_CERT_STORE 或 NODE_EXTRA_CA_CERTS 指定 CA 证书来源。
相关资源
- Settings 参考:settings.json 完整配置,包括
env键 - CLI 参考:启动时标志
- 网络配置:代理与 TLS 设置
- 监控:OpenTelemetry 配置