edit | blame | history | raw

---
name: memory-management

description: "三层记忆架构管理系统 (L0索引→L1概览→L2详情)。用于记录、维护和优化AI助手的记忆体系。当需要记录重要信息、决策或事件时使用;当需要维护记忆体系(归档、整理、合并)时使用;当L0层接近4KB限制时需要整理。"

三层记忆管理

架构: L0索引 → L1概览 → L2详情
红线: L0 < 4KB | 只存索引 | 详情通过路径引用


目录结构(固定)

~/.openclaw/workspace/
├── MEMORY.md                    # L0: 索引层(红线:4KB)
├── memory/
│   ├── milestones/              # L1: 概览层
│   │   └── YYYY-MM-topic.md
│   └── journal/                 # L2: 详情层
│       └── YYYY-MM-DD.md
├── AGENTS.md                    # 启动序列(参考)
├── SOUL.md                      # 人格(参考)
└── USER.md                      # 用户偏好(参考)

写入规则

L0 (MEMORY.md) - 索引层

触发条件: 任何需要"记住"的事

写入内容:
- 索引目录(指向L1/L2的链接)
- 最近活动摘要(3-5条)
- 关键决策列表

模板:
```markdown

🔍 快速检索

最近活动

  • YYYY-MM-DD: [一句话摘要] → 详见 L2

关键决策

  • [决策标题]:简要说明
    ```

红线检查:
- 文件 > 4KB → 触发归档提醒
- 超过10条未归档 → 提示整理到L1

L1 (milestones/) - 概览层

触发条件:
- L2积累到一定量,或跨会话仍重要
- 每周维护时自动合并

组织方式:
- 按主题:YYYY-MM-skills.md, YYYY-MM-decisions.md
- 每条包含:决策/事件、时间、关联的L2链接

模板:
```markdown

YYYY-MM 主题里程碑

[日期] 事件标题

背景:简述
决策/结论:关键点
来源L2链接
```

L2 (journal/) - 详情层

触发条件: 详细记录、完整对话、原始上下文

写入内容:
- 完整背景
- 详细过程
- 决策/结论
- 关联引用

模板:
```markdown

YYYY-MM-DD

[HH:MM] 事件标题

背景

发生了什么

详情

完整记录

决策/结论

关键产出

关联

  • L1里程碑:[链接]
    ```

维护规则

每日维护(晚上10点后触发,心跳触发)

触发条件: 晚上10点后,如果今日还没有写入L2

任务清单:
- [ ] 检查今日是否有重要决策需要记录到L2
- [ ] 检查飞书渠道历史 — 如用户询问"检查昨天的每日总结",需读取所有session并提取飞书渠道的完整聊天记录补充到L2
- [ ] 更新 MEMORY.md 的"最近活动"摘要
- [ ] 确保 L0 层不超过 4KB

重要提醒:

⚠️ 飞书历史检查:当用户说"检查昨天的每日总结"或类似表述时,必须:
1. 使用 sessions_list 查找过去48小时的活跃session
2. 检查 .openclaw/agents/main/sessions/ 目录下是否有 .jsonl.reset.* 归档文件
3. 读取这些文件提取飞书渠道的完整聊天记录
4. 将遗漏的内容补充到当日L2记录中

脚本调用:
bash python ~/.openclaw/workspace/skills/memory-management/scripts/daily_check.py

每周维护(周一早上9:30,Cron定时任务)

配置方法:
bash # 添加cron任务,每周一9:30执行 openclaw cron add \ --name "memory-weekly-maintenance" \ --cron "30 9 * * 1" \ --message "执行三层记忆每周维护:1.运行memory-merger整理L2→L1 2.检查L0大小 3.生成周报发送给用户" \ --channel feishu \ --to "USER_ID" \ --tz "Asia/Shanghai"

任务清单:
- [ ] 运行 memory-merger 整理本周 L2 → L1
- [ ] 检查 L0 大小,必要时归档
- [ ] 生成周报内容
- [ ] 发送周报到飞书

脚本调用:
bash python ~/.openclaw/workspace/skills/memory-management/scripts/weekly_maintenance.py


决策流程

发生事件
    │
    ▼
需要记住?
    ├── 否 → 忽略
    │
    └── 是
         │
         ▼
    详细程度?
         ├── 高 → 写L2 (journal/YYYY-MM-DD.md)
         │         └── 更新L0引用
         │
         └── 低 → 写L0 (MEMORY.md)
                   └── 定期检查大小

L2 → L1 升级流程:
L2积累 │ ▼ 重要/持久? ├── 是 → 提炼 → 写L1 (milestones/) │ └── 更新L0索引 │ └── 否 → 保持L2


使用脚本

快速写入L0

python scripts/write_l0.py "摘要内容" --link "memory/journal/2026-03-13.md"

创建/追加L2

python scripts/write_l2.py --date 2026-03-13 --title "事件标题" --file content.txt

检查L0大小

python scripts/check_size.py  # 输出:L0当前3.2KB/4KB ✅

每周维护

python scripts/weekly_maintenance.py --send-report

红线规则

  1. L0 < 4KB:超过则必须归档到L1
  2. L0只存索引:详情必须通过路径引用
  3. L2日期命名:必须按YYYY-MM-DD格式
  4. 每周必须维护:不能无限累积L2
  5. 飞书历史必须检查:当检查每日总结时,必须读取所有session提取飞书聊天记录

与memory-merger的关系

  • memory-merger:专注L2→L1的合并逻辑
  • memory-management:完整的记忆体系管理(写入+维护+检查)

当需要执行L2→L1合并时,本技能会调用memory-merger。