indelible

An open-source skill for Claude Code

Learning that survives the cold test.

indelible runs your self-study the way a strict, kind tutor would. You read theory on a sheet and then close it. Claude marks your work from photos of your paper. Everything comes back cold two days later, and only what you still know then counts.

Install it in Claude Code

claude plugin marketplace add romanprigodskii/indelible
claude plugin install indelible@indelible

Then open Claude Code in an empty folder and say “set me up for…”, naming what you are learning. Needs Python 3.9 or later.

Not sure yet? Try a 2-minute sheet on this page and come back for the recheck.

The top of a real 2-day recheck sheet printed by indelible: a rules box, a start time, and questions with an answer box and a Check line under each.
A real 2-day recheck, printed by indelible. Every answer has a Check line under it.

Six rules, kept for you

These are the rules a good tutor holds you to. indelible keeps them in every session, including the days you would rather it didn’t.

  1. Read it, then close it.

    Theory comes on its own sheet. You read it and put it away before the drills, because an explanation left in view turns a test into a lookup.

  2. One kind at a time, then all mixed.

    Drills come in blocks of one question type. Anything that measures you is shuffled and unlabelled, like the real exam.

  3. Nothing counts until it survives 48 hours.

    Every new skill comes back cold two days later, on fresh problems. Same-day scores are practice.

  4. Check backwards, in writing.

    Beside every answer you write one check that runs the other way. Solving it again in your head repeats the same slip. A written check catches it.

  5. Every miss comes back.

    Each mistake goes in an error log and returns after 1 day, 3 days, 1 week and 3 weeks, until it stays.

  6. You do the work.

    You get the smallest hint that unblocks you, never an answer you could reach yourself. When an answer is wrong, you see where, and the fix is yours.

Read it, then close it

With the explanation in view, every answer is a lookup. It feels like knowing, and it isn’t.

So theory comes on its own sheet. You read it, close it, and only then get the drills. Reopening is allowed, but it is written down, and those answers count as practice.

Theory sheet

The middle number

Sort the list, then take the value in the middle: 3, 9, 4, 12, 7 sorts to 3, 4, 7, 9, 12.

Add 100 to that list and the average jumps from 7 to 22.5. The middle number only moves to 8.

Even count: take the average of the two middle values.

Close this sheet now. The drills come separately.

The theory is open. The drills wait until you close it.

Practise one kind at a time. Get tested on all of them, mixed.

Six in a row of one kind makes the step automatic.

But a real exam never says which topic a question is from. So anything that measures you is shuffled and unlabelled, and you have to recognise the problem before you can solve it.

Teaching block

Block A · the middle number

  1. 5, 1, 9
  2. 2, 8, 4, 6
  3. 10, 3, 3, 7, 1
  4. 12, 15, 11, 90
  5. 0.5, 0.2, 0.9
  6. 6, 6, 1, 8, 2, 9

One kind, six in a row

Recheck

Sheet 07

  1. Average of 2, 4, 9
  2. Solve 2x − 3 = 11
  3. Middle number of 4, 10, 6
  4. 20% of 45
  5. For 1, 2, 3, 50: which is larger, the average or the middle number?
  6. Solve x ÷ 4 = 2.5

Mixed, with no headings

Try it: three questions, closed book

This sheet is real. Answer each question, then write a check beside it that works backwards. It is marked when you hand it in.

  1. Today. Your score is practice. It does not count yet.
  2. In two days. Come back to this page. You get the same kinds of question with fresh numbers, cold.
  3. Then. That score is the one that counts.

Your answers stay in this browser. Nothing is sent anywhere.

Practice sheet

3 questions · about 2 minutes · closed book

Write your answer. Then write one check that works backwards. The sheet is marked when you hand it in.

    Today’s 6 of 6 doesn’t count yet

    Same-day scores are practice. What counts is the 2-day recheck: fresh questions 44 to 72 hours later, with nothing looked at in the 24 hours before. Every miss then comes back after 1 day, 3 days, 1 week and 3 weeks.

    One topic, from lesson to retired. Drag along the line, or use the arrow keys.

    Day 0 The lesson

    You read the theory sheet, close it, and do the drills: 6 of 6.

    Practice. It does not count yet.

    These are indelible’s default intervals, not measured results. You can change them.

    Your first two weeks, planned around the rechecks

    These are four of the questions indelible asks when you set it up. Change the answers and the plan follows its rules: a diagnostic before any teaching, and a protected recheck 44 to 72 hours after every lesson. Click a session to mark it missed.

    How long is a normal session?
    Which days?
    What time?
    Where should the blocks go?

      • New skill or recheck
      • Diagnostic
      • Fixed mistakes, practice
      • Late recheck

      A preview in your browser. Nothing here is saved or sent anywhere, and no real calendar is touched.

      The first eight minutes

      A short interview, one question at a time, each with a default: your goal and date, where you are now, your materials, session length and days, when your head is clearest, when you sleep.

      You see a two-week plan first and the calendar question second. Nothing is written until you say yes to a one-screen summary. Then a diagnostic, before any teaching.

      (6 of 8) How long should a normal session be (15–20, 30, 45, 60, 90, or 120–150 min), and on how many days a week?

      > 60 minutes, four days, never more than 90

      Your first two weeks: IELTS · ~4 h/week · 60-min sessions · exam 12 Dec

                Week 1                           Week 2
      Mon 07:00 Diagnostic, part A               New skill + 2-day recheck
      Tue 07:00 Diagnostic, part B + results     rest
      Thu 07:00 First skill: sheet, closed       2-day recheck + fixed mistakes
      Sat 10:00 2-day recheck + second skill     Timed section

      Want these in your calendar? I found Google Calendar.

      1. Yes, and ask me before each batch of changes (recommended)
      2. Yes, and you may move a missed block within 24 h
      3. Give me a file to import (.ics)
      4. No calendar: just tell me what’s next
      Part of the setup in Claude Code, with a made-up learner.

      Good to know

      Where it works

      Where indelible works in version 0.1
      Claude CodeSupported, in the terminal, the desktop app and the IDE extensions.
      CoworkShould work with a shared folder. Untested in v0.1.
      claude.ai chat and mobileNot yet: files don’t persist between chats there. A limited manual mode is offered instead.

      Your data

      • Plain files in a folder you choose, on your own computer.
      • The scripts make no network requests. Nothing is sent to the author.
      • Calendar entries only through your own connector, after a preview and your yes.
      • Answer keys stay sealed until your attempt is filed.

      Privacy policy · What it runs, writes and sends

      Honest limits

      A skill cannot physically stop the model from breaking its own rules, so the rules that matter most do not rely on instructions alone. The only route to a printable sheet runs a sheet checker. The only route to an answer key needs your attempt filed first. The next session finds anything the last one skipped, and does it first.

      The method was developed with one learner over about four weeks. That is not a controlled study. The principles come from well-studied effects: retrieval practice (Roediger & Karpicke, 2006), spacing (Cepeda et al., 2006) and interleaving (Rohrer & Taylor, 2007). The numbers, like 48 hours and six questions a block, are defaults you can change.

      Start with one subject

      Two commands in Claude Code. Then say “set me up for…” and answer a few questions.

      claude plugin marketplace add romanprigodskii/indelible
      claude plugin install indelible@indelible
      

      Or copy skills/indelible into ~/.claude/skills/.