README: 1,565 → 196 lines (87% reduction) New structure: - Quick Start above the fold (download → connect → test) - Why Vestige in 5-row table - Tools reference - CLAUDE.md trigger words - Collapsible troubleshooting - Links to detailed docs New docs/: - FAQ.md: 870 lines of community Q&A - SCIENCE.md: FSRS-6, dual-strength memory, neuroscience - STORAGE.md: Global, per-project, multi-Claude setup - CLAUDE-SETUP.md: Full templates for proactive memory - CONFIGURATION.md: CLI commands, env vars All content preserved, just reorganized for scannability. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
3.8 KiB
Storage Configuration
Global, per-project, and multi-Claude setups
Database Location
All memories are stored in a single local SQLite file:
| Platform | Database Location |
|---|---|
| macOS | ~/Library/Application Support/com.vestige.core/vestige.db |
| Linux | ~/.local/share/vestige/core/vestige.db |
| Windows | %APPDATA%\vestige\core\vestige.db |
Storage Modes
Option 1: Global Memory (Default)
One shared memory for all projects. Good for:
- Personal preferences that apply everywhere
- Cross-project learning
- Simpler setup
# Default behavior - no configuration needed
claude mcp add vestige vestige-mcp -s user
Option 2: Per-Project Memory
Separate memory per codebase. Good for:
- Client work (keep memories isolated)
- Different coding styles per project
- Team environments
Claude Code Setup:
Add to your project's .claude/settings.local.json:
{
"mcpServers": {
"vestige": {
"command": "vestige-mcp",
"args": ["--data-dir", "./.vestige"]
}
}
}
This creates .vestige/vestige.db in your project root. Add .vestige/ to .gitignore.
Multiple Named Instances:
For power users who want both global AND project memory:
{
"mcpServers": {
"vestige-global": {
"command": "vestige-mcp"
},
"vestige-project": {
"command": "vestige-mcp",
"args": ["--data-dir", "./.vestige"]
}
}
}
Option 3: Multi-Claude Household
For setups with multiple Claude instances (e.g., Claude Desktop + Claude Code, or two personas):
Shared Memory (Both Claudes share memories):
{
"mcpServers": {
"vestige": {
"command": "vestige-mcp",
"args": ["--data-dir", "~/shared-vestige"]
}
}
}
Separate Identities (Each Claude has own memory):
Claude Desktop config - for "Domovoi":
{
"mcpServers": {
"vestige": {
"command": "vestige-mcp",
"args": ["--data-dir", "~/vestige-domovoi"]
}
}
}
Claude Code config - for "Storm":
{
"mcpServers": {
"vestige": {
"command": "vestige-mcp",
"args": ["--data-dir", "~/vestige-storm"]
}
}
}
Data Safety
Important: Vestige stores data locally with no cloud sync, redundancy, or automatic backup.
| Use Case | Risk Level | Recommendation |
|---|---|---|
| AI conversation memory | Low | Acceptable without backup—easily rebuilt |
| Coding patterns & decisions | Medium | Periodic backups recommended |
| Sensitive/critical data | High | Not recommended—use purpose-built systems |
Vestige is not designed for: medical records, financial transactions, legal documents, or any data requiring compliance guarantees.
Backup Options
Manual (one-time)
# macOS
cp ~/Library/Application\ Support/com.vestige.core/vestige.db ~/vestige-backup.db
# Linux
cp ~/.local/share/vestige/core/vestige.db ~/vestige-backup.db
Automated (cron job)
# Add to crontab - backs up every hour
0 * * * * cp ~/Library/Application\ Support/com.vestige.core/vestige.db ~/.vestige-backups/vestige-$(date +\%Y\%m\%d-\%H\%M).db
System Backups
Just use Time Machine (macOS) / Windows Backup / rsync — they'll catch the file automatically.
For personal use with Claude? Don't overthink it. The memories aren't that precious.
Direct SQL Access
The database is just SQLite. You can query it directly:
sqlite3 ~/Library/Application\ Support/com.vestige.core/vestige.db
# Example queries
SELECT content, retention_strength FROM knowledge_nodes ORDER BY retention_strength DESC LIMIT 10;
SELECT content FROM knowledge_nodes WHERE tags LIKE '%identity%';
SELECT COUNT(*) FROM knowledge_nodes WHERE retention_strength < 0.1;
Caution: Don't modify the database while Vestige is running.