edit | blame | history | raw

---
name: memory-md-hot

description: 管理 MEMORY.md 热记忆文件,维护事件流水和重要事件记录。当需要更新 memory.md、添加日常事件或重要事件时使用。支持每日自动更新,保留所有历史记录,推荐配合 memory-md-archive 技能进行归档瘦身。

memory-md-hot 技能

管理 MEMORY.md 热记忆文件,让 agent 每次启动时被动了解最近发生的事情。

文件定位

  • 目标文件: ~/.openclaw/workspace/MEMORY.md
  • 维护脚本: scripts/daily_maintenance.py

文件结构

MEMORY.md 包含三个部分:

  1. 文件说明 - 说明本文件记录已发生的事情,详细信息可通过记忆检索获取
  2. 🔔 重要事件 - 全局长期性影响的重要决策和事件(默认空,记录时需告知用户)
  3. 📅 事件流水 - 按天分组的每日主要事情概要

事件格式

所有事件遵循统一格式:

- YYYY-MM-DD HH:MM | 一句话概要 | 关键词1,关键词2

示例:
- 2026-03-16 10:30 | 创建memory-md-hot技能 | 技能,记忆系统 - 2026-03-16 14:00 | 配置LanceDB嵌入模型 | 配置,向量数据库

使用场景

场景1: 每日维护(自动)

每天执行一次,从记忆检索中获取当日事件,更新流水:

python3 ~/.openclaw/workspace/skills/memory-md-hot/scripts/daily_maintenance.py update

功能:
- 扫描当日记忆,提取重要事件
- 添加新的日常事件到对应日期分组
- 保留所有历史记录(不再自动移除旧记录)
- 更新文件统计信息

场景2: 添加日常事件

记录一般的日常活动:

python3 scripts/daily_maintenance.py add-daily 2026-03-16 "10:30" "测试脚本" "开发,测试"

或在 agent 会话中:

from skills.memory_md_hot.scripts.daily_maintenance import update_memory_file

# 添加单个日常事件
event = ("2026-03-16", "10:30", "测试脚本", "开发,测试")
result = update_memory_file(new_daily_events=[event])

场景3: 添加重要事件

记录具有全局长期性影响的事件(**必须告知用户**):

python3 scripts/daily_maintenance.py add-important 2026-03-16 "14:00" "重构记忆系统" "架构,重要"

或在 agent 会话中:

event = ("2026-03-16", "14:00", "重构记忆系统", "架构,重要")
result = update_memory_file(important_event=event)

if result['added_important']:
    print("已记录重要事件,请告知用户")

场景4: 检查文件统计

python3 scripts/daily_maintenance.py stats

或在 agent 会话中:

from skills.memory_md_hot.scripts.daily_maintenance import get_stats

stats = get_stats()
print(f"当前文件: {stats['size_kb']}KB, {stats['total_events']} 条事件")
if stats['size_kb'] > 50:
    print("建议:文件较大,可考虑使用 memory-md-archive 技能归档")

重要事件判断标准

什么应该记录为重要事件:

类型 示例
架构变更 记忆系统重构、技能体系升级
配置变更 API Key 更换、模型切换
重要决策 采用新工作流、确立规范
关键里程碑 项目完成、重要功能上线

什么只记录为日常事件:

类型 示例
常规查询 天气查询、网页搜索
临时任务 单次文件处理、数据分析
日常对话 问答、简单讨论

文件归档管理

本技能**保留所有历史记录**,不再自动移除旧事件。

当文件增长到一定大小时,建议配合 memory-md-archive 技能进行归档:

# 查看文件统计
python3 scripts/daily_maintenance.py stats

# 当文件较大时,使用归档技能
# (需先安装 memory-md-archive 技能)
python3 ~/.openclaw/workspace/skills/memory-md-archive/scripts/archive.py

归档建议
- 文件超过 50KB 时建议归档
- 可将较早的重要事件移动到归档文件
- 日常事件可选择性归档或保留

与其他组件的关系

┌─────────────────────────────────────────────────────────┐
│  LanceDB-Pro 向量记忆                                     │
│  - 存储所有详细记忆                                        │
│  - 支持语义检索                                           │
└────────────────────┬────────────────────────────────────┘
                     │ 检索
                     ▼
┌─────────────────────────────────────────────────────────┐
│  MEMORY.md 热记忆 (本技能管理)                            │
│  - 事件流水(摘要)                                       │
│  - 重要事件(全局影响)                                    │
│  - 所有历史记录(需配合 archive 技能归档)                  │
└────────────────────┬────────────────────────────────────┘
                     │ 启动注入
                     ▼
┌─────────────────────────────────────────────────────────┐
│  Agent 启动上下文                                         │
│  - 快速了解最近发生了什么                                  │
│  - 无需查询即可感知活跃记忆                                │
└─────────────────────────────────────────────────────────┘

最佳实践

  1. 每日更新: 建议设置定时任务每天执行 update 命令
  2. 即时记录: 重要事件发生后立即记录,不要累积
  3. 简洁描述: 一句话概要,关键词用逗号分隔
  4. 主动告知: 添加重要事件时必须告知用户
  5. 定期归档: 文件较大时使用 memory-md-archive 技能归档

故障排查

文件未更新

  • 检查脚本路径是否正确
  • 确认 MEMORY.md 存在且可写

文件过大

  • 执行 stats 查看当前大小和事件数量
  • 安装并使用 memory-md-archive 技能进行归档
  • 考虑清理不再重要的日常事件

日期解析错误

  • 确保日期格式为 YYYY-MM-DD
  • 时间格式建议为 HH:MM--:--