Help us improve
Share bugs, ideas, or general feedback.
From paideia
Generates exam-focused drill problems — twin variants, blind strategy drills, integration chains, pattern cards, and coverage maps — from analyzed course material. For math/physics courses that have been ingested.
npx claudepluginhub taewooopark/paideia --plugin paideiaHow this skill is triggered — by the user, by Claude, or both
Slash command
/paideia:exam-drillThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
**The user does not type math into the CLI — it is too slow.** All interactions obey:
Ingests course materials (lecture notes, textbook chapters, HW problems/solutions) and builds patterns.md, coverage.md, and summary.md for downstream drilling commands.
Generates adaptive interactive quizzes on learning topics or any subject, delivers one question at a time via AskUserQuestion tool, tracks scores and progress in ~/.claude/learning/progress/{topic}.json, provides feedback and adjusts difficulty.
Generates scaffolded sequences of practice problems with graduated difficulty, strategic variability, and scaffold reduction for worksheets, homework, or independent practice.
Share bugs, ideas, or general feedback.
The user does not type math into the CLI — it is too slow. All interactions obey:
Generation side (Claude → file). Problems, variants, and clean reference derivations are written as markdown files to quizzes/, twins/, chain/, derivations/. The user views them; no math dialogue in the terminal.
Answer side (user → PDF). The user solves on paper, scans as PDF, uploads to answers/<name>.pdf. The answer-processing skill (auto-loaded by /grade) converts the PDF to markdown and grades.
Strategy checks (when user is online) — when a command asks the user to verify understanding without producing a full written solution, it asks only for the strategy in 3–5 lines of prose (written in INTERFACE_LANG from .course-meta, default en): which pattern(s), which variables are fixed/expanded, what form the answer takes. Strategy matching is stronger evidence of mastery than line-by-line algebra.
HW density = exam probability. The professor has already told you, through HW, where the exam points live. Every drill command must bias toward HW-emphasized sections (🔥🔥 Exam-primary > 🔥 Exam-likely > 🟡 Exam-possible). Sections with no HW (⚪ Low-risk) are not "blind spots waiting to bite" — they are the professor's signal of what is off the exam. Do not treat low-HW sections as high-risk.
Concretely:
/twin, /blind default to the highest-HW-density problems when the user doesn't specify one./chain composes patterns drawn from Exam-primary sections; avoid pulling patterns from ⚪ sections unless the user explicitly asks./mock problem weighting follows HW density (see commands/mock.md)./quiz all samples ≥70% from 🔥🔥, ~25% from 🔥, ≤5% from 🟡, 0% from ⚪.This skill assumes /ingest and /analyze have been run. If course-index/patterns.md or course-index/coverage.md don't exist, tell the user to run those first.
course-index/patterns.md — recognition cards P1, P2, ...course-index/coverage.md — HW↔§ map, blind spotscourse-index/summary.md — topic treeconverted/homework/*.md — original HW problemsconverted/solutions/*.md — HW solutions (ground truth for grading)errors/log.md — user's error history (append-only)quizzes/<topic>_<ts>.md — problem statements (answers in _answers.md sibling)twins/<origin>_<ts>.md — variant problemschain/<ts>.md — integration problemsderivations/<topic>.md — clean reference derivations (post-success)errors/log.md — append error entries/twin <problem-id><problem-id> in converted/homework/ and converted/solutions/.course-index/patterns.md.twins/<id>_<ts>.md and solution to twins/<id>_<ts>_sol.md. Do not reveal solution unless user either (a) uploads their answer PDF, or (b) describes a correct strategy./blind <problem-id>converted/homework/.course-index/patterns.mdconverted/solutions/. Three checks: pattern / variable-choice / end-form.derivations/<stem>-<n>.md. On failure, flag the specific axis and log to errors/log.md./chain <N>course-index/coverage.md).course-index/coverage.md Critical column)./pattern [§ or keyword or "all"]Read-only. Filter course-index/patterns.md by the query and return compact pattern cards.
/hwmap [§ or "blind"]Read-only. Project course-index/coverage.md by the query. blind lists all 🔴 and 🔴🔴 entries with drill recommendations.
Hold invariant:
Vary:
Quality check before presenting:
When any drill reveals an error, append to errors/log.md:
- problem_id: <HW#-P#, twin-id, or chain-ts>
pattern: <Pk from patterns.md>
error_type: pattern-missed | wrong-variable | wrong-end-form | algebraic | sign | definition
summary: "<one-line description>"
date: <ISO8601>
/weakmap (top-level command) consumes this log; this skill just produces entries.
/grade → loads answer-processing skill (PDF → MD → compare with converted/solutions/)./ingest or /analyze → loads course-builder skill.pdf skill.INTERFACE_LANG (en or ko) from .course-meta. Default en if the field is absent.$...$ inline, $$...$$ display).course-index/summary.md (§, Ch., Ch 3.1, etc.) regardless of language.## One-line verdict, ## Page N, # Vision-OCR transcription) stay in English regardless of language.