实战 📋 6 个步骤 第 332 / 470 篇

Claude Code 成本监控三件套:/usage Loops 揪出跑飞任务,模型选择器与缓存 TTL 把账算明白

8 月 24 日 Claude Code v2.1.243 发布,带来三项成本利器:/usage 新增 Loops 明细(每个循环任务的次数、Token 消耗、单次成本),modelPicker 定制模型选择器,promptCacheTtl 精细控制提示词缓存时长,另有无密钥登录与启动提速。本教程 6 步教你盯住 AI 编程账单。

2026.08.26· 15 分钟阅读· 约 1835 字

AI 编程爽是爽,账单也很「爽」。尤其是自动循环(/loop)任务——它会一遍遍迭代直到达标,一旦标准定得含糊,就成了无底洞。8 月 24 日发布的 Claude Code v2.1.243 专门补上了这块短板:/usage 新增 Loops 明细,每个循环任务跑了几次、烧了多少 Token 一目了然;配套的 modelPicker 让你把模型列表精简到真用得上的几个,promptCacheTtl 把缓存时长调到最优。本教程 6 步把这些能力全部用起来。

📊 本教程适合:Claude Code 重度用户、用 /loop 自动迭代的团队、以及一切被 AI 编程账单吓到过的人。需要基础命令行操作能力。

先搞懂:AI 编程的钱到底烧在哪

Claude Code 的 Token 消耗主要有三个去向,v2.1.243 之前你只能看到总数,现在能拆开了:

消耗去向是什么本次更新后
主对话你和 AI 的直接对话轮次可在 /usage 按会话查看
子代理(subagent)拆给专门子代理干活的消耗可单独控制缓存时长
/loop 循环任务自动迭代直到达标的任务新增 Loops 明细:次数、Token、单次成本

重点盯 /loop:循环任务是最容易「跑飞」的——它不需要你逐轮确认,标准不清就会无限迭代。v2.1.243 的 Loops 明细就是为这个场景设计的。

Step 1:打开 /usage 看全景账

1 先知道钱都去哪了
在 Claude Code 里输入:
/usage

你会看到:
· 本次会话 Token 消耗(输入 / 输出 分开计)
· 各模型占比
· 新增:Loops 明细板块

Loops 明细每行包含:
· 循环任务名(loop 的标题)
· 运行次数(run count)
· 总 Token / 每次平均 Token
· 最近一次运行时间

先整体扫一遍,标记出「次数多 + Token 高」的循环。
💡 首次使用建议在长会话(跑过多个任务)之后看,样本量越大,账单画像越准。

Step 2:揪出跑飞的循环任务

2 用 Loops 明细定位「无底洞」

判断标准很简单——看三个数字的组合:

危险信号 1:运行次数特别多(几十上百次)
危险信号 2:单次平均 Token 很高(反复重跑大上下文)
危险信号 3:任务结果一直不「达标」

定位到之后,处理三步走:
1. 终止该 loop(Ctrl+C / 输入 stop)
2. 检查它的成功标准:标准越客观越具体,
   AI 越早能判断「完成」——比如
   ❌「把代码改好」→ 无法收敛
   ✅「通过 npm test 且无 ESLint 报错」→ 可判定
3. 标准写好后重新跑,并再次用 /usage 复核消耗

参考《预算护栏》思路:跑循环前先在心里设一个
「最多重试 N 次 / 最多花 N 万 Token」的心理上限。

别急着删任务:Loops 明细里的「最近运行时间」能帮你判断——如果是历史遗留的旧任务,直接忽略;只有最近还在高频消耗的才需要处理。

Step 3:用 modelPicker 精简模型列表

3 只留用得上的模型

v2.1.243 新增 modelPicker 设置:你可以定制 /model 选择器,放一个有序、带标签的模型列表,覆盖或追加内置列表。好处是防止手滑选到贵模型,也省去每次翻找。

在 settings.json 里配置(JSON 示例):

{
  "modelPicker": [
    {"name": "日常快跑", "model": "claude-sonnet-4-5", "label": "性价比"},
    {"name": "复杂重构", "model": "claude-opus-4-6", "label": "强能力"},
    {"name": "大上下文", "model": "claude-haiku-4-5", "label": "省钱"}
  ]
}

说明:
· 任意模型 id 拼写都行(含 Vertex / Bedrock id)
· 列表会「追加或替换」内置列表,视配置而定
· label 字段是显示名,方便团队统一口径

配好后 /model 只会出现这几个选项,
误选贵模型的概率直接归零。
💡 团队场景推荐:管理员统一维护 modelPicker,把便宜模型放第一位、贵模型标注清楚,等于从入口处设了一道「成本闸门」。

Step 4:调优 prompt 缓存 TTL

4 缓存是省钱的第一杠杆

v2.1.243 新增 promptCacheTtl 与 subagentPromptCacheTtl 两个设置:API Key 用户和云供应商用户可以把主对话的提示词缓存保留 1 小时,子代理的缓存单独控制(默认建议 5 分钟)。缓存命中意味着重复的上下文不用重新计费。

settings.json 示例:

{
  "promptCacheTtl": 3600,          // 主对话缓存 1 小时(秒)
  "subagentPromptCacheTtl": 300    // 子代理缓存 5 分钟
}

调优建议:
· 长会话、反复读大文件 → 主对话 TTL 调大(3600)
· 子代理频繁换任务 → 子代理 TTL 保持短(300),
  避免缓存失效却还占内存
· 短平快任务 → 都可缩短,省内存不省事

缓存原理可参考《DeepSeek 前缀缓存》教程:
命中率越高,单价越低。

注意适用条件:缓存 TTL 主要面向 API Key 与云供应商计费模式;订阅制(Pro/Max)用户本就把缓存包含在套餐里,此项调节收益有限,按需配置即可。

Step 5:keyless 登录与组织治理

5 没 Key 也能登录,成本管理到人

v2.1.243 还带来两项组织级能力,适合团队统一管控:

1. keyless sign-in(无密钥登录)
   /login 支持通过 Anthropic Console 登录,
   适合「组织不允许分发 API Key」的场景
   ——人走 Key 失效,账号权限集中回收

2. modelPricing 托管设置
   组织可统一维护模型价格,
   让 /usage 的成本估算更贴近真实账单

3. 启动提速
   沙箱与 MCP 初始化不再阻塞首帧,
   冷启动更快——顺手就把「空转等待」的时间成本省了

配置路径:settings.json 或组织的托管配置下发。
💡 组织落地顺序建议:先 modelPicker 定模型范围 → 再 keyless 收权限 → 然后统一 modelPricing 让账单透明 → 最后要求成员每周看一眼 /usage。

Step 6:把成本巡检变成习惯

6 每周 10 分钟的成本体检
每周成本体检清单:
□ 打开 /usage,看本周 Loops 明细
  ——有没有新增跑飞任务?
□ 对比上周:总 Token 涨了还是降了?因为什么?
□ 检查 modelPicker:列表里有没有该删的模型?
□ 检查缓存命中情况:大任务前缓存生效了吗?
□ 团队周会同步:谁的任务最烧钱,为什么?

一个简单的环比记录(记事本即可):
周次 | 总Token | 循环任务数 | 主要消耗项 | 采取措施
如果连续两周没有改善,就该动手改
成功标准 / 换更便宜的模型 / 关掉低价值任务。
🎉 至此你已集齐成本监控三件套:Loops 明细揪跑飞、modelPicker 管入口、缓存 TTL 降单价。配合《分层路由》的模型分工,AI 编程的成本就从一个「黑盒」变成了你能读懂的账本。

常见问题速查

你遇到的现象大概率原因 & 解决
/usage 里没有 Loops 明细版本低于 v2.1.243;执行更新后重启
modelPicker 配置不生效检查 JSON 语法与字段名(label/name/model);确认 settings.json 路径正确
缓存命中率低任务上下文变化太大;拆成稳定上下文 + 变化指令两段,缓存更易命中
循环任务还在跑飞成功标准不够客观;把「验收条件」写成可执行的命令/断言,而不是形容词
← 返回教程中心