Opus 5.5 上的 Claude Code token 审计
配置里还有什么在每一轮浪费 token:先测量,每行指令标成 Keep、Move 或 Cut,你批准才改。
348 X 收藏,截至 发帖日期
提示词
Opus 5.5 的每 token 价格已经很低了。找出这个 Claude Code 配置里还有什么在每一轮都浪费 token。目标:每完成一个任务的成本最低。它必须和现在一样细致,并且继续接大任务。如果单次请求变小了,但任务要多跑几轮,那不算赢。
1. 先测量,什么都不改
列出会话启动时加载的所有内容:
- 加载的每个 CLAUDE.md(全局、项目、嵌套)以及它导入的文件
- Skill 列表:模型看到的每个名称和描述
- MCP server:哪些已连接,哪些工具在一开始就加载
- 往对话里注入文本的 hook 或脚本
- 设置:model、modelSettings、CLAUDE_CODE_EFFORT_LEVEL、CLAUDE_CODE_SUBAGENT_MODEL
如果我贴了 /context 或 /usage 的输出,就用那些数字。否则问我一次,然后自己数行数和字节数。每个文件都完整读一遍。重复、冲突和过时的规则,在摘要里很容易漏掉。
2. 检查 Opus 5.5 的设置
Effort:报告 Opus 5.5 实际运行的级别和它的来源。它默认是 medium,~/.claude/settings.json 里顶层的 effortLevel 对它不算数。
检查:列出这个仓库已有的测试、构建和类型检查命令。跑一次测试只花一轮。更高的 effort 会给每一轮都加上思考。
Subagent:逐个列出 model、effort,以及它是写代码还是只读。没有 model 这一行时,它跟随 CLAUDE_CODE_SUBAGENT_MODEL,如果没设置就用主模型。
输出:一个输出 token 的成本是缓存读取的 100x,思考也算输出。标出让它写得比任务需要更多的规则。
3. 给每一行指令打标签
Keep:它没法从仓库里自己弄明白的东西,比如这个项目怎么发布、我喜欢怎么工作,以及针对它在这个项目里犯过的错的修正。
Move:只用于某一个工作流的操作手册移到 skill 里,这样只在用到时才加载。
Cut:它默认就会做的事,以及相互矛盾的规则。
每个 CLAUDE.md 控制在 ~200 行以内。
4. 保护缓存
下面这些会让下一次请求在没有缓存的情况下重读整个会话:切换 /model、打开 fast mode、连接一个工具在一开始就加载的 MCP server,以及固定使用另一个模型的 skill。
- 如果需要另一个模型的意见,把这个任务交给 subagent,这样主会话能保住缓存。
- 在任务之间压缩上下文。开始不相关的工作时,先用 /clear.
5. 把长输出挡在对话之外
- 测试运行、构建、日志:返回失败项和最后几行,把完整日志写进一个它可以 grep 的文件。按固定长度截断输出,可能会把它需要的那行报错丢掉。
- 进度笔记:只保留一个短文件并覆盖写入。如果它一直变长,之后每次读取都更贵。
6. 禁止事项
- 在任何提示词里加“简洁一点”或“节省 token”。被要求省 token 的 agent 可能会开始回避大任务。
- 为了降低账单,在难的任务上降低 effort,或者在任务中途换模型。
- 用每次请求的 token 数来评判。要衡量每完成一个任务的成本。
7. 先报告,然后等待
1. 基线:每个来源、它的大小、什么时候加载
2. 改动,节省最大的排在前面:能省多少、你是怎么算出来的、什么可能变差、怎么撤销
3. 对每个指令文件的具体修改,每一项都标上 Keep、Move 或 Cut
动任何文件之前先备份。我批准之前什么都不要应用。下一步 在项目里贴进 Claude Code,有 /context 或 /usage 输出就一起贴上。
这条 Claude Code 提示词就是 Opus 5.5 的 token 审计员。它找出你的配置里还有什么在每一轮都浪费 token,目标是做完每个任务的成本最低,agent 还要和现在一样细致。
它先测量、不做任何改动,动每个文件之前先备份,你批准之前一处都不改。
