Claude Code 可以用 Claude 订阅运行,也可以用 API 密钥运行,两者的计费方式不同。用 API 密钥时按 token 计费、没有封顶,所以忙了一周之后看到账单会吓一跳:编程智能体发的不是一条提示词,而是每一步都把整段对话和读过的文件再发一遍。本页说明一次会话到底消耗什么,怎样查看花了多少,以及花得太多时该改什么。
一次 Claude Code 会话花在哪
智能体是循环工作的:读文件、跑命令、改代码、跑测试、再思考。每个循环是一次 API 请求,每次请求都包含到目前为止的全部内容:系统提示词、工具定义、之前的消息和工具返回的结果。由此带来三个结果:
一次长会话每写出几千个 token,就要发送几十万个输入 token。
Claude Code 依赖提示缓存,所以大部分重复的输入按缓存读取价计费,只是正常价的一小部分。缓存持续生效的会话,花费只是缓存老是未命中的会话的一小部分。
同一个会话用大模型的花费是小模型的数倍。
在 Half Off Dev,这些价格都是 Anthropic 官方价的一半,网关还会把每个会话固定在持有其缓存的渠道上,所以整个会话期间缓存都保持热的。
一个真实的步骤,标上价格
claude-sonnet-5.5 上会话中途的一步:3,000 个新输入 token,50,000 个从缓存读取,1,500 个写入缓存,输出 1,200 个 token。
| token 类型 | token 数 | 每百万支付 | 费用 |
|---|---|---|---|
| 未缓存输入 | 3,000 | $1.00 | $0.003000 |
| 缓存读取 | 50,000 | $0.05 | $0.002500 |
| 缓存写入 | 1,500 | $1.25 | $0.001875 |
| 输出 | 1,200 | $5.00 | $0.006000 |
| 合计 | $0.013375 |
一个五十步的任务大约就是这个数的五十倍。你的项目实际是多少,取决于模型、智能体要读的仓库有多大,以及循环的次数,所以请实测一个真实任务,别信平均值。
六个省钱办法
- 按步骤选模型。 日常修改用中档模型,规划或疑难调试再用最大的。Claude Code 支持一个主模型和一个后台小模型,分别用
ANTHROPIC_MODEL和ANTHROPIC_DEFAULT_HAIKU_MODEL设置。 - 让会话保持聚焦。 新任务开新会话,起点的历史很小。一个会话连着做五个不相关的任务,所有历史都会被带进每次请求。
- 别破坏缓存。 会话中途改系统提示词或工具列表,以及空闲时间超过缓存有效期,都会迫使重新写入缓存。集中一段时间干活。
- 直接指向关键文件。 告诉智能体相关的目录和文件,比让它读半个仓库自己找要省。
- 换话题时清空或压缩长历史。
- 每个 token 付一半的价。 配置只要两个环境变量:
export ANTHROPIC_BASE_URL=https://halfoff.dev
export ANTHROPIC_AUTH_TOKEN=$HALFOFF_API_KEY
claude包括 settings.json 和报错处理在内的完整说明见 Claude Code。
常见问题
Claude Code 每月要花多少钱?+
用 API 密钥时完全取决于使用量:每周几个集中的任务花费很少,全职编程一整天则花得多得多。在日志里测一个任务的花费,乘以你的任务数,再用 Claude Code 费用计算器核对结果。
Claude Code 免费吗?+
工具本身可以免费安装。模型的费用要你来付,通过 Claude 套餐,或者用 API 密钥按 token 付。
可以用 API 密钥而不是订阅来用 Claude Code 吗?+
可以。按上面的方法设置 ANTHROPIC_BASE_URL 和 ANTHROPIC_AUTH_TOKEN,Claude Code 就会用你的预付余额调用 API。Claude Pro 与 API 对比对比了两种方式。
为什么 Claude Code 消耗这么多 token?+
因为每一步都要重发对话和工具结果。缓存把其中大部分变成了便宜的读取,所以保持会话聚焦、不中断,比缩短提示词更省钱。
Claude Code 用哪个模型最好?+
中档模型适合作为日常默认;某个任务在小模型上反复失败时,再用最大的。详见 Opus、Sonnet 与 Haiku 怎么选。
更底层的省钱办法见最省钱的 Claude API 用法。刚开始用?注册账户并创建一个密钥。