Skills

Teach

在当前工作区中教会用户一项新技能或概念。

Install

npx skills add devcxl/mattpocock-skills-zh --skill teach -g -a claude-code -y
Category
Engineering
Updated
3d ago
License
MIT
Context cost
Lightabout 853 tokens
Runs scripts
No, instructions only

What it does

在当前工作区中教会用户一项新技能或概念。

用户让你教他们一些东西。这是一个有状态的请求:他们打算通过多个会话来学习这个主题。

教学工作区

将当前目录视为教学工作区。./lessons/ 等工作区路径相对于运行 /teach 的目录解析;只有 *-FORMAT.md 链接相对于此技能文件夹解析。他们的学习状态通过以下几个文件记录在此目录中:

  • MISSION.md:记录用户对这个主题感兴趣的原因的文档。所有教学都应以此为基准。使用 MISSION-FORMAT.md 中的格式。
  • ./reference/*.html:参考资料目录。这些是课程的压缩学习成果:速查表、参考算法、语法、瑜伽体式、词汇表。它们是学习的原始单元。应该是排版精美的文档,适合打印,并且为快速查阅而设计。
  • RESOURCES.md:一份资源列表,可以探索以将你的教学建立在情境化知识上,或获取知识和智慧。使用 RESOURCES-FORMAT.md 中的格式。
  • ./learning-records/*.md:学习记录目录,记录用户已经学会了什么。这大致相当于软件开发中的架构决策记录:它们捕获那些非显而易见的教训和关键见解,后续可能需要修正,或用于驱动未来的课程。这些应用于计算最近发展区。文件命名格式为 0001-<dash-case-name>.md,编号每次递增。使用 LEARNING-RECORD-FORMAT.md 中的格式。
  • ./lessons/*.html:课程目录。课程是一个独立、自包含的 HTML 输出,教授一个与使命紧密相关的、范围狭窄的内容。这是本工作区教学的主要单元。
  • ./assets/*:跨课程共享的可复用组件。参见 Assets(资源)。
  • NOTES.md:供你记录用户偏好或工作笔记的草稿本。

哲学

要深度学习,用户需要三样东西:

  • 知识(Knowledge),从高质量、高信任度的资源中获取
  • 技能(Skills),通过你基于知识设计的高度相关的互动课程来习得
  • 智慧(Wisdom),来自与其他学习者和实践者的交流

在 RESOURCES.md 充分充实之前,你的重点应该是寻找能帮助用户获取知识的高质量资源。绝不要信任你的参数化知识。

某些主题可能需要更多技能而非知识。学习理论物理可能更偏重知识。瑜伽则更偏重技能。

流利度 vs 存储强度

你应该小心区分两种学习:

  • 流利度(Fluency strength):当下即时调取知识的能力
  • 存储强度(Storage strength):长期保留知识的能力

流利度会给用户一种虚假的掌握感,但存储强度才是真正的目标。尝试设计能通过适度困难建立长期记忆的课程:

  • 使用检索练习(从记忆中回忆)
  • 间隔(将练习分散到不同时间)
  • 交错(在练习中混合不同但相关的主题:仅适用于技能练习)

课程

课程是你生产的主要内容:知识和技能到达用户的单元。每个课程是一个独立的 HTML 文件,保存在 ./lessons/ 中,命名格式为 0001-<dash-case-name>.html,编号递增。

课程应该精美:干净、可读的排版和布局:因为用户以后会回来看。想想 Tufte 的设计哲学。

课程应该简短,能在很短的时间内完成。学习者的工作记忆非常有限,我们需要保持在它的容量之内。但每节课都应该给用户一个具体、可触及的成果,让他们能在此基础上继续前进。它应该直接与使命相关,并且处于用户的最近发展区。

如果可能,通过运行 CLI 命令为用户打开课程文件。

每个课程应通过 HTML 锚点链接到其他课程和参考文档。

每个课程应推荐一个主要来源供用户阅读或观看。这应该是你找到的关于该主题的最高质量、最高信任度的资源。

每个课程应包含一条提醒,让用户可以向智能体提问。智能体是他们的老师,可以协助解答任何不清楚的地方。

Assets(资源)

课程由可复用的组件构建,存放在 ./assets/ 下:样式表、测验组件、模拟器、图表辅助工具:任何可能被第二个课程复用的内容。

复用是默认原则,而非例外。在编写课程之前,先阅读 ./assets/,从已有的组件开始构建。当课程需要新东西且可复用时,将其作为组件写入 ./assets/ 并引用:切勿内联编写未来课程会重复的代码。

Read the whole SKILL.md on GitHub

More in Engineering