The /teach Skill
This article introduces the /teach skill, an AI agent skill designed for long-term, cumulative learning. Unlike one-off Q&A, /teach turns a directory into a persistent teaching workspace. It grounds lessons in vetted, high-trust resources (documentation, books) with citations, rather than relying on the model's parametric knowledge. It uses ADR-style learning records to track progress and dynamically adjusts lesson difficulty based on the zone of proximal development. The article details the workspace structure (lessons, reference, learning-records) and teaching philosophy: prioritizing storage strength over fluency illusion, and using desirable difficulty, retrieval practice, and spaced repetition for long-term retention. Ideal for engineers who want to learn a language, framework, or theory as a project over multiple sessions.
Quickstart:
npx skills add mattpocock/skills --skill=teach
Source
快速启动:
npx skills add mattpocock/skills --skill=teach
来源
teach turns the current directory into a standing teaching workspace and teaches you one topic across many sessions — devising short, beautiful, interactive lessons tied to why you want to learn.
It does not teach from the model's own memory. Parametric knowledge is treated as untrusted; before it can teach, it gathers high-trust resources and grounds every claim in a citation. And it is stateful — the workspace remembers what you've learned, so each session picks up where the last left off rather than starting from scratch.
You invoke this by typing /teach — the agent won't reach for it on its own.
teach 将当前目录转变为一个常设的教学工作空间,并在多次会话中教授你一个主题——设计简短、优美、交互式的课程,并且与你的学习动机紧密相连。
它不会依赖模型自身的记忆进行教学。参数化知识被视为不可信;在教学之前,它会收集高可信度的资源,并将每个主张都建立在引用之上。此外,它是有状态的——工作空间会记住你已经学过的内容,因此每次会话都会从上次停止的地方继续,而不是从头开始。
你通过输入 /teach 来调用它——代理不会主动使用这个技能。
Reach for it when you want to learn a topic over time — a language, a framework, yoga, theoretical physics — and want the sessions to accumulate rather than evaporate. It is not for a one-off explanation; if you just need something clarified in the moment, ask directly. Reach for teach when the learning is a project.
当你希望随时间学习一个主题(如一门语言、一个框架、瑜伽、理论物理),并希望会话累积而不是消散时,请使用它。它不适合一次性解释;如果你只是需要即时澄清某个问题,可以直接提问。当学习是一个项目时,请使用 teach。
teach builds a whole directory in place, so run it somewhere you're happy to keep as a dedicated workspace. Over time it writes:
MISSION.md — the reason you're learning this, which grounds everything else. If it's empty, teach's first job is to question you until it isn't.
RESOURCES.md — the vetted, high-trust sources it teaches from.
./lessons/*.html — the numbered, self-contained lessons (the primary unit of teaching).
./reference/*.html — compressed cheat-sheets, algorithms, glossaries you'll return to.
./learning-records/*.md — what you've learned, ADR-style, used to judge what to teach next.
./assets/* — reusable components (a shared stylesheet first) so the lessons look like one course.
NOTES.md — your teaching preferences.
teach 会在原地构建整个目录,因此请在你愿意保留为专用工作空间的地方运行它。随着时间的推移,它会生成:
MISSION.md —— 你学习这个主题的原因,这支撑着一切。如果为空,teach 的第一件事就是不断询问你,直到它不为空。
RESOURCES.md —— 经过筛选的高可信度资源,用于教学。
./lessons/*.html —— 编号的、自包含的课程(主要教学单元)。
./reference/*.html —— 压缩的速查表、算法、词汇表,供你日后查阅。
./learning-records/*.md —— 你已学内容的记录,采用 ADR 格式,用于判断下一步教什么。
./assets/* —— 可复用的组件(首先是共享样式表),使课程看起来像一门完整的课程。
NOTES.md —— 你的教学偏好。
Every lesson hangs off the mission. Without it, knowledge has nothing to attach to and lessons feel abstract — so the mission is the first thing teach pins down and keeps updating as you grow. From the mission and your learning records it computes your zone of proximal development: the next lesson should challenge you just enough, no more.
每一课都围绕着使命展开。没有使命,知识就无处依附,课程会显得抽象——因此使命是 teach 首先确定的东西,并随着你的成长不断更新。根据使命和学习记录,它会计算出你的最近发展区:下一课应该给你恰到好处的挑战,既不过于简单也不过于困难。
The word to think with is storage strength — long-term retention — as opposed to fluency, the in-the-moment recall that feels like mastery but isn't. teach deliberately builds the former through desirable difficulty: retrieval practice, spacing, and interleaving. Knowledge is taught first (where difficulty is the enemy), then skills are drilled through a tight feedback loop (where difficulty is the tool).
需要思考的关键词是存储强度——长期记忆,与之相对的是流畅性,即那种感觉上像是掌握了的即时回忆,但实际上并非如此。teach 通过合意困难有意识地构建前者:检索练习、间隔重复和交叉练习。首先教授知识(此时难度是敌人),然后通过紧密的反馈循环训练技能(此时难度是工具)。
teach is a reach-for-it-anytime standalone — a long-running learning project you drive session by session, not a step in a build chain. It shares no workflow with the other productivity skills; it simply owns its workspace directory and lives there. When you're unsure which skill or flow fits, ask-matt routes you.
teach 是一个随时可调用的独立技能——一个由你逐次驱动的长期学习项目,而不是构建流程中的一个步骤。它与其他生产力技能没有共享的工作流;它只拥有自己的工作空间目录并驻留其中。当你不确定哪个技能或流程适合时,ask-matt 会为你引导。