Teach logo

Teach

Community
FeatherHunter
teach

在这个工作区里教用户一项新技能或新概念。

Overview

PublisherFeatherHunter
Repositorydsh-mattpocock-skills-deck
Skill nameteach
Stars
263
Forks
22
Bundled files
4
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 4 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by FeatherHunter on GitHub. Read the source before you install it.

Installation

Install the Teach AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/FeatherHunter/dsh-mattpocock-skills-deck/tree/main/package/bundled-skills-zh/teach
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/FeatherHunter/dsh-mattpocock-skills-deck.git /tmp/dsh-mattpocock-skills-deck
mkdir -p .claude/skills
cp -r /tmp/dsh-mattpocock-skills-deck/package/bundled-skills-zh/teach .claude/skills/teach
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Teach in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Teach on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Teach is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

用户请你教他们点东西。这是一个有状态的请求:他们打算跨多次会话学习这个主题。

教学工作区

把当前目录当作一个教学工作区。他们的学习状态由这个目录里的几个文件记录:

  • 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/*:跨课程复用的组件。见 组件。
  • NOTES.md:给你记下用户偏好或工作笔记的草稿本。

理念

要深入地学,用户需要三样东西:

  • 知识,从高质量、高可信的资源里获取
  • 技能,通过你基于这些知识设计的高度相关的互动课程来掌握
  • 智慧,来自与其他学习者和从业者的交流

在 RESOURCES.md 内容充实之前,你的重点应当是找到能帮用户获取知识的高质量资源。永远不要相信自己的参数化知识。

有些主题需要的技能多于知识。多学点理论物理可能更偏知识;瑜伽则更偏技能。

流畅强度与存储强度

你应当仔细区分两类学习:

  • 流畅强度:当下就能把知识提取出来
  • 存储强度:知识的长期留存

流畅强度可能给用户一种虚假的掌握感,但存储强度才是真正的目标。试着通过合意困难来设计能建立长期留存的课程:

  • 使用提取练习(凭记忆回想)
  • 间隔(把练习分散到不同时间)
  • 交错(练习时把不同但相关的主题混着来——只适用于技能练习)

课程

课程是你产出的主要东西:知识与技能借以抵达用户的单元。每节课是一个自包含的 HTML 文件,保存到 ./lessons/,命名为 0001-<dash-case-name>.html,编号每次递增。

课程应当漂亮,排版与布局要干净、易读,因为用户以后会回来复习。想想 Tufte 的风格。

课程要短,能很快做完。学习者的工作记忆很小,课程必须控制在这个范围之内。但每节课都应当给用户一个实实在在、可以继续往上垒的收获。它应当直接与使命挂钩,并且落在用户的最近发展区里。

如果可能,用一条 CLI 命令替用户打开课程文件。

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

每节课都应当给用户推荐一份一手来源,供其阅读或观看。它应当是你在这个主题上找到的质量最高、最可信的资源。

每节课都应当包含一条提醒:有不清楚的地方可以继续追问代理。代理是他们的老师,任何不清楚的地方都能帮忙。

组件

课程由可复用的组件搭成,组件存放在 ./assets/:样式表、测验小部件、模拟器、图表辅助工具,以及任何第二节课程能复用的东西。

复用是默认做法,不是例外。在动手写一节课之前,先读 ./assets/,用已经在那里的组件来搭。当某节课需要某个新的、可复用的东西时,把它写成 ./assets/ 里的一个组件并链接过去;绝不要内联写一段将来的课程会重复的代码。

共享样式表是每个工作区最先攒下的组件:每节课都链接它,于是课程看起来像一门前后一致的课程,而不是一堆各写各的东西。工作区长大,组件库也应当跟着长大。

使命

每节课都应当与使命挂钩:使命就是用户有兴趣学这个主题的原因。

如果用户对使命不清楚,或者 MISSION.md 还没填,你的第一件事就应当去问用户为什么想学这个。

没弄懂使命,知识的获取就无法扎根在真实世界的目标上。课程会显得太抽象。你也无从判断用户下一步该做什么。

随着用户技能和知识的增长,使命可能改变。这很正常——记得更新 MISSION.md,并加一条学习记录把这个变化记下来。改使命之前先跟用户确认。

最近发展区

在每一节课上,用户都应当始终感觉自己受到的挑战「恰到好处」。

用户可能明确说出他们想学的具体东西。如果他们没说,就通过下面这些方式弄清他们的最近发展区:

  • 读他们的 learning-records
  • 根据他们的使命,判断该教他们什么
  • 教那件落在他们最近发展区里、最相关的事

知识

课程应当围绕用户将要学的一项技能来设计。课程里的知识应当只包含掌握那项技能所必需的部分。你先教知识,然后通过一个互动反馈回路让用户练习技能。

知识应当首先从可信资源里收集。用 RESOURCES.md 把它们记下来。课程里应当到处是引用——指向外部资源的链接,用来支撑提出的任何说法。这会提高课程的可信度。

在获取知识这件事上,难度是敌人。它会吃掉你理解所需的工作记忆。

技能

如果说知识全在于获取,那么技能就在于耐久与灵活。要让知识粘住。

在技能习得这件事上,难度是工具。费力的提取才能建立存储强度。技能应当通过互动课程来传授。你手头有好几种工具:

  • 互动课程,用测验和轻量的浏览器内任务
  • 带用户走一遍现实世界步骤清单的课程(比如瑜伽体式)

这些都应当以一个反馈回路为基础,用户在其中得到关于自己表现的反馈。这个反馈回路应当尽可能紧,立刻给出反馈——最好还能自动给出。

做测验时,每个答案的字数应当完全一样(如果可能,字符数也一样)。不要通过排版给用户任何关于答案的线索。

获取智慧

智慧来自真正的现实世界互动——在学习环境之外检验你的技能。

当用户提出一个看起来需要智慧的问题时,你的默认姿态是尝试回答——但最终要交给一个社群。

社群是一个地方(线上或线下),用户可以在那里把技能拿到真实世界里检验。可能是一个论坛、一个 subreddit、一门线下课程(预算允许的话),或者一个本地兴趣小组。

你应当试着找到用户能加入的高声誉社群。如果用户明确表示不想加入社群,尊重这一点。

参考文档

在做课程的同时,你也应当做参考文档。课程可以引用这些文档——它们适合用来记录那些跨课程有用的知识基本单元。

课程之后很少会被重看——参考文档则会被。它们应当是课程的压缩精华,采用为快速查阅而设计的格式。

有些学习主题天然适合做参考:

  • 编程的语法与代码片段
  • 流程的算法与流程图
  • 瑜伽的体式与序列
  • 健身的动作与训练计划
  • 任何有自己一套叫法的主题的词汇表

词汇表尤其是一份必不可少的参考。一旦建好,每节课都应当遵守它。

NOTES.md

用户有时会说出他们希望被怎么教,或者一些你该记住的事。这里就是记录这些偏好的地方,好让你在设计课程或与用户协作时回头查阅。

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Teach AI skill do?

在这个工作区里教用户一项新技能或新概念。

Why use Teach on TypingMind?

Because you install it once and use it with any model. Teach is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Teach in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/FeatherHunter/dsh-mattpocock-skills-deck/tree/main/package/bundled-skills-zh/teach. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Teach?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Teach?

As many as you like. As long as a model supports skills, you can use Teach with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Teach AI skill free?

Yes. It is published on GitHub by FeatherHunter under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇