乐于分享
好东西不私藏

OpenClaw 一个月烧了 $300?我帮朋友找到了罪魁祸首

OpenClaw 一个月烧了 $300?我帮朋友找到了罪魁祸首

上周有个朋友找我吐槽,说他用 OpenClaw 搭了个 AI 助手,一个月账单 $300 多。

他问我:"这玩意儿是不是有毒?"

我看了他的配置,笑了。

不是 OpenClaw 有毒,是他用法有毒。

他犯了 3 个致命错误,每个都能让账单翻倍:没开缓存、Skills 列表塞了 40 个、TOOLS.md 写了 5 万字……

今天就聊聊,OpenClaw 怎么用才不会被账单暴击。


问题根源:你以为花 10 个 Token,实际花了 2 万个

很多人以为 AI 对话就是"发消息→回复"。

实际上,每次对话模型看到的远不止你的消息。

你以为:问个天气,10 个 Token

实际:2 万个 Token

我朋友问 AI:"今天天气怎么样?"(7 个字)

AI 收到的是:

  • 系统提示:9600 Token
  • 40 个 Skills 描述:4000 Token  
  • TOOLS.md(被截断):5000 Token
  • 对话历史(200 轮):5000 Token

背景信息 2.3 万 Token,回答"晴天 20 度"只用 10 个。

按 Claude Sonnet 4 的价格(0.07。一天聊 50 次,一个月 $105。

相当于每次聊天打一次滴滴。

你以为:写个脚本,1000 个 Token

实际:5 万个 Token

他让 AI 写个 Python 脚本。

AI 先读了 3 个文件(每个 1 万字符),然后写代码、调试、修改……工具调用结果又占了 2 万 Token。

一次代码任务 5 万 Token,$0.15。

一个月写 20 次,$90。

你以为:写篇文章,3000 个 Token

实际:8 万个 Token

他让 AI 写篇公众号文章。

AI 先搜索资料(网页抓取 3 万 Token),生成大纲、写初稿、修改……输出 1 万 Token,但输入 7 万 Token。

一次长文 8 万 Token,$0.24。

一个月写 10 篇,$72。

三个场景加起来:300。


第一招:开启 Prompt Caching,省 90% 重复成本

省钱效果:$150/月

我朋友问我:"Caching 是什么?听起来很复杂。"

我说:把不变的部分缓存起来,下次直接复用。

为什么能省 90%?

你的系统提示、工具列表、Skills 列表,这些东西每次对话都一样,为什么要重复计费?

Anthropic 的 Prompt Caching 机制:

  • 首次写入缓存(Cache Write):按正常价格 + 25% 缓存费
  • 后续读取缓存(Cache Read):只收 10% 的价格

举个例子:

  • 系统提示 1 万 Token,首次写入 3/百万 × 1.25)
  • 后续每次对话,读取缓存只花 3/百万 × 0.1)

省了 90%。

原理是什么?

Caching 的本质是"空间换时间"——Anthropic 把你的提示词存在服务器上,下次对话直接调用,不用重新传输和处理。

缓存有过期时间(TTL):

  • short:5 分钟(适合 API Key 用户)
  • long:1 小时(适合 OAuth 用户)

如果你 1 小时不说话,缓存就失效了,下次又要重新写入。

怎么开启?

在 ~/.openclaw/openclaw.json 里加这几行:

{"agents":{"defaults":{"models":{"anthropic/[REDACTED]":{"params":{"cacheRetention":"long"}}}}}}

建议:直接用 long

配合 Heartbeat 保持缓存温热

我朋友又问:"如果我 1 小时不说话,缓存就失效了?"

对。但有个办法:让 OpenClaw 每隔 55 分钟自动"心跳"一次,保持缓存活跃。

{"agents":{"defaults":{"heartbeat":{"every":"55m"}}}}

Heartbeat 会在后台静默运行,不会打扰你,但能让缓存一直热着。

我朋友开启 Caching + Heartbeat 后,日常聊天的成本从每次 0.007。

他发了条消息:"卧槽,账单真的降了!"

一个月省 $150。


第二招:清理无用信息,别让 Skills 和 TOOLS.md 吃 Token

省钱效果:$70/月

Caching 解决了 90% 的重复成本,但还有 10% 的钱花在哪了?

答案:无用信息。

我朋友的配置里,Skills 列表塞了 40 个,TOOLS.md 写了 5 万字。

但他实际用的只有 5 个 Skill,TOOLS.md 里 80% 的内容从来没用过。

Skills 清理:只保留常用的

每个 Skill 约 100 Token。40 个 Skill = 4000 Token。

但他实际用的只有 5 个:

  • serper(搜索)
  • github(代码管理)
  • summarize(内容总结)
  • weather(天气查询)
  • wechat-article(公众号写作)

怎么清理?

ls ~/.openclaw/skills  # 查看当前 Skillsrm -rf ~/.openclaw/skills/不用的技能名  # 删掉不用的

或者用 clawhub 管理:

clawhub list  # 查看已安装的 Skillsclawhub uninstall 技能名

清理后,Skills 列表从 4000 Token 降到 500 Token。

TOOLS.md 压缩:只保留最常用的配置

我朋友的 TOOLS.md 写了 5.4 万字符,记录了所有工具的详细用法、SSH 配置、摄像头列表……

问题:这些信息大部分时候用不到,但每次都在烧钱。

解决办法:精简 TOOLS.md,详细文档放到单独文件里,需要时再 read

改成这样(500 字符):

# TOOLS.md## SSH- home-server → 192.168.1.100## TTS- 默认声音:Nova## 摄像头- living-room → 客厅- front-door → 门口详细配置见 `docs/tools-full.md`

把详细配置(5 万字符)移到 docs/tools-full.md,需要时让 AI read 这个文件。

压缩后,TOOLS.md 从 5000 Token 降到 50 Token。

我朋友清理完,发了条消息:"原来我一直在给 AI 喂垃圾信息……"

每次对话省 8500 Token,一个月省 $70。


第三招:压缩对话历史,别让 200 轮聊天拖累速度

省钱效果:$15/月

OpenClaw 默认会保留最近 200 轮对话历史。

问题:200 轮对话约 5000 Token,每次都要发给模型。

解决办法:定期压缩对话历史。

手动压缩

在对话里输入:

/compact

OpenClaw 会把对话历史压缩成摘要,保留关键信息,删掉冗余内容。

压缩后,5000 Token 的历史可以降到 500 Token。

自动压缩

在配置里开启 contextPruning

{"agents":{"defaults":{"contextPruning":{"enabled":true,"maxTurns":50}}}}

这样 OpenClaw 会自动保留最近 50 轮对话,超过的部分自动压缩。

定期重置

如果对话历史太长,可以用 /new 或 /reset 开启新会话。

我朋友开启自动压缩后,对话历史从 5000 Token 降到 1000 Token。

每次对话省 4000 Token,一个月省 $15。


第四招:按需选模型,别什么都用 Opus

省钱效果:$45/月

不是所有任务都需要 Claude Opus 4。

模型价格对比:

模型
输入价格
输出价格
适用场景
Haiku
$0.25/百万
$1.25/百万
简单对话、文本总结
Sonnet
$3/百万
$15/百万
日常任务、代码生成
Opus
$15/百万
$75/百万
复杂推理、关键决策

我朋友的问题:所有任务都用 Sonnet,包括简单的"今天天气怎么样"。

优化方案:

  • 简单对话、文本总结:用 Haiku($0.25/百万 Token)
  • 写代码、写文章:用 Sonnet($3/百万 Token)
  • 复杂推理、关键决策:用 Opus($15/百万 Token)

怎么切换?

在对话里直接用 /model 命令:

/model anthropic/[REDACTED]

或者在配置里设置默认模型:

{"agents":{"defaults":{"model":"anthropic/[REDACTED]"}}}

建议:日常用 Haiku,写代码用 Sonnet,复杂任务再切 Opus。

我朋友改成"日常 Haiku + 写代码 Sonnet"后,一个月省 $45。


第五招:清理工作区文件,别让 AI 读一堆没用的东西

省钱效果:$20/月

OpenClaw 会把工作区文件(MEMORY.mdTOOLS.mdAGENTS.md 等)加载到上下文里。

问题:如果这些文件太大,每次对话都要花 Token。

我朋友的工作区文件:

  • MEMORY.md:2 万字符(2000 Token)
  • TOOLS.md:5 万字符(5000 Token)
  • AGENTS.md:1 万字符(1000 Token)

总计:8000 Token,每次对话都要发给模型。

怎么清理?

定期检查工作区文件,删掉过时内容:

ls ~/.openclaw/workspace

清理原则:

  • 删掉过时内容
  • 移到归档文件夹
  • 压缩成摘要

建议:每个月清理一次。

清理后,工作区文件从 8000 Token 降到 2000 Token。

每次对话省 6000 Token,一个月省 $20。


总结:从 60,省钱路线图

我朋友按照这 5 个招数优化后,账单从 60。

省钱路线图:

招数
省钱效果
难度
优先级
开启 Caching
$150/月
🔥🔥🔥
清理无用信息
$70/月
⭐⭐
🔥🔥
按需选模型
$45/月
🔥🔥
清理工作区文件
$20/月
⭐⭐
🔥
压缩对话历史
$15/月
🔥

如果你只有 5 分钟,先做第一招。

如果你有 30 分钟,再做第二招和第四招。

极限优化:能做到 $10/月 吗?

能。

我见过最省钱的用户,一个月只花 $10。他的做法:

  • 日常聊天全用 Haiku($0.25/百万 Token)
  • 写代码用本地模型(Ollama + DeepSeek Coder)
  • 只在需要最高质量时才用 Sonnet

但代价是:

  • Haiku 写代码容易出错,出错率从 5% 涨到 20%
  • 本地模型速度慢,生成 1000 Token 要 30 秒
  • 需要自己维护本地模型,折腾成本高

什么情况下不该省钱?

不是所有场景都适合省钱。

如果你:

  • 用 AI 做关键决策(比如写合同、分析财报)
  • 需要最高质量输出(比如写重要文章、设计架构)
  • 时间比钱更值钱(比如紧急任务)

那就别省。直接用 Opus,花钱买质量。

AI 的本质是"按需付费"——不是"能省就省",而是"该花就花,不该花就不花"。


行动清单:

  1. 现在就去开启 Caching(5 分钟)
  2. 清理 Skills 列表,只保留常用的(10 分钟)
  3. 压缩 TOOLS.md,详细配置移到单独文件(15 分钟)
  4. 配置按需选模型,简单任务用 Haiku(5 分钟)
  5. 定期清理工作区文件(每月 10 分钟)

30 分钟,省 80% 账单。

值。