Wie ich auf MemPalace gestoßen bin
Ich scrollte durch Instagram — wie so oft abends — und blieb bei einem Video hängen. Eine Frau sprach über ein Problem, das ich selbst nur zu gut kannte: KI vergisst alles nach jeder Sitzung.
Die Frau war Milla Jovovich. Ja, die Milla Jovovich — Leeloo aus Das Fünfte Element, Alice aus Resident Evil.
In ihrem Instagram-Video erklärte sie, wie sie Ende 2025 intensiv mit KI-Systemen zu arbeiten begann — Claude, ChatGPT, Gemini — und Tausende von Gesprächen führte. Geschäftsentscheidungen, kreative Arbeit, Vertragsanalysen, Debugging. Und jedes Mal, wenn sie ein neues Gespräch startete, war alles weg.
Ihre Beschreibung traf es perfekt: “Ein brillanter Assistent mit permanentem Kurzzeitgedächtnis.”
Was ist MemPalace?
MemPalace ist ein kostenloses, quelloffenes KI-Memory-System, das großen Sprachmodellen ein persistentes Gedächtnis gibt. Es speichert Gespräche vollständig und wörtlich — nicht zusammengefasst, nicht gefiltert, nicht von einer KI entschieden, was wichtig ist.
Der Name stammt von der antiken Method of Loci (Gedächtnispalast-Technik), die griechische Redner nutzten, um sich Reden zu merken, indem sie Ideen mental in Räumen eines imaginären Gebäudes platzierten.
Die Palast-Architektur
MemPalace organisiert Informationen hierarchisch — wie ein echtes Gebäude:
Container für Personen oder Projekte — die großen Flügel des Palastes
Themen innerhalb eines Wings — z.B. "auth-migration" oder "ci-pipeline"
Gedächtnistypen: Fakten, Events, Entdeckungen, Präferenzen, Ratschläge
Komprimierte Zusammenfassungen, die auf Originalinhalte verweisen
Wörtliche, nie zusammengefasste Originaldateien — das Herzstück
Querverbindungen zwischen Wings für dasselbe Thema
Technischer Stack
Das Projekt läuft komplett lokal — keine Cloud, keine Abonnements, keine API-Kosten für die Kernfunktionalität:
- Python 3.9+ als Basis
- ChromaDB für semantische Vektorsuche
- SQLite für den temporalen Knowledge Graph
- MCP-Protokoll mit 19 Tools für nahtlose KI-Integration
- MIT-Lizenz — vollständig frei nutzbar
Die Entstehungsgeschichte
Milla Jovovich beginnt intensiv mit KI zu arbeiten. Tausende Gespräche gehen nach jeder Sitzung verloren. Bestehende Lösungen wie Mem0 und Zep nutzen KI zum Zusammenfassen — und verlieren dabei Nuancen.
Jovovich und Ingenieur Ben Sigman beginnen die Entwicklung mit Claude Code. Kernprinzip: Alles wörtlich speichern, nichts durch KI filtern lassen.
MemPalace wird unter Jovovichs persönlichem GitHub-Account als MIT-lizenziertes Open-Source-Projekt veröffentlicht.
7.000+ GitHub Stars. Ben Sigmans Launch-Tweet "Multipass" (eine Referenz an Das Fünfte Element) geht viral.
Eines der am schnellsten wachsenden GitHub-Repos des Monats. Rund 3.000 Forks. Aktive Community mit täglichen Contributions.
Das Wachstum verdoppelt sich innerhalb von 24 Stunden. Über 5.100 Forks. Alle 10 meiner ursprünglichen PRs wurden von Reviewern approved. Am selben Morgen 5 weitere PRs nach einem systematischen Security- und Code-Quality-Audit eingereicht.
Vier weitere Fixes landen via Maintainer-Rollups (#862–#866) auf `develop` — MCP-Stdout-Schutz, ChromaDB-Leerergebnis-Guard, Gitignore-Autoregistrierung und CLI-Doku-Klarstellung.
PR #928 (Sprach-Code-Resolution case-insensitive) gemerged — nach einem kollaborativen Review-Austausch, bei dem ich die Alternative eines Mit-Contributors als valide akzeptierte, aber die Entscheidung beim Maintainer ließ. Merge 53 Minuten später. Gesamtzählung: 33 eingereichte PRs, 8 direkt gemerged (#569, #609, #610, #862, #864, #865, #866, #928), 24 via Maintainer-Rollups auf `develop` integriert, 1 offen (#926 — Diary-sha256-Diff).
Benchmark-Ergebnisse und die Kontroverse
MemPalace beansprucht Spitzenwerte auf dem LongMemEval-Benchmark:
- 96,6% im Raw-Modus (ohne externe API-Aufrufe)
- 100% im Hybrid-Modus (mit Haiku-Reranking)
Warum ich beitrage
Nachdem ich das Instagram-Video gesehen hatte, klonte ich das Repository sofort. Beim Durchlesen des Codes fielen mir mehrere Verbesserungsmöglichkeiten auf — typische Dinge, die bei einem jungen Projekt mit schnellem Wachstum passieren:
- Fehlende Typ-Annotationen in zentralen Modulen
- Veraltete Versionsreferenzen in der Dokumentation
- Ein fehlender CHANGELOG
- Kleinere Bugs in der Komprimierungslogik und Suchkonfiguration
Das Projekt faszinierte mich, also entschied ich mich zu contributen: Ich öffnete Pull Requests.
Meine 42 Pull Requests
Erste Runde: Code-Qualität und Dokumentation (10. April)
CONTRIBUTING.md aktualisiert — fehlende Verzeichnisse ergänzt, Test-Kommandos korrigiert, veraltete Referenzen entfernt
AGENTS.md mit vollständigem Modul-Listing und korrigierten Coverage-Schwellwerten
Veraltete v3.0.0-Referenzen auf v3.1.0 im README aktualisiert
Return-Type-Hints und Docstrings für knowledge_graph.py hinzugefügt
CHANGELOG.md mit vollständiger v3.0.0 und v3.1.0 Historie erstellt
WAL-Datei-Rotation bei 10 MB, um unkontrolliertes Wachstum der SQLite-Logdatei zu verhindern
Parameter von "object" zu "obj" umbenannt, um Python-Builtin-Shadowing zu vermeiden
Registry-Schlüssel in der Spellcheck-Entity-Suche korrigiert
Dictionary-Keys in cmd_compress an die tatsächlichen compression_stats()-Rückgabewerte angeglichen
Standard-Collection auf Cosine Distance gesetzt und Similarity Scores auf 0-1 geklemmt
Zweite Runde: Security-Audit und Bug-Hunting (11. April)
Nach einem systematischen Audit des gesamten Codebasis — Security, Bugs und Code-Qualität — identifizierte ich weitere Verbesserungen und reichte 5 zusätzliche PRs ein:
Token-Zählung im Compress-Befehl korrigiert — gab immer "1t → 1t" aus, weil count_tokens() auf einem Leerzeichenlosen String aufgerufen wurde
Float-Vergleich bei Datei-Modifikationszeiten durch Epsilon-Vergleich ersetzt — verhindert unnötiges Re-Mining unveränderter Dateien
Standard-Richtung in query_entity von "outgoing" auf "both" korrigiert, um die MCP-Dokumentation zu matchen
Threading-Lock für Knowledge-Graph-Schreiboperationen hinzugefügt — verhindert Datenkorruption bei parallelen MCP-Tool-Aufrufen
Dead Code entfernt: doppelte Cache-Variablen-Deklarationen und wirkungslosen Exception-Handler bereinigt
Zwischenrunde: MCP-Server, Mining und Knowledge Graph (12.-14. April)
Nach einem Audit-Follow-up konzentrierte ich mich auf den MCP-Server, die Mining-Pipeline und die Konsistenz des Knowledge Graph. Alle 8 PRs wurden vom Maintainer geschlossen — einige in spätere Rollups übernommen (#862-#866), andere zugunsten alternativer Lösungen. Aus Transparenzgründen aufgelistet:
`ping`-Methode im MCP-Server implementiert — nötig für Client-Health-Checks, die den Handshake validieren, bevor sie Tools senden.
Warnings-Logging bei stillschweigend abgefangenen Exceptions in den Navigation-Tools — Fehler verschwanden vorher spurlos.
Typo-Fix im interaktiven Klassifizierungs-Prompt von entity_detector — betraf den manuellen Review-Flow.
Extraktion von `tool_use`- und `tool_result`-Blöcken beim Mining von Claude-Code-JSONL — diese Strukturen gingen vorher bei der Ingestion verloren.
Skip von `tool_result`-Nachrichten beim Zählen menschlicher Austausche in Hooks — der Zähler blähte sich mit Tool-Turns auf, die keine echten Nutzer-Turns waren.
Technische Stopwords + Satzanfang-Filter in entity_detector — reduziert False Positives wie "Python" oder "API", die als Named Entities gematcht wurden.
Verhinderung von KG-Edge-Duplikation mit partiellem UNIQUE-Index + atomarem Upsert — vermeidet Grafen-Aufblähung durch Duplikate bei Re-Ingestion.
Skip des Triples `is_pet_of` wenn Owner in seed_from_entity_facts fehlt — vorher entstanden Waisen-Beziehungen.
Dritte Runde: MCP-Stabilität und Projekthygiene (15. April)
Nachdem die Maintainer meine frühere Arbeit auf develop rebased hatten, reichte ich vier weitere Fixes ein, die echte Laufzeitprobleme aus dem Issue-Tracker adressieren. Alle vier wurden als Teil von Rollup-PRs (#862–#866) gemerged:
Doku-Fix: klargestellt, dass `mempalace init` ein `<dir>`-Argument erwartet — der CLI-Help-Text war für neue Nutzer irreführend
Stdout während des Modul-Imports auf Stderr umgeleitet, um den MCP-JSON-RPC-Kanal zu schützen — verhindert Protokoll-Korruption, wenn Clients stdio pipen
Leere ChromaDB-Query-Ergebnisse im Searcher abgefangen — behebt einen IndexError bei Cold-Start-Palästen
Projektspezifische MemPalace-Dateien automatisch zur `.gitignore` hinzufügen, wenn in einem Git-Repo — verhindert versehentliches Committen von Palace-Daten
Vierte Runde: Internationalisierung und kollaborative Reviews (16. April)
Sprach-Code-Resolution in `_resolve_language()` case-insensitive gemacht — behebt #927, wo Benutzer mit `LC_ALL=de_DE.UTF-8` Fehler bekamen, weil die Suche nur auf Kleinbuchstaben matcht.
Diary-Modul: erkennt Edits gleicher Länge via sha256-Hash — vorher fielen reine Umformulierungen ohne Längenänderung durch, weil der Diff-Check nur auf Zeichenzahl basierte.
Fünfte Runde: Sicherheitshärtung und Encoding-Robustheit (April 2026)
Zwei Security-Fixes direkt gemerged; sieben weitere Fixes in Review:
tunnels.json-Dateiberechtigungen auf 0o600 eingeschränkt — verhindert, dass andere lokale Nutzer auf geteilten Maschinen Querverbindungsdaten lesen können.
MEMPALACE_PALACE_PATH-Umgebungsvariable mit abspath + expanduser normalisiert — schließt ein Path-Traversal-Risiko bei relativen Pfadkomponenten oder unaufgelöster Tilde.
ISO-8601-Datumsformate an der MCP-Boundary validiert, bevor sie in den Knowledge Graph gespeichert werden — lehnt fehlerhafte Datumsangaben frühzeitig ab, statt temporale Abfragen still zu korrumpieren.
NULL-Metadaten bei doppelten add_triple-Aufrufen im Knowledge Graph nachgefüllt — verhindert Null-Pointer-Fehler beim Graph-Traversal nach Neuingestion derselben Konversation.
Leerzeilen und Einrückungen in KI-Antworten während der convo_miner-Ingestion erhalten — Struktur, die vorher verloren ging, wird nun wortgetreu in Drawers gespeichert.
Nicht-ASCII-Symbole (✓ ✗ →) in der Hauptausgabe der CLI ersetzt — behebt kryptische Zeichen in GBK/CP1252-Terminal-Umgebungen (#1034).
UTF-8-BOM in Transkript-Dateien beim Normalize-Schritt behandelt — verhindert einen stillen Parse-Fehler, der bei BOM-codierten Windows-Exporten leere Drawers produzierte.
Selber Encoding-Fix für die Fortschrittsausgabe von closet_llm (#1034).
Durchsetzt das 100ms-Startup-Injection-Budget in der Benchmark-Testsuite — erkennt Regressionen bei der MCP-Server-Kaltstart-Latenz vor dem Release.
Was mich an MemPalace fasziniert
Drei Dinge haben mich überzeugt, aktiv beizutragen:
1. Lokal-First, keine Abhängigkeiten
Keine Cloud-Abonnements, keine API-Kosten für die Kernfunktionalität. ChromaDB und SQLite laufen auf deiner Maschine. Deine Daten bleiben bei dir.
2. Wörtlich statt zusammengefasst
Andere Systeme wie Mem0 oder Zep lassen eine KI entscheiden, was behalten wird. MemPalace speichert alles wörtlich in “Drawers”. Zusammenfassungen existieren als “Closets”, aber das Original bleibt immer erhalten.
3. Die Method of Loci als Software-Architektur
Die Metapher des Gedächtnispalastes ist nicht nur Marketing — sie prägt die gesamte Datenbankstruktur. Wings, Rooms, Halls, Tunnels — das mentale Modell funktioniert intuitiv, weil es auf einer 2.500 Jahre alten Mnemotechnik basiert.
Ausblick
Ich werde dieses Projekt weiter im Auge behalten und regelmäßig beitragen. MemPalace ist eines der wenigen Open-Source-Projekte, bei dem ein prominenter Name nicht nur als Marketing dient, sondern echtes technisches Engagement dahintersteckt — Milla Jovovich hat selbst über 25 Commits beigesteuert und das Architekturkonzept mitentwickelt.
Das Projekt hat sich innerhalb einer Woche von 19.500 auf über 40.500 Stars verdoppelt — das Interesse an KI-Gedächtnissystemen ist offensichtlich enorm. Ob die Benchmark-Kontroverse dem Projekt langfristig schadet oder eher für Aufmerksamkeit sorgt, wird sich zeigen. Die technischen Grundlagen sind solide, die Community wächst rasant, und das Problem — KI-Amnesie — ist real und ungelöst.
Multipass.