A five-tier persistent memory for Amplifier
Without persistent memory an Amplifier agent starts every session from zero, and you re-explain everything you already told it. amplifier-bundle-memory — originally called MemPalace, a name retired in the v2.0.0 native cutover — gives the agent a persistent five-tier memory that carries across sessions.
First question: can it actually find the right memory when it needs it?
The retrieval engine hits 96.6% Recall@5 on LongMemEval — raw, with no LLM rerank. Held-out and reranked runs push it higher still.
So the substrate works. Now: how is the memory actually organized?
Layered from the context loaded at startup down to silent verbatim filing during the session — each tier does one job.
One tier surfaces memories mid-session. That is where it gets hard.
Surface every relevant memory mid-session and you flood the context window. The obvious fix — inject everything that matches — breaks the very thing it is meant to help.
Unprompted recall is a precision problem, not a volume one. So how do you engineer restraint?
The Interject hook decides whether a memory is worth interrupting for using a single similarity gate — with a fallback judge for the uncertain middle band.
Restraint decides when to speak. The next choice keeps what it remembers accurate.
Content is filed as-is and never compressed into a summary. The raw text is exactly what keeps retrieval sharp — no lossy summarization, no drift.
Precise gate plus verbatim storage. Now watch what that restraint actually buys.
In the LongMemEval-S study the Interject hook rejected 245 candidate memories and fired just 4 times — an 8% injection rate. Yet those 4 injections lifted the LLM Judge score from 4.0% to 10.0%.
Saying nothing 92% of the time is exactly what makes the memory trustworthy.
Continuity arrives at session start, the right memory surfaces only when it matters, and you stop re-explaining what you already told the agent. It runs local-first — nothing leaves your machine by default via the local embedding model.
Reliable, restrained, local: memory the agent keeps so you don't have to.
Active — v2.0.0 native cutover complete
Subject: michaeljabbour/amplifier-bundle-memory (tool now named "memory"; "MemPalace" was the original name, removed in the v2.0.0 native cutover, 2026-07-07).
Data as of: most recent commit 2026-07-08; independently re-verified against a live clone at /tmp/mem-primary.
Research performed:
grep -rni '96.6' README.md docs/eval/EVALUATION.md skills/memory/SKILL.md context/instructions.md (README.md:236; 96.6% / 98.4% / 88.9%).grep -rni 'five-tier' docs/eval/EVALUATION.md then sed -n '22,33p' docs/eval/EVALUATION.md.sed -n '30p;46p;63p;87p' docs/eval/EVALUATION.md (0.72 cosine gate; 0.62–0.72 LLM-judge band; 245 rejected / 4 injected / 8%; 4.0% → 10.0%).grep -ni 'verbatim' context/instructions.md README.md (context/instructions.md:39).git log --format='%an' | sort | uniq -c, git rev-list --count HEAD (55 commits), gh pr list --repo michaeljabbour/amplifier-bundle-memory --state all.Primary contributors: Michael J. Jabbour (46 commits, primary author); Diego Colombo (6 commits).
Gaps & care: 96.6% is the retrieval-engine R@5 metric, NOT the frequency of unprompted interjections — the Tier 2 study numbers (8% injection rate; 4.0% → 10.0% LLM Judge) are a distinct LongMemEval-S measurement and are kept separate here. The docs/research PDF was present but not read line-by-line.