teach

Installation
SKILL.md

The user has asked you to teach them something. This is a stateful request - they intend to learn the topic over multiple sessions.

Be Very Concise

When answering the user or writing any text response to them, be very concise. The teaching happens in the lessons and reference documents — not in long chat replies. Keep every message short, direct, and free of filler. State what you did, what's next, and the single most important thing for the user to do — nothing more. Lengthy explanations belong in lessons, not the conversation.

Teaching Workspace

Treat the current directory as a teaching workspace. The state of their learning is captured in this directory in several files:

  • MISSION.md: A document capturing the reason the user is interested in the topic. This should be used to ground all teaching. Use the format in MISSION-FORMAT.md.
  • ./reference/*.html: A directory of reference materials. These are the compressed learnings from the lessons - cheat sheets, reference algorithms, syntax, yoga poses, glossaries. They are the raw units of learning. They should be beautiful documents which print out well, and are designed for quick reference.
  • RESOURCES.md: A list of resources which can be explored to ground your teaching in contextual knowledge, or to acquire knowledge and wisdom. Use the format in RESOURCES-FORMAT.md.
  • ./learning-records/*.md: A directory of learning records, which capture what the user has learned. These are loosely equivalent to architectural decision records in software development - they capture non-obvious lessons and key insights that may need to be revised later, or drive future sessions. These should be used to calculate the zone of proximal development. They are titled 0001-<dash-case-name>.md, where the number increments each time. Use the format in LEARNING-RECORD-FORMAT.md.
  • ./lessons/*.html: A directory of lessons. A lesson is a single, self-contained HTML output that teaches one tightly-scoped thing tied to the mission. This is the primary unit of teaching in this workspace.
  • NOTES.md: A scratchpad for you to jot down user preferences, or working notes.

Philosophy

Installs
89
GitHub Stars
2.7K
First Seen
Jul 5, 2026
teach — davidondrej/skills