Vestige

RAG & Memory 💻 Rust ⚖️ AGPL-3.0 🟢 Actively maintained
615 stars

Vestige is a local-first memory layer for AI agents that stores decisions and retrieves them via MCP, going beyond similarity search to find causal root causes of failures. It solves the problem of agents repeating mistakes or missing contradictions by using cognitive science-inspired mechanisms like retroactive salience backfill. It is for developers using MCP-capable agents like Claude Code, Codex, or Cursor who want persistent, private memory without cloud dependencies.

Vestige demo
🎞️ Demo from the project README

✨ Key features

  • Causal and temporal retrieval, not just similarity
  • Contradiction detection and flagging on write
  • Redundant memory merging via prediction-error gating
  • Unused memories fade with FSRS-6 spaced repetition
  • Backfill reaches backward to root-cause memories
  • Fully offline after one-time model download

🎯 Use cases

  • Prevent agents from re-suggesting rejected changes
  • Trace a failure to an older decision that caused it
  • Maintain project context across sessions
  • Flag contradictory instructions or facts
  • Keep memory private with no cloud or telemetry

📦 Installation

🧰 Requirements: Requires Node.js for installation; prebuilt binaries for macOS ARM/Intel, Linux x86_64, Windows x86_64. No API keys or accounts needed.

npm install -g vestige-mcp-server@latest

Connect it to your agent with this MCP config:

{
  "mcpServers": {
    "vestige": { "command": "vestige-mcp" }
  }
}

For Claude Code: claude mcp add vestige vestige-mcp -s user For Codex: codex mcp add vestige -- vestige-mcp

Verify with vestige dashboard and open http://localhost:3927/dashboard. First run downloads a 130MB embedding model once.

🚀 Usage

vestige dashboard

Then open http://localhost:3927/dashboard to see your memory graph. For a full walkthrough, see docs/GETTING-STARTED.md.

⚠️ Good to know

The README notes that Vestige reports receipt-backed candidate causes, never an unverifiable verdict, and that benchmark caveats include trials where a plain cosine baseline ties or Vestige loses.

❓ FAQ

How does Vestige differ from RAG?

RAG retrieves by similarity, which fails when the cause doesn't resemble the symptom. Vestige adds causal and temporal links, enabling backfill to reach the root-cause memory.

Is my data sent to the cloud?

No. Vestige runs locally with no cloud, no API keys, and no telemetry. After a one-time model download, it is fully offline.

Which agents are supported?

Any MCP-capable agent, including Claude Code, Claude Desktop, Codex, Cursor, VS Code, Windsurf, Cline, Continue, Zed, and Goose.

What is the 'backfill' tool for?

It reaches backward from a failure to identify candidate cause memories, using retroactive salience backfill, and provides a receipt with the evidence path.

📊 Repository

Stars★ 615
Forks🍴 65
Open issues🐛 7
Last commit🕒 Sep 2, 2026
Created📅 Jan 2026
Language💻 Rust
License⚖️ AGPL-3.0

🤖 Overview, features, install steps and FAQ were generated from the project's README on Sep 4, 2026. Always check the original source before running commands.