The memory
your AI
deserves.
— a field manual for self-hosted recollection
Mnemon is a self-hosted second brain for your agents. It stores everything verbatim, retrieves with hybrid search, and compiles the archive into a living wiki that your models can actually reason against — without extraction loss, vendor lock-in, or a SaaS sitting between you and your own thoughts.
Store verbatim.
Every message, every transcript, every artefact, byte-perfect. Extraction is a derivative, never the original.
Retrieve hybrid.
BM25 over tsvector, joined to pgvector cosine. Ranked, deduped, attributed. No black-box re-rankers.
Compile upward.
Raw drawers condense into wiki entries; entries link into a living atlas; the palace remembers their geometry.
Own your house.
Laravel, Postgres, your hardware. No vendors, no rate limits, no quiet exfiltration of your archive.
Compiled knowledge on top.
Most "memory" tools begin by destroying the source. They chunk, embed, summarise, and discard — leaving the agent to hallucinate its way back to whatever was lost in translation. Mnemon does the opposite.
The base layer is a faithful archive: original messages, original files, original timestamps, sealed by content hash. Nothing is rewritten, nothing is destroyed. The compiled layer reads from the base and produces something the model can actually use — a wiki of entries, each with a clear lineage back to the verbatim record that authored it.
An agent that wants the gist queries the wiki. An agent that wants the source follows the lineage one step deeper. Both speak MCP. Neither path requires trust in a third party.
- 01Capture
- 02Index
- 03Compile
- 04Recall
- 05Reason
Mnemon gives it floors.
The Romans called it memoria artificiosa: place each thing you must remember in a familiar room, then walk the building when you need it back. Mnemon borrows the geometry literally.
Each wing is a namespace. Each room is a coherent context — a project, a client, a research thread. Each drawer within a room pins a memory: a chat, a file, an entry. Agents traverse rooms like a careful librarian, not a confused intern.
The browser is a blueprint. Hover any locus to read its provenance. Open one to walk its lineage all the way down to the verbatim row.
Single dependency. pgvector for embeddings, tsvector for full-text. No Pinecone, no Weaviate, no surprises.
Composer-installable package. Drops cleanly into existing apps. Uses the framework's queue, cache, jobs, and broadcasting.
First-class. A dozen tools out of the box: recall, seal, compile, walk, cite…
Reciprocal-rank fusion by default. Tunable per-room. Every result carries provenance to the verbatim row.
Local nomic-embed, bge-m3, text-embedding-3 — anything that returns a vector. Swap them; we re-index in the background.
No telemetry, no analytics, no phone-home. Outbound calls require an allow-list and live on the audit log.
composer require before, you have already finished the difficult part.
Mnemon installs as a Laravel application or as a package alongside your own. Postgres gives it a home; pgvector gives it a memory; MCP gives every agent in your house a front door.
Issue an API key in the admin, point your client at the local socket or HTTP endpoint, and your agents begin recalling. The compile worker runs on Laravel's queue. Embeddings are computed lazily — only when an agent actually asks. The wiki rebuilds itself each night, on demand, or never. The choice is yours; the archive is always the truth.
- ▸git clone & composer install
- ▸php artisan migrate --seed
- ▸php artisan serve
We read every note. If you have an idea about the schema, an objection to the compile pipeline, or a request for a feature that would make Mnemon useful in your own house — write it down here.
For source, issues, and patches, find us on github / coopers98 / mnemon.
Your agents remember everything —
and actually understand it.
Mnemon is free, MIT-licensed, and runs on the laptop already humming under your desk. The rest is up to you.