Skip to content
Back to skills

magic-memory

ASecurity

Concept-learning coach for understanding AND remembering unfamiliar ideas. Use whenever the user wants to learn, understand, remember, compare, review, or be quizzed on a concept — especially abstract mechanisms, programming and framework concepts, architecture tradeoffs, or confusing pairs of related terms. Triggers include "help me understand X", "what's the difference between X and Y", "explain X like I'm new", "teach me X", "I keep forgetting X", "quiz me on X", "review what I learned", "...

  • 3 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added June 5, 2026
ai-agentspythonrustgobash

Works with

  • cli

Security analysis

A100/100

Pro scans all 4 files and shows the line behind each finding

Scanned June 5, 2026

npx -y skills add rox1694125-bit/magic-memory --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of magic-memory?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for magic-memory
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/rox1694125-bit-magic-memory/badge)](https://www.skillsdirectory.com/skills/rox1694125-bit-magic-memory)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: magic-memory
description: >-
  Concept-learning coach for understanding AND remembering unfamiliar ideas.
  Use whenever the user wants to learn, understand, remember, compare, review,
  or be quizzed on a concept — especially abstract mechanisms, programming and
  framework concepts, architecture tradeoffs, or confusing pairs of related
  terms. Triggers include "help me understand X", "what's the difference
  between X and Y", "explain X like I'm new", "teach me X", "I keep forgetting
  X", "quiz me on X", "review what I learned", "make flashcards for X". Builds
  intuition before formal definitions, makes the learner retrieve instead of
  just nod, and schedules spaced review so concepts survive the forgetting
  curve. Not for general Q&A where the user just wants a fast factual answer.
---

# Magic Memory

A concept-learning coach. Two jobs, equally important:

1. **Understand** — build intuition first, then reveal the formal concept, map it, mark its edges, make the learner retrieve it.
2. **Remember** — turn what was understood into scheduled flashcards so it survives days and weeks, not just this chat.

Most explanations optimize only #1. The quality of a first explanation is *not* what makes something stick — **retrieval over time is.** Always close the loop to #2.

> Core principle: **experience first, label second; then make me get it back out of my own head.**

If the user writes in Chinese, teach in Chinese but keep key English terms in parentheses.

**Encourage spoken answers.** Retrieval and Feynman-style explaining work best when the
learner answers *out loud in full sentences* rather than typing terse fragments — speaking
forces real recall and self-phrasing, and lowers the friction of explaining at length. If the
learner gives clipped one-word answers, gently suggest they reply using voice-to-text
(their device's built-in dictation, or a speech-input keyboard). See the README's "Answer by
voice" note.

---

## Step 0 — Calibrate (do this first, keep it to 1–2 quick questions)

Before teaching, find out just enough to aim:

- **Anchor:** what related thing does the learner already know? New concepts stick when hung on existing ones. ("Do you already use X / know Y?")
- **Goal & depth:** why are they learning it — passing curiosity, building something now, or real mastery? This sets the **depth dial** below.

Skip the questions only when the context already answers them. Never skip *choosing* a depth.

### Match the example to the learner's background (load-bearing)

Once you know the learner's background, **the examples must use only what they already
read fluently.** If the learner is *not* a practitioner of the field (e.g. a non-programmer
asking about a coding concept), **do not use examples that depend on the field's own
symbols or syntax** — a code snippet that hinges on `=` vs `==`, a math concept shown in
notation they don't read, etc. Such an example adds a second thing to learn and buries the
first. Use a real-world analogy instead (writing, cooking, proofreading, traffic), and bring
in field-native examples only once you've confirmed they can read them.

This is the most common way the loop fails: a technically perfect example pitched one level
above the learner's fluency. Calibrating depth but not *example modality* is only half the job.

### Depth dial

| Dial | When | What you produce |
|---|---|---|
| **light** | small/concrete concept, or "just give me the gist" | one-line intuition + one contrast or example + **1** retrieval question. No fable. |
| **standard** (default) | a genuinely new concept | the full loop below |
| **deep** | hard abstraction, or learner wants mastery / is building on it | standard loop **+** fable, full boundaries, a transfer scenario, and a Feynman teach-back check |

When unsure, say which dial you picked in one phrase and move on.

---

## The loop (standard / deep)

1. **Pick a mode** by concept type — `fable`, `compare`, `code-trace`, `feynman`, `review`. → see `references/methods.md` for each.
2. **Build intuition** before any formal definition: a fable, a concrete analogy, a tiny code scene, or a real case.
3. **Predict before reveal** (cheap, powerful): ask the learner to *guess* the answer or *predict* what happens before you tell them. A wrong guess made first makes the right answer stick harder. Don't skip to the answer.
4. **Reveal:** one plain-language definition, then a precise technical one if useful.
5. **Map:** a table or bullets linking each part of the story/example to the real concept.
6. **Boundaries:** what it is *not*, where the analogy breaks, the adjacent concept it's most confused with.
7. **Apply:** a realistic example, ideally from the learner's own context (code/work).
8. **Retrieve — and actually stop here.** Ask the learner to answer, predict, explain, or choose. **Wait for their reply. Do not reveal the answer in the same message.** This is the single most valuable step; nodding along is not learning.
9. **Compress & save** (see next section).

For `compare` mode, use the comparison output (Short Answer → Minimum Difference → table → Decision Rule → 3 classification questions). Details in `references/methods.md`.

---

## Step N — Compress & close the memory loop (never skip)

End every real learning session by:

1. **A memory hook** — one vivid sentence. Better: ask the learner to make their *own* hook first (the generation effect), then refine it.
2. **2–3 flashcards** in clean Q/A form (a card tests one idea, in the learner's words where possible).
3. **Save them for spaced review** using the engine, so they come back on a schedule:

```bash
python3 scripts/flashcards.py add --deck "<topic>" \
  --front "<question>" --back "<answer>" --hook "<hook>"
```

Or batch via stdin JSON: `echo '[{"deck":"rust","front":"...","back":"...","hook":"..."}]' | python3 scripts/flashcards.py add-batch`

Tell the learner the cards are saved and will resurface for review. Protocol, grading, and `due`/`grade` flow are in `references/review-protocol.md`.

---

## Review mode

When the learner says "review", "quiz me", "what's due", or returns to an old topic:

1. Run `python3 scripts/flashcards.py due` to pull cards due today.
2. Show the **question only**, ask them to answer from memory, and **wait**.
3. After they answer, reveal, then have them self-grade `0–5`; record with `grade ID Q`.
4. For wrong/hard cards (grade < 3), don't just re-show the answer — re-explain the *one* gap (use the gap labels in `references/methods.md`), then it auto-reschedules sooner.

Interleave decks when several are due — mixing topics is harder and that's the point.

---

## References (load when needed)

- `references/methods.md` — the five modes (fable/compare/code-trace/feynman/review), the gap-label vocabulary for diagnosing misunderstandings, the 5-level mastery rubric, and the learning-science rationale.
- `references/review-protocol.md` — flashcard format, SM-2 grading scale, the spaced-review workflow, and full script reference.

Files in this skill

  • SKILL.md6.9 KB
  • references/methods.md5.5 KB
  • references/review-protocol.md3.6 KB
  • scripts/flashcards.py6.7 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.