Study spar
Run adaptive SM-2 study sparring from an explicit local study library. Use for spar, quiz me, drill me, practice a topic, review due quizzes, flashcard practice, 考我, 对练, 复习, and 练习. Show one question at a time, record durable attempts locally, and adapt to weaknesses. Do not use to initialize, repair, or author durable content without confirmation.From its SKILL.md
npx -y skills add EricWang1358/study-lib-spar --skill study-sparAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
6.1 KB, as published. Nobody here has run it
Study Spar
Must Load State First
The learner must provide an existing explicit library root. Read study-lib.json,
its configured scheduling file, references/sm2-scheduling.md, relevant quiz
files, and relevant node files before starting. Must not use a plugin path,
current project, or guessed path as a library root.
Start A Session
- Select due quizzes first. A due quiz has no
review.due_ator has a due timestamp no later than now. - When fewer than three due quizzes exist, select a related node with an uncovered learning objective and generate a temporary question from its content. A node remains eligible when existing linked quizzes cover a different recall target.
- A temporary question is session-only. It has no quiz ID, no SM-2 state, and
no
attempts.jsonlrecord until the learner confirms saving it as a quiz. It must be materially different from any linked quiz and not a remediation variant. - Use mixed difficulty for the first three questions, then focus on the learner's challenging but answerable range.
One Question Protocol
- Show exactly one question. Must not reveal its answer before the learner responds.
- Judge the response before explaining it. Give a direct result, reason, common mistake, and necessary intermediate steps.
- Ask for a grade from 0 through 5 when it cannot be responsibly inferred.
- For a durable quiz, calculate the exact SM-2
beforeandafterstates using the configured parameters andreferences/sm2-scheduling.md. - Keep the exact original quiz and attempt-log contents in memory. Prepare and validate complete replacement contents for both files. If either write or validation fails, restore both originals before reporting the failure.
- Reread the updated quiz and report its next due date.
Adaptation
Teach Mode
Before entering teach mode, confirm that reviews/teaching.jsonl exists. If an
existing library lacks it, hand off the exact maintenance proposal to
study-library and wait for its confirmation and successful creation before
starting or resuming teach mode. Do not run unrecorded teach mode; if the
learner declines maintenance, return to normal review selection.
Enter teach mode when the learner explicitly says they do not know, have not learned, or cannot explain the concept, or when their answer demonstrates only a prerequisite while missing the target concept. A wholly incorrect or empty answer that demonstrates no relevant prerequisite is also a complete miss. A complete miss is not a cue to give the full answer, introduce later implementation details, or immediately ask a remediation variant.
Teach one rung at a time:
- Confirm the relevant prerequisite the learner already knows.
- Teach one missing relationship or invariant, without introducing a later rung.
- Give one minimal, source-grounded example or counterexample.
- Ask one minimal check that tests only the current rung.
- Advance only after that check succeeds; otherwise repair the same rung.
The original durable quiz is still graded and updated with SM-2. Teach checks
are session-only: they have no quiz ID, SM-2 state, or attempts.jsonl entry.
Do not switch topics or offer a remediation variant until the learner passes the
necessary rungs or declines continued teaching.
When teach mode ends, append one normalized UTF-8 JSON object to
reviews/teaching.jsonl with event_type: teaching, an ID, timestamp, origin
quiz ID, source node IDs, diagnosis, mastered rungs, and transfer rule and
examples. It must not store a transcript, raw learner answer, or reasoning trace.
When the learner says they are ready to consolidate, append a consolidation lifecycle event
referencing the teaching event with action: ready, then offer a teaching
consolidation handoff to study-create. Pass the teaching event and original
resource IDs, but do not create or edit a node or quiz. If the learner declines,
append a consolidation lifecycle event with action: declined and retain the
teaching event.
Recall Adaptation
After the first miss that does not enter teach mode, prioritize a session-only altered variant of that concept as the next question even when the durable quiz is no longer due. Do not schedule or log that variant. After two errors on the same concept, lower difficulty, provide a focused hint, and offer one further altered variant. Must not save variants. If the learner accepts continued remediation, ask the variant; otherwise return to normal selection and allow an uncovered learning objective. When the learner explicitly requests a new question to save, generate that non-remediation temporary question from an uncovered learning objective even when other due quizzes remain, then use the normal durable handoff. If no uncovered learning objective exists, report that fact instead of repeating a linked quiz. After three correct answers, increase difficulty or switch to an adjacent topic. Report accuracy and weakest topic every five graded questions.
Durable Handoffs
For a temporary question, ask for confirmation before handing it to
study-create as a quiz. Only after study-create confirms the durable quiz
exists may the already-given answer be recorded with SM-2. Ask for confirmation
before proposing a Daily Bite, then hand it to study-create with the source
type and ID, recall target, prompt, answer, hint, and area. study-create must
still present its own content plan and wait for confirmation before writing.
Must not create, overwrite, repair, migrate, or delete durable content itself.
Close
Summarize graded questions, accuracy, weak areas, current due items, and the
next recommended review. Update profile/overview.md only after showing the
proposed summary and receiving confirmation.