One memory shared by every AI agent you use, on every machine, stored as plain text in a git repo you own.
Claude Code, OpenCode, Grok, Hermes: none of them talk to each other. Tell one agent how you like things done and the next one has never heard of it. Switch machines and you start over. Come back to a project on Thursday and nobody remembers where Monday left off.
membraid is one brain behind all of them.
The agent-memory shelf splits by what each tool assumes, and that is the honest line between membraid and its neighbours:
- Engram assumes a repository. Memory lives next to the code, keyed per project, and a coding session starts with that project's summary.
- Honcho assumes a product. Memory is a model of each end user, built by an LLM from the conversations that user had with the product's assistant.
- membraid assumes one human running everything. A single vault across every harness, every project and every machine, in files the human owns, with no LLM in the loop.
That difference also names membraid's weak spot. Honcho and Engram deliver memory without the agent asking - a distilled context, a session summary - while membraid's own retrieval waits for the agent to search. The gap is delivery, not storage: getting what matters in front of the model at session start is the work that decides whether the vault earns its place.
- One answer per subject. A memory written with a key (
deploy.target) replaces the previous answer instead of piling up beside it. The old one stays in history with the agent that wrote it. - Where you left off. Unfinished work is recorded as a task, shown until an agent marks it done.
- Sessions start informed. A short digest (open tasks, recent facts for this project) is put in front of the model before your first message.
- Every machine, via your own git remote. The vault is a git repo. membraid pushes after writes and pulls when a session starts. Each machine appends to its own log file, so machines never conflict over memory.
- A bar widget for Omarchy: where you left off, your memories and projects, knowledge locations, how memory is being used, and settings, including setting up a harness.
- Knowledge locations: point agents at folders, git repos or web pages (
membraid source add), with who can reach each; membraid records where knowledge is, never what is in it.
| Harness | MCP tools | Digest at session start | Agent skill |
|---|---|---|---|
| Claude Code | yes | yes | yes |
| OpenCode | yes | yes | yes |
| Codex | yes | yes (a SessionStart hook you trust once with /hooks) |
yes |
| Copilot CLI | yes | yes (a sessionStart hook, which also carries the server instructions) |
yes |
| Crush | yes | yes (in the MCP server instructions) | yes |
| Cursor CLI | yes | yes (a sessionStart hook; not yet tested in a live session) |
yes |
| Gemini CLI | yes | yes (in the MCP server instructions, in folders you trust) | yes |
| Grok | yes | yes, from a terminal (a grok shell function; bash and zsh) |
yes |
| Hermes | yes | yes | yes |
| Pi | through a Pi extension (Pi has no MCP) | yes | yes |
| Anything else | any MCP stdio client: membraid mcp --source NAME |
||
| Scripts, cron | the membraid CLI |
On Linux or macOS:
curl -fsSL https://github.com/shockalotti/membraid/releases/latest/download/install.sh | sh
membraid installThe script downloads the build for your machine from the latest
release, checks it against
the release's checksums, and puts it in ~/.local/bin. MEMBRAID_LITE=1 picks
the lite build, about 8 MB smaller, which searches by meaning through Ollama
only. On Windows, download membraid-windows-amd64.exe from the release. With
Go 1.27 or newer, go install github.com/shockalotti/membraid/cmd/membraid@latest
works too.
Later, membraid update replaces the binary with the newest release, checked
the same way (membraid update --check only looks).
install detects your harnesses, asks which to set up, shows exactly what it
will change, and does it. It is safe to run again.
To share memory across machines, give the vault a private git remote:
cd ~/.membraid/vault
git remote add origin git@github.com:<you>/membraid-vault.git
git push -u origin mainNever store secrets. Memory syncs to a git remote. Agents are told not to record passwords, tokens or keys; do not ask them to.
membraid write "deploys to Railway" --kind project_param --key deploy.target
membraid write "deploys to Fly.io" --kind project_param --key deploy.target
membraid get deploy.target # project_param deploys to Fly.io [id 7c1e...]
membraid history deploy.target # both answers, newest first
membraid search "deploy"
membraid status # open tasks and recent memory
membraid context # the digest an agent starts withScope follows the git project you are in; --scope shared makes a memory
visible everywhere.
Early. Used daily by its author across two Linux machines and four harnesses.
- Linux is tested. Windows builds but is untested.
- Search is keyword full-text by default. Semantic search is optional and local: EmbeddingGemma through Ollama, or a model built into membraid.
- Ranking by use is in: memories agents report relying on rise, and ones nobody uses fade (how). So are sweep and distillation.
- Getting started: install, scopes, sync, what an agent actually sees
- v1 scope: what is built, what is next, and why
- Spec: the full design reference