Claude Code省RMB指南

0 阅读5分钟

最近 Anthropic 调整了 Claude 的计费策略,不少开发者发现账单涨了不少——原本一天五六美元,现在轻松上十块。

官方数据显示,开发者平均每天花 6 美元,但这是优化过的数据。实际上很多人在 10-12 美元,一个月 200-300 美元。团队使用的话,这笔开支更可观。

好消息是,Claude Code 按 token 计费的机制,也意味着优化空间很大。关键在于搞清楚RMB花在哪里:token 消耗的大头不是你打的那几行字,而是系统自动加载的上下文。知道了这个,就能有的放矢地省RMB。

一、先搞清楚RMB花在哪里

很多人以为花费主要看"我打了多少字",实际上差得远。

一次 Claude Code 交互的 token 消耗大致是这样的:

  • 系统提示词(System Prompt)每次自动加载,大约 2-3 万 token,相当于起步价,没法省
  • 上下文包括对话历史、读过的文件、MCP 工具描述,随着对话推进越滚越大,这块是主要开销
  • 你实际写的提示词通常就几百 token,占比很小
  • Claude 的输出单价最高,但总量不算大
  • 扩展思考默认开着,按输出价格计费,一次请求就可能吃掉几万 token

实测数据表明 input token 占总消耗的 70-85%,其中超过 90% 是缓存读取。你和 Claude 聊得越久、读的文件越多,后面每条消息就越贵。

/cost 随时能查当前会话的消耗:

Total cost:            $0.55
Total duration (API):  6m 19.7s
Total duration (wall): 6h 33m 10.2s

前面的博文也说过,可以把上下文和花费一起展示在底层的状态栏,可以随时监控。 搞清楚了结构,接下来逐个击破。

二、上下文管理:投入产出比最高的一招

上下文是 token 的无底洞。管好它,最大的一块开支就管住了。

1. 用 /clear 切割会话

很多人习惯在一个会话里干完所有事,从修 bug 到加功能再到写测试。到后面上下文已经臃肿不堪,每发一条消息都在为前面积累的"历史包袱"付RMB。

/cleargit commit 用。做完一个功能点,清一次。要切换到不相关的事,清一次。

怕清掉找不回来?先 /rename 起个名字,之后 /resume 随时接回来。

2. 用 /compact 压缩历史

不想全清,但上下文又太大了,可以用 /compact 把对话历史压缩成摘要。你还能指定压缩时保留什么:

/compact 保留代码改动和测试结果

CLAUDE.md 里也能写压缩规则:

# Compact instructions
When you are using compact, please focus on test output and code changes

3. 按模块拆会话

"处理用户认证"和"写数据导出"分开做,每个会话只加载必要的上下文。这比在一个大会话里改遍全项目便宜得多。

三、模型选择:不是所有任务都值得上 Opus

甚至不需要用AI:

对于一些非常简单的操作型事务,比如 git commitgit status 这类基础命令,其实不需要让 Claude 介入。直接在提示框输入 ! 加命令(如 !git commit -m "fix bug")就能执行,完全不消耗 token。

三个模型,价差不小:

模型输入价格(每百万 token)输出价格(每百万 token)适合场景
Haiku 4.5$1$5简单补全、格式化、快速问答
Sonnet 4.6$3$15日常开发、代码生成、Bug 修复
Opus 4.6$5$25复杂架构设计、多步推理、疑难调试

简单任务选择Sonnet,Opus 什么时候上?复杂的架构决策,跨好几个模块的大重构,那种你自己也想不明白的诡异 bug。

不过这里有个风险:如果用了便宜模型但没得到想要的结果,返工重做反而更费RMB。所以在选模型之前,先评估一下任务的复杂度。拿不准的时候,宁可一开始就用 Sonnet 或 Opus,也别为了省几毛RMB最后花了几块。

四、精简 MCP 和工具配置

MCP 让 Claude Code 调用外部工具,但每个 MCP Server 的工具描述都要占 token。新版默认延迟加载了(只有工具名进上下文),但还有优化余地。

/mcp 看看配了哪些服务器,不用的关掉。写后端的时候 chrome-devtools 之类的前端工具可以先禁。ghgcloud 这些 CLI 工具比对应的 MCP Server 更省 token,因为不需要在上下文里放工具列表描述。

跑一下 /context,看看到底什么在占空间,心里有数。

五、CLAUDE.md 和 Skill:固定成本 vs 按次付费

写好 CLAUDE.md

没有 CLAUDE.md 的项目,Claude 每次都要用大量 catfindgrep 来摸清项目结构。每次探索都在烧 token。

一份好的 CLAUDE.md 写清楚目录结构、技术栈版本、编码规范、常用构建命令就够了。

但别往死里塞。CLAUDE.md 每个会话启动都加载,塞太多反而增加基础上下文成本。官方建议 200 行以内。

专项指南放 Skill 里

PR 审查流程、数据库迁移步骤、部署手册这些不是每次都用的东西,放 CLAUDE.md 里就是每个会话都在为它付RMB。移到 Skill 里,按需调用,用完就走。

实测数据:同样的重复指令,写在 CLAUDE.md 里每次消耗 150 token,做成 Skill 之后只要 10 token。差了十几倍。

六、配置 .claudeignore 排除噪音文件

.gitignore 一个思路,告诉 Claude Code 哪些文件不用看:

node_modules/
dist/
build/
.next/
__pycache__/
*.lock
*.log
coverage/
.git/

有人实测配完之后,单次对话的 input token 从 15 万降到 6 万。

七、日常习惯也能省RMB

写具体的提示词

"帮我优化这个项目的性能"会让 Claude 大范围扫描代码库。"给 auth.tslogin 函数加上输入验证"只需要读一个文件。指令越具体,读的文件越少,token 越省。

更进一步,直接用 @ 把需要的文件提示给 Claude。比如 @src/auth.ts 给 login 函数加验证,这样 Claude 就不用自己去找文件了,直接在指定文件上工作,省下大量搜索和探索的 token。

用 Plan 模式做复杂任务

Shift+Tab 进入 Plan 模式,Claude 先分析代码库、给方案、等你确认,然后才动手。省得写了一大堆发现方向错了,推翻重来 token 翻倍。

跑偏了赶紧打断

发现 Claude 走错方向,马上 Escape 停下来。/rewind 或者双击 Escape 回退到之前的检查点。拖得越久浪费越多。

冗长任务丢给子代理

跑测试、拉文档、处理日志这种输出量大的活儿,交给子代理。冗长的输出留在子代理那边,主会话只收到精简摘要,上下文不会被撑大。

省RMB清单

上下文管理(最重要):

  • 完成一个功能点就 /clear,切换不相关任务也清
  • 上下文太大用 /compact 压缩历史
  • 按模块拆分会话,避免一个会话干所有事

模型和命令选择:

  • 简单命令(git、ls 等)直接用 ! 执行,不消耗 token
  • 日常开发用 Sonnet,复杂架构和疑难 bug 才上 Opus
  • 选模型前评估任务复杂度,避免返工更费RMB

工具和配置优化:

  • /mcp 检查并关掉不用的 MCP Server
  • 能用 CLI 工具就别用 MCP(如 ghgcloud
  • 配置 .claudeignore 排除 node_modules、dist、build 等噪音文件
  • /context 查看什么在占空间

文档和指令管理:

  • CLAUDE.md 控制在 200 行以内,只写核心信息
  • 不常用的专项指南(PR 流程、部署手册)做成 Skill 按需调用

日常使用习惯:

  • 提示词写具体,用 @ 直接指定文件,避免大范围扫描
  • 复杂任务先进 Plan 模式(Shift+Tab),确认方案再动手
  • 发现跑偏马上 Escape 打断,用 /rewind 回退
  • 跑测试、拉文档等输出量大的任务交给子代理

不用全做。先养成 /clear/compact 的习惯,再根据任务切换模型,这两条就够让日均成本降一半。剩下的按需挑几个,够用就行。

Niko-白色版.png