SpyBara
Go Premium

Documentation 2026-10-03 23:57 UTC to 2026-10-04 19:59 UTC

53 files changed +992 −581. View all changes and history on the product overview
2026
Sun 4 21:01 Sat 3 23:57 Fri 2 22:59 Thu 1 23:59

admin-setup.md +2 −2

Details

137 已关联的 GitHub 账户137 已关联的 GitHub 账户

138</h3>138</h3>

139 139 

140在 Team 和 Enterprise 计划中,[**Admin settings > GitHub**](https://claude.ai/admin-settings/github) 列出了通过 [Claude GitHub App](https://github.com/apps/claude) 关联到您的 Claude 组织的 GitHub 组织和个人账户。Claude Code、[Claude Tag](https://claude.com/docs/claude-tag/admins/configure-github) 和 Claude Security 共享此列表。打开该页面需要在您的 Claude 组织中拥有管理员角色。140在 Team 和 Enterprise 计划中,[**Organization settings > GitHub**](https://claude.ai/admin-settings/github) 列出了通过 [Claude GitHub App](https://github.com/apps/claude) 关联到您的 Claude 组织的 GitHub 组织和个人账户。Claude Code、[Claude Tag](https://claude.com/docs/claude-tag/admins/configure-github) 和 Claude Security 共享此列表。打开该页面需要在您的 Claude 组织中拥有管理员角色。

141 141 

142管理员或成员都可以关联账户:142管理员或成员都可以关联账户:

143 143 


161| Usage monitoring | 会话、工具和令牌的 OpenTelemetry 导出 | 所有提供商 | [Monitoring usage](/docs/zh-CN/monitoring-usage) |161| Usage monitoring | 会话、工具和令牌的 OpenTelemetry 导出 | 所有提供商 | [Monitoring usage](/docs/zh-CN/monitoring-usage) |

162| Analytics dashboard | Teams / Enterprise 上具有排行榜的采用和贡献指标;Console 上的每用户使用情况和支出指标 | Teams / Enterprise 在 [claude.ai/analytics](https://claude.ai/analytics/claude-code),Console 在 [platform.claude.com/claude-code](https://platform.claude.com/claude-code) | [Analytics](/docs/zh-CN/analytics) |162| Analytics dashboard | Teams / Enterprise 上具有排行榜的采用和贡献指标;Console 上的每用户使用情况和支出指标 | Teams / Enterprise 在 [claude.ai/analytics](https://claude.ai/analytics/claude-code),Console 在 [platform.claude.com/claude-code](https://platform.claude.com/claude-code) | [Analytics](/docs/zh-CN/analytics) |

163| Programmatic reporting | 通过 API 的每用户使用情况和成本数据 | Enterprise 的 [Enterprise Analytics API](https://platform.claude.com/docs/en/api/admin/analytics),Console 的 [Claude Code Analytics API](https://platform.claude.com/docs/en/build-with-claude/claude-code-analytics-api) | [Costs](/docs/zh-CN/costs#manage-costs-for-your-organization) |163| Programmatic reporting | 通过 API 的每用户使用情况和成本数据 | Enterprise 的 [Enterprise Analytics API](https://platform.claude.com/docs/en/api/admin/analytics),Console 的 [Claude Code Analytics API](https://platform.claude.com/docs/en/build-with-claude/claude-code-analytics-api) | [Costs](/docs/zh-CN/costs#manage-costs-for-your-organization) |

164| Spend controls | 支出限制和速率限制 | Teams / Enterprise 的管理员设置,Console 的工作区限制;在第三方云上,云预算控制或具有每用户[支出限制](/docs/zh-CN/claude-apps-gateway-spend-limits)的 [Claude apps gateway](/docs/zh-CN/claude-apps-gateway) | [Costs](/docs/zh-CN/costs#manage-costs-for-your-organization) |164| Spend controls | 支出限制和速率限制 | Teams / Enterprise 的组织设置,Console 的工作区限制;在第三方云上,云预算控制或具有每用户[支出限制](/docs/zh-CN/claude-apps-gateway-spend-limits)的 [Claude apps gateway](/docs/zh-CN/claude-apps-gateway) | [Costs](/docs/zh-CN/costs#manage-costs-for-your-organization) |

165 165 

166在 Teams 和 Enterprise 上,每用户使用情况和支出数字来自您组织的分析设置中的[支出报告](https://support.claude.com/en/articles/12883420-view-usage-analytics-for-team-and-enterprise-plans),而不是分析仪表板。云提供商通过 AWS Cost Explorer、GCP Billing 或 Azure Cost Management 公开支出。有关跨 Claude chat、Claude Code 和 Cowork 规划企业预算的信息,请参阅 [Claude Enterprise consumption guide](https://support.claude.com/en/articles/14782391-claude-enterprise-consumption-guide)。166在 Teams 和 Enterprise 上,每用户使用情况和支出数字来自您组织的分析设置中的[支出报告](https://support.claude.com/en/articles/12883420-view-usage-analytics-for-team-and-enterprise-plans),而不是分析仪表板。云提供商通过 AWS Cost Explorer、GCP Billing 或 Azure Cost Management 公开支出。有关跨 Claude chat、Claude Code 和 Cowork 规划企业预算的信息,请参阅 [Claude Enterprise consumption guide](https://support.claude.com/en/articles/14782391-claude-enterprise-consumption-guide)。

167 167 

agent-sdk/mcp.md +14 −0

Details

919 ```919 ```

920</CodeGroup>920</CodeGroup>

921 921 

922<h3 id="a-tool-is-missing-from-an-sdk-mcp-server">

923 SDK MCP 服务器中缺少某个工具

924</h3>

925 

926在 TypeScript SDK 中,当某个工具的输入 schema 无法转换为 JSON Schema 时,您使用 [`createSdkMcpServer()`](/docs/zh-CN/agent-sdk/typescript#createsdkmcpserver) 创建的服务器在列出其工具时会省略该工具。此时 SDK 会发出一条警告。在 Node.js 下,该警告是一个代码为 `CLAUDE_SDK_MCP_TOOL_SCHEMA_UNCONVERTIBLE` 的进程警告,并以以下文本开头:

927 

928```text theme={null}

929Tool "<name>" on SDK MCP server "<server>" was left out of the server's tool list, because its input schema cannot be converted to JSON Schema

930```

931 

932警告的其余部分会给出转换错误的消息(如果有),然后说明需要检查和更改的内容。

933 

934在 TypeScript Agent SDK v0.3.286 之前,只要有一个无法转换的 schema,就会导致该服务器的整个工具列表失败且不显示此警告,因此该服务器的所有工具都无法提供给 Claude。

935 

922<h3 id="connection-timeouts">936<h3 id="connection-timeouts">

923 连接超时937 连接超时

924</h3>938</h3>

Details

13| 症状 | 转到 |13| 症状 | 转到 |

14| :- | :- |14| :- | :- |

15| 找不到 Skills、skill 未被使用、`Invalid skill name` 错误 | [Skills 故障排除](/docs/zh-CN/agent-sdk/skills#troubleshooting) |15| 找不到 Skills、skill 未被使用、`Invalid skill name` 错误 | [Skills 故障排除](/docs/zh-CN/agent-sdk/skills#troubleshooting) |

16| MCP 服务器显示 `failed` 状态、工具未被调用、连接超时、工具输出超过最大允许令牌数 | [MCP 故障排除](/docs/zh-CN/agent-sdk/mcp#troubleshooting) |16| MCP 服务器显示 `failed` 状态、工具未被调用、SDK MCP 服务器中缺少某个工具、连接超时、工具输出超过允许的最大 token 数 | [MCP 故障排除](/docs/zh-CN/agent-sdk/mcp#troubleshooting) |

17| Plugin 未加载、plugin skills 未出现 | [Plugins 故障排除](/docs/zh-CN/agent-sdk/plugins#troubleshooting) |17| Plugin 未加载、plugin skills 未出现 | [Plugins 故障排除](/docs/zh-CN/agent-sdk/plugins#troubleshooting) |

18| Claude 未委派给子代理、基于文件系统的代理未加载 | [Subagents 故障排除](/docs/zh-CN/agent-sdk/subagents#troubleshooting) |18| Claude 未委派给子代理、基于文件系统的代理未加载 | [Subagents 故障排除](/docs/zh-CN/agent-sdk/subagents#troubleshooting) |

19| Checkpointing 选项未被识别、没有 UUID 的用户消息、`No file checkpoint found`、`File rewinding is not enabled`、`ProcessTransport is not ready for writing` | [文件 checkpointing 故障排除](/docs/zh-CN/agent-sdk/file-checkpointing#troubleshooting) |19| Checkpointing 选项未被识别、没有 UUID 的用户消息、`No file checkpoint found`、`File rewinding is not enabled`、`ProcessTransport is not ready for writing` | [文件 checkpointing 故障排除](/docs/zh-CN/agent-sdk/file-checkpointing#troubleshooting) |

Details

863 fast_mode_state?: "off" | "cooldown" | "on";863 fast_mode_state?: "off" | "cooldown" | "on";

864 fast_mode_disabled_reason?: FastModeDisabledReason;864 fast_mode_disabled_reason?: FastModeDisabledReason;

865 hooks_applied?: boolean;865 hooks_applied?: boolean;

866 sdk_mcp_manifests_parked?: Record<

867 string,

868 | "parked"

869 | "already_connected"

870 | "protocol_version_mismatch"

871 | "malformed"

872 | "not_honoured"

873 >;

866};874};

867```875```

868 876 


875 883 

876在 Agent SDK v0.3.238 之前,响应从不携带该字段,Claude Code 在每个重复初始化上忽略 `hooks`。884在 Agent SDK v0.3.238 之前,响应从不携带该字段,Claude Code 在每个重复初始化上忽略 `hooks`。

877 885 

886请求的 `sdkMcpServerManifests` 字段和响应的 `sdk_mcp_manifests_parked` 字段用于您通过 [`createSdkMcpServer()`](#createsdkmcpserver) 创建的进程内 [SDK MCP 服务器](/docs/zh-CN/agent-sdk/custom-tools)。您的应用不会设置或读取这两个字段。

887 

878响应始终报告 `fast_mode_state`,当某些东西阻止[快速模式](/docs/zh-CN/fast-mode)时,`fast_mode_disabled_reason` 在其旁边携带原因代码,以便您可以解释阻止的状态而不是重新推导可用性。两种行为都需要 Claude Code v2.1.219 或更高版本。在 v2.1.219 之前,当快速模式不可用时响应省略 `fast_mode_state`,从不携带原因。有关原因代码及其含义,参见结果消息上的 [`fast_mode_disabled_reason`](#sdkresultmessage)。888响应始终报告 `fast_mode_state`,当某些东西阻止[快速模式](/docs/zh-CN/fast-mode)时,`fast_mode_disabled_reason` 在其旁边携带原因代码,以便您可以解释阻止的状态而不是重新推导可用性。两种行为都需要 Claude Code v2.1.219 或更高版本。在 v2.1.219 之前,当快速模式不可用时响应省略 `fast_mode_state`,从不携带原因。有关原因代码及其含义,参见结果消息上的 [`fast_mode_disabled_reason`](#sdkresultmessage)。

879 889 

880成功 `initialize` 的控制响应包装器也携带 `pending_permission_requests` 数组。该字段在响应包装器本身上,而不是上面的 `SDKControlInitializeResponse` 有效负载中。每个条目是一个完整的 `control_request` 消息,具有与会话在运行时为权限请求流的相同 `{ type: "control_request", request_id, request }` 形状。890成功 `initialize` 的控制响应包装器也携带 `pending_permission_requests` 数组。该字段在响应包装器本身上,而不是上面的 `SDKControlInitializeResponse` 有效负载中。每个条目是一个完整的 `control_request` 消息,具有与会话在运行时为权限请求流的相同 `{ type: "control_request", request_id, request }` 形状。


1955| - | - |1965| - | - |

1956| `interrupt_receipt_v1` | [`interrupt()`](#query-object) 使用 [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse) 收据解析,列出中断到达时待处理的消息 |1966| `interrupt_receipt_v1` | [`interrupt()`](#query-object) 使用 [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse) 收据解析,列出中断到达时待处理的消息 |

1957| `interrupt_cancel_queued_v1` | `interrupt` 控制请求尊重 `cancel_queued: true`,取消收据在 `still_queued` 下列出的消息,并改为在 `cancelled` 下列出它们。请参阅 [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse)。需要 Claude Code v2.1.219 或更高版本 |1967| `interrupt_cancel_queued_v1` | `interrupt` 控制请求尊重 `cancel_queued: true`,取消收据在 `still_queued` 下列出的消息,并改为在 `cancelled` 下列出它们。请参阅 [`SDKControlInterruptResponse`](#sdkcontrolinterruptresponse)。需要 Claude Code v2.1.219 或更高版本 |

1968| `sdk_mcp_manifests` | `initialize` 控制请求接受 `sdkMcpServerManifests`,即从您的进程内 [SDK MCP 服务器](/docs/zh-CN/agent-sdk/custom-tools)捕获的 MCP 握手结果。Claude Code 在 v2.1.286 或更高版本中公布此能力 |

1969| `sdk_mcp_tools_list_changed` | 来自 [SDK MCP 服务器](/docs/zh-CN/agent-sdk/custom-tools)的 `tools/list_changed` 通知会使 Claude Code 重新列出该服务器的工具,因此服务器在会话中途添加的工具能够到达 Claude。Claude Code 在 v2.1.286 或更高版本中公布此能力 |

1958 1970 

1959`plugin_errors` 数组列出插件加载失败。一个条目描述要么是未加载的插件且在 `plugins` 中不存在,要么是加载但没有其部分之一(例如其 hooks 文件)的插件。当没有任何东西失败时,该键被省略。`SDKSystemMessage` 在 Agent SDK v0.3.283 或更高版本中声明 `plugin_errors`。1971`plugin_errors` 数组列出插件加载失败。一个条目描述要么是未加载的插件且在 `plugins` 中不存在,要么是加载但没有其部分之一(例如其 hooks 文件)的插件。当没有任何东西失败时,该键被省略。`SDKSystemMessage` 在 Agent SDK v0.3.283 或更高版本中声明 `plugin_errors`。

1960 1972 

agent-view.md +5 −2

Details

347 347 

348要组合过滤器,请以 `a:`、`s:`、`n:` 或 `o:` 开头,再添加更多过滤器,以空格分隔。列表会显示同时匹配所有过滤器的会话。例如,`s:blocked a:reviewer` 会列出正在等待您的 `reviewer` 会话。348要组合过滤器,请以 `a:`、`s:`、`n:` 或 `o:` 开头,再添加更多过滤器,以空格分隔。列表会显示同时匹配所有过滤器的会话。例如,`s:blocked a:reviewer` 会列出正在等待您的 `reviewer` 会话。

349 349 

350过滤器处于活动状态时,您折叠的组会展开以显示匹配项,并且第一个匹配项会被选中,因此按 `Enter` 即可打开它。清空输入框即可移除过滤器,这些组会再次折叠。350过滤器处于活动状态时,您折叠的组会展开以显示匹配项,并且会选中一个匹配项,因此按 `Enter` 即可打开它。清空输入框即可移除过滤器,这些组会再次折叠。

351 351 

352<h3 id="keyboard-shortcuts">352<h3 id="keyboard-shortcuts">

353 快捷键353 快捷键


369| `Tab` | 在空输入上浏览所有 subagents。否则应用突出显示的建议 |369| `Tab` | 在空输入上浏览所有 subagents。否则应用突出显示的建议 |

370| `Ctrl+S` | 在状态和目录之间切换分组 |370| `Ctrl+S` | 在状态和目录之间切换分组 |

371| `Ctrl+T` | 固定或取消固定选定的会话 |371| `Ctrl+T` | 固定或取消固定选定的会话 |

372| `Ctrl+F` | 使用 [`n:` 过滤器](#filter-sessions)按名称查找会话 |

373| `Alt+↑` / `Alt+↓` | 跳到上一个或下一个组标题 |

372| `Ctrl+R` | 重命名选定的会话 |374| `Ctrl+R` | 重命名选定的会话 |

373| `Ctrl+G` | 在你的 `$VISUAL` 或 `$EDITOR` 中打开调度提示 |375| `Ctrl+G` | 在你的 `$VISUAL` 或 `$EDITOR` 中打开调度提示 |

374| `Ctrl+J` | 在调度输入中插入换行符 |376| `Ctrl+J` | 在调度输入中插入换行符 |


378| `Ctrl+C` | 清除输入;按两次退出 |380| `Ctrl+C` | 清除输入;按两次退出 |

379| `?` | 显示所有快捷键 |381| `?` | 显示所有快捷键 |

380 382 

381`Ctrl+S`、`Ctrl+T` 和 `Ctrl+G` 遵循你的 [`keybindings.json`](/docs/zh-CN/keybindings)。在 [`Agents` 上下文](/docs/zh-CN/keybindings#agents-actions)中用 `agents:switchView` 和 `agents:togglePin` 操作重新绑定或取消绑定 `Ctrl+S` 和 `Ctrl+T`,以及通过 `Chat` 上下文的 `chat:externalEditor` 绑定的 `Ctrl+G`。表中的其他快捷键无法重新绑定。383在 [`Agents` 上下文](/docs/zh-CN/keybindings#agents-actions)中有对应操作的快捷键遵循您的 [`keybindings.json`](/docs/zh-CN/keybindings)。`Ctrl+G` 也是如此,它通过 `Chat` 上下文的 `chat:externalEditor` 绑定进行配置。

382 384 

383<h2 id="dispatch-new-agents">385<h2 id="dispatch-new-agents">

384 分派新的 agents386 分派新的 agents


1087 1089 

1088| 版本 | 更改 |1090| 版本 | 更改 |

1089| - | - |1091| - | - |

1092| v2.1.288 | `Ctrl+F` 按名称查找会话,`Alt+↑` / `Alt+↓` 在组标题之间跳转。这两者以及 `Ctrl+R` 都可以[重新绑定](/docs/zh-CN/keybindings#agents-actions)。 |

1090| v2.1.287 | [`n:<text>` 筛选器](#filter-sessions)按名称或第一个提示词查找会话。当任何筛选器处于活动状态时,您折叠的组会展开以显示其匹配项,并且第一个匹配项被选中,因此 `Enter` 会打开它。 |1093| v2.1.287 | [`n:<text>` 筛选器](#filter-sessions)按名称或第一个提示词查找会话。当任何筛选器处于活动状态时,您折叠的组会展开以显示其匹配项,并且第一个匹配项被选中,因此 `Enter` 会打开它。 |

1091| v2.1.287 | 作为[窥视回复](#peek-and-reply)发送的命令会在会话当前轮次结束时运行,包括在会话自身的输入框中一键入就立即运行的命令。内容恰好为 `/stop` 的回复会立即停止会话。 |1094| v2.1.287 | 作为[窥视回复](#peek-and-reply)发送的命令会在会话当前轮次结束时运行,包括在会话自身的输入框中一键入就立即运行的命令。内容恰好为 `/stop` 的回复会立即停止会话。 |

1092| v2.1.281 | [`--setting-sources`](/docs/zh-CN/cli-reference#cli-flags) 限制[转移](#what-carries-over-when-you-background)到你使用 `←` 或 `/bg` 后台的会话,以及你从 agent view 调度的会话。在此版本之前,生成的会话加载每个设置源。 |1095| v2.1.281 | [`--setting-sources`](/docs/zh-CN/cli-reference#cli-flags) 限制[转移](#what-carries-over-when-you-background)到你使用 `←` 或 `/bg` 后台的会话,以及你从 agent view 调度的会话。在此版本之前,生成的会话加载每个设置源。 |

Details

386 386 

387当这些检查发现您的账户无法调用的模型时,Claude Code 会在这台机器上记住该拒绝长达一天,在此期间启动时会跳过记住的模型,而不再询问 Amazon Bedrock。Claude Code 会在距离上次检查已过十分钟后再次检查当前默认模型的记住拒绝,因此您的管理员重新启用的默认模型会恢复。要关闭此内存功能,请设置 [`CLAUDE_CODE_SKIP_MODEL_ACCESS_MEMORY=1`](/docs/zh-CN/env-vars)。387当这些检查发现您的账户无法调用的模型时,Claude Code 会在这台机器上记住该拒绝长达一天,在此期间启动时会跳过记住的模型,而不再询问 Amazon Bedrock。Claude Code 会在距离上次检查已过十分钟后再次检查当前默认模型的记住拒绝,因此您的管理员重新启用的默认模型会恢复。要关闭此内存功能,请设置 [`CLAUDE_CODE_SKIP_MODEL_ACCESS_MEMORY=1`](/docs/zh-CN/env-vars)。

388 388 

389<h3 id="when-your-organization-enforces-a-model-allowlist">

390 当您的组织强制执行模型允许列表时

391</h3>

392 

393如果您在托管设置中设置了 [`enforceAvailableModels`](/docs/zh-CN/model-config#enforce-the-allowlist-for-the-default-model),启动模型检查将仅使用您的 `availableModels` 列表允许的模型。这适用于 Amazon Bedrock Invoke API,并且需要 Claude Code v2.1.287 或更高版本。未设置 `enforceAvailableModels` 的列表不会限制这些检查。

394 

395检查会将每个条目与其将要发送的推理配置文件 ID(包括其[区域前缀](#cross-region-inference-profile-prefixes))进行比较,因此请使用这些 ID 编写列表。此示例为模型解析为 `us.` 配置文件的部署允许 Opus 4.8 和 Sonnet 4.5:

396 

397```json theme={null}

398{

399 "availableModels": ["us.anthropic.claude-opus-4-8", "us.anthropic.claude-sonnet-4-5-20250929-v1:0"],

400 "enforceAvailableModels": true

401}

402```

403 

404有关别名、版本前缀和 `modelOverrides` 条目,请参阅[为第三方部署固定模型](/docs/zh-CN/model-config#pin-models-for-third-party-deployments)。

405 

389<h3 id="when-a-model-is-disabled-mid-session">406<h3 id="when-a-model-is-disabled-mid-session">

390 当模型在会话中被禁用时407 当模型在会话中被禁用时

391</h3>408</h3>

artifacts.md +3 −1

Details

156 让 Claude 自动回复评论156 让 Claude 自动回复评论

157</h3>157</h3>

158 158 

159在您的会话发布工件后,Claude Code 会在会话运行期间监视该工件的评论。当可以编辑工件的人向 Claude 发送评论时,它会立即到达您的会话,Claude 可以读取线程并回复,而无需您询问。159在您的会话发布 Artifact 后,Claude Code 会监视该 Artifact 的评论。当可以编辑 Artifact 的人向 Claude 发送评论时,它会立即到达您的会话,Claude 可以读取线程并回复,而无需您询问。

160 160 

161您需要 Claude Code v2.1.228 或更高版本。如果您关闭了[功能标志获取](/docs/zh-CN/env-vars#features-that-need-feature-flag-fetching),Claude Code 不会监视评论。161您需要 Claude Code v2.1.228 或更高版本。如果您关闭了[功能标志获取](/docs/zh-CN/env-vars#features-that-need-feature-flag-fetching),Claude Code 不会监视评论。

162 162 


174* **在 `/tasks` 中停止任务**:Claude 停止回复该工件,直到您要求它在那里恢复回复。重新发布工件不会再次启动回复,当您稍后恢复会话时,停止仍然适用。174* **在 `/tasks` 中停止任务**:Claude 停止回复该工件,直到您要求它在那里恢复回复。重新发布工件不会再次启动回复,当您稍后恢复会话时,停止仍然适用。

175* **在 3 秒内按两次 `Ctrl+X Ctrl+K`**:[停止每个运行的后台子代理](/docs/zh-CN/interactive-mode#general-controls)的和弦也会停止 Claude 为会话的其余部分回复每个工件。要求 Claude 恢复回复不会撤销此停止。175* **在 3 秒内按两次 `Ctrl+X Ctrl+K`**:[停止每个运行的后台子代理](/docs/zh-CN/interactive-mode#general-controls)的和弦也会停止 Claude 为会话的其余部分回复每个工件。要求 Claude 恢复回复不会撤销此停止。

176 176 

177由 Claude Code 自行启动的监视可能会在 Artifact 数小时无活动后结束。要重新启动监视,请再次发布该 Artifact 或要求 Claude 监视它。

178 

177如果传递评论的服务变得不可用或停止响应,Claude Code 会尝试重新连接一段时间,然后停止监视您的会话正在监视的每个工件。179如果传递评论的服务变得不可用或停止响应,Claude Code 会尝试重新连接一段时间,然后停止监视您的会话正在监视的每个工件。

178 180 

179<h2 id="pull-live-data-with-mcp-connectors">181<h2 id="pull-live-data-with-mcp-connectors">

Details

538</h3>538</h3>

539 539 

540<Tip>540<Tip>

541 循环遍历任务,为每个调用 `claude -p`。使用 `--allowedTools` 来限定批量操作的权限。541 循环遍历任务,为每个任务调用 `claude -p`。使用 `--allowedTools` 为批量操作预先批准工具。

542</Tip>542</Tip>

543 543 

544对于大型迁移或分析,你可以跨许多并行 Claude 调用分配工作。运行 [`/batch <instruction>`](/docs/zh-CN/commands#all-commands) 让 Claude 将更改分割到 5 到 30 个子代理中。每个子代理在自己的 worktree 中工作。要从你自己的脚本驱动扇出,请循环遍历 `claude -p`:544对于大型迁移或分析,你可以跨许多并行 Claude 调用分配工作。运行 [`/batch <instruction>`](/docs/zh-CN/commands#all-commands) 让 Claude 将更改分割到 5 到 30 个子代理中。每个子代理在自己的 worktree 中工作。要从你自己的脚本驱动扇出,请循环遍历 `claude -p`:


552 ```bash theme={null}552 ```bash theme={null}

553 for file in $(cat files.txt); do553 for file in $(cat files.txt); do

554 claude -p "Migrate $file from Python 2 to Python 3. Return OK or FAIL." \554 claude -p "Migrate $file from Python 2 to Python 3. Return OK or FAIL." \

555 --allowedTools "Edit,Bash(git commit *)"555 --allowedTools "Edit,Bash(git commit *)" \

556 --permission-mode dontAsk

556 done557 done

557 ```558 ```

558 </Step>559 </Step>

559 560 

560 <Step title="在几个文件上测试,然后大规模运行">561 <Step title="先在几个文件上测试,然后在全部文件上运行">

561 根据前 2-3 个文件出错的情况精化你的提示,然后在完整集合上运行。`--allowedTools` 标志限制 Claude 能做什么,这在你无人值守运行时很重要。562 根据前 2-3 个文件出现的问题改进提示词,然后在完整集合上运行。`--allowedTools` 标志预先批准迁移所需的工具,而 [`--permission-mode dontAsk`](/docs/zh-CN/permission-modes#allow-only-pre-approved-tools-with-dontask-mode) 会拒绝其他任何需要批准的操作,这在无人值守运行时非常重要。

562 </Step>563 </Step>

563</Steps>564</Steps>

564 565 

channels.md +1 −1

Details

326 为您的组织启用 channels326 为您的组织启用 channels

327</h3>327</h3>

328 328 

329可以从 [**claude.ai → 管理员设置 → Claude Code → Channels**](https://claude.ai/admin-settings/claude-code) 为您的组织启用 channels(需要所有者角色),或通过在托管设置中将 `channelsEnabled` 设置为 `true`。329可以从 [**Organization settings > Claude Code > Channels**](https://claude.ai/admin-settings/claude-code) 为您的组织启用频道(需要所有者角色),或通过在托管设置中将 `channelsEnabled` 设置为 `true`。

330 330 

331启用后,您组织中的用户可以使用 `--channels` 将 channel 服务器选择加入到各个会话中。如果设置被禁用或未设置,MCP 服务器仍会连接,其工具可以工作,但 channel 消息不会到达。启动警告会告诉用户让管理员启用该设置。331启用后,您组织中的用户可以使用 `--channels` 将 channel 服务器选择加入到各个会话中。如果设置被禁用或未设置,MCP 服务器仍会连接,其工具可以工作,但 channel 消息不会到达。启动警告会告诉用户让管理员启用该设置。

332 332 

Details

448 锁不涵盖的设置448 锁不涵盖的设置

449</h4>449</h4>

450 450 

451即使设置了所有五个锁,六个父提供的设置也会通过过滤器。在默认的先赢设置下,阻止父设置的管理员值是最高优先级管理员源中的值,除了 `allowedMcpServers` 当[MCP 服务器锁](#lock-behavior-across-sources)打开时。在 `managedSourcesBehavior` 合并选择加入下,[Claude Code 如何组合托管源](/docs/zh-CN/managed-settings#how-claude-code-combines-managed-sources)说明哪个源的值改为适用。451即使设置了所有五个锁,这些父提供的设置也会通过过滤器:

452 452 

453* **`forceLoginOrgUUID`**:当最高优先级管理员源未设置组织 UUID 时,Claude Code 尊重父提供的值。网关登录不检查此密钥。最高优先级管理员源中的组织 UUID 阻止父的值,是 Claude Code 强制执行的值。453* **`forceLoginOrgUUID`**:当最高优先级管理员源未设置组织 UUID 时,Claude Code 尊重父提供的值。网关登录不检查此密钥。最高优先级管理员源中的组织 UUID 阻止父的值,是 Claude Code 强制执行的值。

454* **`allowedMcpServers`**:当最高优先级管理员源未设置允许列表时,Claude Code 尊重父提供的允许列表,`allowManagedMcpServersOnly` 不阻止它,因为锁强制执行任何赢家列表作为托管值,包括当最高优先级管理员源未设置时的父提供列表。最高优先级管理员源中的列表阻止父的并是 Claude Code 强制执行的列表,因此在那里设置 `allowedMcpServers`,在锁旁边。在 v2.1.223 之前,任何管理员源中任一密钥的值都阻止父的。454* **`allowedMcpServers`**:当没有生效的管理员列表时,Claude Code 尊重父提供的允许列表。`allowManagedMcpServersOnly` 不阻止它,因为锁强制执行任何赢家列表作为托管值,包括当没有管理员源提供列表时的父提供列表。最高优先级管理员源中的列表阻止父的并是 Claude Code 强制执行的列表,因此在那里设置 `allowedMcpServers`,在锁旁边。在 v2.1.223 之前,任何管理员源中任一密钥的值都阻止父的。

455* **`availableModels`**:当赢家托管源未设置模型列表时,Claude Code 尊重父提供的模型列表。如果您的舰队限制模型,在赢家源中设置 `availableModels`。455* **`availableModels`**:当赢家托管源未设置模型列表时,Claude Code 尊重父提供的模型列表。如果您的舰队限制模型,在赢家源中设置 `availableModels`。

456* **`allowedProviders`**:当赢家托管源未设置 API 提供商允许列表时,Claude Code 尊重父提供的 API 提供商允许列表。如果您的舰队限制开发人员可以使用的 API 提供商,在赢家源中设置 `allowedProviders`。需要 Claude Code v2.1.285 或更高版本。

456* **`strictKnownMarketplaces`**:当赢家托管源未设置一个时,Claude Code 尊重父提供的插件市场允许列表。Claude Desktop 2.16120.0 或更高版本在其托管配置关闭用户添加的插件市场时发送一个。如果您的舰队限制市场,在赢家源中设置 `strictKnownMarketplaces`。需要 Claude Code v2.1.282 或更高版本。457* **`strictKnownMarketplaces`**:当赢家托管源未设置一个时,Claude Code 尊重父提供的插件市场允许列表。Claude Desktop 2.16120.0 或更高版本在其托管配置关闭用户添加的插件市场时发送一个。如果您的舰队限制市场,在赢家源中设置 `strictKnownMarketplaces`。需要 Claude Code v2.1.282 或更高版本。

457* **`blockedMarketplaces`**:父提供的市场阻止列表通过并添加到任何托管源设置的阻止列表,因为阻止列表只能进一步限制。需要 Claude Code v2.1.282 或更高版本。458* **`blockedMarketplaces`**:父提供的市场阻止列表通过并添加到任何托管源设置的阻止列表,因为阻止列表只能进一步限制。需要 Claude Code v2.1.282 或更高版本。

458* **`strictPluginOnlyCustomization`**:此密钥无论任何锁都通过过滤器,它使 Claude Code 忽略开发人员的自己定制,包括保护性 hooks。没有锁阻止它。459* **`strictPluginOnlyCustomization`**:此密钥无论任何锁都通过过滤器,它使 Claude Code 忽略开发人员的自己定制,包括保护性 hooks。没有锁阻止它。

459 460 

461在默认的先赢设置下,管理员值仅当位于最高优先级管理员源中时才阻止父的值,但 [MCP 服务器锁](#lock-behavior-across-sources)打开时的 `allowedMcpServers` 除外。在 `managedSourcesBehavior` 合并选择加入下,[Claude Code 如何组合托管源](/docs/zh-CN/managed-settings#how-claude-code-combines-managed-sources)说明哪个源的值改为适用。

462 

460<h3 id="connect-claude-desktop">463<h3 id="connect-claude-desktop">

461 连接 Claude Desktop464 连接 Claude Desktop

462</h3>465</h3>


483 486 

484这些保证适用于每个通过 `/login` 登录的会话。Claude Desktop 启动的嵌入式会话按[将策略传递给 Claude Desktop 会话](#deliver-policy-to-claude-desktop-sessions)中所述获取其策略,遥测项目说明其导出的去向。487这些保证适用于每个通过 `/login` 登录的会话。Claude Desktop 启动的嵌入式会话按[将策略传递给 Claude Desktop 会话](#deliver-policy-to-claude-desktop-sessions)中所述获取其策略,遥测项目说明其导出的去向。

485 488 

486* **模型访问**:对策略未授予的模型的请求返回 400,`/model` 选择器被过滤到策略的 `availableModels` 允许列表。在策略中设置 [`enforceAvailableModels: true`](/docs/zh-CN/model-config#default-model-behavior),以便 Default 选项解析为 `availableModels` 内的模型,而不是 Claude Code 的内置默认值;没有它,Default 保持可选,如果该模型未被授予,则在请求时被拒绝。489* **模型访问**:对策略未授予的模型的请求返回 400,`/model` 选择器被过滤到策略的 `availableModels` 允许列表。这包括开发人员选择模型之前会话启动时使用的模型;请参阅[在策略允许的模型上启动会话](/docs/zh-CN/claude-apps-gateway-config#start-sessions-on-a-model-the-policy-allows)。

487* **遥测目标**:在通过 `/login` 登录的会话中,CLI 将其 OTLP/HTTP 导出发送到网关,而不是任何本地设置的 `OTEL_EXPORTER_OTLP_ENDPOINT`,除非策略[将您的收集器命名为端点](/docs/zh-CN/claude-apps-gateway-config#export-directly-to-your-collector)。网关将它接收的导出中继到 [`telemetry.forward_to`](/docs/zh-CN/claude-apps-gateway-config#telemetry) 中的目标。490* **遥测目标**:在通过 `/login` 登录的会话中,CLI 将其 OTLP/HTTP 导出发送到网关,而不是任何本地设置的 `OTEL_EXPORTER_OTLP_ENDPOINT`,除非策略[将您的收集器命名为端点](/docs/zh-CN/claude-apps-gateway-config#export-directly-to-your-collector)。网关将它接收的导出中继到 [`telemetry.forward_to`](/docs/zh-CN/claude-apps-gateway-config#telemetry) 中的目标。

488 * 在[Claude Desktop 启动](#connect-claude-desktop)的嵌入式会话中,CLI 将其导出发送到配置的 `OTEL_EXPORTER_OTLP_ENDPOINT`。CLI 仅当该端点指向网关本身时才将网关会话令牌附加到这些导出。491 * 在[Claude Desktop 启动](#connect-claude-desktop)的嵌入式会话中,CLI 将其导出发送到配置的 `OTEL_EXPORTER_OTLP_ENDPOINT`。CLI 仅当该端点指向网关本身时才将网关会话令牌附加到这些导出。

489 * 没有为信号配置目标时,网关接受并丢弃它。492 * 没有为信号配置目标时,网关接受并丢弃它。


513 516 

514| 功能 | 状态 | 注释 |517| 功能 | 状态 | 注释 |

515| - | - | - |518| - | - | - |

516| 推理转发 (Amazon Bedrock、Claude Platform on AWS、Google Cloud 的 Agent Platform、Microsoft Foundry、Anthropic) | 可用 | 具有按上游模型转换和故障转移。Amazon Bedrock 上游使用 `bedrock-runtime` 端点和 AWS 默认凭证链;Amazon Bedrock [Mantle 端点](/docs/zh-CN/amazon-bedrock#use-the-mantle-endpoint)不是支持的上游。[Claude Platform on AWS 上游](/docs/zh-CN/claude-apps-gateway-config#claude-platform-on-aws)需要网关服务器上的 Claude Code v2.1.198 或更高版本。 |519| 推理转发 (Amazon Bedrock、Claude Platform on AWS、Google Cloud 的 Agent Platform、Microsoft Foundry、Anthropic) | 可用 | 具有按上游模型转换和故障转移。Amazon Bedrock 上游使用 `bedrock-runtime` 端点和 AWS 默认凭据链。[Amazon Bedrock Mantle 上游](/docs/zh-CN/claude-apps-gateway-config#amazon-bedrock-mantle-endpoint)需要网关服务器上的 Claude Code v2.1.283 或更高版本,[Claude Platform on AWS 上游](/docs/zh-CN/claude-apps-gateway-config#claude-platform-on-aws)需要 v2.1.198 或更高版本。 |

517| 按 IdP 组的模型访问和托管设置 | 可用 | 模型访问在服务器端强制执行;托管设置按 IdP 组交付,由 CLI 在[托管设置层](/docs/zh-CN/settings#settings-precedence)应用 |520| 按 IdP 组的模型访问和托管设置 | 可用 | 模型访问在服务器端强制执行;托管设置按 IdP 组交付,由 CLI 在[托管设置层](/docs/zh-CN/settings#settings-precedence)应用 |

518| Claude Desktop | 可用(需要选择加入) | 网关在 `/user/bootstrap` 处为 Claude Desktop 的配置提供服务,一旦策略[使用 `desktop` 密钥选择加入](/docs/zh-CN/claude-apps-gateway-config#claude-desktop-overlay),Claude Desktop 从其 Cowork 和 Code 选项卡以及从 Chat 选项卡(当您启用它时)发送模型请求通过网关。要打开 Chat 选项卡,请参阅[连接 Claude Desktop](#connect-claude-desktop)。需要网关服务器上的 Claude Code v2.1.203 或更高版本。 |521| Claude Desktop | 可用(需要选择加入) | 网关在 `/user/bootstrap` 处为 Claude Desktop 的配置提供服务,一旦策略[使用 `desktop` 密钥选择加入](/docs/zh-CN/claude-apps-gateway-config#claude-desktop-overlay),Claude Desktop 从其 Cowork 和 Code 选项卡以及从 Chat 选项卡(当您启用它时)发送模型请求通过网关。要打开 Chat 选项卡,请参阅[连接 Claude Desktop](#connect-claude-desktop)。需要网关服务器上的 Claude Code v2.1.203 或更高版本。 |

519| 遥测扇出 (OTLP/HTTP) | 可用 | 按导出标识戳;protobuf 和 JSON 编码 |522| 遥测扇出 (OTLP/HTTP) | 可用 | 按导出标识戳;protobuf 和 JSON 编码 |


525| 需要功能标志获取的功能,例如 `/import` 和 `claude import` | 不可用 | CLI 在网关会话上跳过标志获取。[需要功能标志获取的功能](/docs/zh-CN/env-vars#features-that-need-feature-flag-fetching)列出了关闭的内容 |528| 需要功能标志获取的功能,例如 `/import` 和 `claude import` | 不可用 | CLI 在网关会话上跳过标志获取。[需要功能标志获取的功能](/docs/zh-CN/env-vars#features-that-need-feature-flag-fetching)列出了关闭的内容 |

526| 标准提示缓存 | 可用 | 网关将 `cache_control` 断点转发到每个上游。[缓存位置](/docs/zh-CN/prompt-caching#where-the-cache-lives)涵盖 CLI 标记的块,包括它在对话中途追加的系统上下文 |529| 标准提示缓存 | 可用 | 网关将 `cache_control` 断点转发到每个上游。[缓存位置](/docs/zh-CN/prompt-caching#where-the-cache-lives)涵盖 CLI 标记的块,包括它在对话中途追加的系统上下文 |

527| 1 小时缓存 TTL | 不可用 | CLI 在网关会话上省略扩展缓存 TTL beta,因为并非网关可以路由到的每个上游都支持 1 小时 TTL,因此通过网关的提示缓存使用 5 分钟 TTL;请参阅上面的 beta 标头注释 |530| 1 小时缓存 TTL | 不可用 | CLI 在网关会话上省略扩展缓存 TTL beta,因为并非网关可以路由到的每个上游都支持 1 小时 TTL,因此通过网关的提示缓存使用 5 分钟 TTL;请参阅上面的 beta 标头注释 |

528| Auto 模式 | 可用 | 遵循[第三方提供商规则](/docs/zh-CN/permission-modes#enable-auto-mode-on-bedrock-agent-platform-or-foundry):仅第三方提供商上符合条件的模型可以使用它。在 v2.1.207 之前,网关会话上的 auto 模式需要设置 `CLAUDE_CODE_ENABLE_AUTO_MODE=1`,可通过托管策略 `env` 块交付 |531| 自动模式 | 可用 | 遵循[第三方提供商规则](/docs/zh-CN/permission-modes#enable-auto-mode-on-bedrock-agent-platform-or-foundry):仅第三方提供商上符合条件的模型可以使用它。在 v2.1.207 之前,网关会话上的自动模式需要设置 `CLAUDE_CODE_ENABLE_AUTO_MODE=1`,可通过托管策略 `env` 块交付 |

529| 仅第一方优化,如全局缓存范围和令牌高效工具 | 不可用 | CLI 在网关会话上不启用它们;请参阅上面的 beta 标头注释 |532| 仅第一方优化,如全局缓存范围和令牌高效工具 | 不可用 | CLI 在网关会话上不启用它们;请参阅上面的 beta 标头注释 |

530| OTLP/gRPC | 不支持 | 仅 OTLP over HTTP |533| OTLP/gRPC | 不支持 | 仅 OTLP over HTTP |

531| SAML、LDAP 和其他非 OIDC 身份验证 | 不支持 | 仅 OIDC。如果需要,使用 OIDC 桥前置 |534| SAML、LDAP 和其他非 OIDC 身份验证 | 不支持 | 仅 OIDC。如果需要,使用 OIDC 桥前置 |

Details

227 227 

228| 字段 | 必需 | 描述 |228| 字段 | 必需 | 描述 |

229| - | - | - |229| - | - | - |

230| `postgres_url` | 是 | `postgres://` 或 `postgresql://` URL。必需:设备授权集合点,浏览器回调写入和轮询 CLI 读取,需要跨副本状态。网关在启动和升级时运行自己的架构迁移,因此角色需要在目标架构上创建和更改表的权限。请参阅[升级](/docs/zh-CN/claude-apps-gateway-deploy#upgrades)和 [Postgres](/docs/zh-CN/claude-apps-gateway-deploy#postgres)。 |230| `postgres_url` | 是 | `postgres://` 或 `postgresql://` URL。必需:设备授权集合点,浏览器回调写入和轮询 CLI 读取,需要跨副本状态。网关在启动和升级时运行自己的 schema 迁移,因此角色需要在目标 schema 上创建和更改表的权限。请参阅[升级](/docs/zh-CN/claude-apps-gateway-deploy#upgrades)和 [Postgres](/docs/zh-CN/claude-apps-gateway-deploy#postgres)。 |

231| `username` | 否 | 覆盖 `postgres_url` 中的用户 |231| `username` | 否 | 覆盖 `postgres_url` 中的用户 |

232| `password` | 否 | 数据库凭证。在此设置而不是在 `postgres_url` 中,以便凭证保持在 URL 之外。接受任何字符并优先于 URL 凭证。 |232| `password` | 否 | 数据库凭据。在此设置而不是在 `postgres_url` 中,以便凭据保持在 URL 之外。接受任何字符并优先于 URL 凭据。 |

233| `max_connections` | 否 | 每个副本的 Postgres 连接池大小。默认 `5`,保守且对共享数据库友好。启用[支出限制](#admin)后,热路径每个推理请求执行几个操作,因此在负载下为专用数据库提高它,并保持副本 × 此值低于数据库的 `max_connections`。 |233| `max_connections` | 否 | 每个副本的 Postgres 连接池大小。默认 `5`,保守且对共享数据库友好。启用[支出限制](#admin)后,热路径每个推理请求执行几个操作,因此在负载下为专用数据库提高它,并保持副本 × 此值低于数据库的 `max_connections`。 |

234| `connect_timeout_seconds` | 否 | 网关打开 Postgres 连接时等待的秒数。从 `1` 到 `60` 的整数,默认 `5`。如果新网关实例启动时连接尝试超时,请提高它。需要网关服务器上的 Claude Code v2.1.274 或更高版本。早期版本在设置键时拒绝启动。 |234| `connect_timeout_seconds` | 否 | 网关打开 Postgres 连接时等待的秒数。从 `1` 到 `60` 的整数,默认 `5`。如果新网关实例启动时连接尝试超时,请提高它。需要网关服务器上的 Claude Code v2.1.274 或更高版本。早期版本在设置键时拒绝启动。 |

235| `readiness_grace_seconds` | 否 | Postgres 停止应答后 `/readyz` 继续报告就绪的秒数。从 `0` 到 `3600` 的整数,默认 `0`。请参阅[中断行为](/docs/zh-CN/claude-apps-gateway-deploy#outage-behavior)了解如何选择值。需要网关服务器上的 Claude Code v2.1.282 或更高版本。早期版本在设置键时拒绝启动。 |235| `readiness_grace_seconds` | 否 | Postgres 停止应答后 `/readyz` 继续报告就绪的秒数。从 `0` 到 `3600` 的整数,默认 `0`。请参阅[中断行为](/docs/zh-CN/claude-apps-gateway-deploy#outage-behavior)了解如何选择值。需要网关服务器上的 Claude Code v2.1.282 或更高版本。早期版本在设置键时拒绝启动。 |


242 242 

243`upstreams` 是一个有序列表。网关将推理转发到解析请求的模型的第一个上游。243`upstreams` 是一个有序列表。网关将推理转发到解析请求的模型的第一个上游。

244 244 

245在 `5xx`、`429`、`401`、`403`、`404` 或超时时,网关故障转移到下一个上游;其他 `4xx` 不会,因为这些错误可归因于请求而不是上游。`401` 或 `403` 意味着网关对该上游使用的凭证失败。`404` 意味着该上游不提供请求的模型,因此列表中的后续上游仍然可以。245在 `5xx`、`429`、`401`、`403`、`404` 或超时时,网关故障转移到下一个上游;其他 `4xx` 不会,因为这些错误可归因于请求而不是上游。`401` 或 `403` 意味着上游拒绝了网关使用的凭据,或拒绝其访问,例如对所请求模型的访问。`404` 意味着该上游不提供请求的模型,因此列表中的后续上游仍然可以。

246 246 

247如果您在上游上设置 `forward_user_identity: true`,它返回给携带开发人员电子邮件的请求的 `429` 不会故障转移。请参阅[每用户限制拒绝如何到达开发人员](#per-user-identity-headers-for-a-proxy-you-run)。247如果您在上游上设置 `forward_user_identity: true`,它返回给携带开发人员电子邮件的请求的 `429` 不会故障转移。请参阅[每用户限制拒绝如何到达开发人员](#per-user-identity-headers-for-a-proxy-you-run)。

248 248 


250 250 

251相同提供商的多个上游必须设置不同的 `name:`。251相同提供商的多个上游必须设置不同的 `name:`。

252 252 

253Amazon Bedrock、AWS 上的 Claude Platform、Google Cloud 的 Agent Platform 和 Microsoft Foundry 客户端在启动时构建一次,其 SDK 在内部刷新凭证,因此轮换云凭证不需要重启。静态 Anthropic API 密钥和持有者在启动时读取;请参阅 [Anthropic API](#anthropic-api)。253Amazon Bedrock、AWS 上的 Claude Platform、Google Cloud 的 Agent Platform 和 Microsoft Foundry 客户端在启动时构建一次,其 SDK 在内部刷新凭据,因此轮换云凭据不需要重启。静态 Anthropic API 密钥和持有者在启动时读取;请参阅 [Anthropic API](#anthropic-api)。

254 254 

255<h4 id="upstream-error-messages">255<h4 id="upstream-error-messages">

256 上游错误消息256 上游错误消息


289 # base_url: https://api.anthropic.com # 默认;为前向代理覆盖289 # base_url: https://api.anthropic.com # 默认;为前向代理覆盖

290```290```

291 291 

292两种凭证形式在它们发送的标头中有所不同:292两种凭据形式在它们发送的标头中有所不同:

293 293 

294* **`api_key`**:发送 `x-api-key`。在 Claude Console 中轮换它并更新环境变量。294* **`api_key`**:发送 `x-api-key`。在 Claude Console 中轮换它并更新环境变量。

295* **`oauth_token`**:发送 `Authorization: Bearer`。当您的组织发出短期令牌而不是长期 API 密钥时使用持有者形式。持有者在启动时读取一次,因此通过重新挂载秘密和重启来刷新。295* **`oauth_token`**:发送 `Authorization: Bearer`。当您的组织发出短期令牌而不是长期 API 密钥时使用持有者形式。持有者在启动时读取一次,因此通过重新挂载秘密和重启来刷新。


350upstreams:350upstreams:

351 - provider: bedrock351 - provider: bedrock

352 region: us-east-1352 region: us-east-1

353 auth: {} # 首选:AWS 默认凭证链353 auth: {} # 首选:AWS 默认凭据链

354 # 或显式凭证:354 # 或显式凭据:

355 # auth:355 # auth:

356 # aws_access_key_id: ${AWS_AKID}356 # aws_access_key_id: ${AWS_AKID}

357 # aws_secret_access_key: ${AWS_SK}357 # aws_secret_access_key: ${AWS_SK}


363 # base_url: https://bedrock-runtime-fips.us-east-1.amazonaws.com363 # base_url: https://bedrock-runtime-fips.us-east-1.amazonaws.com

364```364```

365 365 

366空 `auth` 块使用 AWS SDK 的默认凭证链:环境变量、`~/.aws/credentials`、ECS 任务角色、EC2 实例元数据或 EKS 上的 IRSA。在生产中,给网关 pod 一个 IAM 角色而不是在容器镜像中嵌入静态密钥。366空 `auth` 块使用 AWS SDK 的默认凭据链:环境变量、`~/.aws/credentials`、ECS 任务角色、EC2 实例元数据或 EKS 上的 IRSA。在生产中,给网关 pod 一个 IAM 角色而不是在容器镜像中嵌入静态密钥。

367 367 

368显式凭证必须完整:当 `aws_access_key_id` 和 `aws_secret_access_key` 未一起设置时,或当 `aws_session_token` 在没有它们的情况下设置时,网关在启动时失败。在 v2.1.207 之前,部分 `auth:` 块通过验证。368显式凭据必须完整:当 `aws_access_key_id` 和 `aws_secret_access_key` 未一起设置时,或当 `aws_session_token` 在没有它们的情况下设置时,网关在启动时失败。在 v2.1.207 之前,部分 `auth:` 块通过验证。

369 369 

370| 设置 | 如何 |370| 设置 | 如何 |

371| - | - |371| - | - |

372| IAM 权限 | 授予网关的主体 `bedrock:InvokeModel` 和 `bedrock:InvokeModelWithResponseStream` 在推理配置文件 ARN 和底层基础模型 ARN 上。对于美国地区的内置目录:`arn:aws:bedrock:<region>:<account>:inference-profile/us.anthropic.*` 和 `arn:aws:bedrock:*::foundation-model/anthropic.*`。也在基础模型 ARN 上授予 `bedrock:CountTokens`。网关使用它(免费)来计算客户端放弃的请求的输入令牌,因此[支出限制](#admin)保持准确。没有它,网关回退到该计数的一令牌 Bedrock 请求。 |372| IAM 权限 | 授予网关的主体 `bedrock:InvokeModel` 和 `bedrock:InvokeModelWithResponseStream` 在推理配置文件 ARN 和底层基础模型 ARN 上。对于美国地区的内置目录:`arn:aws:bedrock:<region>:<account>:inference-profile/us.anthropic.*` 和 `arn:aws:bedrock:*::foundation-model/anthropic.*`。也在基础模型 ARN 上授予 `bedrock:CountTokens`。网关使用它(免费)来计算客户端放弃的请求的输入 token,因此[支出限制](#admin)保持准确。没有它,网关回退到针对该计数的单 token Bedrock 请求。 |

373| 模型访问 | Amazon Bedrock 在商业地区默认启用模型访问。剩余的帐户级门是 Anthropic 的一次性用例表:如果您的 AWS 帐户中没有人提交过,请打开 Amazon Bedrock 控制台,从模型目录中选择 Anthropic 模型,并完成表单。有关 AWS Organizations 表和提交者需要的权限,请参阅[提交用例详情](/docs/zh-CN/amazon-bedrock#1-submit-use-case-details)。 |373| 模型访问 | Amazon Bedrock 在商业地区默认启用模型访问。剩余的帐户级门是 Anthropic 的一次性用例表:如果您的 AWS 帐户中没有人提交过,请打开 Amazon Bedrock 控制台,从模型目录中选择 Anthropic 模型,并完成表单。有关 AWS Organizations 表和提交者需要的权限,请参阅[提交用例详情](/docs/zh-CN/amazon-bedrock#1-submit-use-case-details)。 |

374| EKS (IRSA) | 创建具有上述策略和您的集群 OIDC 提供商的信任策略的 IAM 角色,范围限于网关的服务帐户。使用 `eks.amazonaws.com/role-arn: arn:aws:iam::<acct>:role/claude-gateway` 注释服务帐户。`auth: {}` 拾取它。 |374| EKS (IRSA) | 创建具有上述策略和您的集群 OIDC 提供商的信任策略的 IAM 角色,范围限于网关的服务帐户。使用 `eks.amazonaws.com/role-arn: arn:aws:iam::<acct>:role/claude-gateway` 注释服务帐户。`auth: {}` 拾取它。 |

375| ECS / EC2 | 将 IAM 角色附加到任务定义或实例配置文件。`auth: {}` 拾取它。 |375| ECS / EC2 | 将 IAM 角色附加到任务定义或实例配置文件。`auth: {}` 拾取它。 |

376| 其他任何地方 | 通过 `AWS_ACCESS_KEY_ID`、`AWS_SECRET_ACCESS_KEY` 和 `AWS_SESSION_TOKEN` 环境变量传递凭证,或在 `auth:` 中使用 `${VAR}` 扩展显式设置它们 |376| 其他任何地方 | 通过 `AWS_ACCESS_KEY_ID`、`AWS_SECRET_ACCESS_KEY` 和 `AWS_SESSION_TOKEN` 环境变量传递凭据,或在 `auth:` 中使用 `${VAR}` 扩展显式设置它们 |

377| 区域 | `region:` 是 API 端点区域。跨区域推理配置文件跨地理位置(美国、欧盟、亚太)路由,无论您选择哪一个。对于非美国地区或预配吞吐量 ARN,添加带有正确的按上游 ID 的 [`models:`](#models) 块。 |377| 区域 | `region:` 是 API 端点区域。跨区域推理配置文件跨地理位置(美国、欧盟、亚太)路由,无论您选择哪一个。对于非美国地区或预配吞吐量 ARN,添加带有正确的按上游 ID 的 [`models:`](#models) 块。 |

378 378 

379<h5 id="apply-an-amazon-bedrock-guardrail">379<h5 id="apply-an-amazon-bedrock-guardrail">


394```394```

395 395 

396<Warning>396<Warning>

397 网关不支持防护栏输入标签。它不向提示添加防护内容标签,因此 Amazon Bedrock 仅应用于标记输入的防护栏过滤器不在通过网关的流量上运行。对于哪些过滤器依赖输入标签,请参阅 Amazon Bedrock 文档中的[输入标签](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-tagging.html)。397 网关不支持防护栏输入标签。它不向提示词添加防护内容标签,因此 Amazon Bedrock 仅应用于标记输入的防护栏过滤器不在通过网关的流量上运行。对于哪些过滤器依赖输入标签,请参阅 Amazon Bedrock 文档中的[输入标签](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-tagging.html)。

398</Warning>398</Warning>

399 399 

400也在防护栏上授予 `bedrock:ApplyGuardrail` 给签署此上游请求的主体:网关的 AWS 主体,或使用 [`assume_role`](#bedrock-in-another-aws-account) 的 `role_arn` 中命名的角色。400也在防护栏上授予 `bedrock:ApplyGuardrail` 给签署此上游请求的主体:网关的 AWS 主体,或使用 [`assume_role`](#bedrock-in-another-aws-account) 的 `role_arn` 中命名的角色。

401 401 

402在每个 `bedrock` 上游或不在任何上游上设置 `guardrail`。网关拒绝在混合上启动,因为[故障转移](#multiple-upstreams)可能会将请求发送到没有防护栏的 Bedrock 上游。402在每个 `bedrock` 上游或不在任何上游上设置 `guardrail`。网关拒绝在混合上启动,因为[故障转移](#multiple-upstreams)可能会将请求发送到没有防护栏的 Bedrock 上游。

403 403 

404防护栏仅覆盖 Bedrock 上游。如果您在 `upstreams` 中列出另一个提供商,网关将请求发送到该提供商而不带防护栏。404防护栏仅覆盖 Bedrock 上游。如果您在 `upstreams` 中列出另一个提供商,网关将请求发送到该提供商而不带防护栏;如果该提供商是 [`mantle`](#amazon-bedrock-mantle-endpoint),则网关拒绝启动。

405 405 

406当 `/v1/messages` 请求的正文携带 `amazon-bedrock-*` 字段(如 `amazon-bedrock-guardrailConfig`)到达设置了 `guardrail` 的 Bedrock 上游时,网关应答 400 而不是转发它。406当 `/v1/messages` 请求的正文携带 `amazon-bedrock-*` 字段(如 `amazon-bedrock-guardrailConfig`)到达设置了 `guardrail` 的 Bedrock 上游时,网关应答 400 而不是转发它。

407 407 


411 另一个 AWS 帐户中的 Bedrock411 另一个 AWS 帐户中的 Bedrock

412</h5>412</h5>

413 413 

414在 Bedrock 上游上设置 `assume_role`,网关仅使用其自己的 AWS 身份来调用您命名的角色上的 `sts:AssumeRole`,该角色可以在与网关不同的 AWS 帐户中。该上游的每个 Bedrock 请求都使用 STS 返回的一小时凭证签署,因此没有长期访问密钥跨帐户。414在 Bedrock 上游上设置 `assume_role`,网关仅使用其自己的 AWS 身份来调用您命名的角色上的 `sts:AssumeRole`,该角色可以在与网关不同的 AWS 帐户中。该上游的每个 Bedrock 请求都使用 STS 返回的一小时凭据签署,因此没有长期访问密钥跨帐户。

415 415 

416需要网关运行 Claude Code v2.1.281 或更高版本。早期网关在找到键时拒绝启动。416需要网关运行 Claude Code v2.1.281 或更高版本。早期网关在找到键时拒绝启动。

417 417 


448}448}

449```449```

450 450 

451* 如果 STS 拒绝或无法到达,网关不使用上游自己的凭证发送请求。它记录 STS 错误和要检查的内容,然后尝试您列出的下一个上游。[上游错误消息](#upstream-error-messages)覆盖当没有上游成功时客户端接收的内容。没有 `assume_role` 的后续上游将使用其自己的凭证提供请求,因此仅在这是您想要的情况下列出一个。451* 如果 STS 拒绝或无法到达,网关不使用上游自己的凭据发送请求。它记录 STS 错误和要检查的内容,然后尝试您列出的下一个上游。[上游错误消息](#upstream-error-messages)覆盖当没有上游成功时客户端接收的内容。没有 `assume_role` 的后续上游将使用其自己的凭据提供请求,因此仅在这是您想要的情况下列出一个。

452* 网关调用区域 STS 端点 `sts.<region>.amazonaws.com`,其网络必须到达。对于 FIPS 端点,在网关的环境中设置 `AWS_USE_FIPS_ENDPOINT=true` 而不是在 AWS 配置文件中的 `use_fips_endpoint`。452* 网关调用区域 STS 端点 `sts.<region>.amazonaws.com`,其网络必须到达。对于 FIPS 端点,在网关的环境中设置 `AWS_USE_FIPS_ENDPOINT=true` 而不是在 AWS 配置文件中的 `use_fips_endpoint`。

453* `assume_role` 仅适用于 `provider: bedrock` 并需要 SigV4 源凭证:当它在 `aws_bearer_token` 旁边设置时,网关拒绝启动。453* `assume_role` 仅适用于 `provider: bedrock` 并需要 SigV4 源凭据:当它在 `aws_bearer_token` 旁边设置时,网关拒绝启动。

454* 网关允许的每个开发人员都可以使用此上游;[`managed`](#managed) 控制哪些开发人员可能使用哪些模型。要保持通过角色提供的模型也不从另一个帐户提供,给它一个自定义 id,其 `upstream_model` 映射仅具有此上游的名称。对于这样的 id,网关跳过每个其他上游,因此请求和放弃请求的令牌计数都无法故障转移到另一个帐户。内置模型名称仍在每个上游按顺序尝试,包括这个,到达它的请求使用相同的角色签署,因此除非其帐户也应该提供它们,否则最后列出此上游。454* 网关允许的每个开发人员都可以使用此上游;[`managed`](#managed) 控制哪些开发人员可能使用哪些模型。要保持通过角色提供的模型也不从另一个帐户提供,给它一个自定义 id,其 `upstream_model` 映射仅具有此上游的名称。对于这样的 id,网关跳过每个其他上游,因此请求和放弃请求的 token 计数都无法故障转移到另一个帐户。对内置模型名称的请求仍可能[到达此上游](#multiple-upstreams),网关会使用同一角色对其签名。除非其帐户也应该提供这些模型,否则请将此上游列在最后。

455 455 

456此示例给一个模型一个自定义 id,仅隔离上游提供:456此示例给一个模型一个自定义 id,仅隔离上游提供:

457 457 


468 每开发人员 AWS 成本属性468 每开发人员 AWS 成本属性

469</h5>469</h5>

470 470 

471默认情况下,网关使用一个凭证签署每个 Bedrock 请求,因此 AWS 在单个 IAM 主体下看到所有开发人员的请求。将 `session_name: email` 添加到 [`assume_role`](#bedrock-in-another-aws-account),网关每个开发人员每小时调用一次 `sts:AssumeRole`,会话名称设置为该开发人员的电子邮件,并使用返回的凭证签署其请求,因此每个开发人员的请求在 AWS 下以其自己的假设角色会话到达。角色可以在网关自己的帐户中。471默认情况下,网关使用一个凭据签署每个 Bedrock 请求,因此 AWS 在单个 IAM 主体下看到所有开发人员的请求。将 `session_name: email` 添加到 [`assume_role`](#bedrock-in-another-aws-account),网关每个开发人员每小时调用一次 `sts:AssumeRole`,会话名称设置为该开发人员的电子邮件,并使用返回的凭据签署其请求,因此每个开发人员的请求在 AWS 下以其自己的假设角色会话到达。角色可以在网关自己的帐户中。

472 472 

473需要网关运行 Claude Code v2.1.281 或更高版本。[AWS 上的成本属性](/docs/zh-CN/claude-apps-gateway-on-aws#cost-attribution)覆盖 IAM 角色和 AWS 计费显示会话的位置。473需要网关运行 Claude Code v2.1.281 或更高版本。[AWS 上的成本属性](/docs/zh-CN/claude-apps-gateway-on-aws#cost-attribution)覆盖 IAM 角色和 AWS 计费显示会话的位置。

474 474 


486 486 

487活跃开发人员每小时每个网关副本成本一个 STS 调用,并发首次请求共享一个调用。487活跃开发人员每小时每个网关副本成本一个 STS 调用,并发首次请求共享一个调用。

488 488 

489网关也在此角色上进行一个调用:客户端放弃的请求的令牌计数,因此[支出限制](/docs/zh-CN/claude-apps-gateway-spend-limits)保持准确。该计数及其[一令牌回退请求](#amazon-bedrock)由共享 `claude-apps-gateway` 会话签署,因此 AWS 将回退属性到 `claude-apps-gateway` 而不是开发人员。489网关也在此角色上进行一个调用:客户端放弃的请求的 token 计数,因此[支出限制](/docs/zh-CN/claude-apps-gateway-spend-limits)保持准确。该计数及其[单 token 回退请求](#amazon-bedrock)由共享 `claude-apps-gateway` 会话签署,因此 AWS 将回退属性到 `claude-apps-gateway` 而不是开发人员。

490 490 

491对于严格的每开发人员属性,在您列出的每个 Bedrock 上游上设置 `assume_role` 与 `session_name`。没有它的上游使用其自己的凭证签署它提供的请求。491对于严格的每开发人员属性,在您列出的每个 Bedrock 上游上设置 `assume_role` 与 `session_name`。没有它的上游使用其自己的凭据签署它提供的请求。

492 

493<h4 id="amazon-bedrock-mantle-endpoint">

494 Amazon Bedrock Mantle 端点

495</h4>

496 

497`mantle` 提供商将推理发送到 Amazon Bedrock 的 [Mantle 端点](/docs/zh-CN/amazon-bedrock#use-the-mantle-endpoint)。它需要网关服务器上的 Claude Code v2.1.283 或更高版本。早期网关版本在启动时拒绝它,因此请在添加之前升级每个副本。

498 

499下面的示例将 Mantle 放在首位,其后是一个 Amazon Bedrock 上游,用于提供 `models` 字段未列出的每个模型:

500 

501```yaml theme={null}

502upstreams:

503 - provider: mantle

504 region: us-east-1

505 models: [claude-opus-4-7, claude-haiku-4-5] # 必需

506 auth: {} # AWS 默认凭据链

507 - provider: bedrock

508 region: us-east-1

509 auth: {}

510```

511 

512下表列出 `mantle` 上游特有的字段。

513 

514| 字段 | 必需 | 描述 |

515| - | - | - |

516| `region` | 是 | AWS 区域。网关从它派生端点为 `https://bedrock-mantle.<region>.api.aws/anthropic`。 |

517| `models` | 是 | 您的 AWS 帐户在 Mantle 上获授权的模型,按客户端发送的名称命名,如 `claude-haiku-4-5`。只有这些模型会发送到此上游,其他每个模型都跳到下一个上游。 |

518| `auth` | 否 | 接受与 [Amazon Bedrock](#amazon-bedrock) 上游的 `auth` 块相同的键,遵循相同的规则。 |

519| `base_url` | 否 | 覆盖派生的端点。在末尾保留 `/anthropic` 路径。 |

520 

521为上游的 AWS 身份授予 Mantle 自己用于推理和 token 计数的 IAM 操作,[使用 Mantle 端点](/docs/zh-CN/amazon-bedrock#use-the-mantle-endpoint)中列出了这些操作。

522 

523对于网关不知道的 Mantle 模型 ID,在顶层 [`models:`](#models) 块中添加一个条目,其 `upstream_model` 将此上游的名称映射到该 ID。然后也将该条目的 `id` 放入此上游的 `models` 字段。

524 

525`bedrock` 上游的 `guardrail` 和 `assume_role` 设置不会扩展到 Mantle 提供的请求:

526 

527* **`guardrail`**:网关不对发送到 Mantle 的请求应用 [Bedrock 防护栏](#apply-an-amazon-bedrock-guardrail),因此当列出 `mantle` 上游而任何 `bedrock` 上游设置了 `guardrail` 时,网关拒绝启动。

528* **`assume_role`**:`mantle` 上游不接受 [`assume_role`](#bedrock-in-another-aws-account)。Mantle 提供的请求使用 `mantle` 上游自己的 `auth` 凭据发送,且不会[按开发人员归属](#per-developer-aws-cost-attribution)。

529 

530有关 Mantle 自身错误响应的含义,请参阅 [Mantle 端点错误](/docs/zh-CN/amazon-bedrock#mantle-endpoint-errors)。

492 531 

493<h4 id="claude-platform-on-aws">532<h4 id="claude-platform-on-aws">

494 AWS 上的 Claude Platform533 AWS 上的 Claude Platform


505 workspace_id: wrkspc_...544 workspace_id: wrkspc_...

506 auth:545 auth:

507 api_key: ${ANTHROPIC_AWS_API_KEY} # 作为 x-api-key 发送546 api_key: ${ANTHROPIC_AWS_API_KEY} # 作为 x-api-key 发送

508 # 或通过 AWS 默认凭证链的 SigV4:547 # 或通过 AWS 默认凭据链的 SigV4:

509 # auth: {}548 # auth: {}

510 # 或显式 SigV4 凭证:549 # 或显式 SigV4 凭据:

511 # auth:550 # auth:

512 # aws_access_key_id: ${AWS_ACCESS_KEY_ID}551 # aws_access_key_id: ${AWS_ACCESS_KEY_ID}

513 # aws_secret_access_key: ${AWS_SECRET_ACCESS_KEY}552 # aws_secret_access_key: ${AWS_SECRET_ACCESS_KEY}


515 # base_url: https://aws-external-anthropic.us-east-1.api.aws554 # base_url: https://aws-external-anthropic.us-east-1.api.aws

516```555```

517 556 

518平台在与 Amazon Bedrock 不同的 AWS 帐户中运行,并为其自己的服务名称 `aws-external-anthropic` 签署 SigV4 请求,因此 Bedrock 范围的 IAM 角色不授权它。`auth.api_key` 中的 API 密钥在同时设置 SigV4 凭证时优先。空 `auth` 块使用 AWS SDK 的默认凭证链,与 [Amazon Bedrock](#amazon-bedrock) 上游使用的链相同。557平台在与 Amazon Bedrock 不同的 AWS 帐户中运行,并为其自己的服务名称 `aws-external-anthropic` 签署 SigV4 请求,因此 Bedrock 范围的 IAM 角色不授权它。`auth.api_key` 中的 API 密钥在同时设置 SigV4 凭据时优先。空 `auth` 块使用 AWS SDK 的默认凭据链,与 [Amazon Bedrock](#amazon-bedrock) 上游使用的链相同。

519 558 

520| 字段 | 必需 | 描述 |559| 字段 | 必需 | 描述 |

521| - | - | - |560| - | - | - |

522| `region` | 是 | AWS 区域,小写字母、数字和连字符。网关从它派生端点为 `https://aws-external-anthropic.<region>.api.aws`。 |561| `region` | 是 | AWS 区域,小写字母、数字和连字符。网关从它派生端点为 `https://aws-external-anthropic.<region>.api.aws`。 |

523| `workspace_id` | 是 | 在每个请求上作为标头发送;平台需要它 |562| `workspace_id` | 是 | 在每个请求上作为标头发送;平台需要它 |

524| `auth.api_key` | 否 | 平台的 API 密钥,作为 `x-api-key` 发送。不是持有者令牌:两种身份验证模式是 API 密钥或 SigV4。 |563| `auth.api_key` | 否 | 平台的 API 密钥,作为 `x-api-key` 发送。不是持有者令牌:两种身份验证模式是 API 密钥或 SigV4。 |

525| `auth.aws_access_key_id` / `auth.aws_secret_access_key` | 否 | 显式 SigV4 凭证。在没有另一个的情况下设置一个在启动时失败。`auth.aws_session_token` 在它们旁边被接受。 |564| `auth.aws_access_key_id` / `auth.aws_secret_access_key` | 否 | 显式 SigV4 凭据。在没有另一个的情况下设置一个在启动时失败。`auth.aws_session_token` 在它们旁边被接受。 |

526| `base_url` | 否 | 覆盖派生的端点 |565| `base_url` | 否 | 覆盖派生的端点 |

527 566 

528因为平台解析第一方模型 ID,内置目录路由到它而不带 [`models:`](#models) 块。当您策划 `models:` 列表时,使用第一方 ID 键入条目 `anthropicAws:`。567因为平台解析第一方模型 ID,内置目录路由到它而不带 [`models:`](#models) 块。当您策划 `models:` 列表时,使用第一方 ID 键入条目 `anthropicAws:`。


538 - provider: vertex577 - provider: vertex

539 region: us-east5578 region: us-east5

540 project_id: example-prod579 project_id: example-prod

541 auth: {} # 首选:应用默认凭证580 auth: {} # 首选:应用默认凭据

542 # 或服务帐户密钥文件:581 # 或服务帐户密钥文件:

543 # auth: { service_account_json: /secrets/sa.json }582 # auth: { service_account_json: /secrets/sa.json }

544 # 为私有服务连接覆盖 aiplatform 端点:583 # 为私有服务连接覆盖 aiplatform 端点:

545 # base_url: https://us-east5-aiplatform.p.googleapis.com584 # base_url: https://us-east5-aiplatform.p.googleapis.com

546```585```

547 586 

548空 `auth` 块使用应用默认凭证:`GOOGLE_APPLICATION_CREDENTIALS`、GCE 元数据或 GKE Workload Identity。服务帐户 JSON 密钥文件被支持但不鼓励;使用 Workload Identity 或将服务帐户附加到 GCE 或 Cloud Run 实例。587空 `auth` 块使用应用默认凭据:`GOOGLE_APPLICATION_CREDENTIALS`、GCE 元数据或 GKE Workload Identity。服务帐户 JSON 密钥文件被支持但不鼓励;使用 Workload Identity 或将服务帐户附加到 GCE 或 Cloud Run 实例。

549 588 

550设置 `region: global` 以使用 [Google Cloud Agent Platform 的全局端点](https://cloud.google.com/vertex-ai/generative-ai/docs/learn/locations)而不是区域端点。Google 然后将每个请求路由到可用区域,因此您不跟踪按区域模型可用性。设置特定区域将每个请求固定到它。589设置 `region: global` 以使用 [Google Cloud Agent Platform 的全局端点](https://cloud.google.com/vertex-ai/generative-ai/docs/learn/locations)而不是区域端点。Google 然后将每个请求路由到可用区域,因此您不跟踪按区域模型可用性。设置特定区域将每个请求固定到它。

551 590 


573 # api_key: ${FOUNDRY_API_KEY}612 # api_key: ${FOUNDRY_API_KEY}

574```613```

575 614 

576`use_azure_ad: true` 通过 `DefaultAzureCredential` 解析:AKS、ACI 或 App Service 上的托管身份;Azure CLI;或环境凭证。API 密钥有效但是项目范围的,不自动轮换。Microsoft Foundry 的端点从 `resource:` 派生;为主权云(如 Azure Government)设置可选 `base_url` 以覆盖它。615`use_azure_ad: true` 通过 `DefaultAzureCredential` 解析:AKS、ACI 或 App Service 上的托管身份;Azure CLI;或环境凭据。API 密钥有效但是项目范围的,不自动轮换。Microsoft Foundry 的端点从 `resource:` 派生;为主权云(如 Azure Government)设置可选 `base_url` 以覆盖它。

577 616 

578| 设置 | 如何 |617| 设置 | 如何 |

579| - | - |618| - | - |


617 656 

618| 网关发送到此上游的请求 | 携带 `headers:` |657| 网关发送到此上游的请求 | 携带 `headers:` |

619| - | - |658| - | - |

620| `/v1/messages`,流式或不流式,和 `/v1/messages/count_tokens` | 是 |659| `/v1/messages`,流式或非流式,和 `/v1/messages/count_tokens` | 是 |

621| 从另一个上游故障转移的请求 | 是,仅此上游的 `headers:` |660| 从另一个上游故障转移的请求 | 是,仅此上游的 `headers:` |

622| Amazon Bedrock 的 `CountTokens` 调用用于客户端放弃的请求 | 否 |661| Amazon Bedrock 的 `CountTokens` 调用用于客户端放弃的请求 | 否 |

623| Workload Identity Federation 令牌交换 | 否 |662| Workload Identity Federation 令牌交换 | 否 |


634 多个上游673 多个上游

635</h4>674</h4>

636 675 

637相同提供商可以出现多次,具有不同的 `name:`。这涵盖不同的区域、通过不同凭证链的不同帐户、预配吞吐量与按需,以及跨提供商故障转移。676相同提供商可以出现多次,具有不同的 `name:`。这涵盖不同的区域、通过不同凭据链的不同帐户、预配吞吐量与按需,以及跨提供商故障转移。

638 677 

639网关按顺序尝试上游。`5xx`、`429`、`401`、`403`、`404`、超时和缺失端点 (`501`) 故障转移;其他 `4xx` 不会。678网关按顺序尝试上游。`5xx`、`429`、`401`、`403`、`404`、超时和缺失端点 (`501`) 故障转移;其他 `4xx` 不会。

640 679 


689| 杠杆 | 如何 |728| 杠杆 | 如何 |

690| - | - |729| - | - |

691| 不同区域 | 每个区域一个 Amazon Bedrock 上游,每个都有自己的 `region:`。使用 [`auto_include_builtin_models: true`](#models) 跨区域推理配置文件自动路由;对于区域固定部署,使用 `models:` 块。 |730| 不同区域 | 每个区域一个 Amazon Bedrock 上游,每个都有自己的 `region:`。使用 [`auto_include_builtin_models: true`](#models) 跨区域推理配置文件自动路由;对于区域固定部署,使用 `models:` 块。 |

692| 不同帐户 | 每个帐户一个 Amazon Bedrock 上游。默认链 (`auth: {}`) 使用 pod 的身份;对于第二个帐户,添加 [`assume_role`](#bedrock-in-another-aws-account) 以使用短期凭证到达它,或在 `auth:` 中设置显式凭证或持有者令牌。 |731| 不同帐户 | 每个帐户一个 Amazon Bedrock 上游。默认链 (`auth: {}`) 使用 pod 的身份;对于第二个帐户,添加 [`assume_role`](#bedrock-in-another-aws-account) 以使用短期凭据到达它,或在 `auth:` 中设置显式凭据或持有者令牌。 |

693| 预配吞吐量 | 将模型映射到该上游名称的 `models:` 中的预配吞吐量 ARN。其他上游保持按需 ID,因此 PT 容量在故障转移前耗尽。 |732| 预配吞吐量 | 将模型映射到该上游名称的 `models:` 中的预配吞吐量 ARN。其他上游保持按需 ID,因此 PT 容量在故障转移前耗尽。 |

694| VPC / FIPS 端点 | 在上游上设置 `base_url:` 到您的 VPC 端点或 FIPS 端点 URL |733| VPC / FIPS 端点 | 在上游上设置 `base_url:` 到您的 VPC 端点或 FIPS 端点 URL |

695| 模型范围路由 | 仅自定义模型 `id`,不是内置 Claude 模型,跳过其 `upstream_model:` 映射中不存在的上游。网关按顺序在每个上游上尝试内置模型,并在映射没有条目时使用提供商的默认 ID,因此对于内置模型,映射改变上游接收的 ID 而不是它是否被尝试;拒绝 ID 的上游遵循与任何其他上游错误相同的[故障转移规则](#upstreams);不在其 `upstream_model:` 映射中的上游被跳过,因此请求和放弃请求的令牌计数都无法故障转移到另一个帐户。内置模型名称仍在每个上游按顺序尝试,包括这个,到达它的请求使用相同的角色签署,因此除非其帐户也应该提供它们,否则最后列出此上游。 |734| 模型范围路由 | 仅自定义模型 `id`(即不是内置 Claude 模型的 id)会跳过其 `upstream_model:` 映射中不存在的上游。`mantle` 上游仅针对其 [`models` 字段](#amazon-bedrock-mantle-endpoint)中列出的模型被尝试。在其他每个上游上,网关按顺序尝试内置模型,并在映射没有条目时使用提供商的默认 ID,因此对于内置模型,映射改变上游接收的 ID 而不是它是否被尝试;拒绝 ID 的上游遵循与任何其他上游错误相同的[故障转移规则](#upstreams)。 |

696 735 

697在云提供商之间或直接 Anthropic API 之间故障转移改变哪个协议、地理位置和其他条款控制请求。736在云提供商之间或直接 Anthropic API 之间故障转移改变哪个协议、地理位置和其他条款控制请求。

698 737 


848 - match: {}887 - match: {}

849 cli:888 cli:

850 availableModels: [claude-opus-4-8, claude-sonnet-4-6, claude-haiku-4-5]889 availableModels: [claude-opus-4-8, claude-sonnet-4-6, claude-haiku-4-5]

890 # 使 /model 中的 Default 选项在每个策略的

891 # 列表内解析。eng-contractors 策略继承 enforceAvailableModels。

892 enforceAvailableModels: true

851```893```

852 894 

853`match: {}` 全部捕获,按惯例列在最后,被视为基础层。每个其他策略从全部捕获继承它不设置的任何键,因此每个角色条目只需列出与组织默认值不同的内容。合并规则取决于键类型:895`match: {}` 全部捕获,按惯例列在最后,被视为基础层。每个其他策略从全部捕获继承它不设置的任何键,因此每个角色条目只需列出与组织默认值不同的内容。合并规则取决于键类型:


856* **拒绝列表和 hook 数组**:`permissions.deny`、`permissions.ask`、`disabledMcpjsonServers`、`deniedMcpServers`、`blockedMarketplaces` 和每个 `hooks` 事件类型数组。这些取基础和策略的并集,因此组织范围的拒绝或审计 hook 不能被每个角色覆盖意外删除。898* **拒绝列表和 hook 数组**:`permissions.deny`、`permissions.ask`、`disabledMcpjsonServers`、`deniedMcpServers`、`blockedMarketplaces` 和每个 `hooks` 事件类型数组。这些取基础和策略的并集,因此组织范围的拒绝或审计 hook 不能被每个角色覆盖意外删除。

857* **记录类型键**:`env`、`modelOverrides` 和 `skillOverrides`。这些浅合并,因此每个角色 `env` 块覆盖它设置的键并从基础继承其余的。899* **记录类型键**:`env`、`modelOverrides` 和 `skillOverrides`。这些浅合并,因此每个角色 `env` 块覆盖它设置的键并从基础继承其余的。

858 900 

859`availableModels` 也在 `/v1/messages` 服务器端强制执行,因此被拒绝的模型返回 `400`,无论客户端发送什么。901`availableModels` 也在 `/v1/messages` 服务器端强制执行,因此被拒绝的模型返回 `400`,无论客户端发送什么。空列表会拒绝所有模型。该检查还涵盖开发者选择模型之前会话开始时使用的模型,因此请[让会话从策略允许的模型开始](#start-sessions-on-a-model-the-policy-allows)。

860 902 

861网关在中继请求之前验证 `model` 值本身,因此格式错误的值永远不会到达上游。它在两种情况下以 `400` 拒绝请求:903网关在中继请求之前验证 `model` 值本身,因此格式错误的值永远不会到达上游。它在两种情况下以 `400` 拒绝请求:

862 904 


883 * **组成员身份**:更改用户的组成员身份更改哪个策略匹配他们。这在下一个会话重新铸造时生效,意味着下一个静默刷新,受 `session.ttl_hours` 限制。925 * **组成员身份**:更改用户的组成员身份更改哪个策略匹配他们。这在下一个会话重新铸造时生效,意味着下一个静默刷新,受 `session.ttl_hours` 限制。

884</Note>926</Note>

885 927 

928<h4 id="start-sessions-on-a-model-the-policy-allows">

929 让会话从策略允许的模型开始

930</h4>

931 

932如果 `availableModels` 未包含 Claude Code 的默认模型,会话会收到 `400` 响应,直到开发者选择一个已列出的模型,例如通过 `/model`。在网关会话中,默认模型是 `opus` 别名解析到的 Opus 模型,仅设置 `availableModels` 不会改变它。

933 

934要解决此问题,请在同一 `cli` 块中设置 [`enforceAvailableModels: true`](/docs/zh-CN/model-config#enforce-the-allowlist-for-the-default-model),然后检查列表中包含哪种条目:

935 

936* **别名(如 `sonnet`)或内置 ID(如 `claude-sonnet-4-6`)**:会话从其中一个模型开始,`/model` 中的 Default 选项解析为该模型

937* **列表中没有别名或内置 ID**:会话可能仍从内置默认模型开始,因此还要在该策略的 `cli` 块中将 [`model`](/docs/zh-CN/model-config#control-the-model-users-run-on) 设置为已列出的 ID 之一

938 

939此策略列出一个由 [`models`](#models) 定义的自定义 ID,并让会话从该 ID 开始:

940 

941```yaml theme={null}

942managed:

943 policies:

944 - match: { groups: [restricted-projects] }

945 cli:

946 availableModels: [claude-opus-restricted]

947 enforceAvailableModels: true

948 model: claude-opus-restricted

949```

950 

886<h4 id="matcher-values-that-stop-the-gateway-at-boot">951<h4 id="matcher-values-that-stop-the-gateway-at-boot">

887 在启动时停止网关的匹配器值952 在启动时停止网关的匹配器值

888</h4>953</h4>


920 cli:985 cli:

921 # 模型访问(也在 /v1/messages 服务器端强制执行)986 # 模型访问(也在 /v1/messages 服务器端强制执行)

922 availableModels: [claude-opus-4-8, claude-sonnet-4-6, claude-haiku-4-5]987 availableModels: [claude-opus-4-8, claude-sonnet-4-6, claude-haiku-4-5]

988 enforceAvailableModels: true # Default 在列表内解析

923 989 

924 # 权限策略990 # 权限策略

925 permissions:991 permissions:


1041 - match: { groups: [eng-contractors] }1107 - match: { groups: [eng-contractors] }

1042 cli:1108 cli:

1043 availableModels: [claude-sonnet-4-6]1109 availableModels: [claude-sonnet-4-6]

1110 enforceAvailableModels: true

1044 desktop:1111 desktop:

1045 isLocalDevMcpEnabled: false1112 isLocalDevMcpEnabled: false

1046 disableAutoUpdates: true1113 disableAutoUpdates: true


1342 完整示例1409 完整示例

1343</h2>1410</h2>

1344 1411 

1345此完整参考配置演示了每个核心部分;[HTTP 调整块](#http-tuning)保持其默认值。复制它,删除你不需要的,并填入你的值。[快速入门](/docs/zh-CN/claude-apps-gateway#quickstart)中的配置是此的最小版本。1412此完整参考配置演示了每个核心部分;[HTTP 调整块](#http-tuning)保持其默认值。复制它,删除您不需要的,并填入您的值。[快速入门](/docs/zh-CN/claude-apps-gateway#quickstart)中的配置是此的最小版本。

1346 1413 

1347```yaml gateway.yaml theme={null}1414```yaml gateway.yaml theme={null}

1348# 运行方式:1415# 运行方式:


1434 # region: us-east-11501 # region: us-east-1

1435 # auth: {}1502 # auth: {}

1436 1503 

1504 # - provider: mantle

1505 # region: us-east-1

1506 # models: [claude-opus-4-8, claude-opus-4-7, claude-haiku-4-5]

1507 # auth: {}

1508 

1437 # - provider: anthropicAws1509 # - provider: anthropicAws

1438 # region: us-east-11510 # region: us-east-1

1439 # workspace_id: wrkspc_...1511 # workspace_id: wrkspc_...


1456 upstream_model:1528 upstream_model:

1457 anthropic: claude-opus-4-81529 anthropic: claude-opus-4-8

1458 # bedrock: us.anthropic.claude-opus-4-81530 # bedrock: us.anthropic.claude-opus-4-8

1531 # mantle: anthropic.claude-opus-4-8

1459 # anthropicAws: claude-opus-4-81532 # anthropicAws: claude-opus-4-8

1460 # vertex: claude-opus-4-81533 # vertex: claude-opus-4-8

1461 # foundry: <your-opus-deployment-name>1534 # foundry: <your-opus-deployment-name>


1473 - match: { groups: [contractors] }1546 - match: { groups: [contractors] }

1474 cli:1547 cli:

1475 availableModels: [claude-haiku-4-5]1548 availableModels: [claude-haiku-4-5]

1476 # 将默认选择器选项限制为 availableModels 而不是

1477 # 层默认,因此承包商不会在默认上获得 400。

1478 enforceAvailableModels: true

1479 # allow 自动批准这些工具;它不阻止其余的。1549 # allow 自动批准这些工具;它不阻止其余的。

1480 # 添加拒绝规则以限制工具。1550 # 添加拒绝规则以限制工具。

1481 permissions: { allow: [Read, Grep] }1551 permissions: { allow: [Read, Grep] }

1482 - match: {}1552 - match: {}

1483 cli:1553 cli:

1484 availableModels: [claude-opus-4-8, claude-sonnet-4-6, claude-haiku-4-5]1554 availableModels: [claude-opus-4-8, claude-sonnet-4-6, claude-haiku-4-5]

1555 # 将默认选择器选项限制为每个策略的 availableModels,

1556 # 而不是内置默认值,因此任何角色都不会在默认上获得 400。

1557 # 承包商策略继承此键。

1558 enforceAvailableModels: true

1485 permissions:1559 permissions:

1486 allow: [Read, Grep, Bash, Edit]1560 allow: [Read, Grep, Bash, Edit]

1487 deny: ["WebFetch"]1561 deny: ["WebFetch"]

Details

429 429 

430当请求头总大小超过 256 KiB,或者在您设置了 [`limits.max_request_header_bytes`](/docs/zh-CN/claude-apps-gateway-config#http-tuning) 时超过该值,网关会返回 `431`。对于这些请求,网关不会写入任何日志行或审计事件。v2.1.284 之前的网关版本在超过 16 KiB 时返回 `431`。430当请求头总大小超过 256 KiB,或者在您设置了 [`limits.max_request_header_bytes`](/docs/zh-CN/claude-apps-gateway-config#http-tuning) 时超过该值,网关会返回 `431`。对于这些请求,网关不会写入任何日志行或审计事件。v2.1.284 之前的网关版本在超过 16 KiB 时返回 `431`。

431 431 

432需要更改的内容取决于网关的版本和配置:432从以下各项中第一个适用于您网关的情况开始处理:

433 433 

434* **网关版本早于 v2.1.284**:升级网关434* **网关版本早于 v2.1.284**:升级网关

435* **设置了 `limits.max_request_header_bytes`**:提高该值或删除该键435* **设置了 `limits.max_request_header_bytes`**:提高该值或删除该键

436* **以上均不适用,或之后仍出现 `431`**:让您的 IdP 发出更少的组。[身份提供者设置](#identity-provider-setup)介绍了 Okta、Microsoft Entra ID 和 Google Workspace 如何提供组436* **以上均不适用,或之后仍出现 `431`**:让您的 IdP 发出更少的组。[身份提供者设置](#identity-provider-setup)介绍了 Okta、Microsoft Entra ID 和 Google Workspace 如何提供组

437 437 

438精简组声明时,请保留您在以下设置中指定的组,这些设置决定开发者的访问权限、策略和支出上限:

439 

440* **[`oidc.allowed_groups`](/docs/zh-CN/claude-apps-gateway-config#oidc)**:决定谁可以登录

441* **[`admin.admin_groups`](/docs/zh-CN/claude-apps-gateway-config#admin)**:决定谁可以使用其网关会话调用管理 API

442* **[`managed.policies`](/docs/zh-CN/claude-apps-gateway-config#managed) 中的 `match.groups`**:决定哪个策略适用于开发者

443* **`rbac_group` [支出上限](/docs/zh-CN/claude-apps-gateway-spend-limits)**:决定哪些组上限适用于开发者

444 

438<h2 id="related">445<h2 id="related">

439 相关446 相关

440</h2>447</h2>

Details

12 12 

13云会话是在云基础设施上运行的 Claude Code 会话,而不是在你的机器上运行。默认情况下,它在 Anthropic 管理的基础设施上运行,或在路由到你的组织的[自托管环境](/docs/zh-CN/self-hosted-environments)时在那里运行。即使关闭笔记本电脑后,会话也会继续运行,你可以从任何设备检查或控制它。13云会话是在云基础设施上运行的 Claude Code 会话,而不是在你的机器上运行。默认情况下,它在 Anthropic 管理的基础设施上运行,或在路由到你的组织的[自托管环境](/docs/zh-CN/self-hosted-environments)时在那里运行。即使关闭笔记本电脑后,会话也会继续运行,你可以从任何设备检查或控制它。

14 14 

15要让云端会话从 GitHub 克隆代码并推送分支,请使用其中一种 [GitHub 连接方式](#github-authentication-options)连接 GitHub。如果您的仓库位于 GitLab、Bitbucket 或其他托管平台上,请参阅[平台限制](#limitations)了解哪些功能可用。

16 

15你可以从以下任何界面启动云会话:17你可以从以下任何界面启动云会话:

16 18 

17* **浏览器**:[claude.ai/code](https://claude.ai/code),也称为网络上的 Claude Code19* **浏览器**:[claude.ai/code](https://claude.ai/code),也称为网络上的 Claude Code


20* **终端**:[`claude --cloud`](#from-terminal-to-cloud)22* **终端**:[`claude --cloud`](#from-terminal-to-cloud)

21* **例程**:[计划和触发的运行](/docs/zh-CN/routines)每次都作为云会话运行23* **例程**:[计划和触发的运行](/docs/zh-CN/routines)每次都作为云会话运行

22 24 

23要让 Claude 为一项工作启动并跟踪许多云会话,请使用[项目](/docs/zh-CN/claude-projects)。在你的终端、IDE 或选择了 **Local** 的桌面应用中的会话在你自己的机器上运行。要从手机或浏览器控制这些本地会话之一,请使用[远程控制](/docs/zh-CN/remote-control)。25完成设置后,可使用本页在终端和云端之间移动工作、管理和共享会话、为 Pull Request 启用自动修复,以及进行故障排除。

24 

25<Tip>

26 初次使用云会话?从[入门](/docs/zh-CN/web-quickstart)开始,连接你的 GitHub 账户并提交你的第一个任务。

27</Tip>

28 26 

29本页涵盖:27<Note>

28 以下情况在其他页面中介绍:

30 29 

31* [云环境](#cloud-environments):会话运行的位置,以及在哪里配置30 * **启动您的第一个云端会话**:[云端会话入门](/docs/zh-CN/web-quickstart)介绍如何连接 GitHub,并引导您在浏览器中完成一个任务

32* [GitHub 身份验证选项](#github-authentication-options):两种连接 GitHub 的方式31 * **为一项工作使用多个云端会话**:[项目](/docs/zh-CN/claude-projects)可让 Claude 为您启动并跟踪这些会话

33* [在终端和云之间移动任务](#move-tasks-between-terminal-and-cloud),使用 `--cloud` 和 `--teleport`32 * **从其他设备控制本地会话**:在终端、IDE 或选择了 **Local** 的桌面应用中的会话在您的机器上运行,[Remote Control](/docs/zh-CN/remote-control) 让您可以从手机或浏览器访问这些会话

34* [处理会话](#work-with-sessions):权限模式、审查、共享、归档、删除33</Note>

35* [自动修复拉取请求](#auto-fix-pull-requests):自动响应 CI 失败和审查评论

36* [安全和隔离](#security-and-isolation):会话如何隔离

37* [限制](#limitations):速率限制和平台限制

38 34 

39<h2 id="cloud-environments">35<h2 id="cloud-environments">

40 云环境36 云环境

41</h2>37</h2>

42 38 

43每个云会话都在一个[云环境](/docs/zh-CN/cloud-environments)中运行,这是一个保存的配置,控制网络访问、环境变量和设置脚本。如果你还没有环境,入门会设置一个**默认**环境,具有[**受信任**网络访问](/docs/zh-CN/cloud-environments#access-levels),要么为你创建它,要么要求你创建它。请参阅[默认环境](/docs/zh-CN/cloud-environments#the-default-environment),了解在你的计划上会发生哪种情况,以及当你有多个环境时会话如何选择环境。39每个云端会话都在一个[云环境](/docs/zh-CN/cloud-environments)中运行,这是一个保存的配置,控制网络访问、环境变量和设置脚本。

44 40 

45相同的环境适用于你启动云会话的任何地方:网络、终端、[Claude Tag](https://claude.com/docs/claude-tag/overview)、[routines](/docs/zh-CN/routines) 以及移动和 Desktop 应用。Claude Tag 频道会话仅使用组织级环境,要么是[共享环境](/docs/zh-CN/cloud-environments#organization-shared-environments),要么是[自托管环境](/docs/zh-CN/self-hosted-environments)。41* **您的第一个环境**:如果您还没有环境,入门流程会设置一个具有[**受信任**网络访问](/docs/zh-CN/cloud-environments#access-levels)的**默认**环境,要么为您创建它,要么要求您创建它。请参阅[默认环境](/docs/zh-CN/cloud-environments#the-default-environment),了解在您的计划上会发生哪种情况

46 42* **会话使用哪个环境**:请参阅[默认环境](/docs/zh-CN/cloud-environments#the-default-environment),了解当您有多个环境时会话如何选择环境

47请参阅[配置云环境](/docs/zh-CN/cloud-environments)以更改环境允许的内容、设置变量或添加设置脚本,以及[已安装的工具](/docs/zh-CN/cloud-environments#installed-tools)以了解会话在没有任何配置的情况下包含的内容。43* **更改会话可以访问的内容或在启动时运行的内容**:请参阅[配置云环境](/docs/zh-CN/cloud-environments)

44* **无需任何配置即已安装的内容**:请参阅[已安装的工具](/docs/zh-CN/cloud-environments#installed-tools)

48 45 

49<h2 id="github-authentication-options">46<h2 id="github-authentication-options">

50 GitHub 身份验证选项47 GitHub 身份验证选项


57| **GitHub App** | 在[网络快速入门](/docs/zh-CN/web-quickstart)期间授权 Claude GitHub App | 任何公开存储库,以及安装了 Claude GitHub App 的私有存储库 | 浏览器入门;想要[自动修复](#auto-fix-pull-requests)的团队 |54| **GitHub App** | 在[网络快速入门](/docs/zh-CN/web-quickstart)期间授权 Claude GitHub App | 任何公开存储库,以及安装了 Claude GitHub App 的私有存储库 | 浏览器入门;想要[自动修复](#auto-fix-pull-requests)的团队 |

58| **`/web-setup`** | 在终端中运行 `/web-setup` 以将本地 `gh` CLI 令牌发送到你的 Claude 账户 | 你的 `gh` 令牌可以访问的任何存储库,无论是否安装了 Claude GitHub App | 已经使用 `gh` 的个人开发者 |55| **`/web-setup`** | 在终端中运行 `/web-setup` 以将本地 `gh` CLI 令牌发送到你的 Claude 账户 | 你的 `gh` 令牌可以访问的任何存储库,无论是否安装了 Claude GitHub App | 已经使用 `gh` 的个人开发者 |

59 56 

60在存储库上安装 Claude GitHub App 也会为其中的拉取请求启用[自动修复](#auto-fix-pull-requests)。57以下功能依赖于仓库上已安装 Claude GitHub App:

61 58 

62[项目](/docs/zh-CN/claude-projects)中的线程需要在每个克隆的存储库上安装 Claude GitHub App,无论你使用哪种连接方法。请参阅[设置 GitHub 访问权限](/docs/zh-CN/claude-projects#set-up-github-access)。59* **自动修复**:在仓库上安装 Claude GitHub App 也会为其中的 Pull Request 启用[自动修复](#auto-fix-pull-requests)

60* **项目**:[项目](/docs/zh-CN/claude-projects)中的线程需要在其克隆的每个仓库上安装 Claude GitHub App,无论您使用哪种方法连接。请参阅[设置 GitHub 访问权限](/docs/zh-CN/claude-projects#set-up-github-access)

63 61 

64在 Anthropic 托管的环境中,你的 GitHub 凭证在 Anthropic 的服务器上保持加密状态,永远不会进入会话的虚拟机。来自虚拟机的 GitHub 操作通过 [GitHub 代理](/docs/zh-CN/cloud-environments#github-proxy)进行,它在服务器端附加凭证。62在 Anthropic 托管的环境中,你的 GitHub 凭证在 Anthropic 的服务器上保持加密状态,永远不会进入会话的虚拟机。来自虚拟机的 GitHub 操作通过 [GitHub 代理](/docs/zh-CN/cloud-environments#github-proxy)进行,它在服务器端附加凭证。

65 63 

66有关 `/schedule` 如何在创建 routine 之前检查存储库访问权限,请参阅[存储库和分支权限](/docs/zh-CN/routines#repositories-and-branch-permissions)。有关 `/web-setup` 演练(包括 `/web-setup` 存储的内容以及如何删除它),请参阅[从终端连接](/docs/zh-CN/web-quickstart#connect-from-your-terminal)。64有关 `/web-setup` 的分步说明(包括 `/web-setup` 存储的内容以及如何删除它),请参阅[从终端连接](/docs/zh-CN/web-quickstart#connect-from-your-terminal)。

67 

68快速网络设置是一个组织设置,允许成员使用 `/web-setup` 连接 GitHub,在浏览器入门期间跳过 Claude GitHub App 安装提示,并让浏览器入门为他们创建[**默认**环境](/docs/zh-CN/cloud-environments#the-default-environment),而不是显示环境表单。在 Team 和 Enterprise 计划上,默认情况下它是关闭的,这会隐藏 `/web-setup`。[所有者](/docs/zh-CN/server-managed-settings#access-control)可以在 [**Admin settings > Claude Code**](https://claude.ai/admin-settings/claude-code) 处使用**快速网络设置**切换来打开它。

69 65 

70<Note>66<Note>

71 启用了[零数据保留](/docs/zh-CN/zero-data-retention)的组织无法使用 `/web-setup` 或其他云会话功能。67 启用了[零数据保留](/docs/zh-CN/zero-data-retention)的组织无法使用 `/web-setup` 或其他云会话功能。

72</Note>68</Note>

73 69 

70<h3 id="quick-setup-for-team-and-enterprise">

71 面向 Team 和 Enterprise 的快速设置

72</h3>

73 

74快速设置是一项组织设置,可减少成员在 GitHub 和环境设置中的步骤。在 Team 和 Enterprise 计划中,该设置默认处于关闭状态。

75 

76启用后,成员会看到以下变化:

77 

78* **`/web-setup`**:成员可以使用 `/web-setup` 连接 GitHub。该设置关闭时,此命令处于隐藏状态

79* **GitHub App 提示**:浏览器入门引导会跳过 Claude GitHub App 安装提示

80* **第一个环境**:浏览器入门引导会为成员创建 [**Default** 环境](/docs/zh-CN/cloud-environments#the-default-environment),而不是显示环境表单

81 

82[所有者](/docs/zh-CN/server-managed-settings#access-control)可以在 [**Organization settings > Claude Code**](https://claude.ai/admin-settings/claude-code) 处通过 **Quick setup** 开关启用该设置。

83 

74<h2 id="move-tasks-between-terminal-and-cloud">84<h2 id="move-tasks-between-terminal-and-cloud">

75 在终端和云之间移动任务85 在终端和云之间移动任务

76</h2>86</h2>


78这些工作流需要 [Claude Code CLI](/docs/zh-CN/quickstart) 登录到同一个 claude.ai 账户。您可以从终端启动新的云会话,或将云会话拉入终端以继续本地工作。云会话即使在您关闭笔记本电脑后也会持续存在,您可以从任何地方(包括 Claude 移动应用)监控它们。88这些工作流需要 [Claude Code CLI](/docs/zh-CN/quickstart) 登录到同一个 claude.ai 账户。您可以从终端启动新的云会话,或将云会话拉入终端以继续本地工作。云会话即使在您关闭笔记本电脑后也会持续存在,您可以从任何地方(包括 Claude 移动应用)监控它们。

79 89 

80<Note>90<Note>

81 从 CLI 来看,会话切换是单向的:您可以使用 `--teleport` 将云会话拉入终端,但无法将现有的终端会话推送到云。带有任务描述的 `--cloud` 标志为您当前的存储库创建新的云会话;带有 `-p` 和会话 ID 或 claude.ai/code URL 时,它会改为 [将消息排队到该现有会话](/docs/zh-CN/claude-code-on-the-web#send-follow-ups-from-the-cli)。[Desktop 应用](/docs/zh-CN/desktop#continue-in-another-surface) 提供了一个"继续在"菜单,可以将本地会话发送到云。91 从 CLI 来看,会话切换是单向的:您可以使用 `--teleport` 将云端会话拉入终端,但无法将现有的终端会话推送到云端。带有任务描述的 `--cloud` 标志会为您当前的仓库创建新的云端会话;带有 `-p` 和会话 ID 或 claude.ai/code URL 时,它会改为[将消息排队到该现有会话](/docs/zh-CN/claude-code-on-the-web#send-follow-ups-from-the-cli)。[Desktop 应用](/docs/zh-CN/desktop#continue-in-another-surface)可以通过其 **Open in** 菜单,将其 Code 标签页中的本地会话发送到云端。

82</Note>92</Note>

83 93 

84<h3 id="from-terminal-to-cloud">94<h3 id="from-terminal-to-cloud">


173 从 CLI 发送后续消息183 从 CLI 发送后续消息

174</h3>184</h3>

175 185 

176一旦云会话运行,无论它在哪里执行,都可以从任何您使用 `claude auth login` 登录的机器上的 `claude` CLI 向它发送后续消息。CLI 使用您的 Anthropic 账户凭据进行身份验证,不发送任何本地会话状态,因此该命令不需要从启动会话的机器运行,并且在每个 shell 中都是相同的,包括 PowerShell。186一旦云端会话运行,无论它在哪里执行,都可以从任何您使用 `claude auth login` 登录的机器上的 `claude` CLI 向它发送后续消息。CLI 使用您的 Anthropic 账户凭据进行身份验证,不发送任何本地会话状态,因此该命令不需要从启动会话的机器运行。

177 187 

178该命令发布一条消息并退出:188该命令发布一条消息并退出:

179 189 


189 `--cloud` 需要 Anthropic 账户。当 Claude Code 为 Amazon Bedrock、Google Cloud 的 Agent Platform 或其他第三方提供商配置时,它不可用。仅通过 `ANTHROPIC_BASE_URL` 配置的 [LLM 网关](/docs/zh-CN/llm-gateway) 不算作此检查的第三方提供商,但您仍需要使用 `claude auth login` 登录。您组织的 `allow_remote_sessions` 策略也必须启用。所有者可以在 claude.ai/admin-settings/claude-code 的 Claude Code 管理设置中打开它。199 `--cloud` 需要 Anthropic 账户。当 Claude Code 为 Amazon Bedrock、Google Cloud 的 Agent Platform 或其他第三方提供商配置时,它不可用。仅通过 `ANTHROPIC_BASE_URL` 配置的 [LLM 网关](/docs/zh-CN/llm-gateway) 不算作此检查的第三方提供商,但您仍需要使用 `claude auth login` 登录。您组织的 `allow_remote_sessions` 策略也必须启用。所有者可以在 claude.ai/admin-settings/claude-code 的 Claude Code 管理设置中打开它。

190</Note>200</Note>

191 201 

192<h4 id="output-and-errors">202<h4 id="output">

193 输出和错误203 输出

194</h4>204</h4>

195 205 

196成功时,该命令打印会话 ID 和查看会话的链接:206成功时,该命令打印会话 ID 和查看会话的链接:


203 213 

204传递 `--output-format json` 以获得机器可读的结果:成功时为 `{ok, session_id, url}`,或发送失败时为 `{ok: false, session_id, error}`,例如当会话缺失或已存档时。配置错误(例如不支持的提供商或禁用的组织策略)打印到 stderr,不带 JSON。`--output-format stream-json` 不支持 `--cloud <session-id>`。214传递 `--output-format json` 以获得机器可读的结果:成功时为 `{ok, session_id, url}`,或发送失败时为 `{ok: false, session_id, error}`,例如当会话缺失或已存档时。配置错误(例如不支持的提供商或禁用的组织策略)打印到 stderr,不带 JSON。`--output-format stream-json` 不支持 `--cloud <session-id>`。

205 215 

206CLI 在错误前加上 `Error: ` 前缀。失败的传递被包装为 `failed to send message to cloud session <id>: <reason>`。216如果发送失败,请参阅[发送到云端会话时的错误](#errors-when-sending-to-a-cloud-session)。

207 

208| 消息 | 含义 |

209| - | - |

210| `Cloud sessions aren't available with <provider>. They run on Anthropic's infrastructure and require an Anthropic account.` | Claude Code 为第三方提供商配置。该消息使用您的配置使用的标签命名提供商,例如 `Amazon Bedrock` 或 `Google Vertex AI`。删除该提供商的配置,例如通过取消设置 `CLAUDE_CODE_USE_BEDROCK`,并使用 Anthropic 账户登录(`claude auth login`)。 |

211| `Cloud sessions are disabled by your organization's policy. Contact your organization admin to enable them.` | `allow_remote_sessions` 组织策略已关闭。 |

212| `Couldn't verify your organization's policy for cloud sessions. Check your network connection and try again.` | Claude Code 无法获取您的组织策略,因此它拒绝发送而不是假设云会话被允许。检查您的网络连接并重试。 |

213| `Attaching to an existing cloud session is not enabled for your account.` | 您运行了 `--cloud <session-id>` 而没有 `-p`。使用 `claude -p "your message" --cloud <session-id>` 发送消息。 |

214| `Session not found: <id>` | ID 或 URL 与您可以访问的会话不匹配。根据会话的 claude.ai/code URL 检查它。 |

215| `cloud session <id> is archived and cannot accept new messages` | 会话已被存档。改为启动新会话。 |

216 217 

217<h3 id="from-cloud-to-terminal">218<h3 id="from-cloud-to-terminal">

218 从云到终端219 从云到终端


239| 要求 | 详情 |240| 要求 | 详情 |

240| - | - |241| - | - |

241| 干净的 git 状态 | 您的工作目录必须没有未提交的更改。如果需要,Teleport 会提示您隐藏更改。 |242| 干净的 git 状态 | 您的工作目录必须没有未提交的更改。如果需要,Teleport 会提示您隐藏更改。 |

242| 正确的存储库 | 您必须从同一存储库的检出运行 `--teleport`,而不是 fork。如果您从不同存储库的检出运行它,Claude Code 会显示一个错误,命名会话的存储库和您的检出的存储库。在 v2.1.219 之前,错误没有命名您的检出的存储库。如果 Claude Code 无法将您的远程解析为主机名,例如 SSH 主机别名如 `git@work:owner/repo.git`,它会要求您确认,并在远程的所有者和存储库名称与会话的存储库匹配时接受检出。 |243| 正确的仓库 | 您必须从同一仓库的检出运行 `--teleport`,而不是 fork。如果您从不同仓库的检出运行它,Claude Code 会显示一个错误,指明会话的仓库和您的检出的仓库。如果 Claude Code 无法将您的远程解析为主机名,例如 SSH 主机别名如 `git@work:owner/repo.git`,它会要求您确认,并在远程的所有者和仓库名称与会话的仓库匹配时接受检出。 |

243| 分支可用 | 来自云会话的分支必须已推送到远程。Teleport 会自动获取并检出它。 |244| 分支可用 | 来自云会话的分支必须已推送到远程。Teleport 会自动获取并检出它。 |

244| 相同账户 | 您必须使用云会话中使用的相同 claude.ai 账户进行身份验证。 |245| 相同账户 | 您必须使用云会话中使用的相同 claude.ai 账户进行身份验证。 |

245 246 


249 `--teleport` 不可用250 `--teleport` 不可用

250</h4>251</h4>

251 252 

252Teleport 需要 claude.ai 订阅身份验证。如果您通过 API 密钥进行身份验证,请运行 `/login` 以改为使用您的 claude.ai 账户登录。如果错误命名您的提供商,云会话不可通过第三方提供商获得;请参阅 [错误表](#output-and-errors)。如果您已通过 claude.ai 登录且 `--teleport` 仍不可用,您的组织可能已禁用云会话。253Teleport 需要 claude.ai 订阅身份验证。请找到与您相符的情况:

254 

255* **您通过 API 密钥进行身份验证**:运行 `/login` 以改为使用您的 claude.ai 账户登录

256* **错误指明了您的提供商**:云端会话无法通过第三方提供商使用。请参阅[错误表](#errors-when-sending-to-a-cloud-session)

257* **您已通过 claude.ai 登录**:您的组织可能已禁用云端会话

253 258 

254<h2 id="work-with-sessions">259<h2 id="work-with-sessions">

255 处理会话260 处理会话


257 262 

258会话出现在 claude.ai/code 的侧边栏中。从那里你可以审查更改、与队友共享、归档完成的工作或永久删除会话。263会话出现在 claude.ai/code 的侧边栏中。从那里你可以审查更改、与队友共享、归档完成的工作或永久删除会话。

259 264 

260<h3 id="take-back-a-queued-message">265<h3 id="permission-modes-in-cloud-sessions">

261 取回已排队的消息266 云端会话中的权限模式

262</h3>267</h3>

263 268 

264如果你在 Claude 工作时发送消息,该消息会排队直到 Claude 读取它。要取回已排队的消息,请点击它上面的 ✕。文本返回到消息框,以便你可以编辑它或发送其他内容。269无论是在创建任务时还是在会话运行期间,您都可以从[模式下拉菜单](/docs/zh-CN/permission-modes#switch-permission-modes)为云端会话选择[权限模式](/docs/zh-CN/permission-modes)。

270 

271在以下任一情况下,Claude Code 会以会话原先所处的权限模式恢复该会话:

272 

273* 重新打开 Anthropic 托管的[环境已过期](#environment-expired)的会话

274* 向自托管运行程序[在空闲时释放](/docs/zh-CN/self-hosted-environments-reference#runner-cli-flags)的会话发送消息

265 275 

266如果 Claude 已经读取了消息,它会保留在对话中。276<h3 id="review-changes">

277 审查更改

278</h3>

279 

280每个会话都会显示一个 diff 指示器,标示添加和删除的行数,例如 `+42 -18`。选择它即可打开 diff 视图,在特定行上添加内联评论,并随下一条消息将这些评论发送给 Claude。

281 

282diff 视图默认将会话的更改与其基础分支进行比较。要与仓库中的任何其他分支进行比较,请选择 **Compare against** 并选择一个分支。

283 

284Claude Code 根据原始 git blob 内容计算这些 diff,因此仓库中配置的 diff 驱动程序和 `textconv` 过滤器不适用。

285 

286以下步骤在其他文档中介绍:

287 

288* **完整演练(包括 PR 创建)**:请参阅[审查和迭代](/docs/zh-CN/web-quickstart#review-and-iterate)

289* **让 Claude 自动监控 PR 的 CI 失败和审查评论**:请参阅[自动修复 Pull Request](#auto-fix-pull-requests)

267 290 

268<h3 id="manage-context">291<h3 id="manage-context">

269 管理上下文292 管理上下文


291 314 

292[Agent teams](/docs/zh-CN/agent-teams) 默认关闭,但可以通过将 `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` 添加到你的[环境变量](/docs/zh-CN/cloud-environments#set-environment-variables)来启用。315[Agent teams](/docs/zh-CN/agent-teams) 默认关闭,但可以通过将 `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` 添加到你的[环境变量](/docs/zh-CN/cloud-environments#set-environment-variables)来启用。

293 316 

294<h3 id="permission-modes-in-cloud-sessions">317<h3 id="take-back-a-queued-message">

295 云会话中的权限模式318 取回已排队的消息

296</h3>

297 

298你从[模式下拉菜单](/docs/zh-CN/permission-modes#switch-permission-modes)为云会话选择[权限模式](/docs/zh-CN/permission-modes),既在你创建任务时,也在会话运行时。当你重新打开其 Anthropic 托管[环境已过期](#environment-expired)的会话,或向自托管运行程序在空闲时[释放的会话](/docs/zh-CN/self-hosted-environments-reference#runner-cli-flags)发送消息时,Claude Code 在它所在的权限模式中恢复会话。

299 

300<h3 id="review-changes">

301 审查更改

302</h3>319</h3>

303 320 

304每个会话显示一个 diff 指示器,显示添加和删除的行数,如 `+42 -18`。选择它以打开 diff 视图,在特定行上留下内联评论,并使用你的下一条消息将它们发送给 Claude。321如果您在 Claude 工作时发送消息,该消息会排队,直到 Claude 读取它。要取回已排队的消息,请点击消息上的 ✕。文本会返回到消息框,以便您编辑或发送其他内容。

305 

306diff 视图默认将会话的更改与其基础分支进行比较。要与存储库中的任何其他分支进行比较,请选择 **Compare against** 并选择一个分支。

307 

308Claude Code 从原始 git blob 内容计算这些 diffs,包括 Claude 编辑时显示的每个文件 diffs,所以存储库中配置的 diff 驱动程序和 `textconv` 过滤器不适用。对于不是会话自己的检出之一的存储库中的文件,如在会话期间克隆到工作区内的文件,每个文件 diff 显示 Claude 的编辑本身,而不是 git 比较。

309 322 

310有关完整演练(包括 PR 创建),请参阅[审查和迭代](/docs/zh-CN/web-quickstart#review-and-iterate)。要让 Claude 自动监控 PR 以查找 CI 失败和审查评论,请参阅[自动修复拉取请求](#auto-fix-pull-requests)。323如果 Claude 已经读取了该消息,它会保留在对话中。

311 324 

312<h3 id="share-sessions">325<h3 id="share-sessions">

313 共享会话326 共享会话


319 从 Enterprise 或 Team 账户共享332 从 Enterprise 或 Team 账户共享

320</h4>333</h4>

321 334 

322对于 Enterprise 和 Team 账户,两个可见性选项是**私有**和**团队**。团队可见性使会话对你的 claude.ai 组织的其他成员可见。[Claude in Slack](/docs/zh-CN/slack) 会话会自动以团队可见性共享。335Enterprise 和 Team 账户的共享方式如下:

323 336 

324默认情况下启用存储库访问验证,基于连接到收件人账户的 GitHub 账户。你的账户显示名称对所有有访问权限的收件人可见。337* **可见性选项**:**私有**和**团队**。团队可见性使会话对您的 claude.ai 组织中的其他成员可见

338* **仓库访问权限**:默认启用验证,基于收件人账户所连接的 GitHub 账户

339* **您的名称**:您账户的显示名称对所有有访问权限的收件人可见

340* **Slack 会话**:[Claude in Slack](/docs/zh-CN/slack) 会话会自动以团队可见性共享

325 341 

326<h4 id="share-from-a-max-or-pro-account">342<h4 id="share-from-a-max-or-pro-account">

327 从 Max 或 Pro 账户共享343 从 Max 或 Pro 账户共享

328</h4>344</h4>

329 345 

330对于 Max 和 Pro 账户,两个可见性选项是**私有**和**公开**。公开可见性使会话对任何登录到 claude.ai 的用户可见。346Max 和 Pro 账户的共享方式如下:

331 347 

332在共享之前检查你的会话是否包含敏感内容。会话可能包含来自私有 GitHub 存储库的代码和凭证。默认情况下不启用存储库访问验证。348* **可见性选项**:**私有**和**公开**。公开可见性使会话对任何登录 claude.ai 的用户可见

349* **仓库访问权限**:默认不启用验证

350* **敏感内容**:共享前请检查您的会话。会话可能包含来自私有 GitHub 仓库的代码和凭据

333 351 

334要要求收件人拥有存储库访问权限,或从共享会话中隐藏你的名称,请转到 [**Settings > Claude Code > Sharing settings**](https://claude.ai/settings/claude-code)。352要要求收件人拥有存储库访问权限,或从共享会话中隐藏你的名称,请转到 [**Settings > Claude Code > Sharing settings**](https://claude.ai/settings/claude-code)。

335 353 


421 无法获取组织 UUID439 无法获取组织 UUID

422</h3>440</h3>

423 441 

424`claude --cloud` 和 `claude --teleport` 需要使用 claude.ai 账户登录。如果你使用 API 密钥进行身份验证,或你的存储账户详情已过期,这些命令会失败,显示 `Unable to get organization UUID` 或消息 API 密钥身份验证不足。使用 API 密钥身份验证或过期账户详情,运行不带会话 ID 的 `claude --teleport` 会在会话选择器中显示 `Error loading Claude Code sessions`,而不是任一消息,相同的修复适用。442`claude --cloud` 和 `claude --teleport` 需要使用 claude.ai 账户登录。如果您使用 API 密钥进行身份验证,或者存储的账户详情已过期,您会看到以下情况之一:

425 443 

426运行 `/login` 以使用你的 claude.ai 账户登录,然后重试命令。如果错误命名你的提供商,请参阅[错误表](#output-and-errors):云会话不通过第三方提供商可用。444* `Unable to get organization UUID`

445* 提示 API 密钥身份验证不足的消息

446* 在不带会话 ID 运行 `claude --teleport` 时,会话选择器中显示 `Error loading Claude Code sessions`

447 

448运行 `/login` 以使用您的 claude.ai 账户登录,然后重试该命令。如果错误中提到的是您的提供商,请参阅[错误表](#errors-when-sending-to-a-cloud-session):云端会话无法通过第三方提供商使用。

427 449 

428<h3 id="remote-control-session-expired-or-access-denied">450<h3 id="remote-control-session-expired-or-access-denied">

429 Remote Control 会话已过期或访问被拒绝451 Remote Control 会话已过期或访问被拒绝


435* 确认你已登录到拥有会话的相同账户457* 确认你已登录到拥有会话的相同账户

436* 如果你看到 `Remote Control may not be available for this organization`,所有者尚未为你的组织启用云会话458* 如果你看到 `Remote Control may not be available for this organization`,所有者尚未为你的组织启用云会话

437 459 

460<h3 id="errors-when-sending-to-a-cloud-session">

461 向云端会话发送消息时的错误

462</h3>

463 

464这些错误来自使用 [`--cloud <session-id>`](#send-follow-ups-from-the-cli) 运行 `claude`,无论是否带有 `-p`。CLI 会在错误前加上 `Error: ` 前缀。发送失败时会包装为 `failed to send message to cloud session <id>: <reason>`。

465 

466| 消息 | 含义 |

467| - | - |

468| `Cloud sessions aren't available with <provider>. They run on Anthropic's infrastructure and require an Anthropic account.` | Claude Code 配置为使用第三方提供商。消息会使用您的配置中的标签显示提供商名称,例如 `Amazon Bedrock` 或 `Google Vertex AI`。请移除该提供商的配置(例如取消设置 `CLAUDE_CODE_USE_BEDROCK`),并使用 Anthropic 账户登录(`claude auth login`)。 |

469| `Cloud sessions are disabled by your organization's policy. Contact your organization admin to enable them.` | `allow_remote_sessions` 组织策略已关闭。 |

470| `Couldn't verify your organization's policy for cloud sessions. Check your network connection and try again.` | Claude Code 无法获取您组织的策略,因此拒绝发送,而不是假定云端会话已被允许。请检查网络连接并重试。 |

471| `Attaching to an existing cloud session is not enabled for your account.` | 您在运行 `--cloud <session-id>` 时未带 `-p`。请使用 `claude -p "your message" --cloud <session-id>` 发送消息。 |

472| `Session not found: <id>` | 该 ID 或 URL 与您可以访问的任何会话都不匹配。请对照该会话的 claude.ai/code URL 进行检查。 |

473| `cloud session <id> is archived and cannot accept new messages` | 该会话已归档。请改为启动一个新会话。 |

474 

438<h3 id="environment-expired">475<h3 id="environment-expired">

439 环境已过期476 环境已过期

440</h3>477</h3>

441 478 

442云会话在不活动一段时间后停止,会话的 VM 被回收。会话在等待你批准 [MCP 连接器](/docs/zh-CN/cloud-environments#network-access)工具调用或登录到 MCP 服务器时计为不活动,它可以在该等待期间过期。479云会话在不活动一段时间后停止,会话的 VM 被回收。会话在等待你批准 [MCP 连接器](/docs/zh-CN/cloud-environments#network-access)工具调用或登录到 MCP 服务器时计为不活动,它可以在该等待期间过期。

443 480 

444从 [claude.ai/code](https://claude.ai/code) 重新打开会话以配置新 VM,并恢复你的对话历史。在 VM 被回收时仍在运行的后台工作,如 subagents 和 shell 命令,不会被恢复。481从 [claude.ai/code](https://claude.ai/code) 重新打开会话以预配新的 VM:

482 

483* **会恢复**:您的对话历史

484* **不会恢复**:VM 被回收时仍在运行的后台工作,例如子代理和 shell 命令

445 485 

446<h2 id="limitations">486<h2 id="limitations">

447 限制487 限制

Details

497 oneLiner: 'Custom keyboard shortcuts',497 oneLiner: 'Custom keyboard shortcuts',

498 when: 'Read at session start and hot-reloaded when you edit the file',498 when: 'Read at session start and hot-reloaded when you edit the file',

499 description: <>Rebind keyboard shortcuts in the interactive CLI. Run <C>/keybindings</C> to create or open this file with a schema reference. Ctrl+C, Ctrl+D, Ctrl+M, and Caps Lock are reserved and cannot be rebound.</>,499 description: <>Rebind keyboard shortcuts in the interactive CLI. Run <C>/keybindings</C> to create or open this file with a schema reference. Ctrl+C, Ctrl+D, Ctrl+M, and Caps Lock are reserved and cannot be rebound.</>,

500 exampleIntro: <>This example binds <C>Ctrl+E</C> to open your external editor and unbinds <C>Ctrl+U</C> by setting it to <C>null</C>. The <C>context</C> field scopes bindings to a specific part of the CLI, here the main chat input.</>,500 exampleIntro: <>This example binds <C>Ctrl+E</C> to open your external editor and unbinds <C>Ctrl+S</C> by setting it to <C>null</C>. The <C>context</C> field scopes bindings to a specific part of the CLI, here the main chat input.</>,

501 example: `{501 example: `{

502 "$schema": "https://www.schemastore.org/claude-code-keybindings.json",502 "$schema": "https://www.schemastore.org/claude-code-keybindings.json",

503 "$docs": "https://code.claude.com/docs/en/keybindings",503 "$docs": "https://code.claude.com/docs/en/keybindings",


506 "context": "Chat",506 "context": "Chat",

507 "bindings": {507 "bindings": {

508 "ctrl+e": "chat:externalEditor",508 "ctrl+e": "chat:externalEditor",

509 "ctrl+u": null509 "ctrl+s": null

510 }510 }

511 }511 }

512 ]512 ]


1455| `managed-settings.json` | 系统级别,因操作系统而异 | 企业强制执行的设置,您无法覆盖,除了[狭窄的例外](/docs/zh-CN/settings#security-keys-where-the-stricter-value-applies)。请参阅[保存文件的位置](/docs/zh-CN/managed-settings#deploy-a-managed-settings-file)和[Claude Code 使用的托管源](/docs/zh-CN/managed-settings#precedence-within-the-managed-tier)。 |1455| `managed-settings.json` | 系统级别,因操作系统而异 | 企业强制执行的设置,您无法覆盖,除了[狭窄的例外](/docs/zh-CN/settings#security-keys-where-the-stricter-value-applies)。请参阅[保存文件的位置](/docs/zh-CN/managed-settings#deploy-a-managed-settings-file)和[Claude Code 使用的托管源](/docs/zh-CN/managed-settings#precedence-within-the-managed-tier)。 |

1456| `CLAUDE.local.md` | 项目根目录 | 您对此项目的私人偏好,与 CLAUDE.md 一起加载。手动创建它并将其添加到 `.gitignore`。 |1456| `CLAUDE.local.md` | 项目根目录 | 您对此项目的私人偏好,与 CLAUDE.md 一起加载。手动创建它并将其添加到 `.gitignore`。 |

1457| `AGENTS.md` | 项目根目录、`.claude/` 或任何目录 | 您为 AI 编码代理编写的项目说明。Claude Code 可以[自行加载它](/docs/zh-CN/memory#agents-md)或与 `CLAUDE.md` 一起加载。 |1457| `AGENTS.md` | 项目根目录、`.claude/` 或任何目录 | 您为 AI 编码代理编写的项目说明。Claude Code 可以[自行加载它](/docs/zh-CN/memory#agents-md)或与 `CLAUDE.md` 一起加载。 |

1458| 已安装的 plugins | `~/.claude/plugins` | 克隆的市场、已安装的 plugin 版本、`installed_plugins.json` 安装记录和每个 plugin 的数据,由 `claude plugin` 命令管理。从您的 claude.ai 账户[同步的 plugins](/docs/zh-CN/plugins/loading#synced-plugins) 下载到 `~/.claude/plugins/synced/`。对于从市场[`command` 源](/docs/zh-CN/plugins/marketplace-reference#command-plugin-source)以链接模式安装的 plugin,Claude Code 在此处存储链接而不是副本,plugin 的文件保留在命令打印的目录中。`command` 源需要 Claude Code v2.1.229 或更高版本。本地目录市场中按相对路径列出的 plugin 也会[从其源目录就地加载](/docs/zh-CN/plugins/loading#find-plugins-on-disk),而不是从缓存副本加载。请参阅 [plugin 缓存](/docs/zh-CN/plugins/loading#find-plugins-on-disk)了解孤立版本如何被清理。 |1458| 已安装的插件 | `~/.claude/plugins` | 克隆的市场、已安装的插件版本、`installed_plugins.json` 安装记录和每个插件的数据,由 `claude plugin` 命令管理。从您的 claude.ai 账户[同步的插件](/docs/zh-CN/plugins/loading#synced-plugins)下载到 `~/.claude/plugins/synced/`。对于从市场[`command` 源](/docs/zh-CN/plugins/marketplace-reference#command-plugin-source)以链接模式安装的插件,Claude Code 在此处存储链接而不是副本,插件的文件保留在命令打印的目录中。`command` 源需要 Claude Code v2.1.229 或更高版本。在您从本地路径添加的市场中按相对路径列出的插件也会[从其源目录就地加载](/docs/zh-CN/plugins/loading#find-plugins-on-disk),而不是从缓存副本加载。请参阅[插件缓存](/docs/zh-CN/plugins/loading#find-plugins-on-disk)了解孤立版本如何被清理。 |

1459 1459 

1460`~/.claude` 还保存 Claude Code 在您工作时写入的数据:记录、提示历史、文件快照、缓存和日志。请参阅下面的[应用数据](#application-data)。1460`~/.claude` 还保存 Claude Code 在您工作时写入的数据:记录、提示历史、文件快照、缓存和日志。请参阅下面的[应用数据](#application-data)。

1461 1461 

Details

26 26 

27* **CLI 流程(例如 `/web-setup`)**:为您创建 **Default**27* **CLI 流程(例如 `/web-setup`)**:为您创建 **Default**

28* **Pro 和 Max 上的网页引导**:为您创建 **Default**28* **Pro 和 Max 上的网页引导**:为您创建 **Default**

29* **Team 和 Enterprise 上的网页引导**:显示 **Create your first cloud environment** 表单,除非所有者已启用[快速网页设置](/docs/zh-CN/claude-code-on-the-web#github-authentication-options);保持表单的默认值并点击 **Create & finish** 以获得相同的 **Default** 环境29* **Team 和 Enterprise 上的网页引导**:显示 **Create your first cloud environment** 表单,除非所有者已启用[快速设置](/docs/zh-CN/claude-code-on-the-web#quick-setup-for-team-and-enterprise);保持表单的默认值并点击 **Create & finish** 以获得相同的 **Default** 环境

30 30 

31**Default** 本身不带有任何配置:31**Default** 本身不带有任何配置:

32 32 

costs.md +2 −2

Details

111| 您的角色 | `/usage-credits` 的作用 |111| 您的角色 | `/usage-credits` 的作用 |

112| :- | :- |112| :- | :- |

113| Pro 或 Max 订阅者 | 在浏览器中打开 claude.ai 上的 [**Settings > Usage**](https://claude.ai/settings/usage)。在其 **Usage credits** 部分中,您可以打开或关闭使用额度,并检查您的额度余额、本月支出和每月支出限制 |113| Pro 或 Max 订阅者 | 在浏览器中打开 claude.ai 上的 [**Settings > Usage**](https://claude.ai/settings/usage)。在其 **Usage credits** 部分中,您可以打开或关闭使用额度,并检查您的额度余额、本月支出和每月支出限制 |

114| 具有计费访问权限的 Team 或 Enterprise 成员 | 在浏览器中打开您的组织的使用情况设置 [**Admin settings > Usage**](https://claude.ai/admin-settings/usage) |114| 具有计费访问权限的 Team 或 Enterprise 成员 | 在浏览器中打开您组织的用量设置 [**Organization settings > Usage**](https://claude.ai/admin-settings/usage) |

115| 没有计费访问权限的 Team 或 Enterprise 成员 | 要求您确认,然后向您的组织管理员发送请求。在 v2.1.211 之前,Claude Code 在没有确认步骤的情况下发送请求 |115| 没有计费访问权限的 Team 或 Enterprise 成员 | 要求您确认,然后向您的组织管理员发送请求。在 v2.1.211 之前,Claude Code 在没有确认步骤的情况下发送请求 |

116 116 

117对于没有计费访问权限的 Team 和 Enterprise 成员,确认仅在交互式会话中出现:在使用 `-p` 标志的非交互式模式和从[远程控制](/docs/zh-CN/remote-control)中,该命令不发送请求,并告诉您在交互式会话中运行它。117对于没有计费访问权限的 Team 和 Enterprise 成员,确认仅在交互式会话中出现:在使用 `-p` 标志的非交互式模式和从[远程控制](/docs/zh-CN/remote-control)中,该命令不发送请求,并告诉您在交互式会话中运行它。


229* **"您已达到会话限制"或"您已达到每周限制"**:订阅计划上基于座位的使用窗口,在所有模型中共享,因此开发者无法通过使用 `/model` 切换模型来恢复访问权限。该消息显示窗口何时重置。在模型特定的"您已达到 Opus 限制"或"您已达到 Sonnet 限制"消息之后,使用 `/model` 切换到该系列之外的模型确实会让开发者继续工作。请参阅[使用限制错误](/docs/zh-CN/errors#youve-hit-your-session-limit)。开发者在此期间可以做什么:229* **"您已达到会话限制"或"您已达到每周限制"**:订阅计划上基于座位的使用窗口,在所有模型中共享,因此开发者无法通过使用 `/model` 切换模型来恢复访问权限。该消息显示窗口何时重置。在模型特定的"您已达到 Opus 限制"或"您已达到 Sonnet 限制"消息之后,使用 `/model` 切换到该系列之外的模型确实会让开发者继续工作。请参阅[使用限制错误](/docs/zh-CN/errors#youve-hit-your-session-limit)。开发者在此期间可以做什么:

230 * 运行 `/usage-credits` 以请求超过额度的使用情况,如果您已启用[使用额度](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans)。230 * 运行 `/usage-credits` 以请求超过额度的使用情况,如果您已启用[使用额度](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans)。

231 * 在 Claude Code v2.1.234 或更高版本上,[在重置后自动等待并继续中断的任务](/docs/zh-CN/interactive-mode#wait-for-a-usage-limit-to-reset);该部分列出了 Claude Code 何时自动启动等待以及开发者何时从 `/rate-limit-options` 中选择它。要控制您的车队 Claude Code 是否自动启动该等待,请在[托管设置](/docs/zh-CN/settings#settings-precedence)中设置 [`autoContinueAtUsageLimit`](/docs/zh-CN/settings-reference#autocontinueatusagelimit)。231 * 在 Claude Code v2.1.234 或更高版本上,[在重置后自动等待并继续中断的任务](/docs/zh-CN/interactive-mode#wait-for-a-usage-limit-to-reset);该部分列出了 Claude Code 何时自动启动等待以及开发者何时从 `/rate-limit-options` 中选择它。要控制您的车队 Claude Code 是否自动启动该等待,请在[托管设置](/docs/zh-CN/settings#settings-precedence)中设置 [`autoContinueAtUsageLimit`](/docs/zh-CN/settings-reference#autocontinueatusagelimit)。

232* **"您已达到个人支出限制"、"组织的月度支出限制"或"团队的共享预算"**:开发者的请求将被计费到使用额度,这些额度已达到您设置的支出限制。要让开发者继续,请转到[**管理员设置 > 使用**](https://claude.ai/admin-settings/usage)并增加消息命名的限制。当消息还命名计划重置时间时,开发者可以改为等待直到那时。请参阅[错误参考](/docs/zh-CN/errors#youve-hit-your-monthly-spend-limit)了解每个变体。232* **"You've hit your individual spend limit"、"org's monthly spend limit"或"team's shared budget"**:开发者的请求本应计费到使用额度,而这些额度已达到您设置的支出限制。要让开发者继续,请前往 [**Organization settings > Usage**](https://claude.ai/admin-settings/usage) 并提高消息中指出的限制。如果消息中还指出了套餐重置时间,开发者也可以等到那时。请参阅[错误参考](/docs/zh-CN/errors#youve-hit-your-monthly-spend-limit)了解各个变体。

233* **来自 [Claude apps gateway](/docs/zh-CN/claude-apps-gateway) 的支出限制消息**:开发者超过了您在自托管网关上设置的支出上限,网关会阻止他们的请求,直到该期间重置或您提高上限。请参阅[网关支出限制](/docs/zh-CN/claude-apps-gateway-spend-limits)以了解上限、重置计划和开发者看到的消息。233* **来自 [Claude apps gateway](/docs/zh-CN/claude-apps-gateway) 的支出限制消息**:开发者超过了您在自托管网关上设置的支出上限,网关会阻止他们的请求,直到该期间重置或您提高上限。请参阅[网关支出限制](/docs/zh-CN/claude-apps-gateway-spend-limits)以了解上限、重置计划和开发者看到的消息。

234* **上下文或自动压缩警告**:不是使用限制。对话已接近会话的[自动压缩窗口](/docs/zh-CN/model-config#set-the-auto-compact-window),这是 Claude Code 总结较早历史以释放空间的阈值。将开发者指向[减少令牌使用](#reduce-token-usage)。234* **上下文或自动压缩警告**:不是使用限制。对话已接近会话的[自动压缩窗口](/docs/zh-CN/model-config#set-the-auto-compact-window),这是 Claude Code 总结较早历史以释放空间的阈值。将开发者指向[减少令牌使用](#reduce-token-usage)。

235* **API 或云提供商计划上的意外高支出**:通常可以追溯到从未清除的长会话或将 Opus 作为默认模型。要分享的最高影响习惯是在不相关的任务之间清除和将模型与工作相匹配,两者都在[减少令牌使用](#reduce-token-usage)中涵盖。235* **API 或云提供商计划上的意外高支出**:通常可以追溯到从未清除的长会话或将 Opus 作为默认模型。要分享的最高影响习惯是在不相关的任务之间清除和将模型与工作相匹配,两者都在[减少令牌使用](#reduce-token-usage)中涵盖。

Details

192以下任一方式都会向您显示完整文本:192以下任一方式都会向您显示完整文本:

193 193 

194* 按 `Ctrl+O` 打开[会话记录查看器](/docs/zh-CN/interactive-mode#transcript-viewer),并在发送者的会话名称下阅读完整文本。194* 按 `Ctrl+O` 打开[会话记录查看器](/docs/zh-CN/interactive-mode#transcript-viewer),并在发送者的会话名称下阅读完整文本。

195* 在[全屏渲染](/docs/zh-CN/fullscreen#use-the-mouse)中,点击未完整显示消息的预览行,即可将其就地展开。

195* 在使用 [`--verbose`](/docs/zh-CN/cli-reference#cli-flags) 启动的会话中,Claude Code 会显示完整文本而不是预览。196* 在使用 [`--verbose`](/docs/zh-CN/cli-reference#cli-flags) 启动的会话中,Claude Code 会显示完整文本而不是预览。

196 197 

197预览仅缩短您看到的内容。无论您是否展开它,Claude 都会读取完整消息。198预览仅缩短您看到的内容。无论您是否展开它,Claude 都会读取完整消息。

desktop.md +41 −41

Details

244 切换视图模式244 切换视图模式

245</h3>245</h3>

246 246 

247视图模式控制聊天记录中显示多少详细信息。从发送按钮旁的 **Transcript view** 下拉菜单切换模式,或在 macOS 或 Windows 上按 **Ctrl+O** 来循环浏览它们。Thinking 模式仅在 Claude 在你正在查看的会话中产生思考后才出现在下拉菜单中。247视图模式控制聊天会话记录中显示的详细程度。要切换视图模式,请从会话标题旁的插入符号打开会话菜单并选择 **Transcript view**,或在 macOS 或 Windows 上按 **Ctrl+O** 循环切换。只有在 Claude 于您正在查看的会话中产生思考后,Thinking 模式才会出现在菜单中。

248 248 

249| 模式 | 显示内容 |249| 模式 | 显示内容 |

250| - | - |250| - | - |


372 管理会话372 管理会话

373</h2>373</h2>

374 374 

375每个会话是一个独立的对话,拥有自己的上下文和更改。你可以并行运行多个会话、分支侧边聊天、让 Claude 检查并向你的其他会话发送消息、将工作发送到云,或让 Dispatch 从你的手机为你启动会话。375每个会话是一个独立的对话,拥有自己的上下文和更改。您可以并行运行多个会话、开启侧边聊天、让 Claude 查看您的其他会话并向其发送消息、将工作发送到云端,或让 Dispatch 从您的手机为您启动会话。

376 376 

377<h3 id="work-in-parallel-with-sessions">377<h3 id="work-in-parallel-with-sessions">

378 使用会话并行工作378 使用会话并行工作

379</h3>379</h3>

380 380 

381点击侧边栏中的 **+ New session**,或在 macOS 上按 **Cmd+N** 或在 Windows 上按 **Ctrl+N**,来并行处理多个任务。按 **Ctrl+Tab** 和 **Ctrl+Shift+Tab** 来循环侧边栏中的会话。对于 Git 存储库,选择分支名称旁边的 **worktree** 选项,为会话提供使用 [Git worktrees](/docs/zh-CN/worktrees) 的项目隔离副本,因此一个会话中的更改不会影响其他会话,直到你提交它们。381点击侧边栏中的 **+ New session**,或在 macOS 上按 **Cmd+N**、在 Windows 上按 **Ctrl+N**,即可并行处理多个任务。按 **Ctrl+Tab** 和 **Ctrl+Shift+Tab** 可在侧边栏中循环切换会话。对于 Git 仓库,选择分支名称旁边的 **worktree** 选项,即可使用 [Git worktrees](/docs/zh-CN/worktrees) 为会话提供项目的独立隔离副本,这样一个会话中的更改在您提交之前不会影响其他会话。

382 382 

383要同时查看两个会话,在 macOS 上按住 **Cmd** 或在 Windows 上按住 **Ctrl** 并点击侧边栏中的会话。会话在第二个窗格中打开,与你已经打开的窗格并排。当分割处于活跃状态时,点击另一个侧边栏会话会替换具有焦点的窗格。在 macOS 上按 **Cmd+\\** 或在 Windows 上按 **Ctrl+\\** 来关闭焦点窗格并返回到单个会话。383要同时查看两个会话,请在 macOS 上按住 **Cmd** 或在 Windows 上按住 **Ctrl** 并点击侧边栏中的会话。该会话会在第二个窗格中打开,与您已打开的会话并排显示。分屏处于活跃状态时,点击侧边栏中的另一个会话会替换当前具有焦点的窗格。在 macOS 上按 **Cmd+\\** 或在 Windows 上按 **Ctrl+\\** 可关闭具有焦点的窗格并返回单个会话。

384 384 

385Worktrees 默认存储在 `<project-root>/.claude/worktrees/` 中。你可以在设置 → Claude Code 中的"Worktree location"下将其更改为自定义目录。你也可以设置一个分支前缀,该前缀会添加到每个 worktree 分支名称前面,这对于保持 Claude 创建的分支有组织很有用。要在完成后删除 worktree,请将鼠标悬停在侧边栏中的会话上并点击存档图标。要在 PR 合并或关闭时让会话自动存档,在设置 → Claude Code 中打开 **Auto-archive after PR merge or close**。自动存档仅适用于已完成运行的本地会话。385Worktree 默认存储在 `<project-root>/.claude/worktrees/` 中。您可以在设置 → Claude Code 中的"Worktree location"下将其更改为自定义目录。您还可以设置一个分支前缀,该前缀会添加到每个 worktree 分支名称的前面,这有助于让 Claude 创建的分支保持条理。完成后要删除 worktree,请将鼠标悬停在侧边栏中的会话上并点击存档图标。要让会话在其 Pull Request 合并或关闭时自动存档,请在设置 → Claude Code 中打开 **Auto-archive after PR merge or close**。自动存档仅适用于已完成运行的本地会话。

386 386 

387要在新 worktrees 中包含 gitignored 文件(如 `.env`),在你的项目根目录中创建一个 [`.worktreeinclude` 文件](/docs/zh-CN/worktrees#copy-gitignored-files-into-worktrees)。387要在新 worktree 中包含被 gitignore 的文件(如 `.env`),请在项目根目录中创建一个 [`.worktreeinclude` 文件](/docs/zh-CN/worktrees#copy-gitignored-files-into-worktrees)。

388 388 

389<Note>389<Note>

390 会话隔离需要 [Git](https://git-scm.com/downloads)。大多数 Mac 默认包含 Git。在终端中运行 `git --version` 来检查;如果它打印版本号,则 Git 已安装。如果你遇到 Git 错误,请在 [Cowork 选项卡](https://claude.com/product/cowork) 中询问 Claude 来帮助排除你的设置。390 会话隔离需要 [Git](https://git-scm.com/downloads)。大多数 Mac 默认已包含 Git。在终端中运行 `git --version` 进行检查;如果输出了版本号,则说明 Git 已安装。如果遇到 Git 错误,请在 [Cowork 选项卡](https://claude.com/product/cowork)中请 Claude 帮助排查您的设置。

391</Note>391</Note>

392 392 

393使用侧边栏顶部的控制来按状态、项目或环境过滤会话,并按项目分组会话。要重命名会话,点击活跃会话顶部工具栏中的会话标题。393使用侧边栏顶部的控件可按状态、项目或环境筛选会话,并按项目对会话分组。要重命名会话,请点击活跃会话顶部工具栏中的会话标题。

394 394 

395要检查上下文使用情况,请参阅[检查使用情况](#check-usage)。当上下文填满时,Claude 自动总结对话并继续工作。你也可以输入 `/compact` 来更早触发总结并释放上下文空间。有关压缩工作原理的详细信息,请参阅[上下文窗口](/docs/zh-CN/how-claude-code-works#the-context-window)。395要检查上下文使用情况,请参阅[检查使用情况](#check-usage)。当上下文填满时,Claude 会自动总结对话并继续工作。您也可以输入 `/compact` 提前触发总结并释放上下文空间。有关压缩工作原理的详细信息,请参阅[上下文窗口](/docs/zh-CN/how-claude-code-works#the-context-window)。

396 396 

397桌面应用在 Code 会话完成任务且你当前未查看该会话时发送操作系统通知。对于属于[项目](/docs/zh-CN/claude-projects#see-what-needs-you-in-overview)的会话,你会获得项目的通知。397当 Code 会话完成任务且您当前未在查看该会话时,桌面应用会发送操作系统通知。对于属于某个[项目](/docs/zh-CN/claude-projects#see-what-needs-you-in-overview)的会话,您将收到该项目的通知。

398 398 

399<h3 id="ask-a-side-question-without-derailing-the-session">399<h3 id="ask-a-side-question-without-derailing-the-session">

400 在不偏离会话的情况下提出侧边问题400 在不偏离会话的情况下提出侧边问题

401</h3>401</h3>

402 402 

403侧边聊天让你提出一个使用你的会话上下文的问题,但不会添加任何内容回到主对话。当你想要理解一段代码、检查一个假设或探索一个想法而不引导会话偏离时,使用它。403侧边聊天让您可以向 Claude 提出一个使用会话上下文的问题,但不会向主对话添加任何内容。当您想要理解一段代码、检查某个假设或探索某个想法,又不想让会话偏离方向时,可以使用它。

404 404 

405在 macOS 上按 **Cmd+;** 或在 Windows 上按 **Ctrl+;** 来打开侧边聊天,或在提示框中输入 `/btw`。侧边聊天可以读取主线程中到该点为止的所有内容。完成后,关闭侧边聊天并在你离开的地方继续主会话。405在 macOS 上按 **Cmd+;** 或在 Windows 上按 **Ctrl+;** 打开侧边聊天,或在输入框中输入 `/btw`。侧边聊天可以读取主线程中截至该时刻的所有内容。完成后,关闭侧边聊天,即可从中断处继续主会话。

406 406 

407侧边聊天在本地、SSH 和 WSL 会话中可用。桌面应用不会将侧边聊天保存到磁盘,因此你在关闭应用后无法返回到一个。407侧边聊天可在本地、SSH 和 WSL 会话中使用。桌面应用不会将侧边聊天保存到磁盘,因此关闭应用后无法再返回之前的侧边聊天。

408 408 

409<h3 id="watch-background-tasks">409<h3 id="watch-background-tasks">

410 观看后台任务410 查看后台任务

411</h3>411</h3>

412 412 

413任务窗格显示在当前会话内运行的后台工作:子代理、后台 shell 命令和[动态工作流](/docs/zh-CN/workflows)。从 **Views** 菜单打开它或将其拖入你的布局。413任务窗格显示当前会话内正在运行的后台工作:子代理、后台 shell 命令和[动态工作流](/docs/zh-CN/workflows)。可从 **Views** 菜单打开它,或将其拖入您的布局。

414 414 

415点击任何条目来在子代理窗格中查看其输出或停止它。要查看其他会话在做什么,使用[侧边栏](#work-in-parallel-with-sessions),或要求 Claude [为你检查它们](#work-across-sessions)。415点击任意条目可在子代理窗格中查看其输出或将其停止。要查看其他会话正在做什么,请使用[侧边栏](#work-in-parallel-with-sessions),或请 Claude [为您查看](#work-across-sessions)。

416 416 

417<h3 id="work-across-sessions">417<h3 id="work-across-sessions">

418 跨会话工作418 跨会话工作

419</h3>419</h3>

420 420 

421Claude 可以列出你的其他 Code 选项卡会话,读取每个会话一直在做什么,并在它们之间发送消息。用简单的语言提问:"哪个会话涉及了身份验证重构?"、"API 会话得出了什么结论?"或"告诉支付会话模式已更改"。你也可以要求 Claude 重命名或存档会话。Claude 存档会话的方式与侧边栏的存档图标相同,因此要求它清理 PR 已合并的会话。421Claude 可以列出您的其他 Code 选项卡会话,读取每个会话一直在做的工作,并在它们之间发送消息。用自然语言提问即可:"哪个会话涉及了身份验证重构?"、"API 会话得出了什么结论?"或"告诉支付会话 schema 已更改"。您也可以请 Claude 重命名或存档会话。Claude 存档会话的方式与侧边栏的存档图标相同,因此可以让它清理 PR 已合并的会话。

422 422 

423通过这个界面,Claude 只看到桌面应用本身运行的会话:本地、[SSH](#ssh-sessions) 和 [WSL](/docs/zh-CN/desktop-wsl) 会话在 Code 选项卡中。Claude 看不到云会话,或你从终端 CLI 或 VS Code 扩展启动的会话,即使在同一项目的 worktrees 中,所以有九个终端 worktrees 打开和两个桌面会话,Claude 在其中一个回答时报告另一个桌面会话。Claude 永远不会列出你提问的会话。默认情况下,它看到 20 个最近活跃的会话,并跳过存档的会话,除非你要求它们。[跨会话消息传递](/docs/zh-CN/cross-session-messaging) 单独让 Claude 向[你的其他 Claude Code 会话](/docs/zh-CN/cross-session-messaging#see-which-sessions-claude-can-reach)发送消息,包括终端会话。423通过此使用入口,Claude 只能看到桌面应用自身运行的会话:Code 选项卡中的本地、[SSH](#ssh-sessions) 和 [WSL](/docs/zh-CN/desktop-wsl) 会话。Claude 看不到云端会话,也看不到您从终端 CLI 或 VS Code 扩展启动的会话,即使它们位于同一项目的 worktree 中也是如此。因此,如果打开了九个终端 worktree 和两个桌面会话,在其中一个桌面会话中回答的 Claude 只会报告另一个桌面会话。Claude 从不会列出您正在提问的那个会话。默认情况下,它可以看到最近活跃的 20 个会话,并跳过已存档的会话,除非您明确要求。[跨会话消息传递](/docs/zh-CN/cross-session-messaging)则另外让 Claude 可以向[您的其他 Claude Code 会话](/docs/zh-CN/cross-session-messaging#see-which-sessions-claude-can-reach)发送消息,包括终端会话。

424 424 

425当 Claude 通过这个界面向另一个会话发送消息时,Claude Code 在那里将其显示为一张卡片,标记有发送会话的标题和返回链接,因此你总是可以看到消息来自哪里。如果接收会话正在执行任务中,Claude Code 会保留消息,Claude 在当前工作完成后读取它。接收的 Claude 可以回复,Claude Code 通过这个界面将回复传递回去。Claude 无法传递到存档的会话,并在消息未通过时告诉你。425当 Claude 通过此使用入口向另一个会话发送消息时,Claude Code 会在对方会话中将其显示为一张卡片,卡片标有发送会话的标题和返回链接,因此您始终可以知道消息来自何处。如果接收会话正在执行任务,Claude Code 会暂存该消息,Claude 会在当前工作完成后读取它。接收方的 Claude 可以回复,Claude Code 会通过此使用入口将回复传回。Claude 无法向已存档的会话发送消息,并会在消息未送达时告知您。

426 426 

427Claude Code 在会话间应用四个安全行为:427Claude Code 在跨会话时应用四项安全行为:

428 428 

429* 在存档任何会话之前,Claude 首先询问你。你在每个权限模式中看到批准卡片,包括自动和绕过权限。429* 在存档任何会话之前,Claude 会先询问您。在每种权限模式下您都会看到批准卡片,包括 Auto 和 Bypass permissions。

430* 通过这个界面,Claude 无法从没有人观看的会话(例如计划任务运行)发送跨会话消息,也无法将消息传递到一个。430* 通过此使用入口,Claude 无法从无人查看的会话(例如定时任务运行)发送跨会话消息,也无法向此类会话发送消息。

431* Claude Code 根据接收会话的[入站控制](/docs/zh-CN/cross-session-messaging#control-inbound-messages)检查来自这个界面的每条消息,即使接收会话本身没有[跨会话消息传递](/docs/zh-CN/cross-session-messaging#availability)。如果你在接收会话中将 [`crossSessionInbound`](/docs/zh-CN/settings-reference#crosssessioninbound) 设置为 `refuse`,Claude Code 会丢弃来自这个界面的消息。Claude Code 向 Claude 桌面应用报告拒绝。在 v2.1.234 之前,Claude Code 丢弃来自这个界面到没有跨会话消息传递的接收会话的每条消息。431* Claude Code 会根据接收会话的[入站控制](/docs/zh-CN/cross-session-messaging#control-inbound-messages)检查来自此使用入口的每条消息,即使接收会话本身未启用[跨会话消息传递](/docs/zh-CN/cross-session-messaging#availability)。如果您在接收会话中将 [`crossSessionInbound`](/docs/zh-CN/settings-reference#crosssessioninbound) 设置为 `refuse`,Claude Code 会丢弃来自此使用入口的消息。Claude Code 会向 Claude 桌面应用报告该拒绝。在 v2.1.234 之前,对于未启用跨会话消息传递的接收会话,Claude Code 会丢弃来自此使用入口的所有消息。

432* Claude Code 引用每条传入消息并将其归属于发送它的会话,Claude 在对其进行操作时仍然遵循接收会话自己的权限设置。432* Claude Code 会引用每条传入消息并注明其来自哪个发送会话,且 Claude 在据此执行操作时仍遵循接收会话自身的权限设置。

433 433 

434Claude 也可以建议新会话。当它注意到值得修复但超出当前任务范围的东西时,它在聊天中将工作作为任务芯片提供。点击芯片来在具有自己 worktree 的新会话中启动该工作;Claude 继续你的当前会话而不中断。434Claude 还可以建议新会话。当它注意到值得修复但超出当前任务范围的问题时,会在聊天中以任务标签的形式提供该工作。点击该标签即可在拥有独立 worktree 的新会话中开始该工作;Claude 会继续您的当前会话而不受干扰。

435 435 

436<h3 id="run-long-running-tasks-in-the-cloud">436<h3 id="run-long-running-tasks-in-the-cloud">

437 在云中运行长时间运行的任务437 在云端运行长时间运行的任务

438</h3>438</h3>

439 439 

440对于大型重构、测试套件、迁移或其他长时间运行的任务,在启动会话时选择 **Cloud** 而不是 **Local**。云会话默认在 Anthropic 管理的基础设施上运行,即使你关闭应用或关闭计算机,也会继续运行。随时检查进度或引导 Claude 朝不同方向发展。你也可以从 [claude.ai/code](https://claude.ai/code) 或 [Claude 移动应用](/docs/zh-CN/mobile)监控云会话。440对于大型重构、测试套件、迁移或其他长时间运行的任务,请在启动会话时选择 **Cloud** 而不是 **Local**。云端会话默认在 Anthropic 管理的基础设施上运行,即使您关闭应用或关闭计算机也会继续运行。您可以随时回来查看进度,或引导 Claude 转向不同的方向。您也可以从 [claude.ai/code](https://claude.ai/code) 或 [Claude 移动应用](/docs/zh-CN/mobile)监控云端会话。

441 441 

442云会话也支持多个存储库。选择云环境后,点击所选存储库旁边的 **+** 按钮向会话添加更多存储库。每个存储库都有自己的分支选择器。这对于跨越多个代码库的任务很有用,例如更新共享库及其使用者。442云端会话还支持多个仓库。选择云端环境后,点击所选仓库旁边的 **+** 按钮即可向会话添加更多仓库。每个仓库都有自己的分支选择器。这对于跨越多个代码库的任务很有用,例如更新共享库及其使用方。

443 443 

444有关云会话如何工作的更多信息,请参阅 [Web 上的 Claude Code](/docs/zh-CN/claude-code-on-the-web)。当一项工作需要许多云会话时,在侧边栏中选择 **Projects** 来创建一个[项目](/docs/zh-CN/claude-projects),Claude 从一个对话中为你启动和跟踪会话。444有关云端会话工作方式的更多信息,请参阅[在云端使用 Claude Code](/docs/zh-CN/claude-code-on-the-web)。当一项工作需要许多云端会话时,请在侧边栏中选择 **Projects** 创建一个[项目](/docs/zh-CN/claude-projects),Claude 会在一个对话中为您启动并跟踪这些会话。

445 445 

446<h3 id="continue-in-another-surface">446<h3 id="continue-in-another-surface">

447 在另一个表面继续447 在另一个使用入口继续

448</h3>448</h3>

449 449 

450**Continue in** 菜单,可从会话工具栏右下角的 VS Code 图标访问,让你将会话移动到另一个表面:450要在其他地方继续会话,请通过会话标题旁边的下拉箭头或侧边栏中该会话所在的行打开会话菜单,然后选择 **Open in**:

451 451 

452* **Web 上的 Claude Code**:将你的本地会话发送到云中继续运行。Desktop 推送你的分支,生成对话摘要,并创建具有完整上下文的新云会话。你可以然后选择存档本地会话或保留它。这需要干净的工作树,对于 SSH 会话不可用。452* 选择 **Cloud** 可将会话作为[云端会话](/docs/zh-CN/claude-code-on-the-web)继续,您的对话会以摘要形式带过去。在您确认之前,对话框会说明您的文件是否也会一并移动,以及云端会话就绪后此会话是否会被存档。通过 [SSH](#ssh-sessions) 或在 [WSL](/docs/zh-CN/desktop-wsl) 中运行的会话无法以这种方式移动。

453* **你的 IDE**:在当前工作目录的支持的 IDE 中打开你的项目。453* 选择已安装的编辑器或文件管理器,可在其中打开该会话在磁盘上的文件夹。

454 454 

455<h3 id="sessions-from-dispatch">455<h3 id="sessions-from-dispatch">

456 来自 Dispatch 的会话456 来自 Dispatch 的会话

457</h3>457</h3>

458 458 

459[Dispatch](https://support.claude.com/en/articles/13947068) 是一个与 Claude 的持久对话,存在于 [Cowork](https://claude.com/product/cowork) 选项卡中。你向 Dispatch 发送任务消息,它决定如何处理。459[Dispatch](https://support.claude.com/en/articles/13947068) 是一个与 Claude 的持久对话,位于 [Cowork](https://claude.com/product/cowork) 选项卡中。您向 Dispatch 发送任务消息,由它决定如何处理。

460 460 

461任务可以通过两种方式成为 Code 会话:你直接要求一个,例如"打开 Claude Code 会话并修复登录错误",或 Dispatch 决定任务是开发工作并自己生成一个。通常路由到 Code 的任务包括修复错误、更新依赖项、运行测试或打开拉取请求。研究、文档编辑和电子表格工作保留在 Cowork 中。461任务可以通过两种方式成为 Code 会话:您直接提出要求,例如"打开一个 Claude Code 会话并修复登录错误";或者 Dispatch 判断该任务属于开发工作,并自行创建一个会话。通常会路由到 Code 的任务包括修复错误、更新依赖、运行测试或创建 Pull Request。研究、文档编辑和电子表格工作则保留在 Cowork 中。

462 462 

463无论哪种方式,Code 会话都会在 Code 选项卡的侧边栏中出现,带有 **Dispatch** 徽章。当它完成或需要你的批准时,你会在手机上收到推送通知。463无论哪种方式,Code 会话都会出现在 Code 选项卡的侧边栏中,并带有 **Dispatch** 徽章。当它完成或需要您批准时,您会在手机上收到推送通知。

464 464 

465如果你启用了[计算机使用](#let-claude-use-your-computer),Dispatch 生成的 Code 会话也可以使用它。这些会话中的应用批准在 30 分钟后过期并重新提示,而不是像常规 Code 会话那样持续整个会话。465如果您启用了[计算机使用](#let-claude-use-your-computer),由 Dispatch 创建的 Code 会话也可以使用它。这些会话中的应用批准会在 30 分钟后过期并重新提示,而不是像常规 Code 会话那样在整个会话期间有效。

466 466 

467有关设置、配对和 Dispatch 设置,请参阅 [Dispatch 帮助文章](https://support.claude.com/en/articles/13947068)。Dispatch 需要 Pro 或 Max 计划,在 Team 或 Enterprise 计划上不可用。467有关设置、配对和 Dispatch 设置,请参阅 [Dispatch 帮助文章](https://support.claude.com/en/articles/13947068)。Dispatch 需要 Pro 或 Max 计划,Team 或 Enterprise 计划不可用。

468 468 

469Dispatch 是远离终端时与 Claude 合作的几种方式之一。有关与其他选项的比较,请参阅[平台和集成](/docs/zh-CN/platforms#work-when-you-are-away-from-your-terminal)。469Dispatch 是您离开终端时与 Claude 协作的几种方式之一。有关与其他选项的比较,请参阅[平台和集成](/docs/zh-CN/platforms#work-when-you-are-away-from-your-terminal)。

470 470 

471<h2 id="extend-claude-code">471<h2 id="extend-claude-code">

472 扩展 Claude Code472 扩展 Claude Code


739 739 

740[Extended thinking](/docs/zh-CN/model-config#extended-thinking)默认启用,这改进了复杂推理任务的性能,但使用额外的令牌。在 Anthropic API 上,在本地环境编辑器中将 `MAX_THINKING_TOKENS` 设置为 `0` 来关闭思考;这对 Opus 5.5、Sonnet 5.5 或 Fable 模型没有影响,它们始终使用 extended thinking。在 Anthropic API 上关闭思考后,Claude Code 发送努力级别 `high` 而不是更高级别给它知道的[不接受该组合](/docs/zh-CN/errors#effort-isnt-available-with-thinking-turned-off)的模型,例如 Opus 5。740[Extended thinking](/docs/zh-CN/model-config#extended-thinking)默认启用,这改进了复杂推理任务的性能,但使用额外的令牌。在 Anthropic API 上,在本地环境编辑器中将 `MAX_THINKING_TOKENS` 设置为 `0` 来关闭思考;这对 Opus 5.5、Sonnet 5.5 或 Fable 模型没有影响,它们始终使用 extended thinking。在 Anthropic API 上关闭思考后,Claude Code 发送努力级别 `high` 而不是更高级别给它知道的[不接受该组合](/docs/zh-CN/errors#effort-isnt-available-with-thinking-turned-off)的模型,例如 Opus 5。

741 741 

742在具有[自适应推理](/docs/zh-CN/model-config#adjust-effort-level)的模型上,除 `0` 外的 `MAX_THINKING_TOKENS` 值被忽略,因为自适应推理控制思考深度。在 Opus 4.6 和 Sonnet 4.6 上,设置 `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` 为 `1` 来使用固定思考预算;Fable 模型、Sonnet 5 及更高版本和 Opus 4.7 及更高版本始终使用自适应推理,没有固定预算模式。742在具有[自适应推理](/docs/zh-CN/model-config#adjust-effort-level)的模型上,对于为正数的 `MAX_THINKING_TOKENS` 值,Claude Code 会忽略该数值本身,因为思考深度改由自适应推理控制。在 Opus 4.6 和 Sonnet 4.6 上,将 `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` 设置为 `1` 可使用固定思考预算;Fable 模型、Sonnet 5 及更高版本以及 Opus 4.7 及更高版本始终使用自适应推理,没有固定预算模式。

743 743 

744<h4 id="local-sessions-on-managed-devices">744<h4 id="local-sessions-on-managed-devices">

745 托管设备上的本地会话745 托管设备上的本地会话


1005| `--dangerously-skip-permissions` | 绕过权限模式。在 Pro 和 Max 计划上,在设置 → Claude Code → "允许绕过权限模式"中启用它;在 Team 和 Enterprise 计划上,组织策略控制它 |1005| `--dangerously-skip-permissions` | 绕过权限模式。在 Pro 和 Max 计划上,在设置 → Claude Code → "允许绕过权限模式"中启用它;在 Team 和 Enterprise 计划上,组织策略控制它 |

1006| `--add-dir` | 在云会话中使用 **+** 按钮添加多个存储库 |1006| `--add-dir` | 在云会话中使用 **+** 按钮添加多个存储库 |

1007| `--allowedTools`, `--disallowedTools` | 无每个会话的等效项。[设置文件](/docs/zh-CN/settings)中的权限规则仍然适用。 |1007| `--allowedTools`, `--disallowedTools` | 无每个会话的等效项。[设置文件](/docs/zh-CN/settings)中的权限规则仍然适用。 |

1008| `--verbose` | [Verbose 视图模式](#switch-view-modes)在 Transcript 视图下拉菜单中 |1008| `--verbose` | [Verbose 视图模式](#switch-view-modes) |

1009| `--print`, `--output-format` | 不可用。Desktop 仅是交互式的。 |1009| `--print`, `--output-format` | 不可用。Desktop 仅是交互式的。 |

1010| `ANTHROPIC_MODEL` 环境变量 | 发送按钮旁的模型下拉菜单 |1010| `ANTHROPIC_MODEL` 环境变量 | 发送按钮旁的模型下拉菜单 |

1011| `MAX_THINKING_TOKENS` 环境变量 | 在本地环境编辑器中设置。请参阅[环境配置](#environment-configuration)。 |1011| `MAX_THINKING_TOKENS` 环境变量 | 在本地环境编辑器中设置。请参阅[环境配置](#environment-configuration)。 |

Details

92* 使用 **Cmd+S** 保存屏幕截图或使用 **Cmd+R** 保存屏幕录制,使用窗格的捕获按钮或快捷键;文件保存到你的桌面92* 使用 **Cmd+S** 保存屏幕截图或使用 **Cmd+R** 保存屏幕录制,使用窗格的捕获按钮或快捷键;文件保存到你的桌面

93* 通过单击**Detach simulator** 停止流式传输设备而不关闭它,这会将窗格返回到其**Attach simulator** 状态93* 通过单击**Detach simulator** 停止流式传输设备而不关闭它,这会将窗格返回到其**Attach simulator** 状态

94 94 

95设备名称下的行调整来自模拟器的视频流。如果窗格对你的 Mac 造成压力,请降低**Frame rate** 或**Resolution**,在 H.264 和 JPEG 之间切换**Encoding**,或检查**FPS** 以显示窗格接收的帧速率。这些设置改变窗格显示设备的方式,而不是应用运行的方式。95要调整来自模拟器的视频流,请打开窗格的 **Display** 菜单。如果窗格对您的 Mac 造成压力,请降低**Frame rate** 或**Resolution**。这两项设置改变窗格显示设备的方式,而不是应用运行的方式。

96 96 

97你和 Claude 驱动同一设备,因此你的点击会改变 Claude 看到的应用状态。要让 Claude 检查特定屏幕,通过点击导航到它,然后提出要求。当 Claude 驱动设备时,窗格在屏幕上方显示**Claude is using this device** 徽章;在徽章清除之前暂停点击,以便结果反映应用而不是你的输入。97你和 Claude 驱动同一设备,因此你的点击会改变 Claude 看到的应用状态。要让 Claude 检查特定屏幕,通过点击导航到它,然后提出要求。当 Claude 驱动设备时,窗格在屏幕上方显示**Claude is using this device** 徽章;在徽章清除之前暂停点击,以便结果反映应用而不是你的输入。

98 98 

Details

135 135 

136**将 Claude 放在日程上。** 设置 [scheduled tasks](/docs/zh-CN/desktop-scheduled-tasks) 以定期自动运行 Claude:每天早上进行代码审查、每周进行依赖项审计,或从您连接的工具中提取信息的简报。136**将 Claude 放在日程上。** 设置 [scheduled tasks](/docs/zh-CN/desktop-scheduled-tasks) 以定期自动运行 Claude:每天早上进行代码审查、每周进行依赖项审计,或从您连接的工具中提取信息的简报。

137 137 

138**准备好时扩展。** 从侧边栏打开 [parallel sessions](/docs/zh-CN/desktop#work-in-parallel-with-sessions) 以同时处理多个任务,可选择每个任务都在其自己的 Git worktree 中,并打开 [tasks pane](/docs/zh-CN/desktop#watch-background-tasks) 以观看会话正在运行的子代理和后台命令。打开 [side chat](/docs/zh-CN/desktop#ask-a-side-question-without-derailing-the-session) 以提出问题而不偏离主线程。将 [long-running work 发送到云](/docs/zh-CN/desktop#run-long-running-tasks-in-the-cloud) 以便即使关闭应用也能继续,或 [在 web 或 IDE 中继续会话](/docs/zh-CN/desktop#continue-in-another-surface)(如果任务花费的时间比预期长)。[连接外部工具](/docs/zh-CN/desktop#extend-claude-code)(如 GitHub、Slack 和 Linear)以整合您的工作流。138**准备好时扩展。** 从侧边栏打开 [parallel sessions](/docs/zh-CN/desktop#work-in-parallel-with-sessions) 以同时处理多个任务,可选择每个任务都在其自己的 Git worktree 中,并打开 [tasks pane](/docs/zh-CN/desktop#watch-background-tasks) 以观看会话正在运行的子代理和后台命令。打开 [side chat](/docs/zh-CN/desktop#ask-a-side-question-without-derailing-the-session) 以提出问题而不偏离主线程。将 [long-running work 发送到云](/docs/zh-CN/desktop#run-long-running-tasks-in-the-cloud) 以便即使关闭应用也能继续,或 [将您已开始的会话移至云端](/docs/zh-CN/desktop#continue-in-another-surface)(如果任务花费的时间比预期长)。[连接外部工具](/docs/zh-CN/desktop#extend-claude-code)(如 GitHub、Slack 和 Linear)以整合您的工作流。

139 139 

140<h2 id="what’s-next">140<h2 id="what’s-next">

141 接下来141 接下来

env-vars.md +355 −316

Details

124 变量124 变量

125</h2>125</h2>

126 126 

127超时时间、token 预算和重试次数等数值变量除了接受普通数字外,还接受科学记数法和数字分隔符写法,除非某个变量所在行注明它仅接受普通数字。例如,Claude Code 将 `2e3` 读取为 2000,将 `64_000` 读取为 64000。在 v2.1.211 之前,这些写法可能会在没有任何提示的情况下设置一个小得多的值,例如 `1e6` 会将超时时间设置为 1。127数值类变量(例如超时时间、token 预算和重试次数)除了普通数字外,还接受科学计数法和数字分隔符写法,但变量所在行注明仅接受普通数字的除外。例如,Claude Code 会将 `2e3` 读取为 2000,将 `64_000` 读取为 64000。在 v2.1.211 之前,这些写法可能会在没有任何提示的情况下设置一个小得多的值,例如 `1e6` 会将超时时间设为 1。

128 128 

129<Note>129<Note>

130 对于开启或关闭某项行为的变量,设置 `1`、`true`、`yes` 或 `on` 即可开启,设置 `0`、`false`、`no` 或 `off` 即可关闭,不区分大小写。130 对于用于开启或关闭某项行为的变量,设置 `1`、`true`、`yes` 或 `on` 即可开启,设置 `0`、`false`、`no` 或 `off` 即可关闭,大小写不限。

131 131 

132 有些变量只读取您是否设置了它们,因此任何非空值(包括 `0`)都会开启该行为;要关闭该行为,需取消设置该变量或将其设置为空值。以下变量按这种方式工作:132 有些变量只检查您是否设置了它们,因此任何非空值(包括 `0`)都会开启该行为;要关闭该行为,请取消设置该变量或将其设为空值。以下变量即按此方式工作:

133 133 

134 * `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`134 * `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`

135 * `DISABLE_TELEMETRY`135 * `DISABLE_TELEMETRY`


138 * `FALLBACK_FOR_ALL_PRIMARY_MODELS`138 * `FALLBACK_FOR_ALL_PRIMARY_MODELS`

139 * `IS_DEMO`139 * `IS_DEMO`

140 140 

141 还有一个变量有自己的规则:`FORCE_HYPERLINK` 读取的是数字,因此只有 `0` 才会将其关闭。每个变量所在行也会说明其自身的规则。141 另有一个变量有其自己的规则:`FORCE_HYPERLINK` 读取的是数字,因此只有 `0` 能将其关闭。每个变量所在行也会说明其各自的规则。

142</Note>142</Note>

143 143 

144| 变量 | 用途 |144| 变量 | 用途 |

145| :- | :- |145| :- | :- |

146| `ANTHROPIC_API_KEY` | 作为 `X-Api-Key` 标头发送的 API 密钥。设置后,即使您已登录,也会使用此密钥,而不是您的 Claude Pro、Max、Team 或 Enterprise 订阅。在非交互模式(`-p`)下,只要存在该密钥就始终会使用它。在交互模式下,系统会提示您批准该密钥一次,之后它才会覆盖您的订阅。要改用您的订阅,请运行 `unset ANTHROPIC_API_KEY` |146| `ANTHROPIC_API_KEY` | 作为 `X-Api-Key` 请求头发送的 API 密钥。设置后,即使您已登录,也会使用此密钥而不是您的 Claude Pro、Max、Team 或 Enterprise 订阅。在非交互模式(`-p`)下,只要存在该密钥就始终会使用它。在交互模式下,系统会提示您批准一次该密钥,之后它才会覆盖您的订阅。如需改用订阅,请运行 `unset ANTHROPIC_API_KEY` |

147| `ANTHROPIC_AUTH_TOKEN` | `Authorization` 标头的自定义值(您在此处设置的值将以 `Bearer ` 为前缀) |147| `ANTHROPIC_AUTH_TOKEN` | `Authorization` 请求头的自定义值(您在此设置的值将加上前缀 `Bearer `) |

148| `ANTHROPIC_AWS_API_KEY` | [Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 的工作区 API 密钥,在 AWS 控制台中生成。作为 `x-api-key` 发送,优先于 AWS SigV4 |148| `ANTHROPIC_AWS_API_KEY` | 用于 [Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 的工作区 API 密钥,在 AWS Console 中生成。作为 `x-api-key` 发送,并优先于 AWS SigV4 |

149| `ANTHROPIC_AWS_BASE_URL` | 覆盖 [Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 端点 URL。用于自定义区域或通过 [LLM 网关](/docs/zh-CN/llm-gateway)路由时。默认为 `https://aws-external-anthropic.{region}.api.aws`。Claude Code 按照[与 Amazon Bedrock 相同的优先级](/docs/zh-CN/amazon-bedrock#3-configure-claude-code)解析区域 |149| `ANTHROPIC_AWS_BASE_URL` | 覆盖 [Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 端点 URL。用于自定义区域或通过 [LLM 网关](/docs/zh-CN/llm-gateway)路由时。默认为 `https://aws-external-anthropic.{region}.api.aws`。Claude Code 按[与 Amazon Bedrock 相同的优先级](/docs/zh-CN/amazon-bedrock#3-configure-claude-code)解析区域 |

150| `ANTHROPIC_AWS_WORKSPACE_ID` | [Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 必需。在每个请求中作为 `anthropic-workspace-id` 标头发送 |150| `ANTHROPIC_AWS_WORKSPACE_ID` | 使用 [Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 时必需。在每个请求中作为 `anthropic-workspace-id` 请求头发送 |

151| `ANTHROPIC_BASE_URL` | 覆盖 API 端点,以通过代理或网关路由请求。当设置为非第一方主机时,[MCP 工具搜索](/docs/zh-CN/mcp#scale-with-mcp-tool-search)默认处于禁用状态。如果您的代理会转发 `tool_reference` 块,请设置 `ENABLE_TOOL_SEARCH=true`。从 v2.1.196 起,当此变量指向 `api.anthropic.com` 以外的主机时,[Remote Control](/docs/zh-CN/remote-control#requirements) 会被禁用,与其在 Amazon Bedrock、Google Cloud's Agent Platform 和 Microsoft Foundry 上的行为一致 |151| `ANTHROPIC_BASE_URL` | 覆盖 API 端点,以通过代理或网关路由请求。当设置为非第一方主机时,默认禁用 [MCP 工具搜索](/docs/zh-CN/mcp#scale-with-mcp-tool-search)。如果您的代理会转发 `tool_reference` 块,请设置 `ENABLE_TOOL_SEARCH=true`。自 v2.1.196 起,当此变量指向 `api.anthropic.com` 以外的主机时,[Remote Control](/docs/zh-CN/remote-control#requirements) 会被禁用,与其在 Amazon Bedrock、Google Cloud's Agent Platform 和 Microsoft Foundry 上的行为一致 |

152| `ANTHROPIC_BEDROCK_BASE_URL` | 覆盖 Amazon Bedrock 端点 URL。用于自定义 Amazon Bedrock 端点或通过 [LLM 网关](/docs/zh-CN/llm-gateway)路由时。请参阅 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock) |152| `ANTHROPIC_BEDROCK_BASE_URL` | 覆盖 Amazon Bedrock 端点 URL。用于自定义 Amazon Bedrock 端点或通过 [LLM 网关](/docs/zh-CN/llm-gateway)路由时。请参阅 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock) |

153| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | 覆盖 Amazon Bedrock Mantle 端点 URL。请参阅 [Mantle 端点](/docs/zh-CN/amazon-bedrock#use-the-mantle-endpoint) |153| `ANTHROPIC_BEDROCK_MANTLE_BASE_URL` | 覆盖 Amazon Bedrock Mantle 端点 URL。请参阅 [Mantle 端点](/docs/zh-CN/amazon-bedrock#use-the-mantle-endpoint) |

154| `ANTHROPIC_BEDROCK_REGION_PREFIX` | Claude Code 优先尝试的跨区域推理配置文件前缀(`us`、`eu`、`apac`、`jp`、`au` 或 `global`),而不是从 AWS 区域推导出的前缀。在 AWS GovCloud 区域中会被忽略。需要 Claude Code v2.1.224 或更高版本。请参阅 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock#cross-region-inference-profile-prefixes) |154| `ANTHROPIC_BEDROCK_REGION_PREFIX` | Claude Code 优先尝试的跨区域推理配置文件前缀(`us`、`eu`、`apac`、`jp`、`au` 或 `global`),而不是根据 AWS 区域推导出的前缀。在 AWS GovCloud 区域中会被忽略。需要 Claude Code v2.1.224 或更高版本。请参阅 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock#cross-region-inference-profile-prefixes) |

155| `ANTHROPIC_BEDROCK_SERVICE_TIER` | Amazon Bedrock [服务层级](https://docs.aws.amazon.com/bedrock/latest/userguide/service-tiers-inference.html)(`default`、`flex` 或 `priority`)。作为 `X-Amzn-Bedrock-Service-Tier` 标头发送。请参阅 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock#service-tiers) |155| `ANTHROPIC_BEDROCK_SERVICE_TIER` | Amazon Bedrock [服务层级](https://docs.aws.amazon.com/bedrock/latest/userguide/service-tiers-inference.html)(`default`、`flex` 或 `priority`)。作为 `X-Amzn-Bedrock-Service-Tier` 请求头发送。请参阅 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock#service-tiers) |

156| `ANTHROPIC_BETAS` | 以逗号分隔的附加 `anthropic-beta` 标头值列表,这些值将包含在 API 请求中。Claude Code 已会发送其所需的 beta 标头;在 Claude Code 添加原生支持之前,可使用此变量选择加入某个 [Anthropic API beta](https://platform.claude.com/docs/en/api/beta-headers)。与需要 API 密钥身份验证的 [`--betas` 标志](/docs/zh-CN/cli-reference#cli-flags)不同,此变量适用于所有身份验证方式,包括 Claude.ai 订阅 |156| `ANTHROPIC_BETAS` | 以逗号分隔的附加 `anthropic-beta` 请求头值列表,这些值将包含在 API 请求中。Claude Code 已会发送其所需的 beta 请求头;使用此变量可以在 Claude Code 添加原生支持之前选择加入某项 [Anthropic API beta](https://platform.claude.com/docs/en/api/beta-headers)。与需要 API 密钥身份验证的 [`--betas` 标志](/docs/zh-CN/cli-reference#cli-flags)不同,此变量适用于所有身份验证方式,包括 Claude.ai 订阅 |

157| `ANTHROPIC_CUSTOM_HEADERS` | 要添加到请求中的自定义标头(`Name: Value` 格式,多个标头以换行分隔)。如果名称或值包含 HTTP 标头无法承载的字符,例如弯引号或零宽空格,请求将失败,并显示一条按位置标识该名称/值对的错误。需要 Claude Code v2.1.227 或更高版本。[无效的请求标头值](/docs/zh-CN/errors#invalid-request-header-value)列出了确切的字符集以及该检查的运行位置。当由服务器托管设置下发时,设置凭据、组织或租户、路由或 API 行为标头(例如 `Authorization` 或 `Host`)的值会被视为[需要批准的设置](/docs/zh-CN/server-managed-settings#environment-variables-and-the-approval-dialog)。在项目设置或本地设置中,此类值遵循[何时应用 `env` 值的规则](/docs/zh-CN/settings-reference#when-claude-code-applies-env-values) |157| `ANTHROPIC_CUSTOM_HEADERS` | 要添加到请求中的自定义请求头(`Name: Value` 格式,多个请求头以换行分隔)。如果名称或值包含 HTTP 请求头无法承载的字符(例如弯引号或零宽空格),请求将失败,并显示一个按位置标识该名称-值对的错误。需要 Claude Code v2.1.227 或更高版本。[无效的请求头值](/docs/zh-CN/errors#invalid-request-header-value)列出了确切的字符集以及检查的运行位置。当由服务器托管设置提供时,设置凭据、组织或租户、路由或 API 行为请求头(例如 `Authorization` 或 `Host`)的值会被视为[需要批准的设置](/docs/zh-CN/server-managed-settings#environment-variables-and-the-approval-dialog)。来自项目设置或本地设置时,此类值遵循[`env` 值何时生效的规则](/docs/zh-CN/settings-reference#when-claude-code-applies-env-values) |

158| `ANTHROPIC_CUSTOM_MODEL_OPTION` | 要作为自定义条目添加到 `/model` 选择器中的模型 ID。使用它可以让非标准或特定于网关的模型变为可选,而无需替换内置别名。请参阅[模型配置](/docs/zh-CN/model-config#add-a-custom-model-option) |158| `ANTHROPIC_CUSTOM_MODEL_OPTION` | 要作为自定义条目添加到 `/model` 选择器中的模型 ID。使用此变量可以让非标准或特定于网关的模型可供选择,而无需替换内置别名。请参阅[模型配置](/docs/zh-CN/model-config#add-a-custom-model-option) |

159| `ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION` | `/model` 选择器中自定义模型条目的显示描述。未设置时默认为 `Custom model (<model-id>)` |159| `ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION` | `/model` 选择器中自定义模型条目的显示描述。未设置时默认为 `Custom model (<model-id>)` |

160| `ANTHROPIC_CUSTOM_MODEL_OPTION_NAME` | `/model` 选择器中自定义模型条目的显示名称。未设置时,如果 Claude Code [能识别该 ID](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities),条目将显示模型名称,否则显示模型 ID |160| `ANTHROPIC_CUSTOM_MODEL_OPTION_NAME` | `/model` 选择器中自定义模型条目的显示名称。未设置时,如果 Claude Code [能识别该 ID](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities),条目会显示模型名称,否则显示模型 ID |

161| `ANTHROPIC_CUSTOM_MODEL_OPTION_SUPPORTED_CAPABILITIES` | 自定义模型所支持[功能](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities)的逗号分隔列表,例如 `effort,thinking`。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |161| `ANTHROPIC_CUSTOM_MODEL_OPTION_SUPPORTED_CAPABILITIES` | 以逗号分隔的自定义模型所支持的[能力](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities)列表,例如 `effort,thinking`。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |

162| `ANTHROPIC_DEFAULT_FABLE_MODEL` | `fable` 别名解析到的模型 ID,也是 Claude Code 在第三方提供商上进行[自动模型回退](/docs/zh-CN/model-config#automatic-model-fallback)时识别为 Fable 模型的 ID。请参阅[模型配置](/docs/zh-CN/model-config#environment-variables) |162| `ANTHROPIC_DEFAULT_FABLE_MODEL` | `fable` 别名解析到的模型 ID,也是 Claude Code 在第三方提供商上为[自动模型回退](/docs/zh-CN/model-config#automatic-model-fallback)而识别为 Fable 模型的 ID。请参阅[模型配置](/docs/zh-CN/model-config#environment-variables) |

163| `ANTHROPIC_DEFAULT_FABLE_MODEL_DESCRIPTION` | `/model` 选择器中固定的 Fable 模型的显示描述。未设置时,该行显示以 `Custom Fable model` 开头的默认描述。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |163| `ANTHROPIC_DEFAULT_FABLE_MODEL_DESCRIPTION` | `/model` 选择器中固定的 Fable 模型的显示描述。未设置时,该行会显示以 `Custom Fable model` 开头的默认描述。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |

164| `ANTHROPIC_DEFAULT_FABLE_MODEL_NAME` | `/model` 选择器中固定的 Fable 模型的显示名称。未设置时,如果 Claude Code 能识别固定的 ID,该行显示模型名称,否则显示固定的 ID。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |164| `ANTHROPIC_DEFAULT_FABLE_MODEL_NAME` | `/model` 选择器中固定的 Fable 模型的显示名称。未设置时,如果 Claude Code 能识别所固定的 ID,该行会显示模型名称,否则显示所固定的 ID。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |

165| `ANTHROPIC_DEFAULT_FABLE_MODEL_SUPPORTED_CAPABILITIES` | 固定的 Fable 模型所支持[功能](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities)的逗号分隔列表,例如 `effort,thinking`。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |165| `ANTHROPIC_DEFAULT_FABLE_MODEL_SUPPORTED_CAPABILITIES` | 以逗号分隔的固定 Fable 模型所支持的[能力](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities)列表,例如 `effort,thinking`。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |

166| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | `haiku` 别名解析到的模型 ID,也用于[后台功能](/docs/zh-CN/costs#background-token-usage)。请参阅[模型配置](/docs/zh-CN/model-config#environment-variables) |166| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | `haiku` 别名解析到的模型 ID,也用于[后台功能](/docs/zh-CN/costs#background-token-usage)。请参阅[模型配置](/docs/zh-CN/model-config#environment-variables) |

167| `ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION` | `/model` 选择器中固定的 Haiku 模型的显示描述。未设置时,该行显示以 `Custom Haiku model` 开头的默认描述。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |167| `ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION` | `/model` 选择器中固定的 Haiku 模型的显示描述。未设置时,该行会显示以 `Custom Haiku model` 开头的默认描述。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |

168| `ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME` | `/model` 选择器中固定的 Haiku 模型的显示名称。未设置时,如果 Claude Code 能识别固定的 ID,该行显示模型名称,否则显示固定的 ID。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |168| `ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME` | `/model` 选择器中固定的 Haiku 模型的显示名称。未设置时,如果 Claude Code 能识别所固定的 ID,该行会显示模型名称,否则显示所固定的 ID。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |

169| `ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES` | 固定的 Haiku 模型所支持[功能](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities)的逗号分隔列表,例如 `effort,thinking`。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |169| `ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES` | 以逗号分隔的固定 Haiku 模型所支持的[能力](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities)列表,例如 `effort,thinking`。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |

170| `ANTHROPIC_DEFAULT_MODEL` | 新会话默认使用的模型。需要 Claude Code v2.1.236 或更高版本。请参阅[为新会话设置默认模型](/docs/zh-CN/model-config#set-a-default-model-for-new-sessions) |170| `ANTHROPIC_DEFAULT_MODEL` | 新会话默认使用的模型。需要 Claude Code v2.1.236 或更高版本。请参阅[为新会话设置默认模型](/docs/zh-CN/model-config#set-a-default-model-for-new-sessions) |

171| `ANTHROPIC_DEFAULT_OPUS_MODEL` | `opus` 别名解析到的模型 ID,也是计划模式处于活动状态时 `opusplan` 使用的模型 ID。请参阅[模型配置](/docs/zh-CN/model-config#environment-variables) |171| `ANTHROPIC_DEFAULT_OPUS_MODEL` | `opus` 别名解析到的模型 ID,也是 `opusplan` 在计划模式处于活动状态时使用的模型 ID。请参阅[模型配置](/docs/zh-CN/model-config#environment-variables) |

172| `ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION` | `/model` 选择器中固定的 Opus 模型的显示描述。未设置时,该行显示以 `Custom Opus model` 开头的默认描述。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |172| `ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION` | `/model` 选择器中固定的 Opus 模型的显示描述。未设置时,该行会显示以 `Custom Opus model` 开头的默认描述。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |

173| `ANTHROPIC_DEFAULT_OPUS_MODEL_NAME` | `/model` 选择器中固定的 Opus 模型的显示名称。未设置时,如果 Claude Code 能识别固定的 ID,该行显示模型名称,否则显示固定的 ID。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |173| `ANTHROPIC_DEFAULT_OPUS_MODEL_NAME` | `/model` 选择器中固定的 Opus 模型的显示名称。未设置时,如果 Claude Code 能识别所固定的 ID,该行会显示模型名称,否则显示所固定的 ID。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |

174| `ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES` | 固定的 Opus 模型所支持[功能](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities)的逗号分隔列表,例如 `effort,thinking`。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |174| `ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES` | 以逗号分隔的固定 Opus 模型所支持的[能力](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities)列表,例如 `effort,thinking`。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |

175| `ANTHROPIC_DEFAULT_SONNET_MODEL` | `sonnet` 别名解析到的模型 ID,也是计划模式未处于活动状态时 `opusplan` 使用的模型 ID。请参阅[模型配置](/docs/zh-CN/model-config#environment-variables) |175| `ANTHROPIC_DEFAULT_SONNET_MODEL` | `sonnet` 别名解析到的模型 ID,也是 `opusplan` 在计划模式未处于活动状态时使用的模型 ID。请参阅[模型配置](/docs/zh-CN/model-config#environment-variables) |

176| `ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION` | `/model` 选择器中固定的 Sonnet 模型的显示描述。未设置时,该行显示以 `Custom Sonnet model` 开头的默认描述。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |176| `ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION` | `/model` 选择器中固定的 Sonnet 模型的显示描述。未设置时,该行会显示以 `Custom Sonnet model` 开头的默认描述。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |

177| `ANTHROPIC_DEFAULT_SONNET_MODEL_NAME` | `/model` 选择器中固定的 Sonnet 模型的显示名称。未设置时,如果 Claude Code 能识别固定的 ID,该行显示模型名称,否则显示固定的 ID。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |177| `ANTHROPIC_DEFAULT_SONNET_MODEL_NAME` | `/model` 选择器中固定的 Sonnet 模型的显示名称。未设置时,如果 Claude Code 能识别所固定的 ID,该行会显示模型名称,否则显示所固定的 ID。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |

178| `ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES` | 固定的 Sonnet 模型所支持[功能](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities)的逗号分隔列表,例如 `effort,thinking`。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |178| `ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES` | 以逗号分隔的固定 Sonnet 模型所支持的[能力](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities)列表,例如 `effort,thinking`。请参阅[模型配置](/docs/zh-CN/model-config#customize-pinned-model-display-and-capabilities) |

179| `ANTHROPIC_FEDERATION_RULE_ID` | [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation) 的联合规则 ID。当您将其与 `ANTHROPIC_ORGANIZATION_ID` 一起设置时,Claude Code 会选择联合凭据,其优先级高于您的 `/login` 凭据。请参阅[身份验证优先级](/docs/zh-CN/authentication#authentication-precedence) |179| `ANTHROPIC_FEDERATION_RULE_ID` | 用于[工作负载身份联合](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation)的联合规则 ID。当您将其与 `ANTHROPIC_ORGANIZATION_ID` 一起设置时,Claude Code 会选择联合凭据,其优先级高于您的 `/login` 凭据。请参阅[身份验证优先级](/docs/zh-CN/authentication#authentication-precedence) |

180| `ANTHROPIC_FOUNDRY_API_KEY` | 用于 Microsoft Foundry 身份验证的 API 密钥(请参阅 [Microsoft Foundry](/docs/zh-CN/microsoft-foundry)) |180| `ANTHROPIC_FOUNDRY_API_KEY` | 用于 Microsoft Foundry 身份验证的 API 密钥(请参阅 [Microsoft Foundry](/docs/zh-CN/microsoft-foundry)) |

181| `ANTHROPIC_FOUNDRY_AUTH_TOKEN` | 用于 Microsoft Foundry 身份验证的 Bearer 令牌,例如 Microsoft Entra 访问令牌。Claude Code 将其作为 `Authorization: Bearer` 标头发送。优先于 `ANTHROPIC_FOUNDRY_API_KEY` 和 Azure 默认凭据链。请参阅 [Microsoft Foundry](/docs/zh-CN/microsoft-foundry)。需要 Claude Code v2.1.203 或更高版本 |181| `ANTHROPIC_FOUNDRY_AUTH_TOKEN` | 用于 Microsoft Foundry 身份验证的 Bearer 令牌,例如 Microsoft Entra 访问令牌。Claude Code 将其作为 `Authorization: Bearer` 请求头发送。优先于 `ANTHROPIC_FOUNDRY_API_KEY` 和 Azure 默认凭据链。请参阅 [Microsoft Foundry](/docs/zh-CN/microsoft-foundry)。需要 Claude Code v2.1.203 或更高版本 |

182| `ANTHROPIC_FOUNDRY_BASE_URL` | Microsoft Foundry 资源的完整基础 URL(例如 `https://my-resource.services.ai.azure.com/anthropic`)。可替代 `ANTHROPIC_FOUNDRY_RESOURCE`(请参阅 [Microsoft Foundry](/docs/zh-CN/microsoft-foundry)) |182| `ANTHROPIC_FOUNDRY_BASE_URL` | Microsoft Foundry 资源的完整基础 URL(例如 `https://my-resource.services.ai.azure.com/anthropic`)。可替代 `ANTHROPIC_FOUNDRY_RESOURCE`(请参阅 [Microsoft Foundry](/docs/zh-CN/microsoft-foundry)) |

183| `ANTHROPIC_FOUNDRY_RESOURCE` | Microsoft Foundry 资源名称(例如 `my-resource`)。Claude Code [会拒绝 URL 或主机名](/docs/zh-CN/errors#anthropic-foundry-resource-must-be-a-foundry-resource-name)。如果未设置 `ANTHROPIC_FOUNDRY_BASE_URL`,则为必需(请参阅 [Microsoft Foundry](/docs/zh-CN/microsoft-foundry)) |183| `ANTHROPIC_FOUNDRY_RESOURCE` | Microsoft Foundry 资源名称(例如 `my-resource`)。Claude Code [会拒绝 URL 或主机名](/docs/zh-CN/errors#anthropic-foundry-resource-must-be-a-foundry-resource-name)。如果未设置 `ANTHROPIC_FOUNDRY_BASE_URL` 则为必需(请参阅 [Microsoft Foundry](/docs/zh-CN/microsoft-foundry)) |

184| `ANTHROPIC_MODEL` | 要使用的模型设置的名称(请参阅[模型配置](/docs/zh-CN/model-config#environment-variables)) |184| `ANTHROPIC_MODEL` | 要使用的模型设置名称(请参阅[模型配置](/docs/zh-CN/model-config#environment-variables)) |

185| `ANTHROPIC_ORGANIZATION_ID` | [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation) 的组织 ID。请将其与 `ANTHROPIC_FEDERATION_RULE_ID` 一起设置。请参阅[身份验证优先级](/docs/zh-CN/authentication#authentication-precedence) |185| `ANTHROPIC_ORGANIZATION_ID` | 用于[工作负载身份联合](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation)的组织 ID。请将其与 `ANTHROPIC_FEDERATION_RULE_ID` 一起设置。请参阅[身份验证优先级](/docs/zh-CN/authentication#authentication-precedence) |

186| `ANTHROPIC_PROFILE` | 用于身份验证的 Anthropic 配置文件名称,例如通过 [`ant auth login`](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/authentication) 或[在没有 API 密钥的情况下登录 Console 账户](/docs/zh-CN/authentication#sign-in-without-an-api-key)创建的配置文件。请参阅[身份验证优先级](/docs/zh-CN/authentication#authentication-precedence) |186| `ANTHROPIC_PROFILE` | 用于身份验证的 Anthropic profile 名称,例如由 [`ant auth login`](https://platform.claude.com/docs/en/cli-sdks-libraries/cli/authentication) 创建的 profile,或通过[在没有 API 密钥的情况下登录 Console 账户](/docs/zh-CN/authentication#sign-in-without-an-api-key)创建的 profile。请参阅[身份验证优先级](/docs/zh-CN/authentication#authentication-precedence) |

187| `ANTHROPIC_SMALL_FAST_MODEL` | \[已弃用] [用于后台任务的 Haiku 级模型](/docs/zh-CN/costs)的名称 |187| `ANTHROPIC_SMALL_FAST_MODEL` | \[已弃用] [用于后台任务的 Haiku 级模型](/docs/zh-CN/costs)的名称 |

188| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | 在使用 Amazon Bedrock 或 Amazon Bedrock Mantle 时,覆盖 Haiku 级模型的 AWS 区域。在 Amazon Bedrock 上,仅当同时设置了 `ANTHROPIC_DEFAULT_HAIKU_MODEL` 或已弃用的 `ANTHROPIC_SMALL_FAST_MODEL` 时才会生效,因为否则 Amazon Bedrock 会在会话所在区域中使用[默认 Sonnet 模型或主模型](/docs/zh-CN/amazon-bedrock#4-pin-model-versions)运行后台任务 |188| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | 使用 Amazon Bedrock 或 Amazon Bedrock Mantle 时,覆盖 Haiku 级模型的 AWS 区域。在 Amazon Bedrock 上,只有在同时设置了 `ANTHROPIC_DEFAULT_HAIKU_MODEL` 或已弃用的 `ANTHROPIC_SMALL_FAST_MODEL` 时才会生效,因为否则 Amazon Bedrock 会在会话区域中使用[默认 Sonnet 模型或主模型](/docs/zh-CN/amazon-bedrock#4-pin-model-versions)运行后台任务 |

189| `ANTHROPIC_VERTEX_BASE_URL` | 覆盖 Google Cloud's Agent Platform 端点 URL。用于自定义 Google Cloud's Agent Platform 端点或通过 [LLM 网关](/docs/zh-CN/llm-gateway)路由时。请参阅 [Google Cloud's Agent Platform](/docs/zh-CN/google-vertex-ai) |189| `ANTHROPIC_VERTEX_BASE_URL` | 覆盖 Google Cloud's Agent Platform 端点 URL。用于自定义 Google Cloud's Agent Platform 端点或通过 [LLM 网关](/docs/zh-CN/llm-gateway)路由时。请参阅 [Google Cloud's Agent Platform](/docs/zh-CN/google-vertex-ai) |

190| `ANTHROPIC_VERTEX_PROJECT_ID` | Google Cloud's Agent Platform 请求所指向的 GCP 项目 ID。请参阅[配置 GCP 凭据](/docs/zh-CN/google-vertex-ai#3-configure-gcp-credentials) |190| `ANTHROPIC_VERTEX_PROJECT_ID` | Google Cloud's Agent Platform 请求所指向的 GCP 项目 ID。请参阅[配置 GCP 凭据](/docs/zh-CN/google-vertex-ai#3-configure-gcp-credentials) |

191| `ANTHROPIC_WORKSPACE_ID` | [工作负载身份联合](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation)的工作区 ID。当您的联合规则作用于多个工作区时设置此变量,以便令牌交换知道要针对哪个工作区 |191| `ANTHROPIC_WORKSPACE_ID` | 用于[工作负载身份联合](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation)的工作区 ID。当您的联合规则作用于多个工作区时设置此变量,以便令牌交换知道要以哪个工作区为目标 |

192| `API_FORCE_IDLE_TIMEOUT` | 覆盖 5 分钟的响应体空闲超时,该超时会在没有字节到达时中止流式模型响应。设置为 `0` 可关闭该超时,例如当速度较慢的[网关](/docs/zh-CN/llm-gateway)或本地模型在数据块之间暂停超过 5 分钟时;设置为 `1` 则对所有提供商保持开启。未设置时,该超时在直接 Anthropic API、[Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 以及设置了 `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1` 的 Amazon Bedrock 以外的提供商上生效。[流式监视器](/docs/zh-CN/network-config#streaming-idle-watchdogs)独立于它运行,即使您在此处设置 `0`,它们也会中止长时间的静默暂停 |192| `API_FORCE_IDLE_TIMEOUT` | 覆盖 5 分钟的响应体空闲超时,该超时会在没有字节到达时中止流式模型响应。设置为 `0` 可关闭该超时,例如当较慢的[网关](/docs/zh-CN/llm-gateway)或本地模型在两个数据块之间暂停超过 5 分钟时;设置为 `1` 可对所有提供商保持开启。未设置时,该超时在直接 Anthropic API、[Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 以及设置了 `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK=1` 的 Amazon Bedrock 以外的提供商上处于活动状态。[流式看门狗](/docs/zh-CN/network-config#streaming-idle-watchdogs)独立于它运行,即使您在此处设置了 `0`,它们也会中止长时间的静默暂停 |

193| `API_TIMEOUT_MS` | API 请求的超时时间,以毫秒为单位(默认值:600000,即 10 分钟;最大值:2147483647)。当请求在慢速网络上超时或通过代理路由时,请增大此值。超过最大值的值会使底层计时器溢出,导致请求立即失败 |193| `API_TIMEOUT_MS` | API 请求的超时时间,以毫秒为单位(默认值:600000,即 10 分钟;最大值:2147483647)。当请求在慢速网络上超时或通过代理路由时,请增大此值。超过最大值的值会使底层计时器溢出,导致请求立即失败 |

194| `AWS_BEARER_TOKEN_BEDROCK` | 用于身份验证的 Amazon Bedrock API 密钥(请参阅 [Amazon Bedrock API 密钥](https://aws.amazon.com/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/)) |194| `AWS_BEARER_TOKEN_BEDROCK` | 用于身份验证的 Amazon Bedrock API 密钥(请参阅 [Amazon Bedrock API 密钥](https://aws.amazon.com/blogs/machine-learning/accelerate-ai-development-with-amazon-bedrock-api-keys/)) |

195| `BASH_DEFAULT_TIMEOUT_MS` | 前台 Bash 或 PowerShell 工具命令的默认超时时间,以毫秒为单位(默认值:120000,即 2 分钟)。超过 30 分钟的默认值也会成为无人值守会话中[后台命令时间限制](/docs/zh-CN/tools-reference#time-limit-for-background-commands)的默认值。后台时间限制需要 Claude Code v2.1.285 或更高版本 |195| `BASH_DEFAULT_TIMEOUT_MS` | 前台 Bash 或 PowerShell 工具命令的默认超时时间,以毫秒为单位(默认值:120000,即 2 分钟)。超过 30 分钟的默认值还会成为无人值守会话中[后台命令时间限制](/docs/zh-CN/tools-reference#time-limit-for-background-commands)的默认值。后台时间限制需要 Claude Code v2.1.285 或更高版本 |

196| `BASH_MAX_OUTPUT_LENGTH` | Claude Code 读回到命令结果中的 bash 输出的最大字符数(默认值:30000;最大值:150000)。如果您设置了 [`bashOutputMaxChars`](/docs/zh-CN/settings-reference#bashoutputmaxchars) 设置,Claude Code 会忽略此变量。请参阅[输出限制](/docs/zh-CN/tools-reference#output-limits) |196| `BASH_MAX_OUTPUT_LENGTH` | Claude Code 读回到命令结果中的 bash 输出的最大字符数(默认值:30000;最大值:150000)。如果您设置了 [`bashOutputMaxChars`](/docs/zh-CN/settings-reference#bashoutputmaxchars) 设置,Claude Code 会忽略此变量。请参阅[输出限制](/docs/zh-CN/tools-reference#output-limits) |

197| `BASH_MAX_TIMEOUT_MS` | 模型可以为前台 Bash 或 PowerShell 工具命令设置的最大超时时间,以毫秒为单位(默认值:600000,即 10 分钟)。有效上限为此值与 `BASH_DEFAULT_TIMEOUT_MS` 中的较大者。超过 2 小时的有效上限也会成为无人值守会话中[后台命令时间限制](/docs/zh-CN/tools-reference#time-limit-for-background-commands)的最大值。后台时间限制需要 Claude Code v2.1.285 或更高版本 |197| `BASH_MAX_TIMEOUT_MS` | 模型可以为前台 Bash 或 PowerShell 工具命令设置的最大超时时间,以毫秒为单位(默认值:600000,即 10 分钟)。有效上限取此值与 `BASH_DEFAULT_TIMEOUT_MS` 中的较大者。超过 2 小时的有效上限还会成为无人值守会话中[后台命令时间限制](/docs/zh-CN/tools-reference#time-limit-for-background-commands)的最大值。后台时间限制需要 Claude Code v2.1.285 或更高版本 |

198| `BETA_TRACING_ENDPOINT` | 用于[详细 beta 追踪](/docs/zh-CN/monitoring-usage#traces-beta)的 OTLP 端点:设置 `ENABLE_BETA_TRACING_DETAILED=1` 后,日志和追踪数据会发送到该端点,而不是已配置的导出器。请在您的 shell、用户设置或托管设置中设置它。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略 |198| `BETA_TRACING_ENDPOINT` | 用于[详细 beta 追踪](/docs/zh-CN/monitoring-usage#traces-beta)的 OTLP 端点:设置 `ENABLE_BETA_TRACING_DETAILED=1` 后,日志和追踪数据会发送到此处,而不是发送到已配置的导出器。请在您的 shell、用户设置或托管设置中设置它。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略 |

199| `CCR_FORCE_BUNDLE` | 设置为 `1` 可强制 [`claude --cloud`](/docs/zh-CN/claude-code-on-the-web#send-local-repositories-without-github) 打包并上传您的本地仓库,而不是从其远程仓库克隆 |199| `CCR_FORCE_BUNDLE` | 设置为 `1` 可强制 [`claude --cloud`](/docs/zh-CN/claude-code-on-the-web#send-local-repositories-without-github) 打包并上传您的本地仓库,而不是从其远程仓库克隆 |

200| `CLAUDECODE` | 在 Claude Code 生成的子进程(Bash 和 PowerShell 工具、tmux 会话、[hook](/docs/zh-CN/hooks) 命令、[状态栏](/docs/zh-CN/statusline)命令、stdio [MCP 服务器](/docs/zh-CN/mcp)子进程)中设置为 `1`。IDE 扩展也会在其集成终端中设置此变量。用于检测脚本是否在 Claude Code 生成的子进程中运行。要检查当前进程是否由工具调用或 hook 直接生成,而不是在 Claude Code 启动的 stdio MCP 服务器内部运行,请改用 `CLAUDE_CODE_CHILD_SESSION` |200| `CLAUDECODE` | 在 Claude Code 生成的子进程(Bash 和 PowerShell 工具、tmux 会话、[hook](/docs/zh-CN/hooks) 命令、[状态栏](/docs/zh-CN/statusline)命令、stdio [MCP 服务器](/docs/zh-CN/mcp)子进程)中设置为 `1`。IDE 扩展也会在其集成终端中设置此变量。用于检测脚本是否正在 Claude Code 生成的子进程中运行。若要检查当前进程是否由工具调用或 hook 直接生成,而不是在 Claude Code 启动的 stdio MCP 服务器内部运行,请改用 `CLAUDE_CODE_CHILD_SESSION` |

201| `CLAUDE_AFK_COUNTDOWN_MS` | 在未回答的 [`AskUserQuestion`](/docs/zh-CN/tools-reference) 对话框自动继续之前多少毫秒显示屏幕倒计时。默认 `20000`(20 秒),上限为自动继续超时时间。除非开启了自动继续,否则无效;请参阅 [`askUserQuestionTimeout`](/docs/zh-CN/settings-reference#askuserquestiontimeout) 设置和 `CLAUDE_AFK_TIMEOUT_MS`。需要 Claude Code v2.1.198 或更高版本 |201| `CLAUDE_AFK_COUNTDOWN_MS` | 在未回答的 [`AskUserQuestion`](/docs/zh-CN/tools-reference) 对话框自动继续之前多少毫秒显示屏幕倒计时。默认值为 `20000`(20 秒),上限为自动继续超时时间。除非开启了自动继续,否则不起作用;请参阅 [`askUserQuestionTimeout`](/docs/zh-CN/settings-reference#askuserquestiontimeout) 设置和 `CLAUDE_AFK_TIMEOUT_MS`。需要 Claude Code v2.1.198 或更高版本 |

202| `CLAUDE_AFK_TIMEOUT_MS` | 空闲多少毫秒后,未回答的 [`AskUserQuestion`](/docs/zh-CN/tools-reference) 对话框会在没有您参与的情况下自动继续。自动继续默认关闭;可通过 [`askUserQuestionTimeout`](/docs/zh-CN/settings-reference#askuserquestiontimeout) 设置选择启用。此变量是用于演示和自动化测试的覆盖项:设置后,它优先于该设置,即使该设置未设置或为 `never`,也会开启自动继续。设置 `0` 不会关闭超时,而是会立即关闭对话框。在 v2.1.198 和 v2.1.199 中,自动继续默认开启,超时时间为 `60000`(60 秒)。需要 Claude Code v2.1.198 或更高版本 |202| `CLAUDE_AFK_TIMEOUT_MS` | 未回答的 [`AskUserQuestion`](/docs/zh-CN/tools-reference) 对话框在空闲多少毫秒后无需您参与即自动继续。自动继续默认关闭;可通过 [`askUserQuestionTimeout`](/docs/zh-CN/settings-reference#askuserquestiontimeout) 设置选择启用。此变量是用于演示和自动化测试的覆盖项:设置后,它优先于该设置,并且即使该设置未设置或为 `never`,也会开启自动继续。设置为 `0` 不会关闭超时,而是会立即关闭对话框。在 v2.1.198 和 v2.1.199 中,自动继续默认开启,超时时间为 `60000`(60 秒)。需要 Claude Code v2.1.198 或更高版本 |

203| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | 设置为 `1` 可禁用所有内置[子代理](/docs/zh-CN/sub-agents)类型,例如 Explore 和 Plan。仅适用于非交互模式(`-p` 标志)。适用于希望从空白状态开始的 SDK 用户。这也会移除 `general-purpose`,即当 Agent 工具调用省略 `subagent_type` 时 Claude Code 运行的子代理。此类调用随后会失败并显示 [`subagent_type is required`](/docs/zh-CN/errors#subagent-type-is-required) |203| `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS` | 设置为 `1` 可禁用所有内置[子代理](/docs/zh-CN/sub-agents)类型,例如 Explore 和 Plan。仅适用于非交互模式(`-p` 标志)。适用于希望从空白状态开始的 SDK 用户。这也会移除 `general-purpose`,即当 Agent 工具调用省略 `subagent_type` 时 Claude Code 运行的子代理。此类调用随后会失败,并显示 [`subagent_type is required`](/docs/zh-CN/errors#subagent-type-is-required) |

204| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | 设置为 `1` 可跳过 SDK 创建的 MCP 服务器中工具名称的 `mcp__<server>__` 前缀。工具使用其原始名称。仅用于 SDK |204| `CLAUDE_AGENT_SDK_MCP_NO_PREFIX` | 设置为 `1` 可跳过 SDK 创建的 MCP 服务器中工具名称上的 `mcp__<server>__` 前缀。工具使用其原始名称。仅限 SDK 使用 |

205| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | 子代理的停滞超时时间,以毫秒为单位。默认 `600000`(10 分钟);如果您在流式监视器开启时调高 `CLAUDE_STREAM_IDLE_TIMEOUT_MS`,默认值也会随之提高,如[处理缓慢或停滞的 API 响应](/docs/zh-CN/agent-sdk/typescript#handle-slow-or-stalled-api-responses)中所述。计时器在每个流式进度事件发生时重置;如果在该时间窗口内没有进度到达,Claude Code 会中止该子代理并向父级报告停滞 |205| `CLAUDE_ASYNC_AGENT_STALL_TIMEOUT_MS` | 子代理的停滞超时时间,以毫秒为单位。默认值为 `600000`(10 分钟);如果您在流式看门狗开启时调高 `CLAUDE_STREAM_IDLE_TIMEOUT_MS`,默认值也会随之提高,如[处理缓慢或停滞的 API 响应](/docs/zh-CN/agent-sdk/typescript#handle-slow-or-stalled-api-responses)所述。计时器会在每个流式进度事件时重置;如果在该时间窗口内没有收到进度,Claude Code 会中止该子代理并向父级报告停滞 |

206| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | 设置在自动压缩窗口的多少百分比(1-100)时触发自动压缩。使用较低的值(如 `50`)可更早压缩;该变量无法提高阈值,因此高于默认百分比的值会被忽略。它仅适用于[在达到模型上下文限制之前压缩](/docs/zh-CN/model-config#context-window-and-auto-compaction)的会话。同时适用于主对话和子代理 |206| `CLAUDE_AUTOCOMPACT_PCT_OVERRIDE` | 设置触发自动压缩时所达到的自动压缩窗口百分比(1-100)。使用较低的值(例如 `50`)可以更早压缩;该变量无法提高阈值,因此高于默认百分比的值会被忽略。它仅适用于[在达到模型上下文限制之前进行压缩](/docs/zh-CN/model-config#context-window-and-auto-compaction)的会话。同时适用于主对话和子代理 |

207| `CLAUDE_AUTO_BACKGROUND_TASKS` | 设置为 `1` 可强制启用长时间运行的 Agent 任务的自动后台化。启用后,子代理在运行约两分钟后会被移到后台。在 Claude Code v2.1.212 或更高版本上,还会在非交互模式下启用[长时间 MCP 工具调用的自动后台化](/docs/zh-CN/mcp#automatic-backgrounding-of-long-tool-calls) |207| `CLAUDE_AUTO_BACKGROUND_TASKS` | 设置为 `1` 可强制启用长时间运行的 Agent 任务的自动后台化。启用后,子代理在运行约两分钟后会被移至后台。在 Claude Code v2.1.212 或更高版本中,还会在非交互模式下启用[长时间 MCP 工具调用的自动后台化](/docs/zh-CN/mcp#automatic-backgrounding-of-long-tool-calls) |

208| `CLAUDE_AX_PREPARK_MS` | 在[屏幕阅读器模式](/docs/zh-CN/accessibility)下,Claude Code 在写入新行或已更改的行之前等待的毫秒数。默认 `0`,因此 Claude Code 不会等待。在 v2.1.287 之前,默认值为 `50`。Claude Code 将等待时间上限设为 `5000`。需要 Claude Code v2.1.233 或更高版本 |208| `CLAUDE_AX_PREPARK_MS` | 在[屏幕阅读器模式](/docs/zh-CN/accessibility)下,Claude Code 在写入新行或已更改的行之前等待的毫秒数。默认值为 `0`,因此 Claude Code 不会等待。在 v2.1.287 之前,默认值为 `50`。Claude Code 将等待时间上限设为 `5000`。需要 Claude Code v2.1.233 或更高版本 |

209| `CLAUDE_AX_SCREEN_READER` | 设置为 `1` 可渲染对屏幕阅读器友好的输出:不带装饰性边框或动画的纯文本。设置为 `0` 可强制关闭屏幕阅读器模式,即使 [`axScreenReader`](/docs/zh-CN/settings-reference#axscreenreader) 为 `true`。[`--ax-screen-reader`](/docs/zh-CN/cli-reference#cli-flags) 标志优先。需要 Claude Code v2.1.181 或更高版本 |209| `CLAUDE_AX_SCREEN_READER` | 设置为 `1` 可渲染对屏幕阅读器友好的输出:不含装饰性边框或动画的纯文本。设置为 `0` 可强制关闭屏幕阅读器模式,即使 [`axScreenReader`](/docs/zh-CN/settings-reference#axscreenreader) 为 `true`。[`--ax-screen-reader`](/docs/zh-CN/cli-reference#cli-flags) 标志优先。需要 Claude Code v2.1.181 或更高版本 |

210| `CLAUDE_AX_STARTUP_QUIET_MS` | 在[屏幕阅读器模式](/docs/zh-CN/accessibility)下,Claude Code 在启动确认行之后推迟首次界面渲染的毫秒数,以便您的屏幕阅读器能在新输出打断之前完整朗读该行。默认 `3000`。设置 `0` 可立即渲染。Claude Code 将推迟时间上限设为 `600000`(10 分钟)。您的第一次按键会提前结束推迟。需要 Claude Code v2.1.217 或更高版本 |210| `CLAUDE_AX_STARTUP_QUIET_MS` | 在[屏幕阅读器模式](/docs/zh-CN/accessibility)下,Claude Code 在启动确认行之后暂缓首次界面渲染的毫秒数,以便您的屏幕阅读器在新输出打断之前完整朗读该行。默认值为 `3000`。设置为 `0` 可立即渲染。Claude Code 将暂缓时间上限设为 `600000`(10 分钟)。您的第一次按键会提前结束暂缓。需要 Claude Code v2.1.217 或更高版本 |

211| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | 在主会话中每次执行 Bash 或 PowerShell 命令后返回原始工作目录 |211| `CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR` | 在主会话中每个 Bash 或 PowerShell 命令执行后返回原始工作目录 |

212| `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` | 字节级流式空闲监视器的超时时间,以毫秒为单位;设置后,对于该监视器,它优先于 `CLAUDE_STREAM_IDLE_TIMEOUT_MS`,且不改变事件级监视器。Claude Code 将此变量限制在 10 秒到 30 分钟之间。需要 Claude Code v2.1.210 或更高版本 |212| `CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` | 字节级流式空闲看门狗的超时时间,以毫秒为单位;设置后,对于该看门狗,它优先于 `CLAUDE_STREAM_IDLE_TIMEOUT_MS`,并且不改变事件级看门狗。Claude Code 将此变量限制在 10 秒到 30 分钟之间。需要 Claude Code v2.1.210 或更高版本 |

213| `CLAUDE_CLIENT_PRESENCE_FILE` | 一个文件的路径,该文件由外部工具(例如锁屏监听器)在您解锁屏幕时创建、在您锁定屏幕时删除。当该文件存在时,Claude Code 会跳过 [Remote Control 移动推送通知](/docs/zh-CN/remote-control#mobile-push-notifications),这样您在主动使用计算机时就不会再收到推送。当该文件不存在或不可读时,通知照常发送。Claude Code 在每个触发推送的事件发生时检查一次该文件,而不是轮询它。需要 Claude Code v2.1.181 或更高版本 |213| `CLAUDE_CLIENT_PRESENCE_FILE` | 一个文件的路径,该文件由外部工具(例如锁屏监听器)在您解锁屏幕时创建、在您锁定屏幕时删除。只要该文件存在,Claude Code 就会跳过 [Remote Control 移动推送通知](/docs/zh-CN/remote-control#mobile-push-notifications),这样您在正在使用电脑时就不会收到推送。当该文件不存在或无法读取时,通知会照常发送。Claude Code 在每次触发推送的事件时检查一次该文件,而不是轮询它。需要 Claude Code v2.1.181 或更高版本 |

214| `CLAUDE_CODE_ACCESSIBILITY` | 设置为 `1` 可保持原生终端光标可见,并禁用反色文本光标指示器。使 macOS 缩放等屏幕放大器能够跟踪光标位置 |214| `CLAUDE_CODE_ACCESSIBILITY` | 设置为 `1` 可保持原生终端光标可见,并禁用反色文本光标指示器。可让 macOS 缩放等屏幕放大器跟踪光标位置 |

215| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | 设置为 `1` 可从通过 `--add-dir` 指定的目录加载记忆文件。加载 `CLAUDE.md`、`.claude/CLAUDE.md`、`.claude/rules/*.md` 和 `CLAUDE.local.md`。默认情况下,附加目录不会加载记忆文件 |215| `CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD` | 设置为 `1` 可从通过 `--add-dir` 指定的目录中加载记忆文件。加载 `CLAUDE.md`、`.claude/CLAUDE.md`、`.claude/rules/*.md` 和 `CLAUDE.local.md`。默认情况下,附加目录不会加载记忆文件 |

216| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | 设置为 `1` 可在[全屏渲染](/docs/zh-CN/fullscreen)中每一帧都重绘整个屏幕,而不是发送增量更新。如果全屏模式显示过时或错位的文本片段,请使用此选项。Claude Code 会在 Windows 上为后台会话和 [Agent 视图](/docs/zh-CN/agent-view)自动启用此选项 |216| `CLAUDE_CODE_ALT_SCREEN_FULL_REPAINT` | 设置为 `1` 可在[全屏渲染](/docs/zh-CN/fullscreen)中每一帧都重绘整个屏幕,而不是发送增量更新。如果全屏模式显示过时或错位的文本片段,请使用此选项。Claude Code 会在 Windows 上为后台会话和 [Agent 视图](/docs/zh-CN/agent-view)自动启用此功能 |

217| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | 设置为 `1` 可在每个请求中发送 [effort](/docs/zh-CN/model-config#adjust-effort-level) 参数,即使 Claude Code 不认为该模型 ID 支持 effort。在通过 [LLM 网关](/docs/zh-CN/llm-gateway)或以自定义标识符提供模型的第三方提供商路由时使用。在 API 层面拒绝 effort 参数的模型(包括 Claude 3 模型、Sonnet 4.0 和 4.5、Opus 4.0 和 4.1 以及 Haiku 4.5)仍会被排除,以免请求失败 |217| `CLAUDE_CODE_ALWAYS_ENABLE_EFFORT` | 设置为 `1` 可在每个请求中发送 [effort](/docs/zh-CN/model-config#adjust-effort-level) 参数,即使 Claude Code 无法识别该模型 ID 支持 effort。当通过以自定义标识符提供模型的 [LLM 网关](/docs/zh-CN/llm-gateway)或第三方提供商路由时使用此选项。在 API 层面拒绝 effort 参数的模型(包括 Claude 3 模型、Sonnet 4.0 和 4.5、Opus 4.0 和 4.1 以及 Haiku 4.5)仍会被排除,因此请求不会失败 |

218| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | 刷新凭据的时间间隔,以毫秒为单位(使用 [`apiKeyHelper`](/docs/zh-CN/settings-reference#apikeyhelper) 时) |218| `CLAUDE_CODE_API_KEY_HELPER_TTL_MS` | 刷新凭据的时间间隔,以毫秒为单位(使用 [`apiKeyHelper`](/docs/zh-CN/settings-reference#apikeyhelper) 时) |

219| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | 设置为 `0` 可阻止 Claude Code 在发布新的 [Artifact](/docs/zh-CN/artifacts#create-an-artifact) 时自动打开浏览器 |219| `CLAUDE_CODE_ARTIFACT_AUTO_OPEN` | 设置为 `0` 可阻止 Claude Code 在发布新的 [Artifact](/docs/zh-CN/artifacts#create-an-artifact) 时自动打开浏览器 |

220| `CLAUDE_CODE_ARTIFACT_COMMENTS` | 设置为 `0` 可阻止 Claude 读取和回复 [Artifact 上的评论](/docs/zh-CN/artifacts#collect-comments-on-an-artifact)。当 `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` 已[关闭 Artifact](/docs/zh-CN/artifacts#availability) 时无效。需要 Claude Code v2.1.221 或更高版本 |220| `CLAUDE_CODE_ARTIFACT_COMMENTS` | 设置为 `0` 可阻止 Claude 读取和回复 [Artifact 上的评论](/docs/zh-CN/artifacts#collect-comments-on-an-artifact)。当 `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` 已[关闭 Artifact](/docs/zh-CN/artifacts#availability) 时不起作用。需要 Claude Code v2.1.221 或更高版本 |

221| `CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT` | 设置为 `0` 可阻止 Claude [自行回复发送给它的评论](/docs/zh-CN/artifacts#let-claude-reply-to-comments-on-its-own)。需要 Claude Code v2.1.228 或更高版本 |221| `CLAUDE_CODE_ARTIFACT_COMMENTS_AUTOREACT` | 设置为 `0` 可阻止 Claude [自行回复发送给它的评论](/docs/zh-CN/artifacts#let-claude-reply-to-comments-on-its-own)。需要 Claude Code v2.1.228 或更高版本 |

222| `CLAUDE_CODE_ATTRIBUTION_HEADER` | 设置为 `0` 可从系统提示词开头省略[归属块](/docs/zh-CN/llm-gateway-protocol#system-prompt-attribution-block),该块包含客户端版本和提示词指纹。无论哪种方式,直接连接到 Anthropic API 时的缓存都不受影响。在某些直接连接设置中,即使您设置了 `0`,Claude Code 也会在[自动模式](/docs/zh-CN/permission-modes#eliminate-prompts-with-auto-mode)分类器请求中保留该块。请在[系统提示词归属块](/docs/zh-CN/llm-gateway-protocol#system-prompt-attribution-block)中查看这涵盖了哪些连接和凭据。在 v2.1.181 之前,该块在自定义基础 URL 和 Microsoft Foundry 连接上包含每个请求各不相同的 token,因此在这些版本上,当您的 LLM 网关基于请求体进行缓存或将请求转发给第三方提供商时,或者当您直接连接到 Microsoft Foundry 时,请将其设置为 `0` |222| `CLAUDE_CODE_ATTRIBUTION_HEADER` | 设置为 `0` 可从系统提示词开头省略[归属块](/docs/zh-CN/llm-gateway-protocol#system-prompt-attribution-block),该块包含客户端版本和提示词指纹。无论哪种方式,直接连接 Anthropic API 时的缓存都不受影响。在某些直接连接配置中,即使您设置了 `0`,Claude Code 仍会在[自动模式](/docs/zh-CN/permission-modes#eliminate-prompts-with-auto-mode)分类器请求中保留该块。请在[系统提示词归属块](/docs/zh-CN/llm-gateway-protocol#system-prompt-attribution-block)中查看这涵盖哪些连接和凭据。在 v2.1.181 之前,该块在自定义基础 URL 和 Microsoft Foundry 连接上包含一个按请求生成的令牌,因此在这些版本上,当您的 LLM 网关基于请求体进行缓存或将请求转发给第三方提供商时,或者当您直接连接到 Microsoft Foundry 时,请将其设置为 `0` |

223| `CLAUDE_CODE_AUTO_BACKGROUND_WORKER_CHECKIN_SECONDS` | 当启用 `CLAUDE_AUTO_BACKGROUND_TASKS` 时,提醒 Claude 检查仍在运行的[后台子代理](/docs/zh-CN/sub-agents#run-subagents-in-foreground-or-background)的间隔秒数。仅接受 `1` 到 `86400` 之间的普通整数;任何其他值或写法都视为未设置。未设置时,不会发出检查提醒。需要 Claude Code v2.1.248 或更高版本 |223| `CLAUDE_CODE_AUTO_BACKGROUND_WORKER_CHECKIN_SECONDS` | 已在 v2.1.283 中移除。请改用 `CLAUDE_CODE_WORKER_CHECKIN_SCHEDULE` |

224| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | 以 token 为单位设置[自动压缩窗口](/docs/zh-CN/model-config#set-the-auto-compact-window),范围为 `100000` 到 `1000000`。仅接受普通整数,例如 `500000`:像 `500k` 这样的值会被读取为 `500`,并被限制到 100K 的最小值。有效窗口还受模型上下文窗口的限制。优先于 `/autocompact` 命令、`--autocompact` 标志和 `autoCompactWindow` 设置。状态栏的 `used_percentage` 始终以模型的完整上下文窗口为基准进行衡量,因此一旦设置了此变量,该百分比将不再指示何时运行压缩 |224| `CLAUDE_CODE_AUTO_COMPACT_WINDOW` | 以 token 为单位设置[自动压缩窗口](/docs/zh-CN/model-config#set-the-auto-compact-window),范围为 `100000` 到 `1000000`。仅接受普通整数,例如 `500000`:像 `500k` 这样的值会被读取为 `500`,并被限制为 100K 的最小值。有效窗口还受模型上下文窗口的上限限制。优先于 `/autocompact` 命令、`--autocompact` 标志和 `autoCompactWindow` 设置。状态栏的 `used_percentage` 始终以模型的完整上下文窗口为基准进行衡量,因此一旦设置了此变量,该百分比就不再能表明何时会进行压缩 |

225| `CLAUDE_CODE_AUTO_CONNECT_IDE` | 覆盖自动 [IDE 连接](/docs/zh-CN/vs-code)。默认情况下,在受支持 IDE 的集成终端中启动时,Claude Code 会自动连接。设置为 `false` 可阻止此行为。设置为 `true` 可在自动检测失败时(例如 tmux 遮蔽了父终端时)强制尝试连接。优先于 [`autoConnectIde`](/docs/zh-CN/settings-reference#autoconnectide) 全局配置设置 |225| `CLAUDE_CODE_AUTO_CONNECT_IDE` | 覆盖自动 [IDE 连接](/docs/zh-CN/vs-code)。默认情况下,在受支持 IDE 的集成终端中启动时,Claude Code 会自动连接。设置为 `false` 可阻止此行为。设置为 `true` 可在自动检测失败时(例如 tmux 遮蔽了父终端时)强制尝试连接。优先于 [`autoConnectIde`](/docs/zh-CN/settings-reference#autoconnectide) 全局配置设置 |

226| `CLAUDE_CODE_AUTO_MODE_SERVER` | 控制 Claude Code 是否请求服务器[审查自动模式操作](/docs/zh-CN/permission-modes#server-side-classifier-review)。设置为 `0` 可改用 Claude Code 自己的分类器请求。在直接连接到 Anthropic API 时,需要 v2.1.281 或更高版本。链接的章节列出了在未设置该变量时哪些会话会请求服务器,以及从哪个版本开始。需要 Claude Code v2.1.271 或更高版本 |226| `CLAUDE_CODE_AUTO_MODE_SERVER` | 控制 Claude Code 是否请求服务器[审查自动模式操作](/docs/zh-CN/permission-modes#server-side-classifier-review)。设置为 `0` 可改用 Claude Code 自身的分类器请求。在直接连接 Anthropic API 时,需要 v2.1.281 或更高版本。链接的章节列出了在未设置该变量时哪些会话会请求服务器,以及从哪个版本开始。需要 Claude Code v2.1.271 或更高版本 |

227| `CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS` | Claude Code 等待 AWS 默认凭据提供程序链生成凭据的时间,以毫秒为单位,超时后请求会失败并显示 [`AWS default-chain credential resolve timed out`](/docs/zh-CN/errors#aws-default-chain-credential-resolve-timed-out)(默认值:`60000`)。当链中的某个步骤确实需要更长时间时(例如通过 `aws-vault` 等包装器进行的带 MFA 的基于浏览器的 SSO 登录),请调高此值。适用于 Claude Code 使用默认链签名的所有场景:[Amazon Bedrock](/docs/zh-CN/amazon-bedrock#credential-caching-and-resolution-timeout)、[Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 和 [Mantle 端点](/docs/zh-CN/amazon-bedrock#use-the-mantle-endpoint)。需要 Claude Code v2.1.207 或更高版本 |227| `CLAUDE_CODE_AWS_CHAIN_RESOLVE_TIMEOUT_MS` | Claude Code 等待 AWS 默认凭据提供程序链生成凭据的时间,以毫秒为单位,超过此时间请求将失败并显示 [`AWS default-chain credential resolve timed out`](/docs/zh-CN/errors#aws-default-chain-credential-resolve-timed-out)(默认值:`60000`)。当您的凭据链中某个步骤确实需要更长时间时(例如通过 `aws-vault` 等包装器进行带 MFA 的基于浏览器的 SSO 登录),请调高此值。适用于 Claude Code 使用默认链签名的所有场景:[Amazon Bedrock](/docs/zh-CN/amazon-bedrock#credential-caching-and-resolution-timeout)、[Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 和 [Mantle 端点](/docs/zh-CN/amazon-bedrock#use-the-mantle-endpoint)。需要 Claude Code v2.1.207 或更高版本 |

228| `CLAUDE_CODE_BASH_EDIT_DIFF` | 设置为 `0` 可关闭 [Bash 命令运行期间所更改文件的 diff](/docs/zh-CN/hooks#bash),设置为 `1` 可在每种权限模式下记录它。优先于 [`bashEditDiffEnabled`](/docs/zh-CN/settings-reference#basheditdiffenabled) 设置。需要 Claude Code v2.1.269 或更高版本 |228| `CLAUDE_CODE_BASH_EDIT_DIFF` | 设置为 `0` 可关闭 [Bash 命令运行期间所更改文件的 diff](/docs/zh-CN/hooks#bash),设置为 `1` 可在每种权限模式下都记录它。优先于 [`bashEditDiffEnabled`](/docs/zh-CN/settings-reference#basheditdiffenabled) 设置。需要 Claude Code v2.1.269 或更高版本 |

229| `CLAUDE_CODE_BG_TASKS_REPORT_RUNNING` | 设置为 `0` 可使非交互会话在每个轮次结束时向其宿主报告空闲状态,即使后台工作仍在运行。默认情况下,当后台 Agent 或[工作流](/docs/zh-CN/workflows)运行等后台工作仍处于活动状态时,会话在轮次结束后会继续报告运行状态。这可以防止监视该状态的宿主(例如远程会话列表)在工作进行中宣布 Claude 正在等待您的输入。后台 shell 命令(例如开发服务器)不会保持运行状态。运行状态默认行为和 `0` 选择退出需要 Claude Code v2.1.269 或更高版本;在更早的版本上,设置 `1` 可保持运行状态 |229| `CLAUDE_CODE_BG_TASKS_REPORT_RUNNING` | 设置为 `0` 可使非交互会话在每个轮次结束时向其主机报告空闲状态,即使后台工作仍在运行。默认情况下,当后台工作(例如后台 Agent 或[工作流](/docs/zh-CN/workflows)运行)仍在进行时,会话在轮次结束后会继续报告运行状态。这可以防止监视状态的主机(例如远程会话列表)在工作进行中宣布 Claude 正在等待您的输入。后台 shell 命令(例如开发服务器)不会保持运行状态。运行状态默认行为和 `0` 选择退出需要 Claude Code v2.1.269 或更高版本;在更早的版本中,设置为 `1` 可保持运行状态 |

230| `CLAUDE_CODE_BRIDGE_SESSION_ID` | 当会话有活动的 [Remote Control](/docs/zh-CN/remote-control) 连接时,在 Bash 工具和 [hook 命令](/docs/zh-CN/hooks)子进程中自动设置,并在连接结束时移除。该值是 `session_` 形式的会话 ID,与会话的 `claude.ai/code` URL 中出现的标识符相同,因此脚本可以链接回运行它的会话。需要 Claude Code v2.1.199 或更高版本。在[云端会话](/docs/zh-CN/claude-code-on-the-web)中,请改为读取 `CLAUDE_CODE_REMOTE_SESSION_ID` |230| `CLAUDE_CODE_BRIDGE_SESSION_ID` | 当会话具有活动的 [Remote Control](/docs/zh-CN/remote-control) 连接时,会在 Bash 工具和 [hook 命令](/docs/zh-CN/hooks)子进程中自动设置,并在连接结束时移除。该值是 `session_` 形式的会话 ID,与会话的 `claude.ai/code` URL 中出现的标识符相同,因此脚本可以链接回运行它的会话。需要 Claude Code v2.1.199 或更高版本。在[云端会话](/docs/zh-CN/claude-code-on-the-web)中,请改为读取 `CLAUDE_CODE_REMOTE_SESSION_ID` |

231| `CLAUDE_CODE_BS_AS_CTRL_BACKSPACE` | 设置为 `0` 可使 Claude Code 将 `0x08` 字节(也写作 `^H`)读取为普通 Backspace,设置为 `1` 则将其读取为 Ctrl+Backspace。任一值都会替换平台默认值。默认情况下,Claude Code 在 Windows 上将其读取为 Ctrl+Backspace(`TERM_PROGRAM` 为 `mintty` 或 `TERM` 为 `cygwin` 时除外),在 macOS 和 Linux 上将其读取为普通 Backspace。在 [Backspace 会删除整个单词](/docs/zh-CN/terminal-config#fix-backspace-deleting-a-whole-word-on-windows)的 Windows 终端中请设置 `0` |231| `CLAUDE_CODE_BS_AS_CTRL_BACKSPACE` | 设置为 `0` 可使 Claude Code 将 `0x08` 字节(也写作 `^H`)读取为普通 Backspace,设置为 `1` 则读取为 Ctrl+Backspace。任一值都会替换平台默认行为。默认情况下,Claude Code 在 Windows 上将其读取为 Ctrl+Backspace(`TERM_PROGRAM` 为 `mintty` 或 `TERM` 为 `cygwin` 时除外),在 macOS 和 Linux 上读取为普通 Backspace。在 [Backspace 会删除整个单词](/docs/zh-CN/terminal-config#fix-backspace-deleting-a-whole-word-on-windows)的 Windows 终端中,请设置为 `0` |

232| `CLAUDE_CODE_CERT_STORE` | 用于 TLS 连接的 CA 证书来源的逗号分隔列表。`bundled` 是随 Claude Code 提供的 Mozilla CA 集。`system` 是操作系统信任存储,仅在具有 `tls.getCACertificates` 的运行时上读取:原生二进制文件,或 npm 安装时的 Node 22.15 或更高版本。请参阅 [CA 证书存储](/docs/zh-CN/network-config#ca-certificate-store)。默认值为 `bundled,system` |232| `CLAUDE_CODE_CERT_STORE` | 以逗号分隔的 TLS 连接 CA 证书来源列表。`bundled` 是 Claude Code 附带的 Mozilla CA 集合。`system` 是操作系统信任存储,仅在具有 `tls.getCACertificates` 的运行时上读取:原生二进制文件,或 npm 安装时的 Node 22.15 或更高版本。请参阅 [CA 证书存储](/docs/zh-CN/network-config#ca-certificate-store)。默认值为 `bundled,system` |

233| `CLAUDE_CODE_CHILD_SESSION` | 在 Claude Code 通过 Bash、PowerShell 和 Monitor 工具、[hook](/docs/zh-CN/hooks) 命令以及[状态栏](/docs/zh-CN/statusline)命令生成的子进程中设置为 `1`。不会为 stdio [MCP 服务器](/docs/zh-CN/mcp)子进程设置,因为它们是长期运行的,生命周期比生成它们的会话更长。与 `CLAUDECODE` 不同,此变量仅由 Claude Code 本身在启动子进程时设置,而不会由 IDE 扩展设置,因此它能可靠地区分嵌套会话与在 IDE 集成终端中启动的顶层 `claude`。以这种方式启动的嵌套交互式 `claude` TUI 会被自动排除在 `--resume`、`--continue`、上箭头历史记录和 `claude agents` 列表之外。非交互式 `claude -p` 会话仍会持久保存。设置 `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1` 可覆盖此排除。需要 Claude Code v2.1.172 或更高版本 |233| `CLAUDE_CODE_CHILD_SESSION` | 在 Claude Code 通过 Bash、PowerShell 和 Monitor 工具、[hook](/docs/zh-CN/hooks) 命令以及[状态栏](/docs/zh-CN/statusline)命令生成的子进程中设置为 `1`。不会为 stdio [MCP 服务器](/docs/zh-CN/mcp)子进程设置,因为这些子进程是长期存在的,其生命周期会超过生成它们的会话。与 `CLAUDECODE` 不同,此变量仅由 Claude Code 自身在启动子进程时设置,而不会由 IDE 扩展设置,因此它能可靠地区分嵌套会话与在 IDE 集成终端中启动的顶层 `claude`。以这种方式启动的嵌套交互式 `claude` TUI 会自动从 `--resume`、`--continue`、上箭头历史记录和 `claude agents` 列表中排除。非交互式 `claude -p` 会话仍会持久保存。设置 `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE=1` 可覆盖此排除。需要 Claude Code v2.1.172 或更高版本 |

234| `CLAUDE_CODE_CLIENT_CERT` | 用于 mTLS 身份验证的客户端证书文件路径 |234| `CLAUDE_CODE_CLIENT_CERT` | 用于 mTLS 身份验证的客户端证书文件路径 |

235| `CLAUDE_CODE_CLIENT_KEY` | 用于 mTLS 身份验证的客户端私钥文件路径 |235| `CLAUDE_CODE_CLIENT_KEY` | 用于 mTLS 身份验证的客户端私钥文件路径 |

236| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | 加密的 CLAUDE\_CODE\_CLIENT\_KEY 的密码(可选) |236| `CLAUDE_CODE_CLIENT_KEY_PASSPHRASE` | 已加密的 CLAUDE\_CODE\_CLIENT\_KEY 的密码(可选) |

237| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | 已在 v2.1.186 中移除,现在不起任何作用。之前用于为流式 API 请求的连接、TLS 和响应标头阶段设置单独的超时时间。请使用 `API_TIMEOUT_MS` 设置每个请求的超时时间。对于流式请求的响应标头阶段,请参阅 `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` |237| `CLAUDE_CODE_CONNECT_TIMEOUT_MS` | 已在 v2.1.186 中移除,现在不起任何作用。以前用于为流式 API 请求的连接、TLS 和响应头阶段设置单独的超时时间。请使用 `API_TIMEOUT_MS` 设置每个请求的超时时间。关于流式请求的响应头阶段,请参阅 `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` |

238| `CLAUDE_CODE_DEBUG_LOGS_DIR` | 覆盖调试日志文件路径。尽管名称如此,但这是一个文件路径,而不是目录。需要通过 `--debug`、`/debug` 或 `DEBUG` 环境变量单独启用调试模式:仅设置此变量不会启用日志记录。[`--debug-file`](/docs/zh-CN/cli-reference#cli-flags) 标志可同时完成这两项。默认为 `~/.claude/debug/<session-id>.txt` |238| `CLAUDE_CODE_DEBUG_LOGS_DIR` | 覆盖调试日志文件路径。尽管名称如此,但这是一个文件路径,而不是目录。需要通过 `--debug`、`/debug` 或 `DEBUG` 环境变量单独启用调试模式:仅设置此变量不会启用日志记录。[`--debug-file`](/docs/zh-CN/cli-reference#cli-flags) 标志可同时完成这两项。默认为 `~/.claude/debug/<session-id>.txt` |

239| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | 写入调试日志文件的最低日志级别。可选值:`verbose`、`debug`(默认)、`info`、`warn`、`error`。设置为 `verbose` 可包含大量诊断信息(例如完整的状态栏命令输出),或提高到 `error` 以减少干扰信息 |239| `CLAUDE_CODE_DEBUG_LOG_LEVEL` | 写入调试日志文件的最低日志级别。取值:`verbose`、`debug`(默认)、`info`、`warn`、`error`。设置为 `verbose` 可包含大量诊断信息(例如完整的状态栏命令输出),或提高到 `error` 以减少干扰信息 |

240| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | 设置为 `1` 可禁用 [1M 上下文窗口](/docs/zh-CN/model-config#extended-context)支持。设置后,1M 模型变体在模型选择器中不可用,并且Claude Code 会将使用原生 1M 窗口的模型(例如 [Sonnet 5.5](/docs/zh-CN/model-config#sonnet-5-5-and-sonnet-5-context-window) 和 Fable 模型)上的会话限制在 200K 窗口;有关如何强制执行此限制,请参阅[扩展上下文](/docs/zh-CN/model-config#extended-context)。适用于有合规要求的企业环境。关于它在为无法识别的 `[1m]` 模型 ID 修正窗口方面的作用,请参阅[为网关或自定义模型 ID 修正窗口](/docs/zh-CN/model-config#correct-the-window-for-a-gateway-or-custom-model-id) |240| `CLAUDE_CODE_DISABLE_1M_CONTEXT` | 设置为 `1` 可禁用 [1M 上下文窗口](/docs/zh-CN/model-config#extended-context)支持。设置后,1M 模型变体在模型选择器中不可用,并且 Claude Code 会将使用原生 1M 窗口的模型(例如 [Sonnet 5.5](/docs/zh-CN/model-config#sonnet-5-5-and-sonnet-5-context-window) 和 Fable 模型)上的会话限制在 200K 窗口;有关如何强制执行该限制,请参阅[扩展上下文](/docs/zh-CN/model-config#extended-context)。适用于有合规要求的企业环境。关于它在为无法识别的 `[1m]` 模型 ID 校正窗口方面的作用,请参阅[为网关或自定义模型 ID 校正窗口](/docs/zh-CN/model-config#correct-the-window-for-a-gateway-or-custom-model-id) |

241| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | 设置为 `1` 可在 Opus 4.6 和 Sonnet 4.6 上禁用[自适应推理](/docs/zh-CN/model-config#adjust-effort-level),并回退到由 `MAX_THINKING_TOKENS` 控制的固定思考预算。对 [Fable 模型](/docs/zh-CN/model-config#extended-thinking)、Sonnet 5 及更高版本或 Opus 4.7 及更高版本无效,这些模型始终使用自适应推理 |241| `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` | 设置为 `1` 可在 Opus 4.6 和 Sonnet 4.6 上禁用[自适应推理](/docs/zh-CN/model-config#adjust-effort-level),并回退到由 `MAX_THINKING_TOKENS` 控制的固定思考预算。对 [Fable 模型](/docs/zh-CN/model-config#extended-thinking)、Sonnet 5 及更高版本或 Opus 4.7 及更高版本不起作用,这些模型始终使用自适应推理 |

242| `CLAUDE_CODE_DISABLE_ADMIN_ENV_UNION` | 设置为 `1` 可阻止 Claude Code 跨管理员来源按键合并[托管设置](/docs/zh-CN/managed-settings#precedence-within-the-managed-tier)的 `env` 块,从而仅应用最高优先级来源的整个 `env` 块,与 v2.1.223 之前相同。请在启动 Claude Code 的环境中设置它,因为 Claude Code 会忽略通过设置 `env` 块下发的副本。需要 Claude Code v2.1.223 或更高版本 |242| `CLAUDE_CODE_DISABLE_ADMIN_ENV_UNION` | 设置为 `1` 可阻止 Claude Code 在各管理员来源之间按键合并[托管设置](/docs/zh-CN/managed-settings#precedence-within-the-managed-tier)的 `env` 块,从而只应用最高优先级来源的整个 `env` 块,与 v2.1.223 之前的行为相同。请在启动 Claude Code 的环境中设置它,因为 Claude Code 会忽略通过设置 `env` 块提供的副本。需要 Claude Code v2.1.223 或更高版本 |

243| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | 设置为 `1` 可禁用 [advisor 工具](/docs/zh-CN/advisor)。`/advisor` 命令将不可用,任何已配置的 `advisorModel` 都会被忽略,`--advisor` 标志会被接受但不起作用,因此传递该标志的现有脚本可以继续正常运行而不会出错 |243| `CLAUDE_CODE_DISABLE_ADVISOR_TOOL` | 设置为 `1` 可禁用 [advisor 工具](/docs/zh-CN/advisor)。`/advisor` 命令将不可用,任何已配置的 `advisorModel` 都会被忽略,`--advisor` 标志会被接受但不起作用,因此传递该标志的现有脚本可以继续正常运行而不会出错 |

244| `CLAUDE_CODE_DISABLE_AGENT_VIEW` | 设置为 `1` 可关闭[后台 Agent 和 Agent 视图](/docs/zh-CN/agent-view):`claude agents`、`--bg`、`/background` 以及按需启动的监管进程。等同于 [`disableAgentView`](/docs/zh-CN/settings-reference#disableagentview) 设置 |244| `CLAUDE_CODE_DISABLE_AGENT_VIEW` | 设置为 `1` 可关闭[后台 Agent 和 Agent 视图](/docs/zh-CN/agent-view):`claude agents`、`--bg`、`/background` 以及按需 supervisor。等同于 [`disableAgentView`](/docs/zh-CN/settings-reference#disableagentview) 设置 |

245| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | 设置为 `1` 可禁用[全屏渲染](/docs/zh-CN/fullscreen)并使用经典的主屏幕渲染器。对话保留在终端的原生回滚缓冲区中,因此 `Cmd+f` 和 tmux 复制模式照常工作。优先于 `CLAUDE_CODE_NO_FLICKER` 和 [`tui`](/docs/zh-CN/settings-reference#tui) 设置。您也可以使用 `/tui default` 切换。不适用于从 [Agent 视图](/docs/zh-CN/agent-view)打开的后台会话,这些会话始终使用全屏渲染 |245| `CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN` | 设置为 `1` 可禁用[全屏渲染](/docs/zh-CN/fullscreen)并使用经典的主屏幕渲染器。对话会保留在终端的原生回滚缓冲区中,因此 `Cmd+f` 和 tmux 复制模式可照常使用。优先于 `CLAUDE_CODE_NO_FLICKER` 和 [`tui`](/docs/zh-CN/settings-reference#tui) 设置。您也可以使用 `/tui default` 进行切换。不适用于从 [Agent 视图](/docs/zh-CN/agent-view)打开的后台会话,这些会话始终使用全屏渲染 |

246| `CLAUDE_CODE_DISABLE_ARTIFACT` | 设置为 `1` 可关闭 [Artifact](/docs/zh-CN/artifacts) 工具,该工具会将会话输出作为私有网页发布到 claude.ai 上。设置后,任何设置文件都无法重新开启该工具。要改为通过设置文件关闭该工具,请将 [`enableArtifact`](/docs/zh-CN/settings-reference#enableartifact) 设置为 `false`;已弃用的 [`disableArtifact`](/docs/zh-CN/settings-reference#disableartifact) 键也可以将其关闭 |246| `CLAUDE_CODE_DISABLE_ARTIFACT` | 设置为 `1` 可关闭 [Artifact](/docs/zh-CN/artifacts) 工具,该工具会将会话输出作为 claude.ai 上的私有网页发布。一旦设置,任何设置文件都无法重新开启该工具。如果要改为通过设置文件关闭该工具,请将 [`enableArtifact`](/docs/zh-CN/settings-reference#enableartifact) 设置为 `false`;已弃用的 [`disableArtifact`](/docs/zh-CN/settings-reference#disableartifact) 键也可以关闭它 |

247| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | 设置为 `1` 可禁用附件处理。使用 `@` 语法的文件提及将作为纯文本发送,而不会展开为文件内容 |247| `CLAUDE_CODE_DISABLE_ATTACHMENTS` | 设置为 `1` 可禁用附件处理。使用 `@` 语法的文件提及将作为纯文本发送,而不会展开为文件内容 |

248| `CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK` | 设置为 `1` 可使 Claude Code 进程自行运行其 [`gcpAuthRefresh`](/docs/zh-CN/settings-reference#gcpauthrefresh) 或 [`awsAuthRefresh`](/docs/zh-CN/settings-reference#awsauthrefresh) 命令,而不是在另一个进程运行该命令时等待。需要 Claude Code v2.1.286 或更高版本 |248| `CLAUDE_CODE_DISABLE_AUTH_REFRESH_LOCK` | 设置为 `1` 可使 Claude Code 进程自行运行其 [`gcpAuthRefresh`](/docs/zh-CN/settings-reference#gcpauthrefresh) 或 [`awsAuthRefresh`](/docs/zh-CN/settings-reference#awsauthrefresh) 命令,而不是在另一个进程运行该命令时等待。需要 Claude Code v2.1.286 或更高版本 |

249| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | 设置为 `1` 可禁用[自动记忆](/docs/zh-CN/memory#auto-memory)。设置为 `0` 可强制开启自动记忆,即使 `--bare` 模式或 [`autoMemoryEnabled: false`](/docs/zh-CN/settings-reference#automemoryenabled) 原本会将其禁用。禁用后,Claude 不会创建或加载自动记忆文件 |249| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | 设置为 `1` 可禁用[自动记忆](/docs/zh-CN/memory#auto-memory)。设置为 `0` 可强制开启自动记忆,即使 `--bare` 模式或 [`autoMemoryEnabled: false`](/docs/zh-CN/settings-reference#automemoryenabled) 本会禁用它。禁用后,Claude 不会创建或加载自动记忆文件 |

250| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | 设置为 `1` 可禁用所有后台任务功能,包括 Bash 和子代理工具上的 `run_in_background` 参数、自动后台化以及 Ctrl+B 快捷键 |250| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | 设置为 `1` 可禁用所有后台任务功能,包括 Bash 和子代理工具上的 `run_in_background` 参数、自动后台化以及 Ctrl+B 快捷键 |

251| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | 设置为 `1` 可阻止 Claude Code 将缺少 `Content-Type` 标头或该标头为空的 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock) 流式响应视为 Amazon Bedrock 的二进制事件流。默认情况下,Claude Code 假定网关从原本未经修改的响应中删除了该标头,因此它会解码响应体,流式输出可继续正常工作。仅当网关还会将流重新以服务器发送事件的形式发出时才设置此变量;此时 Claude Code 会将不带该标头的响应体作为服务器发送事件读取。需要 Claude Code v2.1.239 或更高版本 |251| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_DEFAULT` | 设置为 `1` 可阻止 Claude Code 将缺少 `Content-Type` 响应头或该响应头为空的 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock) 流式响应视为 Amazon Bedrock 的二进制事件流。默认情况下,Claude Code 会假定网关从一个在其他方面未经修改的响应中丢弃了该响应头,因此它会解码响应体,流式输出得以继续正常工作。仅当网关还会将流重新作为服务器发送事件发出时才设置此变量;这样 Claude Code 会将没有该响应头的响应体读取为服务器发送事件。需要 Claude Code v2.1.239 或更高版本 |

252| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | 设置为 `1` 可跳过对 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock) 流式响应是否带有 `application/vnd.amazon.eventstream` content-type 的检查。如果未设置此变量,当响应带有不同的 content-type 时,Claude Code 会使请求失败,并显示指出该类型的错误,这意味着[网关或代理正在转换响应](/docs/zh-CN/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy)。请将网关配置为原样转发 `Content-Type` 标头和响应体,而不是设置此变量。需要 Claude Code v2.1.208 或更高版本 |252| `CLAUDE_CODE_DISABLE_BEDROCK_CONTENT_TYPE_GUARD` | 设置为 `1` 可跳过对 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock) 流式响应是否带有 `application/vnd.amazon.eventstream` content-type 的检查。如果没有此变量,当响应带有不同的 content-type 时,Claude Code 会使请求失败,并显示一个指明该类型的错误,这意味着[网关或代理正在转换响应](/docs/zh-CN/amazon-bedrock#streaming-errors-behind-a-gateway-or-proxy)。请将网关配置为原样转发 `Content-Type` 响应头和响应体,而不是设置此变量。需要 Claude Code v2.1.208 或更高版本 |

253| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | 设置为 `1` 可在[监管进程](/docs/zh-CN/agent-view#the-supervisor-process)停止、重启或更新[后台会话](/docs/zh-CN/agent-view)的进程时,停止该会话中正在运行的后台 shell 命令、动态工作流以及(从 v2.1.198 起)后台子代理,而不是将它们移交给该会话的下一个进程。仅影响该移交:使用 `←` 或 [`/background`](/docs/zh-CN/agent-view#from-inside-a-session) 将会话转入后台时,仍会延续进行中的工作,而 `CLAUDE_DISABLE_ADOPT` 会同时关闭这两者。需要 Claude Code v2.1.196 或更高版本 |253| `CLAUDE_CODE_DISABLE_BG_EXIT_HANDOFF` | 设置为 `1` 可在 [supervisor](/docs/zh-CN/agent-view#the-supervisor-process) 停止、重启或更新[后台会话](/docs/zh-CN/agent-view)的进程时,停止该会话正在运行的后台 shell 命令、动态工作流,以及(自 v2.1.198 起)后台子代理,而不是将它们移交给该会话的下一个进程。仅影响该移交:使用 `←` 或 [`/background`](/docs/zh-CN/agent-view#from-inside-a-session) 将会话转入后台时仍会转移进行中的工作,而 `CLAUDE_DISABLE_ADOPT` 会同时关闭这两者。需要 Claude Code v2.1.196 或更高版本 |

254| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | 设置为 `1` 可阻止 Claude Code 在内存压力下终止[后台 shell 命令](/docs/zh-CN/interactive-mode#background-bash-commands)。默认情况下,在 macOS 和 Linux 上,当操作系统报告严重内存压力,且会话已空闲 30 分钟、没有轮次或子代理在运行时,Claude Code 会终止后台 shell。Windows 没有内存压力信号,因此此变量在该平台上无效。需要 Claude Code v2.1.193 或更高版本 |254| `CLAUDE_CODE_DISABLE_BG_SHELL_PRESSURE_REAP` | 设置为 `1` 可阻止 Claude Code 在内存压力下终止[后台 shell 命令](/docs/zh-CN/interactive-mode#background-bash-commands)。默认情况下,在 macOS 和 Linux 上,当操作系统报告严重内存压力且会话已空闲 30 分钟、没有正在运行的轮次或子代理时,Claude Code 会终止后台 shell。Windows 没有内存压力信号,因此此变量在 Windows 上不起作用。需要 Claude Code v2.1.193 或更高版本 |

255| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | 设置为 `1` 可禁用 Claude Code 附带的 [skill](/docs/zh-CN/skills) 和工作流:随附 skill 和工作流会被完全移除,而 `/init` 等内置命令仍可输入,但对模型隐藏。`/doctor` 与内置命令一样仍可输入;请改用 `DISABLE_DOCTOR_COMMAND` 将其隐藏。来自插件、`.claude/skills/` 和 `.claude/commands/` 的 skill 不受影响。等同于 [`disableBundledSkills`](/docs/zh-CN/settings-reference#disablebundledskills) 设置 |255| `CLAUDE_CODE_DISABLE_BUNDLED_SKILLS` | 设置为 `1` 可禁用 Claude Code 附带的 [skill](/docs/zh-CN/skills) 和工作流:随附 skill 和工作流会被完全移除,而 `/init` 等内置命令仍可输入,但对模型隐藏。`/doctor` 与内置命令一样仍可输入;请改用 `DISABLE_DOCTOR_COMMAND` 隐藏它。来自插件、`.claude/skills/` 和 `.claude/commands/` 的 skill 不受影响。等同于 [`disableBundledSkills`](/docs/zh-CN/settings-reference#disablebundledskills) 设置 |

256| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | 设置为 `1` 可保留 [Claude in Chrome](/docs/zh-CN/chrome) 浏览器工具,同时省略系统提示词中的 Chrome 部分和 `/claude-in-chrome` [随附 skill](/docs/zh-CN/skills#bundled-skills)。适用于嵌入 Claude Code 并提供自己的浏览器指引的宿主。需要 Claude Code v2.1.257 或更高版本 |256| `CLAUDE_CODE_DISABLE_CFC_PROMPT` | 设置为 `1` 可保留 [Claude in Chrome](/docs/zh-CN/chrome) 浏览器工具,同时省略系统提示词中的 Chrome 部分和 `/claude-in-chrome` [随附 skill](/docs/zh-CN/skills#bundled-skills)。适用于嵌入 Claude Code 并提供自己的浏览器指导的主机。需要 Claude Code v2.1.257 或更高版本 |

257| `CLAUDE_CODE_DISABLE_CLAUDE_MDS` | 设置为 `1` 可阻止将任何 CLAUDE.md 记忆文件加载到上下文中,包括用户、项目和自动记忆文件 |257| `CLAUDE_CODE_DISABLE_CLAUDE_MDS` | 设置为 `1` 可阻止将任何 CLAUDE.md 记忆文件加载到上下文中,包括用户、项目和自动记忆文件 |

258| `CLAUDE_CODE_DISABLE_CRON` | 设置为 `1` 可禁用[定时任务](/docs/zh-CN/scheduled-tasks)。`/loop` skill 和 cron 工具将不可用,所有已安排的任务都会停止触发,包括会话中途已在运行的任务 |258| `CLAUDE_CODE_DISABLE_CRON` | 设置为 `1` 可禁用[定时任务](/docs/zh-CN/scheduled-tasks)。`/loop` skill 和 cron 工具将不可用,任何已安排的任务都将停止触发,包括在会话中途已在运行的任务 |

259| `CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT` | 设置为 `1` 可关闭[关键路径删除](/docs/zh-CN/permission-modes#critical-paths)提示的时间限制。此后在 `auto` 模式下,Claude Code 会改为将这些删除操作发送给分类器,而在 `bypassPermissions` 模式下,该提示会一直等待您的回答。请在启动 Claude Code 的环境中设置它,因为 Claude Code 会忽略通过设置 `env` 块下发的副本。需要 Claude Code v2.1.281 或更高版本 |259| `CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT` | 设置为 `1` 可关闭[关键路径删除](/docs/zh-CN/permission-modes#critical-paths)确认提示的时间限制。这样在 `auto` 模式下,Claude Code 会改为将这些删除操作发送给分类器;在 `bypassPermissions` 模式下,该提示会等待您的回答。请在启动 Claude Code 的环境中设置它,因为 Claude Code 会忽略通过设置 `env` 块提供的副本。需要 Claude Code v2.1.281 或更高版本 |

260| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | 设置为 `1` 可从 API 请求中移除预发布的 `anthropic-beta` 请求标头、与之配对的请求体字段,以及 `defer_loading` 和 `eager_input_streaming` 等 beta 工具 schema 字段。当代理网关因 `anthropic-beta` 标头以 `Unexpected value(s)` 错误拒绝请求,或返回 `Extra inputs are not permitted` 错误时,请使用此变量。[禁用预发布功能](/docs/zh-CN/llm-gateway-protocol#disable-pre-release-capabilities)列出了该变量移除的内容(包括 [MCP 工具搜索](/docs/zh-CN/mcp#scale-with-mcp-tool-search)),以及 Claude Code 仍会发送的内容 |260| `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` | 设置为 `1` 可从 API 请求中去除预发布的 `anthropic-beta` 请求头、与之配对的请求体字段,以及 `defer_loading` 和 `eager_input_streaming` 等 beta 工具 schema 字段。当代理网关拒绝请求,并针对 `anthropic-beta` 请求头返回 `Unexpected value(s)` 错误或返回 `Extra inputs are not permitted` 错误时,请使用此选项。[禁用预发布功能](/docs/zh-CN/llm-gateway-protocol#disable-pre-release-capabilities)列出了此变量会移除的内容(包括 [MCP 工具搜索](/docs/zh-CN/mcp#scale-with-mcp-tool-search))以及 Claude Code 会继续发送的内容 |

261| `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` | 设置为 `1` 可禁用内置的 [Explore 和 Plan 子代理](/docs/zh-CN/sub-agents#built-in-subagents)。Claude 会改用其搜索工具或通用子代理进行探索,并且[计划模式](/docs/zh-CN/permission-modes#analyze-before-you-edit-with-plan-mode)会直接读取文件,而不是启动 Explore 和 Plan Agent。名为 `Explore` 或 `Plan` 的自定义子代理不受影响。要在 Agent SDK 或非交互模式下移除所有内置子代理类型,请改用 `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS`。需要 Claude Code v2.1.198 或更高版本 |261| `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` | 设置为 `1` 可禁用内置的 [Explore 和 Plan 子代理](/docs/zh-CN/sub-agents#built-in-subagents)。Claude 会改用其搜索工具或通用子代理进行探索,[计划模式](/docs/zh-CN/permission-modes#analyze-before-you-edit-with-plan-mode)会直接读取文件,而不是启动 Explore 和 Plan Agent。名为 `Explore` 或 `Plan` 的自定义子代理不受影响。如需在 Agent SDK 或非交互模式下移除所有内置子代理类型,请改用 `CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS`。需要 Claude Code v2.1.198 或更高版本 |

262| `CLAUDE_CODE_DISABLE_FAST_MODE` | 设置为 `1` 可禁用[快速模式](/docs/zh-CN/fast-mode) |262| `CLAUDE_CODE_DISABLE_FAST_MODE` | 设置为 `1` 可禁用[快速模式](/docs/zh-CN/fast-mode) |

263| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | 设置为 `1` 可禁用“How is Claude doing?”会话质量调查。当设置了 `DISABLE_TELEMETRY`、`DO_NOT_TRACK` 或 `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` 时,调查也会被禁用,除非 `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` 重新选择加入。要设置采样率而不是直接禁用,请使用 [`feedbackSurveyRate`](/docs/zh-CN/settings-reference#feedbacksurveyrate) 设置。请参阅[会话质量调查](/docs/zh-CN/data-usage#session-quality-surveys) |263| `CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` | 设置为 `1` 可禁用“How is Claude doing?”会话质量调查。当设置了 `DISABLE_TELEMETRY`、`DO_NOT_TRACK` 或 `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` 时,调查也会被禁用,除非通过 `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` 重新选择启用。如需设置采样率而不是直接禁用,请使用 [`feedbackSurveyRate`](/docs/zh-CN/settings-reference#feedbacksurveyrate) 设置。请参阅[会话质量调查](/docs/zh-CN/data-usage#session-quality-surveys) |

264| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | 设置为 `1` 可禁用文件[检查点功能](/docs/zh-CN/checkpointing)。`/rewind` 命令将无法恢复代码更改。覆盖 [`fileCheckpointingEnabled`](/docs/zh-CN/settings-reference#filecheckpointingenabled) 设置 |264| `CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING` | 设置为 `1` 可禁用文件[检查点功能](/docs/zh-CN/checkpointing)。`/rewind` 命令将无法恢复代码更改。覆盖 [`fileCheckpointingEnabled`](/docs/zh-CN/settings-reference#filecheckpointingenabled) 设置 |

265| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | 设置为 `1` 可从 Claude 的上下文中移除内置的提交和 PR 工作流指令以及 git 状态快照。在使用您自己的 git 工作流 skill 时很有用。设置后优先于 [`includeGitInstructions`](/docs/zh-CN/settings-reference#includegitinstructions) 设置 |265| `CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS` | 设置为 `1` 可从 Claude 的上下文中移除内置的提交和 PR 工作流说明以及 git 状态快照。在使用您自己的 git 工作流 skill 时很有用。设置后优先于 [`includeGitInstructions`](/docs/zh-CN/settings-reference#includegitinstructions) 设置 |

266| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | 设置为 `1` 可阻止在 Anthropic API 上将 Opus 4.0 和 4.1 自动重新映射到当前 Opus 版本。当您有意固定使用较旧的模型时使用。该重新映射不会在 Amazon Bedrock、Google Cloud's Agent Platform 或 Microsoft Foundry 上运行 |266| `CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT` | 设置为 `1` 可阻止 Claude Code 为检查[关键路径](/docs/zh-CN/permission-modes#removals-inside-nested-commands-and-inline-scripts)删除而读取通过 `-c` 传递给 shell 的脚本(例如 `bash -c 'rm -rf ~'`)。Claude Code 仍会检查这些脚本中的 shell 变量和位置参数目标,其他关键路径检查也会继续运行。请在启动 Claude Code 的环境中设置它,因为 Claude Code 会忽略通过设置 `env` 块提供的副本。需要 Claude Code v2.1.288 或更高版本 |

267| `CLAUDE_CODE_DISABLE_MODEL_ACCESS_FALLBACK` | 设置为 `1` 可阻止 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock#when-a-model-is-disabled-mid-session) 和 [Google Cloud's Agent Platform](/docs/zh-CN/google-vertex-ai#when-a-model-is-disabled-mid-session) 上的 Claude Code 在您的账户于会话中途失去对会话模型的访问权限时切换到较旧的模型;被拒绝的请求会立即失败。您配置的[备用模型链](/docs/zh-CN/model-config#fallback-model-chains)在遇到该拒绝时仍会切换,并且[启动时的模型检查](/docs/zh-CN/amazon-bedrock#startup-model-checks)在启动时仍会回退。需要 Claude Code v2.1.285 或更高版本 |267| `CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP` | 设置为 `1` 可阻止在 Anthropic API 上将 Opus 4.0 和 4.1 自动重新映射到当前 Opus 版本。当您有意固定使用较旧模型时使用。该重新映射不会在 Amazon Bedrock、Google Cloud's Agent Platform 或 Microsoft Foundry 上运行 |

268| `CLAUDE_CODE_DISABLE_MODEL_ACCESS_FALLBACK` | 设置为 `1` 可阻止 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock#when-a-model-is-disabled-mid-session) 和 [Google Cloud's Agent Platform](/docs/zh-CN/google-vertex-ai#when-a-model-is-disabled-mid-session) 上的 Claude Code 在您的账户于会话中途失去对该会话模型的访问权限时切换到较旧的模型;被拒绝的请求会立即失败。您配置的[备用模型链](/docs/zh-CN/model-config#fallback-model-chains)仍会在这种拒绝发生时进行切换,[启动时模型检查](/docs/zh-CN/amazon-bedrock#startup-model-checks)仍会在启动时回退。需要 Claude Code v2.1.285 或更高版本 |

268| `CLAUDE_CODE_DISABLE_MOUSE` | 设置为 `1` 可在[全屏渲染](/docs/zh-CN/fullscreen)中禁用鼠标跟踪。使用 `PgUp` 和 `PgDn` 的键盘滚动仍然有效。使用此选项可保留终端原生的选中即复制行为 |269| `CLAUDE_CODE_DISABLE_MOUSE` | 设置为 `1` 可在[全屏渲染](/docs/zh-CN/fullscreen)中禁用鼠标跟踪。使用 `PgUp` 和 `PgDn` 的键盘滚动仍然有效。使用此选项可保留终端原生的选中即复制行为 |

269| `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` | 设置为 `1` 可在[全屏渲染](/docs/zh-CN/fullscreen)中禁用点击、拖动和悬停处理,同时保留鼠标滚轮滚动。当您希望滚轮滚动在 Claude Code 中正常工作,但不希望点击定位光标、展开工具输出或打开链接时使用。两者都设置时,`CLAUDE_CODE_DISABLE_MOUSE` 优先。需要 Claude Code v2.1.195 或更高版本 |270| `CLAUDE_CODE_DISABLE_MOUSE_CLICKS` | 设置为 `1` 可在[全屏渲染](/docs/zh-CN/fullscreen)中禁用单击、拖动和悬停处理,同时保留鼠标滚轮滚动。当您希望滚轮滚动在 Claude Code 中正常工作,但不希望单击定位光标、展开工具输出或打开链接时,请使用此选项。两者都设置时,`CLAUDE_CODE_DISABLE_MOUSE` 优先。需要 Claude Code v2.1.195 或更高版本 |

270| `CLAUDE_CODE_DISABLE_MTLS_RELOAD_ON_STALE_CONNECTION` | 设置为 `1` 可阻止 Claude Code 在 API 请求因连接级错误(例如连接重置或 TLS 握手错误)失败时重新读取 [mTLS 客户端证书和密钥](/docs/zh-CN/network-config#mtls-authentication)。禁用重新加载后,Claude Code 仅在下次应用设置时或下次启动时加载轮换后的文件。需要 Claude Code v2.1.232 或更高版本 |271| `CLAUDE_CODE_DISABLE_MTLS_RELOAD_ON_STALE_CONNECTION` | 设置为 `1` 可阻止 Claude Code 在 API 请求因连接级错误(例如连接重置或 TLS 握手错误)失败时重新读取 [mTLS 客户端证书和密钥](/docs/zh-CN/network-config#mtls-authentication)。禁用重新加载后,Claude Code 仅在下次应用设置时或下次启动时加载已轮换的文件。需要 Claude Code v2.1.232 或更高版本 |

271| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | 设置为任何非空值(例如 `1`)可禁用非必要的网络流量:自动更新、遥测、错误报告、`/feedback` 命令、[Claude 起草的反馈](/docs/zh-CN/tools-reference#sendfeedback-tool-behavior)、发行说明、[PR 和 MR 状态徽章](/docs/zh-CN/interactive-mode#pr-review-status)检查,以及诸如[快速模式](/docs/zh-CN/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways)检查之类的可用性检查。它还会停止[插件 `command` 来源的后台运行](/docs/zh-CN/plugins/loading#when-a-command-source-re-runs),这些是本地命令而非网络流量,但由于它们可能触发依赖安装,因此也会被停止。**将其设置为 `0` 或 `false` 仍会禁用此流量**,这与大多数开关变量不同;取消设置该变量才能重新允许此流量。还会禁用功能标志获取,这会使 [Remote Control](/docs/zh-CN/remote-control#requirements) 和其他[需要获取功能标志的功能](#features-that-need-feature-flag-fetching)不可用。官方插件市场自动安装不在此范围内;请使用 `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` 将其禁用。不影响[网关模型发现](/docs/zh-CN/llm-gateway-connect#add-gateway-models-to-the-model-picker),后者有自己的选择加入方式 |272| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | 设置为任意非空值(例如 `1`)可禁用非必要网络流量:自动更新、遥测、错误报告、`/feedback` 命令、[Claude 起草的反馈](/docs/zh-CN/tools-reference#sendfeedback-tool-behavior)、发行说明、[PR 和 MR 状态徽章](/docs/zh-CN/interactive-mode#pr-review-status)检查,以及可用性检查(例如[快速模式](/docs/zh-CN/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways)检查)。它还会停止[插件 `command` 来源的后台运行](/docs/zh-CN/plugins/loading#when-a-command-source-re-runs),这些运行属于本地命令而非网络流量,之所以停止是因为它们可能触发依赖安装。**将其设置为 `0` 或 `false` 仍会禁用此流量**,这与大多数开关类变量不同;请取消设置该变量以重新允许这些流量。还会禁用功能标志获取,这会导致 [Remote Control](/docs/zh-CN/remote-control#requirements) 和其他[需要获取功能标志的功能](#features-that-need-feature-flag-fetching)不可用。官方插件市场的自动安装不在此范围内;请使用 `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` 禁用它。不影响[网关模型发现](/docs/zh-CN/llm-gateway-connect#add-gateway-models-to-the-model-picker),后者有自己的选择启用机制 |

272| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | 设置为 `1` 可在流式请求中途失败时禁用非流式回退。流式错误会改为传递到重试层。当代理或网关导致回退产生重复的工具执行时很有用 |273| `CLAUDE_CODE_DISABLE_NONSTREAMING_FALLBACK` | 设置为 `1` 可在流式请求中途失败时禁用非流式回退。流式错误会改为传递到重试层。当代理或网关导致回退产生重复的工具执行时很有用 |

273| `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` | 设置为 `1` 可在您正在终端中输入或终端处于焦点时仍发送 `PushNotification` 工具的桌面通知。默认情况下,当该工具检测到近期的键盘活动或终端焦点时,会同时跳过桌面通知和[移动推送](/docs/zh-CN/remote-control#mobile-push-notifications)。此变量仅禁用该本地检查,因此当服务器检测到您处于活动状态时,仍可能抑制移动推送。需要 Claude Code v2.1.193 或更高版本 |274| `CLAUDE_CODE_DISABLE_NOTIFICATION_PRESENCE_CHECK` | 设置为 `1` 可在您正在终端中输入或终端处于焦点状态时仍发送 `PushNotification` 工具的桌面通知。默认情况下,当该工具检测到最近的键盘活动或终端焦点时,会同时跳过桌面通知和[移动推送](/docs/zh-CN/remote-control#mobile-push-notifications)。此变量仅禁用该本地检查,因此当服务器检测到您处于活跃状态时,仍可能抑制移动推送。需要 Claude Code v2.1.193 或更高版本 |

274| `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` | 设置为 `1` 可禁用官方插件市场的自动注册。Claude Code 会在即将注册该市场时读取此变量,通常是在计算机首次交互式启动期间。如果此时已设置该变量,Claude Code 会永久跳过注册。之后取消设置该变量不会撤销该跳过。随时运行 `claude plugin marketplace add anthropics/claude-plugins-official` 即可注册该市场 |275| `CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL` | 设置为 `1` 可禁用官方插件市场的自动注册。Claude Code 会在即将注册该市场时读取此变量,通常是在机器首次交互式启动期间。如果此时已设置该变量,Claude Code 会永久跳过注册。之后取消设置该变量不会撤销此跳过。随时运行 `claude plugin marketplace add anthropics/claude-plugins-official` 即可注册该市场 |

275| `CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS` | 设置为 `1` 可在 Claude Code 将权限请求发送给 Agent SDK 的 `canUseTool` 回调的会话中(Claude Desktop 和 VS Code 扩展正是以这种方式托管 Claude Code),阻止 Claude Code 运行您的[针对未回答权限请求的 `Notification` hook](/docs/zh-CN/hooks#notification)。在终端会话中无效。需要 Claude Code v2.1.233 或更高版本 |276| `CLAUDE_CODE_DISABLE_PERMISSION_PROMPT_NOTIFY_HOOKS` | 在 Claude Code 将未回答的权限请求发送到 Agent SDK 的 `canUseTool` 回调的会话中(Claude Desktop 和 VS Code 扩展即以这种方式托管 Claude Code),设置为 `1` 可阻止 Claude Code 运行您的[针对未回答权限请求的 `Notification` hook](/docs/zh-CN/hooks#notification)。在终端会话中不起作用。需要 Claude Code v2.1.233 或更高版本 |

276| `CLAUDE_CODE_DISABLE_POLICY_SKILLS` | 设置为 `1` 可跳过从系统范围的托管 skill 目录加载 skill。适用于不应加载运维人员预置 skill 的容器或 CI 会话 |277| `CLAUDE_CODE_DISABLE_POLICY_SKILLS` | 设置为 `1` 可跳过从系统级托管 skill 目录加载 skill。适用于不应加载运维人员预置 skill 的容器或 CI 会话 |

277| `CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY` | 设置为 `1` 可关闭 [PowerShell 工具](/docs/zh-CN/tools-reference#powershell-tool)的一项检查,该检查会拒绝在[系统路径](/docs/zh-CN/permission-modes#remove-item-in-powershell)(例如驱动器根目录或您的主目录)上使用 `cmd` 内置命令 `rd`、`rmdir`、`del` 和 `erase`。Claude Code 会忽略设置文件 `env` 块中的此变量。需要 Claude Code v2.1.283 或更高版本 |278| `CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY` | 设置为 `1` 可关闭 [PowerShell 工具](/docs/zh-CN/tools-reference#powershell-tool)的一项检查,该检查会拒绝在[系统路径](/docs/zh-CN/permission-modes#remove-item-in-powershell)(例如驱动器根目录或您的主目录)上使用 `cmd` 内置命令 `rd`、`rmdir`、`del` 和 `erase`。Claude Code 会忽略设置文件 `env` 块中的此变量。需要 Claude Code v2.1.283 或更高版本 |

278| `CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS` | 设置为 `1` 可阻止 Claude Code 发送结构化输出的 `output_config.format` 字段以及与之配对的 `anthropic-beta` 值,适用于上游会拒绝它们的 [LLM 网关](/docs/zh-CN/llm-gateway-protocol#feature-pass-through)。这会保留 [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](/docs/zh-CN/llm-gateway-protocol#disable-pre-release-capabilities) 会关闭的其他预发布功能。需要 Claude Code v2.1.288 或更高版本 |279| `CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK` | 设置为 `1` 可关闭[当安全分类器标记请求时自动切换模型](/docs/zh-CN/model-config#automatic-model-fallback)的行为,即 [`switchModelsOnFlag`](/docs/zh-CN/settings-reference#switchmodelsonflag) 设置所控制的行为 |

279| `CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT` | 设置为 `1` 可关闭针对目标完全由命令替换输出构成的递归 `rm`(例如 `rm -rf "$(pwd)"`)的[关键路径](/docs/zh-CN/permission-modes#critical-paths)检查。其他关键路径检查仍会运行。请在启动 Claude Code 的环境中设置它,因为 Claude Code 会忽略通过设置 `env` 块下发的副本。需要 Claude Code v2.1.281 或更高版本 |280| `CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS` | 设置为 `1` 可阻止 Claude Code 发送结构化输出 `output_config.format` 字段以及与之配对的 `anthropic-beta` 值,适用于其上游会拒绝这些内容的 [LLM 网关](/docs/zh-CN/llm-gateway-protocol#feature-pass-through)。这会保留 [`CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS`](/docs/zh-CN/llm-gateway-protocol#disable-pre-release-capabilities) 所关闭的其他预发布功能。需要 Claude Code v2.1.288 或更高版本 |

280| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | 设置为 `1` 可禁用基于对话上下文的自动终端标题更新。这也会跳过用于[生成会话标题](/docs/zh-CN/sessions#name-your-sessions)的后台小型/快速模型请求 |281| `CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT` | 设置为 `1` 可关闭针对目标完全是命令替换输出的递归 `rm`(例如 `rm -rf "$(pwd)"`)的[关键路径](/docs/zh-CN/permission-modes#critical-paths)检查。其他关键路径检查会继续运行。请在启动 Claude Code 的环境中设置它,因为 Claude Code 会忽略通过设置 `env` 块提供的副本。需要 Claude Code v2.1.281 或更高版本 |

281| `CLAUDE_CODE_DISABLE_THINKING` | 设置为 `1` 可从 API 请求中完全省略 `thinking` 参数。这是针对会拒绝该参数的代理和网关的兼容性选项。在默认进行思考的模型上,省略该参数意味着模型仍可能进行思考。要在 Anthropic API 上显式禁用[扩展思考](https://platform.claude.com/docs/en/build-with-claude/extended-thinking),请改用 `MAX_THINKING_TOKENS=0`。这两个变量都无法在 Opus 5.5、Sonnet 5.5 或 Fable 模型上关闭思考,因为这些模型的思考无法关闭。在[第三方提供商](/docs/zh-CN/third-party-integrations)上,`MAX_THINKING_TOKENS=0` 同样会省略该参数,因此这两个变量在那里的行为相同 |282| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | 设置为 `1` 可禁用根据对话上下文自动更新终端标题。这也会跳过用于[生成会话标题](/docs/zh-CN/sessions#name-your-sessions)的后台 small/fast 模型请求 |

282| `CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT` | 设置为 `1` 可在 Claude Code 无法识别模型 ID(例如 [LLM 网关](/docs/zh-CN/llm-gateway)别名)时跳过主动[自动压缩](/docs/zh-CN/costs#reduce-token-usage)。如果未设置此变量,Claude Code 会在其为该 ID 假定的上下文窗口处进行压缩。`CLAUDE_CODE_MAX_CONTEXT_TOKENS` 可以改为修正假定的窗口;有关各变量的适用情况,请参阅[为网关或自定义模型 ID 修正窗口](/docs/zh-CN/model-config#correct-the-window-for-a-gateway-or-custom-model-id)。需要 Claude Code v2.1.223 或更高版本 |283| `CLAUDE_CODE_DISABLE_THINKING` | 设置为 `1` 可从 API 请求中完全省略 `thinking` 参数。这是针对拒绝该参数的代理和网关的兼容性选项。在默认会进行思考的模型上,省略该参数意味着模型仍可能进行思考。如需在 Anthropic API 上明确禁用[扩展思考](https://platform.claude.com/docs/en/build-with-claude/extended-thinking),请改用 `MAX_THINKING_TOKENS=0`。这两个变量都无法在 Opus 5.5、Sonnet 5.5 或 Fable 模型上关闭思考,因为这些模型无法关闭思考。在[第三方提供商](/docs/zh-CN/third-party-integrations)上,`MAX_THINKING_TOKENS=0` 同样会省略该参数,因此这两个变量在那里的行为相同 |

283| `CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL` | 设置为 `1` 可在[全屏渲染](/docs/zh-CN/fullscreen)中禁用虚拟滚动并渲染会话记录中的每条消息。如果在全屏模式下滚动时,本应显示消息的位置出现空白区域,请使用此选项 |284| `CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT` | 设置为 `1` 可在 Claude Code 无法识别模型 ID(例如 [LLM 网关](/docs/zh-CN/llm-gateway)别名)时跳过主动[自动压缩](/docs/zh-CN/costs#reduce-token-usage)。如果没有此变量,Claude Code 会按其为该 ID 假定的上下文窗口进行压缩。也可以改用 `CLAUDE_CODE_MAX_CONTEXT_TOKENS` 校正假定的窗口;有关各变量的适用情况,请参阅[为网关或自定义模型 ID 校正窗口](/docs/zh-CN/model-config#correct-the-window-for-a-gateway-or-custom-model-id)。需要 Claude Code v2.1.223 或更高版本 |

285| `CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL` | 设置为 `1` 可在[全屏渲染](/docs/zh-CN/fullscreen)中禁用虚拟滚动,并渲染会话记录中的每条消息。如果在全屏模式下滚动时,本应显示消息的位置出现空白区域,请使用此选项 |

284| `CLAUDE_CODE_DISABLE_WEB_FETCH` | 设置为 `1` 可关闭 [WebFetch](/docs/zh-CN/tools-reference#webfetch-tool-behavior) 工具。[WebSearch](/docs/zh-CN/tools-reference#websearch-tool-behavior) 工具仍然可用。需要 Claude Code v2.1.285 或更高版本 |286| `CLAUDE_CODE_DISABLE_WEB_FETCH` | 设置为 `1` 可关闭 [WebFetch](/docs/zh-CN/tools-reference#webfetch-tool-behavior) 工具。[WebSearch](/docs/zh-CN/tools-reference#websearch-tool-behavior) 工具仍然可用。需要 Claude Code v2.1.285 或更高版本 |

285| `CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER` | 设置为 `1` 可在 Windows 上直接启动 [PowerShell 工具](/docs/zh-CN/tools-reference#powershell-tool)命令,而不是通过 `cmd.exe` 启动器。默认情况下,该启动器允许[在后台运行](/docs/zh-CN/tools-reference#background-commands)的 PowerShell 命令[延续到会话的下一个进程](/docs/zh-CN/agent-view#the-supervisor-process),例如当您[将会话转入后台](/docs/zh-CN/agent-view#from-inside-a-session)时。如果设置了该变量,后台 PowerShell 命令会在会话进程退出时停止。Bash 命令不受影响。需要 Claude Code v2.1.269 或更高版本 |287| `CLAUDE_CODE_DISABLE_WINDOWS_SHELL_LAUNCHER` | 设置为 `1` 可在 Windows 上直接启动 [PowerShell 工具](/docs/zh-CN/tools-reference#powershell-tool)命令,而不是通过 `cmd.exe` 启动器。默认情况下,该启动器允许[在后台运行](/docs/zh-CN/tools-reference#background-commands)的 PowerShell 命令[延续到会话的下一个进程](/docs/zh-CN/agent-view#the-supervisor-process),例如当您[将会话转入后台](/docs/zh-CN/agent-view#from-inside-a-session)时。如果设置了此变量,后台 PowerShell 命令会在会话进程退出时停止。Bash 命令不受影响。需要 Claude Code v2.1.269 或更高版本 |

286| `CLAUDE_CODE_DISABLE_WORKFLOWS` | 设置为 `1` 可禁用[工作流](/docs/zh-CN/workflows#turn-workflows-off)。等同于 [`disableWorkflows`](/docs/zh-CN/settings-reference#disableworkflows) 设置 |288| `CLAUDE_CODE_DISABLE_WORKFLOWS` | 设置为 `1` 可禁用[工作流](/docs/zh-CN/workflows#turn-workflows-off)。等同于 [`disableWorkflows`](/docs/zh-CN/settings-reference#disableworkflows) 设置 |

287| `CLAUDE_CODE_EFFORT_LEVEL` | 为受支持的模型设置 effort 级别。可选值:`low`、`medium`、`high`、`xhigh`、`max`,或 `auto` 以使用模型默认值。可用级别取决于模型。优先于 `--effort`、`/effort` 以及 `modelSettings` 和 `effortLevel` 设置。[`maxEffortLevel`](/docs/zh-CN/settings-reference#maxeffortlevel) 上限仍然适用。请参阅[调整 effort 级别](/docs/zh-CN/model-config#adjust-effort-level) |289| `CLAUDE_CODE_EFFORT_LEVEL` | 为受支持的模型设置 effort 级别。取值:`low`、`medium`、`high`、`xhigh`、`max`,或使用模型默认值的 `auto`。可用级别取决于模型。优先于 `--effort`、`/effort` 以及 `modelSettings` 和 `effortLevel` 设置。[`maxEffortLevel`](/docs/zh-CN/settings-reference#maxeffortlevel) 上限仍然适用。请参阅[调整 effort 级别](/docs/zh-CN/model-config#adjust-effort-level) |

288| `CLAUDE_CODE_ENABLE_AUTO_MODE` | 为兼容旧版本而接受,不起任何作用。自动模式默认在所有提供商上可用,包括 Amazon Bedrock、Google Cloud's Agent Platform、Microsoft Foundry 以及已登录的 [Claude apps gateway](/docs/zh-CN/claude-apps-gateway) 会话。在 v2.1.158 到 v2.1.206 中,需要将其设置为 `1` 才能在这些提供商上使用[自动模式](/docs/zh-CN/permission-modes#eliminate-prompts-with-auto-mode) |290| `CLAUDE_CODE_ENABLE_AUTO_MODE` | 为兼容旧版本而保留,不产生任何效果。自动模式在所有提供商上默认可用,包括 Amazon Bedrock、Google Cloud's Agent Platform、Microsoft Foundry 以及已登录的 [Claude apps gateway](/docs/zh-CN/claude-apps-gateway) 会话。在 v2.1.158 至 v2.1.206 中,需要将此变量设为 `1` 才能在这些提供商上使用[自动模式](/docs/zh-CN/permission-modes#eliminate-prompts-with-auto-mode) |

289| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | 覆盖[会话回顾](/docs/zh-CN/interactive-mode#session-recap)的可用性。设置为 `0` 可强制关闭回顾,无论 `/config` 开关如何设置。设置为 `1` 可在 [`awaySummaryEnabled`](/docs/zh-CN/settings-reference#awaysummaryenabled) 为 `false` 时强制开启回顾。优先于该设置和 `/config` 开关 |291| `CLAUDE_CODE_ENABLE_AWAY_SUMMARY` | 覆盖[会话回顾](/docs/zh-CN/interactive-mode#session-recap)的可用性。设为 `0` 可强制关闭回顾,无论 `/config` 开关如何设置。当 [`awaySummaryEnabled`](/docs/zh-CN/settings-reference#awaysummaryenabled) 为 `false` 时,设为 `1` 可强制开启回顾。优先于该设置和 `/config` 开关 |

290| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | 设置为 `1` 可在[非交互模式](/docs/zh-CN/headless)下,于后台安装完成后在轮次边界刷新插件状态。默认关闭,因为刷新会在会话中途更改系统提示词,从而使该轮次的[提示缓存](/docs/zh-CN/prompt-caching)失效 |292| `CLAUDE_CODE_ENABLE_BACKGROUND_PLUGIN_REFRESH` | 设为 `1` 可在[非交互模式](/docs/zh-CN/headless)下,于后台安装完成后在轮次边界刷新插件状态。默认关闭,因为刷新会在会话中途更改系统提示词,导致该轮次的[提示缓存](/docs/zh-CN/prompt-caching)失效 |

291| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | 设置为 `1` 可在发往 Anthropic 的非必要流量被阻止时,将“How is Claude doing?”会话质量调查路由到您自己的 [OpenTelemetry 收集器](/docs/zh-CN/monitoring-usage)。调查评分仅作为 OTEL 事件发送到您配置的收集器。在此模式下,不会向 Anthropic 发送任何调查数据。在设置了 `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`、`DISABLE_TELEMETRY` 或 `DO_NOT_TRACK` 时适用,否则无效。`CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` 和组织产品反馈策略优先 |293| `CLAUDE_CODE_ENABLE_FEEDBACK_SURVEY_FOR_OTEL` | 设为 `1` 可在发往 Anthropic 的非必要流量被阻止时,将“How is Claude doing?”会话质量调查转发到您自己的 [OpenTelemetry 收集器](/docs/zh-CN/monitoring-usage)。调查评分仅作为 OTEL 事件发送到您配置的收集器。在此模式下,不会向 Anthropic 发送任何调查数据。在设置了 `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`、`DISABLE_TELEMETRY` 或 `DO_NOT_TRACK` 时生效,否则无效。`CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY` 和组织产品反馈策略优先于此变量 |

292| `CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING` | 控制工具调用输入是否在 Claude 生成时从 API 流式传输。关闭此项时,大型工具输入(例如长文件写入)只有在 Claude 完成生成后才会到达,看起来可能像是卡住了。在 Anthropic API 上默认启用。在 Amazon Bedrock 和 Google Cloud's Agent Platform 上,在所部署的容器支持时按模型启用。设置为 `0` 可选择退出。通过 `ANTHROPIC_BASE_URL`、`ANTHROPIC_VERTEX_BASE_URL` 或 `ANTHROPIC_BEDROCK_BASE_URL` 经由代理路由时,设置为 `1` 可强制启用。在 Microsoft Foundry 和[网关](/docs/zh-CN/llm-gateway)连接上默认关闭 |294| `CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING` | 控制工具调用输入是否在 Claude 生成时从 API 流式传输。关闭后,较大的工具输入(例如长文件写入)只有在 Claude 生成完毕后才会到达,看起来可能像是卡住了。在 Anthropic API 上默认启用。在 Amazon Bedrock 和 Google Cloud's Agent Platform 上,按模型在所部署容器支持时启用。设为 `0` 可选择退出。通过 `ANTHROPIC_BASE_URL`、`ANTHROPIC_VERTEX_BASE_URL` 或 `ANTHROPIC_BEDROCK_BASE_URL` 经代理路由时,设为 `1` 可强制开启。在 Microsoft Foundry 和[网关](/docs/zh-CN/llm-gateway)连接上默认关闭 |

293| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | 设置为 `1` 可在 `ANTHROPIC_BASE_URL` 指向与 Anthropic 兼容的网关(例如 LiteLLM、Kong 或内部代理)时,从网关的 `/v1/models` 端点填充 `/model` 选择器。默认关闭,因为否则由共享 API 密钥支持的网关会向每个用户显示该密钥可访问的所有模型。发现的模型仍会按会话收到的 [`availableModels`](/docs/zh-CN/settings-reference#availablemodels) 允许列表进行过滤;请通过 [MDM 或托管设置文件](/docs/zh-CN/managed-settings#delivery-mechanisms)下发该列表,因为[服务器托管的下发方式在网关配置上不可用](/docs/zh-CN/server-managed-settings#platform-availability) |295| `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` | 当 `ANTHROPIC_BASE_URL` 指向与 Anthropic 兼容的网关(如 LiteLLM、Kong 或内部代理)时,设为 `1` 可从网关的 `/v1/models` 端点填充 `/model` 选择器。默认关闭,否则由共享 API 密钥支持的网关会向每位用户显示该密钥可访问的所有模型。发现的模型仍会按会话收到的 [`availableModels`](/docs/zh-CN/settings-reference#availablemodels) 允许列表进行筛选;请通过 [MDM 或托管设置文件](/docs/zh-CN/managed-settings#delivery-mechanisms)下发该列表,因为[服务器托管下发在网关配置上不可用](/docs/zh-CN/server-managed-settings#platform-availability) |

294| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | 已在 v2.1.142 中移除,当时[快速模式](/docs/zh-CN/fast-mode)的默认模型从 Opus 4.6 改为 Opus 4.7 |296| `CLAUDE_CODE_ENABLE_OPUS_4_7_FAST_MODE` | 已在 v2.1.142 中移除,当时[快速模式](/docs/zh-CN/fast-mode)的默认模型从 Opus 4.6 改为 Opus 4.7 |

295| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | 设置为 `false` 可关闭提示词建议,即出现在输入框中的灰色预测内容。优先于 [`promptSuggestionEnabled`](/docs/zh-CN/settings-reference#promptsuggestionenabled) 设置,`/config` 中的 **Prompt suggestions** 开关写入的正是该设置。当您的账户接近或达到用量限制时,Claude Code 还会[暂停建议](/docs/zh-CN/interactive-mode#when-claude-code-skips-suggestions)。设置为 `true` 可使建议保持开启,直到您达到限制。需要 Claude Code v2.1.238 或更高版本。请参阅[提示词建议](/docs/zh-CN/interactive-mode#prompt-suggestions) |297| `CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION` | 设为 `false` 可关闭提示词建议,即出现在输入框中的灰色预测。优先于 [`promptSuggestionEnabled`](/docs/zh-CN/settings-reference#promptsuggestionenabled) 设置,`/config` 中的 **Prompt suggestions** 开关写入的就是该设置。当您的账户接近或达到用量限制时,Claude Code 也会[暂停建议](/docs/zh-CN/interactive-mode#when-claude-code-skips-suggestions)。设为 `true` 可在达到限制之前保持开启。需要 Claude Code v2.1.238 或更高版本。请参阅[提示词建议](/docs/zh-CN/interactive-mode#prompt-suggestions) |

296| `CLAUDE_CODE_ENABLE_TASKS` | 选择 Claude Code 在[具备任务跟踪工具的会话](/docs/zh-CN/tools-reference#task-tool-availability)中提供哪些任务跟踪工具。默认情况下,Claude Code 提供 Task 工具 `TaskCreate`、`TaskUpdate`、`TaskGet` 和 `TaskList`。设置为 `0` 可改为使用旧版 `TodoWrite` 工具。请参阅[任务列表](/docs/zh-CN/interactive-mode#task-list) |298| `CLAUDE_CODE_ENABLE_TASKS` | 选择 Claude Code 在[提供这些工具的会话](/docs/zh-CN/tools-reference#task-tool-availability)中提供哪些任务跟踪工具。默认情况下,Claude Code 提供 Task 工具 `TaskCreate`、`TaskUpdate`、`TaskGet` 和 `TaskList`。设为 `0` 则改为使用旧版 `TodoWrite` 工具。请参阅[任务列表](/docs/zh-CN/interactive-mode#task-list) |

297| `CLAUDE_CODE_ENABLE_TELEMETRY` | 设置为 `1` 可为指标和日志启用 OpenTelemetry 数据收集。配置 OTel 导出器之前必须设置。请在 shell、用户设置或托管设置中设置。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略。请参阅[监控](/docs/zh-CN/monitoring-usage) |299| `CLAUDE_CODE_ENABLE_TELEMETRY` | 设为 `1` 可启用用于指标和日志记录的 OpenTelemetry 数据收集。在配置 OTel 导出器之前必须设置。请在 shell、用户设置或托管设置中设置。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略。请参阅[监控](/docs/zh-CN/monitoring-usage) |

298| `CLAUDE_CODE_ENABLE_TODO_TOOLS` | 设置为 `1` 可在所有模型上获得任务跟踪工具。未设置时,Claude Code 默认仅在 [Task 工具可用性](/docs/zh-CN/tools-reference#task-tool-availability)下列出的模型上提供这些工具。`CLAUDE_CODE_ENABLE_TASKS` 仍决定使用 Task 工具还是 `TodoWrite`。需要 Claude Code v2.1.233 或更高版本 |300| `CLAUDE_CODE_ENABLE_TODO_TOOLS` | 设为 `1` 可在所有模型上获得任务跟踪工具。不设置时,Claude Code 默认仅在 [Task 工具可用性](/docs/zh-CN/tools-reference#task-tool-availability)下列出的模型上提供这些工具。`CLAUDE_CODE_ENABLE_TASKS` 仍用于选择 Task 工具或 `TodoWrite`。需要 Claude Code v2.1.233 或更高版本 |

299| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | 查询循环变为空闲后,自动退出前等待的时间(毫秒)。适用于使用 SDK 模式的自动化工作流和脚本 |301| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | 查询循环变为空闲后、自动退出之前等待的时间(毫秒)。适用于使用 SDK 模式的自动化工作流和脚本 |

300| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | 设置为 `1` 可启用 [agent team](/docs/zh-CN/agent-teams)。agent team 为实验性功能,默认禁用 |302| `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS` | 设为 `1` 可启用 [agent team](/docs/zh-CN/agent-teams)。agent team 为实验性功能,默认禁用 |

301| `CLAUDE_CODE_EXTRA_BODY` | 要合并到每个 API 请求体顶层的 JSON 对象。适用于传递 Claude Code 未直接公开的特定于提供商的参数。在 shell 中导出的值也适用于您通过 `claude agents` 或 `--bg` 派发的[后台会话](/docs/zh-CN/agent-view)。在 v2.1.206 之前,后台会话会忽略 shell 导出的值,而使用后台监管进程所继承的任意副本 |303| `CLAUDE_CODE_EXTRA_BODY` | 要合并到每个 API 请求体顶层的 JSON 对象。适用于传递 Claude Code 未直接公开的提供商特定参数。在 shell 中导出的值也会应用于您通过 `claude agents` 或 `--bg` 派发的[后台会话](/docs/zh-CN/agent-view)。在 v2.1.206 之前,后台会话会忽略 shell 导出的值,而使用后台监管进程所继承的副本 |

302| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | 覆盖文件读取的默认 token 限制。当您需要完整读取较大文件时很有用 |304| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | 覆盖文件读取的默认 token 限制。当您需要完整读取较大文件时很有用 |

303| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | 设置为 `1` 可强制启用会话记录持久化、提示词历史记录和 `claude agents` 注册,即使此 `claude` 是从另一个 Claude Code 会话内部启动的。当继承的 `CLAUDE_CODE_CHILD_SESSION` 值(例如来自 `screen` 会话,或最初由 Claude Code 的 Bash 工具启动的后台启动器)导致真正的顶层会话被误判为嵌套会话时使用。从 v2.1.178 起,Claude Code 会自动检测 tmux 的情况并忽略继承的标记,因此 tmux 不再需要此变量。在 v2.1.169 及更早版本中同样有效;在 v2.1.170 和 v2.1.171 中无效,因为这两个版本移除了它所覆盖的嵌套会话检测 |305| `CLAUDE_CODE_FORCE_SESSION_PERSISTENCE` | 设为 `1` 可强制持久化会话记录和提示词历史,并进行 `claude agents` 注册,即使此 `claude` 是从另一个 Claude Code 会话内部启动的。当继承的 `CLAUDE_CODE_CHILD_SESSION` 值(例如来自 `screen` 会话,或最初由 Claude Code 的 Bash 工具启动的后台启动器)导致真正的顶层会话被误判为嵌套会话时使用。自 v2.1.178 起,Claude Code 会自动检测 tmux 的情况并忽略继承的标记,因此 tmux 不再需要此变量。在 v2.1.169 及更早版本中同样生效;在 v2.1.170 和 v2.1.171 中无效,因为这两个版本移除了它所覆盖的嵌套会话检测 |

304| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | 设置为 `1` 可在终端支持删除线但未被自动检测到时(例如通过 SSH 且未转发 `TERM_PROGRAM`),强制将 Claude 回复中的 `~~text~~` 渲染为删除线。否则,未被检测到的终端会显示字面的 `~~` 标记,而不是将文本渲染为删除线。需要 Claude Code v2.1.186 或更高版本 |306| `CLAUDE_CODE_FORCE_STRIKETHROUGH` | 设为 `1` 可在终端支持但未被自动检测到时(例如通过 SSH 且未转发 `TERM_PROGRAM`),强制对 Claude 回复中的 `~~text~~` 渲染删除线。否则,未被检测到的终端会显示字面的 `~~` 标记,而不是将文本渲染为删除线。需要 Claude Code v2.1.186 或更高版本 |

305| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | 设置为 `1` 可在终端支持但未被自动检测到时,强制启用 DEC 私有模式 2026 [同步输出](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036)。适用于实现了 BSU/ESU 但不响应能力探测的模拟器,例如 Emacs `eat`。在 tmux 下无效。与切换到[全屏渲染](/docs/zh-CN/fullscreen)的 `CLAUDE_CODE_NO_FLICKER` 不同,此变量不会更改渲染器 |307| `CLAUDE_CODE_FORCE_SYNC_OUTPUT` | 设为 `1` 可在终端支持但未被自动检测到时,强制启用 DEC 私有模式 2026 [同步输出](https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036)。适用于实现了 BSU/ESU 但不响应能力探测的模拟器,例如 Emacs `eat`。在 tmux 下无效。与切换到[全屏渲染](/docs/zh-CN/fullscreen)的 `CLAUDE_CODE_NO_FLICKER` 不同,此变量不会更改渲染器 |

306| `CLAUDE_CODE_FORK_SUBAGENT` | 控制[分叉模式](/docs/zh-CN/sub-agents#turn-fork-mode-on-or-off),该模式允许 Claude 自行生成[分叉子代理](/docs/zh-CN/sub-agents#fork-the-current-conversation),默认仅在交互式会话中开启。设置为 `1` 可在 `claude -p` 和 Agent SDK 中也开启,设置为 `0` 可在所有类型的会话中关闭。无论分叉模式是否开启,您都可以运行 `/subtask`。交互式会话中的默认开启需要 Claude Code v2.1.232 或更高版本;在更早的版本中,请将该变量设置为 `1` 以开启分叉模式 |308| `CLAUDE_CODE_FORK_SUBAGENT` | 控制[分叉模式](/docs/zh-CN/sub-agents#turn-fork-mode-on-or-off),该模式允许 Claude 自行生成[分叉子代理](/docs/zh-CN/sub-agents#fork-the-current-conversation),默认仅在交互式会话中开启。设为 `1` 可同时在 `claude -p` 和 Agent SDK 中开启,设为 `0` 则在所有类型的会话中关闭。无论分叉模式是否开启,您都可以运行 `/subtask`。交互式默认值需要 Claude Code v2.1.232 或更高版本;在更早的版本中,请将该变量设为 `1` 以开启分叉模式 |

307| `CLAUDE_CODE_FORWARD_SUBAGENT_TEXT` | 设置为 `1` 可在 `claude -p --output-format stream-json` 输出中输出[子代理](/docs/zh-CN/sub-agents)的文本和思考块,行为与 [`--forward-subagent-text`](/docs/zh-CN/cli-reference#cli-flags) 标志相同。当某个 harness 调用 `claude` 且无法自行传递该标志时,请使用此变量。该标志在使用 stream-json 输出的非交互模式之外会报错退出,而此变量在这些场景下会被忽略,因此在进程范围内设置该变量时,嵌套调用仍能正常工作。需要 Claude Code v2.1.211 或更高版本 |309| `CLAUDE_CODE_FORWARD_SUBAGENT_TEXT` | 设为 `1` 可在 `claude -p --output-format stream-json` 输出中发出[子代理](/docs/zh-CN/sub-agents)的文本和思考块,行为与 [`--forward-subagent-text`](/docs/zh-CN/cli-reference#cli-flags) 标志相同。当某个 harness 调用 `claude` 且无法自行传递该标志时,请使用此变量。该标志在使用 stream-json 输出的非交互模式之外会报错退出,而该变量在这些情况下会被忽略,因此在进程范围内设置它时,嵌套调用仍能正常工作。需要 Claude Code v2.1.211 或更高版本 |

308| `CLAUDE_CODE_GATEWAY_HINT_HEADERS` | 设置为 `1` 可在自定义代理或第三方提供商(例如 Amazon Bedrock 或 Claude Platform on AWS)上发送[网关提示标头](/docs/zh-CN/llm-gateway-protocol#gateway-hint-headers),例如 `x-claude-code-request-class` 和 `x-claude-code-compaction`。设置为 `0` 可在所有连接上停止发送,包括直接连接到 Anthropic API 的情况(Claude Code 默认在这种情况下发送)。需要 Claude Code v2.1.273 或更高版本 |310| `CLAUDE_CODE_GATEWAY_HINT_HEADERS` | 设为 `1` 可在自定义代理或第三方提供商(如 Amazon Bedrock 或 Claude Platform on AWS)上发送[网关提示标头](/docs/zh-CN/llm-gateway-protocol#gateway-hint-headers),例如 `x-claude-code-request-class` 和 `x-claude-code-compaction`。设为 `0` 可在所有连接上停止发送这些标头,包括直接连接到 Anthropic API 的情况(Claude Code 默认会在该连接上发送)。需要 Claude Code v2.1.273 或更高版本 |

309| `CLAUDE_CODE_GATEWAY_MODEL_DISCOVERY_TIMEOUT_MS` | 由 `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` 启用的[网关模型发现](/docs/zh-CN/llm-gateway-protocol#model-discovery)请求的超时时间(毫秒)(默认:`3000`)。当您的网关在启动时需要超过三秒才能响应 `/v1/models` 时,请调高此值。仅接受纯数字;`0`、负值及其他写法都会保留默认值。需要 Claude Code v2.1.269 或更高版本 |311| `CLAUDE_CODE_GATEWAY_MODEL_DISCOVERY_TIMEOUT_MS` | 由 `CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY` 开启的[网关模型发现](/docs/zh-CN/llm-gateway-protocol#model-discovery)请求的超时时间(毫秒)(默认:`3000`)。当您的网关在启动时需要超过三秒才能响应 `/v1/models` 时,请调高此值。仅接受纯数字;`0`、负值和其他写法会保持默认值。需要 Claude Code v2.1.269 或更高版本 |

310| `CLAUDE_CODE_GIT_BASH_PATH` | 仅限 Windows:Git Bash 可执行文件(`bash.exe`)的路径。在已安装 Git Bash 但其不在 PATH 中时使用。如果该路径不存在,或文件名不是 `bash.exe`、`sh.exe`、`bash` 或 `sh`,Claude Code 会忽略该变量,像未设置一样自动检测 Git Bash,并记录一条可通过 `--debug` 查看的警告。在 v2.1.219 之前,路径不存在时 Claude Code 会在启动时退出,并且会将任何现有文件用作 shell,而不检查它是否为 bash 或 sh。请参阅[在 Windows 上设置](/docs/zh-CN/setup#set-up-on-windows) |312| `CLAUDE_CODE_GIT_BASH_PATH` | 仅限 Windows:Git Bash 可执行文件(`bash.exe`)的路径。当 Git Bash 已安装但不在 PATH 中时使用。如果路径不存在,或文件名不是 `bash.exe`、`sh.exe`、`bash` 或 `sh`,Claude Code 会忽略该变量并像未设置时一样自动检测 Git Bash,同时记录一条可通过 `--debug` 查看的警告。在 v2.1.219 之前,路径不存在时 Claude Code 会在启动时退出,并且会将任何现有文件用作 shell,而不检查它是否为 bash 或 sh。请参阅[在 Windows 上设置](/docs/zh-CN/setup#set-up-on-windows) |

311| `CLAUDE_CODE_GLOB_HIDDEN` | 设置为 `false` 可在 Claude 调用 [Glob 工具](/docs/zh-CN/tools-reference#glob-tool-behavior)时从结果中排除点文件。默认包含。不影响 `@` 文件自动补全、`ls`、Grep 或 Read |313| `CLAUDE_CODE_GLOB_HIDDEN` | 设为 `false` 可在 Claude 调用 [Glob 工具](/docs/zh-CN/tools-reference#glob-tool-behavior)时从结果中排除点文件。默认包含。不影响 `@` 文件自动补全、`ls`、Grep 或 Read |

312| `CLAUDE_CODE_GLOB_NO_IGNORE` | 设置为 `false` 可使 [Glob 工具](/docs/zh-CN/tools-reference#glob-tool-behavior)遵循 `.gitignore` 模式。默认情况下,Glob 会返回所有匹配的文件,包括被 gitignore 忽略的文件。不影响 `@` 文件自动补全,后者有其自己的 [`respectGitignore` 设置](/docs/zh-CN/settings-reference#respectgitignore) |314| `CLAUDE_CODE_GLOB_NO_IGNORE` | 设为 `false` 可使 [Glob 工具](/docs/zh-CN/tools-reference#glob-tool-behavior)遵循 `.gitignore` 模式。默认情况下,Glob 会返回所有匹配的文件,包括被 gitignore 忽略的文件。不影响 `@` 文件自动补全,后者有自己的 [`respectGitignore` 设置](/docs/zh-CN/settings-reference#respectgitignore) |

313| `CLAUDE_CODE_GLOB_TIMEOUT_SECONDS` | Glob 工具文件发现的超时时间(秒)。在大多数平台上默认为 20 秒,在 WSL 上默认为 60 秒 |315| `CLAUDE_CODE_GLOB_TIMEOUT_SECONDS` | Glob 工具文件发现的超时时间(秒)。在大多数平台上默认为 20 秒,在 WSL 上为 60 秒 |

314| `CLAUDE_CODE_GOAL_CHECKIN_MINUTES` | 后台工作可使活动目标保持等待的分钟数,超过后 Claude Code 会[请 Claude 检查该目标](/docs/zh-CN/goal#background-work-defers-evaluation)。默认 `30`。设置为 `0` 可关闭检查。请以纯数字给出整分钟数,最大为 `10080`,即一周。Claude Code 会将任何其他值视为未设置并使用默认值。需要 Claude Code v2.1.234 或更高版本 |316| `CLAUDE_CODE_GOAL_CHECKIN_MINUTES` | 后台工作可让活动目标等待多少分钟,超过后 Claude Code 会[要求 Claude 检查该目标](/docs/zh-CN/goal#background-work-defers-evaluation)。默认为 `30`。设为 `0` 可关闭检查。请以纯数字给出整数分钟数,最多为 `10080`,即一周。Claude Code 会将其他任何值视为未设置并使用默认值。需要 Claude Code v2.1.234 或更高版本 |

315| `CLAUDE_CODE_HIDE_CWD` | 设置为 `1` 可在启动徽标中隐藏工作目录。适用于屏幕共享或录屏等路径会暴露您操作系统用户名的场景 |317| `CLAUDE_CODE_HIDE_CWD` | 设为 `1` 可在启动徽标中隐藏工作目录。适用于路径会暴露您操作系统用户名的屏幕共享或录屏场景 |

316| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | 覆盖用于连接 IDE 扩展的主机地址。默认情况下,Claude Code 会自动检测正确的地址,包括 WSL 到 Windows 的路由 |318| `CLAUDE_CODE_IDE_HOST_OVERRIDE` | 覆盖用于连接 IDE 扩展的主机地址。默认情况下,Claude Code 会自动检测正确的地址,包括 WSL 到 Windows 的路由 |

317| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | 设置为 `1` 可跳过 IDE 扩展的自动安装。等同于将 [`autoInstallIdeExtension`](/docs/zh-CN/settings-reference#autoinstallideextension) 设置为 `false` |319| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | 设为 `1` 可跳过 IDE 扩展的自动安装。等同于将 [`autoInstallIdeExtension`](/docs/zh-CN/settings-reference#autoinstallideextension) 设为 `false` |

318| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | 设置为 `1` 可在连接期间跳过对 IDE 锁文件条目的验证。当 IDE 正在运行但自动连接仍找不到它时使用 |320| `CLAUDE_CODE_IDE_SKIP_VALID_CHECK` | 设为 `1` 可在连接期间跳过 IDE 锁文件条目的验证。当 IDE 正在运行但自动连接仍找不到它时使用 |

319| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | 一个会话中可同时运行的[子代理](/docs/zh-CN/sub-agents#concurrent-subagent-limit)数量,达到后 Agent 工具将拒绝再生成新的子代理(默认:20)。接受以纯数字表示的正整数;其他任何值都会被忽略,因此该变量可以调整上限,但无法禁用上限。需要 Claude Code v2.1.217 或更高版本 |321| `CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS` | 一个会话中可同时运行的[子代理](/docs/zh-CN/sub-agents#concurrent-subagent-limit)数量,超过后 Agent 工具将拒绝再生成新的子代理(默认:20)。接受纯数字形式的正整数;其他值会被忽略,因此该变量可以调整上限,但不能禁用它。需要 Claude Code v2.1.217 或更高版本 |

320| `CLAUDE_CODE_MAX_CONTEXT_TOKENS` | 覆盖 Claude Code 为当前模型假定的上下文窗口大小。从 v2.1.193 起,其应用方式取决于 Claude Code 如何解析模型 ID;请参阅[为网关或自定义模型 ID 更正窗口](/docs/zh-CN/model-config#correct-the-window-for-a-gateway-or-custom-model-id)。当通过 `ANTHROPIC_BASE_URL` 路由到某个模型,而该模型的上下文窗口与其名称对应的内置大小不一致时使用 |322| `CLAUDE_CODE_MAX_CONTEXT_TOKENS` | 覆盖 Claude Code 为当前模型假定的上下文窗口大小。自 v2.1.193 起,其应用方式取决于 Claude Code 如何解析模型 ID;请参阅[为网关或自定义模型 ID 校正窗口](/docs/zh-CN/model-config#correct-the-window-for-a-gateway-or-custom-model-id)。当通过 `ANTHROPIC_BASE_URL` 路由到的模型的上下文窗口与其名称对应的内置大小不符时使用 |

321| `CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH` | Claude Code 发送给模型的每个 MCP 工具描述和每个 MCP 服务器指令的最大长度(字符数)(默认:2048)。Claude Code 会[截断更长的文本](/docs/zh-CN/mcp#for-mcp-server-authors)。接受以纯数字表示的正整数。其他任何值都会被忽略并使用默认值。需要 Claude Code v2.1.280 或更高版本 |323| `CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH` | Claude Code 发送给模型的每个 MCP 工具描述和每个 MCP 服务器说明的最大长度(字符数)(默认:2048)。Claude Code 会[截断更长的文本](/docs/zh-CN/mcp#for-mcp-server-authors)。接受纯数字形式的正整数。其他值会被忽略并使用默认值。需要 Claude Code v2.1.280 或更高版本 |

322| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | 设置大多数请求的最大输出 token 数。默认值和上限因模型而异;请参阅[最大输出 token](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison)。Claude Code 会将超过模型上限的值降至该上限。对于 Claude Code 无法解析为已知模型的模型 ID,默认值为 32000,上限为 128000。增大此值会减少触发[自动压缩](/docs/zh-CN/costs#reduce-token-usage)之前可用的有效上下文窗口 |324| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | 设置大多数请求的最大输出 token 数。默认值和上限因模型而异;请参阅[最大输出 token](https://platform.claude.com/docs/en/about-claude/models/overview#latest-models-comparison)。Claude Code 会将高于模型上限的值降至上限。对于 Claude Code 无法解析为已知模型的模型 ID,默认值为 32000,上限为 128000。增大此值会减少触发[自动压缩](/docs/zh-CN/costs#reduce-token-usage)之前可用的有效上下文窗口 |

323| `CLAUDE_CODE_MAX_RETRIES` | 覆盖失败 API 请求的重试次数(默认:10)。从 v2.1.186 起上限为 15;从 v2.1.199 起,`CLAUDE_CODE_RETRY_WATCHDOG` 会提高默认值并移除上限。对于需要在较长中断期间持续等待的无人值守会话,请改为设置 `CLAUDE_CODE_RETRY_WATCHDOG` |325| `CLAUDE_CODE_MAX_RETRIES` | 覆盖失败 API 请求的重试次数(默认:10)。自 v2.1.186 起上限为 15;自 v2.1.199 起,`CLAUDE_CODE_RETRY_WATCHDOG` 会提高默认值并移除上限。对于需要等待较长中断时间的无人值守会话,请改为设置 `CLAUDE_CODE_RETRY_WATCHDOG` |

324| `CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION` | 已在 v2.1.224 中移除,现在不起作用。此前用于限制 Claude 在一个会话中可通过 Agent 工具生成的[子代理](/docs/zh-CN/sub-agents)总数(默认:200);超出上限时生成会失败并显示 `Subagent spawn limit reached`。[并发子代理限制](/docs/zh-CN/sub-agents#concurrent-subagent-limit)和[深度限制](/docs/zh-CN/sub-agents#let-subagents-spawn-their-own-subagents)仍然适用 |326| `CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION` | 已在 v2.1.224 中移除,现在不起任何作用。以前用于限制 Claude 在一个会话中可通过 Agent 工具生成的[子代理](/docs/zh-CN/sub-agents)总数(默认:200);超过上限的生成会以 `Subagent spawn limit reached` 失败。[并发子代理限制](/docs/zh-CN/sub-agents#concurrent-subagent-limit)和[深度限制](/docs/zh-CN/sub-agents#let-subagents-spawn-their-own-subagents)仍然适用 |

325| `CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH` | 主对话之下允许的[子代理层数](/docs/zh-CN/sub-agents#let-subagents-spawn-their-own-subagents)(默认:3)。在默认值下,子代理可以生成自己的子代理,而位于第三层的子代理无法继续生成;设置为 `1` 可关闭嵌套。在 v2.1.217 至 v2.1.218 中,默认值为 1,因此除非您提高该限制,否则子代理无法生成自己的子代理;v2.1.219 将默认值提高到 3。接受以纯数字表示的正整数;其他任何值都会被忽略,因此该限制可以调整但无法移除。需要 Claude Code v2.1.217 或更高版本 |327| `CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH` | 主对话之下允许的[子代理层数](/docs/zh-CN/sub-agents#let-subagents-spawn-their-own-subagents) (默认:3)。在默认值下,子代理可以生成自己的子代理,而位于第三层的子代理无法再继续生成;设为 `1` 可关闭嵌套。在 v2.1.217 至 v2.1.218 中,默认值为 1,因此除非您提高限制,否则子代理无法生成自己的子代理;v2.1.219 将默认值提高到 3。接受纯数字形式的正整数;其他值会被忽略,因此该限制可以调整但不能移除。需要 Claude Code v2.1.217 或更高版本 |

326| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | 可并行执行的只读工具和子代理的最大数量(默认:10)。较高的值会提高并行度,但会消耗更多资源 |328| `CLAUDE_CODE_MAX_TOOL_USE_CONCURRENCY` | 可并行执行的只读工具和子代理的最大数量(默认:10)。值越高并行度越高,但会消耗更多资源 |

327| `CLAUDE_CODE_MAX_TURNS` | 在未传递显式限制时限制 agentic 轮次数。等同于传递 [`--max-turns`](/docs/zh-CN/cli-reference#cli-flags),两者都设置时后者优先。非正整数的值会在启动时被拒绝并报错,而不会被视为无上限 |329| `CLAUDE_CODE_MAX_TURNS` | 在未传递显式限制时,限制 Agent 轮次的数量。等同于传递 [`--max-turns`](/docs/zh-CN/cli-reference#cli-flags),两者都设置时后者优先。不是正整数的值会在启动时报错被拒绝,而不会被视为无上限 |

328| `CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION` | 一个会话可进行的 [WebSearch](/docs/zh-CN/tools-reference#websearch-tool-behavior) 调用总数上限(默认:200)。当 Claude 达到上限时,后续 WebSearch 调用会返回一条通知,告诉它使用已收集的信息继续。接受没有上界的正整数。其他任何值都会被忽略并使用默认值,因此该上限可以提高但无法关闭。需要 Claude Code v2.1.212 或更高版本 |330| `CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION` | 一个会话可进行的 [WebSearch](/docs/zh-CN/tools-reference#websearch-tool-behavior) 调用总数上限(默认:200)。当 Claude 达到上限后,后续 WebSearch 调用会返回一条通知,告诉它使用已收集的信息继续。接受无上界的正整数。其他值会被忽略并使用默认值,因此上限可以提高但不能关闭。需要 Claude Code v2.1.212 或更高版本 |

329| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | 设置为 `1` 可使用仅包含安全基线环境加上服务器所配置 `env` 的环境来启动 stdio MCP 服务器,而不是继承您的 shell 环境 |331| `CLAUDE_CODE_MCP_ALLOWLIST_ENV` | 设为 `1` 可让 stdio MCP 服务器仅使用安全的基线环境加上服务器配置的 `env` 启动,而不是继承您的 shell 环境 |

330| `CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS` | 仍在运行的 MCP 工具调用[转为后台任务](/docs/zh-CN/mcp#automatic-backgrounding-of-long-tool-calls)之前经过的时间(毫秒)(默认:120000,即 2 分钟)。设置为 `0` 可关闭自动转入后台。需要 Claude Code v2.1.212 或更高版本 |332| `CLAUDE_CODE_MCP_AUTO_BACKGROUND_MS` | 仍在运行的 MCP 工具调用[转为后台任务](/docs/zh-CN/mcp#automatic-backgrounding-of-long-tool-calls)之前经过的时间(毫秒)(默认:120000,即 2 分钟)。设为 `0` 可关闭自动转入后台。需要 Claude Code v2.1.212 或更高版本 |

331| `CLAUDE_CODE_MCP_STARTUP_WAIT_MS` | [非交互](/docs/zh-CN/headless)会话的第一轮等待仍在连接中的 MCP 服务器的时长(毫秒),用于替代默认的[第一轮等待](/docs/zh-CN/agent-sdk/mcp#connection-timing)。设置后,该等待涵盖所有待连接的服务器。设置为 `0` 可跳过等待。无论该值如何,[`--permission-prompt-tool`](/docs/zh-CN/cli-reference#cli-flags) 服务器都会保留其自身的 `MCP_TIMEOUT` 等待。需要 Claude Code v2.1.274 或更高版本 |333| `CLAUDE_CODE_MCP_STARTUP_WAIT_MS` | [非交互](/docs/zh-CN/headless)会话的第一轮等待仍在连接中的 MCP 服务器的时长(毫秒),用于替代默认的[第一轮等待](/docs/zh-CN/agent-sdk/mcp#connection-timing)。设置后,该等待涵盖所有待连接的服务器。设为 `0` 可跳过等待。无论该值如何,[`--permission-prompt-tool`](/docs/zh-CN/cli-reference#cli-flags) 服务器都保留自己的 `MCP_TIMEOUT` 等待。需要 Claude Code v2.1.274 或更高版本 |

332| `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` | MCP 工具调用的空闲超时时间(毫秒)。当 stdio、HTTP、SSE、WebSocket 或 [claude.ai 连接器](/docs/zh-CN/mcp#use-mcp-servers-from-claude-ai) MCP 服务器在这段时间内既未发送响应也未发送进度通知时,工具调用会报错中止,而不是等待整体的 `MCP_TOOL_TIMEOUT`。覆盖各传输方式的默认值:网络服务器为 300000(5 分钟),stdio 服务器为 1800000(30 分钟)。设置为 `0` 可禁用空闲检查。低于 1000 的值会被提高到一秒,且该值上限为实际生效的 `MCP_TOOL_TIMEOUT`。`.mcp.json` 中按服务器设置的 `timeout` 若至少为 1000,会将该服务器的空闲窗口提高到至少为该 `timeout` 值。不适用于 IDE 服务器或 SDK 进程内服务器。需要 Claude Code v2.1.187 或更高版本。在 v2.1.203 之前,stdio 服务器不受空闲超时限制 |334| `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` | MCP 工具调用的空闲超时时间(毫秒)。当 stdio、HTTP、SSE、WebSocket 或 [claude.ai 连接器](/docs/zh-CN/mcp#use-mcp-servers-from-claude-ai) MCP 服务器在这段时间内既未发送响应也未发送进度通知时,工具调用会以错误中止,而不是等待整体的 `MCP_TOOL_TIMEOUT`。覆盖按传输方式设定的默认值:网络服务器为 300000(5 分钟),stdio 服务器为 1800000(30 分钟)。设为 `0` 可禁用空闲检查。低于 1000 的值会被提高到一秒,且该值上限为实际生效的 `MCP_TOOL_TIMEOUT`。`.mcp.json` 中按服务器设置的、至少为 1000 的 `timeout` 会将该服务器的空闲窗口提高到至少为该 `timeout` 值。不适用于 IDE 服务器或 SDK 进程内服务器。需要 Claude Code v2.1.187 或更高版本。在 v2.1.203 之前,stdio 服务器不受空闲超时限制 |

333| `CLAUDE_CODE_MESSAGING_SOCKET` | 由 Claude Code 设置,而非由您设置:在绑定了[收件箱套接字](/docs/zh-CN/cross-session-messaging#the-sessions-inbox-socket)的会话中,Claude Code 在绑定套接字时会将该套接字的路径导出给 hook 和 Bash 命令。在启动时已开启消息功能的会话中,Claude Code 会在任何 hook 运行之前绑定套接字。本机上的其他会话会将消息投递到此路径。每个会话都会导出自己的套接字,而不是从父会话继承的套接字,到达该套接字的消息会经过该会话的[入站控制](/docs/zh-CN/cross-session-messaging#control-inbound-messages)。设置中的 `env` 块无法设置它。需要 Claude Code v2.1.224 或更高版本 |335| `CLAUDE_CODE_MESSAGING_SOCKET` | 由 Claude Code 设置,而非由您设置:在绑定了[收件箱套接字](/docs/zh-CN/cross-session-messaging#the-sessions-inbox-socket)的会话中,Claude Code 会在绑定该套接字时将其路径导出给 hook 和 Bash 命令。在启动时即开启消息功能的会话中,Claude Code 会在任何 hook 运行之前绑定该套接字。机器上的其他会话会将消息投递到此路径。每个会话导出自己的套接字,而不是从父会话继承的套接字,到达该套接字的消息会经过该会话的[入站控制](/docs/zh-CN/cross-session-messaging#control-inbound-messages)。设置中的 `env` 块无法设置它。需要 Claude Code v2.1.224 或更高版本 |

334| `CLAUDE_CODE_MESSAGING_TOKEN` | 由 Claude Code 设置,而非由您设置:在绑定了[收件箱套接字](/docs/zh-CN/cross-session-messaging#the-sessions-inbox-socket)的会话中,Claude Code 会将此会话级令牌与 `CLAUDE_CODE_MESSAGING_SOCKET` 一起导出给 hook 和 Bash 命令。向该套接字发送内容的脚本可以将 `{"type":"auth","token":"<token>"}` 作为第一行发送,以证明其属于该会话。在原生 Windows 上,Claude Code 要求必须发送这一行,并会关闭任何未以有效认证行开头的连接。[自有子进程规则](/docs/zh-CN/cross-session-messaging#the-sessions-inbox-socket)说明了 Claude Code 何时会检查该令牌。每个会话都会导出自己的令牌,绝不会使用从父会话继承的令牌。设置中的 `env` 块无法设置它。需要 Claude Code v2.1.228 或更高版本 |336| `CLAUDE_CODE_MESSAGING_TOKEN` | 由 Claude Code 设置,而非由您设置:在绑定了[收件箱套接字](/docs/zh-CN/cross-session-messaging#the-sessions-inbox-socket)的会话中,Claude Code 会将此会话级令牌与 `CLAUDE_CODE_MESSAGING_SOCKET` 一起导出给 hook 和 Bash 命令。向该套接字发送消息的脚本可以将 `{"type":"auth","token":"<token>"}` 作为第一行发送,以证明它属于该会话。在原生 Windows 上,Claude Code 要求必须发送此行,并会关闭任何未以有效令牌行开头的连接。[own-child 规则](/docs/zh-CN/cross-session-messaging#the-sessions-inbox-socket)说明了 Claude Code 何时会查验该令牌。每个会话导出自己的令牌,绝不会使用从父会话继承的令牌。设置中的 `env` 块无法设置它。需要 Claude Code v2.1.228 或更高版本 |

335| `CLAUDE_CODE_NATIVE_CURSOR` | 设置为 `1` 可在输入插入点显示终端自身的光标,而不是绘制的方块。该光标会遵循终端的闪烁、形状和焦点设置 |337| `CLAUDE_CODE_NATIVE_CURSOR` | 设为 `1` 可在输入插入点显示终端自身的光标,而不是绘制的方块。该光标遵循终端的闪烁、形状和焦点设置 |

336| `CLAUDE_CODE_NEW_INIT` | 设置为 `1` 可让 `/init` 运行交互式设置流程。该流程会在探索代码库并写入文件之前,询问要生成哪些文件,包括 CLAUDE.md、skill 和 hook。未设置此变量时,`/init` 会自动生成 CLAUDE.md,而不进行询问 |338| `CLAUDE_CODE_NEW_INIT` | 设为 `1` 可让 `/init` 运行交互式设置流程。该流程会先询问要生成哪些文件(包括 CLAUDE.md、skill 和 hook),然后再探索代码库并写入这些文件。不设置此变量时,`/init` 会自动生成 CLAUDE.md,不进行询问 |

337| `CLAUDE_CODE_NONBLOCKING_STDOUT` | 设置为 `1` 可通过第二个非阻塞文件描述符写入终端输出,这样停止读取的终端(例如已暂停的 tmux 控制模式窗格或卡住的 SSH 连接)就无法在会话中途冻结 Claude Code。在 stdout 为终端时,适用于 macOS、Linux 和 WSL。需要 Claude Code v2.1.261 或更高版本 |339| `CLAUDE_CODE_NONBLOCKING_STDOUT` | 设为 `1` 可通过第二个非阻塞文件描述符写入终端输出,这样停止读取的终端(例如暂停的 tmux control-mode 窗格或停滞的 SSH 连接)就不会在会话中途冻结 Claude Code。在 stdout 为终端时适用于 macOS、Linux 和 WSL。需要 Claude Code v2.1.261 或更高版本 |

338| `CLAUDE_CODE_NONSTREAMING_TIMEOUT_RETRIES` | 限制 Claude Code 重新发送超时的[非流式请求](/docs/zh-CN/errors#streaming-response-ended-before-any-complete-data-was-received)的次数。设置为 `0` 时,请求在第一次超时时即失败。默认未设置,因此由 `CLAUDE_CODE_MAX_RETRIES` 限制这些重新发送。有关超时时间,请参阅[调整重试行为](/docs/zh-CN/errors#tune-retry-behavior)。需要 Claude Code v2.1.285 或更高版本 |340| `CLAUDE_CODE_NONSTREAMING_TIMEOUT_RETRIES` | 限制 Claude Code 重新发送超时的[非流式请求](/docs/zh-CN/errors#streaming-response-ended-before-any-complete-data-was-received)的次数。设为 `0` 时,请求在第一次超时时即失败。默认未设置,因此由 `CLAUDE_CODE_MAX_RETRIES` 限制这些重新发送。有关超时,请参阅[调整重试行为](/docs/zh-CN/errors#tune-retry-behavior)。需要 Claude Code v2.1.285 或更高版本 |

339| `CLAUDE_CODE_NO_FLICKER` | 设置为 `1` 可启用[全屏渲染](/docs/zh-CN/fullscreen),这是一项研究预览功能,可减少闪烁并在长对话中保持内存占用平稳。覆盖 [`tui`](/docs/zh-CN/settings-reference#tui) 设置;您也可以使用 `/tui fullscreen` 进行切换 |341| `CLAUDE_CODE_NO_FLICKER` | 设为 `1` 可启用[全屏渲染](/docs/zh-CN/fullscreen),这是一项研究预览功能,可减少闪烁并在长对话中保持内存占用平稳。覆盖 [`tui`](/docs/zh-CN/settings-reference#tui) 设置;您也可以使用 `/tui fullscreen` 进行切换 |

340| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | 用于 Claude.ai 身份验证的 OAuth 刷新令牌。设置后,`claude auth login` 会直接交换此令牌,而不是打开浏览器。需要 `CLAUDE_CODE_OAUTH_SCOPES`。适用于在自动化环境中预配身份验证 |342| `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` | 用于 Claude.ai 身份验证的 OAuth 刷新令牌。设置后,`claude auth login` 会直接交换此令牌,而不是打开浏览器。需要 `CLAUDE_CODE_OAUTH_SCOPES`。适用于在自动化环境中预配身份验证 |

341| `CLAUDE_CODE_OAUTH_SCOPES` | 签发刷新令牌时使用的 OAuth 作用域,以空格分隔,例如 `"user:profile user:inference user:sessions:claude_code"`。设置 `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` 时必需 |343| `CLAUDE_CODE_OAUTH_SCOPES` | 签发刷新令牌时使用的 OAuth 作用域,以空格分隔,例如 `"user:profile user:inference user:sessions:claude_code"`。设置 `CLAUDE_CODE_OAUTH_REFRESH_TOKEN` 时必需 |

342| `CLAUDE_CODE_OAUTH_TOKEN` | 用于 claude.ai 身份验证的 OAuth 访问令牌。是 SDK 和自动化环境中 `/login` 的替代方案。优先于存储在钥匙串中的凭据。可使用 [`claude setup-token`](/docs/zh-CN/authentication#generate-a-long-lived-token) 生成。除非您运行 [`/login`](/docs/zh-CN/authentication#authentication-precedence),否则 Claude Code 会在整个会话中使用您设置的令牌。要替换过期的令牌,请生成新令牌并重新启动 |344| `CLAUDE_CODE_OAUTH_TOKEN` | 用于 claude.ai 身份验证的 OAuth 访问令牌。是 SDK 和自动化环境中 `/login` 的替代方案。优先于钥匙串中存储的凭据。可使用 [`claude setup-token`](/docs/zh-CN/authentication#generate-a-long-lived-token) 生成。除非您运行 [`/login`](/docs/zh-CN/authentication#authentication-precedence),否则 Claude Code 会在整个会话中使用您设置的令牌。要替换已过期的令牌,请生成新令牌并重新启动 |

343| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | 已在 v2.1.160 中移除,现在不起作用。此前用于将[快速模式](/docs/zh-CN/fast-mode)固定到 Claude Opus 4.6,而不是当前默认模型。Opus 4.6 不再支持快速模式 |345| `CLAUDE_CODE_OPUS_4_6_FAST_MODE_OVERRIDE` | 已在 v2.1.160 中移除,现在不起任何作用。以前用于将[快速模式](/docs/zh-CN/fast-mode)固定到 Claude Opus 4.6,而不是当前默认模型。Opus 4.6 不再支持快速模式 |

344| `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` | 承载内容的 OpenTelemetry 属性(模型响应、工具内容、系统提示词、原始 API 正文)的最大长度,包含截断标记,以 UTF-16 代码单元计(默认:61440,即 60 KB)。仅当您的遥测后端接受大于 64 KB 的属性值时才调高此值,或调低此值以减少遥测数据量。需要 Claude Code v2.1.214 或更高版本。请参阅[监控](/docs/zh-CN/monitoring-usage) |346| `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` | 携带内容的 OpenTelemetry 属性(模型响应、工具内容、系统提示词、原始 API 正文)的最大长度,包括截断标记,以 UTF-16 代码单元计(默认:61440,即 60 KB)。仅当您的遥测后端接受大于 64 KB 的属性值时才调高此值,也可调低此值以减少遥测数据量。需要 Claude Code v2.1.214 或更高版本。请参阅[监控](/docs/zh-CN/monitoring-usage) |

345| `CLAUDE_CODE_OTEL_DIAG_STDERR` | 设置为 `1` 可将 OpenTelemetry 导出器诊断错误写入 stderr。默认情况下,这些错误仅在使用 `--debug` 时显示,因此配置错误的导出器(例如 Prometheus 端口冲突)否则会静默失败。需要 Claude Code v2.1.179 或更高版本。请参阅[监控](/docs/zh-CN/monitoring-usage) |347| `CLAUDE_CODE_OTEL_DIAG_STDERR` | 设为 `1` 可将 OpenTelemetry 导出器的诊断错误写入 stderr。默认情况下这些错误仅在使用 `--debug` 时出现,因此配置错误的导出器(例如 Prometheus 端口冲突)否则会静默失败。需要 Claude Code v2.1.179 或更高版本。请参阅[监控](/docs/zh-CN/monitoring-usage) |

346| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | 刷新待处理 OpenTelemetry span 的超时时间(毫秒)(默认:5000)。请参阅[监控](/docs/zh-CN/monitoring-usage) |348| `CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS` | 刷新待处理 OpenTelemetry span 的超时时间(毫秒)(默认:5000)。请参阅[监控](/docs/zh-CN/monitoring-usage) |

347| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | 刷新动态 OpenTelemetry 标头的间隔(毫秒)(默认:1740000 / 29 分钟)。请参阅[动态标头](/docs/zh-CN/monitoring-usage#dynamic-headers) |349| `CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS` | 刷新动态 OpenTelemetry 标头的间隔(毫秒)(默认:1740000 / 29 分钟)。请参阅[动态标头](/docs/zh-CN/monitoring-usage#dynamic-headers) |

348| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | OpenTelemetry 导出器在关闭时完成工作的超时时间(毫秒)(默认:2000)。如果退出时指标丢失,请调高此值。请参阅[监控](/docs/zh-CN/monitoring-usage) |350| `CLAUDE_CODE_OTEL_SHUTDOWN_TIMEOUT_MS` | OpenTelemetry 导出器在关闭时完成工作的超时时间(毫秒)(默认:2000)。如果指标在退出时丢失,请调高此值。请参阅[监控](/docs/zh-CN/monitoring-usage) |

349| `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` | 设置为 `1` 可让 Claude Code 在有新版本可用时在后台运行您的包管理器的升级命令。适用于 Homebrew 和 WinGet 安装。其他包管理器仍会显示升级命令而不运行它。请参阅[自动更新](/docs/zh-CN/setup#auto-updates) |351| `CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE` | 设为 `1` 可在有新版本可用时让 Claude Code 在后台运行包管理器的升级命令。适用于 Homebrew 和 WinGet 安装。其他包管理器仍会显示升级命令但不会运行它。请参阅[自动更新](/docs/zh-CN/setup#auto-updates) |

350| `CLAUDE_CODE_PERFORCE_MODE` | 设置为 `1` 可启用感知 Perforce 的写保护。设置后,如果目标文件缺少所有者写入位,Edit、Write 和 NotebookEdit 会失败并给出 `p4 edit <file>` 提示;Perforce 会清除已同步文件的该位,直到 `p4 edit` 打开这些文件。这可防止 Claude Code 绕过 Perforce 变更跟踪 |352| `CLAUDE_CODE_PERFORCE_MODE` | 设为 `1` 可启用感知 Perforce 的写保护。设置后,如果目标文件缺少所有者写权限位(Perforce 会清除已同步文件的该位,直到 `p4 edit` 将其打开),Edit、Write 和 NotebookEdit 会失败并给出 `p4 edit <file>` 提示。这可防止 Claude Code 绕过 Perforce 变更跟踪 |

351| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | 覆盖插件根目录。尽管名称如此,此变量设置的是父目录,而不是缓存本身:市场和插件缓存位于此路径下的子目录中。默认为 `~/.claude/plugins` |353| `CLAUDE_CODE_PLUGIN_CACHE_DIR` | 覆盖插件根目录。尽管名称如此,它设置的是父目录,而非缓存本身:市场和插件缓存位于此路径下的子目录中。默认为 `~/.claude/plugins` |

352| `CLAUDE_CODE_PLUGIN_DIRS` | 要为会话加载的插件目录,每个目录的加载方式与 [`--plugin-dir`](/docs/zh-CN/plugins/cli-reference#flags-that-load-a-plugin-for-one-session) 标志相同。在 Unix 上用 `:` 分隔多个路径,在 Windows 上用 `;` 分隔。每个路径请使用绝对路径或以 `~` 开头,因为 Claude Code 会跳过相对路径。需要 Claude Code v2.1.280 或更高版本。请参阅[为单个会话加载插件](/docs/zh-CN/plugins/create#load-a-directory-or-archive-for-one-session) |354| `CLAUDE_CODE_PLUGIN_DIRS` | 要为会话加载的插件目录,每个目录的加载方式与 [`--plugin-dir`](/docs/zh-CN/plugins/cli-reference#flags-that-load-a-plugin-for-one-session) 标志相同。在 Unix 上用 `:` 分隔多个路径,在 Windows 上用 `;` 分隔。每个路径都应为绝对路径或以 `~` 开头,因为 Claude Code 会跳过相对路径。需要 Claude Code v2.1.280 或更高版本。请参阅[为单个会话加载插件](/docs/zh-CN/plugins/create#load-a-directory-or-archive-for-one-session) |

353| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | 克隆或刷新插件市场的超时时间(毫秒)(默认:120000)。对于大型仓库或较慢的网络连接,请调高此值。请参阅 [Git clone timed out](/docs/zh-CN/plugins/troubleshooting#git-clone-timed-out-after-120s) |355| `CLAUDE_CODE_PLUGIN_GIT_TIMEOUT_MS` | 克隆或刷新插件市场的超时时间(毫秒)(默认:120000)。对于大型仓库或较慢的网络连接,请调高此值。请参阅 [Git clone timed out](/docs/zh-CN/plugins/troubleshooting#git-clone-timed-out-after-120s) |

354| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | 设置为 `1` 可在市场刷新无法访问远程仓库或无法通过其身份验证时,跳过重新克隆尝试并继续使用现有的市场检出。适用于离线或气隙环境,在这些环境中重新克隆也会以相同方式失败。请参阅[市场更新在离线环境中失败](/docs/zh-CN/plugins/troubleshooting#marketplace-updates-keep-failing-offline) |356| `CLAUDE_CODE_PLUGIN_KEEP_MARKETPLACE_ON_FAILURE` | 设为 `1` 可在市场刷新无法连接到远程或无法通过远程身份验证时,跳过重新克隆尝试并继续使用现有的市场检出副本。适用于重新克隆同样会失败的离线或气隙环境。请参阅[市场更新在离线环境中失败](/docs/zh-CN/plugins/troubleshooting#marketplace-updates-keep-failing-offline) |

355| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | 设置为 `1` 可通过 HTTPS 而非 SSH 克隆 GitHub `owner/repo` 简写来源。适用于插件安装和更新,以及 `/plugin marketplace add` 和 `update`。适用于 CI 运行器、容器或任何未为 `github.com` 配置 SSH 密钥的环境 |357| `CLAUDE_CODE_PLUGIN_PREFER_HTTPS` | 设为 `1` 可通过 HTTPS 而非 SSH 克隆 GitHub `owner/repo` 简写来源。适用于插件安装和更新,以及 `/plugin marketplace add` 和 `update`。适用于 CI 运行器、容器或任何未为 `github.com` 配置 SSH 密钥的环境 |

356| `CLAUDE_CODE_PLUGIN_SEED_DIR` | 一个或多个只读插件种子目录的路径,在 Unix 上以 `:` 分隔,在 Windows 上以 `;` 分隔。可用于将预填充的插件目录打包到容器镜像中。Claude Code 会在启动时从这些目录注册市场,并使用预缓存的插件而无需重新克隆。请参阅[为容器预填充插件](/docs/zh-CN/plugins/org#seed-containers-and-ci) |358| `CLAUDE_CODE_PLUGIN_SEED_DIR` | 一个或多个只读插件种子目录的路径,在 Unix 上以 `:` 分隔,在 Windows 上以 `;` 分隔。用于将预填充的插件目录打包到容器镜像中。Claude Code 会在启动时从这些目录注册市场,并使用预缓存的插件而无需重新克隆。请参阅[为容器预填充插件](/docs/zh-CN/plugins/org#seed-containers-and-ci) |

357| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | 设置为 `1` 可阻止 Claude Code 在为工具调用、hook 和状态栏命令启动 PowerShell 时传递 `-ExecutionPolicy Bypass`,转而遵循计算机的有效执行策略。默认情况下,Claude Code 会在进程作用域绕过执行策略,以便 `.ps1` 脚本和模块导入能够在默认策略为 Restricted 的 Windows 安装上正常工作。无论此设置如何,进程作用域的绕过都绝不会覆盖组策略 `MachinePolicy` 或 `UserPolicy` |359| `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY` | 设为 `1` 可阻止 Claude Code 在为工具调用、hook 和状态栏命令启动 PowerShell 时传递 `-ExecutionPolicy Bypass`,转而遵循计算机的有效执行策略。默认情况下,Claude Code 会在进程作用域绕过执行策略,以便 `.ps1` 脚本和模块导入在默认为 Restricted 的 Windows 安装上正常工作。无论此设置如何,进程作用域的绕过都不会覆盖组策略 `MachinePolicy` 或 `UserPolicy` |

358| `CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS` | 在使用 `-p` 标志的[非交互模式](/docs/zh-CN/headless#background-tasks-at-exit)下,最后一轮结束后空闲等待后台子代理和工作流的上限时间(毫秒)。每当 Claude 为处理后台结果而进行一轮时,空闲等待会重新计时。默认:`600000`,即 10 分钟。当空闲等待达到上限时,Claude Code 会停止等待剩余的后台任务并退出。设置为 `0` 可无限期等待。此上限与适用于普通后台 shell 的五秒宽限期相互独立。需要 Claude Code v2.1.182 或更高版本 |360| `CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS` | 在使用 `-p` 标志的[非交互模式](/docs/zh-CN/headless#background-tasks-at-exit)中,最后一轮之后空闲等待后台子代理和工作流的时间上限(毫秒)。每当 Claude 用一轮来处理后台结果时,空闲等待都会重新计时。默认:`600000`,即 10 分钟。当空闲等待达到上限时,Claude Code 会停止等待剩余的后台任务并退出。设为 `0` 可无限期等待。此上限独立于适用于普通后台 shell 的五秒宽限期。需要 Claude Code v2.1.182 或更高版本 |

359| `CLAUDE_CODE_PROCESS_WRAPPER` | 通过以 argv 前缀形式给出的企业启动器(例如 `/opt/corp/launcher`)来启动 Claude Code 从其自身二进制文件启动的进程,例如托管 [agent view](/docs/zh-CN/agent-view) 会话的后台服务。请在用户设置或[托管设置](/docs/zh-CN/managed-settings)的 `env` 块中设置,而不是作为 shell 导出,以便分离的后台服务能够继承它;项目设置和本地设置无法设置它。等同于 [`processWrapper` 设置](/docs/zh-CN/settings-reference#processwrapper),该设置需要 Claude Code v2.1.210 或更高版本;两者都设置时此变量优先。VS Code 扩展通过其 `claudeProcessWrapper` 设置单独配置自己的启动器。在 Windows 上会被忽略。有关值的格式、启动器涵盖的范围以及启动器必须满足的约定,请参阅[在企业启动器后运行 Claude Code](/docs/zh-CN/corporate-launcher)。需要 Claude Code v2.1.208 或更高版本 |361| `CLAUDE_CODE_PROCESS_WRAPPER` | 通过以 argv 前缀形式给出的企业启动器(如 `/opt/corp/launcher`)来启动 Claude Code 从自身二进制文件启动的进程,例如托管 [agent view](/docs/zh-CN/agent-view) 会话的后台服务。请在用户设置或[托管设置](/docs/zh-CN/managed-settings)的 `env` 块中设置它,而不是作为 shell 导出,以便分离的后台服务能够继承它;项目设置和本地设置无法设置它。等同于 [`processWrapper` 设置](/docs/zh-CN/settings-reference#processwrapper),该设置需要 Claude Code v2.1.210 或更高版本;两者都设置时此变量优先。VS Code 扩展通过其 `claudeProcessWrapper` 设置单独配置自己的启动器。在 Windows 上会被忽略。有关值的格式、启动器涵盖的范围以及启动器必须满足的约定,请参阅[在企业启动器后运行 Claude Code](/docs/zh-CN/corporate-launcher)。需要 Claude Code v2.1.208 或更高版本 |

360| `CLAUDE_CODE_PROJECT_DIR_NAME` | 与 `CLAUDE_CONFIG_DIR` 一起设置,用于选择 Claude Code 存储该会话的会话记录和自动记忆所用的 `projects/` 目录名称,以替代根据工作目录路径派生的名称。例如,使用 `CLAUDE_CONFIG_DIR=/srv/tenant-a CLAUDE_CODE_PROJECT_DIR_NAME=work claude` 启动 Claude Code 会将它们存储在 `/srv/tenant-a/projects/work/` 下。未设置 `CLAUDE_CONFIG_DIR` 时,Claude Code 会忽略此变量,并且仅从您启动 `claude` 的环境中读取它,绝不会从[设置文件的 `env` 块](#in-settings-files)中读取。请参阅[自行命名项目目录](/docs/zh-CN/sessions#name-the-project-directory-yourself)。需要 Claude Code v2.1.234 或更高版本 |362| `CLAUDE_CODE_PROJECT_DIR_NAME` | 与 `CLAUDE_CONFIG_DIR` 一起设置,用于选择 Claude Code 存储该会话的会话记录和自动记忆的 `projects/` 目录名称,以替代根据工作目录路径派生的名称。例如,使用 `CLAUDE_CONFIG_DIR=/srv/tenant-a CLAUDE_CODE_PROJECT_DIR_NAME=work claude` 启动 Claude Code 会将它们存储在 `/srv/tenant-a/projects/work/` 下。当 `CLAUDE_CONFIG_DIR` 未设置时,Claude Code 会忽略此变量,并且只从您启动 `claude` 的环境中读取它,绝不从[设置文件的 `env` 块](#in-settings-files)中读取。请参阅[自行命名项目目录](/docs/zh-CN/sessions#name-the-project-directory-yourself)。需要 Claude Code v2.1.234 或更高版本 |

361| `CLAUDE_CODE_PROMPT_CACHE_TTL` | 设置为 `5m` 或 `1h`(Claude Code 仅接受这两个值),以选择主对话的[提示缓存 TTL](/docs/zh-CN/prompt-caching#cache-lifetime):包括您的交互式、`-p` 和 SDK 轮次,以及与它们内联运行的辅助程序。优先于 `promptCacheTtl` 设置和 `ENABLE_PROMPT_CACHING_1H`,而 `FORCE_PROMPT_CACHING_5M` 会覆盖它。API 对 1 小时缓存写入按更高的费率计费。需要 Claude Code v2.1.242 或更高版本 |363| `CLAUDE_CODE_PROMPT_CACHE_TTL` | 设为 `5m` 或 `1h`(Claude Code 仅接受这两个值),为主对话选择[提示缓存 TTL](/docs/zh-CN/prompt-caching#cache-lifetime):包括您的交互式、`-p` 和 SDK 轮次,以及与它们内联运行的辅助请求。优先于 `promptCacheTtl` 设置和 `ENABLE_PROMPT_CACHING_1H`,而 `FORCE_PROMPT_CACHING_5M` 会覆盖它。API 对 1 小时缓存写入按更高费率计费。需要 Claude Code v2.1.242 或更高版本 |

362| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | 设置为 `1` 可在 `ANTHROPIC_BASE_URL` 指向自定义代理时传播 W3C 追踪上下文。传播范围包括模型请求和 HTTP MCP 请求上的 `traceparent` 标头,以及 Bash、PowerShell 和 hook 子进程的 `TRACEPARENT` 环境变量。默认情况下,仅在直接连接到 Anthropic API 时启用传播。在 v2.1.152 中添加。请参阅[追踪(beta)](/docs/zh-CN/monitoring-usage#traces-beta) |364| `CLAUDE_CODE_PROPAGATE_TRACEPARENT` | 当 `ANTHROPIC_BASE_URL` 指向自定义代理时,设为 `1` 可传播 W3C 跟踪上下文。传播范围包括模型请求和 HTTP MCP 请求上的 `traceparent` 标头,以及 Bash、PowerShell 和 hook 子进程的 `TRACEPARENT` 环境变量。默认情况下,仅在直接连接到 Anthropic API 时启用传播。在 v2.1.152 中添加。请参阅[跟踪(beta)](/docs/zh-CN/monitoring-usage#traces-beta) |

363| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | 由嵌入 Claude Code 并代其管理模型提供商路由的宿主平台设置。设置后,Claude Code 会忽略设置文件中的提供商选择、端点和身份验证变量,例如 `CLAUDE_CODE_USE_BEDROCK`、`ANTHROPIC_BASE_URL` 和 `ANTHROPIC_API_KEY`,因此用户设置无法覆盖宿主的路由。Claude Code 还会忽略[托管设置](/docs/zh-CN/managed-settings)中的模型选择键,例如 `model`、`fallbackModel` 和 `modelOverrides`,无论由哪个托管来源下发,因此宿主的模型配置优先于过时的托管模型固定设置。Claude Code 还会忽略托管 `env` 块中的模型选择变量,例如 `ANTHROPIC_MODEL` 和 `ANTHROPIC_DEFAULT_*_MODEL` 系列;托管设置中的 [`availableModels`](/docs/zh-CN/model-config#restrict-model-selection) 允许列表仍然适用,除非宿主提供了自己的允许列表。Claude Code 还会跳过其在第三方提供商(例如 Amazon Bedrock、Claude Platform on AWS、Google Cloud's Agent Platform 和 Microsoft Foundry)上原本会应用的自动遥测退出,因此遥测遵循标准的 `DISABLE_TELEMETRY` 退出机制。请参阅[各 API 提供商的默认行为](/docs/zh-CN/data-usage#default-behaviors-by-api-provider) |365| `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST` | 由嵌入 Claude Code 并代为管理模型提供商路由的宿主平台设置。设置后,Claude Code 会忽略设置文件中的提供商选择、端点和身份验证变量,例如 `CLAUDE_CODE_USE_BEDROCK`、`ANTHROPIC_BASE_URL` 和 `ANTHROPIC_API_KEY`,因此用户设置无法覆盖宿主的路由。Claude Code 还会忽略[托管设置](/docs/zh-CN/managed-settings)中的模型选择键,例如 `model`、`fallbackModel` 和 `modelOverrides`,无论由哪个托管来源下发,因此宿主的模型配置优先于过时的托管模型固定设置。Claude Code 还会忽略托管 `env` 块中的模型选择变量,例如 `ANTHROPIC_MODEL` 和 `ANTHROPIC_DEFAULT_*_MODEL` 系列;托管设置中的 [`availableModels`](/docs/zh-CN/model-config#restrict-model-selection) 允许列表仍然适用,除非宿主提供了自己的允许列表。Claude Code 还会跳过它在第三方提供商(如 Amazon Bedrock、Claude Platform on AWS、Google Cloud's Agent Platform 和 Microsoft Foundry)上原本会应用的自动遥测退出,因此遥测遵循标准的 `DISABLE_TELEMETRY` 退出机制。请参阅[各 API 提供商的默认行为](/docs/zh-CN/data-usage#default-behaviors-by-api-provider) |

364| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | 设置为 `1` 可允许由代理而非调用方执行 DNS 解析。适用于应由代理处理主机名解析的环境,需主动启用 |366| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | 设为 `1` 可允许由代理而非调用方执行 DNS 解析。适用于应由代理处理主机名解析的环境,需主动选择启用 |

365| `CLAUDE_CODE_REMOTE` | 当 Claude Code 作为[云端会话](/docs/zh-CN/claude-code-on-the-web)运行时自动设置为 `true`。可在 hook 或设置脚本中读取此变量,以检测您是否处于云端会话中 |367| `CLAUDE_CODE_REMOTE` | 当 Claude Code 作为[云端会话](/docs/zh-CN/claude-code-on-the-web)运行时自动设为 `true`。可从 hook 或设置脚本中读取此变量,以检测是否处于云端会话中 |

366| `CLAUDE_CODE_REMOTE_SESSION_ID` | 在[云端会话](/docs/zh-CN/claude-code-on-the-web)中自动设置为当前会话的 ID。读取此变量可构建返回会话记录的链接。请参阅[将输出链接回会话](/docs/zh-CN/cloud-environments#link-output-back-to-the-session) |368| `CLAUDE_CODE_REMOTE_SESSION_ID` | 在[云端会话](/docs/zh-CN/claude-code-on-the-web)中自动设为当前会话的 ID。读取此变量可构造指回会话记录的链接。请参阅[将输出链接回会话](/docs/zh-CN/cloud-environments#link-output-back-to-the-session) |

367| `CLAUDE_CODE_RESTRICTED` | 设置为 `1` 可在受限模式下启动会话,与传递 [`--restricted`](/docs/zh-CN/cli-reference#cli-flags) 相同。Claude Code 会忽略设置文件 `env` 块中的此变量。需要 Claude Code v2.1.248 或更高版本 |369| `CLAUDE_CODE_RESTRICTED` | 设为 `1` 可以受限模式启动会话,与传递 [`--restricted`](/docs/zh-CN/cli-reference#cli-flags) 相同。Claude Code 会忽略设置文件 `env` 块中的此变量。需要 Claude Code v2.1.248 或更高版本 |

368| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` | 设置为 `1` 可在上一个会话于轮次中途结束时自动恢复。在 SDK 模式下使用,使模型无需 SDK 重新发送提示词即可继续。要关闭此功能,请取消设置该变量或将其设置为 `0`。有关 VS Code 聊天面板,请参阅[重新加载后继续对话](/docs/zh-CN/vs-code#continue-conversations-after-a-reload) |370| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` | 设为 `1` 可在上一个会话于轮次中途结束时自动恢复。在 SDK 模式中使用,使模型无需 SDK 重新发送提示词即可继续。要关闭此功能,请取消设置该变量或将其设为 `0`。有关 VS Code 聊天面板,请参阅[重新加载后继续对话](/docs/zh-CN/vs-code#continue-conversations-after-a-reload) |

369| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | 对于在轮次中途结束的会话,允许在恢复时自动继续的最后一条会话记录消息的最大时长(毫秒)。当最后一条消息早于此界限时,Claude Code 会跳过 `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` 自动恢复及其 `CLAUDE_CODE_RESUME_PROMPT` 继续消息,会话将以空闲状态启动,由您显式继续。未设置或为 `0` 表示没有界限,但最后一个请求因 API 错误而失败的轮次,仅在该错误发生不到六小时时才会恢复。正值会对每个轮次(包括上述轮次)施加界限;负值或非数字值会施加一小时的界限。长时间运行的 Agent 的启动脚本可以设置此变量,以免针对旧会话记录重启时重新运行过时的提示词。当 Claude Code 重启一个从交互式会话继承对话的已崩溃 [agent view](/docs/zh-CN/agent-view) 会话时,它会自行设置一小时的界限。需要 Claude Code v2.1.211 或更高版本 |371| `CLAUDE_CODE_RESUME_INTERRUPTED_TURN_MAX_AGE_MS` | 对于在轮次中途结束的会话,恢复时可自动继续所允许的最后一条会话记录消息的最大时长(毫秒)。当最后一条消息早于此界限时,Claude Code 会跳过 `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` 自动恢复及其 `CLAUDE_CODE_RESUME_PROMPT` 继续消息,会话将以空闲状态启动,由您显式继续。未设置或为 `0` 表示无界限,但最后一个请求因 API 错误而失败的轮次仅在该错误发生不足六小时时才会恢复。正值会限制所有轮次,包括这类轮次;负值或非数字值会应用一小时的界限。长时间运行的 Agent 的启动脚本可以设置此变量,以免针对旧会话记录的重启重新运行过时的提示词。当 Claude Code 重启一个从交互式会话继承对话的已崩溃 [agent view](/docs/zh-CN/agent-view) 会话时,它会自行设置一小时的界限。需要 Claude Code v2.1.211 或更高版本 |

370| `CLAUDE_CODE_RESUME_PROMPT` | 覆盖 Claude Code 发送给 Claude 的继续消息,适用于 `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` 继续被中断的轮次(而不是重新发送其提示词)时,或您使用 `-p` 恢复[延迟的工具调用](/docs/zh-CN/hooks#defer-a-tool-call-for-later)时。默认为 `Continue from where you left off.`。空字符串会使用默认值 |372| `CLAUDE_CODE_RESUME_PROMPT` | 覆盖 Claude Code 发送给 Claude 的继续消息,该消息用于 `CLAUDE_CODE_RESUME_INTERRUPTED_TURN` 继续中断的轮次而不是重新发送其提示词时,或您使用 `-p` 恢复[延迟的工具调用](/docs/zh-CN/hooks#defer-a-tool-call-for-later)时。默认为 `Continue from where you left off.`。空字符串会使用默认值 |

371| `CLAUDE_CODE_RETRY_WATCHDOG` | 对于无人值守的会话(例如评估 harness、CI 作业或远程 worker),请设置为 `1`。无限期重试 `429` 和 `529` 容量错误,而不是在 `CLAUDE_CODE_MAX_RETRIES` 次尝试后失败。当标准速度请求收到报告支出限制或使用额度耗尽的 `429` 时,即使它来自按计划重置的[网关支出上限](/docs/zh-CN/errors#spend-limit-reached),Claude Code 也会立即失败。在 v2.1.239 之前,watchdog 会无限期重试这些错误。有关快速模式请求,请参阅[处理速率限制](/docs/zh-CN/fast-mode#handle-rate-limits)。watchdog 在两次尝试之间最多退避 5 分钟,或者在响应携带速率限制重置时间时一直等到限制重置,因此遇到用量限制的会话会等待剩余的时间窗口结束。在 v2.1.199 或更高版本中,它还会将其他暂时性错误(例如服务器错误、超时和连接断开)的默认重试次数提高到 300 次,约合三小时的退避时间,并在您显式设置 `CLAUDE_CODE_MAX_RETRIES` 时移除其 15 次的上限。需要 Claude Code v2.1.186 或更高版本 |373| `CLAUDE_CODE_RETRY_WATCHDOG` | 对于无人值守的会话(例如评估 harness、CI 作业或远程 worker),请设为 `1`。无限期重试 `429` 和 `529` 容量错误,而不是在 `CLAUDE_CODE_MAX_RETRIES` 次尝试后失败。当标准速度请求收到报告支出限额或使用额度耗尽的 `429` 时,Claude Code 会立即失败,即使它来自按计划重置的[网关支出上限](/docs/zh-CN/errors#spend-limit-reached)。在 v2.1.239 之前,watchdog 会无限期重试这些错误。有关快速模式请求,请参阅[处理速率限制](/docs/zh-CN/fast-mode#handle-rate-limits)。watchdog 在两次尝试之间最多退避 5 分钟,或者当响应带有速率限制重置时间时一直等到限制重置,因此达到用量限制的会话会等待剩余的时间窗口结束。在 v2.1.199 或更高版本中,它还会将其他瞬时错误(例如服务器错误、超时和连接断开)的默认重试次数提高到 300 次(约三小时的退避),并在您显式设置 `CLAUDE_CODE_MAX_RETRIES` 时移除其 15 次的上限。需要 Claude Code v2.1.186 或更高版本 |

372| `CLAUDE_CODE_SAFE_MODE` | 设置为 `1` 可以安全模式启动:CLAUDE.md、skill、插件、hook、MCP 服务器、自定义命令和 Agent、输出样式、工作流、自定义主题、自定义快捷键、状态栏和文件建议命令、LSP 服务器以及自动记忆都不会加载,用于对损坏的配置进行故障排除。托管设置策略仍然适用,包括策略配置的 hook、状态栏和文件建议命令;托管插件、托管 skill、托管 CLAUDE.md 和策略配置的 MCP 服务器则不会加载。等同于传递 [`--safe-mode`](/docs/zh-CN/cli-reference#cli-flags)。直接生成的子进程会继承该变量 |374| `CLAUDE_CODE_SAFE_MODE` | 设为 `1` 可以安全模式启动:CLAUDE.md、skill、插件、hook、MCP 服务器、自定义命令和 Agent、输出样式、工作流、自定义主题、自定义快捷键、状态栏和文件建议命令、LSP 服务器以及自动记忆都不会加载,用于对损坏的配置进行故障排除。托管设置策略仍然适用,包括策略配置的 hook、状态栏和文件建议命令;托管插件、托管 skill、托管 CLAUDE.md 以及策略配置的 MCP 服务器则不会加载。等同于传递 [`--safe-mode`](/docs/zh-CN/cli-reference#cli-flags)。直接生成的子进程会继承该变量 |

373| `CLAUDE_CODE_SCRIPT_CAPS` | 在设置了 `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` 时,用于限制特定脚本在每个会话中可被调用次数的 JSON 对象。键是与命令文本进行匹配的子字符串;值是整数调用次数限制。例如,`{"deploy.sh": 2}` 允许 `deploy.sh` 最多被调用两次。匹配基于子字符串,因此像 `./scripts/deploy.sh $(evil)` 这样的 shell 展开技巧仍会计入上限。不会检测通过 `xargs` 或 `find -exec` 进行的运行时扇出;这是一项纵深防御控制 |375| `CLAUDE_CODE_SCRIPT_CAPS` | JSON 对象,用于在设置了 `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` 时限制特定脚本在每个会话中可被调用的次数。键是与命令文本匹配的子字符串;值是整数调用上限。例如,`{"deploy.sh": 2}` 允许 `deploy.sh` 最多被调用两次。匹配基于子字符串,因此像 `./scripts/deploy.sh $(evil)` 这样的 shell 展开技巧仍会计入上限。无法检测通过 `xargs` 或 `find -exec` 进行的运行时扇出;这是一项纵深防御控制 |

374| `CLAUDE_CODE_SCROLL_SPEED` | 设置[全屏渲染](/docs/zh-CN/fullscreen#mouse-wheel-scrolling)中的鼠标滚轮滚动倍数。接受不超过 20 的任何正值,包括低于 1 的小数值(例如 `0.5`),用于在已经放大滚轮事件的终端中减慢加速的触控板和滚轮滚动。如果您的终端每个刻度只发送一个滚轮事件且不做放大,设置为 `3` 可与 `vim` 保持一致。在 JetBrains IDE 终端中会被忽略,因为 Claude Code 在该终端中使用自己的滚动处理 |376| `CLAUDE_CODE_SCROLL_SPEED` | 设置[全屏渲染](/docs/zh-CN/fullscreen#mouse-wheel-scrolling)中的鼠标滚轮滚动倍数。接受不超过 20 的任何正值,包括小于 1 的小数值(如 `0.5`),以便在已放大滚轮事件的终端中减慢加速的触控板和滚轮滚动。如果您的终端每个刻度发送一个滚轮事件且不进行放大,设为 `3` 可与 `vim` 保持一致。在 JetBrains IDE 终端中会被忽略,Claude Code 在其中使用自己的滚动处理 |

375| `CLAUDE_CODE_SEND_FEEDBACK` | 设置为 `0` 可为会话关闭 [Claude 起草的反馈](/docs/zh-CN/tools-reference#sendfeedback-tool-behavior)。设置为 `1` 可在您的账户已有访问权限的情况下开启该功能;该变量本身无法授予访问权限,其他关闭反馈的开关(例如 `DISABLE_FEEDBACK_COMMAND` 以及 [`feedbackDrafts`](/docs/zh-CN/settings-reference#feedbackdrafts) 设置的 `off` 值)仍然适用 |377| `CLAUDE_CODE_SEND_FEEDBACK` | 设为 `0` 可为会话关闭 [Claude 起草的反馈](/docs/zh-CN/tools-reference#sendfeedback-tool-behavior)。在您的账户已具有访问权限时,设为 `1` 可开启它;该变量本身无法授予访问权限,其他关闭反馈的开关(如 `DISABLE_FEEDBACK_COMMAND` 和 [`feedbackDrafts`](/docs/zh-CN/settings-reference#feedbackdrafts) 设置的 `off` 值)仍然适用 |

376| `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` | 覆盖 [SessionEnd](/docs/zh-CN/hooks#sessionend) hook 的时间预算(毫秒)。该值也是每个未设置自身 `timeout` 的 hook 的超时时间。适用于会话退出、`/clear` 以及通过交互式 `/resume` 切换会话。默认情况下预算为 1.5 秒,并会自动提高到设置文件中配置的单个 hook 最高 `timeout`,最多 60 秒。插件提供的 hook 上的超时时间不会提高预算 |378| `CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS` | 覆盖 [SessionEnd](/docs/zh-CN/hooks#sessionend) hook 的时间预算(毫秒)。该值也是每个未设置自身 `timeout` 的 hook 的超时时间。适用于会话退出、`/clear` 以及通过交互式 `/resume` 切换会话。默认预算为 1.5 秒,会自动提高到设置文件中配置的最高单 hook `timeout`,最多 60 秒。插件提供的 hook 上的超时时间不会提高预算 |

377| `CLAUDE_CODE_SESSION_ID` | 在 Bash 和 PowerShell 工具子进程、[hook 命令](/docs/zh-CN/hooks)子进程以及 stdio [MCP 服务器](/docs/zh-CN/mcp)子进程中自动设置为当前会话 ID。对于 Bash、PowerShell 和 hook,该值与 hook JSON 输入中的 `session_id` 字段一致,并会在 `/clear` 时更新。MCP 服务器子进程会保留其启动时的 ID。使用 `--resume <session-id>` 时,它会收到恢复后的 ID,与 hook 和 Bash 一致。使用 `--continue` 或不带显式 ID 的 `--resume` 时,它可能会改为收到初始启动 ID。用于将脚本和外部工具与启动它们的 Claude Code 会话关联起来 |379| `CLAUDE_CODE_SESSION_ID` | 在 Bash 和 PowerShell 工具子进程、[hook 命令](/docs/zh-CN/hooks)子进程以及 stdio [MCP 服务器](/docs/zh-CN/mcp)子进程中自动设为当前会话 ID。对于 Bash、PowerShell 和 hook,此值与 hook JSON 输入中的 `session_id` 字段一致,并会在 `/clear` 时更新。MCP 服务器子进程会保留其生成时的 ID。使用 `--resume <session-id>` 时,它会收到恢复的 ID,与 hook 和 Bash 一致。使用 `--continue` 或不带显式 ID 的 `--resume` 时,它可能会改为收到初始启动 ID。用于将脚本和外部工具与启动它们的 Claude Code 会话相关联 |

378| `CLAUDE_CODE_SHELL` | 设置 Claude Code 用于运行 Bash 工具命令的 shell。接受指向 `bash` 或 `zsh` 二进制文件的路径,例如 `/opt/homebrew/bin/bash`。不支持 `fish` 等其他 shell。如果该值不是可用的 `bash` 或 `zsh` 路径,Claude Code 会忽略它并回退到自动检测。自动检测会在您的 `$SHELL` 指向 `bash` 或 `zsh` 时使用它,否则会在您的 `PATH` 和标准安装位置中先查找第一个可用的 `zsh`,然后是 `bash` |380| `CLAUDE_CODE_SHELL` | 设置 Claude Code 运行 Bash 工具命令所用的 shell。接受 `bash` 或 `zsh` 二进制文件的路径,例如 `/opt/homebrew/bin/bash`。不支持 `fish` 等其他 shell。如果该值不是可用的 `bash` 或 `zsh` 路径,Claude Code 会忽略它并回退到自动检测。当您的 `$SHELL` 指向 `bash` 或 `zsh` 时,自动检测会使用它,否则会在您的 `PATH` 和标准安装位置中先选择找到的第一个可用的 `zsh`,然后是 `bash` |

379| `CLAUDE_CODE_SHELL_PREFIX` | 包装 Claude Code 所生成 shell 命令的命令前缀:Bash 工具调用、[hook](/docs/zh-CN/hooks) 命令、[状态栏](/docs/zh-CN/statusline)命令以及 stdio [MCP 服务器](/docs/zh-CN/mcp)启动命令。PowerShell hook 和 exec 形式的 hook 运行时不带前缀。适用于日志记录或审计。设置裸可执行文件路径(例如 `/path/to/logger.sh`)会将每个命令作为 `/path/to/logger.sh '<command>'` 运行。包装器会在 `$1` 中以单个经过 shell 引用的参数接收命令行,因此包装器必须使用 shell 重新求值 `$1`,例如 `exec bash -c "$1"`。将 `$1` 视为裸可执行文件路径会导致传递 `npx -y <package>` 等参数的 stdio MCP 服务器无法正常工作。对于 Bash 工具调用,`$1` 包含 Claude Code 组装的完整 shell 调用(包括环境设置),而不仅仅是 Claude 运行的命令 |381| `CLAUDE_CODE_SHELL_PREFIX` | 用于包装 Claude Code 所生成 shell 命令的命令前缀:Bash 工具调用、[hook](/docs/zh-CN/hooks) 命令、[状态栏](/docs/zh-CN/statusline)命令以及 stdio [MCP 服务器](/docs/zh-CN/mcp)启动命令。PowerShell hook 和 exec 形式的 hook 运行时不使用该前缀。适用于日志记录或审计。设置为裸可执行文件路径(如 `/path/to/logger.sh`)时,每个命令都会以 `/path/to/logger.sh '<command>'` 的形式运行。包装器在 `$1` 中以单个经过 shell 引用的参数接收命令行,因此包装器必须使用 shell 重新求值 `$1`,例如 `exec bash -c "$1"`。将 `$1` 视为裸可执行文件路径会导致传递 `npx -y <package>` 等参数的 stdio MCP 服务器出错。对于 Bash 工具调用,`$1` 包含 Claude Code 组装的完整 shell 调用,包括环境设置,而不仅仅是 Claude 运行的命令 |

380| `CLAUDE_CODE_SIMPLE` | 设置为 `1` 可使用最小系统提示词运行,且仅提供 Bash、文件读取和文件编辑工具。来自 `--mcp-config` 的 MCP 工具仍然可用。禁用对 hook、skill、自定义命令、子代理、已安装插件、MCP 服务器、自动记忆和 CLAUDE.md 的自动发现。通过 `--add-dir` 传递的目录中的 skill 仍会加载。不会读取 OAuth 令牌和钥匙串凭据,因此 Anthropic 身份验证必须来自 `ANTHROPIC_API_KEY` 或 `--settings` 中的 `apiKeyHelper`。等同于传递 [`--bare`](/docs/zh-CN/headless#start-faster-with-bare-mode) |382| `CLAUDE_CODE_SIMPLE` | 设为 `1` 可使用最小系统提示词运行,并且仅提供 Bash、文件读取和文件编辑工具。来自 `--mcp-config` 的 MCP 工具仍然可用。禁用 hook、skill、自定义命令、子代理、已安装插件、MCP 服务器、自动记忆和 CLAUDE.md 的自动发现。通过 `--add-dir` 传递的目录中的 skill 仍会加载。不会读取 OAuth 令牌和钥匙串凭据,因此 Anthropic 身份验证必须来自 `ANTHROPIC_API_KEY` 或 `--settings` 中的 `apiKeyHelper`。等同于传递 [`--bare`](/docs/zh-CN/headless#start-faster-with-bare-mode) |

381| `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT` | 设置为 `1` 可在任何模型上使用更短的系统提示词和简化的工具描述。设置为 `0`、`false`、`no` 或 `off` 可选择退出,即使在实验或服务器配置原本会启用它的模型上也是如此。完整的工具集、hook、MCP 服务器和 CLAUDE.md 发现仍保持启用 |383| `CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT` | 设为 `1` 可在任何模型上使用更短的系统提示词和简化的工具描述。设为 `0`、`false`、`no` 或 `off` 可选择退出,即使在实验或服务器配置原本会启用它的模型上也是如此。完整工具集、hook、MCP 服务器和 CLAUDE.md 发现仍保持启用 |

382| `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` | 跳过 [Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 的客户端身份验证,适用于自行对请求签名的网关 |384| `CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH` | 跳过 [Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 的客户端身份验证,适用于自行签名请求的网关 |

383| `CLAUDE_CODE_SKIP_AWS_CRED_CACHE` | 设置为 `1` 可关闭对从 AWS 默认凭据提供程序链解析出的凭据的进程内缓存,使 Claude Code 在每个 API 请求时都解析该链。缓存关闭后,基于 SSO 的配置文件会在每个请求时向 IAM Identity Center 请求凭据。请参阅[凭据缓存和解析超时](/docs/zh-CN/amazon-bedrock#credential-caching-and-resolution-timeout)。需要 Claude Code v2.1.207 或更高版本 |385| `CLAUDE_CODE_SKIP_AWS_CRED_CACHE` | 设为 `1` 可关闭对从 AWS 默认凭据提供程序链解析所得凭据的进程内缓存,使 Claude Code 在每个 API 请求时都重新解析该链。关闭缓存后,基于 SSO 的配置文件会在每个请求时向 IAM Identity Center 请求凭据。请参阅[凭据缓存和解析超时](/docs/zh-CN/amazon-bedrock#credential-caching-and-resolution-timeout)。需要 Claude Code v2.1.207 或更高版本 |

384| `CLAUDE_CODE_SKIP_BEDROCK_AUTH` | 跳过 Amazon Bedrock 的 AWS 身份验证(例如使用 LLM 网关时) |386| `CLAUDE_CODE_SKIP_BEDROCK_AUTH` | 跳过 Amazon Bedrock 的 AWS 身份验证(例如使用 LLM 网关时) |

385| `CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS` | 设置为 `1` 可将失败的[快速模式](/docs/zh-CN/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways)可用性检查视为可用,适用于会阻止该检查直接向 `api.anthropic.com` 发出请求的网络。Claude Code 仍会遵从“disabled by your organization”响应 |387| `CLAUDE_CODE_SKIP_FAST_MODE_NETWORK_ERRORS` | 设为 `1` 可将失败的[快速模式](/docs/zh-CN/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways)可用性检查视为可用,适用于阻止该检查直接请求 `api.anthropic.com` 的网络。Claude Code 仍会遵循“disabled by your organization”响应 |

386| `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK` | 设置为 `1` 可跳过客户端[快速模式](/docs/zh-CN/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways)可用性检查,适用于会拦截而非拒绝该检查请求的代理。当您的组织禁用了快速模式时,API 仍会拒绝快速模式请求 |388| `CLAUDE_CODE_SKIP_FAST_MODE_ORG_CHECK` | 设为 `1` 可跳过客户端[快速模式](/docs/zh-CN/fast-mode#use-fast-mode-behind-proxies-and-llm-gateways)可用性检查,适用于拦截而非拒绝该检查请求的代理。当您的组织禁用了快速模式时,API 仍会拒绝快速模式请求 |

387| `CLAUDE_CODE_SKIP_FOUNDRY_AUTH` | 跳过 Microsoft Foundry 的 Azure 身份验证,适用于会注入自己的 `Authorization` 标头的代理或网关。Claude Code 发送请求时不带 Azure 凭据,并保留您提供的 `Authorization` 标头(例如通过 `ANTHROPIC_CUSTOM_HEADERS` 提供)。设置了 `ANTHROPIC_FOUNDRY_API_KEY` 或 `ANTHROPIC_FOUNDRY_AUTH_TOKEN` 时会被忽略。在 v2.1.203 之前,除非同时设置了 API 密钥,否则此变量会导致 Microsoft Foundry 客户端无法发送请求 |389| `CLAUDE_CODE_SKIP_FOUNDRY_AUTH` | 跳过 Microsoft Foundry 的 Azure 身份验证,适用于注入自己的 `Authorization` 标头的代理或网关。Claude Code 会发送不带 Azure 凭据的请求,并保留您提供的 `Authorization` 标头(例如通过 `ANTHROPIC_CUSTOM_HEADERS` 提供)。设置了 `ANTHROPIC_FOUNDRY_API_KEY` 或 `ANTHROPIC_FOUNDRY_AUTH_TOKEN` 时会被忽略。在 v2.1.203 之前,除非同时设置了 API 密钥,否则此变量会导致 Microsoft Foundry 客户端无法发送请求 |

388| `CLAUDE_CODE_SKIP_MANTLE_AUTH` | 跳过 Amazon Bedrock Mantle 的 AWS 身份验证(例如使用 LLM 网关时) |390| `CLAUDE_CODE_SKIP_MANTLE_AUTH` | 跳过 Amazon Bedrock Mantle 的 AWS 身份验证(例如使用 LLM 网关时) |

389| `CLAUDE_CODE_SKIP_MODEL_ACCESS_MEMORY` | [Amazon Bedrock](/docs/zh-CN/amazon-bedrock) 和 [Google Cloud's Agent Platform](/docs/zh-CN/google-vertex-ai) 上的[启动模型检查](/docs/zh-CN/amazon-bedrock#startup-model-checks)会在本机上记住它们发现您的账户无法调用的模型,最长保留一天。设置为 `1` 可关闭这一记忆。需要 Claude Code v2.1.285 或更高版本 |391| `CLAUDE_CODE_SKIP_MODEL_ACCESS_MEMORY` | [Amazon Bedrock](/docs/zh-CN/amazon-bedrock) 和 [Google Cloud's Agent Platform](/docs/zh-CN/google-vertex-ai) 上的[启动模型检查](/docs/zh-CN/amazon-bedrock#startup-model-checks)会在本机上记住它们发现您的账户无法调用的模型,最长保留一天。设为 `1` 可关闭此项记忆。需要 Claude Code v2.1.285 或更高版本 |

390| `CLAUDE_CODE_SKIP_PROMPT_HISTORY` | 设置为 `1` 可跳过将提示词历史记录和会话记录写入磁盘。设置此变量后启动的会话不会出现在 `--resume`、`--continue` 或向上箭头历史记录中。适用于临时的脚本化会话 |392| `CLAUDE_CODE_SKIP_PROMPT_HISTORY` | 设为 `1` 可跳过将提示词历史和会话记录写入磁盘。设置此变量后启动的会话不会出现在 `--resume`、`--continue` 或上箭头历史中。适用于临时的脚本化会话 |

391| `CLAUDE_CODE_SKIP_VERTEX_AUTH` | 跳过 Google Cloud's Agent Platform 的 Google 身份验证(例如使用 LLM 网关时) |393| `CLAUDE_CODE_SKIP_VERTEX_AUTH` | 跳过 Google Cloud's Agent Platform 的 Google 身份验证(例如使用 LLM 网关时) |

392| `CLAUDE_CODE_STARTUP_FAILURE_RESULTS` | 设置为 `1` 可让使用 `--output-format stream-json` 启动的会话,在那些原本仅以 stderr 输出结束的启动失败情况下,写入一条[说明 Claude Code 拒绝启动原因的结果消息](/docs/zh-CN/agent-sdk/typescript#startup_failure_reason)。需要 Claude Code v2.1.274 或更高版本 |394| `CLAUDE_CODE_STARTUP_FAILURE_RESULTS` | 设为 `1` 可让使用 `--output-format stream-json` 启动的会话在原本仅以 stderr 输出结束的启动失败时,写入一条[说明 Claude Code 拒绝启动原因的结果消息](/docs/zh-CN/agent-sdk/typescript#startup_failure_reason)。需要 Claude Code v2.1.274 或更高版本 |

393| `CLAUDE_CODE_STOP_HOOK_BLOCK_CAP` | [Stop](/docs/zh-CN/hooks#stop) 或 [SubagentStop](/docs/zh-CN/hooks#subagentstop) hook 可连续阻止轮次结束的最大次数,超过后 Claude Code 会覆盖它并强制结束该轮次(默认:8)。设置为 `0` 可禁用此上限。如果您的 hook 确实需要更多次迭代才能完成,请调高此值 |395| `CLAUDE_CODE_STOP_HOOK_BLOCK_CAP` | [Stop](/docs/zh-CN/hooks#stop) 或 [SubagentStop](/docs/zh-CN/hooks#subagentstop) hook 可连续阻止轮次结束的最大次数,超过后 Claude Code 会覆盖它并仍然结束该轮次(默认:8)。设为 `0` 可禁用上限。如果您的 hook 确实需要更多迭代才能解决问题,请调高此值 |

394| `CLAUDE_CODE_SUBAGENT_MODEL` | 未通过其他方式指定模型的[子代理](/docs/zh-CN/sub-agents#choose-a-model)、[agent team](/docs/zh-CN/agent-teams#specify-teammates-and-models) 队友和[工作流](/docs/zh-CN/workflows) Agent 的默认模型。接受别名(例如 `haiku`)或完整的模型名称。有两个来源优先于它:Claude 生成 Agent 时传递的模型,以及 Agent 定义中的 `model` 字段(包括 `inherit`)。要改变这一点,请设置 [`CLAUDE_CODE_SUBAGENT_MODEL_FORCE`](/docs/zh-CN/sub-agents#run-every-subagent-on-one-model)。有关完整顺序,请参阅[选择模型](/docs/zh-CN/sub-agents#choose-a-model)。将其设置为 `inherit` 与不设置相同。在 v2.1.251 之前,此变量会覆盖每次调用指定的模型和定义中的 `model` 字段 |396| `CLAUDE_CODE_SUBAGENT_MODEL` | 未通过其他方式指定模型的[子代理](/docs/zh-CN/sub-agents#choose-a-model)、[agent team](/docs/zh-CN/agent-teams#specify-teammates-and-models) 队友以及[工作流](/docs/zh-CN/workflows) Agent 的默认模型。接受别名(如 `haiku`)或完整模型名称。有两个来源优先于它:Claude 生成 Agent 时传递的模型,以及 Agent 定义中的 `model` 字段(包括 `inherit`)。要改变这一点,请设置 [`CLAUDE_CODE_SUBAGENT_MODEL_FORCE`](/docs/zh-CN/sub-agents#run-every-subagent-on-one-model)。完整顺序请参阅[选择模型](/docs/zh-CN/sub-agents#choose-a-model)。将其设为 `inherit` 与不设置相同。在 v2.1.251 之前,此变量会同时覆盖按调用指定的模型和定义中的 `model` 字段 |

395| `CLAUDE_CODE_SUBAGENT_MODEL_FORCE` | 设置为 `1` 可将同一个模型强制应用于子代理、队友和工作流 Agent。[在同一模型上运行所有子代理](/docs/zh-CN/sub-agents#run-every-subagent-on-one-model)说明了具体是哪个模型。需要 Claude Code v2.1.257 或更高版本 |397| `CLAUDE_CODE_SUBAGENT_MODEL_FORCE` | 设为 `1` 可将同一个模型强制应用于子代理、队友和工作流 Agent。[在同一模型上运行所有子代理](/docs/zh-CN/sub-agents#run-every-subagent-on-one-model)说明了使用的是哪个模型。需要 Claude Code v2.1.257 或更高版本 |

396| `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL` | 设置为 `5m` 或 `1h`(Claude Code 仅接受这两个值),以选择主对话之外的请求(例如[子代理](/docs/zh-CN/sub-agents)、工作流和后台工作)的[提示缓存 TTL](/docs/zh-CN/prompt-caching#cache-lifetime)。优先于 `subagentPromptCacheTtl` 设置和 `ENABLE_PROMPT_CACHING_1H`,而 `FORCE_PROMPT_CACHING_5M` 会覆盖它。API 对 1 小时缓存写入按更高的费率计费。需要 Claude Code v2.1.242 或更高版本 |398| `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL` | 设为 `5m` 或 `1h`(Claude Code 仅接受这两个值),为主对话之外的请求(如[子代理](/docs/zh-CN/sub-agents)、工作流和后台工作)选择[提示缓存 TTL](/docs/zh-CN/prompt-caching#cache-lifetime)。优先于 `subagentPromptCacheTtl` 设置和 `ENABLE_PROMPT_CACHING_1H`,而 `FORCE_PROMPT_CACHING_5M` 会覆盖它。API 对 1 小时缓存写入按更高费率计费。需要 Claude Code v2.1.242 或更高版本 |

397| `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` | 设置为 `1` 可从子进程环境(Bash 工具、hook、MCP stdio 服务器)中移除凭据:Anthropic 和云提供商凭据、Claude Code 识别为凭据的任何其他变量,以及嵌入在包注册表 URL 中的凭据。父 Claude 进程会保留这些凭据用于 API 调用,但子进程无法读取它们,从而降低遭受试图通过 shell 展开窃取机密的提示词注入攻击的风险。在 v2.1.251 或更高版本中,该清除操作还会移除 Claude Code 自身的配置存储指针变量(例如 `CLAUDE_CONFIG_DIR`),使子进程无法定位已迁移的配置目录。如果子进程需要这些变量,请不要设置此清除选项。在 Linux 上,这还会在隔离的 PID 命名空间中运行 Bash 子进程,使其无法通过 `/proc` 读取宿主进程环境;副作用是 `ps`、`pgrep` 和 `kill` 无法看到宿主进程或向其发送信号。配置了 `allowed_non_write_users` 时,`claude-code-action` 会自动设置此变量 |399| `CLAUDE_CODE_SUBPROCESS_ENV_SCRUB` | 设为 `1` 可从 Claude Code 启动的子进程(如 Bash 命令、hook 和 stdio MCP 服务器)的环境中剥离凭据。清理会根据变量名或变量值识别凭据,并保留 GitHub 令牌和代理设置。请参阅[子进程环境清理会移除哪些内容](#what-the-subprocess-environment-scrub-removes)。配置了 `allowed_non_write_users` 时,`claude-code-action` 会自动设置此变量 |

398| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL` | 在非交互模式(`-p` 标志)下设置为 `1`,可在第一次查询之前等待插件安装完成。否则,插件会在后台安装,可能在第一轮中不可用。可与 `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` 结合使用以限制等待时间 |400| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL` | 在非交互模式(`-p` 标志)中设为 `1`,可在第一次查询之前等待插件安装完成。否则,插件会在后台安装,在第一轮中可能不可用。可与 `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` 结合使用以限制等待时间 |

399| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` | 同步插件安装的超时时间(毫秒)。超出后,Claude Code 会在不加载插件的情况下继续运行并记录错误。无默认值:未设置此变量时,同步安装会一直等待直到完成 |401| `CLAUDE_CODE_SYNC_PLUGIN_INSTALL_TIMEOUT_MS` | 同步插件安装的超时时间(毫秒)。超时后,Claude Code 会在没有插件的情况下继续并记录错误。无默认值:不设置此变量时,同步安装会一直等待到完成 |

400| `CLAUDE_CODE_SYNC_SKILLS` | 在使用 `-p` 标志的非交互模式下设置为 `1`,可让 Claude Code 在该次运行中下载为您的 claude.ai 账户启用的 skill,并在运行第一次查询之前等待获取它们的列表,最长等待 `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS`。下载本身会在后台完成,Claude 在调用某个 skill 时会等待该 skill 下载完成。需要 claude.ai 身份验证。使用 claude.ai 账户登录的终端会话无需此变量即可将这些 skill [下载](/docs/zh-CN/skills#where-synced-skills-load)到 `~/.claude/skills/synced/`,并大约每 10 分钟重新同步一次,因此仅当某次 `-p` 运行需要在第一次查询时就使用您当前的 skill 时才设置此变量。在 v2.1.273 之前,终端会话仅在设置了此变量的 `-p` 运行中才会下载它们。`synced` 文件夹名称[为此下载所保留](/docs/zh-CN/skills#where-skills-live)。在 v2.1.227 之前,skill 会直接下载到 `~/.claude/skills/`。Claude Code 会对[下载的 skill 应用额外规则](/docs/zh-CN/skills#how-synced-skills-behave),例如不在您的机器上运行它们的 `!` 命令 |402| `CLAUDE_CODE_SYNC_SKILLS` | 在使用 `-p` 标志的非交互模式中设为 `1`,可让 Claude Code 在该次运行中下载为您的 claude.ai 账户启用的 skill,并在运行第一次查询之前等待这些 skill 的列表,最长等待 `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS`。下载本身在后台完成,Claude 在调用某个 skill 时会等待该 skill 下载完成。需要 claude.ai 身份验证。使用 claude.ai 账户登录的终端会话无需此变量即可将这些 skill [下载](/docs/zh-CN/skills#where-synced-skills-load)到 `~/.claude/skills/synced/` 中,并大约每 10 分钟重新同步一次,因此仅当 `-p` 运行需要在第一次查询时使用您当前的 skill 时才需设置它。在 v2.1.273 之前,终端会话仅在设置了此变量的 `-p` 运行中才会下载它们。`synced` 文件夹名称[保留用于此下载](/docs/zh-CN/skills#where-skills-live)。在 v2.1.227 之前,skill 会直接下载到 `~/.claude/skills/` 中。Claude Code 会对[下载的 skill 应用额外规则](/docs/zh-CN/skills#how-synced-skills-behave),例如不在您的计算机上运行其 `!` 命令 |

401| `CLAUDE_CODE_SYNC_SKILLS_INSTALL_TIMEOUT_MS` | 当基于 [Agent SDK](/docs/zh-CN/agent-sdk/typescript#query-object) 构建的应用重新加载 skill 时,会话中途运行的 skill 重新同步的超时时间(毫秒)(默认:30000)。超出后,重新加载会使用已到达的 skill 继续,其余下载在后台完成 |403| `CLAUDE_CODE_SYNC_SKILLS_INSTALL_TIMEOUT_MS` | 当基于 [Agent SDK](/docs/zh-CN/agent-sdk/typescript#query-object) 构建的应用重新加载 skill 时,在会话中途运行的 skill 重新同步的超时时间(毫秒)(默认:30000)。超时后,重新加载会使用已到达的 skill 继续,其余下载在后台完成 |

402| `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS` | 设置了 `CLAUDE_CODE_SYNC_SKILLS` 时,第一次查询等待初始 skill 列表的超时时间(毫秒)(默认:5000)。超出后,第一次查询会使用已到达的 skill 运行。无论哪种情况,下载都会在后台完成,Claude 在调用某个 skill 时会等待该 skill 下载完成 |404| `CLAUDE_CODE_SYNC_SKILLS_WAIT_TIMEOUT_MS` | 设置了 `CLAUDE_CODE_SYNC_SKILLS` 时,第一次查询等待初始 skill 列表的超时时间(毫秒)(默认:5000)。超时后,第一次查询会使用已到达的 skill 运行。无论哪种情况,下载都会在后台完成,Claude 在调用某个 skill 时会等待该 skill 下载完成 |

403| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | 设置为 `false` 可禁用 diff 输出中的语法高亮。当颜色干扰您的终端设置时很有用。要同时禁用代码块和文件预览中的高亮,请使用 [`syntaxHighlightingDisabled`](/docs/zh-CN/settings-reference#syntaxhighlightingdisabled) 设置 |405| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | 设为 `false` 可在 diff 输出中禁用语法高亮。当颜色干扰您的终端设置时很有用。要同时在代码块和文件预览中禁用高亮,请使用 [`syntaxHighlightingDisabled`](/docs/zh-CN/settings-reference#syntaxhighlightingdisabled) 设置 |

404| `CLAUDE_CODE_TASK_LIST_ID` | 在会话之间共享任务列表。在[具有 Task 工具的会话](/docs/zh-CN/tools-reference#task-tool-availability)中,在多个 Claude Code 实例中设置相同的 ID,即可协同使用共享的任务列表。请参阅[任务列表](/docs/zh-CN/interactive-mode#task-list) |406| `CLAUDE_CODE_TASK_LIST_ID` | 跨会话共享任务列表。在[具有 Task 工具的会话](/docs/zh-CN/tools-reference#task-tool-availability)中,在多个 Claude Code 实例中设置相同的 ID,即可在共享任务列表上协作。请参阅[任务列表](/docs/zh-CN/interactive-mode#task-list) |

405| `CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS` | 覆盖非交互式会话在退出时等待其 [agent team](/docs/zh-CN/agent-teams) 完成拆除的时长(毫秒)。接受 1000 到 60000;超出范围的值会被忽略,并使用默认值 10000。需要 Claude Code v2.1.206 或更高版本 |407| `CLAUDE_CODE_TEAM_TEARDOWN_PARK_TIMEOUT_MS` | 以毫秒为单位覆盖非交互式会话在退出时等待其 [agent team](/docs/zh-CN/agent-teams) 完成拆除的时长。接受 1000 到 60000;超出范围的值会被忽略,并使用默认值 10000。需要 Claude Code v2.1.206 或更高版本 |

406| `CLAUDE_CODE_TMPDIR` | 覆盖用于内部临时文件的临时目录。Claude Code 在 Unix 上会将 `/claude-{uid}/` 追加到此路径,在 Windows 上追加 `/claude/`。默认:macOS 上为 `/tmp`,Linux 和 Windows 上为 `os.tmpdir()`。在 macOS 和 Linux 上,当您的覆盖值是较长路径时,[沙箱隔离](/docs/zh-CN/sandboxing)的 Bash 子进程会在系统默认目录下获得一个较短的备用 `$TMPDIR`,因为某些工具在临时路径过长时会失败。未经沙箱隔离的 Bash 命令会在您的 shell 设置了 `$TMPDIR` 时继承它。在原生 Windows 上,当您的 shell 未设置 `$TMPDIR` 时,引用 `$TMPDIR` 的 Bash 命令会收到您的覆盖值,如果您未设置覆盖值则收到 `%TEMP%`。Claude Code 自身的临时文件始终使用您的覆盖值。请在 shell、用户设置或托管设置中设置。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略 |408| `CLAUDE_CODE_TMPDIR` | 覆盖用于内部临时文件的临时目录。Claude Code 会在 Unix 上向此路径追加 `/claude-{uid}/`,在 Windows 上追加 `/claude/`。默认:macOS 上为 `/tmp`,Linux 和 Windows 上为 `os.tmpdir()`。在 macOS 和 Linux 上,当您的覆盖值是较长路径时,[沙箱隔离](/docs/zh-CN/sandboxing)的 Bash 子进程会收到系统默认目录下一个较短的备用 `$TMPDIR`,因为某些工具在临时路径过长时会失败。未进行沙箱隔离的 Bash 命令会在您的 shell 设置了 `$TMPDIR` 时继承它。在原生 Windows 上,当您的 shell 未设置 `$TMPDIR` 时,引用 `$TMPDIR` 的 Bash 命令会收到您的覆盖值,若您未设置覆盖值则收到 `%TEMP%`。Claude Code 自身的临时文件始终使用您的覆盖值。请在 shell、用户设置或托管设置中设置。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略 |

407| `CLAUDE_CODE_TMUX_TRUECOLOR` | 设置为任意非空值(例如 `1`)可允许在 tmux 中输出 24 位真彩色。**将其设置为 `0` 或 `false` 仍会允许真彩色**,这与大多数开/关变量不同;取消设置该变量可恢复 256 色限制。默认情况下,设置了 `$TMUX` 时 Claude Code 会限制为 256 色,因为除非经过配置,否则 tmux 不会透传真彩色转义序列。请在将 `set -ga terminal-overrides ',*:Tc'` 添加到您的 `~/.tmux.conf` 之后设置此变量。有关其他 tmux 设置,请参阅[终端配置](/docs/zh-CN/terminal-config) |409| `CLAUDE_CODE_TMUX_TRUECOLOR` | 设为任意非空值(如 `1`)可允许在 tmux 中输出 24 位真彩色。**设为 `0` 或 `false` 仍会允许真彩色**,这与大多数开/关变量不同;取消设置该变量可恢复 256 色限制。默认情况下,设置了 `$TMUX` 时 Claude Code 会限制为 256 色,因为除非进行了相应配置,否则 tmux 不会透传真彩色转义序列。请在将 `set -ga terminal-overrides ',*:Tc'` 添加到 `~/.tmux.conf` 后设置此变量。有关其他 tmux 设置,请参阅[终端配置](/docs/zh-CN/terminal-config) |

408| `CLAUDE_CODE_TOOL_MEMORY_CGROUP_EXCLUDE` | 在 Linux 和 WSL 上,设置为以逗号分隔的进程类型列表,Claude Code 会将这些类型的进程[排除在工具内存上限之外](/docs/zh-CN/tools-reference#memory-limit-on-linux-and-wsl),例如 `mcp` 或 `lsp`。设置为 `none` 可对所有类型施加上限,设置为 `all-new` 则仅对 Bash、PowerShell 和 Monitor 工具命令施加上限。无论您列出什么,Claude Code 都会将 Bash、PowerShell 和 Monitor 工具命令保持在上限约束之下。需要 Claude Code v2.1.246 或更高版本 |410| `CLAUDE_CODE_TOOL_MEMORY_CGROUP_EXCLUDE` | 在 Linux 和 WSL 上,设为以逗号分隔的进程类型列表,Claude Code 会将这些类型[排除在工具内存上限之外](/docs/zh-CN/tools-reference#memory-limit-on-linux-and-wsl),例如 `mcp` 或 `lsp`。设为 `none` 可限制所有类型,设为 `all-new` 则仅限制 Bash、PowerShell 和 Monitor 工具命令。无论您列出什么,Claude Code 都会让 Bash、PowerShell 和 Monitor 工具命令受上限约束。需要 Claude Code v2.1.246 或更高版本 |

409| `CLAUDE_CODE_TOOL_MEMORY_LIMIT` | 在 Linux 和 WSL 上,设置为诸如 `4G` 的大小,以[限制 Bash 和 PowerShell 工具命令可使用的内存](/docs/zh-CN/tools-reference#memory-limit-on-linux-and-wsl),在 v2.1.246 或更高版本中还包括 Monitor 工具命令。请以纯数字写入大小,单独使用表示字节数,或加上 `K`、`M`、`G` 或 `T` 后缀。设置为 `0` 或 `off` 可关闭上限。一旦 Claude Code 启动的第一个进程已开启或关闭上限,更改后的值将在您下次启动 `claude` 时生效。需要 Claude Code v2.1.233 或更高版本 |411| `CLAUDE_CODE_TOOL_MEMORY_LIMIT` | 在 Linux 和 WSL 上,设为 `4G` 之类的大小,以[限制 Bash 和 PowerShell 工具命令可使用的内存](/docs/zh-CN/tools-reference#memory-limit-on-linux-and-wsl),在 v2.1.246 或更高版本中也包括 Monitor 工具命令。请以纯数字书写大小,单独书写表示字节数,或带上 `K`、`M`、`G` 或 `T` 后缀。设为 `0` 或 `off` 可关闭上限。一旦 Claude Code 启动的第一个进程开启或关闭了上限,更改后的值将在您下次启动 `claude` 时生效。需要 Claude Code v2.1.233 或更高版本 |

410| `CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS` | Claude Code 取消其转发给远程客户端(例如 [Remote Control](/docs/zh-CN/remote-control) 或 SDK 宿主)的对话框,或[被搁置的跨会话消息](/docs/zh-CN/cross-session-messaging#control-inbound-messages)的批准对话框之前的截止时间(毫秒);权限提示和 `AskUserQuestion` 问题使用各自的流程,不受其约束。在 Claude Code v2.1.236 或更高版本中,它还会限制可能处于无人值守运行状态的会话中,会话中途出现的 [Fable 使用额度同意提示](/docs/zh-CN/model-config#fable-and-usage-credits)。[控制入站消息](/docs/zh-CN/cross-session-messaging#control-inbound-messages)和[非交互式会话](/docs/zh-CN/cross-session-messaging#non-interactive-sessions)涵盖了完整的搁置消息过期规则,包括截止时间不适用的情况。覆盖 [`dialogExpiry`](/docs/zh-CN/settings-reference#dialogexpiry) 设置。`0` 或负值会禁用截止时间 |412| `CLAUDE_CODE_TRANSCRIPT_LOCAL_GC` | 设为 `1` 可限制长时间运行的 `-p` 或 Agent SDK 会话的[会话记录文件](/docs/zh-CN/sessions#where-transcripts-are-stored)增长的大小。每次压缩后,一旦文件大于 5 MB,Claude Code 就会移除该次压缩之前的历史。无论文件是否被裁剪,恢复会话都会还原相同的对话。请在启动 Claude Code 的环境中设置它,因为设置中的 `env` 块无法开启它。需要 Claude Code v2.1.287 或更高版本 |

413| `CLAUDE_CODE_USER_DIALOG_TIMEOUT_MS` | Claude Code 取消其转发到远程客户端(如 [Remote Control](/docs/zh-CN/remote-control) 或 SDK 宿主)的对话框,或[被搁置的跨会话消息](/docs/zh-CN/cross-session-messaging#control-inbound-messages)的批准对话框之前的截止时间(毫秒);权限提示和 `AskUserQuestion` 问题使用各自的流程,不受其控制。在 Claude Code v2.1.236 或更高版本中,它还会限制在可能无人值守运行的会话中、会话中途出现的 [Fable 使用额度同意提示](/docs/zh-CN/model-config#fable-and-usage-credits)。[控制入站消息](/docs/zh-CN/cross-session-messaging#control-inbound-messages)和[非交互式会话](/docs/zh-CN/cross-session-messaging#non-interactive-sessions)介绍了完整的搁置消息过期规则,包括截止时间不适用的情况。覆盖 [`dialogExpiry`](/docs/zh-CN/settings-reference#dialogexpiry) 设置。`0` 或负值会禁用截止时间 |

411| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | 使用 [Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) |414| `CLAUDE_CODE_USE_ANTHROPIC_AWS` | 使用 [Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) |

412| `CLAUDE_CODE_USE_BEDROCK` | 使用 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock) |415| `CLAUDE_CODE_USE_BEDROCK` | 使用 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock) |

413| `CLAUDE_CODE_USE_FOUNDRY` | 使用 [Microsoft Foundry](/docs/zh-CN/microsoft-foundry) |416| `CLAUDE_CODE_USE_FOUNDRY` | 使用 [Microsoft Foundry](/docs/zh-CN/microsoft-foundry) |

414| `CLAUDE_CODE_USE_MANTLE` | 使用 Amazon Bedrock [Mantle 端点](/docs/zh-CN/amazon-bedrock#use-the-mantle-endpoint) |417| `CLAUDE_CODE_USE_MANTLE` | 使用 Amazon Bedrock [Mantle 端点](/docs/zh-CN/amazon-bedrock#use-the-mantle-endpoint) |

415| `CLAUDE_CODE_USE_NATIVE_FILE_SEARCH` | 设置为 `1` 可使用 Node.js 文件 API 而非 ripgrep 来发现自定义命令、子代理和输出样式。如果捆绑的 ripgrep 二进制文件在您的环境中不可用或被阻止,请设置此变量。不影响 Grep 或文件搜索工具 |418| `CLAUDE_CODE_USE_NATIVE_FILE_SEARCH` | 设为 `1` 可使用 Node.js 文件 API 而非 ripgrep 来发现自定义命令、子代理和输出样式。如果捆绑的 ripgrep 二进制文件在您的环境中不可用或被阻止,请设置此变量。不影响 Grep 或文件搜索工具 |

416| `CLAUDE_CODE_USE_POWERSHELL_TOOL` | 控制 PowerShell 工具。在未安装 Git Bash 的 Windows 上,该工具会自动启用;设置为 `0` 可禁用它。在安装了 Git Bash 的 Windows 上,该工具对 claude.ai 和 Console 账户默认开启;设置为 `1` 可在 Amazon Bedrock、Google Cloud's Agent Platform 和 Microsoft Foundry 会话中启用它,或设置为 `0` 将其关闭。在 Linux、macOS 和 WSL 上,设置为 `1` 可启用它,这需要 `pwsh` 位于您的 `PATH` 中。在 Windows 上启用后,Claude 可以原生运行 PowerShell 命令,而不必通过 Git Bash 路由。请参阅 [PowerShell 工具](/docs/zh-CN/tools-reference#powershell-tool) |419| `CLAUDE_CODE_USE_POWERSHELL_TOOL` | 控制 PowerShell 工具。在未安装 Git Bash 的 Windows 上,该工具会自动启用;设为 `0` 可禁用它。在已安装 Git Bash 的 Windows 上,该工具对 claude.ai 和 Console 账户默认开启;设为 `1` 可在 Amazon Bedrock、Google Cloud's Agent Platform 和 Microsoft Foundry 会话中启用它,设为 `0` 则可关闭它。在 Linux、macOS 和 WSL 上,设为 `1` 可启用它,这需要您的 `PATH` 中有 `pwsh`。在 Windows 上启用后,Claude 可以原生运行 PowerShell 命令,而无需经由 Git Bash。请参阅 [PowerShell 工具](/docs/zh-CN/tools-reference#powershell-tool) |

417| `CLAUDE_CODE_USE_VERTEX` | 使用 [Google Cloud's Agent Platform](/docs/zh-CN/google-vertex-ai) |420| `CLAUDE_CODE_USE_VERTEX` | 使用 [Google Cloud's Agent Platform](/docs/zh-CN/google-vertex-ai) |

418| `CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS` | 设置为 [WebFetch](/docs/zh-CN/tools-reference#webfetch-tool-behavior) 缓存每个已获取 URL 的响应的毫秒数。默认值为 `900000`,即 15 分钟。仅接受纯数字;`0`、小数或任何其他写法都会保留默认值。Claude Code 每次启动只读取一次该值,因此设置 `env` 块中的更改会在您下次启动 `claude` 时生效。需要 Claude Code v2.1.233 或更高版本 |421| `CLAUDE_CODE_WEBFETCH_CACHE_TTL_MS` | 设置 [WebFetch](/docs/zh-CN/tools-reference#webfetch-tool-behavior) 将每个已获取 URL 的响应保留在缓存中的毫秒数。默认值为 `900000`,即 15 分钟。仅接受纯数字;`0`、小数或任何其他写法都会保留默认值。Claude Code 每次启动时读取一次该值,因此在设置的 `env` 块中所做的更改会在您下次启动 `claude` 时生效。需要 Claude Code v2.1.233 或更高版本 |

419| `CLAUDE_CODE_WEBFETCH_DEADLINE_MS` | [WebFetch](/docs/zh-CN/tools-reference#webfetch-tool-behavior) 等待页面下载(包括其跟随的任何重定向)的时长上限(毫秒)。到那时仍未完成的下载会因截止时间错误而失败。默认值为 `300000`,即五分钟。设置为 `0` 可移除该限制。仅接受纯数字;小数或任何其他写法都会保留默认值。需要 Claude Code v2.1.268 或更高版本 |422| `CLAUDE_CODE_WEBFETCH_DEADLINE_MS` | [WebFetch](/docs/zh-CN/tools-reference#webfetch-tool-behavior) 等待页面下载完成(包括其跟随的所有重定向)的时长上限,以毫秒为单位。到期仍未完成的下载会以截止时间错误失败。默认值为 `300000`,即五分钟。设置为 `0` 可取消该限制。仅接受纯数字;小数或任何其他写法都会保留默认值。需要 Claude Code v2.1.268 或更高版本 |

420| `CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS` | 单次[工作流](/docs/zh-CN/workflows)运行同时执行的 Agent 数量,范围为 `1` 到 `256`。默认情况下,一次运行最多同时执行 16 个 Agent;当 Claude Code 可用的 CPU 较少时,数量会相应减少;排队中的 `agent()` 调用会等待空闲槽位。每个正在运行的 Agent 的会话记录都保存在 Claude Code 的内存中,因此数值越大,内存占用越高。仅接受纯数字;超出范围的值和其他写法会保留默认值。需要 Claude Code v2.1.269 或更高版本 |423| `CLAUDE_CODE_WORKER_CHECKIN_SCHEDULE` | 当 `CLAUDE_AUTO_BACKGROUND_TASKS` 设置为 `1` 时,Claude Code 每次提醒 Claude 检查仍在运行的[后台子代理](/docs/zh-CN/sub-agents#run-subagents-in-foreground-or-background)之前等待的时长。接受一个或多个以逗号分隔的等待时间,以整秒为单位,范围为 `1` 到 `86400`,例如 `600` 或 `600,1800,3600`。每个值是距下一次提醒的等待时间,最后一个值会重复使用。仅接受纯数字;任何其他值或写法都视为未设置。未设置时不会发出提醒。需要 Claude Code v2.1.283 或更高版本 |

421| `CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS` | [工作流](/docs/zh-CN/workflows) Agent 在发送自己的首个请求之前,等待具有相同前缀的同级 Agent 开始返回首个响应的最长时间(毫秒)。当一次扇出启动多个共享[提示缓存前缀](/docs/zh-CN/workflows#prompt-caching-in-a-fan-out)的 Agent 时,Claude Code 会让除第一个以外的所有 Agent 最多等待这么长时间,以便其余 Agent 读取已缓存的前缀,而不是各自在未缓存的情况下处理它。默认值为 `5000`。设置为 `0` 可禁用等待。设置了 `DISABLE_PROMPT_CACHING` 时,Agent 从不等待。需要 Claude Code v2.1.229 或更高版本 |424| `CLAUDE_CODE_WORKFLOW_MAX_CONCURRENT_AGENTS` | 单次[工作流](/docs/zh-CN/workflows)运行同时执行的 Agent 数量,范围为 `1` 到 `256`。默认情况下,一次运行最多同时执行 16 个 Agent,当 Claude Code 可用的 CPU 较少时会更少;排队的 `agent()` 调用会等待空闲槽位。每个正在运行的 Agent 的会话记录都保留在 Claude Code 的内存中,因此值越大,内存占用越高。仅接受纯数字;超出范围的值和其他写法都会保留默认值。需要 Claude Code v2.1.269 或更高版本 |

422| `CLAUDE_CONFIG_DIR` | 覆盖配置目录(默认:`~/.claude`)。所有设置、会话历史和插件都存储在此路径下。关于凭据,请参阅 [Claude Code 存储凭据的位置](/docs/zh-CN/authentication#credential-management)。适用于并行运行多个账户:例如 `alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'`。请在 shell、用户设置或托管设置中设置。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略 |425| `CLAUDE_CODE_WORKFLOW_PREFIX_STAGGER_MS` | [工作流](/docs/zh-CN/workflows) Agent 在发送自己的首个请求之前,等待具有相同前缀的同级 Agent 开始首个响应的时长上限,以毫秒为单位。当扇出启动多个共享同一[提示缓存前缀](/docs/zh-CN/workflows#prompt-caching-in-a-fan-out)的 Agent 时,Claude Code 会让除第一个之外的所有 Agent 最多等待这么久,使其余 Agent 读取已缓存的前缀,而不是各自在无缓存的情况下处理它。默认值为 `5000`。设置为 `0` 可禁用等待。设置了 `DISABLE_PROMPT_CACHING` 时,Agent 从不等待。需要 Claude Code v2.1.229 或更高版本 |

423| `CLAUDE_DISABLE_ADOPT` | 设置为 `1` 后,当您按 `←` 或使用 [`/background`](/docs/zh-CN/agent-view#from-inside-a-session) 将会话转入后台时,会停止正在进行的后台工作,而不是将其延续。Claude Code 会在转入后台之前请您确认,然后停止原本会延续的任务。需要 Claude Code v2.1.195 或更高版本 |426| `CLAUDE_CONFIG_DIR` | 覆盖配置目录(默认:`~/.claude`)。所有设置、会话历史和插件都存储在此路径下。有关凭据,请参阅 [Claude Code 存储凭据的位置](/docs/zh-CN/authentication#credential-management)。适用于并行运行多个账户:例如 `alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'`。请在 shell、用户设置或托管设置中设置它。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略 |

427| `CLAUDE_DISABLE_ADOPT` | 设置为 `1` 后,当您按 `←` 或使用 [`/background`](/docs/zh-CN/agent-view#from-inside-a-session) 将会话转入后台时,会停止正在进行的后台工作,而不是将其延续。Claude Code 会在转入后台前请您确认,然后停止原本会延续的任务。需要 Claude Code v2.1.195 或更高版本 |

424| `CLAUDE_EFFORT` | 在 Bash 工具子进程和 hook 命令中自动设置为子进程启动时生效的 [effort 级别](/docs/zh-CN/model-config#adjust-effort-level):`low`、`medium`、`high`、`xhigh` 或 `max`。与传递给 [hook](/docs/zh-CN/hooks) 的 `effort.level` 字段一致。仅在当前模型支持 effort 参数时设置 |428| `CLAUDE_EFFORT` | 在 Bash 工具子进程和 hook 命令中自动设置为子进程启动时生效的 [effort 级别](/docs/zh-CN/model-config#adjust-effort-level):`low`、`medium`、`high`、`xhigh` 或 `max`。与传递给 [hook](/docs/zh-CN/hooks) 的 `effort.level` 字段一致。仅在当前模型支持 effort 参数时设置 |

425| `CLAUDE_ENABLE_BYTE_WATCHDOG` | 设置为 `1` 可强制启用字节级流式空闲看门狗,设置为 `0` 可强制禁用。`0` 还会关闭运行该截止时间的连接上的[首字节截止时间](/docs/zh-CN/network-config#streaming-idle-watchdogs)。未设置时,该看门狗默认在直连 Anthropic API 和 [Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 的连接上启用,并在通过 `ANTHROPIC_BASE_URL` 或 `ANTHROPIC_AWS_BASE_URL` 访问的[网关](/docs/zh-CN/gateways)连接的流式响应上启用;在 v2.1.222 之前,它不会在这些网关连接上运行,因此即使 keep-alive ping 仍在到达,事件级看门狗也可能在那里报告停滞。关于超时时间以及各计时器之间的相互作用,请参阅[流式空闲看门狗](/docs/zh-CN/network-config#streaming-idle-watchdogs) |429| `CLAUDE_ENABLE_BYTE_WATCHDOG` | 设置为 `1` 可强制启用字节级流式空闲看门狗,设置为 `0` 可强制禁用它。`0` 还会在运行[首字节截止时间](/docs/zh-CN/network-config#streaming-idle-watchdogs)的连接上关闭该截止时间。未设置时,该看门狗默认对直连 Anthropic API 和 [Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 的连接启用,并对通过 `ANTHROPIC_BASE_URL` 或 `ANTHROPIC_AWS_BASE_URL` 访问的[网关](/docs/zh-CN/gateways)连接上的流式响应启用;在 v2.1.222 之前,它不会在这些网关连接上运行,因此即使保活 ping 仍在到达,事件级看门狗也可能在那里报告停滞。有关超时以及各计时器之间的相互作用,请参阅[流式空闲看门狗](/docs/zh-CN/network-config#streaming-idle-watchdogs) |

426| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | 设置为 `1` 可在 Amazon Bedrock `vnd.amazon.eventstream` 响应上启用字节级流式空闲看门狗,这同时会在 Bedrock 流式请求上启用[首字节截止时间](/docs/zh-CN/network-config#streaming-idle-watchdogs)。默认关闭。使用 `CLAUDE_STREAM_IDLE_TIMEOUT_MS` 配置超时时间 |430| `CLAUDE_ENABLE_BYTE_WATCHDOG_BEDROCK` | 设置为 `1` 可在 Amazon Bedrock `vnd.amazon.eventstream` 响应上启用字节级流式空闲看门狗,这也会在 Bedrock 流式请求上启用[首字节截止时间](/docs/zh-CN/network-config#streaming-idle-watchdogs)。默认关闭。使用 `CLAUDE_STREAM_IDLE_TIMEOUT_MS` 配置超时时间 |

427| `CLAUDE_ENABLE_STREAM_WATCHDOG` | 设置为 `0` 可强制禁用事件级流式空闲看门狗,设置为 `1` 可强制启用。未设置时,该看门狗默认对所有提供商开启。在 v2.1.196 之前,未设置时的默认值在直连 Anthropic API 上由服务器控制,在其他提供商上为关闭。使用 `CLAUDE_STREAM_IDLE_TIMEOUT_MS` 配置超时时间;关于与其并行运行的其他停滞计时器,请参阅[流式空闲看门狗](/docs/zh-CN/network-config#streaming-idle-watchdogs) |431| `CLAUDE_ENABLE_STREAM_WATCHDOG` | 设置为 `0` 可强制禁用事件级流式空闲看门狗,设置为 `1` 可强制启用它。未设置时,该看门狗对所有提供商默认开启。在 v2.1.196 之前,未设置时的默认值在直连 Anthropic API 上由服务器控制,在其他提供商上为关闭。使用 `CLAUDE_STREAM_IDLE_TIMEOUT_MS` 配置超时时间;有关与其同时运行的其他停滞计时器,请参阅[流式空闲看门狗](/docs/zh-CN/network-config#streaming-idle-watchdogs) |

428| `CLAUDE_ENV_FILE` | 一个 shell 脚本的路径,Claude Code 会在同一 shell 进程中于每条 Bash 命令之前运行其内容,因此文件中的导出对该命令可见。可用于在多条命令之间保持 virtualenv 或 conda 的激活状态。也会由 [SessionStart](/docs/zh-CN/hooks#persist-environment-variables)、[Setup](/docs/zh-CN/hooks#setup)、[CwdChanged](/docs/zh-CN/hooks#cwdchanged) 和 [FileChanged](/docs/zh-CN/hooks#filechanged) hook 动态填充 |432| `CLAUDE_ENV_FILE` | shell 脚本的路径,Claude Code 会在同一 shell 进程中于每条 Bash 命令之前运行其内容,因此文件中的 export 对该命令可见。用于在多条命令之间保持 virtualenv 或 conda 的激活状态。也会由 [SessionStart](/docs/zh-CN/hooks#persist-environment-variables)、[Setup](/docs/zh-CN/hooks#setup)、[CwdChanged](/docs/zh-CN/hooks#cwdchanged) 和 [FileChanged](/docs/zh-CN/hooks#filechanged) hook 动态填充 |

429| `CLAUDE_JOB_DIR` | 由 Claude Code 在每个[后台会话](/docs/zh-CN/agent-view)中设置为该会话的 `~/.claude/jobs/<id>` 目录。会话运行的 shell 命令会继承该变量。请将临时文件写入 [`$CLAUDE_JOB_DIR/tmp`](/docs/zh-CN/agent-view#where-state-is-stored)。Claude 在该位置的 `Write` 和 `Edit` 调用不会请求权限,并且该目录会在会话被删除时移除 |433| `CLAUDE_JOB_DIR` | 由 Claude Code 在每个[后台会话](/docs/zh-CN/agent-view)中设置为该会话的 `~/.claude/jobs/<id>` 目录。会话运行的 shell 命令会继承它。请将临时文件写入 [`$CLAUDE_JOB_DIR/tmp`](/docs/zh-CN/agent-view#where-state-is-stored)。Claude 在该位置的 `Write` 和 `Edit` 调用不会请求权限,并且该目录会在会话被删除时移除 |

430| `CLAUDE_PID` | Claude Code 会在其生成的子进程中将此变量设置为自己的进程 ID,这些子进程包括 Bash 和 PowerShell 工具命令以及 hook 命令。在 Linux 上,Bash 工具的 shell 集成使用它来拒绝会匹配 Claude Code 进程自身的 `pkill` 模式;请参阅[错误参考](/docs/zh-CN/errors#pkill-pattern-matches-the-claude-code-process)。您可以在自己的脚本中读取它,以有意地识别父 Claude Code 进程或向其发送信号。需要 Claude Code v2.1.214 或更高版本 |434| `CLAUDE_PID` | Claude Code 会在其派生的子进程中将此变量设置为自身的进程 ID:包括 Bash 和 PowerShell 工具命令以及 hook 命令。在 Linux 上,Bash 工具的 shell 集成会使用它来拒绝会匹配 Claude Code 进程本身的 `pkill` 模式;请参阅[错误参考](/docs/zh-CN/errors#pkill-pattern-matches-the-claude-code-process)。您可以在自己的脚本中读取它,以便有意地识别父 Claude Code 进程或向其发送信号。需要 Claude Code v2.1.214 或更高版本 |

431| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | 未显式提供名称时,自动生成的 [Remote Control](/docs/zh-CN/remote-control) 会话名称的前缀。默认为您机器的主机名,生成类似 `myhost-graceful-unicorn` 的名称。`--remote-control-session-name-prefix` CLI 标志可为单次调用设置相同的值 |435| `CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX` | 未提供显式名称时,自动生成的 [Remote Control](/docs/zh-CN/remote-control) 会话名称的前缀。默认为您机器的主机名,生成类似 `myhost-graceful-unicorn` 的名称。`--remote-control-session-name-prefix` CLI 标志可为单次调用设置相同的值 |

432| `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` | 在运行[首字节截止时间](/docs/zh-CN/network-config#streaming-idle-watchdogs)的连接上,流式请求首个响应字节的截止时间(毫秒)。关于 Claude Code 如何限制该值、为大型请求体额外增加的时间,以及未设置此变量时如何选择截止时间,请参阅 [No response from API](/docs/zh-CN/errors#no-response-from-api)。需要 Claude Code v2.1.242 或更高版本 |436| `CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MS` | 在运行[首字节截止时间](/docs/zh-CN/network-config#streaming-idle-watchdogs)的连接上,流式请求首个响应字节的截止时间,以毫秒为单位。有关 Claude Code 如何对其进行限幅、为大型请求体额外增加的时间,以及未设置时如何选择截止时间,请参阅[无 API 响应](/docs/zh-CN/errors#no-response-from-api)。需要 Claude Code v2.1.242 或更高版本 |

433| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | 事件级和字节级流式空闲看门狗关闭停滞连接之前的超时时间(毫秒)。显式设置此变量时,最小值为 `300000`(5 分钟);较低的值会被静默提升,以容纳扩展思考暂停和代理缓冲,并且字节级看门狗将该值上限设为 30 分钟。对于字节级看门狗,`CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` 优先于此变量。关于各看门狗在未设置时的默认值,请参阅[流式空闲看门狗](/docs/zh-CN/network-config#streaming-idle-watchdogs) |437| `CLAUDE_STREAM_IDLE_TIMEOUT_MS` | 事件级和字节级流式空闲看门狗关闭停滞连接之前的超时时间,以毫秒为单位。显式设置此变量时,最小值为 `300000`(5 分钟);较低的值会被静默提升,以容纳扩展思考的停顿和代理缓冲,并且字节级看门狗会将该值上限设为 30 分钟。对于字节级看门狗,`CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS` 优先于此变量。有关各看门狗未设置时的默认值,请参阅[流式空闲看门狗](/docs/zh-CN/network-config#streaming-idle-watchdogs) |

434| `CLAUDE_SUBAGENT_BG_SHELL_MAX_MS` | 已在 v2.1.260 中移除,现在不起作用。之前用于限制[子代理](/docs/zh-CN/sub-agents)启动的[后台 shell 命令](/docs/zh-CN/interactive-mode#background-bash-commands)可运行的时长(毫秒),默认值为 60 分钟。请参阅[后台命令生命周期规则](/docs/zh-CN/tools-reference#background-commands) |438| `CLAUDE_SUBAGENT_BG_SHELL_MAX_MS` | 已在 v2.1.260 中移除,现在不起任何作用。以前用于限制由[子代理](/docs/zh-CN/sub-agents)启动的[后台 shell 命令](/docs/zh-CN/interactive-mode#background-bash-commands)可运行的时长,以毫秒为单位,默认值为 60 分钟。请参阅[后台命令生命周期规则](/docs/zh-CN/tools-reference#background-commands) |

435| `DEBUG` | 设置为 `1` 可启用调试模式,等同于使用 [`--debug`](/docs/zh-CN/cli-reference#cli-flags) 启动。调试日志会写入 `~/.claude/debug/<session-id>.txt`,或写入 `CLAUDE_CODE_DEBUG_LOGS_DIR` 设置的路径。只有真值 `1`、`true`、`yes` 和 `on` 会启用调试模式,因此为其他工具设置的 `DEBUG=express:*` 之类的命名空间模式不会触发它 |439| `DEBUG` | 设置为 `1` 可启用调试模式,等同于使用 [`--debug`](/docs/zh-CN/cli-reference#cli-flags) 启动。调试日志写入 `~/.claude/debug/<session-id>.txt`,或写入 `CLAUDE_CODE_DEBUG_LOGS_DIR` 设置的路径。只有真值 `1`、`true`、`yes` 和 `on` 会启用调试模式,因此为其他工具设置的命名空间模式(如 `DEBUG=express:*`)不会触发它 |

436| `DISABLE_AUTOUPDATER` | 设置为 `1` 可禁用自动后台更新。手动执行 `claude update` 仍然有效。使用 `DISABLE_UPDATES` 可同时阻止两者 |440| `DISABLE_AUTOUPDATER` | 设置为 `1` 可禁用自动后台更新。手动 `claude update` 仍然有效。使用 `DISABLE_UPDATES` 可同时阻止两者 |

437| `DISABLE_AUTO_COMPACT` | 设置为 `1` 可禁用接近上下文限制时的自动压缩。手动 `/compact` 命令仍然可用。适用于您希望明确控制何时进行压缩的情况。覆盖 [`autoCompactEnabled`](/docs/zh-CN/settings-reference#autocompactenabled) 设置 |441| `DISABLE_AUTO_COMPACT` | 设置为 `1` 可禁用接近上下文限制时的自动压缩。手动 `/compact` 命令仍然可用。适用于希望明确控制何时进行压缩的情况。覆盖 [`autoCompactEnabled`](/docs/zh-CN/settings-reference#autocompactenabled) 设置 |

438| `DISABLE_COMPACT` | 设置为 `1` 可禁用所有压缩:包括自动压缩和手动 `/compact` 命令 |442| `DISABLE_COMPACT` | 设置为 `1` 可禁用所有压缩:包括自动压缩和手动 `/compact` 命令 |

439| `DISABLE_COST_WARNINGS` | 设置为 `1` 可禁用成本警告消息 |443| `DISABLE_COST_WARNINGS` | 设置为 `1` 可禁用费用警告消息 |

440| `DISABLE_DOCTOR_COMMAND` | 设置为 `1` 可隐藏 [`/doctor`](/docs/zh-CN/commands#all-commands) 设置检查 skill 及其 `/checkup` 别名。适用于不应让用户在会话中运行设置诊断的托管部署。不影响 `claude doctor` 终端命令。在 v2.1.205 之前,此变量会隐藏 `/doctor` 诊断界面命令 |444| `DISABLE_DOCTOR_COMMAND` | 设置为 `1` 可隐藏 [`/doctor`](/docs/zh-CN/commands#all-commands) 设置检查 skill 及其 `/checkup` 别名。适用于不希望用户在会话中运行设置诊断的托管部署。不影响 `claude doctor` 终端命令。在 v2.1.205 之前,此变量会隐藏 `/doctor` 诊断界面命令 |

441| `DISABLE_ERROR_REPORTING` | 设置为任意非空值(例如 `1`)可选择退出错误报告。**设置为 `0` 或 `false` 仍会选择退出**,这与大多数开关变量不同;取消设置该变量可重新开启错误报告 |445| `DISABLE_ERROR_REPORTING` | 设置为任意非空值(如 `1`)可选择退出错误报告。**与大多数开/关变量不同,将其设置为 `0` 或 `false` 仍会选择退出**;取消设置该变量即可重新开启错误报告 |

442| `DISABLE_EXTRA_USAGE_COMMAND` | 设置为 `1` 可隐藏 `/usage-credits` 命令,该命令允许用户购买超出速率限制的额外用量 |446| `DISABLE_EXTRA_USAGE_COMMAND` | 设置为 `1` 可隐藏 `/usage-credits` 命令,该命令允许用户购买超出速率限制的额外用量 |

443| `DISABLE_FEEDBACK_COMMAND` | 设置为 `1` 可禁用 `/feedback` 命令和 [Claude 起草的反馈](/docs/zh-CN/tools-reference#sendfeedback-tool-behavior)。同时禁用通过同一路径报告的 `/bug` 和 `/share`;在 v2.1.212 之前,它们是 `/feedback` 的别名,因此该命令在所有名称下都会被禁用。也接受旧名称 `DISABLE_BUG_COMMAND` |447| `DISABLE_FEEDBACK_COMMAND` | 设置为 `1` 可禁用 `/feedback` 命令和 [Claude 起草的反馈](/docs/zh-CN/tools-reference#sendfeedback-tool-behavior)。同时禁用通过同一途径报告的 `/bug` 和 `/share`;在 v2.1.212 之前,它们是 `/feedback` 的别名,因此该命令在所有名称下都会被禁用。也接受旧名称 `DISABLE_BUG_COMMAND` |

444| `DISABLE_GROWTHBOOK` | 设置为 `1` 或 `true` 可禁用 GrowthBook 功能标志获取,并对每个标志使用代码默认值。这会使 [Remote Control](/docs/zh-CN/remote-control#requirements) 以及其他[需要获取功能标志的功能](#features-that-need-feature-flag-fetching)不可用。设置为 `0` 或 `false` 会保持获取开启。除非同时设置了 `DISABLE_TELEMETRY`,否则遥测事件日志记录保持开启 |448| `DISABLE_GROWTHBOOK` | 设置为 `1` 或 `true` 可禁用 GrowthBook 功能标志获取,并对所有标志使用代码默认值。这会使 [Remote Control](/docs/zh-CN/remote-control#requirements) 以及其他[需要获取功能标志的功能](#features-that-need-feature-flag-fetching)不可用。将其设置为 `0` 或 `false` 会保持获取开启。除非同时设置了 `DISABLE_TELEMETRY`,否则遥测事件日志记录保持开启 |

445| `DISABLE_INSTALLATION_CHECKS` | 设置为 `1` 可禁用安装警告。仅在手动管理安装位置时使用,因为这可能会掩盖标准安装中的问题 |449| `DISABLE_INSTALLATION_CHECKS` | 设置为 `1` 可禁用安装警告。仅在手动管理安装位置时使用,因为这可能会掩盖标准安装中的问题 |

446| `DISABLE_INSTALL_GITHUB_APP_COMMAND` | 设置为 `1` 可隐藏 `/install-github-app` 命令。使用第三方提供商(Amazon Bedrock、Google Cloud's Agent Platform 或 Microsoft Foundry)时已默认隐藏 |450| `DISABLE_INSTALL_GITHUB_APP_COMMAND` | 设置为 `1` 可隐藏 `/install-github-app` 命令。使用第三方提供商(Amazon Bedrock、Google Cloud's Agent Platform 或 Microsoft Foundry)时已默认隐藏 |

447| `DISABLE_INTERLEAVED_THINKING` | 设置为 `1` 可阻止发送交错思考 beta 标头。适用于您的 LLM 网关或提供商不支持[交错思考](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#interleaved-thinking)的情况 |451| `DISABLE_INTERLEAVED_THINKING` | 设置为 `1` 可阻止发送 interleaved-thinking beta 标头。适用于您的 LLM 网关或提供商不支持[交错思考](https://platform.claude.com/docs/en/build-with-claude/extended-thinking#interleaved-thinking)的情况 |

448| `DISABLE_LOGIN_COMMAND` | 设置为 `1` 可隐藏 `/login` 命令。适用于通过 API 密钥或 `apiKeyHelper` 在外部处理身份验证的情况 |452| `DISABLE_LOGIN_COMMAND` | 设置为 `1` 可隐藏 `/login` 命令。适用于通过 API 密钥或 `apiKeyHelper` 在外部处理身份验证的情况 |

449| `DISABLE_LOGOUT_COMMAND` | 设置为 `1` 可隐藏 `/logout` 命令 |453| `DISABLE_LOGOUT_COMMAND` | 设置为 `1` 可隐藏 `/logout` 命令 |

450| `DISABLE_PROMPT_CACHING` | 设置为 `1` 可为所有模型禁用[提示缓存](/docs/zh-CN/prompt-caching#disable-prompt-caching)(优先于按模型的设置) |454| `DISABLE_PROMPT_CACHING` | 设置为 `1` 可为所有模型禁用[提示缓存](/docs/zh-CN/prompt-caching#disable-prompt-caching)(优先于按模型的设置) |


452| `DISABLE_PROMPT_CACHING_HAIKU` | 设置为 `1` 可为[默认 Haiku 模型](/docs/zh-CN/prompt-caching#disable-prompt-caching)禁用提示缓存,无论其在何处运行 |456| `DISABLE_PROMPT_CACHING_HAIKU` | 设置为 `1` 可为[默认 Haiku 模型](/docs/zh-CN/prompt-caching#disable-prompt-caching)禁用提示缓存,无论其在何处运行 |

453| `DISABLE_PROMPT_CACHING_OPUS` | 设置为 `1` 可为[默认 Opus 模型](/docs/zh-CN/prompt-caching#disable-prompt-caching)禁用提示缓存 |457| `DISABLE_PROMPT_CACHING_OPUS` | 设置为 `1` 可为[默认 Opus 模型](/docs/zh-CN/prompt-caching#disable-prompt-caching)禁用提示缓存 |

454| `DISABLE_PROMPT_CACHING_SONNET` | 设置为 `1` 可为[默认 Sonnet 模型](/docs/zh-CN/prompt-caching#disable-prompt-caching)禁用提示缓存 |458| `DISABLE_PROMPT_CACHING_SONNET` | 设置为 `1` 可为[默认 Sonnet 模型](/docs/zh-CN/prompt-caching#disable-prompt-caching)禁用提示缓存 |

455| `DISABLE_TELEMETRY` | 设置为任意非空值(例如 `1`)可选择退出遥测。**设置为 `0` 或 `false` 仍会选择退出**,这与大多数开关变量不同;取消设置该变量可重新开启遥测。遥测事件不包含代码、文件路径或 Bash 命令等用户数据。同时会禁用[功能标志获取](#features-that-need-feature-flag-fetching)。请参阅[为您的组织关闭遥测](/docs/zh-CN/managed-settings#turn-telemetry-off-for-your-organization) |459| `DISABLE_TELEMETRY` | 设置为任意非空值(如 `1`)可选择退出遥测。**与大多数开/关变量不同,将其设置为 `0` 或 `false` 仍会选择退出**;取消设置该变量即可重新开启遥测。遥测事件不包含代码、文件路径或 Bash 命令等用户数据。同时会禁用[功能标志获取](#features-that-need-feature-flag-fetching)。请参阅[为您的组织关闭遥测](/docs/zh-CN/managed-settings#turn-telemetry-off-for-your-organization) |

456| `DISABLE_UPDATES` | 设置为 `1` 可阻止所有更新,包括手动执行 `claude update` 和 `claude install`。比 `DISABLE_AUTOUPDATER` 更严格。适用于通过您自己的渠道分发 Claude Code 且用户不应自行更新的情况 |460| `DISABLE_UPDATES` | 设置为 `1` 可阻止所有更新,包括手动 `claude update` 和 `claude install`。比 `DISABLE_AUTOUPDATER` 更严格。适用于通过您自己的渠道分发 Claude Code 且用户不应自行更新的情况 |

457| `DISABLE_UPGRADE_COMMAND` | 设置为 `1` 可隐藏 `/upgrade` 命令 |461| `DISABLE_UPGRADE_COMMAND` | 设置为 `1` 可隐藏 `/upgrade` 命令 |

458| `DO_NOT_TRACK` | 设置为 `1` 可选择退出遥测,效果与 `DISABLE_TELEMETRY` 相同,包括对[功能标志获取](#features-that-need-feature-flag-fetching)的影响。Claude Code 将此变量作为标准布尔值读取,因此 `0` 会保持遥测开启;Claude Code 遵循它,是因为它是许多开发者 CLI 所认可的跨工具约定 |462| `DO_NOT_TRACK` | 设置为 `1` 可选择退出遥测,效果与 `DISABLE_TELEMETRY` 相同,包括对[功能标志获取](#features-that-need-feature-flag-fetching)的影响。Claude Code 将此变量作为标准布尔值读取,因此 `0` 会保持遥测开启;Claude Code 将其作为许多开发者 CLI 认可的跨工具约定予以遵循 |

459| `ENABLE_BETA_TRACING_DETAILED` | 与 `BETA_TRACING_ENDPOINT` 一起设置为 `1`,可开启[详细 beta 追踪](/docs/zh-CN/monitoring-usage#traces-beta),这会添加包含内容的 span 属性以及 `claude_code.hook` span。交互式 CLI 会话还要求您的组织已被列入该 beta 的允许名单。这两个变量在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中都会被忽略 |463| `ENABLE_BETA_TRACING_DETAILED` | 与 `BETA_TRACING_ENDPOINT` 一起设置为 `1`,可开启[详细 beta 追踪](/docs/zh-CN/monitoring-usage#traces-beta),它会添加包含内容的 span 属性以及 `claude_code.hook` span。交互式 CLI 会话还要求您的组织已被列入该 beta 的允许列表。这两个变量在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中都会被忽略 |

460| `ENABLE_CLAUDEAI_MCP_SERVERS` | 设置为 `false` 可阻止 Claude Code 获取 [claude.ai MCP 服务器](/docs/zh-CN/mcp#use-mcp-servers-from-claude-ai)。对已登录用户默认启用。若要按项目或按组织禁用,请改为在设置中设置 [`disableClaudeAiConnectors`](/docs/zh-CN/settings-reference#disableclaudeaiconnectors) |464| `ENABLE_CLAUDEAI_MCP_SERVERS` | 设置为 `false` 可阻止 Claude Code 获取 [claude.ai MCP 服务器](/docs/zh-CN/mcp#use-mcp-servers-from-claude-ai)。对已登录用户默认启用。若要按项目或按组织禁用,请改为在设置中设置 [`disableClaudeAiConnectors`](/docs/zh-CN/settings-reference#disableclaudeaiconnectors) |

461| `ENABLE_PROMPT_CACHING_1H` | 设置为 `1` 可请求 1 小时的[提示缓存 TTL](/docs/zh-CN/prompt-caching#cache-lifetime),而不是默认的 5 分钟。适用于 API 密钥、[Amazon Bedrock](/docs/zh-CN/amazon-bedrock)、[Google Cloud's Agent Platform](/docs/zh-CN/google-vertex-ai)、[Microsoft Foundry](/docs/zh-CN/microsoft-foundry) 和 [Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 用户。在包含用量范围内的订阅用户会在[主对话](/docs/zh-CN/prompt-caching#which-ttl-each-request-gets)上自动获得 1 小时 TTL。使用[使用额度](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans)的订阅用户可以设置此变量以保留 1 小时 TTL。1 小时缓存写入按更高费率计费。若要改为按请求类别选择 TTL,请使用 `CLAUDE_CODE_PROMPT_CACHE_TTL` 和 `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`,它们优先于此变量 |465| `ENABLE_PROMPT_CACHING_1H` | 设置为 `1` 可请求 1 小时的[提示缓存 TTL](/docs/zh-CN/prompt-caching#cache-lifetime),而不是默认的 5 分钟。适用于 API 密钥、[Amazon Bedrock](/docs/zh-CN/amazon-bedrock)、[Google Cloud's Agent Platform](/docs/zh-CN/google-vertex-ai)、[Microsoft Foundry](/docs/zh-CN/microsoft-foundry) 和 [Claude Platform on AWS](/docs/zh-CN/claude-platform-on-aws) 用户。在包含用量范围内的订阅用户会在[主对话](/docs/zh-CN/prompt-caching#which-ttl-each-request-gets)上自动获得 1 小时 TTL。使用[使用额度](https://support.claude.com/en/articles/12429409-extra-usage-for-paid-claude-plans)的订阅用户可以设置它以保持 1 小时 TTL。1 小时缓存写入按更高费率计费。若要改为按请求类别选择 TTL,请使用 `CLAUDE_CODE_PROMPT_CACHE_TTL` 和 `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`,它们优先于此变量 |

462| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | 已弃用。请改用 `ENABLE_PROMPT_CACHING_1H` |466| `ENABLE_PROMPT_CACHING_1H_BEDROCK` | 已弃用。请改用 `ENABLE_PROMPT_CACHING_1H` |

463| `ENABLE_TOOL_SEARCH` | 控制 [MCP 工具搜索](/docs/zh-CN/mcp#scale-with-mcp-tool-search)。未设置时,Claude Code 默认延迟加载所有 MCP 工具。但在 Claude 4.5 代之前的 Google Cloud's Agent Platform 模型上、在托管于 Azure 的 Microsoft Foundry 部署上,以及当 `ANTHROPIC_BASE_URL` 指向非第一方主机时,仍会预先加载它们。`true` 始终延迟加载并发送 beta 标头,但上述 Agent Platform 模型和 Microsoft Foundry 部署除外;在不支持 `tool_reference` 的代理上,请求会失败。`auto` 在工具定义能容纳在上下文的 10% 以内时预先加载。`auto:N` 设置自定义阈值,例如 `auto:5` 表示 5%。`false` 预先加载所有工具。设置了 `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` 时,您自行设置的值会被忽略。在 v2.1.221 之前,除非您将此变量设置为 `true`,否则 Claude Code 会在 Google Cloud's Agent Platform 上为所有模型禁用工具搜索 |467| `ENABLE_TOOL_SEARCH` | 控制 [MCP 工具搜索](/docs/zh-CN/mcp#scale-with-mcp-tool-search)。未设置时,Claude Code 默认延迟加载所有 MCP 工具。但在 Claude 4.5 之前世代的 Google Cloud's Agent Platform 模型上、在托管于 Azure 的 Microsoft Foundry 部署上,以及当 `ANTHROPIC_BASE_URL` 指向非第一方主机时,它仍会预先加载这些工具。`true` 始终延迟加载并发送 beta 标头,但上述 Agent Platform 模型和 Microsoft Foundry 部署除外;在不支持 `tool_reference` 的代理上请求会失败。`auto` 在工具定义占上下文不超过 10% 时预先加载。`auto:N` 设置自定义阈值,例如 `auto:5` 表示 5%。`false` 预先加载所有工具。设置了 `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS` 时,您自行设置的值会被忽略。在 v2.1.221 之前,除非您将此变量设置为 `true`,否则 Claude Code 会在 Google Cloud's Agent Platform 上为所有模型禁用工具搜索 |

464| `FALLBACK_FOR_ALL_PRIMARY_MODELS` | 设置为任意非空值(例如 `1`),可在未配置备用模型时,让 Claude Code 对所有模型在反复出现过载错误时停止重试。**设置为 `0` 或 `false` 仍会启用此行为**,这与大多数开关变量不同;取消设置该变量可恢复默认重试行为。如果不设置,当您使用 API 密钥或[第三方提供商](/docs/zh-CN/third-party-integrations)而非 Claude 订阅进行身份验证时,Claude Code 仅对其识别为 Opus、Fable 或 Mythos 的模型以这种方式停止重试。在 Claude Code v2.1.160 或更高版本中,Claude Code 会在任意主模型反复出现过载错误时切换到您配置的[备用模型链](/docs/zh-CN/model-config#fallback-model-chains),因此此变量不影响切换到备用模型 |468| `FALLBACK_FOR_ALL_PRIMARY_MODELS` | 设置为任意非空值(如 `1`),可在未配置备用模型时,使 Claude Code 对所有模型在反复出现过载错误时停止重试。**与大多数开/关变量不同,将其设置为 `0` 或 `false` 仍会启用此行为**;取消设置该变量即可恢复默认重试行为。不设置时,只有当您使用 API 密钥或[第三方提供商](/docs/zh-CN/third-party-integrations)而非 Claude 订阅进行身份验证时,Claude Code 才会对其识别为 Opus、Fable 或 Mythos 的模型以这种方式停止重试。在 Claude Code v2.1.160 或更高版本中,Claude Code 会在任何主模型反复出现过载错误时切换到您配置的[备用模型链](/docs/zh-CN/model-config#fallback-model-chains),因此此变量不影响切换到备用模型 |

465| `FORCE_AUTOUPDATE_PLUGINS` | 设置为 `1` 可在主自动更新程序已通过 `DISABLE_AUTOUPDATER` 禁用时,仍强制插件自动更新 |469| `FORCE_AUTOUPDATE_PLUGINS` | 设置为 `1` 可在主自动更新程序已通过 `DISABLE_AUTOUPDATER` 禁用时,仍强制插件自动更新 |

466| `FORCE_HYPERLINK` | 当您的终端支持可点击的 OSC 8 超链接但未被自动检测到时,设置为 `1` 可启用它们;设置为 `0` 可禁用。未设置时,Claude Code 仅在检测到终端支持时启用超链接。Claude Code 将此值解析为数字而非布尔值,因此 `false`、`no` 或 `off` 之类的值会启用超链接,而不是禁用。页脚的 [PR 或合并请求徽章](/docs/zh-CN/interactive-mode#pr-review-status)即使在 Claude Code 无法检测终端支持时(例如通过 SSH)也会渲染为超链接。设置为 `0` 可将徽章渲染为纯文本 |470| `FORCE_HYPERLINK` | 当您的终端支持可点击的 OSC 8 超链接但未被自动检测到时,设置为 `1` 可启用它们,设置为 `0` 可禁用它们。未设置时,Claude Code 仅在检测到终端支持时才启用超链接。Claude Code 将此值解析为数字而非布尔值,因此 `false`、`no` 或 `off` 等值会启用超链接而不是禁用。即使 Claude Code 无法检测到终端支持(例如通过 SSH 时),页脚的 [PR 或合并请求徽章](/docs/zh-CN/interactive-mode#pr-review-status)也会渲染为超链接。设置为 `0` 可将该徽章渲染为纯文本 |

467| `FORCE_PROMPT_CACHING_5M` | 设置为 `1` 可强制使用 5 分钟提示缓存 TTL,即使原本会应用 1 小时 TTL。覆盖 `CLAUDE_CODE_PROMPT_CACHE_TTL`、`CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`、`ENABLE_PROMPT_CACHING_1H` 以及 `promptCacheTtl` 和 `subagentPromptCacheTtl` 设置 |471| `FORCE_PROMPT_CACHING_5M` | 设置为 `1` 可强制使用 5 分钟提示缓存 TTL,即使原本会应用 1 小时 TTL。覆盖 `CLAUDE_CODE_PROMPT_CACHE_TTL`、`CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL`、`ENABLE_PROMPT_CACHING_1H` 以及 `promptCacheTtl` 和 `subagentPromptCacheTtl` 设置 |

468| `HTTP_PROXY` | 为网络连接指定 HTTP 代理服务器 |472| `HTTP_PROXY` | 为网络连接指定 HTTP 代理服务器 |

469| `HTTPS_PROXY` | 为网络连接指定 HTTPS 代理服务器 |473| `HTTPS_PROXY` | 为网络连接指定 HTTPS 代理服务器 |

470| `IS_DEMO` | 设置为任意非空值(例如 `1`)可启用演示模式:在标题栏和 `/status` 输出中隐藏您的电子邮件和组织名称,并跳过引导流程。**设置为 `0` 或 `false` 仍会启用演示模式**,这与大多数开关变量不同;取消设置该变量可将其关闭。适用于直播或录制会话 |474| `IS_DEMO` | 设置为任意非空值(如 `1`)可启用演示模式:在标题栏和 `/status` 输出中隐藏您的电子邮件和组织名称,并跳过新手引导。**与大多数开/关变量不同,将其设置为 `0` 或 `false` 仍会启用演示模式**;取消设置该变量即可将其关闭。适用于直播或录制会话 |

471| `MAX_MCP_OUTPUT_TOKENS` | MCP 工具响应中允许的最大 token 数。当输出超过 10,000 个 token 时,Claude Code 会显示警告。声明了 [`anthropic/maxResultSizeChars`](/docs/zh-CN/mcp#raise-the-limit-for-a-specific-tool) 的工具改为对文本内容使用该字符限制,但这些工具的图像内容仍受此变量约束(默认:25000) |475| `MAX_MCP_OUTPUT_TOKENS` | MCP 工具响应中允许的最大 token 数。当输出超过 10,000 个 token 时,Claude Code 会显示警告。声明了 [`anthropic/maxResultSizeChars`](/docs/zh-CN/mcp#raise-the-limit-for-a-specific-tool) 的工具会改为对文本内容使用该字符限制,但这些工具返回的图像内容仍受此变量限制(默认:25000) |

472| `MAX_STRUCTURED_OUTPUT_RETRIES` | 在使用 `-p` 标志的非交互模式下,当模型的响应未能通过 [`--json-schema`](/docs/zh-CN/cli-reference#cli-flags) 验证时,Claude Code 允许的尝试次数;在达到该次数的失败尝试且没有有效输出后,运行将失败。当[工作流](/docs/zh-CN/workflows)子代理的结构化输出未通过验证时,也适用相同的上限。默认为 5,即首次尝试加四次重试 |476| `MAX_STRUCTURED_OUTPUT_RETRIES` | 在使用 `-p` 标志的非交互模式下,当模型的响应未通过 [`--json-schema`](/docs/zh-CN/cli-reference#cli-flags) 验证时,Claude Code 允许的尝试次数;在达到该次数的失败尝试且没有有效输出后,运行失败。当[工作流](/docs/zh-CN/workflows)子代理的结构化输出未通过验证时,也适用相同的上限。默认为 5,即一次初始尝试加四次重试 |

473| `MAX_THINKING_TOKENS` | [扩展思考](https://platform.claude.com/docs/en/build-with-claude/extended-thinking)的固定 token 预算。Claude Code 将其上限设为比请求的最大输出 token 数少一个 token,且不低于 1,024。关于该限制的设置方式,请参阅 `CLAUDE_CODE_MAX_OUTPUT_TOKENS`。未设置且启用思考时,具有[自适应推理](/docs/zh-CN/model-config#adjust-effort-level)的模型会自行选择思考深度,其他模型则使用该上限。设置为 `0` 可在 Anthropic API 上禁用思考,但 Opus 5.5、Sonnet 5.5 和 Fable 模型除外,这些模型无法关闭思考。在[第三方提供商](/docs/zh-CN/third-party-integrations)上,`0` 会改为省略 `thinking` 参数。在 Anthropic API 上关闭思考时,对于已知[不接受该组合](/docs/zh-CN/errors#effort-isnt-available-with-thinking-turned-off)的模型(例如 Opus 5),Claude Code 会发送 effort `high` 而非更高级别。Claude Code 会忽略自适应推理模型上的非零值,但 `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` 可关闭自适应推理的模型除外 |477| `MAX_THINKING_TOKENS` | [扩展思考](https://platform.claude.com/docs/en/build-with-claude/extended-thinking)的固定 token 预算。Claude Code 将其上限设为比请求的最大输出 token 数少一个 token,且从不低于 1,024。有关该限制如何设置,请参阅 `CLAUDE_CODE_MAX_OUTPUT_TOKENS`。未设置且启用了思考时,具有[自适应推理](/docs/zh-CN/model-config#adjust-effort-level)的模型会自行选择思考深度,其他模型使用该上限。设置为 `0` 可在 Anthropic API 上禁用思考,但 Opus 5.5、Sonnet 5.5 和 Fable 模型除外,这些模型无法关闭思考。在[第三方提供商](/docs/zh-CN/third-party-integrations)上,`0` 会改为省略 `thinking` 参数。在 Anthropic API 上关闭思考时,对于 Claude Code 已知[不接受该组合](/docs/zh-CN/errors#effort-isnt-available-with-thinking-turned-off)的模型(如 Opus 5),Claude Code 会发送 effort `high` 而不是更高的级别。对于正值,Claude Code 在自适应推理模型上会忽略该数值本身,除非 `CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING` 关闭了自适应推理 |

474| `MCP_CLIENT_SECRET` | 需要[预配置凭据](/docs/zh-CN/mcp#use-pre-configured-oauth-credentials)的 MCP 服务器的 OAuth 客户端密钥。使用 `--client-secret` 添加服务器时可避免交互式提示 |478| `MCP_CLIENT_SECRET` | 用于需要[预配置凭据](/docs/zh-CN/mcp#use-pre-configured-oauth-credentials)的 MCP 服务器的 OAuth 客户端密钥。使用 `--client-secret` 添加服务器时可避免交互式提示 |

475| `MCP_CONNECTION_NONBLOCKING` | 控制启动时是否在首次查询之前等待 MCP 服务器连接。MCP 启动默认为非阻塞:服务器在后台连接,其工具在完成后即可使用。设置为 `0` 可让 Claude Code 在首次查询之前等待服务器连接。配置了 [`alwaysLoad: true`](/docs/zh-CN/mcp#exempt-a-server-from-deferral) 的服务器无论如何仍会让启动等待,除非从[发现缓存](/docs/zh-CN/mcp#server-status-detail)提供,因为构建首个提示词时必须具备它们的工具。在未使用 `--input-format stream-json` 的非交互模式(`-p`)下,无论此变量如何设置,Claude Code 也会在第一轮之前等待仍处于待定状态的服务器。当您显式传入 [`--mcp-config`](/docs/zh-CN/cli-reference#cli-flags) 时,等待的截止时间更长;关于已缓存服务器的例外情况,请参阅该标志的条目 |479| `MCP_CONNECTION_NONBLOCKING` | 控制启动时是否在第一次查询之前等待 MCP 服务器连接。MCP 启动默认是非阻塞的:服务器在后台连接,其工具在完成连接后即可使用。设置为 `0` 可使 Claude Code 在第一次查询之前等待服务器连接。配置了 [`alwaysLoad: true`](/docs/zh-CN/mcp#exempt-a-server-from-deferral) 的服务器无论如何仍会使启动等待(从[发现缓存](/docs/zh-CN/mcp#server-status-detail)提供时除外),因为在构建第一个提示词时必须已有其工具。在不带 `--input-format stream-json` 的非交互模式(`-p`)下,无论此变量如何,Claude Code 也会在第一轮之前等待仍在挂起的服务器。当您显式传入 [`--mcp-config`](/docs/zh-CN/cli-reference#cli-flags) 时,等待的截止时间更长;有关已缓存服务器的例外情况,请参阅该标志的条目 |

476| `MCP_CONNECT_TIMEOUT_MS` | 阻塞式 MCP 启动在对工具列表进行快照之前等待连接批次的时长(毫秒)(默认:5000)。适用于 `MCP_CONNECTION_NONBLOCKING=0` 时,或标记为 [`alwaysLoad: true`](/docs/zh-CN/mcp#exempt-a-server-from-deferral) 的服务器。截止时间到达时仍处于待定状态的服务器会继续在后台连接。与 `MCP_TIMEOUT` 不同,后者限制单个服务器的连接尝试 |480| `MCP_CONNECT_TIMEOUT_MS` | 阻塞式 MCP 启动在对工具列表做快照之前等待连接批次的时长,以毫秒为单位(默认:5000)。在 `MCP_CONNECTION_NONBLOCKING=0` 时或对标记为 [`alwaysLoad: true`](/docs/zh-CN/mcp#exempt-a-server-from-deferral) 的服务器适用。截止时仍在挂起的服务器会继续在后台连接。与 `MCP_TIMEOUT` 不同,后者限制单个服务器的连接尝试 |

477| `MCP_DISCOVERY_CACHE` | 开启或关闭 [MCP 发现缓存](/docs/zh-CN/mcp#server-status-detail)。缓存开启时,您之前使用过的远程 HTTP 或 SSE 服务器可以显示 [`cached` 状态](/docs/zh-CN/mcp#server-status-detail),并且 Claude Code 会在其首次工具调用时而不是在启动时连接它。除非逐步推出已为您的账户启用缓存,否则缓存默认关闭。设置为 `1` 可将其开启,设置为 `0` 可在推出已启用时仍保持关闭。在 v2.1.238 之前,缓存默认开启。`cached` 状态需要 Claude Code v2.1.221 或更高版本 |481| `MCP_DISCOVERY_CACHE` | 开启或关闭 [MCP 发现缓存](/docs/zh-CN/mcp#server-status-detail)。缓存开启时,您以前使用过的远程 HTTP 或 SSE 服务器可以显示 [`cached` 状态](/docs/zh-CN/mcp#server-status-detail),并且 Claude Code 会在其首次工具调用时而不是启动时连接它。除非渐进式发布已为您的账户启用,否则该缓存默认关闭。设置为 `1` 可将其开启,设置为 `0` 可在发布已启用时仍保持关闭。在 v2.1.238 之前,该缓存默认开启。`cached` 状态需要 Claude Code v2.1.221 或更高版本 |

478| `MCP_DISCOVERY_CACHE_MAX_STALE_S` | [发现缓存](/docs/zh-CN/mcp#server-status-detail)条目的最长保留时间(秒)(默认:14400,即 4 小时)。在启动时,如果条目早于该时长,Claude Code 会丢弃它并在启动时连接服务器,与缓存关闭时的行为相同。Claude Code 将该值上限设为 7 天。在 v2.1.238 之前,默认值为 86400,即 24 小时,且 Claude Code 不限制该值 |482| `MCP_DISCOVERY_CACHE_MAX_STALE_S` | [发现缓存](/docs/zh-CN/mcp#server-status-detail)条目的最长存在时间,以秒为单位(默认:14400,即 4 小时)。在条目超过该时间的启动中,Claude Code 会丢弃它并在启动时连接服务器,与关闭缓存时相同。Claude Code 将该值上限设为 7 天。在 v2.1.238 之前,默认值为 86400,即 24 小时,并且 Claude Code 不限制该值 |

479| `MCP_DISCOVERY_CACHE_STRIKES` | 在启动时,如果[发现缓存](/docs/zh-CN/mcp#server-status-detail)条目早于 `MCP_DISCOVERY_CACHE_TTL_S`,Claude Code 会在后台刷新它。此变量设置在 Claude Code 丢弃该条目并改为在下次启动时连接服务器之前,允许连续失败的刷新次数(默认:1)。如果您的网络连接偶尔中断,可调高此值,以免一次刷新失败就丢弃条目。需要 Claude Code v2.1.238 或更高版本 |483| `MCP_DISCOVERY_CACHE_STRIKES` | 在[发现缓存](/docs/zh-CN/mcp#server-status-detail)条目早于 `MCP_DISCOVERY_CACHE_TTL_S` 的启动中,Claude Code 会在后台刷新它。此变量设置在 Claude Code 丢弃该条目并改为在下次启动时连接服务器之前,允许连续失败的刷新次数(默认:1)。如果您的网络连接偶尔中断,请调高此值,以免一次刷新失败就丢弃该条目。需要 Claude Code v2.1.238 或更高版本 |

480| `MCP_DISCOVERY_CACHE_TTL_S` | Claude Code 在不刷新的情况下使用[发现缓存](/docs/zh-CN/mcp#server-status-detail)条目的秒数(默认:900)。在启动时,如果条目早于该时长,Claude Code 仍会使用它,但会在后台刷新。一旦条目早于 `MCP_DISCOVERY_CACHE_MAX_STALE_S`,Claude Code 会改为丢弃它。Claude Code 将该值上限设为 `MCP_DISCOVERY_CACHE_MAX_STALE_S`,默认为 4 小时。在 v2.1.238 之前,Claude Code 不限制该值 |484| `MCP_DISCOVERY_CACHE_TTL_S` | Claude Code 使用[发现缓存](/docs/zh-CN/mcp#server-status-detail)条目而不刷新它的秒数(默认:900)。在条目超过该时间的启动中,Claude Code 仍会使用它,但会在后台刷新。一旦条目早于 `MCP_DISCOVERY_CACHE_MAX_STALE_S`,Claude Code 会改为丢弃它。Claude Code 将该值上限设为 `MCP_DISCOVERY_CACHE_MAX_STALE_S`,默认为 4 小时。在 v2.1.238 之前,Claude Code 不限制该值 |

481| `MCP_OAUTH_CALLBACK_PORT` | OAuth 重定向回调的固定端口,可在使用[预配置凭据](/docs/zh-CN/mcp#use-pre-configured-oauth-credentials)添加 MCP 服务器时替代 `--callback-port` |485| `MCP_OAUTH_CALLBACK_PORT` | OAuth 重定向回调的固定端口,可在添加带有[预配置凭据](/docs/zh-CN/mcp#use-pre-configured-oauth-credentials)的 MCP 服务器时替代 `--callback-port` |

482| `MCP_PROTOCOL_NEGOTIATION` | 仅在 [v2 MCP 客户端运行时](/docs/zh-CN/mcp#mcp-client-runtimes)上生效,控制 Claude Code 是否探测服务器对 MCP 协议修订版 2026-07-28 的支持。设置为 `auto` 可探测 HTTP、claude.ai 连接器和 stdio 服务器,设置为 `legacy` 则不探测任何服务器。未设置该变量时,Claude Code 会探测 [MCP 客户端运行时](/docs/zh-CN/mcp#mcp-client-runtimes)中所述的服务器。任何其他值都会被忽略,并在调试日志中记录警告。需要 Claude Code v2.1.221 或更高版本 |486| `MCP_PROTOCOL_NEGOTIATION` | 仅在 [v2 MCP 客户端运行时](/docs/zh-CN/mcp#mcp-client-runtimes)上,控制 Claude Code 是否探测服务器对 MCP 协议修订版 2026-07-28 的支持。设置为 `auto` 可探测 HTTP、claude.ai 连接器和 stdio 服务器,设置为 `legacy` 则不探测任何服务器。未设置该变量时,Claude Code 会探测 [MCP 客户端运行时](/docs/zh-CN/mcp#mcp-client-runtimes)中所述的服务器。任何其他值都会被忽略,并在调试日志中记录警告。需要 Claude Code v2.1.221 或更高版本 |

483| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | 启动期间并行连接的远程 MCP 服务器(HTTP/SSE)的最大数量(默认:20) |487| `MCP_REMOTE_SERVER_CONNECTION_BATCH_SIZE` | 启动期间并行连接的远程 MCP 服务器(HTTP/SSE)的最大数量(默认:20) |

484| `MCP_SDK_GENERATION` | 固定此进程连接 MCP 服务器所用的 [MCP 客户端运行时](/docs/zh-CN/mcp#mcp-client-runtimes):`v1` 基于 MCP TypeScript SDK 1.x 构建,`v2` 基于 [MCP TypeScript SDK 2.0](https://ts.sdk.modelcontextprotocol.io/v2/) 构建。未设置此变量时,Claude Code 从该部分列出的版本开始使用 v2。在 Claude Code v2.1.221 或更高版本中,v2 运行时会检查 MCP OAuth 服务器在其授权响应中返回的签发者,如果不匹配,则以 `Issuer mismatch in authorization response` 开头的错误使登录失败。v1 运行时不执行此检查。如果您设置了无法识别的值,Claude Code 会忽略它并向调试日志写入警告。Claude Code 每个进程只读取一次该值。需要 Claude Code v2.1.218 或更高版本 |488| `MCP_SDK_GENERATION` | 固定此进程连接 MCP 服务器所使用的 [MCP 客户端运行时](/docs/zh-CN/mcp#mcp-client-runtimes):`v1` 基于 MCP TypeScript SDK 1.x 构建,`v2` 基于 [MCP TypeScript SDK 2.0](https://ts.sdk.modelcontextprotocol.io/v2/) 构建。未设置该变量时,Claude Code 从该部分列出的版本开始使用 v2。在 Claude Code v2.1.221 或更高版本中,v2 运行时会检查 MCP OAuth 服务器在其授权响应中返回的颁发者,若不匹配,则以一条以 `Issuer mismatch in authorization response` 开头的错误使登录失败。v1 运行时不执行此检查。如果您设置了无法识别的值,Claude Code 会忽略它并在调试日志中写入警告。Claude Code 每个进程读取一次该值。需要 Claude Code v2.1.218 或更高版本 |

485| `MCP_SERVER_CONNECTION_BATCH_SIZE` | 启动期间并行连接的本地 MCP 服务器(stdio)的最大数量(默认:3) |489| `MCP_SERVER_CONNECTION_BATCH_SIZE` | 启动期间并行连接的本地 MCP 服务器(stdio)的最大数量(默认:3) |

486| `MCP_TIMEOUT` | MCP 服务器启动的超时时间(毫秒)(默认:30000,即 30 秒) |490| `MCP_TIMEOUT` | MCP 服务器启动的超时时间,以毫秒为单位(默认:30000,即 30 秒) |

487| `MCP_TOOL_TIMEOUT` | MCP 工具执行的超时时间(毫秒)(默认:100000000,约 28 小时)。对于 HTTP、SSE 或 claude.ai 连接器服务器,每个请求默认还会在 60 秒后超时;将此变量或按服务器的 `timeout` 设置为高于 60000 可提高该单请求限制。较低的值仍会缩短整体工具执行超时时间,但单请求限制保持为 60 秒。Stdio 和 WebSocket 服务器没有单请求计时器。`.mcp.json` 中按服务器的 `timeout` 字段会为该服务器覆盖此值。按服务器的 `timeout` 至少为 1000 时,也会为该服务器的工具调用设置最小空闲窗口,因此 `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` 永远不会更早中止它们;此下限需要 Claude Code v2.1.203 或更高版本。对于环境变量,低于 1000 的值会被提升至一秒;对于按服务器的字段,低于 1000 的值会被忽略 |491| `MCP_TOOL_TIMEOUT` | MCP 工具执行的超时时间,以毫秒为单位(默认:100000000,约 28 小时)。对于 HTTP、SSE 或 claude.ai 连接器服务器,每个请求默认还会在 60 秒后超时;将此变量或按服务器的 `timeout` 设置为高于 60000 可提高该单请求限制。较低的值仍会缩短整体工具执行超时时间,但单请求限制保持为 60 秒。Stdio 和 WebSocket 服务器没有单请求计时器。`.mcp.json` 中按服务器的 `timeout` 字段会为该服务器覆盖此值。至少为 1000 的按服务器 `timeout` 还会设置该服务器工具调用的最小空闲窗口,使 `CLAUDE_CODE_MCP_TOOL_IDLE_TIMEOUT` 永远不会更早中止它们;此下限需要 Claude Code v2.1.203 或更高版本。对于环境变量,低于 1000 的值会被提升为一秒;对于按服务器字段,低于 1000 的值会被忽略 |

488| `NO_PROXY` | 请求将绕过代理直接发往的域名和 IP 列表 |492| `NO_PROXY` | 请求将直接发送、绕过代理的域名和 IP 列表 |

489| `OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT` | 标准 OpenTelemetry SDK 属性值长度限制。Claude Code 将包含内容的遥测属性限制为此值与 `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` 中的较小者,以使截断标记保持在 SDK 限制之内。Claude Code 以相同方式读取 `OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT` 和 `OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT` 变体,并将已设置值中的最小值应用于所有信号。需要 Claude Code v2.1.214 或更高版本。请参阅[监控](/docs/zh-CN/monitoring-usage#common-configuration-variables) |493| `OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT` | 标准 OpenTelemetry SDK 对属性值长度的限制。Claude Code 将包含内容的遥测属性上限设为此值与 `CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` 中的较小者,以使截断标记保持在 SDK 限制之内。Claude Code 以相同方式读取 `OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT` 和 `OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT` 变体,并将已设置的最小值应用于所有信号。需要 Claude Code v2.1.214 或更高版本。请参阅[监控](/docs/zh-CN/monitoring-usage#common-configuration-variables) |

490| `OTEL_LOG_ASSISTANT_RESPONSES` | 设置为 `1` 可在 `assistant_response` OpenTelemetry 日志事件中包含模型的回复文本。未设置时,Claude Code 会改用 `OTEL_LOG_USER_PROMPTS` 的值。设置为 `0` 可在设置了 `OTEL_LOG_USER_PROMPTS` 时仍保持回复被遮盖。请在 shell、用户设置或托管设置中设置。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略。需要 Claude Code v2.1.193 或更高版本。请参阅[监控](/docs/zh-CN/monitoring-usage#assistant-response-event) |494| `OTEL_LOG_ASSISTANT_RESPONSES` | 设置为 `1` 可在 `assistant_response` OpenTelemetry 日志事件中包含模型的回复文本。未设置时,Claude Code 会改用 `OTEL_LOG_USER_PROMPTS` 的值。设置为 `0` 可在设置了 `OTEL_LOG_USER_PROMPTS` 时仍保持回复被脱敏。请在 shell、用户设置或托管设置中设置它。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略。需要 Claude Code v2.1.193 或更高版本。请参阅[监控](/docs/zh-CN/monitoring-usage#assistant-response-event) |

491| `OTEL_LOG_MANAGED_SETTINGS` | 设置为 `1` 可将遮盖后的托管设置以及遮盖前设置的 SHA-256 摘要添加到 `managed_settings_resolved` OpenTelemetry 日志事件中。默认禁用。请在 shell、用户设置或托管设置中设置;项目设置或本地设置中的值不会将其开启。需要 Claude Code v2.1.274 或更高版本。请参阅[监控](/docs/zh-CN/monitoring-usage#managed-settings-resolved-event) |495| `OTEL_LOG_MANAGED_SETTINGS` | 设置为 `1` 可将脱敏后的托管设置以及脱敏前设置的 SHA-256 摘要添加到 `managed_settings_resolved` OpenTelemetry 日志事件中。默认禁用。请在 shell、用户设置或托管设置中设置它;项目设置或本地设置中的值不会将其开启。需要 Claude Code v2.1.274 或更高版本。请参阅[监控](/docs/zh-CN/monitoring-usage#managed-settings-resolved-event) |

492| `OTEL_LOG_RAW_API_BODIES` | 将 Anthropic Messages API 请求和响应 JSON 作为 `api_request_body` / `api_response_body` 日志事件发出。设置为 `1` 可发出按内容限制截断的内联正文,设置为 `file:<dir>` 可将未截断的正文写入磁盘并改为发出 `body_ref` 路径。`CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` 配置内容限制,默认为 60 KB。默认禁用;正文包含完整的对话历史。请在 shell、用户设置或托管设置中设置。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略。请参阅[监控](/docs/zh-CN/monitoring-usage#api-request-body-event) |496| `OTEL_LOG_RAW_API_BODIES` | 将 Anthropic Messages API 请求和响应 JSON 作为 `api_request_body` / `api_response_body` 日志事件发出。设置为 `1` 可发出按内容限制截断的内联正文,或设置为 `file:<dir>` 以将未截断的正文写入磁盘并改为发出 `body_ref` 路径。`CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTH` 用于配置内容限制,默认为 60 KB。默认禁用;正文包含完整的对话历史。请在 shell、用户设置或托管设置中设置它。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略。请参阅[监控](/docs/zh-CN/monitoring-usage#api-request-body-event) |

493| `OTEL_LOG_TOOL_CONTENT` | 设置为 `1` 可在 `tool.output` OpenTelemetry span 事件中包含工具内容。span 属性在[各自的开关](/docs/zh-CN/monitoring-usage#new-context-gates)下携带工具内容。需要[追踪](/docs/zh-CN/monitoring-usage#traces-beta)。默认禁用以保护敏感数据。请在 shell、用户设置或托管设置中设置。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略,但该部分描述的关闭值除外。请参阅[监控](/docs/zh-CN/monitoring-usage#tool-output-span-event) |497| `OTEL_LOG_TOOL_CONTENT` | 设置为 `1` 可在 `tool.output` OpenTelemetry span 事件中包含工具内容。span 属性在[其各自的开关](/docs/zh-CN/monitoring-usage#new-context-gates)下携带工具内容。需要[追踪](/docs/zh-CN/monitoring-usage#traces-beta)。默认禁用以保护敏感数据。请在 shell、用户设置或托管设置中设置它。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略,该部分所述的关闭值除外。请参阅[监控](/docs/zh-CN/monitoring-usage#tool-output-span-event) |

494| `OTEL_LOG_TOOL_DETAILS` | 设置为 `1` 可在 OpenTelemetry 指标、追踪和日志中包含工具输入参数;MCP 服务器名称;用户编写的工作流名称;工具失败时的原始错误字符串;`api_refusal` 事件上的拒绝 `category`;[成本和 token 指标](/docs/zh-CN/monitoring-usage#cost-counter)上真实的 Agent、skill、插件和 MCP 服务器名称;以及其他工具详细信息。默认禁用以保护 PII。请在 shell、用户设置或托管设置中设置。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略,但该部分描述的关闭值除外。请参阅[监控](/docs/zh-CN/monitoring-usage) |498| `OTEL_LOG_TOOL_DETAILS` | 设置为 `1` 可在 OpenTelemetry 指标、追踪和日志中包含工具输入参数;MCP 服务器名称;用户编写的工作流名称;工具失败时的原始错误字符串;`api_refusal` 事件上的拒绝 `category`;[费用和 token 指标](/docs/zh-CN/monitoring-usage#cost-counter)上真实的 Agent、skill、插件和 MCP 服务器名称;以及其他工具详细信息。默认禁用以保护 PII。请在 shell、用户设置或托管设置中设置它。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略,该部分所述的关闭值除外。请参阅[监控](/docs/zh-CN/monitoring-usage) |

495| `OTEL_LOG_USER_PROMPTS` | 设置为 `1` 可在 OpenTelemetry 追踪和日志中包含用户提示词文本。默认禁用(提示词会被遮盖)。请在 shell、用户设置或托管设置中设置。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略,但该部分描述的关闭值除外。请参阅[监控](/docs/zh-CN/monitoring-usage) |499| `OTEL_LOG_USER_PROMPTS` | 设置为 `1` 可在 OpenTelemetry 追踪和日志中包含用户提示词文本。默认禁用(提示词会被脱敏)。请在 shell、用户设置或托管设置中设置它。在[项目设置和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env)中会被忽略,该部分所述的关闭值除外。请参阅[监控](/docs/zh-CN/monitoring-usage) |

496| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | 设置为 `false` 可从指标属性中排除账户 UUID(默认:包含)。请参阅[监控](/docs/zh-CN/monitoring-usage) |500| `OTEL_METRICS_INCLUDE_ACCOUNT_UUID` | 设置为 `false` 可从指标属性中排除账户 UUID(默认:包含)。请参阅[监控](/docs/zh-CN/monitoring-usage) |

497| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | 设置为 `true` 可在指标属性中包含会话入口点(默认:排除)。在 v2.1.152 中添加。请参阅[监控](/docs/zh-CN/monitoring-usage) |501| `OTEL_METRICS_INCLUDE_ENTRYPOINT` | 设置为 `true` 可在指标属性中包含会话入口点(默认:排除)。在 v2.1.152 中添加。请参阅[监控](/docs/zh-CN/monitoring-usage) |

498| `OTEL_METRICS_INCLUDE_REPOSITORY` | 设置为 `true` 可为 OpenTelemetry 指标和事件添加标识会话所在仓库的 `vcs.*` 属性(默认:排除)。需要 Claude Code v2.1.269 或更高版本。请参阅[仓库属性](/docs/zh-CN/monitoring-usage#repository-attributes) |502| `OTEL_METRICS_INCLUDE_REPOSITORY` | 设置为 `true` 可为 OpenTelemetry 指标和事件添加标识会话所在仓库的 `vcs.*` 属性(默认:排除)。需要 Claude Code v2.1.269 或更高版本。请参阅[仓库属性](/docs/zh-CN/monitoring-usage#repository-attributes) |

499| `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` | 从 v2.1.161 起,Claude Code 会将 `OTEL_RESOURCE_ATTRIBUTES` 键附加到指标数据点标签上。设置为 `false` 可将其排除(默认:包含)。请参阅[监控](/docs/zh-CN/monitoring-usage#multi-team-organization-support) |503| `OTEL_METRICS_INCLUDE_RESOURCE_ATTRIBUTES` | 自 v2.1.161 起,Claude Code 会将 `OTEL_RESOURCE_ATTRIBUTES` 键附加到指标数据点标签上。设置为 `false` 可排除它们(默认:包含)。请参阅[监控](/docs/zh-CN/monitoring-usage#multi-team-organization-support) |

500| `OTEL_METRICS_INCLUDE_SESSION_ID` | 设置为 `false` 可从指标属性中排除会话 ID(默认:包含)。请参阅[监控](/docs/zh-CN/monitoring-usage) |504| `OTEL_METRICS_INCLUDE_SESSION_ID` | 设置为 `false` 可从指标属性中排除会话 ID(默认:包含)。请参阅[监控](/docs/zh-CN/monitoring-usage) |

501| `OTEL_METRICS_INCLUDE_VERSION` | 设置为 `true` 可在指标属性中包含 Claude Code 版本(默认:排除)。请参阅[监控](/docs/zh-CN/monitoring-usage) |505| `OTEL_METRICS_INCLUDE_VERSION` | 设置为 `true` 可在指标属性中包含 Claude Code 版本(默认:排除)。请参阅[监控](/docs/zh-CN/monitoring-usage) |

502| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | 覆盖向 [Skill 工具](/docs/zh-CN/skills#control-who-invokes-a-skill)显示的 skill 元数据的字符预算。该预算按上下文窗口的 1% 动态缩放,回退值为 8,000 个字符。保留旧名称以实现向后兼容 |506| `SLASH_COMMAND_TOOL_CHAR_BUDGET` | 覆盖向 [Skill 工具](/docs/zh-CN/skills#control-who-invokes-a-skill)显示的 skill 元数据的字符预算。该预算按上下文窗口的 1% 动态缩放,回退值为 8,000 个字符。保留旧名称是为了向后兼容 |

503| `TASK_MAX_OUTPUT_LENGTH` | 已在 v2.1.277 中移除,现在不起作用,其所限定大小的 `TaskOutput` 工具也一并移除。之前用于设置 `TaskOutput` 工具保留的[后台任务](/docs/zh-CN/tools-reference#background-commands)输出的最大字符数。Claude 现在改用 `Read` 读取后台任务的输出文件 |507| `TASK_MAX_OUTPUT_LENGTH` | 已在 v2.1.277 中移除,现在不起任何作用,其所限制的 `TaskOutput` 工具也一并移除。以前用于设置 `TaskOutput` 工具保留的[后台任务](/docs/zh-CN/tools-reference#background-commands)输出的最大字符数。Claude 现在改用 `Read` 读取后台任务的输出文件 |

504| `USE_BUILTIN_RIPGREP` | 设置为 `0` 可使用系统安装的 `rg`,而不是 Claude Code 自带的 `rg` |508| `USE_BUILTIN_RIPGREP` | 设置为 `0` 可使用系统安装的 `rg`,而不是 Claude Code 自带的 `rg` |

505| `VERTEX_REGION_CLAUDE_3_5_HAIKU` | 使用 Google Cloud's Agent Platform 时覆盖 Claude 3.5 Haiku 的区域 |509| `VERTEX_REGION_CLAUDE_3_5_HAIKU` | 使用 Google Cloud's Agent Platform 时覆盖 Claude 3.5 Haiku 的区域 |

506| `VERTEX_REGION_CLAUDE_3_5_SONNET` | 使用 Google Cloud's Agent Platform 时覆盖 Claude 3.5 Sonnet 的区域 |510| `VERTEX_REGION_CLAUDE_3_5_SONNET` | 使用 Google Cloud's Agent Platform 时覆盖 Claude 3.5 Sonnet 的区域 |


514| `VERTEX_REGION_CLAUDE_4_6_SONNET` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Sonnet 4.6 的区域 |518| `VERTEX_REGION_CLAUDE_4_6_SONNET` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Sonnet 4.6 的区域 |

515| `VERTEX_REGION_CLAUDE_4_7_OPUS` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Opus 4.7 的区域 |519| `VERTEX_REGION_CLAUDE_4_7_OPUS` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Opus 4.7 的区域 |

516| `VERTEX_REGION_CLAUDE_4_8_OPUS` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Opus 4.8 的区域 |520| `VERTEX_REGION_CLAUDE_4_8_OPUS` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Opus 4.8 的区域 |

517| `VERTEX_REGION_CLAUDE_5_5_OPUS` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Opus 5.5 的区域。在 v2.1.280 中添加 |521| `VERTEX_REGION_CLAUDE_5_5_OPUS` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Opus 5.5 的区域。在 v2.1.280 中新增 |

518| `VERTEX_REGION_CLAUDE_5_5_SONNET` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Sonnet 5.5 的区域。在 v2.1.284 中添加 |522| `VERTEX_REGION_CLAUDE_5_5_SONNET` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Sonnet 5.5 的区域。在 v2.1.284 中新增 |

519| `VERTEX_REGION_CLAUDE_5_OPUS` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Opus 5 的区域。在 v2.1.219 中添加 |523| `VERTEX_REGION_CLAUDE_5_OPUS` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Opus 5 的区域。在 v2.1.219 中新增 |

520| `VERTEX_REGION_CLAUDE_5_SONNET` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Sonnet 5 的区域。在 v2.1.197 中添加 |524| `VERTEX_REGION_CLAUDE_5_SONNET` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Sonnet 5 的区域。在 v2.1.197 中新增 |

521| `VERTEX_REGION_CLAUDE_FABLE_5` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Fable 5 的区域。在 v2.1.170 中添加 |525| `VERTEX_REGION_CLAUDE_FABLE_5` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Fable 5 的区域。在 v2.1.170 中新增 |

522| `VERTEX_REGION_CLAUDE_FABLE_5_1` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Fable 5.1 的区域。在 v2.1.257 中添加 |526| `VERTEX_REGION_CLAUDE_FABLE_5_1` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Fable 5.1 的区域。在 v2.1.257 中新增 |

523| `VERTEX_REGION_CLAUDE_HAIKU_4_5` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Haiku 4.5 的区域 |527| `VERTEX_REGION_CLAUDE_HAIKU_4_5` | 使用 Google Cloud's Agent Platform 时覆盖 Claude Haiku 4.5 的区域 |

524 528 

525同样支持标准 OpenTelemetry 导出器变量(`OTEL_METRICS_EXPORTER`、`OTEL_LOGS_EXPORTER`、`OTEL_EXPORTER_OTLP_ENDPOINT`、`OTEL_EXPORTER_OTLP_PROTOCOL`、`OTEL_EXPORTER_OTLP_HEADERS`、`OTEL_METRIC_EXPORT_INTERVAL`、`OTEL_RESOURCE_ATTRIBUTES` 以及特定于信号的变体)。有关配置详情,请参阅[监控](/docs/zh-CN/monitoring-usage)。529同样支持标准 OpenTelemetry 导出器变量(`OTEL_METRICS_EXPORTER`、`OTEL_LOGS_EXPORTER`、`OTEL_EXPORTER_OTLP_ENDPOINT`、`OTEL_EXPORTER_OTLP_PROTOCOL`、`OTEL_EXPORTER_OTLP_HEADERS`、`OTEL_METRIC_EXPORT_INTERVAL`、`OTEL_RESOURCE_ATTRIBUTES` 以及特定信号的变体)。有关配置详细信息,请参阅[监控](/docs/zh-CN/monitoring-usage)。

526 530 

527请在 shell、用户设置或托管设置中设置 `CLAUDE_CODE_ENABLE_TELEMETRY`,以及用于开启导出、选择导出目标或捕获内容的 OpenTelemetry 变量。Claude Code [会在项目设置和本地设置中忽略它们](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env),但该部分描述的关闭值除外。`OTEL_RESOURCE_ATTRIBUTES` 以及导出间隔、超时和压缩相关变量(例如 `OTEL_METRIC_EXPORT_INTERVAL`)在项目设置和本地设置中仍然生效。531请在 shell、用户设置或托管设置中设置 `CLAUDE_CODE_ENABLE_TELEMETRY` 以及用于开启导出、选择导出目标或捕获内容的 OpenTelemetry 变量。Claude Code [会在项目设置和本地设置中忽略它们](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env),该部分所述的关闭值除外。`OTEL_RESOURCE_ATTRIBUTES` 以及导出间隔、超时和压缩相关变量(如 `OTEL_METRIC_EXPORT_INTERVAL`)在项目设置和本地设置中仍然生效。

532 

533<h2 id="what-the-subprocess-environment-scrub-removes">

534 子进程环境清理会移除哪些内容

535</h2>

536 

537当您将 [`CLAUDE_CODE_SUBPROCESS_ENV_SCRUB`](#variables) 设置为 `1` 时,Claude Code 会从其启动的子进程(例如 Bash 命令、hook 和 stdio MCP 服务器)的环境中移除凭据。这可以减少提示词注入攻击通过 shell 展开所能读取的内容。Claude Code 进程本身会保留这些凭据,用于其自身的 API 调用。

538 

539清理功能通过变量名或变量值的形态来识别凭据,因此应将其作为与精细的[权限规则](/docs/zh-CN/permissions)配合使用的一层防护,而不是唯一的控制手段。

540 

541下表展示了清理功能对示例变量的处理方式:

542 

543| 示例变量 | 清理功能的处理方式 |

544| :- | :- |

545| `ANTHROPIC_API_KEY`、`AWS_SECRET_ACCESS_KEY` | 移除 |

546| `NPM_TOKEN`、`DB_PASSWORD` | 移除,因为其名称看起来像凭据 |

547| 包含密码的 `DATABASE_URL` | 移除,因为其值看起来像凭据 |

548| 包含密码的 `PIP_INDEX_URL` 或 `NPM_CONFIG_REGISTRY` | 保留 URL,但从中删去用户名和密码 |

549| `CLAUDE_CONFIG_DIR` | 移除。需要 Claude Code v2.1.251 或更高版本 |

550| `GITHUB_TOKEN`、`GH_TOKEN`、`GH_ENTERPRISE_TOKEN`、`GITHUB_ENTERPRISE_TOKEN` | 保留,以便 `gh` 和调用 GitHub API 的脚本能够继续正常工作 |

551| `HTTP_PROXY`、`HTTPS_PROXY` | 保留,包括 [URL 中的用户名和密码](/docs/zh-CN/network-config#basic-authentication)。[沙箱](/docs/zh-CN/sandboxing#network-isolation)可以自行为沙箱化的命令设置这些变量 |

552| `GIT_CONFIG_COUNT`、`GIT_CONFIG_KEY_<n>`、`GIT_CONFIG_VALUE_<n>` | 保留,无论其内容为何 |

553| 变量名和值都不像凭据的密钥 | 保留 |

554 

555由于清理功能会保留 `GITHUB_TOKEN`,请为 GitHub Actions 作业授予其所需的最小 `permissions`。要从沙箱化的 Bash 命令中移除 GitHub 令牌,请在 [`sandbox.credentials`](/docs/zh-CN/sandboxing#protect-credentials) 下添加一个 `deny` 条目。

556 

557如果某个子进程需要用到被移除的变量之一,请不要设置清理功能。

558 

559在 Linux 上,清理功能还会在隔离的 PID 命名空间中运行 Bash 子进程,使其无法通过 `/proc` 读取主机进程的环境。这带来的一个副作用是,`ps`、`pgrep` 和 `kill` 无法看到主机进程,也无法向其发送信号。

528 560 

529<h2 id="features-that-need-feature-flag-fetching">561<h2 id="features-that-need-feature-flag-fetching">

530 需要特性标志获取的功能562 需要获取功能标志的功能

531</h2>563</h2>

532 564 

533Claude Code 通过从 Anthropic 获取的特性标志来启用某些功能。Claude Code 在以下会话中跳过该获取:565Claude Code 通过从 Anthropic 获取的功能标志来启用部分功能。在以下会话中,Claude Code 会跳过该获取操作:

534 566 

535* 一个会话中,你设置了 `DISABLE_GROWTHBOOK`、`DISABLE_TELEMETRY`、`DO_NOT_TRACK` 或 `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`;[变量表](#variables)中每个变量的行说明了哪些值会关闭获取567* 设置了 `DISABLE_GROWTHBOOK`、`DISABLE_TELEMETRY`、`DO_NOT_TRACK` 或 `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` 的会话;[变量表](#variables)中每个变量所在的行说明了哪些值会关闭获取

536* 一个[第三方提供商](/docs/zh-CN/third-party-integrations)上的会话,例如 Amazon Bedrock、AWS 上的 Claude Platform、Google Cloud 的 Agent Platform 或 Microsoft Foundry,除非嵌入 Claude Code 的主机平台设置了 `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`568* 使用[第三方提供商](/docs/zh-CN/third-party-integrations)(例如 Amazon Bedrock、Claude Platform on AWS、Google Cloud 的 Agent Platform 或 Microsoft Foundry)的会话,除非嵌入 Claude Code 的宿主平台设置了 `CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST`

537* 一个 [Claude apps gateway](/docs/zh-CN/claude-apps-gateway) 会话569* [Claude apps 网关](/docs/zh-CN/claude-apps-gateway)会话

538 570 

539关闭获取后,你无法:571关闭获取后,您将无法:

540 572 

541* 运行 [`/auto-mode-setup`](/docs/zh-CN/auto-mode-config#generate-environment-entries) 来草拟 `autoMode.environment` 条目573* 运行 [`/auto-mode-setup`](/docs/zh-CN/auto-mode-config#generate-environment-entries) 来起草 `autoMode.environment` 条目

542* 使用 [Remote Control](/docs/zh-CN/remote-control),其中设置了 `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` 或 `DISABLE_GROWTHBOOK`。对于 `DISABLE_TELEMETRY` 和 `DO_NOT_TRACK`,请参阅 [Remote Control 要求](/docs/zh-CN/remote-control#requirements)574* 在设置了 `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` 或 `DISABLE_GROWTHBOOK` 的情况下使用 [Remote Control](/docs/zh-CN/remote-control)。关于 `DISABLE_TELEMETRY` 和 `DO_NOT_TRACK`,请参阅 [Remote Control 要求](/docs/zh-CN/remote-control#requirements)

543* [消息会话超出此机器](/docs/zh-CN/cross-session-messaging#message-sessions-on-other-machines),当 [Remote Control](/docs/zh-CN/remote-control#requirements) 不可用时。此机器上会话之间的消息传递在关闭获取的情况下也能工作575* 在 [Remote Control](/docs/zh-CN/remote-control#requirements) 不可用时[向本机以外的会话发送消息](/docs/zh-CN/cross-session-messaging#message-sessions-on-other-machines)。关闭获取后,本机上会话之间的消息传递仍可正常工作

544* 运行 [`claude import` 或 `/import` 命令](/docs/zh-CN/cli-reference#cli-commands)576* 运行 [`claude import` 或 `/import` 命令](/docs/zh-CN/cli-reference#cli-commands)

545* 运行 [`/skill-doctor`](/docs/zh-CN/skills#find-unused-skills) 或在 `/plugin` **Stats** 标签中打开其报告577* 运行 [`/skill-doctor`](/docs/zh-CN/skills#find-unused-skills) 或在 `/plugin` 的 **Stats** 选项卡中打开其报告

546* 同步为你的 claude.ai 账户启用的[技能](/docs/zh-CN/skills#where-synced-skills-load)和[插件](/docs/zh-CN/plugins/loading#synced-plugins)到你的终端会话中578* 将您的 claude.ai 账户中启用的 [skill](/docs/zh-CN/skills#where-synced-skills-load) 和[插件](/docs/zh-CN/plugins/loading#synced-plugins)同步到终端会话中

547* 使用[顾问工具](/docs/zh-CN/advisor#requirements)579* 使用 [advisor 工具](/docs/zh-CN/advisor#requirements)

548* 读取或回复[工件上的评论](/docs/zh-CN/artifacts#collect-comments-on-an-artifact)580* 阅读或回复 [Artifact 上的评论](/docs/zh-CN/artifacts#collect-comments-on-an-artifact)

549* 让 Claude 读取[其他组织的公开 Artifact](/docs/zh-CN/artifacts#read-an-artifact-shared-with-you)581* 让 Claude 读取[其他组织的公开 Artifact](/docs/zh-CN/artifacts#read-an-artifact-shared-with-you)

550* 让 Claude Code 探测 claude.ai 连接器服务器或 stdio 服务器是否支持 [MCP 协议修订版本 2026-07-28](/docs/zh-CN/mcp#mcp-client-runtimes),除非您设置 `MCP_PROTOCOL_NEGOTIATION=auto`582* 让 Claude Code 针对 [MCP 协议修订版 2026-07-28](/docs/zh-CN/mcp#mcp-client-runtimes) 探测 claude.ai 连接器服务器或 stdio 服务器,除非您设置了 `MCP_PROTOCOL_NEGOTIATION=auto`

551* 默认为 claude.ai 和 Console 账户在安装了 Git Bash 的 Windows 上获取 [PowerShell 工具](/docs/zh-CN/tools-reference#powershell-tool);Claude Code 通过 Git Bash 路由 shell 命令,除非你设置 `CLAUDE_CODE_USE_POWERSHELL_TOOL=1`。在没有 Git Bash 的 Windows 上,该工具保持启用583* 在安装了 Git Bash 的 Windows 上,为 claude.ai 和 Console 账户默认获得 [PowerShell 工具](/docs/zh-CN/tools-reference#powershell-tool);除非您设置了 `CLAUDE_CODE_USE_POWERSHELL_TOOL=1`,否则 Claude Code 会通过 Git Bash 执行 shell 命令。在未安装 Git Bash 的 Windows 上,该工具保持启用

552* 获取 [Claude 草拟的反馈](/docs/zh-CN/tools-reference#sendfeedback-tool-behavior),Claude Code 通过获取的标志来启用它584* 获得 [Claude 起草的反馈](/docs/zh-CN/tools-reference#sendfeedback-tool-behavior),该功能由 Claude Code 通过获取的标志启用

553* 让 Claude [将大型粘贴视为粘贴而非输入的文本](/docs/zh-CN/terminal-config#how-claude-treats-pasted-text);`[Pasted text #N]` 占位符后面的内容到达 Claude 时未标记585* 让 Claude [将大段粘贴内容视为粘贴而非键入的文本](/docs/zh-CN/terminal-config#how-claude-treats-pasted-text);`[Pasted text #N]` 占位符背后的内容将以无标记形式传给 Claude

554* 让 Claude Code [排除 MCP 工具,其输入架构 API 会拒绝](/docs/zh-CN/mcp#tools-with-invalid-input-schemas);它仍然发送架构,包含它的请求失败并显示[按工具位置命名的 400 错误](/docs/zh-CN/errors#tool-input-schema-is-invalid)586* 让 Claude Code [排除其输入 schema 会被 API 拒绝的 MCP 工具](/docs/zh-CN/mcp#tools-with-invalid-input-schemas);它仍会发送该 schema,包含该 schema 的请求会失败,并返回[按位置指明该工具的 400 错误](/docs/zh-CN/errors#tool-input-schema-is-invalid)

555 587 

556<h3 id="first-session-after-an-install-or-upgrade">588<h3 id="first-session-after-an-install-or-upgrade">

557 安装或升级后的第一个会话589 安装或升级后的首个会话

558</h3>590</h3>

559 591 

560在你安装 Claude Code 后的第一个会话中,或升级到添加功能的版本后,[特性标志门控功能](#features-that-need-feature-flag-fetching)可能会丢失。该会话也可能以不同的[权限模式](/docs/zh-CN/permission-modes#which-mode-a-session-starts-in)启动,而不是你后来的会话所做的那样。Claude Code 在该会话期间获取标志,所以你的下一个会话具有该功能和通常的起始权限模式。592在您安装 Claude Code 后,或升级到新增某项功能的版本后,首个会话中可能缺少[受标志控制的功能](#features-that-need-feature-flag-fetching)。该会话启动时的[权限模式](/docs/zh-CN/permission-modes#which-mode-a-session-starts-in)也可能与之后的会话不同。Claude Code 在该会话期间获取标志后,会将其保存在本机上,因此您在该机器上的下一个会话将具备该功能,并以通常的起始权限模式启动。

593 

594全新安装后,在非交互式会话(例如 `claude -p`、Agent SDK 或 VS Code 扩展)中,Claude Code 可能会在[选择起始权限模式](/docs/zh-CN/permission-modes#which-mode-a-session-starts-in)之前获取到标志,但并不总是会等待这些标志。

595 

596在以下这类设置中,首个会话之后的会话同样会在没有新获取标志的情况下启动:

597 

598* **每次运行都是全新环境**:如果每次运行都在 CI 容器中启动,或在任何没有先前会话所保存标志的其他环境中启动,那么每次运行都是首个会话

599* **使用网关令牌且没有 API 密钥**:如果您使用 `ANTHROPIC_AUTH_TOKEN` 进行身份验证且没有 API 密钥,并且 `ANTHROPIC_BASE_URL` 指向 Anthropic 以外的主机(例如 [LLM 网关](/docs/zh-CN/llm-gateway)),Claude Code 将没有可用于获取标志的凭据

561 600 

562在全新安装后,在非交互式会话中(例如 `claude -p`、Agent SDK 或 VS Code 扩展),Claude Code 仍然可以在[选择起始权限模式](/docs/zh-CN/permission-modes#which-mode-a-session-starts-in)之前获取标志。601要选择这些设置中会话启动时使用的权限模式,请参阅[以不同的权限模式启动](/docs/zh-CN/permission-modes#start-in-a-different-mode)。

563 602 

564<h2 id="see-also">603<h2 id="see-also">

565 另请参阅604 另请参阅

errors.md +19 −1

Details

366| `Invalid permission rule "..." was skipped: Malformed Tool(content) rule` | [配置警告](#malformed-tool-content-rule) |366| `Invalid permission rule "..." was skipped: Malformed Tool(content) rule` | [配置警告](#malformed-tool-content-rule) |

367| `... is not matched by file permission checks` | [配置警告](#is-not-matched-by-file-permission-checks) |367| `... is not matched by file permission checks` | [配置警告](#is-not-matched-by-file-permission-checks) |

368| `... has a wildcard before the rest of the command` | [配置警告](#has-a-wildcard-before-the-rest-of-the-command) |368| `... has a wildcard before the rest of the command` | [配置警告](#has-a-wildcard-before-the-rest-of-the-command) |

369| `Denying Bash also turns off the PowerShell tool, so Claude has neither` | [配置警告](#denying-bash-also-turns-off-the-powershell-tool) |

369| `CLAUDE_CODE_DISABLE_1M_CONTEXT is set, but the 200K limit isn't enforced` | [配置警告](#the-200k-limit-isnt-enforced) |370| `CLAUDE_CODE_DISABLE_1M_CONTEXT is set, but the 200K limit isn't enforced` | [配置警告](#the-200k-limit-isnt-enforced) |

370| `[claude-code:unrecognized_model]` | [配置警告](#unrecognized-model-id-on-a-request) |371| `[claude-code:unrecognized_model]` | [配置警告](#unrecognized-model-id-on-a-request) |

371| `Stale sandbox mask files left by a killed session` | [配置警告](#stale-sandbox-mask-files-left-by-a-killed-session) |372| `Stale sandbox mask files left by a killed session` | [配置警告](#stale-sandbox-mask-files-left-by-a-killed-session) |


846**要做什么:**847**要做什么:**

847 848 

848* 在 Pro 和 Max 上,在 claude.ai 的 [**Settings > Usage**](https://claude.ai/settings/usage) 中增加您的月度支出限制,或运行 `/usage-credits`849* 在 Pro 和 Max 上,在 claude.ai 的 [**Settings > Usage**](https://claude.ai/settings/usage) 中增加您的月度支出限制,或运行 `/usage-credits`

849* 在 Team 和 Enterprise 上,如果您管理计费,在 [**Admin settings > Usage**](https://claude.ai/admin-settings/usage) 中增加限制,或要求管理员这样做。`/usage-credits` 为您向您的管理员发送该请求850* 在 Team 和 Enterprise 上,如果您管理计费,在 [**Organization settings > Usage**](https://claude.ai/admin-settings/usage) 中增加限制,或要求管理员这样做。`/usage-credits` 为您向您的管理员发送该请求

850* 对于频道的限制,要求组织所有者或频道的管理员在 claude.ai 上提高它。请参阅 Claude Tag 文档中的 [Per-channel limits](https://claude.com/docs/claude-tag/admins/set-spend-limit#per-channel-limits)851* 对于频道的限制,要求组织所有者或频道的管理员在 claude.ai 上提高它。请参阅 Claude Tag 文档中的 [Per-channel limits](https://claude.com/docs/claude-tag/admins/set-spend-limit#per-channel-limits)

851* 如果消息命名您的计划窗口的重置时间,您可以改为等待它852* 如果消息命名您的计划窗口的重置时间,您可以改为等待它

852* 运行 `/usage` 查看您的计划窗口以及每个何时重置853* 运行 `/usage` 查看您的计划窗口以及每个何时重置


5642 5643 

5643在[后台会话](/docs/zh-CN/agent-view)中或使用 `--output-format json` 或 `stream-json` 时,Claude Code 将警告写入调试日志而不是 stderr,以保持机器读取的输出干净。使用 `--debug` 运行以在 `~/.claude/debug/<session-id>.txt` 处捕获它。在 v2.1.246 之前,Claude Code 接受这些规则而不警告。5644在[后台会话](/docs/zh-CN/agent-view)中或使用 `--output-format json` 或 `stream-json` 时,Claude Code 将警告写入调试日志而不是 stderr,以保持机器读取的输出干净。使用 `--debug` 运行以在 `~/.claude/debug/<session-id>.txt` 处捕获它。在 v2.1.246 之前,Claude Code 接受这些规则而不警告。

5644 5645 

5646<h3 id="denying-bash-also-turns-off-the-powershell-tool">

5647 拒绝 Bash 也会关闭 PowerShell 工具

5648</h3>

5649 

5650您移除了整个 Bash 工具,例如使用 `--disallowedTools Bash`,或在您的某个设置文件中使用裸 `Bash` 或 `Bash(*)` [拒绝规则](/docs/zh-CN/permissions#match-all-uses-of-a-tool)。在安装了 Git Bash 的 Windows 上,[拒绝 Bash 也会关闭 PowerShell 工具](/docs/zh-CN/tools-reference#bash-deny-rules-also-turn-off-the-powershell-tool),因此会话启动时没有任何 shell 工具。Claude Code 在启动时打印此警告:

5651 

5652```text theme={null}

5653Denying Bash also turns off the PowerShell tool, so Claude has neither. To use PowerShell, set CLAUDE_CODE_USE_POWERSHELL_TOOL=1.

5654```

5655 

5656**要做什么:**

5657 

5658* 要让 Claude 使用 PowerShell,请在您的环境中或设置文件的 `env` 块中将 [`CLAUDE_CODE_USE_POWERSHELL_TOOL`](/docs/zh-CN/env-vars) 设置为 `1`,如[启用 PowerShell 工具](/docs/zh-CN/tools-reference#enable-the-powershell-tool)所示。之后 PowerShell 工具会与您的 Bash 拒绝规则并存并保持启用。

5659* 要阻止特定命令而不是整个工具,请在同一设置文件或标志中将裸 `Bash` 条目替换为限定范围的规则,例如 `Bash(git push *)`。Claude 会保留 Bash 工具,而 PowerShell 工具会保持关闭,直到您同时设置该变量或添加限定范围的 [`PowerShell` 权限规则](/docs/zh-CN/permissions#powershell)。

5660 

5661在[后台会话](/docs/zh-CN/agent-view)中或使用 `--output-format json` 或 `stream-json` 时,Claude Code 将警告写入调试日志而不是 stderr。使用 `--debug` 运行以在 `~/.claude/debug/<session-id>.txt` 处捕获它。在 v2.1.287 之前,Claude Code 以同样的方式关闭 PowerShell 工具,但不打印警告。

5662 

5645<h3 id="crosssessioninbound-must-be-one-of-accept-hold-refuse">5663<h3 id="crosssessioninbound-must-be-one-of-accept-hold-refuse">

5646 crossSessionInbound 必须是 accept、hold 或 refuse 之一5664 crossSessionInbound 必须是 accept、hold 或 refuse 之一

5647</h3>5665</h3>

fast-mode.md +2 −2

Details

138* **仅限 Anthropic API 或订阅**:快速模式可通过 Anthropic 控制台 API 和使用使用额度的 Claude 订阅计划获得。它在 Amazon Bedrock、Google Cloud 的 Agent Platform、Microsoft Foundry 或 AWS 上的 Claude Platform 上不可用。控制台组织还必须[为您的组织配置快速模式访问权限](#enable-fast-mode-for-your-organization)。138* **仅限 Anthropic API 或订阅**:快速模式可通过 Anthropic 控制台 API 和使用使用额度的 Claude 订阅计划获得。它在 Amazon Bedrock、Google Cloud 的 Agent Platform、Microsoft Foundry 或 AWS 上的 Claude Platform 上不可用。控制台组织还必须[为您的组织配置快速模式访问权限](#enable-fast-mode-for-your-organization)。

139* **为订阅计划启用使用额度**:在 Pro、Max、Team 或 Enterprise 计划上,您的账户必须[启用使用额度](/docs/zh-CN/costs#add-usage-credits-to-your-subscription),这允许在您的计划包含的使用量之外进行计费。在启用之前,`/fast` 显示"Fast mode requires usage credits"。您启用它们的方式取决于您的计划:139* **为订阅计划启用使用额度**:在 Pro、Max、Team 或 Enterprise 计划上,您的账户必须[启用使用额度](/docs/zh-CN/costs#add-usage-credits-to-your-subscription),这允许在您的计划包含的使用量之外进行计费。在启用之前,`/fast` 显示"Fast mode requires usage credits"。您启用它们的方式取决于您的计划:

140 * 在 Pro 和 Max 上,在 claude.ai 上的[**Settings > Usage**](https://claude.ai/settings/usage)的**Usage credits**部分中启用它们,或运行 `/usage-credits` 来打开该页面。140 * 在 Pro 和 Max 上,在 claude.ai 上的[**Settings > Usage**](https://claude.ai/settings/usage)的**Usage credits**部分中启用它们,或运行 `/usage-credits` 来打开该页面。

141 * 在 Team 和 Enterprise 上,具有计费访问权限的成员在[**Admin settings > Usage**](https://claude.ai/admin-settings/usage)处为组织启用它们,没有访问权限的成员运行 `/usage-credits` 向组织的管理员发送请求。141 * 在 Team 和 Enterprise 上,具有计费访问权限的成员在[**Organization settings > Usage**](https://claude.ai/admin-settings/usage)处为组织启用它们,没有访问权限的成员运行 `/usage-credits` 向组织的管理员发送请求。

142 142 

143<Note>143<Note>

144 快速模式使用直接计入使用额度,即使您的计划上还有剩余使用量。144 快速模式使用直接计入使用额度,即使您的计划上还有剩余使用量。


165* **控制台**(API 客户):管理员在 [Claude Code 偏好设置](https://platform.claude.com/claude-code/preferences)中启用它。快速模式处于[研究预览](#research-preview)中,因此您的组织还必须在快速模式请求成功之前配置快速模式访问权限。要获得访问权限,请联系您的账户经理或加入等待列表,如[Claude API 上的快速模式](https://platform.claude.com/docs/en/build-with-claude/fast-mode)中所述。165* **控制台**(API 客户):管理员在 [Claude Code 偏好设置](https://platform.claude.com/claude-code/preferences)中启用它。快速模式处于[研究预览](#research-preview)中,因此您的组织还必须在快速模式请求成功之前配置快速模式访问权限。要获得访问权限,请联系您的账户经理或加入等待列表,如[Claude API 上的快速模式](https://platform.claude.com/docs/en/build-with-claude/fast-mode)中所述。

166 166 

167 没有配置的访问权限,API 会以 429 拒绝每个快速模式请求,Claude Code 会将每个拒绝视为[快速模式速率限制](#handle-rate-limits)。与速率限制的冷却时间不同,拒绝会继续,直到配置了访问权限。167 没有配置的访问权限,API 会以 429 拒绝每个快速模式请求,Claude Code 会将每个拒绝视为[快速模式速率限制](#handle-rate-limits)。与速率限制的冷却时间不同,拒绝会继续,直到配置了访问权限。

168* **Claude AI**(团队和企业):所有者在[管理员设置 > Claude Code](https://claude.ai/admin-settings/claude-code)中启用它168* **Claude AI**(团队和企业):所有者在[**Organization settings > Claude Code**](https://claude.ai/admin-settings/claude-code)中启用它

169 169 

170另一个完全禁用快速模式的选项是设置 `CLAUDE_CODE_DISABLE_FAST_MODE=1`。请参阅[环境变量](/docs/zh-CN/env-vars)。170另一个完全禁用快速模式的选项是设置 `CLAUDE_CODE_DISABLE_FAST_MODE=1`。请参阅[环境变量](/docs/zh-CN/env-vars)。

171 171 

Details

248| **Subagents** | 生成时 | 具有指定 skills 的新鲜上下文,或用于 [fork](/docs/zh-CN/sub-agents#fork-the-current-conversation) 的父对话 | 与主会话隔离 |248| **Subagents** | 生成时 | 具有指定 skills 的新鲜上下文,或用于 [fork](/docs/zh-CN/sub-agents#fork-the-current-conversation) 的父对话 | 与主会话隔离 |

249| **Hooks** | 触发时 | 无(外部运行) | 零,除非 hook 返回额外上下文 |249| **Hooks** | 触发时 | 无(外部运行) | 零,除非 hook 返回额外上下文 |

250 250 

251\*默认情况下,skill 描述在会话开始时加载,以便 Claude 可以决定何时使用它们。在 skill 的 frontmatter 中设置 `disable-model-invocation: true` 以将其完全隐藏在 Claude 中,直到您手动调用它。对于您未编写的 skill,在设置中设置 [`skillOverrides`](/docs/zh-CN/skills#override-skill-visibility-from-settings) 以在不编辑其文件的情况下执行相同操作。251\*在 skill 的 frontmatter 中设置 [`disable-model-invocation: true`](/docs/zh-CN/skills#control-who-invokes-a-skill),可使其描述不进入 Claude 的上下文。对于您未编写的 skill,在设置中设置 [`skillOverrides`](/docs/zh-CN/skills#override-skill-visibility-from-settings) 以在不编辑其文件的情况下执行相同操作。

252 252 

253<h3 id="understand-how-features-load">253<h3 id="understand-how-features-load">

254 了解功能如何加载254 了解功能如何加载


278 278 

279 **加载内容:** 对于模型可调用的 skills,Claude 在每个请求中看到名称和描述。当您使用 `/<name>` 调用 skill 或 Claude 自动加载它时,完整内容加载到您的对话中。279 **加载内容:** 对于模型可调用的 skills,Claude 在每个请求中看到名称和描述。当您使用 `/<name>` 调用 skill 或 Claude 自动加载它时,完整内容加载到您的对话中。

280 280 

281 **Claude 如何选择 skills:** Claude 将您的任务与 skill 描述相匹配,以决定哪些相关。如果描述模糊或重叠,Claude 可能加载错误的 skill 或错过会有帮助的 skill。要告诉 Claude 使用特定的 skill,请使用 `/<name>` 调用它。带有 `disable-model-invocation: true` 的 Skills 对 Claude 不可见,直到您调用它们。281 **Claude 如何选择 skill:** Claude 将您的任务与 skill 描述相匹配,以决定哪些相关。如果描述模糊或重叠,Claude 可能加载错误的 skill 或错过会有帮助的 skill。要告诉 Claude 使用特定的 skill,请使用 `/<name>` 调用它。

282 282 

283 **上下文成本:** 低,直到使用。仅用户 skills 在调用前成本为零。283 **上下文成本:** 低,直到使用。仅用户 skills 在调用前成本为零。

284 284 

285 **在 subagents 中:** Skills 在 subagents 中的工作方式不同。不是按需加载,而是在 subagent 的 `skills` 字段中列出的 skills 在启动时完全预加载到其上下文中。Subagents 仍然可以通过 Skill 工具发现和调用未列出的项目、用户和插件 skills。285 **在 subagents 中:** Skills 在 subagents 中的工作方式不同。不是按需加载,而是在 subagent 的 `skills` 字段中列出的 skills 在启动时完全预加载到其上下文中。Subagents 仍然可以通过 Skill 工具发现和调用未列出的项目、用户和插件 skills。

286 286 

287 <Tip>对于有副作用的 skills,使用 `disable-model-invocation: true`。这节省上下文并确保只有您触发它们。</Tip>287 <Tip>对于有副作用的 skill,使用 `disable-model-invocation: true`。这节省上下文并确保它们仅在您指名时运行。</Tip>

288 </Tab>288 </Tab>

289 289 

290 <Tab title="MCP 服务器">290 <Tab title="MCP 服务器">

fullscreen.md +1 −1

Details

109* **单击列表边缘的 `↑ N more` 或 `↓ N more` 行**以跳转到列表的该端,而不选择任何选项。需要 Claude Code v2.1.286 或更高版本。109* **单击列表边缘的 `↑ N more` 或 `↓ N more` 行**以跳转到列表的该端,而不选择任何选项。需要 Claude Code v2.1.286 或更高版本。

110* **单击折叠的工具结果**以展开它并查看完整输出。再次单击以折叠。工具调用及其结果一起展开。只有有更多内容要显示的消息才可点击。110* **单击折叠的工具结果**以展开它并查看完整输出。再次单击以折叠。工具调用及其结果一起展开。只有有更多内容要显示的消息才可点击。

111 * 单击也会展开 `!` shell 命令的输出,无论是较旧的截断结果还是命令运行时的实时进度行。需要 Claude Code v2.1.257 或更高版本。111 * 单击也会展开 `!` shell 命令的输出,无论是较旧的截断结果还是命令运行时的实时进度行。需要 Claude Code v2.1.257 或更高版本。

112 * 单击也会展开一条暗淡的 `Message from @<sender>` 行,当发送者是[队友](/docs/zh-CN/agent-teams)或在您的会话中运行的另一个代理时。来自[您的其他会话之一](/docs/zh-CN/cross-session-messaging#what-a-message-looks-like)的消息行也会显示消息的第一行,并且不可点击,因此按 `Ctrl+o` 来阅读那一条。112 * 当发送者是[队友](/docs/zh-CN/agent-teams)或在您的会话中运行的另一个 Agent 时,单击也会展开暗淡的 `Message from @<sender>` 行。

113* **在 macOS 上按住 `Cmd`,或在 Linux 和 Windows 上按住 `Ctrl`,然后单击 URL 或文件路径**以打开它。纯 `http://` 和 `https://` URL 在您的浏览器中打开,工具输出中的文件路径(如 Edit 或 Write 后打印的路径)在您的默认应用程序中打开。不带修饰符的纯单击不会打开链接,与本机终端行为相匹配。113* **在 macOS 上按住 `Cmd`,或在 Linux 和 Windows 上按住 `Ctrl`,然后单击 URL 或文件路径**以打开它。纯 `http://` 和 `https://` URL 在您的浏览器中打开,工具输出中的文件路径(如 Edit 或 Write 后打印的路径)在您的默认应用程序中打开。不带修饰符的纯单击不会打开链接,与本机终端行为相匹配。

114 * Claude Code 将网络 (UNC) 路径(例如 `\\server\share\file.ts`)呈现为纯文本,没有链接,因为打开网络路径可能会将您的 Windows 凭据发送到它命名的主机。114 * Claude Code 将网络 (UNC) 路径(例如 `\\server\share\file.ts`)呈现为纯文本,没有链接,因为打开网络路径可能会将您的 Windows 凭据发送到它命名的主机。

115 * 某些 macOS 终端会将 `Cmd`+单击转发给正在运行的应用程序,而不是自己打开链接,终端鼠标协议无法编码 `Cmd` 键,因此 Claude Code 收到纯单击。在 Ghostty 中,以及在 macOS 上的 Warp 中,Claude Code 检测到这一点,并让纯单击链接打开它,按住 `Cmd` 仍然有效。115 * 某些 macOS 终端会将 `Cmd`+单击转发给正在运行的应用程序,而不是自己打开链接,终端鼠标协议无法编码 `Cmd` 键,因此 Claude Code 收到纯单击。在 Ghostty 中,以及在 macOS 上的 Warp 中,Claude Code 检测到这一点,并让纯单击链接打开它,按住 `Cmd` 仍然有效。

Details

295 295 

296当这些检查发现您的项目无法调用的模型时,Claude Code 会在这台机器上记住该拒绝长达一天,并在此期间启动时跳过记住的模型,而不再询问 Agent Platform。Claude Code 会在距离上次检查已过十分钟后,再次检查当前默认模型的记住拒绝,因此管理员重新启用的默认值会恢复。要关闭此内存,请设置 [`CLAUDE_CODE_SKIP_MODEL_ACCESS_MEMORY=1`](/docs/zh-CN/env-vars)。296当这些检查发现您的项目无法调用的模型时,Claude Code 会在这台机器上记住该拒绝长达一天,并在此期间启动时跳过记住的模型,而不再询问 Agent Platform。Claude Code 会在距离上次检查已过十分钟后,再次检查当前默认模型的记住拒绝,因此管理员重新启用的默认值会恢复。要关闭此内存,请设置 [`CLAUDE_CODE_SKIP_MODEL_ACCESS_MEMORY=1`](/docs/zh-CN/env-vars)。

297 297 

298<h3 id="when-your-organization-enforces-a-model-allowlist">

299 当您的组织强制执行模型允许列表时

300</h3>

301 

302如果您在托管设置中设置了 [`enforceAvailableModels`](/docs/zh-CN/model-config#enforce-the-allowlist-for-the-default-model),启动模型检查将仅使用您的 `availableModels` 列表允许的模型。这需要 Claude Code v2.1.287 或更高版本。没有 `enforceAvailableModels` 的列表不会限制这些检查。

303 

304这些检查会将每个条目与它们将发送到 Agent Platform 的模型 ID 进行比较,因此请使用这些 ID 编写列表。此示例允许 Opus 4.8 和 Sonnet 4.5:

305 

306```json theme={null}

307{

308 "availableModels": ["claude-opus-4-8", "claude-sonnet-4-5@20250929"],

309 "enforceAvailableModels": true

310}

311```

312 

313有关别名、版本前缀和 `modelOverrides` 条目,请参阅[为第三方部署固定模型](/docs/zh-CN/model-config#pin-models-for-third-party-deployments)。

314 

298<h3 id="when-a-model-is-disabled-mid-session">315<h3 id="when-a-model-is-disabled-mid-session">

299 当模型在会话中途被禁用时316 当模型在会话中途被禁用时

300</h3>317</h3>

headless.md +1 −1

Details

59| 系统提示添加 | `--append-system-prompt`, `--append-system-prompt-file` |59| 系统提示添加 | `--append-system-prompt`, `--append-system-prompt-file` |

60| 设置 | `--settings <file-or-json>` |60| 设置 | `--settings <file-or-json>` |

61| MCP 服务器 | `--mcp-config <file-or-json>` |61| MCP 服务器 | `--mcp-config <file-or-json>` |

62| 自定义 agents | `--agents <json>` |62| [自定义 Agent](/docs/zh-CN/sub-agents#choose-the-subagent-scope) | `--agents <file-or-json>` |

63| 一个插件 | `--plugin-dir <path>`, `--plugin-url <url>` |63| 一个插件 | `--plugin-dir <path>`, `--plugin-url <url>` |

64 64 

65bare 模式还会限制会话运行期间发生的事情:65bare 模式还会限制会话运行期间发生的事情:

hooks.md +46 −10

Details

438| 字段 | 必需 | 描述 |438| 字段 | 必需 | 描述 |

439| :- | :- | :- |439| :- | :- | :- |

440| `type` | 是 | `"command"`、`"http"`、`"mcp_tool"`、`"prompt"` 或 `"agent"` |440| `type` | 是 | `"command"`、`"http"`、`"mcp_tool"`、`"prompt"` 或 `"agent"` |

441| `if` | 否 | 权限规则语法来过滤此 hook 何时运行,如 `"Bash(git *)"` 或 `"Edit(*.ts)"`。hook 命令仅在工具调用匹配模式时运行。请参阅下面的 [Bash 匹配表](#bash-if-matching) 了解 Bash 模式如何针对子命令、`$()` 和反引号进行评估。仅在工具事件上评估:`PreToolUse`、`PostToolUse`、`PostToolUseFailure`、`PermissionRequest` 和 `PermissionDenied`。在其他事件上,设置了 `if` 的 hook 永远不会运行。使用与 [权限规则](/docs/zh-CN/permissions) 相同的语法 |441| `if` | 否 | 用于过滤此 hook 何时运行的 [权限规则语法](/docs/zh-CN/permissions#permission-rule-syntax),如 `"Bash(git *)"` 或 `"Edit(*.ts)"`。hook 命令仅在工具调用匹配模式时运行。请参阅 [Bash 匹配表](#bash-if-matching) 了解 Bash 模式如何针对子命令、`$()` 和反引号进行评估。仅在工具事件上评估:`PreToolUse`、`PostToolUse`、`PostToolUseFailure`、`PermissionRequest` 和 `PermissionDenied`。在其他事件上,设置了 `if` 的 hook 永远不会运行 |

442| `timeout` | 否 | 取消前的秒数。Claude Code 不在您使用 [`async: true`](#run-hooks-in-the-background) 运行的命令 hook 上强制执行。默认值:`command`、`http` 和 `mcp_tool` 为 600;`prompt` 为 30;`agent` 为 60。Claude Code 在 [`UserPromptSubmit`](#userpromptsubmit)、[`PreModelSwitch`](#premodelswitch) 和 [`PostModelSwitch`](#postmodelswitch) 上将 `command`、`http` 和 `mcp_tool` 默认值降低到 30,在 [`MessageDisplay`](#messagedisplay) 上降低到 10。[`SessionEnd`](#sessionend) hooks 共享 1.5 秒的预算;如果您的设置设置了更长的每个 hook `timeout`,Claude Code 会提高预算以匹配,最多 60 秒 |442| `timeout` | 否 | 取消前的秒数。Claude Code 不在您使用 [`async: true`](#run-hooks-in-the-background) 运行的命令 hook 上强制执行。默认值:`command`、`http` 和 `mcp_tool` 为 600;`prompt` 为 30;`agent` 为 60。Claude Code 在 [`UserPromptSubmit`](#userpromptsubmit)、[`PreModelSwitch`](#premodelswitch) 和 [`PostModelSwitch`](#postmodelswitch) 上将 `command`、`http` 和 `mcp_tool` 默认值降低到 30,在 [`MessageDisplay`](#messagedisplay) 上降低到 10。[`SessionEnd`](#sessionend) hooks 共享 1.5 秒的预算;如果您的设置设置了更长的每个 hook `timeout`,Claude Code 会提高预算以匹配,最多 60 秒 |

443| `statusMessage` | 否 | hook 运行时显示的自定义微调消息 |443| `statusMessage` | 否 | hook 运行时显示的自定义微调消息 |

444| `once` | 否 | 如果为 `true`,Claude Code 在第一次成功运行后删除 hook。失败、以退出代码 2 阻止或超时的运行会将 hook 保留在原位,因此它在下一个匹配事件上再次运行。仅在 [技能 frontmatter](#hooks-in-skills-and-agents) 中声明的 hooks 上受尊重;在设置文件和代理 frontmatter 中被忽略 |444| `once` | 否 | 如果为 `true`,Claude Code 在第一次成功运行后删除 hook。失败、以退出代码 2 阻止或超时的运行会将 hook 保留在原位,因此它在下一个匹配事件上再次运行。仅在 [技能 frontmatter](#hooks-in-skills-and-agents) 中声明的 hooks 上受尊重;在设置文件和代理 frontmatter 中被忽略 |


447 447 

448在文件工具的 `if` 条件中,单段目录模式如 `"Edit(src/**)"` 仅匹配工作目录中的 `src` 目录及其下的文件。要匹配任何深度的名为 `src` 的目录,请写 `"Edit(**/src/**)"`。在 v2.1.214 之前,`"Edit(src/**)"` 匹配工作目录下任何深度的名为 `src` 的目录。448在文件工具的 `if` 条件中,单段目录模式如 `"Edit(src/**)"` 仅匹配工作目录中的 `src` 目录及其下的文件。要匹配任何深度的名为 `src` 的目录,请写 `"Edit(**/src/**)"`。在 v2.1.214 之前,`"Edit(src/**)"` 匹配工作目录下任何深度的名为 `src` 的目录。

449 449 

450<span id="bash-if-matching" />对于 Bash 模式,您的 hook 命令是否运行取决于模式的形状和 Claude 调用的 Bash 命令。匹配前会剥离前导 `VAR=value` 赋值。450<h4 id="bash-if-matching">

451 `if` 模式如何匹配 Bash 命令

452</h4>

453 

454对于 [`if` 字段](#common-fields) 中的 Bash 模式,您的 hook 命令是否运行取决于模式的形状和 Claude 调用的 Bash 命令。匹配前会剥离前导 `VAR=value` 赋值。

451 455 

452| `if` 模式 | Bash 命令 | Hook 运行? | 为什么 |456| `if` 模式 | Bash 命令 | Hook 运行? | 为什么 |

453| :- | :- | :- | :- |457| :- | :- | :- | :- |


1913 1917 

1914| 字段 | 类型 | 示例 | 描述 |1918| 字段 | 类型 | 示例 | 描述 |

1915| :- | :- | :- | :- |1919| :- | :- | :- | :- |

1916| `questions` | array | `[{"question": "Which framework?", "header": "Framework", "options": [{"label": "React"}], "multiSelect": false}]` | 要呈现的问题,每个问题包含一个 `question` 字符串、简短的 `header`、`options` 数组以及可选的 `multiSelect` 标志 |1920| `questions` | array | `[{"question": "Which framework?", "header": "Framework", "options": [{"label": "React", "description": "Component library"}, {"label": "Vue", "description": "Progressive framework"}], "multiSelect": false}]` | 要呈现的问题,每个问题包含一个 `question` 字符串、简短的 `header`、`options` 数组,以及可选的 `multiSelect` 标志 |

1917| `answers` | object | `{"Which framework?": "React"}` | 可选。将问题文本映射到所选选项的标签。多选答案以逗号连接标签。Claude 不会设置此字段;可通过 `updatedInput` 提供它以编程方式作答 |1921| `answers` | object | `{"Which framework?": "React"}` | 可选。将问题文本映射到所选选项的标签。多选答案以逗号连接标签。Claude 不会设置此字段;可通过 `updatedInput` 提供它以编程方式作答 |

1918 1922 

1919<h5 id="exitplanmode">1923<h5 id="exitplanmode">


1965}1969}

1966```1970```

1967 1971 

1968<span id="allow-with-updatedinput" />1972<Note>

1973 PreToolUse 以前使用顶层的 `decision` 和 `reason` 字段,但这些字段对于此事件已弃用。请改用 `hookSpecificOutput.permissionDecision` 和 `hookSpecificOutput.permissionDecisionReason`。已弃用的值 `"approve"` 和 `"block"` 分别映射到 `"allow"` 和 `"deny"`。PostToolUse 和 Stop 等其他事件继续使用顶层 `decision` 和 `reason` 作为其当前格式。

1974</Note>

1969 1975 

1970在使用 `-p` 标志的[非交互模式](/docs/zh-CN/headless)下,只有当运行具有接收提示的[权限宿主](/docs/zh-CN/headless#turn-off-permission-prompts-in-unattended-runs)(例如 Agent SDK 的 `canUseTool` 回调)时,Claude Code 才会提供 `AskUserQuestion` 和 `ExitPlanMode`。这些工具需要用户交互。同时返回 `permissionDecision: "allow"` 和 `updatedInput` 即可满足这一要求:hook 从 stdin 读取工具的输入,通过您自己的 UI 收集答案,并在 `updatedInput` 中返回,使工具无需提示即可运行。对于这些工具,仅返回 `"allow"` 是不够的。对于 `AskUserQuestion`,请回传原始的 `questions` 数组,并添加一个 [`answers`](#askuserquestion) 对象,将每个问题的文本映射到所选答案。1976<h4 id="allow-with-updatedinput">

1977 需要用户交互的工具

1978</h4>

1971 1979 

1972对于其服务器使用 [`_meta["anthropic/requiresUserInteraction"]`](/docs/zh-CN/mcp#require-approval-for-a-specific-tool) 标记的 MCP 工具,要求更为严格:hook 无法通过 `"allow"` 跳过其批准提示,无论是否带有 `updatedInput`,因为 Claude Code 无法确认 hook 是否收集了该工具所需的交互。1980`AskUserQuestion` 和 `ExitPlanMode` 需要用户交互。在使用 `-p` 标志的[非交互模式](/docs/zh-CN/headless)下,只有当运行具有接收提示的[权限宿主](/docs/zh-CN/headless#turn-off-permission-prompts-in-unattended-runs)(例如 Agent SDK 的 `canUseTool` 回调)时,Claude Code 才会提供它们。

1973 1981 

1974<Note>1982当 `PreToolUse` hook 执行以下操作时,即满足该要求:

1975 PreToolUse 之前使用顶层 `decision` 和 `reason` 字段,但这些字段在此事件中已弃用。请改用 `hookSpecificOutput.permissionDecision` 和 `hookSpecificOutput.permissionDecisionReason`。已弃用的值 `"approve"` 和 `"block"` 分别映射到 `"allow"` 和 `"deny"`。PostToolUse 和 Stop 等其他事件继续使用顶层 `decision` 和 `reason` 作为其当前格式。1983 

1976</Note>19841. 从 stdin 读取工具的输入

19852. 通过您自己的 UI 收集答案

19863. 返回 `permissionDecision: "allow"` 以及包含答案的 `updatedInput`,使工具在不提示的情况下运行

1987 

1988对于这些工具,仅返回 `"allow"` 是不够的。

1989 

1990对于 `AskUserQuestion`,请回传原始的 `questions` 数组,并添加一个 [`answers`](#askuserquestion) 对象,将每个问题的文本映射到所选答案。以下输出用 `React` 回答了一个问题:

1991 

1992```json theme={null}

1993{

1994 "hookSpecificOutput": {

1995 "hookEventName": "PreToolUse",

1996 "permissionDecision": "allow",

1997 "updatedInput": {

1998 "questions": [

1999 {

2000 "question": "Which framework?",

2001 "header": "Framework",

2002 "options": [{"label": "React", "description": "Component library"}, {"label": "Vue", "description": "Progressive framework"}],

2003 "multiSelect": false

2004 }

2005 ],

2006 "answers": {"Which framework?": "React"}

2007 }

2008 }

2009}

2010```

2011 

2012对于其服务器使用 [`_meta["anthropic/requiresUserInteraction"]`](/docs/zh-CN/mcp#require-approval-for-a-specific-tool) 标记的 MCP 工具,要求更为严格:hook 无法通过 `"allow"` 跳过其批准提示,无论是否带有 `updatedInput`,因为 Claude Code 无法确认 hook 是否收集了该工具所需的交互。

1977 2013 

1978<h4 id="defer-a-tool-call-for-later">2014<h4 id="defer-a-tool-call-for-later">

1979 延迟工具调用以便稍后处理2015 延迟工具调用以便稍后处理


2000 "deferred_tool_use": {2036 "deferred_tool_use": {

2001 "id": "toolu_01abc",2037 "id": "toolu_01abc",

2002 "name": "AskUserQuestion",2038 "name": "AskUserQuestion",

2003 "input": { "questions": [{ "question": "Which framework?", "header": "Framework", "options": [{"label": "React"}, {"label": "Vue"}], "multiSelect": false }] }2039 "input": { "questions": [{ "question": "Which framework?", "header": "Framework", "options": [{"label": "React", "description": "Component library"}, {"label": "Vue", "description": "Progressive framework"}], "multiSelect": false }] }

2004 }2040 }

2005}2041}

2006```2042```

Details

470* 你的账户接近或已达到使用限制。要在达到限制之前保持建议开启,请将 [`CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION`](/docs/zh-CN/env-vars) 设置为 `true`。在 v2.1.238 之前,Claude Code 即使将变量设置为 `true` 也会在接近限制时跳过建议470* 你的账户接近或已达到使用限制。要在达到限制之前保持建议开启,请将 [`CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION`](/docs/zh-CN/env-vars) 设置为 `true`。在 v2.1.238 之前,Claude Code 即使将变量设置为 `true` 也会在接近限制时跳过建议

471* 在[代理团队](/docs/zh-CN/agent-teams)中,默认情况下在队友的会话中。主导的会话显示建议471* 在[代理团队](/docs/zh-CN/agent-teams)中,默认情况下在队友的会话中。主导的会话显示建议

472 472 

473提示 `Showing fewer prompt suggestions · use one to bring them back` 表示由于您连续多次未使用建议,Claude Code 正在降低显示建议的频率。要恢复正常频率,请使用一个建议,或将 [`CLAUDE_CODE_ENABLE_PROMPT_SUGGESTION`](/docs/zh-CN/env-vars) 设置为 `true`。

474 

473在打印模式下,Claude Code 默认不生成建议。使用 [`--prompt-suggestions`](/docs/zh-CN/cli-reference#cli-flags) 与 `-p "<prompt>" --output-format stream-json --verbose` 一起传递,以使 Claude Code 在生成建议的每一轮之后发出 `prompt_suggestion` 消息。生成器在这里也会跳过非常短的对话和冷提示缓存,因此单个短的 `-p` 查询可能不会发出任何建议。475在打印模式下,Claude Code 默认不生成建议。使用 [`--prompt-suggestions`](/docs/zh-CN/cli-reference#cli-flags) 与 `-p "<prompt>" --output-format stream-json --verbose` 一起传递,以使 Claude Code 在生成建议的每一轮之后发出 `prompt_suggestion` 消息。生成器在这里也会跳过非常短的对话和冷提示缓存,因此单个短的 `-p` 查询可能不会发出任何建议。

474 476 

475<h3 id="turn-prompt-suggestions-off">477<h3 id="turn-prompt-suggestions-off">

keybindings.md +4 −0

Details

464| :- | :- | :- |464| :- | :- | :- |

465| `agents:switchView` | Ctrl+S | 在状态和目录之间切换 [会话分组](/docs/zh-CN/agent-view#organize-the-list) |465| `agents:switchView` | Ctrl+S | 在状态和目录之间切换 [会话分组](/docs/zh-CN/agent-view#organize-the-list) |

466| `agents:togglePin` | Ctrl+T | [固定或取消固定](/docs/zh-CN/agent-view#organize-the-list) 选定的会话 |466| `agents:togglePin` | Ctrl+T | [固定或取消固定](/docs/zh-CN/agent-view#organize-the-list) 选定的会话 |

467| `agents:find` | Ctrl+F | 使用 [`n:` 筛选器](/docs/zh-CN/agent-view#filter-sessions) 按名称查找会话。需要 v2.1.288 或更高版本 |

468| `agents:rename` | Ctrl+R | [重命名](/docs/zh-CN/agent-view#organize-the-list) 选定的会话。需要 v2.1.288 或更高版本 |

469| `agents:previousGroup` | Ctrl+Up, Meta+Up | 跳到上一个 [分组标题](/docs/zh-CN/agent-view#organize-the-list)。需要 v2.1.288 或更高版本 |

470| `agents:nextGroup` | Ctrl+Down, Meta+Down | 跳到下一个分组标题。需要 v2.1.288 或更高版本 |

467 471 

468当 agent 视图打开时,Claude Code 对 `Agents` 上下文绑定的任何键使用 `Agents` 绑定,并忽略同一键上的 `Chat` 或 `Global` 绑定。例如,在 agent 视图中按 Ctrl+S 会切换会话分组,而不是触发默认的 `chat:stash`。472当 agent 视图打开时,Claude Code 对 `Agents` 上下文绑定的任何键使用 `Agents` 绑定,并忽略同一键上的 `Chat` 或 `Global` 绑定。例如,在 agent 视图中按 Ctrl+S 会切换会话分组,而不是触发默认的 `chat:stash`。

469 473 

managed-mcp.md +61 −29

Details

282 282 

283允许列表和拒绝列表过滤哪些已配置的服务器可以加载。它们不是注册表:服务器仍然必须由用户、插件或您的组织添加,然后任一列表才能应用于它。283允许列表和拒绝列表过滤哪些已配置的服务器可以加载。它们不是注册表:服务器仍然必须由用户、插件或您的组织添加,然后任一列表才能应用于它。

284 284 

285您的组织通过 `managedMcpServers` 提供的服务器无需允许列表条目即可加载,[服务器如何被评估](#how-a-server-is-evaluated)涵盖 `managed-mcp.json` 服务器。拒绝列表适用于每个服务器,无论它来自何处,除了进程内 `type: "sdk"` 条目。285您的组织通过 `managedMcpServers` 提供的服务器无需允许列表条目即可加载,[跳过允许列表检查的服务器](#servers-that-skip-the-allowlist-check)涵盖 `managed-mcp.json` 服务器。拒绝列表适用于每个服务器,无论它来自何处,除了进程内 `type: "sdk"` 条目。

286 286 

287要将服务器部署给用户,请使用 [`managed-mcp.json`](#exclusive-control-with-managed-mcp-json) 或 [`managedMcpServers`](#provide-servers-through-managed-settings)。两个列表也过滤通过 [`--mcp-config` CLI 标志](/docs/zh-CN/cli-reference#cli-flags)传递的服务器,除了进程内 `type: "sdk"` 条目;`--strict-mcp-config` 限制哪些配置文件加载,不会绕过任一列表。287要将服务器部署给用户,请使用 [`managed-mcp.json`](#exclusive-control-with-managed-mcp-json) 或 [`managedMcpServers`](#provide-servers-through-managed-settings)。两个列表也过滤通过 [`--mcp-config` CLI 标志](/docs/zh-CN/cli-reference#cli-flags)传递的服务器,除了进程内 `type: "sdk"` 条目;`--strict-mcp-config` 限制哪些配置文件加载,不会绕过任一列表。

288 288 


308| :- | :- | :- |308| :- | :- | :- |

309| `serverUrl` | 远程服务器 URL,精确或带有 `*` 通配符 | HTTP 和 SSE 服务器 |309| `serverUrl` | 远程服务器 URL,精确或带有 `*` 通配符 | HTTP 和 SSE 服务器 |

310| `serverCommand` | 启动 stdio 服务器的确切命令和参数 | Stdio 服务器 |310| `serverCommand` | 启动 stdio 服务器的确切命令和参数 | Stdio 服务器 |

311| `serverName` | 用户分配的标签。仅精确匹配;通配符不展开 | 任一类型,但请参阅下面的警告 |311| `serverName` | 用户分配的标签。仅精确匹配;通配符不展开 | 任一类型,但请参阅[`serverName` 条目如何匹配](#how-servername-entries-match) |

312 312 

313将 `allowedMcpServers` 保留未设置与将其设置为空数组不同:313将 `allowedMcpServers` 保留未设置与将其设置为空数组不同:

314 314 

315| 设置 | 未设置(默认) | 空数组 `[]` | 已填充 |315| 设置 | 未设置(默认) | 空数组 `[]` | 已填充 |

316| :- | :- | :- | :- |316| :- | :- | :- | :- |

317| `allowedMcpServers` | 允许所有服务器 | 不允许任何服务器,除了[那些跳过允许列表检查的](#how-a-server-is-evaluated) | 仅允许匹配的服务器,除了[那些跳过允许列表检查的](#how-a-server-is-evaluated) |317| `allowedMcpServers` | 允许所有服务器 | 不允许任何服务器,除了[那些跳过允许列表检查的](#servers-that-skip-the-allowlist-check) | 仅允许匹配的服务器,除了[那些跳过允许列表检查的](#servers-that-skip-the-allowlist-check) |

318| `deniedMcpServers` | 不阻止任何服务器 | 不阻止任何服务器 | 阻止匹配的服务器 |318| `deniedMcpServers` | 不阻止任何服务器 | 不阻止任何服务器 | 阻止匹配的服务器 |

319 319 

320有关条目未通过架构验证时会发生什么,请参阅[托管设置中的无效条目](/docs/zh-CN/managed-settings#invalid-entries-in-managed-settings)。320有关条目未通过架构验证时会发生什么,请参阅[托管设置中的无效条目](/docs/zh-CN/managed-settings#invalid-entries-in-managed-settings)。

321 321 

322<h4 id="how-servername-entries-match">

323 `serverName` 条目如何匹配

324</h4>

325 

326`serverName` 条目精确匹配用户分配的标签,不支持通配符。

327 

322<Warning>328<Warning>

323 任一列表中的 `serverName` 条目不是安全控制。该名称是用户在运行 `claude mcp add` 或编辑配置文件时分配的标签,而不是底层服务器,因此用户可以将任何服务器称为 `github`。对于 claude.ai 连接器,名称是 claude.ai 返回的显示名称,可能会更改。要强制执行实际运行的服务器,请添加 `serverCommand` 或 `serverUrl` 条目。329 任一列表中的 `serverName` 条目不是安全控制。该名称是用户在运行 `claude mcp add` 或编辑配置文件时分配的标签,而不是底层服务器,因此用户可以将任何服务器称为 `github`。对于 claude.ai 连接器,名称是 claude.ai 返回的显示名称,可能会更改。要强制执行实际运行的服务器,请添加 `serverCommand` 或 `serverUrl` 条目。

324</Warning>330</Warning>


330 336 

331要关闭 Claude Code 自身获取的所有 claude.ai 连接器,请参阅 [`disableClaudeAiConnectors`](/docs/zh-CN/mcp#disable-claude-ai-connectors)。337要关闭 Claude Code 自身获取的所有 claude.ai 连接器,请参阅 [`disableClaudeAiConnectors`](/docs/zh-CN/mcp#disable-claude-ai-connectors)。

332 338 

333<h3 id="how-a-server-is-evaluated">339<h4 id="how-servercommand-entries-match">

334 服务器如何被评估340 `serverCommand` 条目如何匹配

335</h3>341</h4>

336 

337在加载服务器之前,包括来自 `managed-mcp.json` 的服务器,Claude Code 按顺序运行以下三个检查。当用户重新连接服务器或在 `/mcp` 中打开已禁用的服务器时,它会再次运行它们。进程内 `type: "sdk"` 服务器([启动会话的应用程序注册](/docs/zh-CN/mcp#how-connectors-reach-claude-code))跳过全部三个。

338 

3391. **合并列表。** 来自每个设置范围的允许列表和拒绝列表条目合并为一个允许列表和一个拒绝列表。当 `allowManagedMcpServersOnly` 为 `true` 时,仅保留托管允许列表;拒绝列表始终从每个范围合并。当存在多个托管源时,[从每个管理员源读取的键](/docs/zh-CN/managed-settings#keys-read-from-every-admin-source)说明其中哪些提供托管范围的列表。

3402. **检查拒绝列表。** 与任何拒绝列表条目匹配的服务器(按 URL、命令或名称)被阻止。没有任何东西可以覆盖拒绝列表匹配。

3413. **检查允许列表。** 如果 `allowedMcpServers` 未在任何地方设置,每个通过拒绝列表的服务器都会加载。如果已设置,服务器必须匹配的内容取决于其类型,如下表所示。

342 

343 三组服务器跳过此检查:

344 342 

345 * 组织自己的服务器:每个 `managedMcpServers` 条目,以及任何 `managed-mcp.json` 条目,其值不使用 `${VAR}` 展开。343`serverCommand` 条目将命令及其参数保存为一个数组,如 `{ "serverCommand": ["npx", "-y", "server"] }`。Claude Code 将该数组与服务器配置中的命令和参数进行比较:

346 * 内置服务器,例如 Chrome 中的 Claude、Claude Code 在运行的 VS Code 或 JetBrains IDE 中连接的 `ide` 服务器,以及 CLI 本身配置的服务器。

347 * [Claude Tag](/docs/zh-CN/claude-tag) 会话的 Slack 工具:它用来读取线程和发布回复的服务器无需允许列表条目即可加载。

348 344 

349 使用 `${VAR}` 展开的 `managed-mcp.json` 服务器在其命令、参数、`env`、URL 或标头中仍会被检查。用户、插件或 claude.ai 添加的每个服务器也是如此,以及用户通过 `--mcp-config` 传递的每个服务器。345* **命令精确匹配。** 每个参数,按顺序。`["npx", "-y", "server"]` 不匹配 `["npx", "server"]` 或 `["npx", "-y", "server", "--flag"]`。

346* **不比较 `env` 块。** `["node", "server.js"]` 匹配以任何 `env` 值运行该命令的服务器。某些环境变量会改变 `node` 在启动时加载的内容。要自行设置 `env` 值,请在 [`managed-mcp.json`](#exclusive-control-with-managed-mcp-json) 中定义该服务器。

350 347 

351| 服务器类型 | 匹配时允许 |348<h4 id="how-serverurl-entries-match">

352| :- | :- |349 `serverUrl` 条目如何匹配

353| 远程(HTTP 或 SSE) | 一个 `serverUrl` 条目。仅当允许列表不包含 `serverUrl` 条目时,`serverName` 匹配才计数 |350</h4>

354| Stdio | 一个 `serverCommand` 条目。仅当允许列表不包含 `serverCommand` 条目时,`serverName` 匹配才计数 |

355 351 

356这些检查中应用三个匹配规则:352URL 支持在模式中的任何位置使用 `*` 通配符,包括方案。主机名匹配不区分大小写,忽略尾部 FQDN 点,因此 `https://Mcp.Example.com/*` 匹配 `https://mcp.example.com/api`。路径保持区分大小写。

357 353 

358* **命令精确匹配。** 每个参数,按顺序。`["npx", "-y", "server"]` 不匹配 `["npx", "server"]` 或 `["npx", "-y", "server", "--flag"]`。354下表显示常见模式允许的内容:

359* **`serverCommand` 和 `serverUrl` 值在匹配前展开。** 策略条目和服务器的配置值都通过 [`${VAR}` 和 `${VAR:-default}` 展开](/docs/zh-CN/mcp#environment-variable-expansion-in-mcp-json),因此写成 `["${HOME}/bin/server"]` 的条目与使用相同引用或展开路径的服务器配置匹配。在 Windows 上,引用在那里设置的环境变量,例如 `${USERPROFILE}` 而不是 `${HOME}`。`serverName` 值按字面匹配,永不展开。两边读取不同的环境;[策略条目如何展开](#how-policy-entries-expand)涵盖哪个以及允许列表和拒绝列表条目如何不同。

360* **URL 支持 `*` 通配符**在模式中的任何地方,包括方案。主机名匹配不区分大小写,忽略尾部 FQDN 点,因此 `https://Mcp.Example.com/*` 匹配 `https://mcp.example.com/api`。路径保持区分大小写。

361 355 

362| 模式 | 允许 |356| 模式 | 允许 |

363| :- | :- |357| :- | :- |


368| `*://mcp.example.com/*` | 到特定域的任何方案 |362| `*://mcp.example.com/*` | 到特定域的任何方案 |

369 363 

370<h4 id="how-policy-entries-expand">364<h4 id="how-policy-entries-expand">

371 策略条目如何展开365 `serverCommand` 和 `serverUrl` 条目中的环境变量

372</h4>366</h4>

373 367 

374服务器的配置值从实时进程环境展开,就像 `.mcp.json` 的其余部分一样。策略条目从固定环境展开,因此由项目或用户设置文件设置的变量无法更改允许列表条目的含义。因为策略条目仍然取决于启动 shell 对其引用的任何变量的值,对于您依赖的条目以进行强制执行,请使用字面 URL 和命令。368`serverCommand` 和 `serverUrl` 值在匹配前展开。策略条目和服务器的配置值都通过 [`${VAR}` 和 `${VAR:-default}` 展开](/docs/zh-CN/mcp#environment-variable-expansion-in-mcp-json),因此写成 `["${HOME}/bin/server"]` 的条目与使用相同引用或展开路径的服务器配置匹配。`serverName` 值按字面匹配,永不展开。

369 

370两边读取不同的环境:

371 

372* **服务器的配置值**:从实时进程环境展开,就像 `.mcp.json` 的其余部分一样

373* **策略条目**:从固定环境展开,因此由项目或用户设置文件设置的变量无法更改允许列表条目的含义

374 

375因为策略条目仍然取决于启动 shell 对其引用的任何变量的值,对于您依赖的条目以进行强制执行,请使用字面 URL 和命令。

376 

377在 Windows 上,引用在那里设置的环境变量,例如 `${USERPROFILE}` 而不是 `${HOME}`。

378 

379两个列表的展开方式不同:

375 380 

376| 条目列表 | 展开自 | 会改变 URL 条目的方案、主机或路径范围的展开 |381| 条目列表 | 展开自 | 会改变 URL 条目的方案、主机或路径范围的展开 |

377| - | - | - |382| - | - | - |

378| `allowedMcpServers` | Claude Code 启动时的环境,加上来自托管设置的 `env` 值 | Claude Code 忽略该条目 |383| `allowedMcpServers` | Claude Code 启动时的环境,加上来自托管设置的 `env` 值 | Claude Code 忽略该条目 |

379| `deniedMcpServers` | 相同,以及没有启动值且没有 `:-default` 的变量从存储库外的设置文件(如用户或托管设置)填充,这只会扩大条目匹配的内容 | 该条目仍然匹配 |384| `deniedMcpServers` | 相同,以及没有启动值且没有 `:-default` 的变量从存储库外的设置文件(如用户或托管设置)填充,这只会扩大条目匹配的内容 | 该条目仍然匹配 |

380 385 

381需要 Claude Code v2.1.219 或更高版本。386固定环境和此表中的规则需要 Claude Code v2.1.219 或更高版本。

387 

388<h3 id="how-a-server-is-evaluated">

389 服务器如何被评估

390</h3>

391 

392在加载服务器之前,包括来自 `managed-mcp.json` 的服务器,Claude Code 按顺序运行以下三个检查。当用户重新连接服务器或在 `/mcp` 中打开已禁用的服务器时,它会再次运行它们。进程内 `type: "sdk"` 服务器([启动会话的应用程序注册](/docs/zh-CN/mcp#how-connectors-reach-claude-code))跳过全部三个。

393 

3941. **合并列表。** 来自每个设置作用域的允许列表和拒绝列表条目合并为一个允许列表和一个拒绝列表。当 `allowManagedMcpServersOnly` 为 `true` 时,仅保留托管允许列表;拒绝列表始终从每个作用域合并。当存在多个托管源时,[从每个管理员源读取的键](/docs/zh-CN/managed-settings#keys-read-from-every-admin-source)说明其中哪些提供托管作用域的列表。

3952. **检查拒绝列表。** 与任何拒绝列表条目匹配的服务器(按 URL、命令或名称)被阻止。没有任何东西可以覆盖拒绝列表匹配。

3963. **检查允许列表。** [某些服务器跳过此检查](#servers-that-skip-the-allowlist-check)。如果 `allowedMcpServers` 未在任何地方设置,每个通过拒绝列表的服务器都会加载。如果已设置,服务器必须匹配的内容取决于其类型,如下表所示。

397 

398| 服务器类型 | 匹配时允许 |

399| :- | :- |

400| 远程(HTTP 或 SSE) | 一个 `serverUrl` 条目。仅当允许列表不包含 `serverUrl` 条目时,`serverName` 匹配才计数 |

401| Stdio | 一个 `serverCommand` 条目。仅当允许列表不包含 `serverCommand` 条目时,`serverName` 匹配才计数 |

402 

403<h4 id="servers-that-skip-the-allowlist-check">

404 跳过允许列表检查的服务器

405</h4>

406 

407除了跳过[全部三个检查](#how-a-server-is-evaluated)的进程内 `type: "sdk"` 服务器之外,还有三组服务器跳过允许列表检查:

408 

409* 组织自己的服务器:每个 `managedMcpServers` 条目,以及任何其值不使用 `${VAR}` 展开的 `managed-mcp.json` 条目。

410* 内置服务器,例如 Chrome 中的 Claude、Claude Code 在运行的 VS Code 或 JetBrains IDE 中连接的 `ide` 服务器,以及 CLI 本身配置的服务器。

411* [Claude Tag](/docs/zh-CN/claude-tag) 会话的 Slack 工具:它用来读取线程和发布回复的服务器无需允许列表条目即可加载。

412 

413在其命令、参数、`env`、URL 或标头中使用 `${VAR}` 展开的 `managed-mcp.json` 服务器仍会被检查。Claude Code 还会检查用户、插件或 claude.ai 添加的每个服务器,以及用户通过 `--mcp-config` 传递的每个服务器。

382 414 

383<h3 id="example-configuration">415<h3 id="example-configuration">

384 示例配置416 示例配置

Details

227| 限制允许列表 | 从设置它的最高排名源整体取值,不添加来自较低源的条目 | `availableModels`、`allowedMcpServers`、`strictKnownMarketplaces`、`allowedChannelPlugins` 和 `fallbackModel` 链 |227| 限制允许列表 | 从设置它的最高排名源整体取值,不添加来自较低源的条目 | `availableModels`、`allowedMcpServers`、`strictKnownMarketplaces`、`allowedChannelPlugins` 和 `fallbackModel` 链 |

228| 整体取值 | 从设置它的最高排名源整体取值,不组合来自较低源的条目或字段 | `sandbox.credentials.awsPairs`、`sandbox.ripgrep` |228| 整体取值 | 从设置它的最高排名源整体取值,不组合来自较低源的条目或字段 | `sandbox.credentials.awsPairs`、`sandbox.ripgrep` |

229| 提供的 MCP 服务器 | 组合来自每个源的服务器名称;当两个源设置相同的名称时,应用较高排名源的整个条目 | `managedMcpServers` |229| 提供的 MCP 服务器 | 组合来自每个源的服务器名称;当两个源设置相同的名称时,应用较高排名源的整个条目 | `managedMcpServers` |

230| 仅从最高排名源读取的键 | 忽略每个较低源中的键,即使最高排名源未设置它 | 凭证助手如 `apiKeyHelper`、登录 pin 如 `forceLoginOrgUUID`、`modelPicker`、`permissions.defaultMode` |230| 仅从最高排名源读取的键 | 忽略每个较低源中的键,即使最高排名源未设置它 | 凭据助手如 `apiKeyHelper`、登录 pin 如 `forceLoginOrgUUID`、`modelPicker`、`permissions.defaultMode` |

231| `env` | 在任一设置下跨管理员源按变量合并,如 [从每个管理员源读取的键](#keys-read-from-every-admin-source) 所述 | |231| `env` | 在任一设置下跨管理员源按变量合并,如 [从每个管理员源读取的键](#keys-read-from-every-admin-source) 所述 | |

232| 所有其他键 | 从设置它的最高排名源取值 | `model`、`cleanupPeriodDays` |232| 所有其他键 | 从设置它的最高排名源取值 | `model`、`cleanupPeriodDays` |

233 233 


266Claude Code 也对父提供的值本身应用这些检查:266Claude Code 也对父提供的值本身应用这些检查:

267 267 

268* 当任何管理员源设置 `allowManagedPermissionRulesOnly` 时,Claude Code 会删除 [父提供的](/docs/zh-CN/claude-apps-gateway#restrict-parent-settings) 权限允许规则和 `additionalDirectories`,即使较高优先级源未设置该键。该键对您自己的权限规则的影响来自 Claude Code 应用的托管设置,或来自您选择合并的父设置268* 当任何管理员源设置 `allowManagedPermissionRulesOnly` 时,Claude Code 会删除 [父提供的](/docs/zh-CN/claude-apps-gateway#restrict-parent-settings) 权限允许规则和 `additionalDirectories`,即使较高优先级源未设置该键。该键对您自己的权限规则的影响来自 Claude Code 应用的托管设置,或来自您选择合并的父设置

269* Claude Code 强制执行它应用的托管设置中的 `forceLoginOrgUUID` 或 `allowedMcpServers` 值,并阻止父提供的值。Claude Code 不应用的较低管理员源中的值既不应用也不阻止父的值。在 MCP 允许列表锁之外,Claude Code 不应用的较低管理员源中的值既不应用也不阻止父的值。269* Claude Code 强制执行它应用的托管设置中的 `forceLoginOrgUUID` 或 `allowedMcpServers` 值,并阻止父提供的值。在 MCP 允许列表锁之外,Claude Code 不应用的较低管理员源中的值既不应用也不阻止父的值。

270 270 

271 在 Claude Code v2.1.273 或更高版本上,当 `allowManagedMcpServersOnly` 打开时,来自设置一个的最高排名管理员源的 `allowedMcpServers` 列表应用并阻止父的,作为 [跨源键](#keys-read-from-every-admin-source)。父的列表仅在没有管理员源设置一个时应用。[`managedSourcesBehavior`](/docs/zh-CN/settings-reference#managedsourcesbehavior) 条目说明在 `"merge"` 下哪个源提供每个键。在 v2.1.223 之前,任何管理员源中的值都会阻止父的值271 在 Claude Code v2.1.273 或更高版本上,当 `allowManagedMcpServersOnly` 打开时,来自设置一个的最高排名管理员源的 `allowedMcpServers` 列表应用并阻止父的,作为 [跨源键](#keys-read-from-every-admin-source)。父的列表仅在没有管理员源设置一个时应用。[`managedSourcesBehavior`](/docs/zh-CN/settings-reference#managedsourcesbehavior) 条目说明在 `"merge"` 下哪个源提供每个键。在 v2.1.223 之前,任何管理员源中的值都会阻止父的值

272* 对于 `availableModels`,Claude Code 强制执行它应用的托管设置中的值并阻止父提供的列表272* 对于 `availableModels`,Claude Code 强制执行它应用的托管设置中的值并阻止父提供的列表

273* 对于 `strictKnownMarketplaces`,Claude Code 同样强制执行它应用的托管设置中的列表并阻止父提供的列表。父的列表仅在没有应用的托管源设置一个时应用。需要 Claude Code v2.1.282 或更高版本273* 对于 `strictKnownMarketplaces`,Claude Code 同样强制执行它应用的托管设置中的列表并阻止父提供的列表。父的列表仅在没有应用的托管源设置一个时应用。需要 Claude Code v2.1.282 或更高版本

274* 对于 `allowedProviders`,[选定的托管源](#which-managed-source-claude-code-uses) 中的列表会阻止父提供的列表;在选择启用 [`managedSourcesBehavior`](/docs/zh-CN/settings-reference#managedsourcesbehavior) `"merge"` 时,任何管理员源中的列表都会阻止父提供的列表。需要 Claude Code v2.1.285 或更高版本

274* 父提供的 `blockedMarketplaces` 除了托管源设置的任何阻止列表外还适用。需要 Claude Code v2.1.282 或更高版本275* 父提供的 `blockedMarketplaces` 除了托管源设置的任何阻止列表外还适用。需要 Claude Code v2.1.282 或更高版本

275 276 

276<h4 id="keep-cowork-folder-access-when-only-managed-rules-apply">277<h4 id="keep-cowork-folder-access-when-only-managed-rules-apply">


301开发人员自己的设置文件、`--settings` 值和项目文件永远不会覆盖托管值;[异常](/docs/zh-CN/settings#exceptions-to-managed-settings-precedence) 仅让更严格的较低级别值计数。这些情况在该规则之外:302开发人员自己的设置文件、`--settings` 值和项目文件永远不会覆盖托管值;[异常](/docs/zh-CN/settings#exceptions-to-managed-settings-precedence) 仅让更严格的较低级别值计数。这些情况在该规则之外:

302 303 

303* **会话的模型**:托管的 `model` 是默认值,不是锁。`--model` 和 `ANTHROPIC_MODEL` 仍然为该会话选择模型,因此部署 [`availableModels`](/docs/zh-CN/settings-reference#availablemodels) 来限制选择。304* **会话的模型**:托管的 `model` 是默认值,不是锁。`--model` 和 `ANTHROPIC_MODEL` 仍然为该会话选择模型,因此部署 [`availableModels`](/docs/zh-CN/settings-reference#availablemodels) 来限制选择。

305* **会话的自动压缩窗口**:托管的 [`autoCompactWindow`](/docs/zh-CN/settings-reference#autocompactwindow) 也是默认值。`--autocompact` 标志和 `CLAUDE_CODE_AUTO_COMPACT_WINDOW` 变量仍然为该会话设置 [自动压缩窗口](/docs/zh-CN/model-config#set-the-auto-compact-window)。

304* **本地管理员权限**:作为机器上的管理员的开发人员可以编辑托管源本身,这就是为什么 MDM 工具可以按计划重新部署配置文件或文件,以及为什么 HKLM 注册表和 macOS 托管首选项域存在。306* **本地管理员权限**:作为机器上的管理员的开发人员可以编辑托管源本身,这就是为什么 MDM 工具可以按计划重新部署配置文件或文件,以及为什么 HKLM 注册表和 macOS 托管首选项域存在。

305* **服务器管理的缓存**:服务器管理的设置来自 Anthropic 的服务器,对本地缓存的编辑 [仅持续到下一次成功获取](/docs/zh-CN/server-managed-settings#security-considerations)。307* **服务器管理的缓存**:服务器管理的设置来自 Anthropic 的服务器,对本地缓存的编辑 [仅持续到下一次成功获取](/docs/zh-CN/server-managed-settings#security-considerations)。

306* **其他工具**:托管设置仅绑定 Claude Code。从另一个工具调用 API 的开发人员不在它们下。308* **其他工具**:托管设置仅绑定 Claude Code。从另一个工具调用 API 的开发人员不在它们下。


346 查找 Claude Code 丢弃的条目348 查找 Claude Code 丢弃的条目

347</h3>349</h3>

348 350 

349当托管设置文件、MDM 配置文件、注册表值或服务器管理的有效负载未通过架构验证时,Claude Code 首先跳过它可以修复的单个条目(例如一个无效的权限规则),每个都带有警告,然后丢弃其值仍然失败的任何值,除非该值属于[失败关闭](#keys-that-fail-closed)的密钥之一。351如果您的托管设置文件、MDM 配置文件、注册表值或服务器管理的负载未通过 schema 验证,Claude Code 首先跳过它可以修复的每个单独条目(例如一个无效的权限规则),并针对每个条目发出警告。然后,Claude Code 丢弃仍然验证失败的任何值,除非该值属于[失败关闭](#keys-that-fail-closed)的密钥之一。

350 352 

351Claude Code 对 [`policyHelper`](/docs/zh-CN/settings-reference#policyhelper) 发出的 `managedSettings` 更严格:它进行相同的条目修复,但任何幸存的架构违规都会导致整个 helper 运行失败,在启动时 Claude Code 拒绝启动,与 helper 以非零状态退出相同。353Claude Code 对 [`policyHelper`](/docs/zh-CN/settings-reference#policyhelper) 发出的 `managedSettings` 更严格:它进行相同的条目修复,但任何幸存的 schema 违规都会导致整个 helper 运行失败,在启动时 Claude Code 拒绝启动,与 helper 以非零状态退出相同。

352 354 

353当托管设置文件、drop-in 文件、MDM plist 或 HKLM 注册表值存在但无法解析为 JSON 对象时,Claude Code 拒绝启动并打印[命名源的错误](/docs/zh-CN/errors#managed-settings-document-could-not-be-parsed),即使另一个管理员源传递有效策略。每个源在以下情况下以这种方式失败:355当托管设置文件、drop-in 文件、MDM plist 或 HKLM 注册表值存在但无法解析为 JSON 对象时,Claude Code 拒绝启动并打印[命名源的错误](/docs/zh-CN/errors#managed-settings-document-could-not-be-parsed),即使另一个管理员源传递有效策略。每个源在以下情况下以这种方式失败:

354 356 


382这些情况不会失败关闭:384这些情况不会失败关闭:

383 385 

384* `null` 删除该密钥。386* `null` 删除该密钥。

385* 无效的 `disableAllHooks`,即使是带引号的布尔值,也会被丢弃并带有警告,因为强制执行 `true` 也会卸载您自己的托管设置部署的 hooks。387* 无效的 `disableAllHooks`,即使是带引号的布尔值,也会被丢弃并带有警告,因为强制执行 `true` 也会卸载您自己的托管设置部署的 hook。

386* 对于规则涵盖的每个其他布尔密钥,字符串 `"true"` 或 `"false"` 读取为该布尔值,在 `/status` 中带有通知,要求您删除引号。388* 对于规则涵盖的每个其他布尔密钥,字符串 `"true"` 或 `"false"` 读取为该布尔值,在 `/status` 中带有通知,要求您删除引号。

387 389 

388Claude Code 按字段而不是整体修复 `permissions`、`autoMode`、`worktree` 和 `attribution` 块:390Claude Code 按字段而不是整体修复 `permissions`、`autoMode`、`worktree` 和 `attribution` 块:


398 400 

399| 字段 | 存在但无效时的行为 |401| 字段 | 存在但无效时的行为 |

400| :- | :- |402| :- | :- |

401| `allowedMcpServers` | 强制执行为空的允许列表,直到修复该值,因此用户添加的 MCP 服务器都不被允许。您的组织通过 [`managedMcpServers`](/docs/zh-CN/settings-reference#managedmcpservers) 传递的服务器仍然加载,`managed-mcp.json` 服务器根据[如何评估服务器](/docs/zh-CN/managed-mcp#how-a-server-is-evaluated)加载。单个无效条目被剥离,有效子集被强制执行。 |403| `allowedMcpServers` | 强制执行为空的允许列表,直到修复该值,因此用户添加的 MCP 服务器都不被允许。您的组织通过 [`managedMcpServers`](/docs/zh-CN/settings-reference#managedmcpservers) 传递的服务器仍然加载,`managed-mcp.json` 服务器根据[跳过允许列表检查的服务器](/docs/zh-CN/managed-mcp#servers-that-skip-the-allowlist-check)加载。单个无效条目被剥离,有效子集被强制执行。 |

402| [`allowedProviders`](/docs/zh-CN/settings-reference#allowedproviders) | 强制执行为空的允许列表,直到修复该值,因此每个 API 提供商都被拒绝,Claude Code 在机器上不启动。如果只有单个条目不是已知的提供商名称,Claude Code 会丢弃并报告该条目并强制执行其余的。 |404| [`allowedProviders`](/docs/zh-CN/settings-reference#allowedproviders) | 强制执行为空的允许列表,直到修复该值,因此每个 API 提供商都被拒绝,Claude Code 在机器上不启动。如果只有单个条目不是已知的提供商名称,Claude Code 会丢弃并报告该条目并强制执行其余的。 |

403| `allowedHttpHookUrls` | Claude Code 强制执行空的托管[允许列表](/docs/zh-CN/settings-reference#allowedhttphookurls),直到您修复该值,因此 HTTP hook 仅在另一个设置文件列出其 URL 时运行。如果只有单个条目无效,Claude Code 会剥离该条目并强制执行其余的。 |405| `allowedHttpHookUrls` | Claude Code 强制执行空的托管[允许列表](/docs/zh-CN/settings-reference#allowedhttphookurls),直到您修复该值,因此 HTTP hook 仅在另一个设置文件列出其 URL 时运行。如果只有单个条目无效,Claude Code 会剥离该条目并强制执行其余的。 |

404| `httpHookAllowedEnvVars` | Claude Code 强制执行空的托管[允许列表](/docs/zh-CN/settings-reference#httphookallowedenvvars),直到您修复该值,因此仅当另一个设置文件命名标头变量时才会插值。如果只有单个条目无效,Claude Code 会剥离该条目并强制执行其余的。 |406| `httpHookAllowedEnvVars` | Claude Code 强制执行空的托管[允许列表](/docs/zh-CN/settings-reference#httphookallowedenvvars),直到您修复该值,因此仅当另一个设置文件命名标头变量时才会插值。如果只有单个条目无效,Claude Code 会剥离该条目并强制执行其余的。 |

405| `allowedChannelPlugins` | Claude Code 强制执行空的允许列表,直到您修复该值,因此传递给 `--channels` 的任何通道插件都不被允许。如果只有单个条目无效,它会剥离该条目并强制执行其余的。 |407| `allowedChannelPlugins` | Claude Code 强制执行空的允许列表,直到您修复该值,因此传递给 `--channels` 的任何频道插件都不被允许。如果只有单个条目无效,它会剥离该条目并强制执行其余的。 |

406| `strictKnownMarketplaces` | 强制执行为空的允许列表,直到修复该值,因此不允许任何[市场源](/docs/zh-CN/plugins/org#restrict-what-users-can-install)。无效或无法强制执行的单个条目(例如无法编译的 `hostPattern` 正则表达式)被剥离,有效子集被强制执行。 |408| `strictKnownMarketplaces` | 强制执行为空的允许列表,直到修复该值,因此不允许任何[市场源](/docs/zh-CN/plugins/org#restrict-what-users-can-install)。无效或无法强制执行的单个条目(例如无法编译的 `hostPattern` 正则表达式)被剥离,有效子集被强制执行。 |

407| `availableModels` | 强制执行为空的允许列表,直到修复,因此只有默认模型可用;非字符串条目被剥离,有效子集被强制执行。 |409| `availableModels` | 强制执行为空的允许列表,直到修复,因此只有默认模型可用;非字符串条目被剥离,有效子集被强制执行。 |

408| [`availableModelsMatch`](/docs/zh-CN/settings-reference#availablemodelsmatch) | 视为 `exact`,直到修复该值。 |410| [`availableModelsMatch`](/docs/zh-CN/settings-reference#availablemodelsmatch) | 视为 `exact`,直到修复该值。 |


414| `blockedMarketplaces` | 单个无效条目被剥离,有效子集被强制执行。解析但永远无法匹配的条目(例如无法编译的 `hostPattern` 正则表达式)被保留并带有警告。在修复之前它不会阻止任何内容,但[市场限制](/docs/zh-CN/plugins/org#restrict-what-users-can-install)保持活跃。完全无效的值被丢弃并带有警告,因为阻止每个市场会阻止策略从未命名的源。 |416| `blockedMarketplaces` | 单个无效条目被剥离,有效子集被强制执行。解析但永远无法匹配的条目(例如无法编译的 `hostPattern` 正则表达式)被保留并带有警告。在修复之前它不会阻止任何内容,但[市场限制](/docs/zh-CN/plugins/org#restrict-what-users-can-install)保持活跃。完全无效的值被丢弃并带有警告,因为阻止每个市场会阻止策略从未命名的源。 |

415| `sandbox` | 当块内的一个值无效时,Claude Code 不会丢弃整个块。对于每种无效字段发生的情况,请参阅[`sandbox` 内的无效值](#invalid-values-inside-sandbox)。 |417| `sandbox` | 当块内的一个值无效时,Claude Code 不会丢弃整个块。对于每种无效字段发生的情况,请参阅[`sandbox` 内的无效值](#invalid-values-inside-sandbox)。 |

416| `sandbox.credentials` | 可恢复的无效条目降级为 `mode: "deny"` 并带有警告;不可恢复的条目被剥离;有效条目保持强制执行。请参阅[托管设置中的无效凭据条目](/docs/zh-CN/settings-reference#invalid-credential-entries-in-managed-settings)。 |418| `sandbox.credentials` | 可恢复的无效条目降级为 `mode: "deny"` 并带有警告;不可恢复的条目被剥离;有效条目保持强制执行。请参阅[托管设置中的无效凭据条目](/docs/zh-CN/settings-reference#invalid-credential-entries-in-managed-settings)。 |

417| `strictPluginOnlyCustomization` | 视为 `true`,锁定所有四个表面,当该值既不是布尔值也不是数组时。此版本不识别为表面的数组条目不锁定任何内容;状态注释计算此类条目,以便您可以检查它们是否有拼写错误。 |419| `strictPluginOnlyCustomization` | 视为 `true`,锁定所有四个使用入口,当该值既不是布尔值也不是数组时。此版本不识别为使用入口的数组条目不锁定任何内容;状态注释计算此类条目,以便您可以检查它们是否有拼写错误。 |

418| `enabledPlugins` | 无效条目被丢弃并带有警告,其他条目保持强制执行。不是插件 ID 映射的值,或其每个条目都无效的值,被整体丢弃并带有警告。 |420| `enabledPlugins` | 无效条目被丢弃并带有警告,其他条目保持强制执行。不是插件 ID 映射的值,或其每个条目都无效的值,被整体丢弃并带有警告。 |

419 421 

420`allowedHttpHookUrls` 和 `httpHookAllowedEnvVars` 跨设置文件合并,因此您的用户、项目或本地设置中的条目在托管列表为空时仍然适用。422`allowedHttpHookUrls` 和 `httpHookAllowedEnvVars` 跨设置文件合并,因此您的用户、项目或本地设置中的条目在托管列表为空时仍然适用。

model-config.md +2 −1

Details

285* **[自动模型回退](#automatic-model-fallback)**:目标被排除的回退不运行,因此标记的请求以拒绝结束285* **[自动模型回退](#automatic-model-fallback)**:目标被排除的回退不运行,因此标记的请求以拒绝结束

286* **[自动模式分类器](/docs/zh-CN/permission-modes#eliminate-prompts-with-auto-mode)**:分类器的 Claude Sonnet 5 默认值仅在允许列表允许 Sonnet 5 时适用。当它被排除时,分类器在会话的模型上运行,允许列表已经管理该模型,或在会话运行 [Fable 模型](#work-with-fable)时在 Opus 模型上运行。在 Anthropic API 以外的提供商上,该 Opus 回退在您于 `ANTHROPIC_DEFAULT_OPUS_MODEL` 中设置的模型上运行,否则在 Opus 5 上运行,不咨询允许列表。需要 Claude Code v2.1.210 或更高版本286* **[自动模式分类器](/docs/zh-CN/permission-modes#eliminate-prompts-with-auto-mode)**:分类器的 Claude Sonnet 5 默认值仅在允许列表允许 Sonnet 5 时适用。当它被排除时,分类器在会话的模型上运行,允许列表已经管理该模型,或在会话运行 [Fable 模型](#work-with-fable)时在 Opus 模型上运行。在 Anthropic API 以外的提供商上,该 Opus 回退在您于 `ANTHROPIC_DEFAULT_OPUS_MODEL` 中设置的模型上运行,否则在 Opus 5 上运行,不咨询允许列表。需要 Claude Code v2.1.210 或更高版本

287* **[快速模式](/docs/zh-CN/fast-mode)**:当会话之后运行的模型在允许列表外时,启用快速模式被拒绝287* **[快速模式](/docs/zh-CN/fast-mode)**:当会话之后运行的模型在允许列表外时,启用快速模式被拒绝

288* **Amazon Bedrock 和 Google Cloud 的 Agent Platform 上的可用性回退**:当您的帐户在会话中途失去对某个模型的访问权限时,切换到其他模型时会跳过被排除的模型。[Amazon Bedrock](/docs/zh-CN/amazon-bedrock#when-your-organization-enforces-a-model-allowlist) 和 [Google Cloud 的 Agent Platform](/docs/zh-CN/google-vertex-ai#when-your-organization-enforces-a-model-allowlist) 上的启动模型检查仅在托管设置同时设置了 [`enforceAvailableModels`](#enforce-the-allowlist-for-the-default-model) 时才跳过被排除的模型

288 289 

289```json theme={null}290```json theme={null}

290{291{


766| :- | :- |767| :- | :- |

767| 当前会话的切换 | 在 macOS 上按 `Option+T` 或在 Windows 和 Linux 上按 `Alt+T` |768| 当前会话的切换 | 在 macOS 上按 `Option+T` 或在 Windows 和 Linux 上按 `Alt+T` |

768| 设置全局默认值 | 运行 `/config` 并切换思考模式。保存为 `~/.claude/settings.json` 中的 `alwaysThinkingEnabled` |769| 设置全局默认值 | 运行 `/config` 并切换思考模式。保存为 `~/.claude/settings.json` 中的 `alwaysThinkingEnabled` |

769| 通过环境变量禁用 | 设置 [`MAX_THINKING_TOKENS=0`](/docs/zh-CN/env-vars),这在 Anthropic API 上关闭思考,除了 Opus 5.5、Sonnet 5.5 和 Fable 模型。在[第三方提供商](/docs/zh-CN/third-party-integrations)上,Claude Code 改为省略 `thinking` 参数,自适应推理模型可能仍然思考。其他值仅适用于[固定思考预算](#adaptive-reasoning-and-fixed-thinking-budgets) |770| 通过环境变量禁用 | 设置 [`MAX_THINKING_TOKENS=0`](/docs/zh-CN/env-vars),这在 Anthropic API 上关闭思考,除了 Opus 5.5、Sonnet 5.5 和 Fable 模型。在[第三方提供商](/docs/zh-CN/third-party-integrations)上,Claude Code 改为省略 `thinking` 参数,自适应推理模型可能仍然思考 |

770 771 

771您不能在 Opus 5.5、Sonnet 5.5 或 Fable 模型上关闭思考。对于这些模型,会话切换和 `/config` 行显示 `Thinking can't be turned off`,而不是提供切换,保存的 `alwaysThinkingEnabled: false` 或 `MAX_THINKING_TOKENS=0` 在那里没有效果。在这些模型上,模型根据 effort 级别按步骤决定思考多少。保存的设置在您切换到接受它的模型时再次应用。772您不能在 Opus 5.5、Sonnet 5.5 或 Fable 模型上关闭思考。对于这些模型,会话切换和 `/config` 行显示 `Thinking can't be turned off`,而不是提供切换,保存的 `alwaysThinkingEnabled: false` 或 `MAX_THINKING_TOKENS=0` 在那里没有效果。在这些模型上,模型根据 effort 级别按步骤决定思考多少。保存的设置在您切换到接受它的模型时再次应用。

772 773 

Details

358 358 

359<span id="new-context-gates" />359<span id="new-context-gates" />

360 360 

361**详细测试版跟踪下的内容属性**

362 

361<Note>363<Note>

362 其他内容承载属性,例如 `new_context`、`system_prompt_preview`、`user_system_prompt`、`tool_input` 和 `response.model_output`,仅在启用详细测试版跟踪时发出。它们不是稳定跨度架构的一部分。364 其他内容承载属性,例如 `new_context`、`system_reminders`、`system_prompt_preview`、`user_system_prompt`、`tool_input` 和 `response.model_output`,仅在启用详细测试版跟踪时发出。它们不是稳定跨度 schema 的一部分。

365</Note>

363 366 

364 `new_context` 上的门取决于哪个跨度携带它,每个副本都在内容限制处截断(默认值 60 KB)。在 `claude_code.tool` 跨度上,它携带该工具调用的结果,无论工具如何,并需要 `OTEL_LOG_TOOL_CONTENT=1`。在 `claude_code.interaction` 跨度上,它携带用户提示,在 `claude_code.llm_request` 跨度上,它携带该请求的新用户消息和工具结果。两者都需要 `OTEL_LOG_USER_PROMPTS=1`。367这些属性出现在下列跨度上,`门控` 列指出属性在详细测试版跟踪之外还需要的变量。长度超过内容限制(默认值 60 KB)的值会被截断。

365 368 

366 `user_system_prompt` 另外需要 `OTEL_LOG_USER_PROMPTS=1`。它仅携带您通过 `systemPrompt` SDK 选项或 `--system-prompt` 和 `--append-system-prompt` 标志提供的系统提示文本,在内容限制处截断(默认值 60 KB),并且每个会话发出一次而不是每个请求。369| 属性 | 跨度 | 描述 | 门控 |

367</Note>370| - | - | - | - |

371| `new_context` | `claude_code.interaction` | 用户提示词 | `OTEL_LOG_USER_PROMPTS` |

372| `new_context` | `claude_code.llm_request` | 随请求发送的新用户消息和工具结果 | `OTEL_LOG_USER_PROMPTS` |

373| `system_reminders` | `claude_code.llm_request` | 请求的新消息中[系统提醒](/docs/zh-CN/glossary#system-reminder)的文本 | `OTEL_LOG_USER_PROMPTS` |

374| `system_prompt_preview` | `claude_code.llm_request` | 随请求发送的完整系统提示词的前 500 个字符 | `OTEL_LOG_USER_PROMPTS` |

375| `user_system_prompt` | `claude_code.llm_request` | 仅包含您通过 `systemPrompt` SDK 选项或 `--system-prompt` 和 `--append-system-prompt` 标志提供的系统提示词文本。每个会话发出一次,而不是每个请求发出一次 | `OTEL_LOG_USER_PROMPTS` |

376| `response.model_output` | `claude_code.llm_request` | 模型对该请求的响应文本 | `OTEL_LOG_USER_PROMPTS` |

377| `new_context` | `claude_code.tool` | 工具调用的结果,无论是哪个工具 | `OTEL_LOG_TOOL_CONTENT` |

378| `tool_input` | `claude_code.tool` | 工具调用的序列化输入 | `OTEL_LOG_TOOL_DETAILS` |

379 

380在详细测试版跟踪下且设置了 `OTEL_LOG_USER_PROMPTS=1` 时,Claude Code 还会发出一个 `claude_code.system_prompt` 事件,该事件携带完整的系统提示词,并在内容限制处截断。会话每次首次发送某个不同的系统提示词时都会发出该事件,压缩之后也会再次发出。

368 381 

369<h3 id="dynamic-headers">382<h3 id="dynamic-headers">

370 动态标头383 动态标头


797* `event.sequence`:用于排序事件的每进程计数器,在[事件关联属性](#event-correlation-attributes)下描述810* `event.sequence`:用于排序事件的每进程计数器,在[事件关联属性](#event-correlation-attributes)下描述

798* `prompt_length`:提示的长度811* `prompt_length`:提示的长度

799* `prompt`:提示内容。默认编辑。设置 `OTEL_LOG_USER_PROMPTS=1` 以包含它812* `prompt`:提示内容。默认编辑。设置 `OTEL_LOG_USER_PROMPTS=1` 以包含它

813* `prompt_text`:与 `prompt` 的值相同,受相同的开关控制脱敏。将带点属性名存储为嵌套对象的后端会把 `prompt.id` 读作名为 `prompt` 的对象中的 `id`,从而可能丢失提示词字符串。在这类后端中,请改为读取 `prompt_text`。需要 Claude Code v2.1.287 或更高版本

800* `message.uuid`:生成的用户消息的 UUID,与保存的记录条目匹配。在命令调度上不存在,它可以产生零个或多个消息。需要 Claude Code v2.1.214 或更高版本814* `message.uuid`:生成的用户消息的 UUID,与保存的记录条目匹配。在命令调度上不存在,它可以产生零个或多个消息。需要 Claude Code v2.1.214 或更高版本

801* `command_name`:当提示调用一个时的命令名称。内置和捆绑命令名称如 `compact` 或 `debug` 按原样发出;别名如 `reset` 按键入的方式发出而不是规范名称。自定义、插件和 MCP 命令名称折叠为 `custom` 或 `mcp`,除非设置了 `OTEL_LOG_TOOL_DETAILS=1`815* `command_name`:当提示调用一个时的命令名称。内置和捆绑命令名称如 `compact` 或 `debug` 按原样发出;别名如 `reset` 按键入的方式发出而不是规范名称。自定义、插件和 MCP 命令名称折叠为 `custom` 或 `mcp`,除非设置了 `OTEL_LOG_TOOL_DETAILS=1`

802* `command_source`:命令存在时的来源:`builtin`、`custom` 或 `mcp`。插件提供的命令报告为 `custom`816* `command_source`:命令存在时的来源:`builtin`、`custom` 或 `mcp`。插件提供的命令报告为 `custom`


1694* OpenTelemetry 导出到您的后端是可选的,需要显式配置。有关 Anthropic 的单独操作遥测以及如何禁用它,请参阅 [数据使用](/docs/zh-CN/data-usage#telemetry-services)1708* OpenTelemetry 导出到您的后端是可选的,需要显式配置。有关 Anthropic 的单独操作遥测以及如何禁用它,请参阅 [数据使用](/docs/zh-CN/data-usage#telemetry-services)

1695* 原始文件内容和代码片段不包含在指标或事件中。Trace spans 是一个单独的数据路径:请参阅下面的 `OTEL_LOG_TOOL_CONTENT` 项目符号1709* 原始文件内容和代码片段不包含在指标或事件中。Trace spans 是一个单独的数据路径:请参阅下面的 `OTEL_LOG_TOOL_CONTENT` 项目符号

1696* 通过 OAuth 认证时,`user.email` 包含在遥测属性中,仅发送到您配置的 OTel 端点,永远不会发送到 Anthropic。如果这对您的组织是一个问题,请与您的遥测后端合作以过滤或编辑此字段1710* 通过 OAuth 认证时,`user.email` 包含在遥测属性中,仅发送到您配置的 OTel 端点,永远不会发送到 Anthropic。如果这对您的组织是一个问题,请与您的遥测后端合作以过滤或编辑此字段

1697* 默认情况下不收集用户提示内容。仅记录提示长度。要包含提示内容,请设置 `OTEL_LOG_USER_PROMPTS=1`。在详细的 beta 追踪下,此变量的作用范围更广:它还控制 [`new_context` span 属性](#new-context-gates),该属性在 `claude_code.llm_request` span 上携带工具结果1711* 默认情况下不收集用户提示词内容。仅记录提示词长度。要包含提示词内容,请设置 `OTEL_LOG_USER_PROMPTS=1`。启用后:

1698* 默认情况下不收集助手响应文本。仅记录响应长度。要包含响应文本,请设置 `OTEL_LOG_ASSISTANT_RESPONSES=1`。与来自 Claude Code 的所有 OpenTelemetry 数据一样,响应文本仅发送到您配置的 OTel 端点,永远不会发送到 Anthropic。当此变量未设置时,`OTEL_LOG_USER_PROMPTS` 用作后备,因此如果您想要提示内容而不要响应内容,请设置 `OTEL_LOG_ASSISTANT_RESPONSES=0`1712 * `user_prompt` 事件在两个属性中携带提示词文本:`prompt` 和 [`prompt_text`](#user-prompt-event)。如果您在收集器中按属性名称删除或屏蔽该事件的提示词文本,请在规则中同时指定这两个属性

1713 

1714 此 OpenTelemetry Collector `attributes` 处理器会在列出它的管道中删除这两个属性:

1715 

1716 ```yaml theme={null}

1717 processors:

1718 attributes/drop-prompt-text:

1719 actions:

1720 - key: prompt

1721 action: delete

1722 - key: prompt_text

1723 action: delete

1724 ```

1725 

1726 * 启用[追踪](#traces-beta)后,`claude_code.interaction` span 在其 `user_prompt` 属性中携带提示词文本

1727 

1728 * 在详细的 beta 追踪下,spans 还会携带每个请求发送的新用户消息、工具结果和系统提醒、系统提示词文本以及模型输出。[详细 beta 追踪下的内容属性](#new-context-gates)列出了每个属性。`claude_code.system_prompt` 事件携带完整的系统提示词

1729* 默认情况下不收集助手响应文本。仅记录响应长度。要包含响应文本,请设置 `OTEL_LOG_ASSISTANT_RESPONSES=1`。与来自 Claude Code 的所有 OpenTelemetry 数据一样,响应文本仅发送到您配置的 OTel 端点,永远不会发送到 Anthropic。当此变量未设置时,会回退到 `OTEL_LOG_USER_PROMPTS`,因此如果您希望事件中包含提示词内容而不包含响应内容,请设置 `OTEL_LOG_ASSISTANT_RESPONSES=0`。在详细的 beta 追踪下,`claude_code.llm_request` span 仍会在 [`response.model_output`](#new-context-gates) 中携带模型输出,该属性遵循 `OTEL_LOG_USER_PROMPTS` 而非此变量

1699* 默认情况下不记录工具输入参数和参数。要包含它们,请设置 `OTEL_LOG_TOOL_DETAILS=1`。对于 Claude Desktop 的内置服务器,在 Claude Desktop 拥有的会话中,`tool_decision` 和 `tool_result` 携带 `mcp_server_name`/`mcp_tool_name` 对,即主机编写的名称而非参数内容,即使关闭该标志也是如此。此异常需要 Claude Code v2.1.214 或更高版本。此数据仅发送到您配置的 OTEL 端点,永远不会发送到 Anthropic。参数仍可能包含敏感值,因此请根据需要配置您的遥测后端以过滤或编辑这些属性。启用后:1730* 默认情况下不记录工具输入参数和参数。要包含它们,请设置 `OTEL_LOG_TOOL_DETAILS=1`。对于 Claude Desktop 的内置服务器,在 Claude Desktop 拥有的会话中,`tool_decision` 和 `tool_result` 携带 `mcp_server_name`/`mcp_tool_name` 对,即主机编写的名称而非参数内容,即使关闭该标志也是如此。此异常需要 Claude Code v2.1.214 或更高版本。此数据仅发送到您配置的 OTEL 端点,永远不会发送到 Anthropic。参数仍可能包含敏感值,因此请根据需要配置您的遥测后端以过滤或编辑这些属性。启用后:

1700 * `tool_result` 和 `tool_decision` 事件包含 `tool_parameters` 属性,其中包含 Bash 命令、MCP 服务器和工具名称以及技能名称。`full_command` 等字段以未截断的形式发出1731 * `tool_result` 和 `tool_decision` 事件包含 `tool_parameters` 属性,其中包含 Bash 命令、MCP 服务器和工具名称以及 skill 名称。`full_command` 等字段以未截断的形式发出

1701 * `tool_result` 事件另外包含 `tool_input` 属性,其中包含文件路径、URL、搜索模式和其他参数。超过 512 个字符的单个值被截断,总数限制为约 4 K 字符1732 * `tool_result` 事件另外包含 `tool_input` 属性,其中包含文件路径、URL、搜索模式和其他参数。超过 512 个字符的单个值被截断,总数限制为约 4 K 字符

1702 * `user_prompt` 事件包含自定义、插件和 MCP 命令的逐字 `command_name`1733 * `user_prompt` 事件包含自定义、插件和 MCP 命令的逐字 `command_name`

1703 * [成本和令牌计数器](#cost-counter)以及 `api_request`、`api_error` 和 `api_refusal` 事件在其归属属性中携带真实的代理、技能、插件和 MCP 服务器以及工具名称1734 * [成本和 token 计数器](#cost-counter)以及 `api_request`、`api_error` 和 `api_refusal` 事件在其归属属性中携带真实的 Agent、skill、插件和 MCP 服务器以及工具名称

1704 * Trace spans 包含相同的 `tool_input` 属性和输入派生属性(如 `file_path`),与 `tool_input` 的截断方式相同1735 * `claude_code.tool` span 携带输入派生属性(如 `file_path`)。在详细的 beta 追踪下,它还携带 [`tool_input`](#new-context-gates) 属性

1705* 默认情况下,trace spans 中不记录工具内容。要包含它,请设置 `OTEL_LOG_TOOL_CONTENT=1`。`claude_code.tool` span 随后携带一个 [`tool.output` span 事件](#tool-output-span-event),其中包含原始文件内容、Bash 命令输出以及 MCP 工具、WebFetch 和 WebSearch 返回的内容,在内容限制处截断(默认为 60 KB)每个属性。来自 MCP 工具、WebFetch 和 WebSearch 的结果需要 Claude Code v2.1.283 或更高版本。工具内容也通过 [`new_context` 到达 spans,其门控因 span 而异](#new-context-gates)。根据需要配置您的遥测后端以过滤或编辑这些属性1736* 默认情况下,trace spans 中不记录工具内容。要包含它,请设置 `OTEL_LOG_TOOL_CONTENT=1`。`claude_code.tool` span 随后携带一个 [`tool.output` span 事件](#tool-output-span-event),其中包含原始文件内容、Bash 命令输出以及 MCP 工具、WebFetch 和 WebSearch 返回的内容,在内容限制处截断(默认为 60 KB)每个属性。来自 MCP 工具、WebFetch 和 WebSearch 的结果需要 Claude Code v2.1.283 或更高版本。工具内容也通过 [`new_context` 到达 spans,其门控因 span 而异](#new-context-gates)。根据需要配置您的遥测后端以过滤或编辑这些属性

1706* 默认情况下不记录原始 Anthropic Messages API 请求和响应主体。要包含它们,请在您的 shell、用户设置或托管设置中设置 `OTEL_LOG_RAW_API_BODIES`。在 [项目和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env) 中被忽略。主体包含完整的对话历史,包括系统提示、每个先前的用户和助手轮次以及工具结果,因此启用此选项意味着同意其他 `OTEL_LOG_*` 内容标志会揭示的所有内容。Claude Code 始终从这些主体中编辑 Claude 的扩展思考内容,无论其他设置如何。您设置的值决定了 Claude Code 如何传递主体:1737* 默认情况下不记录原始 Anthropic Messages API 请求和响应主体。要包含它们,请在您的 shell、用户设置或托管设置中设置 `OTEL_LOG_RAW_API_BODIES`。在 [项目和本地设置](/docs/zh-CN/settings-reference#variables-claude-code-ignores-in-env) 中被忽略。主体包含完整的对话历史,包括系统提示、每个先前的用户和助手轮次以及工具结果,因此启用此选项意味着同意其他 `OTEL_LOG_*` 内容标志会揭示的所有内容。Claude Code 始终从这些主体中编辑 Claude 的扩展思考内容,无论其他设置如何。您设置的值决定了 Claude Code 如何传递主体:

1707 * 使用 `=1` 时,Claude Code 为每个 API 调用发出 `api_request_body` 和 `api_response_body` 日志事件。事件的 `body` 属性携带 JSON 序列化的有效负载,在内容限制处截断(默认为 60 KB)1738 * 使用 `=1` 时,Claude Code 为每个 API 调用发出 `api_request_body` 和 `api_response_body` 日志事件。事件的 `body` 属性携带 JSON 序列化的有效负载,在内容限制处截断(默认为 60 KB)

Details

89| `claude -p` 或 [Agent SDK](/docs/zh-CN/agent-sdk/permissions#permission-modes) | 在[获取功能标志](/docs/zh-CN/env-vars#features-that-need-feature-flag-fetching)的会话中为 `default`。在不获取功能标志的会话中,例如在第三方提供商上或关闭遥测的情况下,Claude Code v2.1.285 或更高版本中为 `auto`,较早版本中为 `default`。组织策略禁止 `auto` 默认值的会话改为以 `default` 启动 |89| `claude -p` 或 [Agent SDK](/docs/zh-CN/agent-sdk/permissions#permission-modes) | 在[获取功能标志](/docs/zh-CN/env-vars#features-that-need-feature-flag-fetching)的会话中为 `default`。在不获取功能标志的会话中,例如在第三方提供商上或关闭遥测的情况下,Claude Code v2.1.285 或更高版本中为 `auto`,较早版本中为 `default`。组织策略禁止 `auto` 默认值的会话改为以 `default` 启动 |

90| 在终端或通过 [VS Code 扩展](/docs/zh-CN/vs-code) | Claude Code v2.1.283 或更高版本中为 `auto`;在较早的版本上,在 Pro、Max 或 Team 计划中为 `auto`(在[获取功能标志](/docs/zh-CN/env-vars#features-that-need-feature-flag-fetching)的会话中),否则为 `default` |90| 在终端或通过 [VS Code 扩展](/docs/zh-CN/vs-code) | Claude Code v2.1.283 或更高版本中为 `auto`;在较早的版本上,在 Pro、Max 或 Team 计划中为 `auto`(在[获取功能标志](/docs/zh-CN/env-vars#features-that-need-feature-flag-fetching)的会话中),否则为 `default` |

91 91 

92在您[安装或升级后的第一个会话](/docs/zh-CN/env-vars#first-session-after-an-install-or-upgrade)中,Claude Code 可以在其功能标志到达之前选择起始权限模式。该会话可能以与表格不同的权限模式启动,您的下一个会话与表格匹配。92在您[安装或升级后的第一个会话](/docs/zh-CN/env-vars#first-session-after-an-install-or-upgrade)中,Claude Code 可以在其功能标志到达之前选择起始权限模式。该会话可能以与表格不同的权限模式启动。

93 93 

94当标志、设置文件或内置默认值选择 `auto` 但自动模式对会话不可用时,Claude Code 以 Manual 启动会话。自动模式在会话不满足[可用性要求](#eliminate-prompts-with-auto-mode)时不可用,例如设置文件关闭它或不支持它的模型,或当 Anthropic 已在服务器端临时关闭它时。94当标志、设置文件或内置默认值选择 `auto` 但自动模式对会话不可用时,Claude Code 以 Manual 启动会话。自动模式在会话不满足[可用性要求](#eliminate-prompts-with-auto-mode)时不可用,例如设置文件关闭它或不支持它的模型,或当 Anthropic 已在服务器端临时关闭它时。

95 95 


676* `.devcontainer`676* `.devcontainer`

677* `.yarn`677* `.yarn`

678* `.mvn`678* `.mvn`

679* `.claude`,除了 `.claude/worktrees`,Claude 在其中存储自己的 git worktrees679* `.claude`,除了 `.claude/worktrees`(Claude 在其中存储自己的 git worktree),以及在未使用 `--restricted` 启动的会话中 Claude 自己的[自动记忆](/docs/zh-CN/memory#storage-location)目录中的 markdown 文件

680* 使用 [`--plugin-dir`](/docs/zh-CN/plugins/mods/create#change-a-mod-with-claude) 加载的目录,因为当文件发生更改时,Claude Code 会从该目录重新加载并运行 mod 的代码680* 使用 [`--plugin-dir`](/docs/zh-CN/plugins/mods/create#change-a-mod-with-claude) 加载的目录,因为当文件发生更改时,Claude Code 会从该目录重新加载并运行 mod 的代码

681 681 

682受保护的文件:682受保护的文件:


739Claude Code 也查看这些构造内部:739Claude Code 也查看这些构造内部:

740 740 

741* **嵌套命令**:带有 `(...)` 的子 shell、带有 `{ ...; }` 的大括号组、带有 `$(...)` 或反引号的命令替换,或带有 `<(...)` 的进程替换。Claude Code 找到关键路径移除,无论它位于嵌套形式内部(如 `(rm -rf ~)` 或 `echo "$(rm -rf ~)"`),还是位于同一命令中的其他地方。741* **嵌套命令**:带有 `(...)` 的子 shell、带有 `{ ...; }` 的大括号组、带有 `$(...)` 或反引号的命令替换,或带有 `<(...)` 的进程替换。Claude Code 找到关键路径移除,无论它位于嵌套形式内部(如 `(rm -rf ~)` 或 `echo "$(rm -rf ~)"`),还是位于同一命令中的其他地方。

742* **内联脚本**:Claude Code 检查传递给 shell 的脚本(如 `sh -c` 或 `bash -c`)中的 shell 变量和位置参数[目标](#other-targets-that-count-as-critical-paths)。742* **内联脚本**:通过 `-c` 传递给 `sh`、`bash`、`zsh` 或类似 POSIX shell 的脚本,如 `bash -c 'rm -rf ~'`。

743 * 当脚本是双引号时,调用 shell 在内部 shell 接收脚本之前扩展其变量。在 `find . -name '*.tmp' -exec sh -c "rm -rf \"$1\"/*" _ {} \;` 中,命令对每个匹配扩展为从文件系统根目录的移除,Claude Code 将其视为关键路径移除。743 * 当脚本是双引号时,调用 shell 在内部 shell 接收脚本之前扩展其变量。在 `find . -name '*.tmp' -exec sh -c "rm -rf \"$1\"/*" _ {} \;` 中,命令对每个匹配扩展为从文件系统根目录的移除,Claude Code 将其视为关键路径移除。

744 * 绑定 `$1` 到真实值的单引号脚本(如 `sh -c 'rm -rf "$1"/*' _ {}` 所做的)不被标记。744 * 绑定 `$1` 到真实值的单引号脚本(如 `sh -c 'rm -rf "$1"/*' _ {}` 所做的)不被标记。

745 745 

746要关闭对直接写在 `-c` 脚本中的关键路径(如 `~`)的检查,请在启动 Claude Code 的环境中设置 [`CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT=1`](/docs/zh-CN/env-vars#variables)。

747 

746<h3 id="rewrite-a-flagged-command">748<h3 id="rewrite-a-flagged-command">

747 重写被标记的命令749 重写被标记的命令

748</h3>750</h3>

Details

336| `version` | string | 对于市场安装,为 [Claude Code 在安装时计算的版本](/docs/zh-CN/plugins/loading#versions-and-updates)。对于仅限会话、skills-directory 或同步插件,为清单的 `version`,未声明时为 `unknown` |336| `version` | string | 对于市场安装,为 [Claude Code 在安装时计算的版本](/docs/zh-CN/plugins/loading#versions-and-updates)。对于仅限会话、skills-directory 或同步插件,为清单的 `version`,未声明时为 `unknown` |

337| `scope` | string | 安装的插件为 `user`、`project`、`local` 或 `managed`;skills-directory 插件为 `user` 或 `project`;仅限会话的插件为 `session`;从 claude.ai 同步的插件为 `synced` |337| `scope` | string | 安装的插件为 `user`、`project`、`local` 或 `managed`;skills-directory 插件为 `user` 或 `project`;仅限会话的插件为 `session`;从 claude.ai 同步的插件为 `synced` |

338| `enabled` | boolean | 插件在合并后的设置中是否启用 |338| `enabled` | boolean | 插件在合并后的设置中是否启用 |

339| `installPath` | string | 插件加载所在的目录 |339| `installPath` | string | 插件加载所在的目录,但会话从其市场文件夹中[就地加载](/docs/zh-CN/plugins/loading#in-place-and-copied-plugins)的插件除外 |

340| `readFromFolder` | string | 对于会话从其市场文件夹中[就地加载](/docs/zh-CN/plugins/loading#in-place-and-copied-plugins)的插件,为该文件夹内插件的源目录。需要 Claude Code v2.1.289 或更高版本 |

341| `folderVersion` | string | 与 `readFromFolder` 一起出现,为 Claude Code 从该文件夹加载插件时插件的 `version`,可能与上面的 `version` 字段不同。插件未加载或未声明版本时不存在。需要 Claude Code v2.1.289 或更高版本 |

340| `installedAt` | string | 安装的 ISO 时间戳。仅限市场安装 |342| `installedAt` | string | 安装的 ISO 时间戳。仅限市场安装 |

341| `lastUpdated` | string | 最后更新的 ISO 时间戳。仅限市场安装 |343| `lastUpdated` | string | 最后更新的 ISO 时间戳。仅限市场安装 |

342| `projectPath` | string | 安装所属的项目。仅限 `project` 和 `local` 作用域 |344| `projectPath` | string | 安装所属的项目。仅限 `project` 和 `local` 作用域 |


637 * 名为 `.claude` 的目录:其中的 `skills`、`agents` 和 `commands` 目录639 * 名为 `.claude` 的目录:其中的 `skills`、`agents` 和 `commands` 目录

638 * 任何其他目录:其 `.claude` 下的这三个目录640 * 任何其他目录:其 `.claude` 下的这三个目录

639 641 

642当目录同时包含 `.claude-plugin/marketplace.json` 和 `.claude-plugin/plugin.json` 时,Claude Code 会验证市场,同时也验证插件的清单和组件文件。这需要 Claude Code v2.1.289 或更高版本。

643 

640Claude Code 不会跟随您指定的目录内的符号链接。其行为取决于链接所在的位置:644Claude Code 不会跟随您指定的目录内的符号链接。其行为取决于链接所在的位置:

641 645 

642* **插件或 `.claude` 根目录下作为链接的 `skills`、`agents` 或 `commands` 目录**:Claude Code 会警告其中的任何内容都未被读取。646* **插件或 `.claude` 根目录下作为链接的 `skills`、`agents` 或 `commands` 目录**:Claude Code 会警告其中的任何内容都未被读取。


647 651 

648* **插件根目录下的 `SKILL.md`**:针对插件目录运行 `claude plugin validate` 时,Claude Code 不会检查插件根目录下的 `SKILL.md`652* **插件根目录下的 `SKILL.md`**:针对插件目录运行 `claude plugin validate` 时,Claude Code 不会检查插件根目录下的 `SKILL.md`

649* **插件根目录下的 `CLAUDE.md`**:在插件运行中,Claude Code 还会对插件根目录下的 `CLAUDE.md` 发出警告653* **插件根目录下的 `CLAUDE.md`**:在插件运行中,Claude Code 还会对插件根目录下的 `CLAUDE.md` 发出警告

650* **市场运行中的插件文件**:从市场目录运行时,Claude Code 不会打开各插件的 skill、Agent、命令或 hook 文件,也不会打开它们捆绑的 MCP 服务器文件。要查找这些文件中的错误,请分别验证每个插件目录654* **市场运行中的插件文件**:从市场目录运行时,Claude Code 不会打开市场在其他目录中列出的插件的 skill、Agent、命令或 hook 文件,也不会打开它们捆绑的 MCP 服务器文件。要查找这些文件中的错误,请分别验证每个插件目录

651 655 

652<h4 id="output-and-exit-codes">656<h4 id="output-and-exit-codes">

653 输出和退出码657 输出和退出码

Details

100 Greet the user warmly and ask how you can help them today.100 Greet the user warmly and ask how you can help them today.

101 ```101 ```

102 102 

103 `disable-model-invocation: true` 行意味着 Claude 不会自己运行该技能,因此只有您触发它。从您希望 Claude 自己运行的技能中删除该行。技能的命令结合了插件名称和技能的名称,因此您将此技能作为 `/my-first-plugin:hello` 运行。对于其他 frontmatter 字段,请参阅[技能 frontmatter 参考](/docs/zh-CN/skills#frontmatter-reference)。103 `disable-model-invocation: true` 行意味着 Claude 不会自行运行该 skill。从您希望 Claude 自行运行的 skill 中删除该行。skill 的命令结合了插件名称和 skill 的名称,因此您将此 skill 作为 `/my-first-plugin:hello` 运行。对于其他 frontmatter 字段,请参阅[skill frontmatter 参考](/docs/zh-CN/skills#frontmatter-reference)。

104 </Step>104 </Step>

105 105 

106 <Step title="验证插件">106 <Step title="验证插件">

107 在运行任何内容之前检查清单和技能的 frontmatter:107 在运行任何内容之前检查清单和 skill 的 frontmatter:

108 108 

109 ```bash theme={null}109 ```bash theme={null}

110 claude plugin validate ./my-first-plugin110 claude plugin validate ./my-first-plugin

Details

215 215 

216要向用户发布新版本,更改插件的 `version`。用户只有在插件的计算版本与他们拥有的版本不同时才获得新副本。该版本首先来自 `plugin.json`,然后来自 marketplace 条目,根据 [版本和更新](/docs/zh-CN/plugins/loading#versions-and-updates)。216要向用户发布新版本,更改插件的 `version`。用户只有在插件的计算版本与他们拥有的版本不同时才获得新副本。该版本首先来自 `plugin.json`,然后来自 marketplace 条目,根据 [版本和更新](/docs/zh-CN/plugins/loading#versions-and-updates)。

217 217 

218用户从他们添加为本地目录的 marketplace [就地加载](/docs/zh-CN/plugins/loading#find-plugins-on-disk) 的插件不受 `version` 控制。它在每次会话启动时加载你的当前文件,无论其版本字符串说什么。218如果用户从通过本地路径添加的市场中[就地加载](/docs/zh-CN/plugins/loading#find-plugins-on-disk)插件,该插件不受 `version` 控制。无论其版本字符串是什么,它都会在每次会话启动时加载您当前的文件。

219 219 

220对于除了就地加载或来自 `command` 源的安装之外的每次安装,要么在每次发布时增加 `version`,要么省略它:220对于除了就地加载或来自 `command` 源的安装之外的每次安装,要么在每次发布时增加 `version`,要么省略它:

221 221 

Details

208Claude Code 根据插件的来源,从您保存它们的位置就地加载某些插件,并将其余的复制到缓存中:208Claude Code 根据插件的来源,从您保存它们的位置就地加载某些插件,并将其余的复制到缓存中:

209 209 

210* **`--plugin-dir` 和技能目录插件**:目录就地加载,永远不会被复制。`--plugin-url` 存档或 `--plugin-dir` `.zip` 首先被提取到会话临时目录中210* **`--plugin-dir` 和技能目录插件**:目录就地加载,永远不会被复制。`--plugin-url` 存档或 `--plugin-dir` `.zip` 首先被提取到会话临时目录中

211* **您从本地目录添加的市场中的相对路径插件**:插件从市场文件夹内的其路径就地加载。您对源目录的编辑在下次会话启动或 `/reload-plugins` 时生效,您不需要增加版本。插件的 hook 进程以及 MCP 和 LSP 服务器接收指向源目录的 `CLAUDE_PLUGIN_ROOT`。有关其 Node.js 包依赖项,请参阅[依赖项安装何时运行](#when-the-dependency-install-runs)211* **您从本地路径添加的市场中的相对路径插件**:插件从市场文件夹内的其路径就地加载。您对源目录的编辑在下次会话启动或 `/reload-plugins` 时生效,您不需要增加版本。插件的 hook 进程以及 MCP 和 LSP 服务器接收指向源目录的 `CLAUDE_PLUGIN_ROOT`。有关其 Node.js 包依赖项,请参阅[依赖项安装何时运行](#when-the-dependency-install-runs)

212* **[链接模式](/docs/zh-CN/plugins/marketplace-reference#command-plugin-source)中的 `command` 源插件**:命令打印的目录通过缓存条目中的链接就地加载212* **[链接模式](/docs/zh-CN/plugins/marketplace-reference#command-plugin-source)中的 `command` 源插件**:命令打印的目录通过缓存条目中的链接就地加载

213* **每个其他市场插件**:Claude Code 在安装时将插件复制到 `cache/<marketplace>/<plugin>/<version>/` 中,并从该副本加载。插件目录外的文件不会被复制,因此当复制的插件内的脚本读取插件根目录上方的路径(如 `../shared`)时,它找不到它们213* **每个其他市场插件**:Claude Code 在安装时将插件复制到 `cache/<marketplace>/<plugin>/<version>/` 中,并从该副本加载。插件目录外的文件不会被复制,因此当复制的插件内的脚本读取插件根目录上方的路径(如 `../shared`)时,它找不到它们

214 214 


250* 当 Claude Code 将插件更新到新版本时250* 当 Claude Code 将插件更新到新版本时

251* 在会话启动时,当已启用的插件未缓存时,例如在新机器上251* 在会话启动时,当已启用的插件未缓存时,例如在新机器上

252 252 

253对于从本地目录市场[就地加载](#in-place-and-copied-plugins)的相对路径插件,Claude Code 不会将依赖项安装到源目录中。自己在那里安装它们,或从 hook 安装到[`${CLAUDE_PLUGIN_DATA}`](/docs/zh-CN/plugins/components#path-variables-and-persistent-data)。253对于从您通过本地路径添加的市场中[就地加载](#in-place-and-copied-plugins)的相对路径插件,Claude Code 不会将依赖项安装到源目录中。自己在那里安装它们,或从 hook 安装到[`${CLAUDE_PLUGIN_DATA}`](/docs/zh-CN/plugins/components#path-variables-and-persistent-data)。

254 254 

255安装仅在插件的根目录同时包含 `package.json` 和支持的锁定文件时运行。255安装仅在插件的根目录同时包含 `package.json` 和支持的锁定文件时运行。

256 256 


315 315 

316固定 `"version"` 的清单是计算的版本在提交中保持相同的一种方式。有关解析顺序,请参阅[Claude Code 如何计算版本](#how-claude-code-computes-the-version)。316固定 `"version"` 的清单是计算的版本在提交中保持相同的一种方式。有关解析顺序,请参阅[Claude Code 如何计算版本](#how-claude-code-computes-the-version)。

317 317 

318从本地目录市场[就地加载](#in-place-and-copied-plugins)的插件在每次会话启动时加载其当前源文件,无论其版本字符串说什么。对于来自[托管在 claude.ai 上的市场](/docs/zh-CN/plugins/install#add-from-claude-ai)的插件,claude.ai 为插件记录的版本是其版本,清单的 `version` 不被读取。318从您通过本地路径添加的市场中[就地加载](#in-place-and-copied-plugins)的插件在每次会话启动时加载其当前源文件,无论其版本字符串说什么。对于来自[托管在 claude.ai 上的市场](/docs/zh-CN/plugins/install#add-from-claude-ai)的插件,claude.ai 为插件记录的版本是其版本,清单的 `version` 不被读取。

319 319 

320<h3 id="how-claude-code-computes-the-version">320<h3 id="how-claude-code-computes-the-version">

321 Claude Code 如何计算版本321 Claude Code 如何计算版本

Details

199 `version`199 `version`

200</h3>200</h3>

201 201 

202版本字符串,不针对 semver 检查。设置它会将 plugin 固定到该版本,直到您更改它;参见[版本和更新](/docs/zh-CN/plugins/loading#versions-and-updates)。具有[`command` 源](/docs/zh-CN/plugins/marketplace-reference)的 plugin、来自[托管在 claude.ai 上的 marketplace](/docs/zh-CN/plugins/install#add-from-claude-ai) 的 plugin 以及从作为本地目录添加的 marketplace [就地加载](/docs/zh-CN/plugins/loading#find-plugins-on-disk)的 plugin 不由此字段固定。202版本字符串,不针对 semver 检查。设置它会将插件固定到该版本,直到您更改它;参见[版本和更新](/docs/zh-CN/plugins/loading#versions-and-updates)。具有[`command` 源](/docs/zh-CN/plugins/marketplace-reference)的插件、来自[托管在 claude.ai 上的市场](/docs/zh-CN/plugins/install#add-from-claude-ai)的插件以及从通过本地路径添加的市场[就地加载](/docs/zh-CN/plugins/loading#find-plugins-on-disk)的插件不由此字段固定。

203 203 

204<h3 id="metadata">204<h3 id="metadata">

205 `metadata`205 `metadata`

Details

434| `Link`, `Code`, `Markdown` | 带有 `href` 和可选 `label` 的链接、代码块和格式化为 Claude 回复方式的文本。`Markdown` 在 `text` 属性中而不是在 `children` 中获取其内容,当您传递 `onLinkPress` 时需要 `key`。 | 到处 |434| `Link`, `Code`, `Markdown` | 带有 `href` 和可选 `label` 的链接、代码块和格式化为 Claude 回复方式的文本。`Markdown` 在 `text` 属性中而不是在 `children` 中获取其内容,当您传递 `onLinkPress` 时需要 `key`。 | 到处 |

435| `Input`, `Select` | 文本字段和下拉列表 | 终端、桌面 |435| `Input`, `Select` | 文本字段和下拉列表 | 终端、桌面 |

436| `Svg` | SVG 文档 | 桌面 |436| `Svg` | SVG 文档 | 桌面 |

437| `Client` | 由您的第二个文件绘制的区域,用于动画和指针输入。该文件没有 mods API。它仅通过发布数据到达您的 hook,该数据作为 `ui.message` 事件到达。 | 终端、桌面 |437| `Client` | 由您的第二个文件绘制的区域,用于动画和指针输入。该文件没有 mod API。它通过发布数据到达您的 hook,该数据作为 `ui.message` 事件到达。如果它加载、绘制或运行失败,您的 hook 会收到 [`ui.fault`](/docs/zh-CN/plugins/mods/reference#interface) 事件。 | 终端、桌面 |

438| `Raster`, `Image` | [彩色单元格网格](#draw-a-grid-of-colored-cells)和图片 | 终端 |438| `Raster`, `Image` | [彩色单元格网格](#draw-a-grid-of-colored-cells)和图片 | 终端 |

439 439 

440如果您的模块是 `.tsx` 或 `.jsx` 文件,您可以将树写成 JSX。首先从 `$.ui.resolve(e)` 解构元素。440如果您的模块是 `.tsx` 或 `.jsx` 文件,您可以将树写成 JSX。首先从 `$.ui.resolve(e)` 解构元素。


664 当 Claude Code 在不被要求时重绘664 当 Claude Code 在不被要求时重绘

665</h3>665</h3>

666 666 

667当站点的 prop 更改或终端的宽度更改时,Claude Code 会再次运行您的 `ui.render` hook。它不会按计时器运行 hook,也无法判断您的模块中的变量何时更改。667当站点的 prop 更改或终端的宽度更改时,Claude Code 会再次运行您的 `ui.render` hook。当站点中的某个 `Client` 失败且您的 mod 处理 [`ui.fault`](/docs/zh-CN/plugins/mods/reference#interface) 时,Claude Code 会在您的 `ui.fault` hook 返回后再运行一次该 hook,以便您的 `ui.render` hook 可以省略该 `Client`。它不会按计时器运行 hook,也无法判断您的模块中的变量何时更改。

668 668 

669<h3 id="redraw-when-your-data-changes">669<h3 id="redraw-when-your-data-changes">

670 当您的数据更改时重绘670 当您的数据更改时重绘

Details

6 6 

7> Claude Code mod 的完整参考:hook 模块布局、事件、mods API 方法、渲染位置、按使用入口划分的元素、限制和设置。7> Claude Code mod 的完整参考:hook 模块布局、事件、mods API 方法、渲染位置、按使用入口划分的元素、限制和设置。

8 8 

9查阅 [mod](/docs/zh-CN/plugins/mods/overview) 可以处理的任何事件、可以调用的任何 mods API 方法,或可以在其中绘制的任何渲染位置,适用于 v2.1.287 起的 Claude Code CLI 和 Desktop 应用。每个条目给出名称和一行描述,如有相应的指南章节,还会链接到该章节。9查阅 [mod](/docs/zh-CN/plugins/mods/overview) 可以处理的任何事件、可以调用的任何 mods API 方法,或可以在其中绘制的任何渲染位置,适用于 v2.1.289 起的 Claude Code CLI 和 Desktop 应用。每个条目给出名称和一行描述,如有相应的指南章节,还会链接到该章节。

10 10 

11<Note>11<Note>

12 完整的参考是 Claude Code 的 [mod TypeScript 声明](https://github.com/anthropics/claude-code/blob/main/mods/types/claude-code.d.ts),其中描述了每个事件、方法和元素,并附有示例。GitHub 上的副本可能比您安装的 Claude Code 版本更旧。两者不一致时,请以 [Claude Code 为您的版本写入的副本](/docs/zh-CN/plugins/mods/create#get-the-types-for-your-build)为准。12 完整的参考是 Claude Code 的 [mod TypeScript 声明](https://github.com/anthropics/claude-code/blob/main/mods/types/claude-code.d.ts),其中描述了每个事件、方法和元素,并附有示例。GitHub 上的副本可能比您安装的 Claude Code 版本更旧。两者不一致时,请以 [Claude Code 为您的版本写入的副本](/docs/zh-CN/plugins/mods/create#get-the-types-for-your-build)为准。


128 子代理128 子代理

129</h3>129</h3>

130 130 

131子代理事件在向 Claude 提供某个子代理类型时,以及子代理即将启动时触发:131子代理事件在向 Claude 提供某个子代理类型时,以及子代理或 agent team 队友即将启动时触发:

132 132 

133| 事件 | 触发时机 | hook 可以返回 |133| 事件 | 触发时机 | hook 可以返回 |

134| :- | :- | :- |134| :- | :- | :- |

135| `agent.offer` | 向 Claude 提供某个子代理类型 | `{ isOffered: false }` 以不提供它 |135| `agent.offer` | 向 Claude 提供某个子代理类型 | `{ isOffered: false }` 以不提供它 |

136| `agent.spawn` | 子代理即将启动 | `{ model }` 或 `{ deny: reason }` |136| `agent.spawn` | 子代理或 [agent team](/docs/zh-CN/agent-teams) 队友即将启动。对于队友,`e.isTeammate` 为 `true`。 | `next({ ...e, model })` 以选择其模型,或 `{ deny: reason }` |

137 137 

138<h3 id="interface">138<h3 id="interface">

139 界面139 界面


149| `ui.focus`, `ui.scroll` | 获得焦点的控件,或窗格或横栏的滚动位置即将更改 |149| `ui.focus`, `ui.scroll` | 获得焦点的控件,或窗格或横栏的滚动位置即将更改 |

150| `ui.close` | 窗格即将关闭。`e.id` 是该窗格,`e.origin.kind` 为 `plugin`、`person` 或 `unload`。 |150| `ui.close` | 窗格即将关闭。`e.id` 是该窗格,`e.origin.kind` 为 `plugin`、`person` 或 `unload`。 |

151| [`ui.message`](/docs/zh-CN/plugins/mods/interface#build-a-tree-from-elements) | `Client` 元素向其 mod 发送数据 |151| [`ui.message`](/docs/zh-CN/plugins/mods/interface#build-a-tree-from-elements) | `Client` 元素向其 mod 发送数据 |

152| [`ui.fault`](/docs/zh-CN/plugins/mods/interface#redraw-when-something-changes) | 您的 mod 绘制的 `Client` 元素加载、绘制或运行失败。`e.phase` 为 `load`、`render` 或 `run`,`e.reason` 是错误消息。需要 Claude Code v2.1.289 或更高版本。 |

152 153 

153<h3 id="other-mods">154<h3 id="other-mods">

154 其他 mod155 其他 mod


192| 命名空间 | 方法 |193| 命名空间 | 方法 |

193| :- | :- |194| :- | :- |

194| `$.plugin` | `name`、`root`:此插件的名称和目录 |195| `$.plugin` | `name`、`root`:此插件的名称和目录 |

195| [`$.ui`](/docs/zh-CN/plugins/mods/interface#pick-where-to-draw) | `resolve`、`invalidate`、`open`、`close`、`panes`、`focus`、`scroll`、`toast`、`status`、`log`、`notice`、`ask`、`copy`、`blit` |196| [`$.ui`](/docs/zh-CN/plugins/mods/interface#pick-where-to-draw) | `resolve`、`invalidate`、`open`、`close`、`panes`、`focus`、`scroll`、`toast`、`status`、`log`、`notice`、`ask`、`copy`、`selection`、`blit` |

196| [`$.command`](/docs/zh-CN/plugins/mods/api#add-a-command) | `register`、`run`、`list` |197| [`$.command`](/docs/zh-CN/plugins/mods/api#add-a-command) | `register`、`run`、`list` |

197| [`$.tool`](/docs/zh-CN/plugins/mods/api#add-a-tool) | `register`、`call`、`check`、`list` |198| [`$.tool`](/docs/zh-CN/plugins/mods/api#add-a-tool) | `register`、`call`、`check`、`list` |

198| `$.agent` | `register`、`spawn`、`list` |199| `$.agent` | `register`、`spawn`、`list` |


276 277 

277| 限制 | 值 |278| 限制 | 值 |

278| :- | :- |279| :- | :- |

279| 单个事件中 hook 自身的执行时间,不计入在 `next` 内或在除 `$.clock.sleep` 之外的 mods API 调用中花费的时间 | 10 秒 |280| 单个事件中 hook 自身的执行时间,不计入在 `next` 内或在除 `$.clock.sleep` 之外的 mods API 调用中花费的时间 | 10 秒;对于 `prompt.edit` hook 为 50 毫秒 |

280| `.catch` 处理程序的执行时间 | 1 秒 |281| `.catch` 处理程序的执行时间 | 1 秒 |

281| 所有 `session.end` hook 合计 | 1.5 秒 |282| 所有 `session.end` hook 合计 | 与 [SessionEnd hook 预算](/docs/zh-CN/hooks#sessionend-input)相同,除非您更改,否则为 1.5 秒,从您设置中的 `SessionEnd` hook 完成时开始计算 |

282| `$.process.run` 超时时间 | 默认 30 秒,最长 10 分钟 |283| `$.process.run` 超时时间 | 默认 30 秒,最长 10 分钟 |

283| `$.model.complete` `maxTokens` | 默认 1024,最多 64,000 或模型的输出上限 |284| `$.model.complete` `maxTokens` | 默认 1024,最多 64,000 或模型的输出上限 |

284| `$.fs.read` 和 `$.fs.write` | 单个文件 4 MiB |285| `$.fs.read` 和 `$.fs.write` | 单个文件 4 MiB |

Details

1016 1016 

1017请按顺序检查以下原因:1017请按顺序检查以下原因:

1018 1018 

1019* **skill 设置了 `disable-model-invocation: true`**:设置该字段后,只有您可以调用该 skill。[创建您的第一个插件](/docs/zh-CN/plugins/create#create-your-first-plugin)中的模板 skill 设置了该字段。请从希望 Claude 自行调用的 skill 中删除该行。[控制谁调用 skill](/docs/zh-CN/skills#control-who-invokes-a-skill) 介绍了该字段1019* **skill 设置了 `disable-model-invocation: true`**:[创建您的第一个插件](/docs/zh-CN/plugins/create#create-your-first-plugin)中的模板 skill 设置了该字段。请从希望 Claude 自行调用的 skill 中删除该行。[控制谁调用 skill](/docs/zh-CN/skills#control-who-invokes-a-skill) 介绍了该字段

1020* **描述与人们的提问方式不匹配**:请完成[Skill 未触发](/docs/zh-CN/skills#skill-not-triggering)中的检查1020* **描述与人们的提问方式不匹配**:请完成[Skill 未触发](/docs/zh-CN/skills#skill-not-triggering)中的检查

1021* **描述被截断**:当安装了许多 skill 时,Claude Code 会缩短描述以适应列表的字符预算,这可能会删除 Claude 匹配请求所需的关键字。请参阅[Skill 描述被截断](/docs/zh-CN/skills#skill-descriptions-are-cut-short)1021* **描述被截断**:当安装了许多 skill 时,Claude Code 会缩短描述以适应列表的字符预算,这可能会删除 Claude 匹配请求所需的关键字。请参阅[Skill 描述被截断](/docs/zh-CN/skills#skill-descriptions-are-cut-short)

1022 1022 

sandboxing.md +1 −1

Details

463 463 

464掩码需要满足以下条件:464掩码需要满足以下条件:

465 465 

466* **TLS 终止**:代理在请求内容中替换真实值,因此它必须能够看到请求内容。请设置 [`network.tlsTerminate`](/docs/zh-CN/settings-reference#sandbox-network-tlsterminate),使代理自行终止 TLS。如果不设置,掩码会失败,但不会暴露任何内容:命令仍然只能看到哨兵值,但哨兵值会原样到达服务器,导致身份验证失败。Claude Code 会在启动时报告此错误配置。466* **TLS 终止**:代理在请求内容中替换真实值,因此它必须能够看到请求内容。请设置 [`network.tlsTerminate`](/docs/zh-CN/settings-reference#sandbox-network-tlsterminate),使代理自行终止 TLS。如果不设置,掩码会失败,但不会暴露任何内容:命令仍然只能看到哨兵值,但哨兵值会原样到达服务器,导致身份验证失败。要检查此错误配置,请在终端中运行 `claude doctor`,并查看是否有 `TLS termination is unavailable` 警告。

467* **允许的目标**:每个 `mask` 条目可以列出 `injectHosts`,即允许真实值到达的主机。代理只在[域名允许列表](#network-isolation)所允许的连接上注入凭据,因此每个 `injectHosts` 主机还必须能够通过 `network.allowedDomains` 访问。对于没有 `injectHosts` 的 `mask` 条目,代理会在发往 `network.allowedDomains` 中每个主机的请求中替换真实值。467* **允许的目标**:每个 `mask` 条目可以列出 `injectHosts`,即允许真实值到达的主机。代理只在[域名允许列表](#network-isolation)所允许的连接上注入凭据,因此每个 `injectHosts` 主机还必须能够通过 `network.allowedDomains` 访问。对于没有 `injectHosts` 的 `mask` 条目,代理会在发往 `network.allowedDomains` 中每个主机的请求中替换真实值。

468* **受信任的设置作用域**:掩码会授权代理将您的真实凭据发送到某处,因此 Claude Code 只接受来自用户设置、托管设置和 `--settings` 标志的 `mask` 条目、`network.tlsTerminate`、[`credentials.allowPlaintextInject`](/docs/zh-CN/settings-reference#sandbox-credentials-allowplaintextinject)、`awsPairs` 和 `sigv4`。它会忽略仓库的 `.claude/settings.json` 或 `.claude/settings.local.json` 中的这些设置。当您的管理员通过服务器托管设置下发 `mask` 条目、`network.tlsTerminate` 或 `credentials.allowPlaintextInject` 时,它们属于[需要批准的设置](/docs/zh-CN/server-managed-settings#security-approval-dialogs)。468* **受信任的设置作用域**:掩码会授权代理将您的真实凭据发送到某处,因此 Claude Code 只接受来自用户设置、托管设置和 `--settings` 标志的 `mask` 条目、`network.tlsTerminate`、[`credentials.allowPlaintextInject`](/docs/zh-CN/settings-reference#sandbox-credentials-allowplaintextinject)、`awsPairs` 和 `sigv4`。它会忽略仓库的 `.claude/settings.json` 或 `.claude/settings.local.json` 中的这些设置。当您的管理员通过服务器托管设置下发 `mask` 条目、`network.tlsTerminate` 或 `credentials.allowPlaintextInject` 时,它们属于[需要批准的设置](/docs/zh-CN/server-managed-settings#security-approval-dialogs)。

469 469 

Details

195 195 

196运行器还在注册时向 Anthropic 报告选择加入,在启动时打印 `Registering as opted in to Anthropic-managed git (--use-anthropic-git-proxy)`。报告选择加入需要 Claude Code v2.1.267 或更高版本,较早的版本接受该标志而不报告它或打印该行。选择加入运行器上的每个会话然后使用 Anthropic 管理的 git 或按会话代理 URL。当会话使用按会话代理 URL 时,运行器记录一行 `[runner:warn]` 说明这一点。196运行器还在注册时向 Anthropic 报告选择加入,在启动时打印 `Registering as opted in to Anthropic-managed git (--use-anthropic-git-proxy)`。报告选择加入需要 Claude Code v2.1.267 或更高版本,较早的版本接受该标志而不报告它或打印该行。选择加入运行器上的每个会话然后使用 Anthropic 管理的 git 或按会话代理 URL。当会话使用按会话代理 URL 时,运行器记录一行 `[runner:warn]` 说明这一点。

197 197 

198<h4 id="github-api-access-without-the-github-cli">

199 不使用 GitHub CLI 访问 GitHub API

200</h4>

201 

202如果您的运行器镜像不包含 GitHub CLI,Claude Code 可以提供内置的 `gh`,因此 Claude 仍然可以创建 Pull Request、发表评论并读取 CI 结果。内置 `gh` 适用于使用 Anthropic 管理的 git 的运行器。它支持一个命令 `gh api`,用于调用 GitHub 的 REST API。需要运行器镜像中的 Claude Code v2.1.287 或更高版本。

203 

204此命令代替 `gh pr create` 创建 Pull Request。内置 `gh` 会为当前仓库填入 `{owner}` 和 `{repo}`:

205 

206```bash theme={null}

207gh api repos/{owner}/{repo}/pulls -f title='Fix' -f head='my-branch' -f base='main'

208```

209 

210* **凭据**:内置 `gh` 通过 Anthropic 管理的 git 发送其 REST 请求,由 Anthropic 端提供 GitHub 凭据,因此镜像无需为其准备 GitHub 令牌

211* **哪些会话可以获得它**:Anthropic 按会话决定是否由 Anthropic 管理的 git 为会话的 `gh` 提供服务。如果是,运行器为该会话记录的 `[runner:session] governed git ACTIVE` 行会显示 `gh_path_shim=true`。如果不是,该会话没有 `gh`

212* **`jq`**:如果您希望 `--jq` 可用,请在镜像中安装 `jq`

213* **[`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`](/docs/zh-CN/env-vars)**:如果会话环境设置了它,Claude Code 不会提供内置 `gh`,会话也就没有 `gh`

214 

215当镜像包含 GitHub CLI 时,会话使用它。

216 

198<h4 id="trust-a-private-certificate-authority-with-anthropic-managed-git">217<h4 id="trust-a-private-certificate-authority-with-anthropic-managed-git">

199 使用 Anthropic 管理的 git 信任专用证书颁发机构218 使用 Anthropic 管理的 git 信任专用证书颁发机构

200</h4>219</h4>

Details

117claude -p "your message" --cloud <session-id>117claude -p "your message" --cloud <session-id>

118```118```

119 119 

120对于 `<session-id>`,传递裸 `session_...` 或 `cse_...` ID 或会话的 claude.ai/code URL。成功发送打印 `Sent to cloud session.` 以及会话 ID 和查看链接。接受的 ID 形式、JSON 输出、帐户和策略要求以及错误参考在[从 CLI 发送后续消息](/docs/zh-CN/claude-code-on-the-web#send-follow-ups-from-the-cli)上,因为该命令对 Anthropic 托管的会话的工作方式相同。120对于 `<session-id>`,传递裸 `session_...` 或 `cse_...` ID 或会话的 claude.ai/code URL。成功发送打印 `Sent to cloud session.` 以及会话 ID 和查看链接。接受的 ID 形式、JSON 输出以及帐户和策略要求在[从 CLI 发送后续消息](/docs/zh-CN/claude-code-on-the-web#send-follow-ups-from-the-cli)上,因为该命令对 Anthropic 托管的会话的工作方式相同。

121 121 

122<h2 id="what’s-next">122<h2 id="what’s-next">

123 接下来的步骤123 接下来的步骤

Details

6 6 

7> 通过服务器交付的设置为您的组织集中配置 Claude Code,无需设备管理基础设施。7> 通过服务器交付的设置为您的组织集中配置 Claude Code,无需设备管理基础设施。

8 8 

9服务器管理的设置允许组织所有者通过 claude.ai 控制台中的 [**Admin Settings > Claude Code > Managed settings**](https://claude.ai/admin-settings/claude-code) 集中配置 Claude Code。Claude Code 客户端在用户使用符合条件的凭证在支持服务器管理交付的平台上进行身份验证时自动获取这些设置。请参阅[平台可用性](#platform-availability)了解符合条件的凭证和平台。9服务器管理的设置允许组织所有者通过 claude.ai 控制台中的 [**Organization settings > Claude Code > Managed settings**](https://claude.ai/admin-settings/claude-code) 集中配置 Claude Code。Claude Code 客户端在用户使用符合条件的凭据在支持服务器管理交付的平台上进行身份验证时自动获取这些设置。请参阅[平台可用性](#platform-availability)了解符合条件的凭据和平台。

10 10 

11<Note>11<Note>

12 服务器管理的设置可供 [Claude for Teams](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=server_settings_teams#team-&-enterprise) 和 [Claude for Enterprise](https://anthropic.com/contact-sales?utm_source=claude_code\&utm_medium=docs\&utm_content=server_settings_enterprise) 客户使用。12 服务器管理的设置可供 [Claude for Teams](https://claude.com/pricing?utm_source=claude_code\&utm_medium=docs\&utm_content=server_settings_teams#team-&-enterprise) 和 [Claude for Enterprise](https://anthropic.com/contact-sales?utm_source=claude_code\&utm_medium=docs\&utm_content=server_settings_enterprise) 客户使用。


41 41 

42<Steps>42<Steps>

43 <Step title="打开管理控制台">43 <Step title="打开管理控制台">

44 在 claude.ai 控制台中,转到 [**Admin Settings > Claude Code > Managed settings**](https://claude.ai/admin-settings/claude-code)。44 在 claude.ai 控制台中,转到 [**Organization settings > Claude Code > Managed settings**](https://claude.ai/admin-settings/claude-code)。

45 45 

46 如果链接将您重定向到不同的 Admin Settings 页面而不是 Claude Code 页面,您的账户没有所需的角色。Admin 和其他非 Owner 角色无法查看或编辑托管设置,因此请要求您的组织中的 Owner 或 Primary Owner 进行更改。请参阅[访问控制](#access-control)。46 如果链接将您重定向到其他 Organization settings 页面而不是 Claude Code 页面,则说明您的账户没有所需的角色。Admin 和其他非 Owner 角色无法查看或编辑托管设置,因此请要求您的组织中的 Owner 或 Primary Owner 进行更改。请参阅[访问控制](#access-control)。

47 </Step>47 </Step>

48 48 

49 <Step title="定义您的设置">49 <Step title="定义您的设置">

sessions.md +1 −0

Details

292| [自己命名 `<project>` 目录](#name-the-project-directory-yourself) | [`CLAUDE_CODE_PROJECT_DIR_NAME`](/docs/zh-CN/env-vars) | 环境变量 |292| [自己命名 `<project>` 目录](#name-the-project-directory-yourself) | [`CLAUDE_CODE_PROJECT_DIR_NAME`](/docs/zh-CN/env-vars) | 环境变量 |

293| 更改 30 天保留期 | [`cleanupPeriodDays`](/docs/zh-CN/settings-reference#cleanupperioddays) | `settings.json` |293| 更改 30 天保留期 | [`cleanupPeriodDays`](/docs/zh-CN/settings-reference#cleanupperioddays) | `settings.json` |

294| 为 [Claude Desktop 和 Cowork 文本记录](/docs/zh-CN/claude-directory#cleaned-up-automatically) 设置年龄限制 | [`desktopSessionCleanupPeriodDays`](/docs/zh-CN/settings-reference#desktopsessioncleanupperioddays) | 用户设置、托管设置或 `--settings` |294| 为 [Claude Desktop 和 Cowork 文本记录](/docs/zh-CN/claude-directory#cleaned-up-automatically) 设置年龄限制 | [`desktopSessionCleanupPeriodDays`](/docs/zh-CN/settings-reference#desktopsessioncleanupperioddays) | 用户设置、托管设置或 `--settings` |

295| 限制 `-p` 或 Agent SDK 会话的会话记录文件可增长的大小 | [`CLAUDE_CODE_TRANSCRIPT_LOCAL_GC`](/docs/zh-CN/env-vars) | 环境变量 |

295| 在所有模式下禁止文本记录写入 | [`CLAUDE_CODE_SKIP_PROMPT_HISTORY`](/docs/zh-CN/env-vars) | 环境变量 |296| 在所有模式下禁止文本记录写入 | [`CLAUDE_CODE_SKIP_PROMPT_HISTORY`](/docs/zh-CN/env-vars) | 环境变量 |

296| 禁止一次非交互式运行的写入 | [`--no-session-persistence`](/docs/zh-CN/cli-reference) | 与 `claude -p` 一起使用的 CLI 标志 |297| 禁止一次非交互式运行的写入 | [`--no-session-persistence`](/docs/zh-CN/cli-reference) | 与 `claude -p` 一起使用的 CLI 标志 |

297 298 

Details

990 990 

991当您的组织部署任何托管设置时,Claude Code 仅从托管源读取此键,并在您的其他文件中忽略它。991当您的组织部署任何托管设置时,Claude Code 仅从托管源读取此键,并在您的其他文件中忽略它。

992 992 

993关于此键如何应用于启动时的模型检查,请参阅 [Amazon Bedrock](/docs/zh-CN/amazon-bedrock#when-your-organization-enforces-a-model-allowlist) 和 [Google Cloud 的 Agent Platform](/docs/zh-CN/google-vertex-ai#when-your-organization-enforces-a-model-allowlist)。

994 

993* **Scope**: [`Any file`](#scopes)995* **Scope**: [`Any file`](#scopes)

994* **Type**: Boolean996* **Type**: Boolean

995 * `true`: 当**默认**会解析为 `availableModels` 外的模型时,Claude Code 将其解析为列表中第一个可用的模型997 * `true`: 当**默认**会解析为 `availableModels` 外的模型时,Claude Code 将其解析为列表中第一个可用的模型


3135* [`CLAUDE_CODE_PROJECT_DIR_NAME`](/docs/zh-CN/sessions#name-the-project-directory-yourself),Claude Code 仅从启动环境读取,从每个文件中被忽略;需要 v2.1.234 或更高版本。3137* [`CLAUDE_CODE_PROJECT_DIR_NAME`](/docs/zh-CN/sessions#name-the-project-directory-yourself),Claude Code 仅从启动环境读取,从每个文件中被忽略;需要 v2.1.234 或更高版本。

3136* [`CLAUDE_CODE_RESTRICTED`](/docs/zh-CN/env-vars#variables),Claude Code 仅从启动环境读取,从每个文件中被忽略。3138* [`CLAUDE_CODE_RESTRICTED`](/docs/zh-CN/env-vars#variables),Claude Code 仅从启动环境读取,从每个文件中被忽略。

3137* [`CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY`](/docs/zh-CN/env-vars#variables),Claude Code 仅从启动环境读取,从每个文件中被忽略。该变量需要 Claude Code v2.1.283 或更高版本。3139* [`CLAUDE_CODE_DISABLE_POWERSHELL_CMD_RM_DENY`](/docs/zh-CN/env-vars#variables),Claude Code 仅从启动环境读取,从每个文件中被忽略。该变量需要 Claude Code v2.1.283 或更高版本。

3138* [`CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT` 和 `CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT`](/docs/zh-CN/env-vars#variables),Claude Code 仅从启动环境读取,从每个文件中被忽略。3140* [`CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT`、`CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT` 和 `CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT`](/docs/zh-CN/env-vars#variables),Claude Code 仅从启动环境读取,从每个文件中被忽略。

3139 3141 

3140<h3 id="filecheckpointingenabled">3142<h3 id="filecheckpointingenabled">

3141 `fileCheckpointingEnabled`3143 `fileCheckpointingEnabled`

skills.md +16 −3

Details

561 561 

562默认情况下,您和 Claude 都可以调用任何 skill。您可以输入 `/skill-name` 直接调用它,Claude 也可以在与您的对话相关时自动加载它。有两个 frontmatter 字段可用于限制这一点:562默认情况下,您和 Claude 都可以调用任何 skill。您可以输入 `/skill-name` 直接调用它,Claude 也可以在与您的对话相关时自动加载它。有两个 frontmatter 字段可用于限制这一点:

563 563 

564* **`disable-model-invocation: true`**:只有您可以调用该 skill。适用于具有副作用或您希望控制时机的工作流,例如 `/commit`、`/deploy` 或 `/send-slack-message`。您不会希望 Claude 因为代码看起来已准备就绪就决定进行部署。564* **`disable-model-invocation: true`**:Claude 无法自行调用该 skill。适用于具有副作用或您希望控制时机的工作流,例如 `/commit`、`/deploy` 或 `/send-slack-message`。您不会希望 Claude 因为代码看起来已准备就绪就决定进行部署。

565 565 

566* **`user-invocable: false`**:只有 Claude 可以调用该 skill。适用于无法作为命令执行的背景知识。例如,`legacy-system-context` skill 解释旧系统的工作原理。Claude 应在相关时了解这些内容,但 `/legacy-system-context` 对用户而言并不是一个有意义的操作。566* **`user-invocable: false`**:只有 Claude 可以调用该 skill。适用于无法作为命令执行的背景知识。例如,`legacy-system-context` skill 解释旧系统的工作原理。Claude 应在相关时了解这些内容,但 `/legacy-system-context` 对用户而言并不是一个有意义的操作。

567 567 

568此示例创建了一个只有您可以触发的部署 skill。如果您设置 `disable-model-invocation: true`,Claude 就无法自动运行该 skill:568此示例创建了一个部署 skill。如果您设置 `disable-model-invocation: true`,Claude 就无法自动运行该 skill:

569 569 

570```yaml theme={null}570```yaml theme={null}

571---571---


589| Frontmatter | 您可以调用 | Claude 可以调用 | 何时加载到上下文中 |589| Frontmatter | 您可以调用 | Claude 可以调用 | 何时加载到上下文中 |

590| :- | :- | :- | :- |590| :- | :- | :- | :- |

591| (默认) | 是 | 是 | 描述始终在上下文中,调用时加载完整 skill |591| (默认) | 是 | 是 | 描述始终在上下文中,调用时加载完整 skill |

592| `disable-model-invocation: true` | 是 | 否 | 描述不在上下文中,您调用时加载完整 skill |592| `disable-model-invocation: true` | 是 | 不能自行调用 | 描述不在上下文中,调用时加载完整 skill |

593| `user-invocable: false` | 否 | 是 | 描述始终在上下文中,调用时加载完整 skill |593| `user-invocable: false` | 否 | 是 | 描述始终在上下文中,调用时加载完整 skill |

594 594 

595<Note>595<Note>

596 在常规会话中,skill 描述会加载到上下文中,以便 Claude 知道有哪些可用的 skill,但完整的 skill 内容仅在调用时加载。[预加载了 skill 的子代理](/docs/zh-CN/sub-agents#preload-skills-into-subagents)的工作方式不同:完整的 skill 内容会在启动时注入。596 在常规会话中,skill 描述会加载到上下文中,以便 Claude 知道有哪些可用的 skill,但完整的 skill 内容仅在调用时加载。[预加载了 skill 的子代理](/docs/zh-CN/sub-agents#preload-skills-into-subagents)的工作方式不同:完整的 skill 内容会在启动时注入。

597</Note>597</Note>

598 598 

599<h4 id="where-you-write-the-skill’s-name">

600 在何处写 skill 名称

601</h4>

602 

603要直接运行 skill,请将其名称放在消息开头。如果放在普通文本之后,该名称会授予 Claude 运行该 skill 的权限,但不会直接运行它:

604 

605| 位置 | 示例 | 结果 |

606| :- | :- | :- |

607| 消息开头 | `/deploy staging` | Claude Code 直接运行该 skill |

608| 普通文本之后,作为单独的词且不附带任何标点 | `go ahead and /deploy to staging` | 不会直接运行任何内容。该名称视为您针对该消息授予的权限:Claude 可以在回复时运行该 skill,并根据您的措辞判断您是否要求它这样做 |

609 

610如果只是想提及该 skill 而不允许其运行,请省略斜杠。

611 

599<h3 id="skill-content-lifecycle">612<h3 id="skill-content-lifecycle">

600 Skill 内容生命周期613 Skill 内容生命周期

601</h3>614</h3>

sub-agents.md +1 −1

Details

632 632 

633每个列出的技能的完整内容被注入到 subagent 的上下文中。此字段控制哪些技能被预加载,而不是 subagent 可以访问哪些技能:没有它,subagent 仍然可以在执行期间通过 Skill 工具发现和调用项目、用户和 plugin 技能。要防止 subagent 完全调用技能,请从 [`tools`](#available-tools) 列表中省略 `Skill` 或将其添加到 `disallowedTools`。633每个列出的技能的完整内容被注入到 subagent 的上下文中。此字段控制哪些技能被预加载,而不是 subagent 可以访问哪些技能:没有它,subagent 仍然可以在执行期间通过 Skill 工具发现和调用项目、用户和 plugin 技能。要防止 subagent 完全调用技能,请从 [`tools`](#available-tools) 列表中省略 `Skill` 或将其添加到 `disallowedTools`。

634 634 

635您无法预加载设置了 [`disable-model-invocation: true`](/docs/zh-CN/skills#control-who-invokes-a-skill) 的技能,因为预加载来自 Claude 可以调用的相同技能集。这包括捆绑的 `/verify` 技能:只有您可以运行它,因此它也无法被预加载。635您无法预加载设置了 [`disable-model-invocation: true`](/docs/zh-CN/skills#control-who-invokes-a-skill) 的 skill,因为预加载的来源与 Claude 可以调用的 skill 集合相同。这包括内置的 `/verify` skill,Claude 无法自行运行它。

636 636 

637如果列出的技能缺失或被禁用,例如由您的组织的策略,Claude Code 会跳过它并向调试日志记录警告。637如果列出的技能缺失或被禁用,例如由您的组织的策略,Claude Code 会跳过它并向调试日志记录警告。

638 638 

Details

487 487 

488Claude Code 使用 `-ExecutionPolicy Bypass` 仅在进程范围内生成 PowerShell,因此 `.ps1` 脚本和模块导入可以在默认 Windows 安装上工作,无需更改机器的策略。进程范围的绕过不会覆盖组策略 `MachinePolicy` 或 `UserPolicy`,因此企业策略仍然适用。要改为遵守机器的有效执行策略,请设置 `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY=1`。488Claude Code 使用 `-ExecutionPolicy Bypass` 仅在进程范围内生成 PowerShell,因此 `.ps1` 脚本和模块导入可以在默认 Windows 安装上工作,无需更改机器的策略。进程范围的绕过不会覆盖组策略 `MachinePolicy` 或 `UserPolicy`,因此企业策略仍然适用。要改为遵守机器的有效执行策略,请设置 `CLAUDE_CODE_POWERSHELL_RESPECT_EXECUTION_POLICY=1`。

489 489 

490<h3 id="bash-deny-rules-also-turn-off-the-powershell-tool">

491 Bash 拒绝规则也会关闭 PowerShell 工具

492</h3>

493 

494在安装了 Git Bash 的 Windows 上,拒绝 Bash 也会在该会话中关闭 PowerShell 工具。这既适用于限定范围的规则(例如 `Bash(git push *)`),也适用于单独的 `Bash`,并且适用于来自您某个设置文件或 `--disallowedTools` 的规则。Claude Code 这样做是因为 `Bash` 规则不会限制 PowerShell 工具,后者有[自己的权限规则](/docs/zh-CN/permissions#powershell)。如果 PowerShell 保持开启,Claude 可能会在其中运行您的规则在 Bash 中所拒绝的内容。

495 

496要在存在 Bash 拒绝规则的同时保持 PowerShell 工具开启,请执行以下任一操作:

497 

498* 在您的环境或设置文件的 `env` 块中设置 `CLAUDE_CODE_USE_POWERSHELL_TOOL=1`,如[启用 PowerShell 工具](#enable-the-powershell-tool)中所示。

499* 向设置文件添加限定范围的 [`PowerShell` 权限规则](/docs/zh-CN/permissions#powershell),例如 `PowerShell(git push *)` 拒绝规则。

500 

501如果没有其中任何一项,限定范围的 Bash 拒绝规则会保留 Bash 工具可用,而 Claude Code 会在不发出警告的情况下关闭 PowerShell。移除整个 Bash 工具的规则会使 Claude 在该会话中没有任何 shell 工具。

502 

490<h3 id="shell-selection-in-settings-hooks-and-skills">503<h3 id="shell-selection-in-settings-hooks-and-skills">

491 设置、hooks 和 skills 中的 shell 选择504 设置、hooks 和 skills 中的 shell 选择

492</h3>505</h3>

Details

62连接 GitHub 是一次性步骤。如果您已经使用 GitHub CLI,可以[从终端执行此操作](#connect-from-your-terminal),而不是使用浏览器。62连接 GitHub 是一次性步骤。如果您已经使用 GitHub CLI,可以[从终端执行此操作](#connect-from-your-terminal),而不是使用浏览器。

63 63 

64<Note>64<Note>

65 在 Team 和 Enterprise 计划上,**Sign in with GitHub** 步骤仅在您的 Claude 组织的[所有者](/docs/zh-CN/server-managed-settings#access-control)在[**Admin settings > Connectors**](https://claude.ai/admin-settings/connectors)处打开 GitHub 连接器后才有效。在此之前,该步骤显示"GitHub access is required for Claude Code on the web"而不是登录按钮。连接器打开后,重新加载 [claude.ai/code](https://claude.ai/code)并从第一步重新开始。第二个切换开关[Quick web setup](/docs/zh-CN/claude-code-on-the-web#github-authentication-options)位于[**Admin settings > Claude Code**](https://claude.ai/admin-settings/claude-code),是可选的:打开它后,`/web-setup` 可以工作,入门流程会为成员创建环境。65 在 Team 和 Enterprise 计划上,**Sign in with GitHub** 步骤仅在您的 Claude 组织的[所有者](/docs/zh-CN/server-managed-settings#access-control)在[**Organization settings > Connectors**](https://claude.ai/admin-settings/connectors)处打开 GitHub 连接器后才有效。在此之前,该步骤显示"GitHub access is required for Claude Code cloud sessions"而不是登录按钮。连接器打开后,重新加载 [claude.ai/code](https://claude.ai/code)并从第一步重新开始。第二个切换开关[Quick setup](/docs/zh-CN/claude-code-on-the-web#quick-setup-for-team-and-enterprise)位于[**Organization settings > Claude Code**](https://claude.ai/admin-settings/claude-code),是可选的:打开它后,`/web-setup` 可以工作,入门流程会为成员创建环境。

66</Note>66</Note>

67 67 

68<Steps>68<Steps>


84 [云环境](/docs/zh-CN/cloud-environments)是保存的配置,控制会话期间 Claude 拥有的网络访问权限以及会话启动时运行的内容。连接 GitHub 后发生的情况取决于您的计划:84 [云环境](/docs/zh-CN/cloud-environments)是保存的配置,控制会话期间 Claude 拥有的网络访问权限以及会话启动时运行的内容。连接 GitHub 后发生的情况取决于您的计划:

85 85 

86 * **Pro 和 Max**:入门流程为您创建一个名为**Default**的环境。86 * **Pro 和 Max**:入门流程为您创建一个名为**Default**的环境。

87 * **Team 和 Enterprise**:入门流程显示**Create your first cloud environment**表单。保持预填充的名称和网络访问不变,然后单击**Create & finish**以创建**Default**环境。如果所有者已打开[Quick web setup](/docs/zh-CN/claude-code-on-the-web#github-authentication-options),入门流程会为您创建**Default**。87 * **Team 和 Enterprise**:入门流程显示**Create your first cloud environment**表单。保持预填充的名称和网络访问不变,然后单击**Create & finish**以创建**Default**环境。如果所有者已打开[Quick setup](/docs/zh-CN/claude-code-on-the-web#quick-setup-for-team-and-enterprise),入门流程会为您创建**Default**。

88 88 

89 **Default** 使用[`Trusted` 网络访问](/docs/zh-CN/cloud-environments#access-levels):会话可以访问[常见包注册表](/docs/zh-CN/cloud-environments#default-allowed-domains)和其他允许列表中的域,以及通过会话网络的其他任何内容都无法访问。有关无需任何配置即可使用的内容,请参阅[已安装的工具](/docs/zh-CN/cloud-environments#installed-tools)。89 **Default** 使用[`Trusted` 网络访问](/docs/zh-CN/cloud-environments#access-levels):会话可以访问[常见包注册表](/docs/zh-CN/cloud-environments#default-allowed-domains)和其他允许列表中的域,以及通过会话网络的其他任何内容都无法访问。有关无需任何配置即可使用的内容,请参阅[已安装的工具](/docs/zh-CN/cloud-environments#installed-tools)。

90 90 


96 从终端连接96 从终端连接

97</h3>97</h3>

98 98 

99如果您已经使用 GitHub CLI (`gh`),可以从终端为云会话连接 GitHub。这需要[Claude Code CLI](/docs/zh-CN/quickstart)。在 Team 和 Enterprise 计划上,只有在所有者打开[Quick web setup](/docs/zh-CN/claude-code-on-the-web#github-authentication-options)后,`/web-setup` 才可用。99如果您已经使用 GitHub CLI (`gh`),可以从终端为云端会话连接 GitHub。这需要[Claude Code CLI](/docs/zh-CN/quickstart)。在 Team 和 Enterprise 计划上,只有在所有者打开[Quick setup](/docs/zh-CN/claude-code-on-the-web#quick-setup-for-team-and-enterprise)后,`/web-setup` 才可用。

100 100 

101运行 `/web-setup` 时,Claude Code 读取 `gh auth token` 打印的令牌,要求您确认,并将令牌发送给 Anthropic。Anthropic 使用您的 claude.ai 账户加密存储它,您的云会话使用它进行 GitHub 访问,直到您[删除它](#remove-the-web-setup-token)。您自己启动的云会话随后可以访问该令牌可以访问的任何存储库,无需安装 Claude GitHub App。[项目](/docs/zh-CN/claude-projects#set-up-github-access)中的线程仍然需要该应用。101运行 `/web-setup` 时,Claude Code 读取 `gh auth token` 打印的令牌,要求您确认,并将令牌发送给 Anthropic。Anthropic 使用您的 claude.ai 账户加密存储它,您的云会话使用它进行 GitHub 访问,直到您[删除它](#remove-the-web-setup-token)。您自己启动的云会话随后可以访问该令牌可以访问的任何存储库,无需安装 Claude GitHub App。[项目](/docs/zh-CN/claude-projects#set-up-github-access)中的线程仍然需要该应用。

102 102 


259 259 

260如果您在 Claude Code 内输入它,命令菜单显示 `No commands match "/web-setup"`,或提交它返回 `Unknown command: /web-setup`,该命令被隐藏是因为未满足要求。原因通常是您使用 API 密钥或第三方提供商而不是 claude.ai 订阅进行身份验证。运行 `/login` 以使用您的 claude.ai 账户登录。260如果您在 Claude Code 内输入它,命令菜单显示 `No commands match "/web-setup"`,或提交它返回 `Unknown command: /web-setup`,该命令被隐藏是因为未满足要求。原因通常是您使用 API 密钥或第三方提供商而不是 claude.ai 订阅进行身份验证。运行 `/login` 以使用您的 claude.ai 账户登录。

261 261 

262在 Team 和 Enterprise 计划上,该命令默认被隐藏:[快速网络设置切换](/docs/zh-CN/claude-code-on-the-web#github-authentication-options)关闭,直到所有者打开它。当它关闭时,[从浏览器连接 GitHub](#connect-github) 代替。262在 Team 和 Enterprise 套餐上,该命令默认被隐藏:[快速设置开关](/docs/zh-CN/claude-code-on-the-web#quick-setup-for-team-and-enterprise)处于关闭状态,直到所有者将其打开。在其关闭期间,请改为[从浏览器连接 GitHub](#connect-github)。

263 263 

264该命令在另外两种情况下也被隐藏:264该命令在另外两种情况下也被隐藏:

265 265