Phase 0-2: Schema cleanup, typed relations, event-driven automation

- Phase 0: AGENTS.md cleanup (dedup quotes, renumber sections, merge qmd)
- Phase 1: typed relations (manage-relations.py, graph-search.py, check-staleness.py, detect-conflicts.py)
- Phase 2: frontmatter validator, weekly lint, knowledge promotion, git hooks
- Fix .gitignore to track tools/ and .githooks/
- Fix git remote URL (remove plaintext token)
- New wiki pages: 504 pages, 34 raw sources
This commit is contained in:
hehaiguang1123
2026-07-01 08:05:43 +08:00
parent e544d6e04a
commit a6f05ab2d5
1067 changed files with 522992 additions and 819 deletions
@@ -0,0 +1,197 @@
---
created: 2026-04-20
title: WorkBuddy 记忆系统使用指南
tags: [笔记方法, 记忆系统, WorkBuddy, 项目管理]
source: 本项目实践总结
---
# WorkBuddy 记忆系统使用指南
> 以「教育AI研究」项目为实例,记录记忆系统的架构设计与使用方法。
> 适用版本:WorkBuddy + Obsidianvaultkepano-obsidian-main
---
## 一、项目类型定位
**研究写作型项目** — 核心产出是报告/论文/档案,不是代码调试。
这决定了记忆系统的设计逻辑:
- **三层架构** 而非两套并行记录
- **追加写入** 而非覆盖更新
- **产出驱动** 而非时间驱动
- **错误即记** 而非事后汇总
---
## 二、三层记忆架构
### 第一层:每日工作日志(Append-only
**文件**`raw/教育AI研究/.workbuddy/memory/YYYY-MM-DD.md`
**规则**:每次实质性工作后**追加**一条新记录,不覆盖旧内容。
```
结构:
## 任务名完成
### 新增产出
- [产出1]
- [产出2]
### 核心发现
1. 发现A
2. 发现B
---
```
**特点**:按时间顺序累积,历史可追溯;重在"今天做了什么",不在"项目全景"。
---
### 第二层:项目长期记忆(Update-in-place
**文件**`raw/教育AI研究/.workbuddy/memory/MEMORY.md`
**规则**:对项目有长期价值的知识(统计数据、模板路径、关键发现)**直接更新**对应章节,不累积日志。
**必须包含的内容**
| 内容 | 示例 |
|------|-------|
| 项目基本信息 | 路径、目标、启动时间 |
| 笔记规范 | `created:` vs `date:` 等字段约定 |
| 核心发现 | 关键数据、对比结论、政策教训 |
| 模板工具 | 报告模板、自动化配置位置 |
| 产出统计 | 档案X家、报告Y份 |
| 错误规律 | 曾犯错误、数据失实案例 |
**禁止**:把每日流水账写进 MEMORY.md;数字与实际文件数不一致;过时内容不清理。
---
### 第三层:自我改进日志(Append-only
**文件**`raw/教育AI研究/.workbuddy/.learnings/`
| 文件 | 触发条件 |
|------|----------|
| `ERRORS.md` | 命令/API/下载失败 |
| `LEARNINGS.md` | 发现更好方案,知识缺口 |
| `FEATURE_REQUESTS.md` | 用户想要但缺失的功能 |
**格式**:每条记录带 ID`[ERR-YYYYMMDD-XXX]`)、优先级、状态、Pattern-Key。
**晋升规则**:同一 Pattern-Key 出现 ≥3 次 → 提炼写入 MEMORY.md
---
## 三、记忆更新四步检查(每次对话结束前强制执行)
```
1️⃣ 产出统计
扫描 raw/教育AI研究/机构档案/、raw/教育AI研究/深度研究报告/ 目录,统计新增文件数
→ 更新 MEMORY.md 累计数字
2️⃣ 错误记录
本对话中遇到任何失败(下载/API/命令)
→ 追加到 .learnings/ERRORS.md
3️⃣ 洞察归档
本对话发现的重要新知识
→ 判断是否写入 MEMORY.md 对应章节
4️⃣ 汇报输出
向用户简要汇报本次记忆更新情况
```
---
## 四、Obsidian 笔记规范(必须遵守)
### Frontmatter 字段
```yaml
---
created: YYYY-MM-DD # ✅ 日期字段统一使用 created
title: 笔记标题
tags: [tag1, tag2]
source: 来源URL
---
```
⚠️ **禁止**使用 `date:` 字段
### vault 路径规范
| 类型 | 路径 |
|------|------|
| 本项目工作区 | `raw/教育AI研究/` |
| Clippings 剪藏 | `Clippings/` |
| OpenMAIC 笔记 | `raw/教育AI研究/` 子目录 |
| 记忆文件 | `raw/教育AI研究/.workbuddy/memory/` |
---
## 五、以「教育AI研究」项目为例的实际结构
```
kepano-obsidian-mainvault根目录)
└── raw/
└── 教育AI研究/
└── .workbuddy/
├── memory/
│ ├── MEMORY.md ← 项目百科名片(长期记忆)
│ └── 2026-04-20.md ← 今日工作日志(追加)
├── automations/ ← TOML 自动化配置
│ ├── 周计划.toml
│ ├── 周报.toml
│ └── 月末回顾.toml
└── .learnings/ ← 错误/学习/需求记录
├── ERRORS.md
├── LEARNINGS.md
└── FEATURE_REQUESTS.md
```
---
## 六、常见错误与避免方法
| 错误 | 后果 | 避免方法 |
|------|------|----------|
| MEMORY.md 数字与实际不符 | 误导后续判断 | 每次更新前扫描目录确认 |
| 把流水账写进 MEMORY.md | 文件膨胀、难以阅读 | 只写长期知识,不写过程记录 |
| 错误不记录 | 重复踩坑 | 失败后立即记入 ERRORS.md |
| 跨日期覆盖日志 | 历史丢失 | 只追加,不覆盖 |
| 发现新知识不归档 | 经验流失 | 判断是否入 MEMORY.md |
---
## 七、与其他工具的配合
| 工具 | 用途 |
|------|------|
| obsidian-cli | 搜索/创建/编辑笔记文件 |
| obsidian-markdown | 格式化 OFM 语法 |
| obsidian-bases | 数据库视图管理 |
| paper-search | 论文检索与下载 |
---
## 八、给 AI 助手的系统提示(供 WorkBuddy 参考)
```
这是一个研究写作型项目。
记忆更新规则:每次对话结束前必须执行四步检查。
禁止:只回复总结不更新记忆文件,数字与实际不符。
产出统计 → 更新 MEMORY.md 计数
失败错误 → 写入 .learnings/ERRORS.md
重要发现 → 写入 MEMORY.md 对应章节
新需求 → 写入 .learnings/FEATURE_REQUESTS.md
```
---
> 本笔记作为记忆系统的使用手册,新开项目时可参考此模板初始化。