A study system that uses AI (Claude Code) as a guide to end shallow studying.
Every session follows a prescription built from your study habits (me/prescription.md).
- Clone this repo and open it with Claude Code. On first open you may be asked to approve the project hooks (used for session logging).
- Create
me/yourself (prescription, curriculum, plan, config). Follow the format of the existing files. /study: picks today's item from the plan and starts./study <topic>studies an off-plan topic.
| Path | Contents | git |
|---|---|---|
.claude/skills/ |
study (runs the session), git-commit |
public |
.claude/agents/ |
researcher (web research), svg-maker (spatial/geometric figures) |
public |
.claude/tools/ |
plan.py (next item, progress), stats.py (review schedule, confidence stats) |
public |
.claude/hooks/ |
md_log.py (live session logging) |
public |
notes/<stage>/<concept>.md |
Organized concept notes | public |
me/ |
prescription.md, curriculum.md, plan.tsv, config.json |
local |
log/ |
quiz.tsv, sessions.tsv, sessions/ (raw conversations) |
local |
Taken from three sources.
| Source | What was taken |
|---|---|
| DrCatHicks/learning-opportunities | Learning-science grounding. Predict first, say plainly when an answer is wrong, recall check at session start |
| amosblomqvist/learn | plan → teach. Concept dependency DAG, "how could I have discovered this?", live session logging (md-log) |
| rlaope/estudy | Don't polish notes, just accumulate them. Book → LLM DFS → on-demand project |
Principles every prescription rests on:
- Generation and testing effects: producing and retrieving an answer sticks longer than reading or watching. So sessions center on quizzes and teach-back (3-5 sentences in your own words).
- No pretest: research says guessing before the material helps, but for this user it only causes frustration, so quizzes come after teaching. The order is goal/level check → material → check quiz.
- Spaced repetition: review is the entry fee to a session. Each correct answer moves the next review out 1 → 3 → 7 → 14 → 30 → 60 days; a wrong answer resets to 1 day.
- Illusion of fluency: easy reading feels like understanding. Don't re-read the material right before a quiz. Re-read only after a miss, and only the part you missed.
- Clear correction: when wrong, say so immediately. Vague correction doesn't work.
- Calibration: record a confidence level on every quiz to see in numbers whether you "know but doubt" or "don't know but feel sure".
- On-demand: put the endpoint of studying at a concrete point in the project (or interview) you are building.
There is no time limit. A session ends when the item's scope is finished or you stop.
- Review quiz → goal and level check (no quiz)
- Plan: approve the concept dependency DAG, nodes you already know are marked check-only
- Material (video or textbook, links provided)
- Teach loop: a check quiz per node; only missed nodes get explained
- 3-5 sentences in your own words → organize the concept note → record accuracy with
plan.py log→ commit
During /study the conversation is logged live to log/sessions/. Open that folder as an Obsidian vault and read the file alongside. Obsidian is read-only here: no plugins or themes, and plain markdown links instead of [[wikilinks]] (Settings → Files and links → turn off "Use [[Wikilinks]]").