samvallad33

vestige

Built by samvallad33 β€’ 451 stars

What is vestige?

Cognitive memory for AI agents β€” FSRS-6 spaced repetition, 29 brain modules, 3D dashboard, single 22MB Rust binary. MCP server for Claude, Cursor, VS Code, Xcode, JetBrains.

How to use vestige?

1. Install a compatible MCP client (like Claude Desktop). 2. Open your configuration settings. 3. Add vestige using the following command: npx @modelcontextprotocol/vestige 4. Restart the client and verify the new tools are active.
πŸ›‘οΈ Scoped (Restricted)
npx @modelcontextprotocol/vestige --scope restricted
πŸ”“ Unrestricted Access
npx @modelcontextprotocol/vestige

Key Features

Native MCP Protocol Support
Real-time Tool Activation & Execution
Verified High-performance Implementation
Secure Resource & Context Handling

Optimized Use Cases

Extending AI models with custom local capabilities
Automating system workflows via natural language
Connecting external data sources to LLM context windows

vestige FAQ

Q

Is vestige safe?

Yes, vestige follows the standardized Model Context Protocol security patterns and only executes tools with explicit user-granted permissions.

Q

Is vestige up to date?

vestige is currently active in the registry with 451 stars on GitHub, indicating its reliability and community support.

Q

Are there any limits for vestige?

Usage limits depend on the specific implementation of the MCP server and your system resources. Refer to the official documentation below for technical details.

Official Documentation

View on GitHub
<div align="center">

Vestige

The cognitive engine that gives AI a brain.

GitHub stars Release Tests License MCP Compatible

Your AI forgets everything between sessions. Vestige fixes that.

Built on 130 years of memory research β€” FSRS-6 spaced repetition, prediction error gating, synaptic tagging, spreading activation, memory dreaming β€” all running in a single Rust binary with a 3D neural visualization dashboard. 100% local. Zero cloud.

Quick Start | Dashboard | How It Works | Tools | Docs

</div>

What's New in v2.0 "Cognitive Leap"

  • 3D Memory Dashboard β€” SvelteKit + Three.js neural visualization with real-time WebSocket events, bloom post-processing, force-directed graph layout. Watch your AI's mind in real-time.
  • WebSocket Event Bus β€” Every cognitive operation broadcasts events: memory creation, search, dreaming, consolidation, retention decay
  • HyDE Query Expansion β€” Template-based Hypothetical Document Embeddings for dramatically improved search quality on conceptual queries
  • Nomic v2 MoE (experimental) β€” fastembed 5.11 with optional Nomic Embed Text v2 MoE (475M params, 8 experts) + Metal GPU acceleration. Default: v1.5 (8192 token context)
  • Command Palette β€” Cmd+K navigation, keyboard shortcuts, responsive mobile layout, PWA installable
  • FSRS Decay Visualization β€” SVG retention curves with predicted decay at 1d/7d/30d, endangered memory alerts
  • 29 cognitive modules β€” 1,238 tests, 79,600+ LOC

Quick Start

# 1. Install (macOS Apple Silicon)
curl -L https://github.com/samvallad33/vestige/releases/latest/download/vestige-mcp-aarch64-apple-darwin.tar.gz | tar -xz
sudo mv vestige-mcp vestige vestige-restore /usr/local/bin/

# 2. Connect to Claude Code
claude mcp add vestige vestige-mcp -s user

# 3. Test it
# "Remember that I prefer TypeScript over JavaScript"
# ...new session...
# "What are my coding preferences?"
# β†’ "You prefer TypeScript over JavaScript."
<details> <summary>Other platforms & install methods</summary>

macOS (Intel):

curl -L https://github.com/samvallad33/vestige/releases/latest/download/vestige-mcp-x86_64-apple-darwin.tar.gz | tar -xz
sudo mv vestige-mcp vestige vestige-restore /usr/local/bin/

Linux (x86_64):

curl -L https://github.com/samvallad33/vestige/releases/latest/download/vestige-mcp-x86_64-unknown-linux-gnu.tar.gz | tar -xz
sudo mv vestige-mcp vestige vestige-restore /usr/local/bin/

Windows: Download from Releases

npm:

npm install -g vestige-mcp-server

Build from source (requires Rust 1.91+):

git clone https://github.com/samvallad33/vestige && cd vestige
cargo build --release -p vestige-mcp
# Optional: enable Metal GPU acceleration on Apple Silicon
cargo build --release -p vestige-mcp --features metal
</details>

Works Everywhere

Vestige speaks MCP β€” the universal protocol for AI tools. One brain, every IDE.

IDESetup
Claude Codeclaude mcp add vestige vestige-mcp -s user
Claude Desktop2-min setup
Xcode 26.3Integration guide
CursorIntegration guide
VS Code (Copilot)Integration guide
JetBrainsIntegration guide
WindsurfIntegration guide

🧠 3D Memory Dashboard

Vestige v2.0 ships with a real-time 3D visualization of your AI's memory. Every memory is a glowing node in 3D space. Watch connections form, memories pulse when accessed, and the entire graph come alive during dream consolidation.

Features:

  • Force-directed 3D graph with 1000+ nodes at 60fps
  • Bloom post-processing for cinematic neural network aesthetic
  • Real-time WebSocket events: memories pulse on access, burst on creation, fade on decay
  • Dream visualization: graph enters purple dream mode, replayed memories light up sequentially
  • FSRS retention curves: see predicted memory decay at 1d, 7d, 30d
  • Command palette (Cmd+K), keyboard shortcuts, responsive mobile layout
  • Installable as PWA for quick access

Tech: SvelteKit 2 + Svelte 5 + Three.js + Tailwind CSS 4 + WebSocket

The dashboard runs automatically at http://localhost:3927/dashboard when the MCP server starts.


Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  SvelteKit Dashboard (apps/dashboard)                β”‚
β”‚  Three.js 3D Graph Β· WebGL + Bloom Β· Real-time WS   β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  Axum HTTP + WebSocket Server (port 3927)            β”‚
β”‚  15 REST endpoints Β· WS event broadcast              β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  MCP Server (stdio JSON-RPC)                         β”‚
β”‚  21 tools Β· 29 cognitive modules                     β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  Cognitive Engine                                    β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”       β”‚
β”‚  β”‚ FSRS-6   β”‚ β”‚ Spreadingβ”‚ β”‚ Prediction    β”‚       β”‚
β”‚  β”‚ Schedulerβ”‚ β”‚ Activationβ”‚ β”‚ Error Gating  β”‚       β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜       β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”       β”‚
β”‚  β”‚ Memory   β”‚ β”‚ Synaptic β”‚ β”‚ Hippocampal   β”‚       β”‚
β”‚  β”‚ Dreamer  β”‚ β”‚ Tagging  β”‚ β”‚ Index         β”‚       β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜       β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  Storage Layer                                       β”‚
β”‚  SQLite + FTS5 Β· USearch HNSW Β· Nomic Embed v1.5    β”‚
β”‚  Optional: Nomic v2 MoE Β· Qwen3 Reranker Β· Metal   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Why Not Just Use RAG?

RAG is a dumb bucket. Vestige is an active organ.

RAG / Vector StoreVestige
StorageStore everythingPrediction Error Gating β€” only stores what's surprising or new
RetrievalNearest-neighbor7-stage pipeline β€” HyDE expansion + reranking + spreading activation
DecayNothing expiresFSRS-6 β€” memories fade naturally, context stays lean
DuplicatesManual dedupSelf-healing β€” auto-merges "likes dark mode" + "prefers dark themes"
ImportanceAll equal4-channel scoring β€” novelty, arousal, reward, attention
SleepNo consolidationMemory dreaming β€” replays, connects, synthesizes insights
HealthNo visibilityRetention dashboard β€” distributions, trends, recommendations
VisualizationNone3D neural graph β€” real-time WebSocket-powered Three.js
PrivacyUsually cloud100% local β€” your data never leaves your machine

πŸ”¬ The Cognitive Science Stack

This isn't a key-value store with an embedding model bolted on. Vestige implements real neuroscience:

Prediction Error Gating β€” The hippocampal bouncer. When new information arrives, Vestige compares it against existing memories. Redundant? Merged. Contradictory? Superseded. Novel? Stored with high synaptic tag priority.

FSRS-6 Spaced Repetition β€” 21 parameters governing the mathematics of forgetting. Frequently-used memories stay strong. Unused memories naturally decay. Your context window stays clean.

HyDE Query Expansion (v2.0) β€” Template-based Hypothetical Document Embeddings. Expands queries into 3-5 semantic variants, embeds all variants, and searches with the centroid embedding for dramatically better recall on conceptual queries.

Synaptic Tagging β€” A memory that seemed trivial this morning can be retroactively tagged as critical tonight. Based on Frey & Morris, 1997.

Spreading Activation β€” Search for "auth bug" and find the related JWT library update from last week. Memories form a graph, not a flat list. Based on Collins & Loftus, 1975.

Dual-Strength Model β€” Every memory has storage strength (encoding quality) and retrieval strength (accessibility). A deeply stored memory can be temporarily hard to retrieve β€” just like real forgetting. Based on Bjork & Bjork, 1992.

Memory Dreaming β€” Like sleep consolidation. Replays recent memories to discover hidden connections, strengthen important patterns, and synthesize insights. Dream-discovered connections persist to a graph database. Based on the Active Dreaming Memory framework.

Waking SWR Tagging β€” Promoted memories get sharp-wave ripple tags for preferential replay during dream consolidation. 70/30 tagged-to-random ratio. Based on Buzsaki, 2015.

Autonomic Regulation β€” Self-regulating memory health. Auto-promotes frequently accessed memories. Auto-GCs low-retention memories. Consolidation triggers on 6h staleness or 2h active use.

Full science documentation ->


πŸ›  21 MCP Tools

Context Packets

ToolWhat It Does
session_contextOne-call session init β€” replaces 5 calls with token-budgeted context, automation triggers, expandable IDs

Core Memory

ToolWhat It Does
search7-stage cognitive search β€” HyDE expansion + keyword + semantic + reranking + temporal + competition + spreading activation
smart_ingestIntelligent storage with CREATE/UPDATE/SUPERSEDE via Prediction Error Gating. Batch mode for session-end saves
memoryGet, delete, check state, promote (thumbs up), demote (thumbs down)
codebaseRemember code patterns and architectural decisions per-project
intentionProspective memory β€” "remind me to X when Y happens"

Cognitive Engine

ToolWhat It Does
dreamMemory consolidation β€” replays memories, discovers connections, synthesizes insights, persists graph
explore_connectionsGraph traversal β€” reasoning chains, associations, bridges between memories
predictProactive retrieval β€” predicts what you'll need next based on context and activity

Autonomic

ToolWhat It Does
memory_healthRetention dashboard β€” distribution, trends, recommendations
memory_graphKnowledge graph export β€” force-directed layout, up to 200 nodes

Scoring & Dedup

ToolWhat It Does
importance_score4-channel neuroscience scoring (novelty, arousal, reward, attention)
find_duplicatesDetect and merge redundant memories via cosine similarity

Maintenance

ToolWhat It Does
system_statusCombined health + stats + cognitive state + recommendations
consolidateRun FSRS-6 decay cycle (also auto-runs every 6 hours)
memory_timelineBrowse chronologically, grouped by day
memory_changelogAudit trail of state transitions
backup / export / gcDatabase backup, JSON export, garbage collection
restoreRestore from JSON backup

Make Your AI Use Vestige Automatically

Add this to your CLAUDE.md:

## Memory

At the start of every session:
1. Search Vestige for user preferences and project context
2. Save bug fixes, decisions, and patterns without being asked
3. Create reminders when the user mentions deadlines
You SayAI Does
"Remember this"Saves immediately
"I prefer..." / "I always..."Saves as preference
"Remind me..."Creates a future trigger
"This is important"Saves + promotes

Full CLAUDE.md templates ->


Technical Details

MetricValue
LanguageRust 2024 edition (MSRV 1.91)
Codebase79,600+ lines, 1,238 tests
Binary size~20MB
EmbeddingsNomic Embed Text v1.5 (768d β†’ 256d Matryoshka, 8192 context)
Vector searchUSearch HNSW (20x faster than FAISS)
RerankerJina Reranker v1 Turbo (38M params, +15-20% precision)
StorageSQLite + FTS5 (optional SQLCipher encryption)
DashboardSvelteKit 2 + Svelte 5 + Three.js + Tailwind CSS 4
TransportMCP stdio (JSON-RPC 2.0) + WebSocket
Cognitive modules29 stateful (16 neuroscience, 11 advanced, 2 search)
First runDownloads embedding model (~130MB), then fully offline
PlatformsmacOS (ARM/Intel), Linux (x86_64), Windows

Optional Features

# Metal GPU acceleration (Apple Silicon β€” faster embedding inference)
cargo build --release -p vestige-mcp --features metal

# Nomic Embed Text v2 MoE (475M params, 305M active, 8 experts)
cargo build --release -p vestige-mcp --features nomic-v2

# Qwen3 Reranker (Candle backend, high-precision cross-encoder)
cargo build --release -p vestige-mcp --features qwen3-reranker

# SQLCipher encryption
cargo build --release -p vestige-mcp --no-default-features --features encryption,embeddings,vector-search

CLI

vestige stats                    # Memory statistics
vestige stats --tagging          # Retention distribution
vestige stats --states           # Cognitive state breakdown
vestige health                   # System health check
vestige consolidate              # Run memory maintenance
vestige restore <file>           # Restore from backup
vestige dashboard                # Open 3D dashboard in browser

Documentation

DocumentContents
FAQ30+ common questions answered
ScienceThe neuroscience behind every feature
Storage ModesGlobal, per-project, multi-instance
CLAUDE.md SetupTemplates for proactive memory
ConfigurationCLI commands, environment variables
IntegrationsXcode, Cursor, VS Code, JetBrains, Windsurf
ChangelogVersion history

Troubleshooting

<details> <summary>"Command not found" after installation</summary>

Ensure vestige-mcp is in your PATH:

which vestige-mcp
# Or use the full path:
claude mcp add vestige /usr/local/bin/vestige-mcp -s user
</details> <details> <summary>Embedding model download fails</summary>

First run downloads ~130MB from Hugging Face. If behind a proxy:

export HTTPS_PROXY=your-proxy:port

Cache: macOS ~/Library/Caches/com.vestige.core/fastembed | Linux ~/.cache/vestige/fastembed

</details> <details> <summary>Dashboard not loading</summary>

The dashboard starts automatically on port 3927 when the MCP server runs. Check:

curl http://localhost:3927/api/health
# Should return {"status":"healthy",...}
</details>

More troubleshooting ->


Contributing

Issues and PRs welcome. See CONTRIBUTING.md.

License

AGPL-3.0 β€” free to use, modify, and self-host. If you offer Vestige as a network service, you must open-source your modifications.


<p align="center"> <i>Built by <a href="https://github.com/samvallad33">@samvallad33</a></i><br> <sub>79,600+ lines of Rust Β· 29 cognitive modules Β· 130 years of memory research Β· one 22MB binary</sub> </p>

Global Ranking

-
Trust ScoreMCPHub Index

Based on codebase health & activity.

Manual Config

{ "mcpServers": { "vestige": { "command": "npx", "args": ["vestige"] } } }