study
Learn a topic from the user's own notes and sources (with or without a course), turn it into flashcards, and run spaced-repetition quizzes; use for "/study <topic>", "explain X to me", "make cards for
SKILL.md.claude/skills/study/SKILL.md
GitHubStudy
Learn a topic in plain words from your own notes, then remember it with short quizzes.
When to use
- You say
/study Porter Five Forces, "help me revise NPV" or "explain this to me". - You say
/study quizor "quiz me". Cards that are due today are asked one at a time. - You want flashcards from lecture notes or readings that are already in your vault.
Before you start
- Read
vault/80_me/USER.mdfor your name, what you are learning or working on, and your language. - Pick the mode from the first word of the argument:
quiz(or "quiz me"): followworkflows/quiz.mdstraight away. Do not run clarify: quiz mode needs no topic, course, depth or exam date (a topic afterquizonly narrows which due cards to ask).- anything else: learn mode,
workflows/learn.md.
- Learn mode only: run the clarify step (
/clarify, typestudy), and only for what is not already clear. If the topic is obvious from the request or the vault (and the course, when one applies), skip it and show the one-line summary. Otherwise ask one question at a time, and skip anything you can already see in the vault:- Topic: what exactly?
- Course, only if one applies: which one? Look in
vault/20_areas/courses/first and offer the matches as choices. A topic from work or your own reading needs no course. - Depth: quick overview, solid understanding, or exam-ready? (default: solid understanding)
- Exam date, optional. If there is one, it decides how many cards and how soon.
- Get today's date from the system, never from memory:
node system/scripts/date.mjs(local date).
Steps
Learn mode (/study <topic>)
Full detail is in workflows/learn.md. In short:
- Clarify (above, only if the topic is unclear, or a course applies and is unclear). Show a one-line summary and wait for a yes.
- Find the user's sources: course notes in
vault/20_areas/courses/<course>/(when a course applies), source notes invault/40_sources/notes/, wiki pages invault/30_wiki/. Search by topic name, synonyms and, when there is one, the course name. - Explain the topic Feynman style: a simple analogy, the idea in plain words, then one worked example. Use only what the sources say. Cite every claim:
[Source: [[note]] | YYYY-MM-DD | confidence: high|medium|low]. - Say clearly what is missing. Offer
/ingest(add the slides or reading) or research (theresearcheragent). Never fill gaps from memory without the label[Inference]or[Unverified]. - Create 5 to 10 cards in
vault/50_learning/cards/<topic-slug>/(format inworkflows/learn.md). Mix recall questions with application questions. Each card links to its source. - Schedule: each new card is box 1 and due tomorrow.
- Add one task for the review day:
node system/scripts/tasks.mjs add "Review N cards" --tag study --due <tomorrow> --priority medium --link "50_learning/cards/<topic-slug>"If a "Review N cards" task already exists for that date, tick it and add one with the new total (seeworkflows/learn.md, step 4).
Quiz mode (/study quiz [topic])
Full detail is in workflows/quiz.md. In short:
- Collect cards with
status: "active"anddueon or before today. Limit to the topic if one was given. - Ask one card at a time. Show only the question. Wait for the answer.
- Grade kindly. Show the correct answer and the source link. Count it right if the idea is right, even if the wording differs.
- Update
boxanddue(schedule below). - Summarise: score, strongest and weakest topics, next due date.
- Update the review task for the next due date.
Leitner schedule (SPEC section 12)
| Box the card lands in | Due again after |
|---|---|
| 1 | 1 day |
| 2 | 3 days |
| 3 | 7 days |
| 4 | 16 days |
| 5 | 35 days |
Right answer: box plus 1 (box 5 stays at 5). Wrong answer: back to box 1. The new due is today plus the days for the new box.
Model routing
- Card writing and explanations: sonnet / medium (this skill).
- Grading answers in quiz mode: the
helper-triageagent (haiku / low) is fine. If you delegate grading, send only the question, the correct answer and the user's reply. - A deep check of a whole card set is a
reviewjob: give it to thehelper-reviewagent (sonnet / high, read-only). Read its findings yourself before you tell the user the set is fine.
Outputs
- Cards:
vault/50_learning/cards/<topic-slug>/<Card title>.md. - A task tagged
#ab/study: "Review N cards", due on the next review day. - A short explanation in chat, with citations. Nothing else is saved.
- In quiz mode: updated
boxanddueon each graded card, and an updated review task.
Safety
- Ground the explanation only in the user's sources. Label everything else
[Inference]or[Unverified]. - Never invent a citation, a page number or a quote.
- Never delete a card. To retire one, set
status: "retired"(ask first). - This skill helps the user learn. It does not write answers for graded coursework.
- No personal data about other people in cards.
- Cards are written only inside
vault/50_learning/cards/.
Extend this
See system/blueprints/study-extras.md: session notes from a syllabus (a whole course is set up by /course), lecture transcript ingest, FSRS scheduling or Anki export, a mastery map and exam mode.