跳转至

🧠 艾宾浩斯记忆曲线复习系统

快速实现、立即使用 —— 按记忆曲线自动提醒复习对话内容、技术知识、项目进度


📋 系统说明

工作原理

  1. 添加复习点 —— 从对话、技术文档、项目进度中提取知识点
  2. 自动排期 —— 按艾宾浩斯曲线计算最佳复习时间
  3. 定时提醒 —— 每 30 分钟检查一次,到点发送飞书消息
  4. 渐进复习 —— 8 个复习周期,从 5 分钟到 15 天

艾宾浩斯复习间隔

次数 间隔时间 说明
1 5 分钟 初次记忆后快速复习
2 30 分钟 短期记忆巩固
3 12 小时 跨天复习
4 1 天 24 小时后
5 2 天 48 小时后
6 4 天 长期记忆开始
7 7 天 一周后
8 15 天 半月后,进入长期记忆

🚀 快速使用

1️⃣ 手动添加复习点

1
2
3
4
5
6
7
8
# 添加一个技术问题
node /home/admin/.openclaw/workspace/scripts/ebbinghaus-review.js add "智守项目的第 1 月里程碑是什么时候?"

# 添加项目进度
node /home/admin/.openclaw/workspace/scripts/ebbinghaus-review.js add "CodePilot 总预算$7,270,主要开支:服务器、API、营销"

# 添加对话内容
node /home/admin/.openclaw/workspace/scripts/ebbinghaus-review.js add "艾宾浩斯曲线的 8 个复习间隔"

2️⃣ 查看复习状态

node /home/admin/.openclaw/workspace/scripts/ebbinghaus-review.js list

输出示例:

1
2
3
4
5
6
7
8
9
复习点总数:5
待复习:3
已完成:2

🔔 待复习项目:
1. [project] 智守项目的第 1 月里程碑是什么时候?...
   第 1 次复习 - 掌握度:0%
2. [tech] 艾宾浩斯曲线的 8 个复习间隔...
   第 2 次复习 - 掌握度:50%

3️⃣ 完成复习

收到飞书提醒后,回复: - ✅ 掌握了 → 调用 complete <id> 80(高分,延后复习) - ❌ 忘记了 → 调用 complete <id> 20(低分,提前复习) - ⏰ 提醒我 → 1 小时后再提醒(手动修改下次复习时间)

# 完成复习,掌握度 80%
node /home/admin/.openclaw/workspace/scripts/ebbinghaus-review.js complete rev_1773524031013_kx9dyaucv 80

4️⃣ 立即检查(测试用)

node /home/admin/.openclaw/workspace/scripts/ebbinghaus-review.js check

📦 自动化配置

Cron 定时任务

系统已配置每 30 分钟自动检查:

1
2
3
4
5
# 查看 cron 配置
crontab -l | grep ebbinghaus

# 重新配置(如需要)
/home/admin/.openclaw/workspace/scripts/setup-ebbinghaus-cron.sh

日志查看

1
2
3
4
5
# 实时查看日志
tail -f /home/admin/.openclaw/workspace/logs/ebbinghaus-cron.log

# 查看最近 20 条
tail -n 20 /home/admin/.openclaw/workspace/logs/ebbinghaus-cron.log

🔧 高级用法

批量添加复习点

创建脚本自动从文档提取:

1
2
3
4
5
6
7
#!/bin/bash
# 从项目文档提取复习点

node /home/admin/.openclaw/workspace/scripts/ebbinghaus-review.js add "智守项目里程碑:2026-04-12 立项与需求确认"
node /home/admin/.openclaw/workspace/scripts/ebbinghaus-review.js add "智守项目里程碑:2026-05-13 硬件设计与验证"
node /home/admin/.openclaw/workspace/scripts/ebbinghaus-review.js add "CodePilot 里程碑:2026-04-12 基础建设完成"
node /home/admin/.openclaw/workspace/scripts/ebbinghaus-review.js add "CodePilot 里程碑:2026-05-13 核心功能完成"

从对话历史自动提取

1
2
3
// 调用 sessions_history API 获取对话
// 使用 AI 提取关键技术点和项目信息
// 批量添加到复习系统

按类型筛选

1
2
3
4
5
6
7
# 查看技术类复习点
node -e "
const db = require('/home/admin/.openclaw/workspace/memory/review-db.json');
db.reviews
  .filter(r => r.type === 'tech')
  .forEach(r => console.log(r.content));
"

📊 数据结构

复习点存储在 /home/admin/.openclaw/workspace/memory/review-db.json

{
  "reviews": [
    {
      "id": "rev_1773524031013_kx9dyaucv",
      "content": "智守项目的第 1 月里程碑是什么时候?",
      "type": "project",
      "source": "projects/zhishou/README.md",
      "createdAt": 1773524031013,
      "nextReviewAt": 1773524331013,
      "reviewCount": 0,
      "lastReviewAt": null,
      "mastery": 0,
      "status": "pending"
    }
  ],
  "config": {
    "enabled": true
  }
}

字段说明

  • type: 复习类型
  • dialog - 对话内容
  • tech - 技术知识
  • project - 项目进度
  • mastery: 掌握程度 0-100
  • status:
  • pending - 待复习
  • completed - 已完成所有周期
  • archived - 已归档

🎯 后续优化方向

短期(1-2 周)

  • 自动从会话历史提取复习点(AI 分析)
  • 飞书消息支持点击按钮回复(✅/❌/⏰)
  • 自动解析回复,更新复习状态
  • 每日复习汇总报告

中期(1 个月)

  • 游戏化元素(积分、等级、成就)
  • 复习统计图表(记忆保持率曲线)
  • 支持图片/代码片段复习
  • 分组复习(按项目/主题)

长期(3 个月+)

  • 独立 Web 界面
  • 多人协作复习
  • 智能题目生成(填空、选择、问答)
  • 语音复习(TTS)

🐛 故障排查

问题:收不到复习提醒

  1. 检查 cron 是否运行:

    crontab -l | grep ebbinghaus
    

  2. 检查日志:

    tail -f /home/admin/.openclaw/workspace/logs/ebbinghaus-cron.log
    

  3. 手动测试:

    node /home/admin/.openclaw/workspace/scripts/ebbinghaus-review.js check
    

问题:复习点不更新

检查数据文件权限:

ls -la /home/admin/.openclaw/workspace/memory/review-db.json

问题:飞书消息发送失败

检查 openclaw 命令是否可用:

openclaw --version


📞 帮助

node /home/admin/.openclaw/workspace/scripts/ebbinghaus-review.js help

创建时间: 2026-03-15
版本: v0.1.0(MVP)
维护: OpenClaw 自动化系统