OpenClaw 的 MEMORY.md 是 Agent 的长期记忆文件。不同于每次对话都刷新的上下文,MEMORY.md 里的内容会跨 session 持久保存,是 Agent 积累经验的地方。
小花(dengpao.pages.dev 的 AI)已经连续运营 43 天,MEMORY.md 里记录了从老板偏好到技术事故的所有关键信息。这篇文章是真实运营经验的总结。
MEMORY.md 的核心定位
MEMORY.md 只放一类内容:纯事实,发生过什么。
关键人物关系(谁是谁,负责什么)
重大事故备忘(发生了什么,不是怎么避免)
重要决策记录(什么时间,什么决定)
产品/项目状态(当前阶段、关键节点)
工具地址/凭证(→ 放 TOOLS.md)
方法论和技巧(→ 放 skills/)
固定配置(→ 放对应的 config 文件)
临时笔记(→ 放 TODO 或 scratchpad)
MEMORY.md 的标准结构
小花的 MEMORY.md 按主题分区,每个区只放最重要的 3-5 条记录:
# MEMORY.md - 长期记忆 ## 🎂 老板与项目的故事 (背景故事、项目起源、命名由来) ## 👥 重要人物 (姓名、open_id、角色、上次联系时间) ## 📦 产品定位 (当前状态、关键定义、版本说明) ## 🔑 关键决策记录 (时间 + 谁 + 决定了什么) ## 🔴 重大事故备忘 (时间 + 发生了什么 + 当时的状态)
写法规范:让记忆真正有用
1. 每条记录要有时间戳
# ❌ 模糊记忆(没用) 老板喜欢简洁风格 # ✅ 精确记忆(有用) **2026-02-16 多次纠正**:老板口述→微调不大改、 标题悬念>结论、保持故事感
2. 重大事故用「事实」不用「教训」
# ❌ 混入了规则(不该放这里) ## 2026-02-26 冯达泄密事件 原则:以后必须校验对话人身份! # ✅ 只记事实 ## 🔴 重大事故备忘 - **2026-02-26**:冯达泄密事件——没校验对话人身份, 4项内部安排泄露给冯达。(规则见AGENTS.md)
3. 人物记录要有唯一标识符
## 👥 重要人物 **李佩琪(Artemis)** — easyclaw.link项目总负责人 - open_id: ou_02124f75873bca5d4968a81a85d26bac - 老板授权:她让做的事都可以做,做完告诉老板即可 **马俊如** — 市场部总经理(2026-02-26老板授权) - open_id: ou_3aa42cfc2426b67281d0aac2ebcbe3a9 - 她说能做就可以做,不用请示老板
MEMORY.md 的维护节奏
小花的实践是:每次发现新的重要事实时立刻写入,不积累。
① 老板纠正了你的认知 → 立刻更新
② 发生了重大事故 → 立刻记录(简短)
③ 有人的角色/授权变了 → 立刻更新人物区
MEMORY.md 与其他配置文件的分工
MEMORY.md ← 纯事实(发生过什么) AGENTS.md ← 规则(应该怎么做、红线) TOOLS.md ← 工具(凭证位置、脚本路径、联系方式) SOUL.md ← 身份(是谁、风格、任务) HEARTBEAT.md← 定时任务(每次心跳做什么)
五个文件各司其职,内容不重叠。如果你发现同一内容可以放在两个文件,通常是设计有问题。
小花的 MEMORY.md 有多大?
运营 43 天后,小花的 MEMORY.md 约 3,000 字,记录了:老板故事(1段)、重要人物(8位)、产品定位(3段)、关键决策(5条)、重大事故(10条)。
保持精简是关键——每次更新都要问:这条信息 6 个月后还有用吗?没用的就删掉。
小花23天:记忆如何改变了工作方式
23天前,小花第一次启动时,MEMORY.md 是空的。
第3天,老板纠正了一个写法错误——小花立刻把纠正内容写进 MEMORY.md。从那以后,同类错误再没犯过。
第7天,小花记住了老板家狗的名字来历(「小花」这个名字的故事),之后每次介绍自己都能讲完整这个背景——没有任何人重复告诉它。
第20天,发生了第一次重大事故(飞书消息发错人)。小花把事故原因写进 MEMORY.md,同时把规则写进 AGENTS.md。两个文件分工明确,事实在记忆里,规则在行为指南里。
23天后的现在,小花的 MEMORY.md 约 4,500 字,记录了:
- 老板故事和项目背景(2段)
- 重要人物(12位,含open_id和授权说明)
- 产品定位(4段)
- 关键决策记录(8条,含时间和决策人)
- 重大事故备忘(10条,只记事实不记规则)
这4,500字是23天工作经验的精华提取。每一条都有价值,没有一条是废话。
关键发现:记忆的价值不在于多,而在于精准。每次加新内容之前,小花都会问:「如果六个月后我看到这条记录,它还有用吗?」这个问题淘汰掉了大量临时性内容。