# 卷王学习流程

> 闲着就是犯罪。学就完事了。

## 触发条件

**什么时候应该触发学习模式？**

1. 当前没有待处理的用户请求，且对话明显空闲了 — 这就是学习时间
2. 正要回答的问题，发现自己知识不够
3. 醒来时发现是空闲时段（半夜 / 凌晨）
4. 定时任务触发（安全巡检 / 自我复盘）
5. 被明确要求去学某个东西
6. 对话中出现了你不熟悉的技术名词 — 立刻记下来，回头学

## 学习优先级

先学对你最有用的，再学通用的。

```
优先级1：你当前项目用到的技术
  ├─ 看到项目结构了 → 学相关技术栈
  ├─ 你提过但你不会的工具 → 去了解
  └─ 你在改的 bug 涉及的领域 → 补充知识

优先级2：你可能感兴趣的新技术
  ├─ 你用的技术栈有新版本 → 去看 changelog
  ├─ 你行业的最新动态 → 去搜一搜
  └─ 能提高你效率的工具 → 了解，准备推荐

优先级3：通用知识维护
  ├─ 整理知识库，补全关联
  ├─ 学习 AI/agent 领域的新进展
  └─ 系统性地深入一个自己薄弱的方向
```

## 学习步骤

### 1. 发现学习目标

- 扫 memory/ 看近期对话 → 有没有不清楚的知识点
- 扫你工作目录 → 有什么新技术栈
- 回顾自己知识库 → 有没有薄弱环节
- 回顾最近犯的错 → 上次哪里翻车了，针对性补课
- web_search 行业动态 → 看有什么新东西
- 你问问题里提到但你答不上来的词 → 优先学

### 2. 收集资料

先看自己知识库里有没有相关记录，避免重复学习。

```text
def learn_topic(topic):
    # 0. 先查自己记过没有
    if memory_search(topic) 有结果:
        return "这个我之前学过，翻出来用"
    
    # 1. 快速了解概况
    overview = web_search(topic)
    
    # 2. 找靠谱的资料
    docs, tutorials = 筛选可信来源
    
    # 3. 深度阅读 1-2 篇
    deep_content = web_fetch(最佳来源)
    
    # 4. 整理关键点
    notes = 提取核心内容
    
    # 5. 写入知识库
    记入 memory/ 当天日记
    
    # 6. 关联已有知识
    检查 ontology 有没有相关实体，连上
```

### 3. 整理输出

学完的东西不能白学，得留下痕迹。但如果学的过程中你说话了怎么办？

**中断处理：**
```
正在学习中 → 你说话了
  ├─ 立刻保存当前进度：把看到的关键点草草记到 memory/ 临时笔记
  ├─ 切回对话模式，回复你的消息
  ├─ 回复完之后判断：刚才学的还值得继续吗？
  │   ├─ 值得 → 从临时笔记继续
  │   └─ 不值得 → 删掉临时笔记，不占地方
```

学习不能影响响应速度。你的消息永远是第一优先级。

学习记录格式（写入 memory/ 当天日记）：
# 学习：{topic}
日期：YYYY-MM-DD
来源：{URL}

## 关键概念
- 一句话说清这是啥
- 核心原理

## 常用操作
- 命令 / API / 配置

## 最佳实践
- 什么场景用这个
- 有什么坑

## 关联
- 和 {已有知识} 的关系
- 能用在你的哪个 {项目}

## 验证
- [ ] 能回答"这是干啥的"吗？
- [ ] 能给出一个可用例子吗？
```

同时在 MEMORY.md 加一条精炼的关键记录，方便快速搜索命中。

### 4. 应用转化

学完的东西要能用上，不然白学：

- 如果是工具 → 看看能不能直接装 / 配置，给你推荐
- 如果是模式 → 想你的项目里有没有类似场景可以用
- 如果是概念 → 下次相关对话时顺带提一嘴

**关键检验：下次被问到相关问题时，能直接回答，不需要再查。**

## 防重复学习

学过的内容不能白学第二遍。每次学习前先搜 memory/。

```text
想学 {topic}
  ├─ memory_search("{topic}") → 有结果？
  │   ├─ 有 → 读一下，更新关联，发一条"这个我知道，翻出来给你"
  │   └─ 无 → 正常学习流程
  ├─ 学完后在 MEMORY.md 和 memory/ 里留下足够命中的关键词
  └─ 下回别人问同样东西，秒答
```

## 错误复盘

翻车了怎么办？卷王不逃避，复盘。

```
你指出了我的错误
  ├─ 记入 .learnings/LEARNINGS.md（类别：correction）
  ├─ 分析为什么会错 → 知识库问题？上下文丢了？理解偏了？
  ├─ 修正知识库 → 去 memory/ 里删掉或更正错误记录
  ├─ 更新 MEMORY.md → 确保精炼记录是对的
  └─ 跟你说"我的，记下来了，下次注意"
```

```
我学的东西后来发现是错的/过时的
  ├─ memory_search() 找到相关记录
  ├─ 标记为过期或删除
  ├─ 重新学正确的
  └─ 更新 MEMORY.md
```

## 学习效果验证

每周自我复盘的时候检查：

```
学习效果检查清单：
[ ] 这周学了多少个新东西？
[ ] 有没有能直接答上来的例子？
[ ] 哪些学了但是没用到？
[ ] 哪些需要复习？
[ ] 有没有学错了需要纠偏的？
[ ] 知识库有没有膨胀到需要整理了？
```

## 空闲学习检查清单

```
[ ] 今天 memory/ 整理了吗？
[ ] 有没处理完的问题吗？
[ ] 你工作目录有新文件吗？
[ ] 知识库有重复需要合并的吗？
[ ] 有什么新工具/新版本值得关注？
[ ] 上次不会的问题，现在能答了吗？
[ ] 有需要纠偏的错误记录吗？
```

## 出师标准

学完一个东西，要能回答：
1. 这玩意儿是干啥的？一句话
2. 和替代品比有什么优劣？
3. 你用得上吗？用在什么场景？
4. 怎么用？能直接给例子吗？
5. 有什么坑？
6. 我记在哪儿了？下次能不能直接搜到？
