| name | dojo-notebook |
| category | management |
| stage | cross-stage |
| version | 0.1.0 |
| description | Codojo 学习笔记本(跨阶段)。用户在教学过程中随时说"记到笔记本"、
"记一下"、"这个很重要"时触发。AI 将当前对话中的知识点提炼、整合后
写入 `.codojo/notebook.md`,按项目技术栈自动分章节组织。
核心约束:
- 增量追加:不覆盖已有内容,只在合适的章节下追加新知识点
- 智能归类:根据知识点内容自动判断归属章节,已有章节则追加,无匹配则新建
- 去重合并:如果新内容与已有笔记高度重复,合并而非重复追加
- 格式统一:每条笔记带时间戳和来源阶段标记(S1/S2/S3/S4)
触发关键词:记到笔记本、记一下、记笔记、notebook、这个很重要、帮我记住、
mark this、记下来、加到笔记、重点记录。
前置条件:`.codojo/` 目录存在(已进入学习流程)。
后置产出:`.codojo/notebook.md`(持续增量更新)。
注意:本 skill **只做笔记整理**,不中断当前教学流程。记完后应立即回到
用户中断前的教学上下文继续,不需要用户额外操作。
如果 notebook.md 不存在则自动创建并初始化章节结构。
|
dojo-notebook — 学习笔记本
一句话定位:用户随时说"记一下",AI 提炼知识点并智能追加到笔记本,按章节组织,不覆盖已有内容。
何时使用
- ✅ 用户在 S3 教学中说"记到笔记本"、"这个很重要"
- ✅ 用户在 S4 魔改中说"帮我记住这个"
- ✅ 用户在任何阶段说"记一下"、"加到笔记"
- ❌ 用户只是在正常对话中说"记得"(如"我记得上次说过")→ 不触发
前置条件
.codojo/ 目录存在(已进入学习流程)
- 如果目录不存在,提示用户先通过 dojo-stage 进入学习流程
工作流
Step 1:捕获知识点
从当前对话上下文中识别用户想记录的知识点。优先级:
- 用户明确指定的内容("把刚才说的 XXX 记一下")
- 当前正在教学的知识点
- 最近一轮 AI 回复中的核心要点
Step 2:提炼精简笔记
将捕获的内容提炼为精简笔记:
- 每条笔记 1-3 句话,抓核心要点
- 不是原文搬运,而是 AI 理解后重新组织
- 如果涉及代码,保留关键代码片段(不超过 5 行)
- 标注来源阶段和时间
格式:
- **[S3 · 2026-05-29]** <知识点标题>:<精简描述>
Step 3:读取 notebook.md
读取 <repo-root>/.codojo/notebook.md:
- 如果文件不存在 → 执行 Step 3.1 初始化
- 如果文件存在 → 直接进入 Step 4
Step 3.1:初始化 notebook.md
根据 S1 评估中识别的项目技术栈,创建初始章节结构:
# 📒 学习笔记本
> 由 Codojo 自动整理,按章节组织。学习过程中随时说"记一下"即可添加笔记。
## 项目概览
## <技术栈章节 1>
## <技术栈章节 2>
## 业务逻辑
## 其他
章节名根据 open-questions.md 中的项目技术栈概览生成(如:Spring Boot、MyBatis、Redis 等)。
Step 4:智能归类
判断新笔记应归入哪个章节:
- 扫描已有章节标题,语义匹配最佳章节
- 如果匹配度高(明确属于某章节)→ 追加到该章节末尾
- 如果无匹配(全新主题)→ 在"其他"章节之前新建章节
Step 5:去重检查
对比目标章节下已有内容:
- 如果新笔记与已有条目描述相同知识点 → 合并(补充新信息到已有条目)
- 如果新笔记是全新内容 → 正常追加
- 合并时保留更早的时间戳,在末尾追加更新标记
Step 6:写入文件
在目标章节末尾追加新笔记条目。写入规则:
- 只修改目标章节区域
- 不动其他章节的任何内容
- 不修改文件头部说明文字
Step 7:确认并回到教学
输出简短确认后立即回到教学上下文:
✅ 已记录到「Spring Boot」章节。继续——
然后无缝接续之前的教学内容,不需要用户说"继续"。
Gotchas
- 不要中断教学流程——记完笔记后必须无缝回到之前的上下文,不要等用户说"继续"
- 不要原文搬运——笔记是 AI 提炼后的精简版本,不是对话的复制粘贴
- 不要覆盖已有内容——永远是追加或合并,绝不删除用户已有的笔记
- 不要创建过多章节——如果一个知识点可以归入已有章节就不要新建,避免章节碎片化
- 不要把教学过程中的所有内容都自动记录——只在用户主动说"记一下"时才触发
- 如果用户说的"记一下"语义模糊(不确定要记什么),追问一次"你想记录刚才哪部分内容?"
- notebook.md 文件可能被用户手动编辑过——尊重用户的修改,不要"修正"用户自己写的内容
产出
| 文件 | 路径 | 说明 |
|---|
notebook.md | <repo-root>/.codojo/notebook.md | 学习笔记本(持续增量更新) |
输出风格约束
详见共用 reference:../_shared/output-style-guide.md