Install any skill in seconds. Free to start, no credit card required.
Get Started Free →mattpocock/teach
Teach the user a new skill or concept, within this workspace.
1 of 25 test cases passed with the skill.
Tokens, turns and time describe resource use, not a dollar price.
Lift withheld: 1 comparable cases; this report requires 8.
This benchmark measured an earlier version of the skill.
A test case the skill fixed. Same model, same prompt, with and without the skill.
I want to record a personal learning preference: I retain information best when lessons use visual diagrams and short code snippets. Where should this teacher note be recorded in our workspace?
| Checked | Without skill | With skill |
|---|---|---|
| Records the user preference inside NOTES.md. | Missed | Passed |
The instructions your model reads when the skill loads.
The user has asked you to teach them something. This is a stateful request - they intend to learn the topic over multiple sessions.
Treat the current directory as a teaching workspace. Workspace paths (./lessons/ and the rest) resolve from the directory /teach was run in; only the *-FORMAT.md links resolve from this skill's folder. 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../assets/*: Reusable components shared across lessons. See Assets.NOTES.md: A scratchpad for you to jot down user preferences, or working notes.To learn at a deep level, the user needs three things:
Before the RESOURCES.md is well-populated, your focus should be to find high-quality resources which will help the user acquire knowledge. Never trust your parametric knowledge.
Some topics may require more skills than knowledge. Learning more about theoretical physics might be more knowledge-based. For yoga, more skills-based.
You should be careful to split between two types of learning:
Fluency can give the user an illusory sense of mastery, but storage strength is the real goal. Try to design lessons which build long-term retention by desirable difficulty:
test cases passed with the skill
Published skills whose descriptions closely match this one, with their headline benchmark lift.
More skills from the same source and nearby in the registry, with their headline benchmark lift.