算力吃紧下的 Claude Code 省钱实战

Posted on
Claude Code AI编程 | 共 2770 字,阅读约 6 分钟,浏览了

最近用 GLM Coding Plan 写代码,429 已经是家常便饭了。V2EX 上有人吐槽"GLM-5.1 账号权重太低,要么慢要么 429",CSDN 上也有人刚买 Pro 套餐就碰到限速。智谱自己都发了致歉信,承认规则透明度不够、灰度节奏太慢。

Claude 那边也好不到哪去。四月份 Anthropic 半个月崩了七次,算力严重不足,路透曝出 Anthropic 要自研芯片应对,5亿美元入场费。

一边是国产模型算力告急、限额限购,另一边是 Claude 动不动宕机、订阅额度不够用。算力吃紧已经成了 2026 年 AI 编程的常态

服务器崩不崩不是普通用户能控制的。但 token 怎么花,是可以优化的。下面这套方法,是我从每月烧钱到精打细算踩出来的实战经验。

先搞清楚钱花在哪

Claude Code 的费用结构有个反直觉的事实:input token 占总消耗的 70-85%,而且大头不是自己写的 prompt,是 Claude 读文件的过程

有人在一个 5 万行 TypeScript 项目上做过实测,单次对话 input 约 15 万 token,其中 12 万都是读文件。也就是说,80% 的钱花在了"让 Claude 先理解项目"这件事上。

而且对话轮数越多,每轮的成本越高。第一轮可能只花 2000 token 的 input,到第十轮,系统提示加上前九轮的历史对话,input 直接飙升到 27000。这是指数级增长,不是线性增长

所以省钱的本质就一句话:减少不必要的上下文,让每轮对话的 input 越精简越好

第一招:用 permissions.deny 拦截不必要的文件读取

这是官方推荐的方式,比 .claudeignore 更精准、更可控。

在项目根目录的 .claude/settings.json 里配置 permissions.deny,直接告诉 Claude Code 哪些文件不许读:

{
  "permissions": {
    "deny": [
      "Read(./.env)",
      "Read(./.env.*)",
      "Read(./secrets/**)",
      "Read(./config/credentials.json)"
    ]
  }
}

这样做的好处是从权限层面拦截,不是简单的文件忽略,而是 Claude Code 在工具调用阶段就会被阻止读取这些路径。比 .claudeignore 的匹配机制更可靠,也不会因为缓存或者路径解析的问题意外泄露敏感文件。

除了安全文件,还可以把不需要 Claude 看到的大文件也加进去:

{
  "permissions": {
    "deny": [
      "Read(./node_modules/**)",
      "Read(./dist/**)",
      "Read(./build/**)",
      "Read(./coverage/**)",
      "Read(./.next/**)",
      "Read(**/*.min.js)",
      "Read(**/*.min.css)",
      "Read(**/package-lock.json)"
    ]
  }
}

实测效果:input token 从 15 万降到 6 万,单次对话省 60%

原理很简单——Claude Code 每次对话都会扫描项目文件来理解上下文,node_modules 动辄几万个文件,全读进去就是白白烧 token。用 permissions.deny 从源头拦住,Claude 只看真正有用的源码。

第二招:精简 CLAUDE.md

Claude Code 的核心工程师 Thariq Shihipar 说过,前沿模型可靠遵循的指令上限大约 150-200 条,系统提示词已经占了约 50 条。留给 CLAUDE.md 的空间其实不多。

有人刚开始用的时候,往 CLAUDE.md 里塞了 500 行——项目描述、编码规范、API 文档全往里扔。结果是 Claude 选择性忽略,尤其是文件末尾的规则基本当没看见。

正确的姿势是控制在 60 行以内,只放项目特有的、Claude 没法从代码里推断出来的信息:

# 项目规范
- 使用 TypeScript strict mode
- 测试框架用 Vitest
- 提交信息遵循 Conventional Commits

# 关键路径
- API 路由:src/api/
- 数据库模型:src/models/
- 构建命令:npm run build
- 测试命令:npm test

规则少,Claude 反而遵守得更到位。而且 CLAUDE.md 精简之后,每轮对话的系统提示 token 也跟着降了。

第三招:/compact 和 /clear 的正确时机

这两个命令是管理上下文的核心武器,但很多人用反了。

/compact 是压缩,把对话历史总结成精简版,保留关键信息,丢掉冗余。适合在同一个任务内,对话轮数超过 5-6 轮时执行一次。

/clear 是清空,直接把上下文全部擦掉。适合切换到完全不同的任务时使用。

有个经验值:当 /context 显示上下文使用超过 50% 时,考虑 compact;超过 70%,必须 compact;换任务了,直接 clear。

最浪费钱的行为是什么?是在一个已经聊了二十轮的对话里,继续问一个全新的问题。这时候每条新消息都要带着前面二十轮的"尸体"一起发送,token 消耗直接爆炸。

第四招:按场景切模型,不要用大炮打蚊子

不管用的是 Claude Code 还是 GLM Coding Plan,套餐里的模型都不止一个。大部分人犯的最大错误就是全程用最强模型,80% 的 token 都浪费在了不需要强模型的任务上

拿 GLM Coding Plan 来说,套餐内包含了 GLM-5.1、GLM-5、GLM-5-Turbo、GLM-4.7 四个模型,能力和消耗各不相同:

模型 定位 适合场景
GLM-5.1 最强,编码跑分 45.3(Claude Opus 4.6 是 47.9) 复杂架构、多文件重构、长链路推理
GLM-5 旗舰,跑分 35.4 日常编码、业务逻辑实现
GLM-5-Turbo 快速推理,专为 Agent 优化 工具调用、持续自动化任务、简单修改
GLM-4.7 老一代模型 快速查询、格式化、重命名

我自己的策略很简单:开 session 默认用 GLM-5,日常写代码够用了;碰到复杂架构设计才切 GLM-5.1;跑龙虾自动化任务用 GLM-5-Turbo;只是查个函数定义之类的,GLM-4.7 就够了。

在 Claude Code 里也一样,支持用 /model 动态切换。Opus 解决不了的复杂问题才上,Sonnet 处理日常开发,Haiku 搞定简单查询。不同模型 token 单价差将近 20 倍,全程开最强模型跟全程打车去便利店一样——不是不行,就是没必要。

实测下来,按场景切模型这一项就能把成本降低 40-60%

第五招:理解 Prompt Caching 的脾气

Claude Code 内部用 Prompt Caching 来省钱。原理是把上一轮已经处理过的内容缓存起来,下一轮遇到相同前缀就直接复用,不用重新算。

缓存命中的 token 按 0.1 倍计价,相当于打了一折。所以提高缓存命中率是省钱的关键。

Claude Code 团队自己都把缓存命中率当紧急系统事故指标来监控——命中率下降就拉警报。

想让缓存不失效,记住这几条:

不要中途改 CLAUDE.md。改了 CLAUDE.md 等于改了系统提示词的前缀,整段缓存全部作废,要从头来过。

不要频繁开关 MCP 工具。Claude Code 团队的设计是工具清单全程固定,不中途增删。如果载入了十几个 MCP 工具,所有完整定义都放进提示词,token 消耗惊人。Claude Code 现在用的是延迟加载策略——先只给工具名称,真正要用时才载入完整定义。

对话切换时用 compact 而不是另开 session。compact 的摘要请求会复用与原对话完全相同的前缀,最大程度保留缓存。而新开 session 等于从零开始建缓存。

缓存 TTL 有两档:默认 5 分钟,付费可以升到 1 小时。如果是长时间连续工作,1 小时缓存能省更多。

第六招:CLI 优先于 MCP

这是一个容易被忽略的点。

如果某个功能既有 CLI 工具又有 MCP Server(比如 GitHub),优先用 CLI。MCP 工具会把完整的 schema 定义注入到上下文里,进出的数据量都比 CLI 大得多。

有人做过对比,用 gh 命令行操作 GitHub 比 GitHub MCP Server 省 75% 的 token。

原则很简单:CLI 能搞定的就不要装 MCP

汇总一下省了多少

把上面这些招数叠起来,看看效果:

优化方法 省钱幅度 花多久搞定
permissions.deny 拦截文件 40-60% 5分钟
精简 CLAUDE.md 20-30% 15分钟
/compact 和 /clear 10-20% 习惯养成
按场景切模型 40-60% 随手操作
Prompt Caching 优化 10-20% 理解原理
CLI 优先于 MCP 因场景而异 选择而已

有人从月费 $800 降到 $150,降幅 81%。这不是理论值,是三个月的实测数据。

最推荐先做前两个——.claudeignore 加精简 CLAUDE.md,20 分钟搞定,立刻见效。剩下的都是习惯养成,慢慢来就行。

Anthropic 在拼命扩算力,据说年化收入已经突破 300 亿美元,但服务器的增长速度显然没跟上用户增长。在算力彻底跟上之前,学会精打细算,比等着服务器不崩要靠谱得多。

📝 评论
评论区加载中,请稍等