先关注后阅读,娇姐怕失去上进的你
用 OpenClaw 一段时间后,很多人会发现一件事:账单比预期高,但不知道钱花在哪里。
这篇文章从底层把这件事说清楚——你的消息到底经历了什么,Token 到底消耗在哪,以及最有效的几个省钱方法。
内容基于 OpenClaw 源码(agents/system-prompt.ts)和官方文档,有争议的地方会单独说明。
一、你的消息到达大模型之前,经历了什么
你在飞书发的消息,不会直接发给大模型。中间要经过 8 个步骤,每一步都有对应的源码文件:
| 1. 用户在飞书发送消息 |
2. 飞书 Webhook 接收事件extensions/feishu/src/monitor.ts |
3. 消息解析 + 路由bot.ts → handleFeishuMessage() |
4. 放入系统事件队列infra/system-events.ts → enqueueSystemEvent() |
5. Agent 执行器启动agents/pi-embedded-runner/run.ts → runEmbeddedPiAgent() |
6. 构建 System Prompt ← Token 消耗的源头agents/system-prompt.ts → buildAgentSystemPrompt() |
7. 组装完整消息 + 调用大模型agents/pi-embedded-runner/run/attempt.ts |
| 8. 大模型返回 → 飞书回复 |
重点:System Prompt 每次都重新构建。你改了 SOUL.md,下一条消息发出去就立刻生效,不需要重启任何东西。 |
二、System Prompt 里装了什么——用真实数据说话
以下是一个真实 Agent 的实际注入数据:
SOUL.md | |||
AGENTS.md | |||
TOOLS.md | |||
IDENTITY.md | |||
USER.md | |||
HEARTBEAT.md | |||
MEMORY.md | |||
Skills | |||
你还没开口说话,System Prompt 本身就已经花掉约 6,700 个 Token。加上历史对话,一句"你好"实际触发的总消耗轻松破万。
三、关于 Skill 注入:有争议,先看结论
这里需要单独说明,因为不同资料有两种说法:
| 说法一(官方文档部分描述) |
| 说法二(源码分析 + 部分实测) |
注意:两种说法可能对应不同版本。但无论哪种情况,结论是一样的: 启用的 Skill 越多,Token 消耗越高。不用的 Skill 必须关闭。 |
验证方法:在对话里输入 /context list,直接看你的版本实际注入了什么内容。
四、Token 消耗排行榜
重点:80% 的 Token 消耗来自「历史对话」和「工具返回结果」。优先优化这两项,效果最显著。 |
五、很多人不知道的三个误区
误区一:工具调用不消耗 Token
很多人以为 Token 只算"我说的话"和"它回的话",工具调用不算。错。工具返回的内容也算输入 Token,而且往往是最大的一块。
// BAD: 读取整个日志文件(1万行) → 返回约 500,000 字符 → 约 125,000 tokens// GOOD: 只读最后 20 行 → 返回约 1,000 字符 → 约 250 tokens差距:500 倍误区二:重要的事在聊天里说一遍就够了
对话越来越长,OpenClaw 会触发 Compaction(压缩),把旧对话摘要化。你口头说的临时指令,很可能在这个过程中丢失。
提示:重要规则写进 AGENTS.md 或 MEMORY.md,不要只说在聊天里。文件每次都会注入,聊天记录不保证留存。 |
误区三:子 Agent 认识你、有你的设置
子 Agent 的 Session 只注入 AGENTS.md 和 TOOLS.md,SOUL.md、USER.md、MEMORY.md 全部被过滤掉了。这是设计如此,不是 Bug。子 Agent 语气不对、不认识你——正常现象。
六、实战省 Token 指南
关于 bootstrapMaxChars 单独说明
这是每个核心文件的字符上限,默认 20,000。超出后的截断规则是:保留头部 70% + 尾部 20%,丢弃中间 10%。
{ "agents": { "defaults": { "bootstrapMaxChars": 15000 // 默认 20000 } }}注意:调太小会丢失重要指令(被截掉的中间部分)。优先用精简文件内容的方式省 Token,不要靠截断。 |
七、进阶:让 Agent 自己提醒你省钱
知道了原理,还有一个进阶做法:把 Token 优化规则写进 AGENTS.md,让 Agent 在对话过程中主动提醒你何时该开新会话、何时该精简操作。
在你的 AGENTS.md 里加入这段内容:
## Token 优化原则### 核心原则1. 复杂任务开新会话 — 每次只做一件事,用 /new 开启2. 适时提醒用户 — 对话超过 10 轮时,提醒用户是否需要开新会话3. 精简输入 — 只给用户需要的信息,不过度展开4. 工具调用要精准 — 读取文件用 offset/limit,执行命令截断输出### 何时提醒用户- 对话超过 10 轮时- 发现用户在进行新的独立任务时- 用户要求做复杂操作时### 提醒话术"这个任务比较复杂,建议开新会话来做,这样更高效。要我帮你用 /new 开启新会话吗?"### 常见误区(要避免)- 读整个文件而不是只读需要的部分- 执行命令返回全部结果而不是截断- 在长对话中继续处理新任务而不建议开新会话- 开启不需要的 Skills如果你有多个 Agent,把这段放进 share/AGENT-WORK-STANDARDS.md 这样的全局模板文件,所有新建的 Agent 都会自动继承这些规则,不需要每次手动教。
加了这段配置之后,效果是什么
提示:discoveries/ 和 memory/ 目录下的文件不会被自动注入 System Prompt,需要时由 Agent 用 memory_search 工具主动搜索。这两个目录适合放大量历史记录,不会拖慢每次对话。 |
最重要的两件事:任务完成就开新会话,读文件加 limit 不读整个。这两条做到,成本能降 60% 以上。
关于openclaw资料包和系列文章
配套资料包
私信 kekohu 获取,内容不定期持续更新。
注意:付费社群包含资料包全部内容,无需重复购买。
openclaw系列文章
持续更新,建议每篇认真阅读
配置与理解
彻底搞懂 OpenClaw 配置体系:这才是 AI Agent 的正确打开方式 详细指南 微信插件支持OpenClaw OpenClaw龙虾如何自我纠错 5步自我迭代法 【网友都说贼好看】我让openclaw开发了一个自己的交互式说明书 别被骗,OpenClaw 可以 24 小时干活——但你得先做对这 6 件事
火了三个月的"龙虾",普通人装了真的有用吗?
用 OpenClaw 把 AI 失忆治好:开关、精简、外挂三步走
OpenClaw 命令完整手册 OpenClaw 到底怎么跑?部署方式与玩法全景 如何申请 Brave Search API 密钥并配置 OpenClaw 大白话讲清楚OpenClaw的记忆术 OpenClaw 长任务必读:用 Sub-Agent 隔离上下文,token 消耗降 85% OpenClaw 省 Token 实操手册:八个维度,节省 60–90% OpenClaw 曲线救国:通过 CLI 后端使用 Claude 模型 飞书跟openclaw集成实操教程 【该文为openclaw输出】OpenClaw超简单且免费的安装实操教程
多 Agent 与协作
技能与工具
实战与案例
本地部署 OpenClaw 自动发布公众号:小白完整教程 本地部署 OpenClaw 自动发布小红书:小白完整教程 【保姆教程】OpenClaw作业错题分析师,每个家长都可以学起来 OpenClaw 完全指南:从零搭建你的 AI 员工团队 看看这个龙虾速度,就知道这OpenClaw有多火,速度跟上 OpenClaw 完全指南:从零搭建你的 AI 员工团队 OpenClaw 实战:从0到1搭建你的云端AI工作流 我的OpenClaw 多Agent 会主动发来 “上班打卡” OpenClaw 实战操作指南:12大热门应用案例详细教程 我的openclaw龙虾开始自己赚钱了 用上了openclaw,跟telegram能双向通信了
排错与安全
关于娇姐
40+ IT 从业者,前荣耀员工,现专注 AI 效率工具研究与实践。持续输出 OpenClaw 及 AI 工具的干货教程与落地案例,偶尔分享职场思考与生活感悟。
提示:觉得有用,点赞、关注、转发,是我持续创作的动力。
夜雨聆风