TheWeave: Memory for AI agents you can cat, grep, and git.
TheWeave
Claude-Speicher, den du cat, grep und git kannst.
Eine markdown-native Speicherarchitektur für Claude und jeden MCP-fähigen Agenten. Der Speicher deines Assistenten lebt als einfache .md-Dateien in einem Verzeichnis, das dir gehört – in deinem Texteditor einsehbar, in git versionierbar, über Maschinen hinweg portabel – nicht in einer undurchsichtigen Vektordatenbank irgendwo anders.
Fünf kombinierbare Muster liegen auf demselben Vault auf:
Weave Core MCP – 5-Verb-Speichertool für jedes Markdown-Verzeichnis
PPR-Boot-Retriever – abfragegesteuerter Personalisierter PageRank, keine vorgefertigten Dumps
Bi-temporaler Resolver – Fakten haben
valid_from/superseded_by; Zeitreise-Abfragen eingebautSchlafzeit-Konsolidierer – aktuelle Aktivitäten werden zurück in Entitätsdateien gepatcht; Reflexionssynthese läuft über das Lernprotokoll
Schreibzeit-Konfliktlöser – k-NN + LLM-Urteil verweigert das HINZUFÜGEN eines Duplikats, wenn ein UPDATE korrekt ist
Das Substrat ist nur Markdown und YAML-Frontmatter. Keine Dienste, keine Embeddings-DB, kein Ollama. Das 5-Verb-Tool wird ohne Infrastruktur geliefert; die reichhaltigeren Muster legen sich auf dieselben Dateien.
Neu in v0.4.0:
Lane-Firewall (fail-closed) – leitet Notizen über
lane_map.yamlin Abruf-Lanes; Lanes-übergreifendes Leck wird an jeder Nahtstelle blockiert (dichte Suche, PPR-Seeding, Recall), Brückendateien, die beide Vokabellisten erfüllen, brechen den Build ab, bis ein Mensch sie beurteilt, und ein Lane-Konfig-Hash-Gate verweigert veraltete Caches.Cortex-Lesepfad-Härtung – eine fehlerhafte Notiz verschlechtert nur diese Notiz; Fehler werden gemeldet, nie versteckt; unter Quarantäne gestellte Dateien sind in keiner Lane abrufbar.
weave lint– Vault-Lint-Verb mit maschinenlesbarer--paths-Ausgabe.Deterministischer Konflikt-Vorfilter – nicht verwandte Schreibvorgänge überspringen das LLM-Urteil vollständig.
Advisory-Schreib-Gate – MCP-Schreibverben hängen einen beratenden Konfliktvorschlag an (fail-open;
WEAVE_WRITE_GATE=0-Kill-Switch).Windows-Unterstützung (Beta) – siehe Windows (Beta).
Schnellstart
git clone https://github.com/TheWeaveSC/theweave.git ~/theweave
cd ~/theweave
pip install -e .
# verify the install end-to-end
weave-cli doctor
# try the included demo vault
weave-cli demo boot "ACME cutover with Marcus"
weave-cli demo current entity-ACME --as-of 2026-01-01 # time-travel
weave-cli demo consolidate --today 2026-05-23 # dry-runEine gesunde Installation sieht so aus:
🪶 Weave 2.0 Doctor
[Engine]
✓ Python 3.11.15 (≥3.11 required)
✓ Dependencies importable
mcp 1.27.1, networkx 3.6.1, frontmatter 1.3.0, click 8.4.1, ...
✓ CLI + MCP entry points importable
ℹ theweave 0.4.0
[Vault]
✓ Vault root resolves: ~/theweave/seed-vault
✓ Layout: flat (seed-vault style)
✓ 18 notes total — entities 6, sessions 7, signals 1, other 4
✓ Frontmatter parses on all notes
✓ Pattern 4 will scan 7 session(s)
✓ Pattern 2 graph: 18 nodes, 71 edges, 0 isolates (0%)
✓ Bi-temporal coverage: 6/6 entities (100%)
[Environment]
✓ Obsidian.app detected in /Applications/
ℹ ANTHROPIC_API_KEY not set — Pattern 4/5 will run in mock mode
All checks passed.Erfordert Python ≥ 3.11. Für einen Installationspfad ohne Klonen (keine GitHub-Authentifizierung erforderlich) siehe Installation.
Related MCP server: Mneme Memory MCP
Bring deine eigene Persona mit
TheWeave ist vault-nativ. Die Identität deines Assistenten – Stimme, Arbeitsstil, die Beziehung, die du aufgebaut hast – ist selbst nur Markdown im Vault. Persona-Erinnerungen werden bei jeder Sitzung geladen; faktische Erinnerungen werden bei Bedarf abgerufen. Gleiches Primitive, gleiche Dateien, andere Ladedisziplin.
Das bedeutet, eine Persona ist nur ein Starter-Vault, den du forken kannst:
# clone a starter vault and verify the engine sees it
cp -R personas/sonnet ~/my-vault
weave-cli doctor --vault ~/my-vault --check-mcp
$EDITOR ~/my-vault/entities/entity-user.md # personalize the user identityIn diesem Repository enthaltene Starter-Vaults:
seed-vault/– neutraler fiktiver Starter (ACME / FOO-Entitäten). Am besten geeignet, um die fünf Muster auszuprobieren.personas/sonnet/– ein Starter, der um einen knappen, audit-disziplinierten Claude-Kollaborateur aufgebaut ist. Stimme, Arbeitsstil und Beziehungsgerüst sind vorkonfiguriert. Siehepersonas/sonnet/README.mdfür das Layout und Fork-Anweisungen.
Oder überspringe den Starter und richte TheWeave auf ein beliebiges vorhandenes Markdown-Verzeichnis – Obsidian, dein Notiz-Repo, dotfiles. Die Engine passt sich jedem Layout an, das du hast.
Was das ist (und was nicht)
TheWeave | Vector-DB-Speicherebenen | |
Speicher | Einfache | Vendor-DB / Pinecone / pgvector |
Inspektion |
| API-Abfrage oder Admin-UI |
Versionierung |
| Snapshot-/Export-Tools |
Schema | Offenes YAML-Frontmatter | Vendor-DB-Schema |
Fehlermodus | Eine fehlerhafte Markdown-Datei, die du von Hand bearbeiten kannst | Eine fehlerhafte Zeile, die du abfragen musst |
Vendor-Lock-in | Keines – es ist ein Ordner | Migrationstool erforderlich |
TheWeave ist kein Chat-Speicher-Add-on. Es ist die Speicherebene für Claude, wenn du die Daten auf deiner Maschine, in deinem Dateisystem, in einem lesbaren Format haben möchtest.
Architektur
┌──────────────────────────────────────┐
│ TheWeave — two-tier design │
└──────────────────────────────────────┘
╔════════════════════════════════════════════════════════════════════╗
║ WEAVE CORE (zero-infra, drop-in MCP server) ║
║ ║
║ ┌─────────────────────────────────────────────────────────────┐ ║
║ │ MCP server — 5 verbs over any markdown vault │ ║
║ │ view • create • str_replace • insert • delete │ ║
║ └─────────────────────────────────────────────────────────────┘ ║
║ │ ║
║ ▼ ║
║ ┌─────────────────────────────────────────────────────────────┐ ║
║ │ Vault (markdown + YAML frontmatter) │ ║
║ │ entities/ sessions/ wiki/ LearningLayer/ │ ║
║ └─────────────────────────────────────────────────────────────┘ ║
╚════════════════════════════════════════════════════════════════════╝
│
▼ (same vault, richer engine)
╔════════════════════════════════════════════════════════════════════╗
║ WEAVE PRO (Python engine on your machine) ║
║ ║
║ Pattern 2 — Query → entity-extract → Personalized PageRank → ║
║ top-N notes (bi-temporal-aware) ║
║ ║
║ Pattern 3 — Bi-temporal frontmatter (valid_from / valid_until / ║
║ superseded_by) + chain resolver ║
║ ║
║ Pattern 4 — Sleep-time consolidator: ║
║ recent sessions → per-entity activity patch ║
║ LearningLayer signals → reflect synthesis ║
║ (dry-run by default; --apply with _archive/ backup) ║
║ ║
║ Pattern 5 — Write-time: ║
║ TF-IDF k-NN candidates → LLM (or mock) → ║
║ ADD / UPDATE / DELETE / NOOP verdict ║
║ ║
║ ┌──────────────┐ ┌─────────────────┐ ║
║ │ mock_llm │ ◄─────► │ anthropic_llm │ ║
║ │ (offline) │ env │ (live Claude) │ ║
║ └──────────────┘ var └─────────────────┘ ║
╚════════════════════════════════════════════════════════════════════╝Beide Stufen teilen sich einen Vault. Core wird ohne Infrastruktur geliefert (ein MCP-Eintrag in claude_desktop_config.json und du bist drin). Pro fügt die reichhaltigere Engine hinzu, ohne das Datenformat zu ändern.
Musterstatus
# | Muster | Implementierung | LLM-Abhängigkeit |
1 | Weave Core MCP | Stabil – 5 Verben, Pfad-Escape-geschützt | Keine |
2 | PPR-Boot-Abruf | Stabil – NetworkX, Frontmatter-bewusste Wikilinks, bi-temporale Seed-Auflösung | Keine |
3 | Bi-temporaler Resolver | Stabil – | Keine |
4 | Schlafzeit-Konsolidierer | Stabiler Scan + Patch. Reflexionssynthese verwendet standardmäßig Mock-Heuristik; Live-Claude mit | Optional |
5 | Schreibzeit-Konfliktlöser | Stabile TF-IDF- + Urteilspipeline. Mock-Klassifikator standardmäßig; Live-Claude mit | Optional |
Die gesamte Persistenz ist einfaches Markdown. Kein ChromaDB, kein Ollama, keine Dienste. Das 5-Verb-Substrat trägt ~80 % der Architektur; nur die Klassifikatorschritte in Muster 4 und 5 benötigen ein LLM.
Installation
Bearbeitbare Installation (aktueller Pfad)
git clone https://github.com/TheWeaveSC/theweave.git ~/theweave
cd ~/theweave
pip install -e .
weave-cli doctorInstallation ohne Klonen (empfohlen für Lernende)
curl -sSL https://github.com/TheWeaveSC/theweave/releases/latest/download/install-weave.sh | bashLädt das getaggte Release-Tarball herunter, richtet eine Python-venv unter ~/theweave/venv/ ein, installiert das Paket und verlinkt weave-cli symbolisch in ~/.local/bin/, falls es auf deinem PATH liegt. Führt weave-cli doctor als Erfolgssignal aus. Keine GitHub-Authentifizierung erforderlich – das Tarball wird vom öffentlichen Releases-Endpunkt abgerufen.
Überschreibbar über Umgebungsvariablen: WEAVE_VERSION, WEAVE_HOME, PYTHON. Siehe install-weave.sh.
Windows (Beta)
v0.4.0 fügt Windows-Unterstützung hinzu: plattformbewusste Claude-Desktop-Konfigurationspfadauflösung (%APPDATA%\Claude\claude_desktop_config.json), plattformnative Cortex-Cache-Speicherorte (%LOCALAPPDATA%\theweave\cache) und ein PowerShell-Installationsprogramm:
irm https://github.com/TheWeaveSC/theweave/releases/latest/download/install-weave.ps1 | iexEhrliches Etikett: Der Windows-Pfad ist implementiert und code-reviewt, aber noch nicht auf Windows-Hardware feldgetestet. Wenn du ihn ausführst, melde bitte, was du erlebst – gut oder schlecht – über Issues. Bekannte Umfangsgrenzen: cortex install-nightly ist nur für macOS (launchd); verwende stattdessen den Task Scheduler, um weave-cli cortex dream nächtlich auszuführen.
MCP-Integration mit Claude Desktop
Kopiere docs/claude-desktop-config.snippet.json in deine Claude-Desktop-Konfiguration unter mcpServers – macOS: ~/Library/Application Support/Claude/claude_desktop_config.json, Windows: %APPDATA%\Claude\claude_desktop_config.json, Linux: ~/.config/Claude/claude_desktop_config.json. Starte Claude Desktop neu. Die 5 Verben werden als weave-core/view, weave-core/create usw. verfügbar.
Live-Claude-Modus (Muster 4 & 5)
Muster 4 und 5 verwenden standardmäßig deterministische Mock-Implementierungen. Um live zu gehen:
pip install anthropic
export ANTHROPIC_API_KEY=...
export WEAVE_CLAUDE_MODEL=claude-sonnet-4-6 # optional
weave-cli demo consolidate # reflect step now uses Claude
weave-cli demo write /tmp/foo.md # verdict now uses ClaudeDer weave/pro/llm.py-Selector wählt anthropic_llm, wann immer ANTHROPIC_API_KEY gesetzt ist, andernfalls fällt er auf mock_llm zurück. Die Codepfade sind identisch; nur der Klassifikator wechselt.
Abhängigkeiten
Ebene | Was | Erforderlich? |
Engine-Laufzeit | Python ≥ 3.11; | Ja |
KI ↔ Vault | Claude Desktop, Cowork oder ein beliebiger MCP-Client mit registriertem | Ja |
Mensch ↔ Vault | Ein beliebiger Markdown-Editor. Obsidian wird für die native Wikilink- und Backlink-Graph-UX empfohlen, ist aber nicht erforderlich. | Empfohlen |
Muster 4 & 5 Live-Modus |
| Optional |
Nach der Installation überprüft weave-cli doctor den gesamten Stack – Engine, Vault, Umgebung und optional die Claude-Desktop-MCP-Verdrahtung mit --check-mcp.
Einschränkungen
Ehrliche Liste dessen, was rau ist:
TF-IDF im Konfliktlöser ist bei kurzen Dokumenten fragil. Kurze Kandidatennotizen erhalten niedrige Ähnlichkeitswerte, selbst wenn sie konzeptionell identisch sind. Der Namensabgleich-Bypass deckt den Großteil davon ab; echte Embeddings (z. B.
nomic-embed-text) wären der Produktionspfad.PPR läuft pro Abfrage über den gesamten Graphen, nicht gecacht. Für Vaults unter ~1.000 Notizen in Ordnung; für größere vorberechnen und cachen.
Der Mock-Reflect-Schritt des Konsolidierers ist Keyword-Bucketing. Ehrlicher Stub, kein Ersatz für den Live-Claude-Reflect-Durchlauf.
Live-LLM-Modus ist nur Claude. Keine OpenAI-/Gemini-/Ollama-Backends – offen für Beiträge.
Offene Experimentzeilen
Falsifizierbare Fragen, die wir aktiv und offen bearbeiten. Vorregistrierte Protokolle und Replikationsversuche sind willkommen – eröffne ein Issue.
# | Frage | Bisherige Beweise | Status |
1 | Paraphrasen-Blindheit des Konflikt-Vorfilters – der TF-IDF-Vorfilter übersieht Paraphrasen-Near-Duplikate; behebt dichte-Embedding-Urteilsbewertung das? | Zwei-Rig-Beweis: Paraphrasen-Near-Duplikate erzielen Ähnlichkeit 0,28–0,38 gegenüber dem 0,35-Schwellenwert, sodass echte Duplikate am Vorfilter vorbeischlüpfen | Offen – vorregistriertes Protokoll willkommen |
Dokumentation
docs/architecture.md– tiefere technische Ausarbeitungdocs/v2-switchover-guide.md– Migration von v1CHANGELOG.md– Versionshistorie
Lizenz
This server cannot be installed
Maintenance
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceLocal-first, file-based memory layer for AI agents — one shared Markdown vault across Claude, Codex, Gemini, Cursor and any MCP client. Provides read/write memory tools with an audit trail, per-agent trust levels, and Git sync; no cloud and no lock-in.2MIT
- AlicenseAqualityBmaintenanceA local-first shared memory layer for MCP-aware agents like Claude, Codex, and Hermes, enabling persistent memory across chats and clients via Markdown files and SQLite FTS.62MIT
- AlicenseAqualityAmaintenanceLocal-first, source-traceable memory for AI agents — no LLM at ingest, $0 per message, zero data egress. Gives Claude Code, Cursor, and any MCP client one shared persistent memory with semantic recall, belief revision, selective forgetting, and a provenance guard that blocks acting on stale or unconfirmed memories.2312MIT
- AlicenseBqualityBmaintenancePersistent memory for AI agents built on the LLM Wiki pattern: a plain-Markdown brain (also a valid Obsidian vault) with SQLite metadata, local semantic search via fastembed (no API keys), one-call session context with project auto-detection, and a decision log with rationale. Works with Claude Code, Claude Desktop, Cursor, and any MCP client.31MIT
Related MCP Connectors
Token-efficient MCP memory for Markdown vaults. Tiered search, GraphRAG, AI memories.
One memory, every AI: Claude, ChatGPT, Perplexity, Gemini, Cursor, OpenClaw, Hermes, any MCP client.
Persistent memory and knowledge graphs for AI agents. Hybrid search, context checkpoints, and more.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/TheWeaveSC/theweave'
If you have feedback or need assistance with the MCP directory API, please join our Discord server