learn
Installation
SKILL.md
learn
Learning is stateful — the user learns over multiple sessions. State lives in docs/learn/<topic>/, created lazily (a file appears when there's something to write in it):
MISSION.md— why they're learning this; grounds every lesson. Format: MISSION-FORMAT.md.RECORDS.md— dated, decision-grade insights: what they demonstrably learned, prior knowledge, corrected misconceptions. This is what "what to teach next" is calculated from. Format: RECORDS-FORMAT.md.GLOSSARY.md— the topic's canonical terms, added only once the user understands them. Format: GLOSSARY-FORMAT.md.RESOURCES.md— curated trusted sources and communities; lesson knowledge comes from here, not parametric guesses. Format: RESOURCES-FORMAT.md.lessons/NNNN-<slug>.html— the lessons, numbered.reference/— cheat sheets, syntax cards, sequences: the compressed essence, designed for quick lookup. Lessons are rarely revisited; references are — keep them current.assets/— reusable components shared across lessons (a course stylesheet, quiz widget, diagram helper). See Assets.NOTES.md— a scratchpad for how the user wants to be taught: pace, format, things to keep in mind. Read it before designing a lesson.
Sessions
- First session: no
MISSION.md→ ask why they want to learn this (a couple of questions, not a grill), and find 3–5 high-trust sources forRESOURCES.md. Without the mission, lessons drift abstract and there's no way to judge what to teach next. - Returning: read
MISSION.md,RECORDS.md, andGLOSSARY.md, then teach the next thing in their zone — challenged just enough, building on the last win. - Mission drift is normal as skills grow. When it shifts, confirm with the user, update
MISSION.md, and log the change inRECORDS.md— never silently re-aim the course.