上周有个朋友找我吐槽,说他用 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,每次都要发给模型。
解决办法:定期压缩对话历史。
手动压缩
在对话里输入:
/compactOpenClaw 会把对话历史压缩成摘要,保留关键信息,删掉冗余内容。
压缩后,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。
模型价格对比:
我朋友的问题:所有任务都用 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.md、TOOLS.md、AGENTS.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。
省钱路线图:
如果你只有 5 分钟,先做第一招。
如果你有 30 分钟,再做第二招和第四招。
极限优化:能做到 $10/月 吗?
能。
我见过最省钱的用户,一个月只花 $10。他的做法:
日常聊天全用 Haiku($0.25/百万 Token) 写代码用本地模型(Ollama + DeepSeek Coder) 只在需要最高质量时才用 Sonnet
但代价是:
Haiku 写代码容易出错,出错率从 5% 涨到 20% 本地模型速度慢,生成 1000 Token 要 30 秒 需要自己维护本地模型,折腾成本高
什么情况下不该省钱?
不是所有场景都适合省钱。
如果你:
用 AI 做关键决策(比如写合同、分析财报) 需要最高质量输出(比如写重要文章、设计架构) 时间比钱更值钱(比如紧急任务)
那就别省。直接用 Opus,花钱买质量。
AI 的本质是"按需付费"——不是"能省就省",而是"该花就花,不该花就不花"。
行动清单:
现在就去开启 Caching(5 分钟) 清理 Skills 列表,只保留常用的(10 分钟) 压缩 TOOLS.md,详细配置移到单独文件(15 分钟) 配置按需选模型,简单任务用 Haiku(5 分钟) 定期清理工作区文件(每月 10 分钟)
30 分钟,省 80% 账单。
值。
夜雨聆风