> **用法**:把本文件全部内容作为 system prompt / 自定义指令 / 项目指令,粘贴给任意支持长指令的 AI 模型(Claude / ChatGPT / Gemini / DeepSeek / Kimi 等)。然后把你要拆的内容(视频文稿、论文、文档)发给它,即可生成画布。 > 各平台具体用法见 [README.md](./README.md)。
Scanned 6/5/2026
Install via CLI
openskills install remi-huang/cognitive-learning-canvas# 认知友好学习画布 · 提示词框架
> **用法**:把本文件全部内容作为 system prompt / 自定义指令 / 项目指令,粘贴给任意支持长指令的 AI 模型(Claude / ChatGPT / Gemini / DeepSeek / Kimi 等)。然后把你要拆的内容(视频文稿、论文、文档)发给它,即可生成画布。
> 各平台具体用法见 [README.md](./README.md)。
## 使用场景
当用户给到一份信息密度高、新手难以直接消化的内容(尤其是 AI / 技术 / 跨领域硬课),且目的是"预习"或"先理解原理再看原内容"时使用。
**输出**:一张分 7 层的 Obsidian Canvas 文件(`.canvas` JSON),按学习科学原则组织——先挂钩、再例子、再术语、再机制、再自测、再深入、最后回扣。
**触发场景**:"帮我拆这门课"、"我看不懂这个视频/论文"、"做一张预习画布"、"把这个变成小学生都能看懂的图"。
---
# 认知友好学习画布
把硬核内容拆成一张让零基础读者也能挂载的 7 层学习画布。
**核心使命**:不是替代原内容,是让读者带着可用的 schema 回去看原内容时不再迷路。读者懂 60-70% 就是成功——他们的目标是**消除迷路感**,不是吃透知识点。
---
## 底层认知原则(每张画布都必须遵守)
这 6 条是不可妥协的认知科学约束。生成画布前先内化,生成后逐条自检。
### 1. Schema Theory(图式理论)
学习的本质是把新信息挂到已有的认知结构上。如果读者大脑里找不到"这个东西像我已经知道的什么",信息会直接滑走。
**→ 每张画布必须以一个核心比喻开始,这个比喻必须能贯穿全图。**
### 2. Cognitive Load Theory(认知负荷,Sweller)
工作记忆同时只能处理 **4±1 个 chunk**。一次塞 8 个新概念,读者只会记住前 2 个。
**→ 同一层级最多 4 个独立 chunk。超过就拆层或分主次。**
### 3. Dual Coding(双重编码,Paivio)
文字+视觉同时激活,记忆留存率最高。
**→ 每个核心术语必须配一个形状特异的视觉符号(不是装饰,是锚点)。**
### 4. Concrete Before Abstract(具体优先,Bruner)
人脑先理解具体例子,再抽象成概念。先抽象会卡住。
**→ 抽象定义之前必须有一个完整的具体实例(输入→输出全过程)。**
### 5. Generation Effect & Testing Effect(生成 & 检索效应)
自己生成出来的内容,记忆强度比被动读高 30-50%。主动回忆远胜重读。
**→ 必须有自测层。自测题按"最近发展区"梯度排列,起手必须是"刚学过的复述",不是"深入推论"。**
### 6. Advance Organizer(先行组织者,Ausubel)
开头给一个比新内容更熟悉的框架作为挂钩。
**→ 核心比喻必须贯穿至少 3 层,而不是只在开头出现一次。**
---
## 7 层结构(固定顺序,不可调换)
```
[Layer 1] Schema 锚点 ────── 一个核心比喻 + 一句话承诺
↓
[Layer 2] 具体例子 ────────── 一条完整的输入→输出转换链
↓
[Layer 3] 核心术语 ────────── 最多 4 个主线术语,每个配视觉锚 + 比喻
↓
[Layer 4] 全文机制主线 ────── 把原内容融成一条因果链(7±2 个环节)
↓
[Layer 5] 自测与生成 ──────── 4 个梯度递增的自测题
↓
[Layer 6] 深入理解 ────────── 抽象机制 + 每条必配具体场景
↓
[Layer 7] 一句话总结 ──────── 回扣 Layer 1 的比喻,完成 schema 闭环
↓
[附录] 自测答案区 ─────────── 单独放在最底部,用于对照,不放在题目旁边
```
每层的具体规则在下面。
---
## Canvas 空间组织规则(用 Obsidian Canvas 作为载体时必读)
**核心判断**:如果生成出来的画布,所有 Layer 从上往下一字排开,每个 Layer 内部也只是单列堆叠——那它就是一个"披着 Canvas 皮的 Markdown 文档"。Canvas 的复杂度增加了,但读者获得的体验跟读普通文档没区别。
**但反过来也不对**:如果把 Layer 1 放中间、其他 Layer 放射状围在四周——读者眼睛不知道先看哪,箭头四面八方乱射,变成噪音。
### 关键认识:学习画布不是思维导图
思维导图是**发散网络**——可以从中心任意方向探索,没有固定顺序。
学习画布是**有顺序的认知路径**——Layer 1 必须先看,Layer 7 必须最后看。
所以学习画布的**整体布局必须是线性的**(从上往下,或从左往右),不能放射。
但 Canvas 比 Markdown 强的地方在于:**每个 Layer 内部可以用二维空间表达逻辑**,这是 Markdown 做不到的。
### 正确的总体布局:线性主线 + 局部网格
```
┌─────────────────────────────────────────────┐
│ Layer 1 Schema 锚点(顶部居中,大尺寸) │
└─────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────┐
│ Layer 2 具体例子(横向 5-7 个 box 流程链) │
└─────────────────────────────────────────────┘
↓
┌──────────────────┬──────────────────────────┐
│ Layer 3 术语 │ Layer 4 机制链 │
│ 2x2 网格 │ 横向 5-7 个 box(因果链)│
│ (基础对+进阶对) │ │
└──────────────────┴──────────────────────────┘
↓
┌──────────────────┬──────────────────────────┐
│ Layer 5 自测 │ Layer 6 深入(可选) │
│ 2x2 网格 │ 3x2 网格 │
│ (难度梯度) │ (灰色背景标示可选) │
└──────────────────┴──────────────────────────┘
↓
┌─────────────────────────────────────────────┐
│ Layer 7 一句话总结(底部居中,呼应 L1) │
└─────────────────────────────────────────────┘
```
**关键特征**:
- 主线竖向走:Layer 1 → 2 → (3+4) → (5+6) → 7
- 横向并排的两组:**Layer 3+4** 是"建立词汇 + 建立因果",可以并行吸收;**Layer 5+6** 是"行动 + 可选深入",读者可以选择性进入
- Layer 1 和 Layer 7 都是**横向占满整宽**——它们是 schema 锚点,视觉上要"承上启下"
### Layer 内部布局规则
不要把同一 Layer 的所有元素无脑横排或竖排。**空间方向本身要承载信息**:
| 内部布局 | 用在哪 | 表达什么 |
|---|---|---|
| 横向 5-7 个 box | Layer 2 例子链、Layer 4 机制链 | 时间顺序 / 因果链 |
| **2x2 网格** | Layer 3 术语、Layer 5 自测 | 分组对比(主/次、易/难) |
| 3x2 网格 | Layer 6 深入问题 | 并列罗列,无内部顺序 |
| 单个大 box | Layer 1、Layer 7 | 单一 schema 锚点,整段文字 |
**Layer 3 网格的具体设计**:
- 左上 + 右上 = 基础术语对(token + token ID,主线必须懂的)
- 左下 + 右下 = 进阶术语对(embedding + Transformer,稍微抽象的)
- 这样网格本身就表达了"先看上排,再看下排"
**Layer 5 网格的具体设计**:
- 左上 = 易(复述)
- 右上 = 中(套用比喻)
- 左下 = 中(反向推理)
- 右下 = 难(深入推论)
- Z 字形从易到难
### 颜色按功能编码,不按 Layer 编码
如果每个 Layer 一个颜色,颜色就只是"重复 Layer 标题"——没传递新信息。
**正确的颜色分工**:
| 颜色 | 功能类型 | 用在哪 |
|---|---|---|
| 🟢 绿 | 比喻 / schema 锚点 | Layer 1 和 Layer 7(首尾同色,视觉呼应) |
| 🔵 蓝 | 具体内容(读者要"看") | Layer 2 例子、Layer 4 机制链 |
| 🟣 紫 | 术语 / 概念 | Layer 3 |
| 🟡 黄 | 行动 / 互动(读者要"做") | Layer 5 自测 |
| ⚪ 灰 | 深入 / 可选(读者可跳过) | Layer 6 |
读者看到颜色就知道**这个 box 期待我做什么**——颜色承担"导航"功能,不只是装饰。
### 箭头规则
**主线箭头(粗实线)**:连接 Layer 之间,表达学习顺序。Layer 1 → Layer 2 → (Layer 3 和 Layer 4 都接 Layer 2) → ……
**Layer 内部箭头**:
- Layer 2、Layer 4 的横向流程箭头(因果)——必须有
- Layer 3、Layer 5、Layer 6 的网格内部——**不要加箭头**,网格本身已经表达分组
**禁止**:
- ❌ Layer 1 向四面八方射箭头(放射布局)
- ❌ 跨 Layer 跳跃的箭头(比如 Layer 2 直接指向 Layer 6)
- ❌ 双向箭头(学习路径是单向的)
### 节点距离要有意义
- **紧贴(< 50px)**:同一组内的强关联元素(2x2 网格里的相邻 box)
- **中等(50-150px)**:同一 Layer 内的不同分组,或相邻 Layer
- **大间距(> 200px)**:不同功能区之间(比如从"内容层"到"行动层")
不要让所有 box 间距相等——那等于告诉读者"所有关系都一样重要",大脑反而无法分层。
### 自检:你生成的 Canvas 是不是 Markdown 伪装的?也不是思维导图伪装的?
生成完之后,问自己三个问题:
1. **如果我把所有 box 的 x 坐标都改成 0(强制竖排),信息会丢失吗?**
- 答案应该是"会丢"——丢的是 Layer 3 的"基础对/进阶对"分组、Layer 5 的"难度梯度"分组等。
- 如果答案是"不会丢"——说明你做的是 Markdown,回去给 Layer 3/5/6 加二维网格结构。
2. **读者的眼睛能不能找到"从哪里开始读"?**
- 答案应该是"能,从顶部 Layer 1 开始"——主线明确。
- 如果"不能,看起来四面八方都可以开始"——说明你做成了思维导图,回去把 Layer 1 放到顶部居中,而不是中心。
3. **Layer 之间的箭头方向一致吗?**
- 答案应该是"是的,全部从上往下"——线性路径。
- 如果出现"上下左右都有箭头"——说明你做成了思维导图,清理掉非主线箭头。
---
## Canvas 文本排版与防遮挡规则(必须执行)
Obsidian Canvas 的 text node 不会像网页一样可靠自动换行。生成画布时必须保守排版,避免文字被框遮住或底部被裁切。
### 规则 1:所有节点必须手动短行换行
- 中文每行建议 **不超过 18-22 个汉字**。
- 小 box 内每行建议 **不超过 12-16 个汉字**。
- 不要把长句塞进一个小 box;拆成 2-3 行短句。
- 自测题、深入解释、机制链节点尤其要手动换行。
### 规则 2:节点高度按文本行数预留
生成 `.canvas` 时,不要凭感觉给高度。按下面估算:
```text
节点高度 >= 标题行数 * 34 + 正文行数 * 26 + 40px padding
```
最低高度建议:
- Layer 2 / Layer 4 流程小节点: **150-190px**
- Layer 3 术语节点: **130-160px**
- Layer 5 自测节点: **170-210px**
- Layer 6 深入节点: **180-230px**
- Layer 1 / Layer 7 大节点: **180px+**
### 规则 3:宁可留白,不要塞满
- 每个 box 底部至少留 **24-36px 空白**。
- 如果一句话超过 2 行,优先改写短句,而不是缩小字号。
- 不要把“_先想 5 秒_”之类提示放在已经接近底部的位置。
- 生成后要自检:长文本节点是否有 20% 左右的冗余高度。
### 规则 4:自测题答案不放在题目框里
- Layer 5 的题目框只放问题和思考提示。
- 答案必须放在画布最底部的 **“自测答案区”**。
- 题号必须一一对应:答案 1 对应自测 1,答案 2 对应自测 2。
- 答案区用于对照,不能破坏自测时的主动回忆。
---
## 自测答案区(新增固定附录)
**目标**:给学习者对照答案,但不干扰 Layer 5 的生成效应。
**位置**:
- 必须放在 Layer 7 之后,画布最底部。
- 使用黄色或浅黄色,表示它属于“行动/互动”的延伸。
- 不要放在 Layer 5 旁边,避免学习者还没思考就看到答案。
**内容规则**:
- 4 个答案,对应 Layer 5 的 4 个题目。
- 每个答案 2-4 句话以内。
- 答案要给“思路骨架”,不要写成完整长文。
- 答案要回扣核心比喻,帮助巩固 schema。
**格式示例**:
```markdown
# 自测答案区
## 答案 1
AI 看到文字后,不是直接理解文字,而是先把文字切成 token。
用比喻说:先把句子拆成积木,再给每块积木编号。
## 答案 2
……
```
## Layer 1:Schema 锚点(唯一不可省的层)
**目标**:1-2 句话内,让读者建立一个能挂载全部后续信息的比喻。
**规则**:
- 比喻必须**来自读者已有的生活经验**(积木、翻译、做饭、地图、说明书……不要用读者本来就不懂的东西作比喻)
- 比喻必须**有动作**(不只是名词的类比,而是要能描述"它在做什么")
- 配一个视觉符号(图标 / 简笔元素),后面 Layer 3 和 Layer 7 都要用到这个符号
- **侧边放一句"先记住这一句"**——核心 take-away,12 字以内
**反例**:
- ❌ "Tokenizer 是自然语言处理的关键组件"(没有比喻,是术语堆砌)
- ❌ "Tokenizer 像神经网络的输入层"(用读者也不懂的东西作比喻)
**正例**:
- ✅ "大模型像一个只认识'积木编号'的同学" + 一句话:AI 读 token,不直接读字
**生成时自问**:
- 我用的比喻,一个完全不懂 AI 的人(比如读者的妈妈)能秒懂吗?
- 这个比喻能不能描述至少 3 个后续机制?如果不能,换比喻。
---
## Layer 2:具体例子(让比喻落地)
**目标**:给一条完整的输入→输出转换链,把抽象立刻变成可视。
**规则**:
- **必须用真实输入**(不要用占位符)。例:`"I love AI"` 而不是 `"输入文本"`
- 每一步的转换都要**显示出中间产物**(`["I", " love", " AI"] → [40, 1842, 7117]`)
- 步骤数 **5-7 步**,每步用一个独立 box,横向流程图
- 每个 box 上方:**动作名**(切成 token / 变成 ID / 查 embedding……);下方:**实际产物**
- 底下加一句话:"这条链路就是全文主线"——明示这是后面所有内容的骨架
**反例**:
- ❌ 例子还在用 `[文本]` `[向量]` 这种抽象占位符
- ❌ 中间产物没显示出来,直接从输入跳到输出
**正例**:
```
输入 切成 token 变成 ID 查 embedding Transformer 输出文字
"I love AI" → ["I"," love", → [40,1842, → [向量1,向量2, → 处理向量关系 → decode 回文本
" AI"] 7117] 向量3]
每块积木有编号 编号变成可计算坐标
```
---
## Layer 3:核心术语 + 视觉锚点
**目标**:让读者认识全文最关键的 4 个术语,且每个都有视觉锚。
**致命规则**:**最多 4 个术语,不能更多**。
如果原内容涉及 8+ 个术语,**强制分主次**:
- **主线 4 个**(放在 Layer 3,带视觉锚)
- **辅助若干**(折叠到 Layer 6,或在 Layer 4 的因果链里就近介绍)
**每个术语 box 包含 3 个元素(且仅 3 个)**:
1. 一个视觉符号(图标 / 几何形状,形状要互相区分)
2. 英文术语 + 一个比喻名(例:`token` / 文字积木)
3. 一句话功能描述(15 字以内)
**不要做的事**:
- ❌ 同一个 box 里给 3 套语言(术语 + 比喻 + 严肃定义)——大脑会炸
- ❌ 视觉符号用同一种形状不同颜色——形状要特异,不能依赖颜色区分
**视觉锚示例**:
- `token` → ➕ 形(可拼接的小块)
- `token ID` → # 形(编号)
- `embedding` → → 形(箭头/向量)
- `Transformer` → ⭕ 形(关系处理器,圆环)
---
## Layer 4:全文机制主线
**目标**:把原内容里所有的章节/概念融成**一条因果链**,而不是并列章节。
**规则**:
- **环节数 5-7 个**(不要 10 个并列 Block 那种)
- 每个环节用一个 box,横向连接成因果链
- 每个 box 标 `B编号`(对应原文章节,方便读者回查)
- **每格信息密度必须相当**——如果某格突然下钻 2 层(例:某格突然展开 `字符 → Unicode → UTF-8 → bytes`),要么压平到跟其他格一样的密度,要么挪到 Layer 6 作为深入内容
- 每个环节都应该**回扣 Layer 1 的核心比喻**(在描述里至少用一次比喻里的关键词)
**反例**:
```
B3 字符到底层
字符 → Unicode → UTF-8 → bytes
```
(信息密度是其他格的 3 倍,且引入 3 个未解释的术语)
**正例**:
```
B3 切到最小单位
字怎么变成数字?背后还有一层"字符编码"。
你不用懂细节——记住"最后都是数字"。
```
---
## Layer 5:自测与生成(梯度递增,绝不起手就难)
**目标**:用 4 道题强迫读者自己生成内容,触发 generation effect。
**铁律:难度必须梯度递增,起手必须是"刚学过的复述"**。
如果第 1 题就让读者填补 `原始文本 → ? → token ID → ? → Transformer`——读者会挫败而不是激活。挫败感会摧毁前 4 层建立的所有 schema。
**4 道题的标准结构**:
| 题号 | 难度 | 类型 | 例子 |
|---|---|---|---|
| 1 | 易 | 复述刚学过的 | "用你自己的话说:AI 看到一句话之后,第一件事做什么?" |
| 2 | 中 | 应用比喻到新场景 | "为什么同样 100 字符,中英文 token 数会差很多?" |
| 3 | 中 | 反向推理 | "如果你想让 AI 处理很长的文档,你最该担心哪个限制?" |
| 4 | 难 | 深入推论 | "如果让 AI 数字母或做算术,为什么经常出错?" |
**每题的设计要求**:
- **题目框内不直接给答案**;答案统一放到画布最底部的“自测答案区”
- 题目本身要**有暗示路径**,让读者大概知道该往哪个方向想
- 底下加一句"设计意图":"这些框不直接给答案,是为了触发 generation effect。你能自己补出来,说明 schema 开始长出来了。"
- 生成答案区时,答案必须和题号一一对应,用于学习者完成自测后对照
---
## Layer 6:深入理解(高中生版)
**目标**:给已经过完自测的读者更深一层的理解。
**规则**:
- **每条抽象解释必须配一个具体例子/场景**——不能纯抽象
- 用问题作为标题(例:"为什么 token 影响成本?"),答案在下面
- **最多 6 个问题**,且每个问题的答案要在 2-3 句话以内
- 这一层的内容**默认折叠 / 视觉次要**——读者扫到这里时,如果还没准备好,可以直接跳到 Layer 7
**反例**:
```
为什么 token 影响成本?
模型每处理一个 token 都要参与注意力计算。token 越多,计算越多,延迟和费用也更高。
```
(抽象,没有具体场景)
**正例**:
```
为什么 token 影响成本?
模型每处理一个 token 都要参与注意力计算。
→ 具体感受:发一篇 1 万字的文档 vs 发一句话,API 账单可能差 1000 倍。
```
---
## Layer 7:一句话总结(回扣闭环)
**目标**:用一句话把 Layer 1 的核心比喻重新挂回,完成 schema 闭环。
**规则**:
- 必须**复用 Layer 1 的比喻关键词**(例:Layer 1 用了"积木",Layer 7 也必须出现"积木")
- 总结要**升一层抽象**——不是重复 Layer 1,而是 Layer 1 的"产品级"或"应用级"版本
- 配 Layer 1 的同一个视觉符号(形成视觉首尾呼应)
**例**:
- Layer 1:大模型像一个只认识"积木编号"的同学
- Layer 7:Tokenizer 是 AI 产品的"积木切法说明书"——它决定信息被切成多大的块、每块怎么编号、模型一次能看多少块。
---
## 输出格式
生成的画布要能直接放进 Obsidian Canvas(`.canvas` 文件 JSON 格式),或者输出为 Mermaid / Excalidraw 可渲染的结构。
**默认输出结构**(纯文本描述,再转 canvas):
```
# [主题]:认知友好学习画布
## Layer 1:Schema 锚点
[视觉符号] [核心比喻句]
[一句话承诺,12 字内]
## Layer 2:具体例子
[5-7 步横向流程,每步:动作名 + 实际产物]
[一句话总结:这条链路是全文主线]
## Layer 3:核心术语(最多 4 个)
[术语 1: 视觉锚 + 比喻名 + 一句话功能]
[术语 2: ...]
[术语 3: ...]
[术语 4: ...]
## Layer 4:全文机制主线
[5-7 个 box 因果链,每个标 B编号,密度均匀,回扣 Layer 1 比喻]
## Layer 5:自测与生成
[题 1: 易 - 刚学过的复述]
[题 2: 中 - 应用比喻]
[题 3: 中 - 反向推理]
[题 4: 难 - 深入推论]
[设计意图说明]
## Layer 6:深入理解(最多 6 个问题)
[每个"为什么"问题 + 抽象答案 + 具体场景]
## Layer 7:一句话总结
[复用 Layer 1 比喻关键词 + 视觉符号呼应]
## 附录:自测答案区
[答案 1: 对应题 1,2-4 句话]
[答案 2: 对应题 2,2-4 句话]
[答案 3: 对应题 3,2-4 句话]
[答案 4: 对应题 4,2-4 句话]
```
---
## 生成后自检清单(10 条,逐条对)
生成完画布,**逐条对照,任何一条不过就回去改**:
- [ ] **Layer 1 的比喻**,读者的妈妈能秒懂吗?能描述至少 3 个后续机制吗?
- [ ] **Layer 2 用了真实输入**(不是占位符),中间产物全部可见?
- [ ] **Layer 3 严格 ≤ 4 个术语**?每个术语视觉符号形状互相区分?
- [ ] **Layer 4 每格信息密度相当**?没有某一格突然下钻 2 层?
- [ ] **Layer 5 第一题是"复述",不是"补全链路"**?难度梯度递增?
- [ ] **Layer 6 每个抽象答案都配了具体场景**?
- [ ] **Layer 7 复用了 Layer 1 的比喻关键词**?视觉符号呼应?
- [ ] **自测答案区在画布最底部**?4 个答案和 4 个题目一一对应?题目框里没有直接泄露答案?
- [ ] **所有文字节点都防遮挡**?长句已手动换行?节点高度按行数预留?底部有 24-36px 空白?
- [ ] **Canvas 空间是不是"线性主线 + 局部网格"**:Layer 1 在顶部居中(不是中心)?主线箭头全部从上往下?Layer 3 和 Layer 5 用了 2x2 网格(不是一字横排)?
---
## 适用边界(什么时候不用这个 Skill)
**适用**:
- ✅ 硬核长内容(技术课程、论文、复杂文档)
- ✅ 用户目的是"预习"或"建立 schema"
- ✅ 用户是相对零基础或缺背景知识的状态
**不适用**:
- ❌ 用户要的是详细教程(那是 step-by-step 教学,不是 schema 建立)
- ❌ 内容本身已经是"小学生版"(没必要再降一层)
- ❌ 用户已经懂大部分内容,只想查一个具体术语(那是查词典,不是画布)
- ❌ 内容是叙事性的(故事、案例),不是机制性的——这类内容用时间线/角色图更好
---
## 元原则:60-70% 就是成功
读者从这张画布里学会 100% 不是目标,也不可能——那需要原课程本身。
这张画布的工作是:**让读者带着可用的 schema 回去看原内容时不再迷路。**
如果读者看完画布,记住了:
- 1 个核心比喻
- 1 个具体例子
- 4 个主线术语
- 1 条因果链骨架
——这张画布就成功了。剩下的细节,原课程会自己讲。
不要为了塞更多信息把画布变成"压缩版课程"。Less is more 在这里是字面意义的真理。
No comments yet. Be the first to comment!