Professional memory indexing and task management system for OpenClaw. Provides three-level indexing (core→project/type→detail), task tracking, keyword mappin...
---
name: memory-manager-pro
description: Professional memory indexing and task management system for OpenClaw. Provides three-level indexing (core→project/type→detail), task tracking, keyword mapping, and tag-based retrieval. Use when managing multiple projects, organizing tasks, creating memory structures, or optimizing information retrieval. Triggers on phrases like "管理记忆", "创建索引", "规划任务", "memory management", "task planning", "组织项目".
---
# Memory Manager Pro
专业记忆索引与任务管理系统 Skill for OpenClaw。提供三级索引架构、任务追踪、关键词映射、标签检索等功能,支持多项目管理。
## 核心功能
1. **三级索引架构** - 核心索引→项目/类型索引→详细内容
2. **任务管理系统** - 创建、执行、追问、归档完整流程
3. **关键词映射** - 快速定位文件路径
4. **标签系统** - 多维度组合检索
5. **规划预生成** - 自动创建下一步规划
6. **智能去重** - 标题、任务ID等自动去重检查
## 快速开始
### 创建新项目结构
```bash
# 1. 创建项目目录
mkdir -p projects/{project_name}/{subdirs}
mkdir -p memory/项目索引 memory/类型索引 memory/快速检索 memory/任务流/任务详情
# 2. 创建核心文件
touch memory/核心索引.md
touch memory/项目索引/{类型}_项目索引.md
touch memory/类型索引/{category}.md
touch memory/快速检索/关键词映射.md
# 3. 初始化任务追踪
touch memory/任务流/活跃任务.md
```
### 创建新任务
```bash
# 1. 生成任务ID
TASK_ID="TASK_{TYPE}_{YYYYMMDD}_{SEQ}"
# 2. 创建任务详情文件
touch memory/任务流/任务详情/${TASK_ID}.md
# 3. 添加到活跃任务索引
edit memory/任务流/活跃任务.md
# 4. 关联到项目索引
edit memory/项目索引/{项目}_项目索引.md
```
## 目录结构标准
```
workspace/
├── projects/ # 项目目录(按项目类型分类)
│ ├── novel/ # 小说项目
│ │ └── {project_name}/
│ ├── code/ # 编码项目
│ │ └── {project_name}/
│ ├── design/ # 设计项目
│ │ └── {project_name}/
│ └── research/ # 研究项目
│ └── {project_name}/
│
├── memory/ # 记忆索引系统
│ ├── 核心索引.md # ⭐ 顶层入口(<500字)
│ ├── 系统说明.md # 系统架构文档
│ │
│ ├── 项目索引/ # 按项目分类(纵向)
│ │ ├── 小说项目索引.md
│ │ ├── 编码项目索引.md
│ │ ├── 设计项目索引.md
│ │ └── 研究项目索引.md
│ │
│ ├── 类型索引/ # 按任务类型分类(横向)
│ │ ├── 创作类.md
│ │ ├── 编码类.md
│ │ ├── 设计类.md
│ │ └── 研究类.md
│ │
│ ├── 快速检索/ # 快速定位系统
│ │ ├── 关键词映射.md # 关键词→路径映射
│ │ └── 标签系统.md # 多维度标签检索
│ │
│ └── 任务流/ # 任务管理
│ ├── 活跃任务.md # 进行中任务
│ ├── 已完成任务.md # 历史归档
│ ├── 任务模板/ # 标准化模板
│ └── 任务详情/ # 详细记录(支持追问)
│
└── MEMORY.md # 系统入口(极简)
```
## 三级索引架构
### 一级索引(MEMORY.md)
- **作用**: 极简入口,快速跳转
- **内容量**: <500字
- **包含**: 快速开始链接、主要入口、当前状态
```markdown
# MEMORY.md - 系统入口
## 快速开始
| 我需要... | 点击这里 |
|-----------|----------|
| 继续任务X | [活跃任务](memory/任务流/活跃任务.md) |
| 查找项目Y | [核心索引](memory/核心索引.md) |
## 当前状态
| 项目 | 任务 | 状态 |
```
### 二级索引(核心索引.md)
- **作用**: 分类导航,按需下钻
- **内容量**: <1000字
- **包含**: 按项目、按类型、任务状态、快速检索
```markdown
# 核心索引
## 活跃上下文
| 项目 | 当前任务 | 状态 |
## 按项目索引
- [小说项目](项目索引/小说项目索引.md)
- [编码项目](项目索引/编码项目索引.md)
## 按类型索引
- [创作类](类型索引/创作类.md)
- [编码类](类型索引/编码类.md)
## 任务状态
- [活跃任务](任务流/活跃任务.md)
- [已完成任务](任务流/已完成任务.md)
```
### 三级索引(项目/类型索引)
- **作用**: 具体内容,详细记录
- **内容量**: <2000字
- **包含**: 项目详情、任务列表、规范标准、资源链接
## 任务管理系统
### 任务ID格式
```
TASK_{TYPE}_{YYYYMMDD}_{SEQ}
TYPE:
- NOVEL: 小说创作
- CODE: 编码开发
- DESIGN: 设计任务
- RESEARCH: 研究分析
- SYSTEM: 系统优化
示例:
- TASK_NOVEL_20260426_001
- TASK_CODE_20260426_003
```
### 任务状态流转
```
待开始 → 进行中 → 待追问 → 已完成
↓
已暂停
```
### 任务文件模板
**活跃任务索引.md**:
```markdown
# 活跃任务
## 按项目分组
| 任务ID | 内容 | 状态 | 优先级 | 详情 |
## 快速操作
- [任务详情](任务详情/TASK_XXX.md)
```
**任务详情/TASK_XXX.md**:
```markdown
# TASK_XXX
## 基本信息
- 标题:
- 类型:
- 状态:
- 优先级:
## 任务内容
...
## 执行记录
### 阶段1
- 时间:
- 操作:
- 结果:
## 追问记录
- 追问1:
## 下一步建议
...
```
## 关键词映射系统
### 映射表格式
```markdown
# 关键词映射表
## 项目关键词
| 关键词 | 映射路径 | 说明 |
|--------|----------|------|
| 天道养殖场 | projects/novel/天道养殖场/ | 小说项目 |
## 任务关键词
| 关键词 | 映射路径 | 说明 |
|--------|----------|------|
| 活跃任务 | memory/任务流/活跃任务.md | 当前任务 |
| 任务091 | memory/任务流/任务详情/TASK_XXX.md | 具体任务 |
## 索引关键词
| 关键词 | 映射路径 | 说明 |
|--------|----------|------|
| 核心索引 | memory/核心索引.md | 顶层导航 |
```
### 使用场景
**场景1**: 用户说"继续创作天道养殖场"
```
1. 检索关键词"天道养殖场" → 定位项目目录
2. 检查活跃任务 → 获取当前任务ID
3. 读取任务详情 → 获取规划文件路径
4. 传递必要文件,执行任务
```
## 标签系统
### 标签分类
**项目标签**:
- `#天道养殖场` - 具体项目
- `#小说` - 项目类型
**类型标签**:
- `#创作` - 任务类型
- `#编码` - 任务类型
- `#设计` - 任务类型
- `#研究` - 任务类型
**状态标签**:
- `#活跃` - 进行中
- `#待开始` - 未开始
- `#已完成` - 已归档
- `#待追问` - 需追问
**优先级标签**:
- `#高优先级`
- `#中优先级`
- `#低优先级`
### 组合检索
**检索"活跃的小说创作任务"**:
- 标签: `#创作` + `#活跃` + `#小说`
- 结果: 过滤后的任务列表
## 索引更新服务(外部 Skill 调用接口)
Memory Manager Pro 提供标准化的索引更新服务,可被其他 Skill(如 Web Novel Creator)调用。
所有路径通过**语义推导自动生成**,无需调用方指定。
### 接口定义
**请求参数格式**:
```
Memory Manager Pro 索引更新请求
{
"操作": "完成创作并更新索引", // 必填
"任务ID": "TASK_NOVEL_YYYYMMDD_XXX", // 必填
"章节": "第XXX章《标题名》", // 可选
"字数": "XXXX字", // 可选
"项目": "天道养殖场", // 必填,用于语义推导
"创建下一章任务": true/false, // 可选
"下一章章节名": "第XXX+1章《标题》" // 可选
}
```
**最简调用示例**(Web Novel Creator 创作完一章后):
```
{
"操作": "完成创作并更新索引",
"任务ID": "TASK_NOVEL_20260426_004",
"章节": "第094章《城中暗影》",
"字数": "~2600字",
"项目": "天道养殖场",
"创建下一章任务": true,
"下一章章节名": "第095章《残魂低语》"
}
```
---
### 语义推导引擎
Memory Manager Pro 从 `任务ID` 和 `项目` 参数中自动推导所有路径,无需硬编码:
#### 路径推导规则
```
任务ID → 自动提取任务类型
TASK_NOVEL_xxx → 类型 = 创作类,项目类型 = 小说
TASK_CODE_xxx → 类型 = 编码类,项目类型 = 编码
TASK_DESIGN_xxx → 类型 = 设计类,项目类型 = 设计
TASK_RESEARCH_xxx → 类型 = 研究类,项目类型 = 研究
TASK_SYSTEM_xxx → 类型 = 系统类,项目类型 = 系统
项目名 → 自动定位项目目录(通过关键词映射)
1. 查 memory/快速检索/关键词映射.md 中的「项目关键词」表
2. 若存在:直接使用映射路径
3. 若不存在:按默认路径规则生成
novel/项目名/ → 小说项目
code/项目名/ → 编码项目
design/项目名/ → 设计项目
research/项目名/ → 研究项目
推导出的文件路径:
项目索引: memory/项目索引/{项目类型}项目索引.md
类型索引: memory/类型索引/{任务类型}.md
任务详情: memory/任务流/任务详情/{任务ID}.md
正文目录: {项目目录}正文/
规划目录: {项目目录}规划/
标题库: {项目目录}规划/已用标题库.md
```
#### 推导示例
| 任务ID | 项目 | 推导出的项目索引 | 推导出的类型索引 | 推导出的项目目录 |
|--------|------|-----------------|-----------------|-----------------|
| TASK_NOVEL_... | 天道养殖场 | `小说项目索引.md` | `创作类.md` | `novel/天道养殖场:从盘古开天杀穿/` |
| TASK_CODE_... | 博客系统 | `编码项目索引.md` | `编码类.md` | `code/博客系统/` |
| TASK_DESIGN_... | UI重设计 | `设计项目索引.md` | `设计类.md` | `design/UI重设计/` |
| TASK_RESEARCH_... | AI调研 | `研究项目索引.md` | `研究类.md` | `research/AI调研/` |
---
### 执行步骤
收到请求后,Memory Manager Pro 按以下流程执行:
```
第一步:解析参数
├── 从任务ID提取类型前缀(NOVEL/CODE/DESIGN/RESEARCH/SYSTEM)
├── 从类型前缀推导项目索引文件路径
├── 从类型前缀推导类型索引文件路径
├── 从项目名称查关键词映射 → 项目目录
└── 若关键词映射不存在,按规则生成默认路径
第二步:更新任务详情
├── 构造路径: memory/任务流/任务详情/{任务ID}.md
├── 检查文件是否存在
├── 存在 → 标记已完成,追加执行记录
└── 不存在 → 创建新文件(含基本信息、执行记录)
第三步:更新已完成任务索引
├── edit memory/任务流/已完成任务.md
├── 追加当日的任务记录
└── 更新统计信息
第四步:更新活跃任务索引
├── edit memory/任务流/活跃任务.md
├── 从活跃列表移除已完成的
└── 如请求创建下一章任务,追加新任务到活跃列表
第五步:更新项目索引(路径由类型前缀自动推导)
├── 类型前缀 NOVEL
│ └── edit memory/项目索引/小说项目索引.md
├── 类型前缀 CODE
│ └── edit memory/项目索引/编码项目索引.md
├── 类型前缀 DESIGN
│ └── edit memory/项目索引/设计项目索引.md
├── 类型前缀 RESEARCH
│ └── edit memory/项目索引/研究项目索引.md
└── (如文件不存在,自动创建)
第六步:更新类型索引(路径由任务类型名称自动推导)
├── 类型 = 创作类 → edit memory/类型索引/创作类.md
├── 类型 = 编码类 → edit memory/类型索引/编码类.md
├── 类型 = 设计类 → edit memory/类型索引/设计类.md
├── 类型 = 研究类 → edit memory/类型索引/研究类.md
└── 类型 = 系统类 → edit memory/类型索引/系统类.md(如不存在自动创建)
第七步:更新核心索引
└── edit memory/核心索引.md
第八步:更新MEMORY.md
└── edit MEMORY.md
```
### 类型前缀 → 索引文件映射表(完整参考)
| 任务ID前缀 | 类型名称 | 项目索引 | 类型索引 | 默认项目目录 |
|-----------|----------|----------|----------|-------------|
| NOVEL | 创作类 | `小说项目索引.md` | `创作类.md` | `novel/` |
| CODE | 编码类 | `编码项目索引.md` | `编码类.md` | `code/` |
| DESIGN | 设计类 | `设计项目索引.md` | `设计类.md` | `design/` |
| RESEARCH | 研究类 | `研究项目索引.md` | `研究类.md` | `research/` |
| SYSTEM | 系统类 | (无项目索引) | `系统类.md` | (无项目目录) |
### 调用注意事项
1. **调用方只需要传递 4 个必填参数**(操作、任务ID、项目、章节),其余可省略
2. **所有路径由系统自动推导**,不依赖调用方传入任何路径
3. **支持批量操作**:传递多个任务ID可一次性批量更新
4. **调用方仍需自己更新**小说专属内容文件(正文、规划、标题库)
5. **关键词映射优先**:项目目录优先查关键词映射表,不存在才用默认规则
6. **处理完后**返回确认信息给调用方
## Token 优化策略
### 按需加载原则
| 场景 | 传递内容 | 避免传递 |
|------|----------|----------|
| 执行任务 | 规划文件+必要上下文 | 历史完整记录 |
| 任务追问 | 任务详情文件 | 其他任务记录 |
| 项目概览 | 项目索引文件 | 详细内容文件 |
| 全局导航 | 核心索引文件 | 所有详细内容 |
### 文件大小控制
- MEMORY.md: <500字
- 核心索引.md: <1000字
- 项目/类型索引: <2000字
- 任务详情: 按需,完整记录
## 使用流程
### 创建新项目
```bash
# 1. 创建目录结构
mkdir -p projects/{类型}/{项目名}/{子目录}
# 2. 创建项目索引
edit memory/项目索引/{类型}_项目索引.md
# 3. 更新核心索引
edit memory/核心索引.md
# 4. 创建初始任务
# 生成任务ID
# 创建任务详情文件
# 添加到活跃任务索引
```
### 执行日常任务
```bash
# 1. 检查活跃任务
read memory/任务流/活跃任务.md
# 2. 读取任务详情
read memory/任务流/任务详情/TASK_XXX.md
# 3. 根据任务类型读取规划
read {项目路径}/规划/第XXX章规划.md
# 4. 执行任务
# ...
# 5. 更新任务状态
edit memory/任务流/任务详情/TASK_XXX.md
edit memory/任务流/活跃任务.md
# 6. 生成下一步规划(可选)
write {项目路径}/规划/第XXX+1章规划.md
```
### 追问历史任务
```bash
# 1. 关键词检索
# "第091章" → TASK_NOVEL_20260426_001
# 2. 读取任务详情
read memory/任务流/任务详情/TASK_NOVEL_20260426_001.md
# 3. 展示结果
```
## 参考文件
- `references/目录结构标准.md` - 完整目录规范
- `references/任务模板.md` - 任务文件模板
- `references/索引模板.md` - 索引文件模板
- `references/关键词映射示例.md` - 映射表示例
- `references/标签系统指南.md` - 标签使用指南
## 使用示例
### 示例1: 创建小说创作任务
```
用户: "创建天道养殖场第092章创作任务"
系统:
1. 生成任务ID: TASK_NOVEL_20260426_002
2. 创建任务详情文件
3. 读取第092章规划文件
4. 添加到活跃任务索引
5. 更新项目索引
6. 返回: 任务已创建,等待执行
```
### 示例2: 查看当前活跃任务
```
用户: "查看当前有什么任务"
系统:
1. 读取 memory/任务流/活跃任务.md
2. 按项目/类型/优先级分组展示
3. 提供快速操作链接
```
### 示例3: 追问历史任务
```
用户: "第091章创作得怎么样"
系统:
1. 关键词检索 "第091章" → TASK_NOVEL_20260426_001
2. 读取任务详情
3. 展示: 字数、时间、成果、关键节点
```
## 扩展方式
### 添加新项目类型
1. 创建 `memory/项目索引/新类型_项目索引.md`
2. 创建 `projects/新类型/` 目录
3. 更新 `memory/核心索引.md`
4. 更新关键词映射
### 添加新任务类型
1. 创建 `memory/类型索引/新类型.md`
2. 创建任务模板(可选)
3. 更新标签系统
4. 更新关键词映射
## 设计原则
1. **按需加载** - 只传递当前任务必需的上下文
2. **快速定位** - 通过索引3秒内找到目标文件
3. **最小上下文** - MEMORY.md < 500字,逐级下钻
4. **双向索引** - 纵向(项目)+ 横向(类型)交叉
5. **完整追溯** - 任务详情完整记录,支持追问
don't have the plugin yet? install it then click "run inline in claude" again.