Smart Memory — 多层级记忆管理系统
核心用法
Smart Memory 为 OpenClaw 代理系统建立 5 层记忆架构,解决传统单文件 MEMORY.md 的固有问题:
1. MEMORY.md(核心层):精简至 35 行以内,仅保留用户画像、项目索引、关键规则、代理路由表
2. active-context.md(活跃上下文层):维护 [OPEN]/[DONE] 状态块,记录进行中话题的完整上下文,突破 48 小时记忆限制
3. memory/projects/(项目手册层):每个项目独立的 CONTEXT.md,按需注入到子代理
4. memory/agents/(代理域知识层):跨项目通用的专业规则,如 "GPT 生成 Swift 代码的注意事项"
5. Daily Logs + Graceful Session 管理:结构化日志 + 会话优雅终止机制
关键操作原则:
- 结构化变更必须 立即 写入 active-context.md(同一条回复内完成)
- 项目技术发现必须 立即 写入 CONTEXT.md(非任务结束后)
- 每周自动清理
[DONE]条目,保持 active-context.md < 100 行
显著优点
- 解决上下文膨胀:将数百行的 MEMORY.md 压缩至 35 行核心信息,按需加载项目细节
- 消除 48h 遗忘:active-context.md 按话题相关性而非时间排序,重要事项持续可见直至标记完成
- 规则不再"隐形":关键规则作为
[OPEN]块持续存在,直至被"内化"后移除 - 多代理协同:子代理仅接收其需要的 CONTEXT.md 内容,避免信息过载
- 抗会话中断:"立即写入"原则确保 Rate Limit 或崩溃不会导致记忆丢失
- 优雅会话终止:v1.3 新增的 graceful-session-end.py 防止硬删除导致的完整上下文丢失
潜在缺点与局限性
- 初期设置成本:需要一次性重构现有 MEMORY.md,建立目录结构和模板文件
- 维护纪律要求高:"立即写入"是反直觉的,开发者易回退到"最后一起写"的习惯
- 模板依赖:项目 CONTEXT.md 和代理域文件需要维护模板,否则格式易混乱
- Heartbeat 单点:若无可靠 Cron/Heartbeat,weekly cleanup 可能失效导致文件膨胀
- 适用范围局限:主要针对 OpenClaw 生态系统,其他 AI 代理框架需适配调整
适合人群
- 使用 OpenClaw 进行长期项目开发(>2 周)的开发者
- 运行多代理协作系统的团队(主代理 + 编码/设计/分析子代理)
- 遭遇"代理忘记已确认规则"或"需要反复解释同一背景"问题的用户
- 会话频繁因 token 限制中断,导致上下文丢失的场景
常规风险
- SPOF 风险:active-context.md 成为关键依赖,若损坏/丢失会导致大量上下文失效(需配合版本控制)
- 过度工程:简单项目可能无需 5 层架构,单文件 MEMORY.md 足够
- 同步问题:多用户同时修改同一 active-context.md 可能产生冲突(建议配合 Git 或锁机制)
- 误删风险:Graceful termination 若配置错误,仍可能意外删除活跃会话