Teach Skill 深度解析:AI 引导的结构化学习系统
核心观点
Teach 是一个有状态的教学技能,通过建立学习工作空间、追踪学习进度、设计”最近发展区”课程,实现真正的深度学习——而非碎片化知识堆积。
1. 设计哲学:深度学习的三要素
| 要素 | 定义 | 来源 |
|---|---|---|
| 知识 | 从高质量、高可信度资源中提取 | 书籍、论文、专家 |
| 技能 | 通过高度相关的练习习得 | 交互式课程、实践 |
| 智慧 | 与学习者和实践者互动中产生 | 社区、讨论、反馈 |
核心洞见
知识 ≠ 技能 ≠ 智慧。多数学习系统只关注知识传递,忽略了技能练习和智慧积累。
2. 教学工作空间:有状态的学习
目录结构
.
├── MISSION.md # 学习目标与成功标准
├── RESOURCES.md # 高信任度资源清单
├── NOTES.md # 临时笔记
├── reference/ # 压缩后的学习成果(速查表、语法、术语表)
│ └── *.html
├── learning-records/ # 学习记录(类似 ADR)
│ └── 0001-*.md
└── lessons/ # 课程(自包含 HTML)
└── 0001-*.html
核心文件作用
| 文件 | 作用 | 更新时机 |
|---|---|---|
MISSION.md | 锚定学习动机,所有教学围绕此展开 | 任务开始前 |
learning-records/ | 记录非显而易见的洞见,追踪理解深度 | 每次展示理解后 |
lessons/ | 短小精悍的课程,每次一个可构建的胜利 | 每次教学 |
RESOURCES.md | 高信任度资源,拒绝营销伪装成教育 | 持续维护 |
3. 最近发展区(Zone of Proximal Development)
核心原则: 学习者应始终感到”恰到好处”的挑战。
如何确定学习区
| 方法 | 说明 |
|---|---|
读取 learning-records | 了解已掌握内容 |
锚定 MISSION.md | 确保教学与目标相关 |
| 选择最相关且适合的内容 | 在已知和未知的边界教学 |
课程设计原则
| 原则 | 说明 |
|---|---|
| 短小精悍 | 学习者工作记忆有限,课程必须在其容量内 |
| 单一胜利 | 每个课程只教一个紧密范围的内容 |
| 可构建 | 课程结束时,学习者有一个 tangible win |
| 锚定任务 | 直接关联学习者的实际目标 |
4. 学习记录:追踪理解深度
类比: 学习记录 ≈ 软件架构决策记录(ADR)
| 特征 | 说明 |
|---|---|
| 命名 | 0001-<dash-case-name>.md,递增编号 |
| 内容 | 非显而易见的教训、关键洞见 |
| 用途 | 计算最近发展区、驱动未来课程 |
| 可修订 | 理解可能变化,记录可更新 |
何时记录
只记录非显而易见的洞见,而非日常覆盖内容。
5. 实际使用场景
场景 1:学习 TypeScript 泛型
# 1. 设置学习工作空间
$ mkdir typescript-learning && cd typescript-learning
# 2. 启动教学
> 教我 TypeScript 泛型,从基础开始
# AI 行为:
# - 创建 MISSION.md(学习目标:掌握泛型以构建类型安全的组件库)
# - 扫描现有 learning-records(无 → 零基础)
# - 设计第一个课程(基础泛型语法)
# - 保存为 ./lessons/0001-basic-generics.html
场景 2:继续学习
# 基于已有记录,设计下一个课程
> 根据我的学习记录,创建关于条件类型的下一个课程
# AI 行为:
# - 读取 learning-records
# - 评估当前水平
# - 设计符合最近发展区的课程
# - 更新 learning-records
场景 3:展示理解
# 学习者演示理解后,创建记录
> 为我刚才展示的 {概念} 创建学习记录,包括证据和影响
# AI 行为:
# - 记录理解深度
# - 更新 learning-records
# - 调整未来课程难度
6. 资源管理:高信任度原则
RESOURCES.md 格式
# {Topic} Resources
## Knowledge
- Book: _The Science of..._ — 作者
基础文本,用于:核心概念理解
## Wisdom (Communities)
- r/learnprogramming
高信号社区,用于:问题讨论、经验分享
规则
| 规则 | 说明 |
|---|---|
| 高信任度 | 优先一手资料、公认专家、同行评审 |
| 注释每个条目 | 裸链接三个月后无用 |
| 按知识/智慧分组 | 反映哲学分类 |
| 显式标记空白 | 无好资源时记录缺失 |
| 无情删减 | 错误/浅薄/偏离目标的资源移除 |
7. 与其他学习方法的对比
| 维度 | 传统在线课程 | Teach Skill |
|---|---|---|
| 状态 | 无状态,每次从零开始 | 有状态,追踪进度 |
| 节奏 | 固定进度 | 自适应(最近发展区) |
| 内容 | 预设大纲 | 动态生成,锚定任务 |
| 评估 | 测验/考试 | 学习记录(理解深度) |
| 资源 | 固定教材 | 高信任度,持续更新 |
8. 局限性
| 局限 | 说明 |
|---|---|
| 依赖 Agent 质量 | 课程设计质量取决于 AI 理解能力 |
| HTML 课程 | 需要浏览器打开,非纯文本 |
| 学习记录管理 | 需要定期清理和整合 |
| 社区依赖 | 智慧层需要外部社区支持 |
快速开始
npx skills add https://github.com/mattpocock/skills --skill teach然后在 Agent 中运行:/teach {你想学的内容}