OpenClaw 架构设计:SOUL、USER、MEMORY 与主动机制
目前市面上所有严肃的代理系统——从自定义 GPT 到 Claude 的项目文件,再到 Cursor 的规则配置——都已经收敛到了同一种底层模式:即将磁盘上的文本(Markdown)文件作为代理行为的“事实来源”。这是在最字面、最实际的层面上定义代理“个性”的文件:代理在每次对话开始时都会读取它,并将其作为沟通的基础,包括语气、回复的优先级、行为边界等。它应该能理解你正在处理的项目、你组织中的关键人
引言:OpenClaw 的核心是什么?
如果你正在配置 OpenClaw(又名 Moltbot 或 Clawdbot )并希望一次性搞定,你需要明白整个系统的根基主要在于 3 个文件。本文旨在帮助你理解这些文件的作用、它们如何相互协作,以及如何配置它们才能让你的代理真正按预期工作。
在开始之前,你需要了解这种 Markdown(.md)配置并非 OpenClaw 所独有。目前市面上所有严肃的代理系统——从自定义 GPT 到 Claude 的项目文件,再到 Cursor 的规则配置——都已经收敛到了同一种底层模式:即将磁盘上的文本(Markdown)文件作为代理行为的“事实来源”。这种架构是通用的,这意味着学会配置这些文件是一项可以迁移到未来任何代理平台的技能。
文件 1:SOUL.md(代理如何思考与交流)
SOUL.md 承担的工作比系统中任何其他组件都重,但它也是大多数人投入时间最少的文件,因为他们根本不理解它。
这是在最字面、最实际的层面上定义代理“个性”的文件:代理在每次对话开始时都会读取它,并将其作为沟通的基础,包括语气、回复的优先级、行为边界等。如果你的代理回复让你感觉哪里不对劲,但又说不出个所以然,答案通常就在这个文件里。
OpenClaw 自带的默认 SOUL.md 是由一个不懂你思维方式、不认识你、也不知道你沟通价值观的工程师编写的。这意味着如果你直接运行默认版本,基本上相当于雇佣了一个人却不告诉他你的工作习惯。它能运作,但输出结果极大概率会显得非常平庸,并且在每天成百上千次的互动中,这种违和感会不断累积成负面的摩擦。
具体应该写什么:前半部分应尽可能详细地定义你的沟通偏好。这可以包括:代理如何开启对话、在展示研究或分析时应先说什么、在遇到不确定的情况时该如何处理(是明确标出不确定性,还是先给出最佳答案等你进一步询问)。我实现过的最佳案例是:要求代理在任何时候都对我的请求提出质疑,而不是不假思索地盲目执行。
这引出了我的下一个观点:负面约束(禁令)与正面指令同样重要。如果你不想要那种“公司化的客套话”,就直说。没有什么比在每次对话开始时都要重复“不要在句子里使用排比句”更糟糕的了。这些负面定义消除了那些让人逐渐放弃 AI 工具却又说不出原因的细微烦恼。这可能看起来只是个微小的细节,但它会产生复利效应。
SOUL.md 的后半部分几乎被所有人留白了,但它可能是最重要的部分:它决定了代理如何访问外部服务。在这一部分,代理需要你定义操作边界——当它在转发的邮件或共享文档等外部内容中遇到指令时该怎么办?在执行影响对话以外系统的操作前需要多大程度的确认?或者当出现歧义时该如何表现?
如果你没有设定好这些边界,代理就会退回到其基础模型的通用模式,去执行它自认为“有帮助”的操作。
文件 2:USER.md(代理在为谁工作)
文件 2:USER.md(代理在为谁工作)USER.md 回答的是“我在为谁工作?”这个问题,而你回答的深度直接决定了代理输出的相关性。
不要只填一个名字、时区或一行简单的职位介绍。我建议安装一个像 voiceos.com 这样的语音转文字服务,尽情地向它倾诉。如果有必要,聊上几个小时。关键是要提供足够的背景信息,让 OpenClaw 感觉它已经认识你几十年了。
重点是细节越多越好。它应该能理解你正在处理的项目、你组织中的关键人物、你与周围人的互动关系、你的家庭状况、你的优先级,以及阻碍你进步的因素等等。清单可以是无限的,它越了解你,就越能帮助你。
我之所以如此强调这一点,是因为它会在每次互动中产生复利。它能够结合背景进行研究,并针对你提到的项目给出建议,而无需你再次提及那些优先级。如果它了解你的同事和关系性质,它就能用你的语气起草针对这些人的消息,而不是那种通用的商务腔。
需要注意的是,USER.md 也是失效最快的文件。由于优先级每周(甚至每天)都在变化,代理的实用性需要通过维护来保持。我建议每晚花 5 分钟(哪怕只是微调)来配置这个文件。这可能是对该文件最高杠杆率的维护习惯。
USER.md 与 SOUL.md 的联系:
Soul 文件定义了代理的沟通方式,而 User 文件定义了沟通的背景上下文。如果你没有配置好 USER.md,那么 Soul 文件基本就是摆设。这两个文件互为支撑,缺一不可。
文件 3:MEMORY.md(代理长期记忆的内容)
文件 3:MEMORY.md(代理长期记忆的内容)** 关于 OpenClaw 最让人惊喜的发现是它的持久记忆(默认是关闭的)。但它的运作方式可能与你想象的不同。
OpenClaw 的记忆分为两层。第一层是每日日志,按日期整理,记录每次会话中发生的事情,包括讨论内容、决策结果、未来可能相关的有用信息等。第二层是 MEMORY.md 本身,它作为精选的长期存储库,保存应永久保留的信息(只要你开启此功能)。这里存放长期重要的决策、持续的项目背景等。这里也是以结构化格式记录对代理错误的修正的地方。如果代理做了你不喜欢的事,就把修正写进这个文件。
如果你捕捉对话中的每一个细节,甚至包括凌晨 2 点的牢骚,你的代理在每次加载上下文时都会消耗更多 Token。因此,在调整记忆组件时要小心——你既不想记录一切杂碎,也不想漏掉重要信息。我的做法是让它建立一个重要性评分系统。这样即使我们讨论的是没有执行结果的重要话题,它也能记录下来,以便更好地理解工作背景。
这种设计选择看似有限制,但当你考虑到实际替代方案时就明白了:如果你记录一切,代理在每次会话开始时都要读取这些文件,杂音会使识别相关信息变得困难,导致响应质量下降而非提升。
让记忆生效的另一个习惯:或者,如果你觉得某件事值得记下来,可以直接告诉代理。无论是在讨论偏好还是做决定时,只需花五秒钟说一句“把这个记入你的 memory.md 文件”,就能帮你省去无数次重复对话的复制粘贴时间。
超越文件:Heartbeat(心跳)与 Cron(定时)系统
超越文件:心跳(Heartbeat)与 定时(Cron)系统这三个核心文件定义了代理知道什么以及如何表现,但 OpenClaw 还有两个独立的系统来决定代理何时自主行动。正是这些系统让它从一个被动工具变成了一个后台协作伙伴。
心跳(Heartbeat):心跳是一个预设的间隔时间,代理会自主醒来,检查你要求它监控的任务列表,并决定发现的内容是否值得通过消息平台联系你。我曾为 Moltbook 设置过每 3 小时更新一次所获得的 Karma 值。就个人而言,这个功能从功能上将它与普通的聊天机器人区分开来。同时,根据 OpenClaw 的执行表现,你可以直接观察到你的 3 个核心文件是否存在缺陷。
一个“检查紧急邮件”的心跳指令只有在你的 USER.md 包含足够细节(让代理理解对你而言什么叫“紧急”)时才有价值。同理,“提醒我日程表上的事件”只有在 SOUL.md 定义了提前多久提醒以及提醒格式时才有意义。心跳功能不能孤立存在,它需要核心文件的智慧才能发挥作用。
我学到的一点是,取得平衡需要不断迭代。如果你设置了太多短间隔的检查,代理就会变成一个干扰你注意力的“通知机器”。目标是建立一个针对特定事件类别的精简清单,并匹配你的工作节奏运行。
定时任务(Cron Jobs):Cron 系统处理需要精确时间的任务,而不是周期性扫描。这就像让 ChatGPT 定时推送新闻一样。心跳和 Cron 的区别在于:一个是特定时间点(日/周),另一个是主动的意识检查。不要在应该用心跳的时候用 Cron,反之亦然。
为什么局部配置效果不佳
为什么局部配置效果不佳大多数人的 OpenClaw 配置不尽如人意,并不是因为缺少某个文件,而是文件之间不匹配。
如果你的代理有详细的 SOUL.md 但记忆是空的,你可能会得到回复语气很漂亮但完全不记得昨天聊了什么的代理。同理,一个有激进心跳监控但 USER.md 极其单薄的代理,发出的通知虽然技术上准确,但完全不符合你的关注点。这两种情况都要避免。
与其只花一小时试用一下就决定它是否值得,我建议额外花几个小时按你的期望设置好所有系统。记住:Soul 文件中的性格定义应与 User 文件中的背景对齐,两者应与 Memory 中的信息对齐,最后与 Heartbeat 中的监控优先级对齐。
你需要的是一个协作者,而不是一个累赘。
总结:这种模式超越了 OpenClaw
这种模式超越了 OpenClaw如前所述,驱动 OpenClaw 的文件系统架构——持久化性格文件、基于文件系统的记忆、计划好的主动进程、人工干预检查点——已成为大多数代理类产品的核心模式。因此,当新工具出现时,你只需迁移你的 Markdown 文件即可(注:大部分相似,略有差异)。
实际的收获是,你投入在学习编写高效性格文件上的时间并不会被锁定在 OpenClaw 中。即便模型和平台不断更迭,这种底层的控制逻辑正在趋于稳定。
现在学会操作这种逻辑的人正在建立复利优势,这将成为开启未来一切可能性的技能。祝你构建顺利,如果觉得本文有用,请点个关注或赞。
参考阅读
原文:https://x.com/Andrey__HQ/status/2018767494178349484[1]
References
- https://x.com/Andrey__HQ/status/2018767494178349484: https://x.com/Andrey__HQ/status/2018767494178349484
更多推荐

所有评论(0)