{/* TRANSLATED — 已翻译为中文 */}

> ## 文档索引
> 在此获取完整文档索引：https://code.claude.com/docs/llms.txt
> 使用此文件发现所有可用页面，然后再进一步探索。

# 有效管理成本

> 跟踪令牌使用情况，设置团队支出限制，并通过上下文管理、模型选择、扩展思考设置和预处理钩子降低 Claude Code 成本。

Claude Code 按 API 令牌消耗计费。有关订阅计划定价（Pro、Max、Team、Enterprise），请参阅 [claude.com/pricing](https://claude.com/pricing)。每位开发者的成本因模型选择、代码库大小和使用模式（如运行多个实例或自动化）而有很大差异。

在企业部署中，平均成本约为每位活跃开发者每天 13 美元，每位开发者每月 150-250 美元，90% 的用户的成本保持在每个活跃日 30 美元以下。要估算您自己团队的支出，请从小型试点组开始，使用下面的跟踪工具建立基线，然后再进行更广泛的推广。

本页涵盖如何[跟踪成本](#track-your-costs)、[管理团队成本](#managing-costs-for-teams)和[减少令牌使用](#reduce-token-usage)。

## 跟踪成本

### 使用 `/usage` 命令

<Note>
  `/usage` 中的会话块显示 API 令牌使用情况，面向 API 用户。Claude Max 和 Pro 订阅者的使用量包含在订阅中，因此会话费用数字与计费无关。订阅者在同一屏幕上看到计划使用情况条、活动统计和使用明细。
</Note>

`/usage` 顶部的会话块显示当前会话的详细令牌使用统计。美元数字是根据令牌计数本地计算的估计值，可能与实际账单不同。有关权威计费信息，请参阅 [Claude Console](https://platform.claude.com/usage) 中的使用情况页面。

```text theme={null}
Total cost:            $0.55
Total duration (API):  6m 19.7s
Total duration (wall): 6h 33m 10.2s
Total code changes:    0 lines added, 0 lines removed
```

在 Pro、Max、Team 或 Enterprise 计划上，`/usage` 还显示哪些内容计入计划限制的明细。它将最近的使用情况归因于技能、子智能体、插件和各个 MCP 服务器，每个显示为总数的百分比。按 `d` 或 `w` 在最近 24 小时和最近 7 天之间切换。数字是近似值，从此机器上的本地会话历史计算，因此不包括来自其他设备或 claude.ai 的使用情况。

## 管理团队成本

使用 Claude API 时，您可以在 Claude Code 工作区总支出上[设置工作区支出限制](https://platform.claude.com/docs/en/build-with-claude/workspaces#workspace-limits)。管理员可以在 Console 中[查看成本和使用情况报告](https://platform.claude.com/docs/en/build-with-claude/workspaces#usage-and-cost-tracking)。

在 Pro 和 Max 计划上，您可以使用 `/usage-credits` 命令设置使用额度的每月支出限制。如果您在仍有可用使用额度时达到该限制，Claude Code 会提示您提高或移除限制，以便您可以继续使用而不离开 CLI。更改限制需要账户上的计费访问权限。

<Note>
  当您首次使用 Claude Console 账户认证 Claude Code 时，系统会自动为您创建一个名为"Claude Code"的工作区。此工作区为组织中所有 Claude Code 使用情况提供集中的成本跟踪和管理。您无法为此工作区创建 API 密钥；它专门用于 Claude Code 认证和使用。

  对于具有自定义速率限制的组织，此工作区中的 Claude Code 流量计入组织的整体 API 速率限制。您可以在 Claude Console 中此工作区的限制页面上设置[工作区速率限制](https://platform.claude.com/docs/en/api/rate-limits#setting-lower-limits-for-workspaces)，以限制 Claude Code 的份额并保护其他生产工作负载。
</Note>

在 Bedrock、Vertex 和 Foundry 上，Claude Code 不会从您的云发送指标。要获取成本指标，多家大型企业报告使用 [LiteLLM](/en/llm-gateway#litellm-configuration)，这是一个帮助公司[按密钥跟踪支出](https://docs.litellm.ai/docs/proxy/virtual_keys#tracking-spend)的开源工具。该项目与 Anthropic 无关，且未经安全审计。

### 速率限制建议

为团队设置 Claude Code 时，请考虑以下基于组织规模的每用户每分钟令牌数 (TPM) 和每分钟请求数 (RPM) 建议：

| 团队规模      | 每用户 TPM  | 每用户 RPM  |
| ------------- | ----------- | ----------- |
| 1-5 用户      | 200k-300k   | 5-7         |
| 5-20 用户     | 100k-150k   | 2.5-3.5     |
| 20-50 用户    | 50k-75k     | 1.25-1.75   |
| 50-100 用户   | 25k-35k     | 0.62-0.87   |
| 100-500 用户  | 15k-20k     | 0.37-0.47   |
| 500+ 用户     | 10k-15k     | 0.25-0.35   |

例如，如果您有 200 个用户，您可以为每个用户请求 20k TPM，总计 400 万 TPM（200*20,000 = 400 万）。

随着团队规模增长，每用户 TPM 会减少，因为在较大的组织中较少用户倾向于同时使用 Claude Code。这些速率限制在组织级别适用，而非每个单独用户，这意味着当其他人未积极使用服务时，单个用户可以暂时消耗超过其计算份额。

<Note>
  如果您预计异常高并发使用的情况（如大型团队的现场培训课程），您可能需要更高的每用户 TPM 分配。
</Note>

### 智能体团队令牌成本

[智能体团队](/en/agent-teams)生成多个 Claude Code 实例，每个实例有自己的上下文窗口。令牌使用量与活跃队友数量和每个实例运行时间成正比。

要保持智能体团队成本可控：

* 为队友使用 Sonnet。它在协调任务中平衡了能力和成本。
* 保持团队小型。每个队友运行自己的上下文窗口，因此令牌使用量大致与团队规模成正比。
* 保持生成提示专注。队友自动加载 CLAUDE.md、MCP 服务器和技能，但生成提示中的所有内容从一开始就添加到它们的上下文中。
* 工作完成后清理团队。活跃的队友即使空闲也会继续消耗令牌。
* 智能体团队默认禁用。在您的 [settings.json](/en/settings) 或环境中设置 `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` 以启用。请参阅[启用智能体团队](/en/agent-teams#enable-agent-teams)。

## 减少令牌使用

令牌成本随上下文大小而增加：Claude 处理的上下文越多，您使用的令牌越多。Claude Code 通过[提示缓存](/en/prompt-caching)自动优化成本，减少重复内容（如系统提示）的成本，并在接近上下文限制时通过自动压缩来总结对话历史。

以下策略帮助您保持上下文较小并降低每消息成本。

### 主动管理上下文

使用 `/usage` 检查当前令牌使用情况，或[配置状态行](/en/statusline#context-window-usage)持续显示。

* **在任务之间清除**：切换到不相关的工作时使用 `/clear` 重新开始。过时的上下文在每条后续消息上浪费令牌。清除前使用 `/rename` 以便稍后轻松找到会话，然后使用 `/resume` 返回。
* **添加自定义压缩指令**：`/compact Focus on code samples and API usage` 告诉 Claude 在总结期间保留什么。

您还可以在 CLAUDE.md 中自定义压缩行为：

```markdown theme={null}
# Compact instructions

When you are using compact, please focus on test output and code changes
```

### 选择合适的模型

Sonnet 能很好地处理大多数编码任务，成本低于 Opus。将 Opus 保留用于复杂的架构决策或多步推理。使用 `/model` 在会话中切换模型，或在 `/config` 中设置默认值。对于简单的子智能体任务，在[子智能体配置](/en/sub-agents#choose-a-model)中指定 `model: haiku`。

### 减少 MCP 服务器开销

MCP 工具定义[默认延迟加载](/en/mcp#scale-with-mcp-tool-search)，因此只有工具名称进入上下文，直到 Claude 使用特定工具。运行 `/context` 查看什么在消耗空间。

* **优先使用 CLI 工具**：`gh`、`aws`、`gcloud` 和 `sentry-cli` 等工具仍然比 MCP 服务器更具上下文效率，因为它们不添加任何每工具列表。Claude 可以直接运行 CLI 命令。
* **禁用未使用的服务器**：运行 `/mcp` 查看已配置的服务器并禁用您未积极使用的任何服务器。

### 为类型化语言安装代码智能插件

[代码智能插件](/en/discover-plugins#code-intelligence)为 Claude 提供精确的符号导航而非基于文本的搜索，减少在探索不熟悉代码时不必要的文件读取。单次"转到定义"调用替代了可能需要 grep 然后读取多个候选文件的操作。安装的语言服务器还会在编辑后自动报告类型错误，因此 Claude 无需运行编译器就能捕获错误。

### 将处理卸载到钩子和技能

自定义[钩子](/en/hooks)可以在 Claude 看到数据之前预处理数据。与其让 Claude 读取 10,000 行日志文件来查找错误，不如让钩子 grep `ERROR` 并仅返回匹配的行，将上下文从数万个令牌减少到数百个。

[技能](/en/skills)可以为 Claude 提供领域知识，使其不必探索。例如，"codebase-overview"技能可以描述您项目的架构、关键目录和命名约定。当 Claude 调用技能时，它立即获得此上下文，而无需花费令牌读取多个文件来理解结构。

例如，此 PreToolUse 钩子过滤测试输出以仅显示失败：

<Tabs>
  <Tab title="settings.json">
    将此添加到您的 [settings.json](/en/settings#settings-files) 以在每个 Bash 命令之前运行钩子：

    ```json theme={null}
    {
      "hooks": {
        "PreToolUse": [
          {
            "matcher": "Bash",
            "hooks": [
              {
                "type": "command",
                "command": "~/.claude/hooks/filter-test-output.sh"
              }
            ]
          }
        ]
      }
    }
    ```
  </Tab>

  <Tab title="filter-test-output.sh">
    钩子调用此脚本，该脚本检查命令是否是测试运行器并修改它以仅显示失败：

    ```bash theme={null}
    #!/bin/bash
    input=$(cat)
    cmd=$(echo "$input" | jq -r '.tool_input.command')

    # If running tests, filter to show only failures
    if [[ "$cmd" =~ ^(npm test|pytest|go test) ]]; then
      filtered_cmd="$cmd 2>&1 | grep -A 5 -E '(FAIL|ERROR|error:)' | head -100"
      echo "{\"hookSpecificOutput\":{\"hookEventName\":\"PreToolUse\",\"permissionDecision\":\"allow\",\"updatedInput\":{\"command\":\"$filtered_cmd\"}}}"
    else
      echo "{}"
    fi
    ```
  </Tab>
</Tabs>

### 将指令从 CLAUDE.md 移到技能

您的 [CLAUDE.md](/en/memory) 文件在会话开始时加载到上下文中。如果它包含特定工作流的详细指令（如 PR 审查或数据库迁移），即使您在做不相关的工作，这些令牌也会存在。[技能](/en/skills)仅在调用时按需加载，因此将专业指令移到技能中可以保持基础上下文更小。目标是将 CLAUDE.md 保持在 200 行以下，仅包含基本内容。

### 调整扩展思考

扩展思考默认启用，因为它显著提高了复杂规划和推理任务的性能。思考令牌按输出令牌计费，默认预算根据模型每请求可能达到数万个令牌。对于不需要深度推理的简单任务，您可以通过使用 `/effort` 或在 `/model` 中降低[努力级别](/en/model-config#adjust-effort-level)，在 `/config` 中禁用思考，或使用 `MAX_THINKING_TOKENS=8000` 降低预算来减少成本。

### 将冗长操作委托给子智能体

运行测试、获取文档或处理日志文件可能消耗大量上下文。将这些委托给[子智能体](/en/sub-agents#isolate-high-volume-operations)，以便冗长输出保留在子智能体的上下文中，而只有摘要返回到您的主对话。

### 管理智能体团队成本

当队友在计划模式下运行时，智能体团队使用的令牌大约是标准会话的 7 倍，因为每个队友维护自己的上下文窗口并作为单独的 Claude 实例运行。保持团队任务小型且自包含以限制每队友的令牌使用量。请参阅[智能体团队](/en/agent-teams)了解详情。

### 编写具体的提示

模糊的请求如"改进此代码库"会触发广泛的扫描。具体的请求如"在 auth.ts 中的登录函数添加输入验证"让 Claude 能高效工作，只需最少的文件读取。

### 在复杂任务上高效工作

对于更长或更复杂的工作，这些习惯有助于避免因走错方向而浪费令牌：

* **对复杂任务使用计划模式**：在实现前按 Shift+Tab 进入[计划模式](/en/permission-modes#analyze-before-you-edit-with-plan-mode)。Claude 探索代码库并提出方法供您批准，防止初始方向错误时代价高昂的返工。
* **尽早纠正方向**：如果 Claude 开始走错方向，按 Escape 立即停止。使用 `/rewind` 或双击 Escape 将对话和代码恢复到之前的检查点。
* **给出验证目标**：在提示中包含测试用例、粘贴截图或定义预期输出。当 Claude 可以验证自己的工作时，它会在您请求修复之前发现问题。
* **增量测试**：编写一个文件，测试它，然后继续。这可以在问题修复成本低时尽早发现。

## 后台令牌使用

Claude Code 即使在空闲时也会为某些后台功能使用令牌：

* **对话总结**：为 `claude --resume` 功能总结之前对话的后台作业
* **命令处理**：某些命令如 `/usage` 可能会生成检查状态的请求

这些后台进程即使没有活跃交互也会消耗少量令牌（通常每会话低于 0.04 美元）。

## 理解 Claude Code 行为的变化

Claude Code 定期接收更新，可能会改变功能的工作方式，包括成本报告。运行 `claude --version` 检查当前版本。有关具体计费问题，请通过您的 [Console 账户](https://platform.claude.com/login) 联系 Anthropic 支持。
