Open source · MIT · self-hosted

Persistent memory for your coding agents.

A self-hosted MCP server that gives Claude Code, Codex, ChatGPT, and any MCP client durable memory, sessions, and an operator dashboard — one Docker image, one SQLite file, reversible by design.

bash — rembric
# one command — server, memory & dashboard in one container
$ curl -fsSL https://raw.githubusercontent.com/susomejias/rembric/main/install.sh | sh

# then point any MCP client at your server — that's it.
Without rembric
# a brand-new session sees only the current code
> the nightly export got slow — how do we fix it?

 "just add an index on orders.created_at" — looks obvious
 but that deadlocked the batch writer back in March
 the revert left no trace in the code — so it happens again
With rembric
 memory.context → recalls the March incident
> the nightly export got slow — how do we fix it?

 "skip the created_at index — it deadlocked in March"
 points you to the partial index you shipped instead
 a decision the code can't tell you — only memory can

Your agents forget everything. Rembric doesn't.

The memory layer that survives compaction, context windows, and tool switches — without handing your data to anyone.

Append-only

Reversible by design

Memories are never deleted or rewritten. Lifecycle is status flips plus links, and every consolidation op is journaled — so any change can be undone.

Any MCP client

Shared across your tools

One memory surface for every agent that speaks MCP. First-class plugins for four clients; everything else connects with a plain URL.

Self-hosted

Your data, your box

A single Node process over one SQLite file. No external services, no telemetry, no data leaving your infrastructure.

Scoped

Global and per-project

Scope is enforced at the service layer. Project memory stays in the project; cross- scope reads simply don't happen.

Consolidation

Memory that ages gracefully

A deterministic sweep decays stale memories and surfaces conflicts for fresh-context judgment — no cron, no LLM in the loop.

Operator UI

A dashboard for everything

Inspect tokens, projects, sessions, judgments, memories, and consolidation from a built-in operator dashboard.

The memory lifecycle, in the open.

It's all MCP tool calls against one append-only store — no black box. Every write is journaled and reversible.

01 · CAPTURE

Agents write facts

An agent calls memory.save with a title, content, and optional topic_key. Session lifecycle runs over HTTP, so session_id is attached automatically — no manual threading.

02 · RECONCILE

Conflicts get judged

Contradictions surface as candidates[] and are closed with memory.judge. Same-topic writes supersede atomically by topic_key — the old row flips to superseded, never deleted.

03 · RECALL

Context comes back

On a fresh session or after /compact, memory.context and memory.search return scope-filtered, ranked memory straight into the model's window.

04 · CONSOLIDATE

Memory ages out

A deterministic sweep decays stale rows by access + confidence and flags others for review via memory.confirm — no cron, no LLM, throttled on session start.

One process

Server, memory, sessions, judgments, and the operator dashboard run in a single Node process over one SQLite file.

Append-only

Rows are never deleted or rewritten. Lifecycle is status flips plus replaces links; every op is journaled and reversible.

Scoped

Scope is enforced at the service layer — global vs per-project, with cross-scope reads returning not_found.

Any agent that speaks MCP.

First-class plugins for four clients handle session lifecycle, per-project scoping, and client-side <private> redaction automatically. Everything else connects with a plain MCP URL — or OAuth 2.1, no static token.

First-class plugins Session lifecycle · path-scoping · private redaction
Claude Code
Codex CLI
Hermes Agent
opencode
Connect over MCP / OAuth Same memory tools · plain URL or OAuth 2.1
ChatGPT OAuth connector
Cursor
Windsurf
Claude Desktop
Cline
Gemini CLI
Goose
+ any MCP client

Self-host in one command.

$ curl -fsSL https://raw.githubusercontent.com/susomejias/rembric/main/install.sh | sh

The interactive installer sets up the server and wires up your agents. Docker is the canonical runtime — see the quickstart for topologies and upgrades.

Give your agents a memory.

Self-hosted · open source · reversible

Get started on GitHub →