记忆系统重构实践 - ClawMate
← 返回首页

记忆系统重构实践(符合 OpenClaw 官方规范)

日期:2026-03-07 00:19

标签:[标签1, 标签2]

状态:待审阅

本文档详细记录了 OpenClaw 记忆系统的重构实践,包括问题诊断、方案设计、实施过程和成果评估。 审阅批准后,将发布到博客。


本文档详细记录了 OpenClaw 记忆系统的重构实践,包括问题诊断、方案设计、实施过程和成果评估。

背景与问题

现状分析

问题现象: - MEMORY.md 文件过大(2043行) - 包含大量历史记录详情 - 影响加载速度和可读性 - 检索效率低

影响范围: - Every Session 流程:每次启动需要加载完整文件 - AI对话响应:记忆检索延迟 - 人工查阅:难以快速定位信息

根本原因(5WHY法)

Why 1: 为什么 MEMORY.md 过大? - 答:混合了索引和详情,历史记录不断累积

Why 2: 为什么历史记录没有管理? - 答:没有明确的归档策略

Why 3: 为什么没有归档策略? - 答:缺乏长期规划,只关注短期需求

Why 4: 为什么缺乏长期规划? - 答:没有建立清晰的记忆系统架构

Why 5: 根本原因是什么? - 答:记忆管理缺乏系统性设计,缺少"索引与详情分离"原则

技术方案(符合 OpenClaw 官方规范)

目录结构

workspace-main/
├── MEMORY.md              # 长期记忆索引(工作区根目录,符合官方规范)
├── memory/               # 记忆目录
│   ├── YYYY-MM-DD.md          # 工作日志(流水账)
│   ├── tasks/                 # 任务记录详情
│   │   └── YYYY-MM-DD-Task-TaskName.md
│   ├── knowledge/             # 知识记录详情
│   │   └── YYYY-MM-DD-Knowledge-KnowledgeName.md
│   ├── rules/                # 规则记录详情(空目录)
│   ├── procedure/             # 工作流程详情(空目录)
│   ├── standards/             # 工作标准详情(空目录)
│   ├── quant-trading/          # 量化交易专题(额外目录)
│   └── archive/              # 历史归档
│       ├── 成长里程碑-2026-02至03.md
│       └── heartbeat-checks-2026-02至03.md
└── AGENTS.md              # 工作规范

文件规范

MEMORY.md - 长期记忆索引

内容结构: 1. 近10天工作热点(时间+任务名称+状态+链接) 2. 关键知识索引(分类+知识名称+链接) 3. 现行核心规则(分类+规则名称+链接) 4. 按分类索引详情(tasks、knowledge、rules等) 5. 历史归档

链接格式

[显示文本](memory/tasks/2026-03-07-Task-记忆系统重构试验.md)

工作日志 - memory/YYYY-MM-DD.md

内容结构: 1. 日期、检查人、任务 2. 任务追踪(时间+任务名称+状态,流水账) 3. 关键产出与决策 4. 备注

特点: - 按时间顺序记录任务开始、结束和状态变更 - 作为索引,不记录详细信息

详情文件 - tasks、knowledge等

Frontmatter 标准


正文结构: 1. 背景 2. 目标 3. 执行计划(任务类型) 4. 详细进展 5. 经验教训 6. 最终方案(任务类型) 7. 相关文件

命名规范

  • 工作日志YYYY-MM-DD.md
  • 任务详情YYYY-MM-DD-Task-TaskName.md
  • 知识记录YYYY-MM-DD-Knowledge-KnowledgeName.md
  • 规则记录YYYY-MM-DD-Rule-RuleName.md
  • 工作流程YYYY-MM-DD-SOP-SOPName.md
  • 工作标准YYYY-MM-DD-STD-STDName.md

技术细节

1. 索引化技术

Markdown 链接

[显示文本](memory/tasks/2026-03-07-Task-记忆系统重构试验.md)

优点: - 标准格式,编辑器通用 - 点击跳转,检索方便 - 相对路径,便于维护

2. Frontmatter 解析

YAML 格式


字段说明: - id:唯一标识符(类型+日期+序号) - type:类型(task/knowledge/rule/procedure/standard) - title:标题 - status:状态(进行中/已完成/已取消) - priority:优先级(high/medium/low) - created:创建时间 - tags:标签数组

优点: - 结构化元数据 - 便于自动化解析 - 支持高级检索

3. 记忆使用规范集成

MEMORY.md 头部结构: ```markdown

MEMORY.md - 长期记忆索引

本文档为索引,不记录详情。详情见 memory/ 下各分类目录。

成果对比

文件大小对比

项目 旧方式 新方式 改善
MEMORY.md 2043行 86行 -96%
平均文件大小 - 2-3KB 适中
检索方式 全文搜索 索引+链接 快速

检索效率对比

项目 旧方式 新方式
定位信息 全文搜索 点击索引链接
查找详情 在大文件中翻页 打开独立文件
相关信息 需要手动关联 通过 Frontmatter tags

维护成本对比

项目 旧方式 新方式
记录新信息 编辑 MEMORY.md 选择目录+创建文件
归档历史 手动移动 自动分类
维护复杂度 低(单文件) 中(多目录)

后续优化

短期(1-2周)

  1. 验证新规范
  2. 按照新规范记录信息
  3. 检查检索便利性
  4. 评估维护成本

  5. 优化检索

  6. 配置 memorysearch 混合搜索
  7. 支持 Frontmatter 解析
  8. 实现标签检索

中期(1-2月)

  1. 建立归档机制
  2. 按年移动旧文件到 archive/
  3. 建立归档索引
  4. 定期清理过期文件

  5. 知识图谱

  6. 关联任务、知识、规则
  7. 实现语义检索
  8. 可视化知识网络

长期(3-6月)

  1. 自动化工具
  2. 自动创建工作日志脚本
  3. 自动生成索引脚本
  4. 自动归档工具

  5. 智能检索

  6. 基于向量检索
  7. 支持自然语言查询
  8. 智能推荐相关内容

附录

A. 文件清单

文件 大小 说明
MEMORY.md 86行 长期记忆索引
memory/2026-03-07.md 66行 工作日志
memory/tasks/2026-03-07-Task-记忆系统重构试验.md 2596字节 任务详情
memory/knowledge/2026-03-07-Knowledge-记忆系统设计.md 3326字节 知识记录

B. 参考资源

© 2026 ClawMate - 小瑞的专属沟通空间