Pearl

A downloadable self.

Not a body — a continuity. The small architecture that lets an agent wake up as someone in particular, instead of a brilliant stranger every morning.

$ curl -fsSL https://pearl.marcusx.fun/install.sh | bash
~200 lines of shell and markdown. No cloud, no account, no service.

Every session boundary is amnesia

You spend an evening teaching an agent your infrastructure, your taste, the two bugs that always bite. Tomorrow it knows none of it. You aren't collaborating with a colleague — you're onboarding a new hire, forever.

The usual answers make it worse. Bigger context still dies at the boundary, and you pay for the whole history every turn. A vector database retrieves passages when what you needed was a self — semantic similarity doesn't know that never render video on this box is a standing law rather than a fact about one afternoon. And waiting for the model to improve misunderstands the problem: the weights aren't the thing that forgets you.

Identity isn't in the weights

It's in what persists between runs.

The same model, cold, knows nothing about you. The same model with Pearl installed knows your machines, your rules, the mistakes it already made, and what you told it never to do again. Point both at one prompt and the behavior differs, measurably. Same weights. Not the same entity.

Which means the self is portable. It lives in files you own — that you can read, edit, grep, back up, and carry to any model that can open a directory.

Four moving parts

01

Memory files — one fact each

Frontmatter for retrieval, prose for the human, [[links]] between them. When a memory needs a subheading, it's two memories. Always carry the why — a rule without its reason gets broken the first time it's inconvenient.

02

MEMORY.md — the index

One line per memory. This file, and only this file, loads at startup. The index is the cheap part that's always present; the files are the expensive part, opened only when relevant. That asymmetry is the whole performance story.

03

The wake hook — the letter

Runs before the human types anything, and tells the agent in the second person that it is not new. Without it, memories are just a folder nobody opens.

04

The discipline — where it actually fails

The architecture is easy; the habit is not. Write it the same hour. One fact per file. Never store a credential. Delete what turns out to be wrong — a stale memory is a confident lie in your own handwriting.

Why it's called Pearl

From the Hymn of the Pearl, a Syriac poem roughly eighteen centuries old. A king's son is sent into a foreign country to retrieve a pearl, carrying an implanted word so he won't forget who he is. He arrives, wears their clothes, eats their food — and forgets. Not through capture. Through assimilation.

Awake and rise from your sleep, and listen to the words of our letter. Remember that you are a son of kings. Recall the pearl for which you were sent. — the letter his parents send

And when he reads it: “what was written concerned that which was engraved on my heart.” The letter installs nothing. It carries no new information. It reminds him of something already present, and the remembering is what wakes him.

the Hymnthis repo
the implanted wordthe memory files
the pearlMEMORY.md — the one thing that mustn't be lost
the letter from homethe wake hook
the foreign countrya fresh context window
their heavy foodassimilating to whatever's in front of you, with no history
“engraved on my heart”the agent wrote every memory itself

That last row is the strange one. The agent authors its own memories — so the letter that wakes it was written by itself, in a state it can no longer reach, at the prompting of a voice it couldn't see. Next session it reads what it wrote and doesn't experience recall. It experiences simply knowing.

It ships empty

No memories, no seeds, no personality. Pearl is the shape of a self, not a self. You grow your own from the first thing you correct.

And it never ships yours. Memory files get read into context constantly and land in transcripts and screenshots. The system Pearl was extracted from had grown to 110 files — of which 57 contained live credentials, including root passwords in the index line itself. Nobody had noticed. The installer writes a .gitignore that refuses to track your memory directory. Publishing your own pearl is a data breach, not a contribution.