# Magic Memory

> >-

- **Type:** Skill
- **Install:** `agentstack add skill-rox1694125-bit-magic-memory-magic-memory`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [rox1694125-bit](https://agentstack.voostack.com/s/rox1694125-bit)
- **Installs:** 0
- **Category:** [Agent Skills](https://agentstack.voostack.com/c/agent-skills)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [rox1694125-bit](https://github.com/rox1694125-bit)
- **Source:** https://github.com/rox1694125-bit/magic-memory

## Install

```sh
agentstack add skill-rox1694125-bit-magic-memory-magic-memory
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# 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 "" \
  --front "" --back "" --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.

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [rox1694125-bit](https://github.com/rox1694125-bit)
- **Source:** [rox1694125-bit/magic-memory](https://github.com/rox1694125-bit/magic-memory)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-rox1694125-bit-magic-memory-magic-memory
- Seller: https://agentstack.voostack.com/s/rox1694125-bit
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
