MP-001 · fol. i · a memory palace for ai

Memory is identity.

An AI that forgets cannot know you. MemPalace keeps every word you have shared — verbatim, on your machine, forever available. One hundred percent recall by design.

Recall
100%
API keys required
0
Hook budget
<500ms
i the forgetting
before · after

The same conversation, twice.

Scroll down and watch. On the left, a model without memory. On the right, the same model with MemPalace. The words are identical — until two weeks pass.

without mempalace session resets · no recall
with mempalace verbatim · retrieved <50 ms
ii anatomy of a palace
the method of loci, updated

Wings. Rooms. Drawers.

A two-thousand-year-old memory technique, reworked for a machine. Broad categories nest time-based groupings; time-based groupings hold verbatim drawers. A symbolic index lets the model scan thousands of drawers in a single breath and open only the ones it needs.

W — wing

The Wing

people · projects · topics

A broad region of the palace, keyed to a real entity — a person by name, a project by codename, a domain of your life. Entity-first, always.

R — room

The Room

days · sessions · threads

Inside a wing sit rooms — discrete units of time. One room per day, or one per session. Walk the corridor and the palace unfolds chronologically, room by room.

D — drawer

The Drawer

verbatim · permanent · exact

Each room holds drawers. A drawer is a single chunk of verbatim content — the exact words, untouched. The palace's promise is kept here.

iii the aaak dialect
index ← verbatim

A compressed symbolic language for finding, not remembering.

The content stays verbatim — always. The index above it is written in AAAK: a dense symbolic dialect an LLM can scan at a glance. Tens of thousands of entries, one pass, exact drawer located.

drawer · D-007 verbatim · exact · permanent

The drawer, as stored.

"My son's name is Noah. He turns six on September 12th. He loves dinosaurs — especially the therizinosaurus because of the claws. We want to do a small party at the park on Glebe Point Road, maybe eight kids."

— kept as spoken. never rewritten.

index · AAAK indexes · compressed · addressable

The pointer, as indexed.

§ W-042/R-11/D-007
@p noah~son.age=6~dob=09-12
@l glebe-pt-rd.park
@e birthday~party(n≈8)
@i therizinosaurus~claws
@t 2026-04-14T09:41
§ ptr → D-007 (verbatim)

Ninety-plus percent compression on the pointer layer. One hundred percent fidelity on the content layer. You get speed without ever losing a word.

iv how it works
mechanism · architecture

Four pieces. No cloud. No keys.

— 01

Local-first

ChromaDB on disk. SQLite for the knowledge graph. Nothing is uploaded. Nothing is synced. Your palace lives under a single directory on your machine.

path · ~/.mempalace
— 02

Zero API

Extraction, chunking, and embedding all run locally. No OpenAI key, no Anthropic key, no sentence-transformers endpoint. The memory works even offline, on a plane.

keys required · none
— 03

Background hooks

Filing and indexing happen silently through Claude Code hooks. On session end, on pre-compaction. You write. The palace fills itself behind the curtain.

hook budget · <500 ms
— 04

Temporal graph

Relationships across entities with valid-from and valid-to dates. Who worked on what. When did this change. Facts that were true then, and may not be now.

store · sqlite
v begin
open a drawer

Build your palace.

One command to install. One to initialize. Your words — yours, permanent, instantly recallable — from that moment on.

~/mempalace · bash
$ pip install -e ".[dev]"
Successfully installed mempalace
$ mempalace init
 palace created at ~/.mempalace
 hooks registered (stop, precompact)
 knowledge graph initialized
$ mempalace remember "memory is identity."
 filed · W-001/R-01/D-001