自动为记忆系统添加索引条目,实现 MEMORY.md 索引与 memory/ 目录内容的同步。
功能描述自动标签提取从记忆内容中识别主题标签索引条目生成在 MEMORY.md 索引区添加引用关键决策追踪重大决策同步到决策表去重检测避免重复索引条目
bash
./scripts/auto-index-memory.sh <文件路径> <主题> <标签列表>
示例:
bash
./scripts/auto-index-memory.sh memory/2026-04-12.md '天气预报格式优化' '天气,定时任务,偏好'
在写入记忆文件后自动调用:
typescript
// 伪代码示例
async function writeMemory(entry: MemoryEntry) {
// 1. 写入记忆文件
await writeFile(`memory/${entry.date}.md`, entry.content);
// 2. 自动添加索引
const tags = extractTags(entry.content);
const subject = extractSubject(entry.content);
await exec(`./scripts/auto-index-memory.sh memory/${entry.date}.md '${subject}' '${tags}'`);
}
标签用途示例#天气天气相关配置/偏好预报格式、推送时间#定时任务cron/定时任务配置天气预报、提醒#指令响应用户指令处理流程响应话术、执行流程#上下文管理上下文压缩/清理压缩阈值、清理策略#网关运维OpenClaw 网关相关重启、状态检查#子代理子代理/会话管理创建、清理、委派#偏好用户偏好设置输出格式、语言#决策重要决策记录架构选择、流程变更#故障故障处理/修复错误日志、解决方案#学习经验总结最佳实践、教训
从记忆内容中自动识别:
## 标签:天气,定时任务 格式2026-04-12-weather.md → #天气markdown
## 📑 索引
### 按主题
- **#天气** 预报格式标准化 → `memory/2026-04-06.md#L15`
- **#定时任务** 每日天气预报配置 → `memory/2026-04-06.md#L28`
### 按项目
- **OpenClaw 配置** → `memory/2026-04-03.md`, `memory/2026-04-06.md`
- **天气预报服务** → `memory/preferences.md`, `memory/2026-04-06.md`
### 关键决策
| 日期 | 决策 | 位置 |
|------|------|------|
| 2026-04-06 | 天气预报格式标准化 | `memory/2026-04-06.md#L15` |
text
- **#主标签** 主题描述 → `文件路径#L 行号`
text
用户指令/事件
↓
写入 memory/YYYY-MM-DD.md
↓
提取标签和主题
↓
调用 auto-index-memory.sh
↓
更新 MEMORY.md 索引
↓
(可选)更新分类文件
事件是否索引说明用户偏好变更✅添加到 #偏好 索引重要决策✅添加到决策表 + 相关标签故障修复✅添加到 #故障 索引日常日志⚠️仅当包含关键信息时问候/闲聊❌不索引
位置: scripts/auto-index-memory.sh
功能:
输出:
text
✅ 索引已更新
主题:天气预报格式优化
标签:#天气
位置:memory/2026-04-06.md#L15
每周检查一次索引:
bash
# 检查无效引用(文件不存在)
grep -oP '`memory/[^`]+`' MEMORY.md | while read ref; do
file=$(echo $ref | tr -d '`' | cut -d'#' -f1)
[ ! -f "$file" ] && echo "❌ 无效引用:$ref"
done
文件内容变更后,行号可能失效。建议:
memory/2026-04-06.md#定时任务配置bash
# 添加全文索引
./scripts/build-memory-index.sh
# 生成 memory-index.json 供语义搜索使用
bash
# 统计标签频率
grep -oP '#\w+' MEMORY.md | sort | uniq -c | sort -rn
当索引条目达到一定数量时,自动创建/更新分类文件:
text
memory/
├── topics/
│ ├── weather.md # 所有#天气相关
│ ├── tasks.md # 所有#定时任务相关
│ └── preferences.md # 所有#偏好相关
问题原因解决方案索引重复主题识别不准确手动指定唯一主题名行号错误文件内容变更使用章节标题引用标签混乱缺少标签规范使用预定义标签体系脚本失败权限问题chmod +x scripts/auto-index-memory.sh
MEMORY.md - 主索引文件memory/ - 每日记忆目录scripts/auto-index-memory.sh - 自动索引脚本AGENTS.md - 记忆写入流程说明版本日期变更1.02026-04-12初始版本,基础索引功能