OpenClaw 自我进化架构揭秘:MD 文件驱动的双循环记忆系统大家好,我是玄姐。
PS:
OpenClaw 干货直播,欢迎点击预约,直播见。
核心观点:OpenClaw 本质上不是一套代码,而是一个基于 Markdown 的自我进化系统。它的智能不在于模型本身,而在于那堆与你共同生长的 .md文件。最近几周深度使用 OpenClaw,每天跟它"交流"几个小时后,我逐渐理解了一个被多数人忽略的事实:那些抱怨 OpenClaw"不好用"的用户,可能从未意识到,这不是一个开箱即用的工具,而是一个需要共同培养的数字化实习生。读完源码后,我的结论很简单:OpenClaw 越用越好用的本质,就是一堆 Markdown 文件的复利积累。一、为什么有人觉得 OpenClaw"难用"?
OpenClaw 不生产智能,它只是一个让模型发挥更好的框架。给实习生写再详尽的操作手册,上限还是实习生;但给资深工程师同样的手册,产出会远超预期。框架决定下限,模型决定上限。很多人配置一个 Agent 就想包办所有事务:写代码、写周报、做数据分析。但现实世界中没有全栈通才,AI Agent 也一样。OpenClaw 的多 Agent 架构设计精妙,每个 Agent 拥有独立的 workspace、独立的 memory 数据库、独立的 session 历史。你的代码审查专家不会被周报对话污染经验池,这种垂直积累的深度,远胜于水平扩展的广度。这是最关键的一点。你不能期望一个新员工第一天就能达到三年老员工的水平。Agent 需要培训,需要对话,需要一起踩坑然后把经验固化。这个过程,OpenClaw 称之为"形成 SOP";用技术语言说,就是积累 workspace 文件。二、核心架构:一个自我进化的 MD 文件系统
源码揭示的机制极其朴素,却构成了一个威力巨大的飞轮:每次对话前,把一堆 md 文件拼进 Prompt;对话后,让 Agent 把新学到的东西写回这些 md 文件。
OpenClaw 为每个 Agent 的 workspace 预设了 7 类核心文件,构成了 Agent 的"数字人格": | | |
|---|
| SOUL.md | | 语气、风格、价值观。关键是模板提示:"随着你了解你自己,更新这个文件",人格不是写死的,是对话中生长的 |
| USER.md | | 记录你的技术偏好、沟通风格、工作习惯。用得越久,画像越精准,Agent 越"懂你" |
| AGENTS.md | | 最关键的文件。记录行为规范和所有踩过的坑。模板明确指令:"当你学到教训 → 更新 AGENTS.md"、"当你犯错 → 记录它,让未来的你不重复" |
| TOOLS.md | | |
| SKILL.md × N | | OpenClaw 内置 52 个 skill,覆盖 GitHub 管理、代码审查等。关键是:用户可以完全自定义,且 workspace skill 优先级最高,可覆盖任何内置行为 |
| memory/*.md | | |
| MEMORY.md | | 从 daily memory 中提炼的永久性知识,每次对话必加载 |
以上 7 类只是骨架。workspace 本质是普通文件夹,Agent 拥有文件读写权限,可以在其中创建任何需要的结构。一个经过深度使用的项目 Agent,workspace 可能长成这样:workspace/├── SOUL.md├── USER.md├── AGENTS.md ← 记录着"这个项目的微服务不能直连数据库"等血泪教训├── TOOLS.md├── MEMORY.md├── memory/│ ├── 2026-03-01.md│ └── 2026-03-02.md├── projects/│ ├── project-alpha/│ │ ├── progress.md│ │ ├── decisions.md ← 记录架构决策上下文│ │ └── risks.md│ └── project-beta/└── templates/ ├── weekly-report.md ← 你们团队特定的周报格式 └── meeting-notes.md
这就是真正的"私人定制",不是设置页面的几个勾选框,而是通过数百次对话,Agent 自己生长出一套只适用于你、你们团队、你们项目的知识体系。三、双循环进化机制
对话开始 → 加载所有核心 md 文件到 system prompt → 执行任务 → 学到新东西/犯错/发现偏好 → 写回相关文件 → 对话结束
每次对话都在更新 AGENTS.md、USER.md 或 MEMORY.md。这意味着每一条踩坑记录都是一次错误代价换来的永久经验,从此永远生效。当 memory 文件积累到几百个,不可能全部塞进 Prompt(token 限制)。OpenClaw 使用 SQLite FTS5 全文搜索 + sqlite-vec 向量检索的混合引擎(权重 70% 向量 + 30% 关键词),支持 MMR 多样性和时间衰减。Agent 每次对话前被明确要求先 memory_search,即使积累了海量记忆,也能精准召回相关信息。外环积累知识,内环高效调用,这就是完整的"学习-记忆-检索-应用"系统。四、关键实现细节(从源码看本质)
resolveBootstrapContextForRun() 函数严格限制:单个文件 20KB,总量 150KB。超出部分直接截断。这倒逼 Agent 必须学会提炼,把最重要的经验浓缩在有限空间。这也解释了为什么要有 MEMORY.md(精华)和 memory/*.md(原始日志)的分层。从低到高:插件 skill → 内置 skill → 托管 skill → 个人 skill → 项目 skill →Workspace skill(最高)你可以用一个简单的 md 文件,覆盖任何内置行为。这就是"调教"的技术本质。首次使用的 BOOTSTRAP.md在完成初始化后会被 Agent 主动删除,一次性 scaffolding,不留下垃圾。五、这意味着什么?
代码是开源的,模型是通用的。真正属于你的、不可替代的部分,是 workspace 里那堆 md 文件。换台电脑,拷走文件夹,体验原封不动;删掉文件夹,一切归零。不需要编程,不需要懂 Prompt Engineering。用自然语言把经验、偏好、规范写成 md 文件即可。甚至不需要你自己写,Agent 会在对话中自动提炼。两个人用同样版本的 OpenClaw、同样的模型,体验可能天差地别。差别在于 workspace 里积累了什么:三个月的用户拥有几十个 skills、上百条踩坑记录、完善的用户画像;新手只有默认模板。这跟现实世界的专家差距逻辑完全一致,智商(模型)差不多,差距在于积累的经验(md 文件)。任何想要"越用越好用"的 Agent 产品,最终都要解决知识持久化和检索问题。OpenClaw 的方案极其朴素:最通用的文件格式(Markdown)、最通用的存储(文件系统)、最直觉的组织(文件夹),加上一个搜索引擎串联。没有花哨的知识图谱,没有复杂的向量数据库集群,就是一堆 md 文件。但这堆文件承载的是一个不断进化的专家系统,它知道你是谁、你要什么、怎么做你的事、哪些坑不能踩。六、实操建议
- 主动引导 SOP 形成:不要等 Agent 自己摸索,在你已有成熟工作流的领域,直接告知"以后这类任务按此流程",让它写成 SKILL.md。
- 定期审查 workspace:Agent 自己写的内容不一定准确,定期查看 AGENTS.md、USER.md,及时修正过时信息。
- 善用多 Agent 隔离:不同领域配置不同 Agent,保持知识积累的垂直性和纯粹性。
- 务必做好 Git 备份:这是你最有价值的数字资产之一。OpenClaw 默认 Git 跟踪,建议定期 push 到远程。
七、结语
OpenClaw 的源码有几十万行,但让它"越用越好用"的核心机制,说穿了就是一个 md 文件的读写循环。代码提供了管道,模型接入、工具执行、Memory 索引。但流过管道的水质,取决于那些不断积累的 md 文件。代码决定了 OpenClaw 能做什么,md 文件决定了它做得多好。而后者,是你和你的 Agent 一起,一次对话一次对话,共同攒出来的。PS:
OpenClaw 干货直播,欢迎点击预约,直播见。
好了,这就是我今天想分享的内容。如果你对构建企业级 AI 原生应用新架构设计和落地实践感兴趣,别忘了点赞、关注噢~
—1—
加我微信
扫码加我👇有很多不方便公开发公众号的我会直接分享在朋友圈,欢迎你扫码加我个人微信来看👇
加星标★,不错过每一次更新!
⬇戳”阅读原文“,立即预约!