SuperAPI AI 工具集

memory-defrag

智能体与模型

查看项目

更新于 10-15 14:08

技能介绍

用途

Memory Defrag 用于重组记忆文件,使其更清晰、高效、相关。它被描述为“像文件系统碎片整理,但针对的是知识”。

何时运行

  • 周期性:通过 cron 每周或每两周运行(推荐)。
  • 按需:用户要求清理、重组或整理记忆时。
  • 阈值触发:当 MEMORY.md 超过约 500 行,或每日笔记不断累积而未整合时。

处理流程

1. 审计当前状态

清点所有记忆文件:

  • MEMORY.md — 长期记忆
  • memory/ — 每日笔记、任务、主题文件
  • memory/tasks/ — 进行中和已完成的任务

对每个文件记录:行数、最后修改时间、主题覆盖范围、陈旧程度。

2. 识别问题

常见问题及对应处理:

  • 文件臃肿:超过 300 行、覆盖多个主题 → 拆分为聚焦文件。
  • 信息重复:同一事实出现在多处 → 合并到一处。
  • 条目过期:引用已完成工作、旧日期、已解决问题 → 删除或归档。
  • 孤立文件:memory/ 中从未被引用或更新的文件 → 审查、合并或移除。
  • 不一致:文件间信息矛盾 → 以事实为准解决。
  • 组织混乱:相关信息散落各文件 → 按主题重构。
  • 递归嵌套:出现 memory/memory/memory/... 目录 → 删除嵌套目录(索引器 bug 产物)。

3. 制定计划

编辑前先写简要计划,例如:

## Defrag Plan
- [ ] Split MEMORY.md "Key People" section → memory/people.md
- [ ] Remove completed tasks older than 30 days from memory/tasks/
- [ ] Merge memory/bm-marketing-ideas.md into memory/competitive/
- [ ] Update stale project status entries in MEMORY.md

4. 执行

一次应用一项更改:

  • 拆分:从大文件中提取章节到聚焦的主题文件。
  • 合并:将相关小文件合并为连贯文档。
  • 修剪:移除不再相关或准确的信息。
  • 重构:将文件移动到合适目录,重命名以更清晰。
  • 更新:修正过时的事实、日期、状态。

5. 验证与记录

更改后:

  • 验证没有信息丢失(对比前后)。
  • 更新文件间的交叉引用。
  • 在当天每日笔记中记录所做操作,例如:
## Memory Defrag (HH:MM)
- Files reviewed: N
- Split: [list]
- Merged: [list]
- Pruned: [list]
- Net result: X files, Y total lines (was Z lines)

指南

  • 保留原始每日笔记。不要删除或修改 memory/YYYY-MM-DD.md 文件——它们是审计线索。
  • 目标为 15-25 个聚焦文件。太少意味着文件臃肿;太多意味着碎片化。
  • 文件名应便于浏览。使用描述性名称:people.md、project-status.md、competitive-landscape.md,而不是 notes-2.md。
  • 不要过度组织。通常一层目录就足够。memory/tasks/ 和 memory/competitive/ 可以;memory/work/projects/active/basic-memory/notes/ 不行。
  • 已完成任务:状态为 done 且超过 14 天的任务可以移除。其洞见应已通过反思进入 MEMORY.md。
  • 破坏性更改前先询问。如果不确定信息是否仍然相关,保留并标记 (review needed),而不是删除。