MCP-Server · Local-first · Open Source
Memory you trust.
Judgment the model earned.
Soul gibt Modellen ein Gedächtnis, dem man ansieht, woher jede Aussage stammt. Jeder Fakt trägt seine Herkunft, jede Änderung landet in einem append-only Ledger. Alles läuft lokal auf deiner Maschine.
Tests grün · Coverage 89,6 %
Im veröffentlichten npm-Paket 4.0.2, 2026-08-14MCP-Werkzeuge
Aus echtem Handshake gegen das gepackte ReleaseVerifier-Läufe deterministisch
Eval-Pilot 2026-08-14, 0 VarianzCloud-Dienste · Konten · Telemetrie
Für 4.0.2 — der Kernel spricht mit niemandemSoul 4.0.2 — der Gedächtnis-Kernel
Ein MCP-Server, der neben deinem Modell läuft und ihm ein Gedächtnis gibt, das über Sessions hinweg hält. Seit dem 9. Februar 2026 auf npm, aktueller Stand 4.0.2 vom 14. August 2026.
Jeder Fakt weiß, woher er kommt
Beim Speichern wird festgehalten, ob eine Aussage vom Nutzer stammt
(user_statement, mit Zitat) oder eine
Schlussfolgerung des Modells ist
(agent_inference). Widersprüche werden
als solche geführt statt stillschweigend überschrieben — ein
umstrittener Eintrag wird nie als Tatsache ausgeliefert.
Append-only statt überschreiben
Jede Mutation ist ein Ereignis in einem append-only Ledger in
SQLite (WAL-Modus). Der Zustand ist damit rekonstruierbar, und
soul_timeline zeigt, wann welches Wissen
dazukam oder korrigiert wurde.
Nachvollziehbare Laufzeit
Grössere Aufgaben laufen als Run mit Start, Ergebnis und Rückmeldung. Jeder Run erzeugt ein Receipt und wird zu einer Episode verdichtet, die später abrufbar bleibt.
Ehrlich dazugesagt: Diese Receipts sind
self_attested — das System protokolliert,
was es selbst getan zu haben glaubt. Ein unabhängiger,
deterministischer Verifikator, der das gegenprüft, fehlt noch. Wir
nennen den Status im Datenmodell genau so.
Regeln, die nicht verhandelbar sind
Die Richtlinie liegt in
~/.soul/constitution.json und wird im
Code durchgesetzt, nicht nur im Prompt empfohlen: Secrets werden gar
nicht erst gespeichert, injection-verdächtige Inhalte werden
isoliert und nie zurückgegeben, sensible Kategorien warten auf eine
ausdrückliche Bestätigung.
Fussnote zu Receipts:
Sie sind self_attested — ein unabhängiger,
deterministischer Verifikator existiert in 4.0 noch nicht. Das Feld
heisst im Datenmodell genau so, damit der Unterschied zwischen
„protokolliert" und „nachgeprüft" nicht verwischt.
Alles liegt in ~/.soul/memories.db. Kein
Konto, kein Cloud-Dienst, keine Telemetrie, kein ausgehender Verkehr.
Was der Rechner nicht verlässt, kann unterwegs auch nicht abhanden
kommen — und der Export
(soul_export) gehört dir.
In 60 Sekunden installiert
Node.js ab v18. Vollständige Anleitung samt Fünf-Minuten-Demo in den Docs.
23 Werkzeuge, sechs Gruppen
Soul 4.1.0 — der Proxy
Ein OpenAI-kompatibler Endpunkt, der vor dein Modell tritt und genau einen kognitiven Schritt einzieht, bevor die Anfrage weitergereicht wird.
4.1.0 ist in Entwicklung und noch nicht öffentlich erreichbar. Es gibt für den Proxy bislang keine Wirksamkeitsmessung. Der Vergleich Baseline gegen Soul-Arm ist präregistriert, aber noch nicht gefahren. Bis dieser Lauf vorliegt, steht auf dieser Seite keine Zahl zur Leistung von 4.1.0 — auch keine vorläufige.
Intent Analysis
Vor der Ausführung wird bestimmt, worauf die Anfrage tatsächlich zielt: Was ist das Ergebnis, an dem sie gemessen wird? Welche Annahmen sind unausgesprochen? Was wäre ein Fehlschlag, der wie ein Erfolg aussieht?
Task Restructuring
Aus dieser Analyse wird die Aufgabe neu aufgesetzt — mit explizitem Ziel, Reihenfolge und Abbruchkriterien. Das Modell bekommt eine Aufgabe, die schon geordnet ist, statt sie selbst ordnen zu müssen.
Der Scope ist bewusst schmal gehalten: ein Mechanismus, der nicht auf ein einzelnes Modell zugeschnitten ist, statt einer breiten Plattform ohne Nachweis. Ein moderater, aber messbarer Effekt ist mehr wert als ein grosses Versprechen.
Ob der Mechanismus über verschiedene Modelle hinweg gleich gut trägt, ist damit ausdrücklich nicht behauptet. Strategie-Transfer zwischen Modellen ist erfahrungsgemäss schwierig; das wird hier erst dann vertreten, wenn es gemessen ist.
Geplante Schnittstelle
OpenAI-kompatibel — ein geänderter Base-URL genügt, bestehende SDKs funktionieren unverändert. Authentifizierung über einen API-Key aus dem Dashboard, Streaming über Server-Sent Events.
POST /v1/chat/completionsAuthorization: Bearer soul_live_…- SSE-Streaming wie gewohnt
So sieht der Aufruf aus
Wo Soul steht — und wohin es geht
Drei Stufen, sauber getrennt. Was ausgeliefert ist, was gebaut wird, und was ausdrücklich noch Vision ist.
Gedächtnis-Kernel
Local-first MCP-Server mit Provenance, Ledger und auditierbarer Laufzeit. Auf npm, MIT-lizenziert, im täglichen Eigengebrauch.
→Proxy
Intent Analysis und Task Restructuring als OpenAI-kompatibler Dienst mit Konten und API-Keys. Der präregistrierte Vergleich gegen die Baseline steht noch aus.
→Kognitive Middleware
Die geplante Verallgemeinerung der in 4.1.x nachgewiesenen Mechanismen. Wird bewusst erst dann ausformuliert, wenn die Messungen aus 4.1.x vorliegen. Heute ist das eine Absicht, kein Produkt.
→Die Trennung ist Absicht. 4.0.2 ist ein Gedächtnis-Kernel und bleibt es; der Proxy ist ein eigenes Stück Software. Was für die eine Stufe gemessen wurde, gilt nicht automatisch für die andere — und wird hier auch nicht so dargestellt.
Was gemessen ist — und was nicht
Jede Zahl hier hat einen Lauf hinter sich. Was fehlt, steht ebenso dabei: eine Einschränkungsspalte, die nicht leer ist, ist der Punkt der Tabelle.
| Was | Ergebnis | Herkunft | Einschränkung |
|---|---|---|---|
| Testsuite 4.0.2 | 373 / 373 | Im veröffentlichten npm-Paket 4.0.2 (2026-08-14); Build und Tests laufen vor jedem Publish |
Tests belegen Korrektheit gegen die eigene Spezifikation, keinen Leistungsvergleich. |
| Testabdeckung | 89,61 % | Statements 89,61 · Branches 79,01 · Functions 91,20 · Lines 89,61 Schwellen in CI: 88 / 75 / 89 / 88 |
Abdeckung sagt, welche Zeilen ein Test durchläuft — nicht, ob er das Richtige prüft. Mutationstests stehen aus. |
| Werkzeuge im gepackten Release | 23 Tools | Smoke-Test über echten MCP-Handshake gegen [email protected] |
Gezählt wurde, was der Server im Handshake meldet — nicht die Tiefe der einzelnen Werkzeuge. |
| Veröffentlichung auf npm | seit 2026-02-09 | npm-Registry, Paket soul-mcpaktuell 4.0.2 (2026-08-14), MIT |
Veröffentlicht zu sein sagt nichts über Verbreitung aus. Download-Zahlen führen wir hier bewusst nicht als Qualitätsbeleg. Signierte Provenance ist noch nicht eingerichtet. |
| Performance-Baseline (Recall-Latenz) |
p50 3,46 ms | 50.000 Memories, Treffer im Volltextindex (p95 15,98 ms). Apple M3, Node v25.9.0, 2026-08-13. Nachfahrbar mit npm run perf-baseline |
Eine lokale Einzelmaschine ohne Nebenlast, kein Lasttest. Nur der lexikalische Pfad — die semantische Schicht war aus. Gemessen an 4.0.1; für 4.0.2 nicht wiederholt. Offener Befund: Abfragen ohne Treffer waren bei 50.000 Einträgen langsamer (p50 18,68 ms) als solche mit Treffer; der Verdacht liegt auf einem Nachlauf des WAL-Checkpoints, geprüft ist er nicht. |
| Verifier-Pipeline der präregistrierten Eval | 30 / 30 deterministisch | Eval-Pilot 2026-08-14 3 Tasks × 5 Wiederholungen × 2 Arme |
Das misst die Messapparatur, nicht Soul. Belegt ist, dass die Pipeline reproduzierbar dasselbe Urteil fällt (0 Varianz) — nicht, dass Soul ein Modell besser macht. |
| Studie v10: eingepflanztes Verständnis vs. nackte Baseline | 0,86 | Einpflanzungs-Score, 2026-08-06 products/soul-mcp-v2, Studie v10 |
Gemessen an einem Vorläufer-Stand, der nicht byte-gleich mit dem ausgelieferten Kern ist. Eine längenkontrollierte Replikation steht aus. |
| Wirksamkeit des 4.1.0-Proxy | — offen — | präregistriertes Protokoll liegt vor, Lauf noch nicht erfolgt |
Es gibt hierzu keine Zahl. Sobald der Vergleich Baseline gegen Soul-Arm gefahren ist, steht das Ergebnis hier — auch wenn es negativ ausfällt. |
Zur Zahl 0,86: Studie v10 misst den Einpflanzungs-Score eines Vorläufer-Stands — nicht die Leistungsverbesserung des fertigen 4.0.2. Die beiden sind nicht dasselbe und werden hier auch nicht als dasselbe ausgegeben. Echte Messungen existieren ausschliesslich dort, wo das Evidenz-Inventar sie führt; was dort fehlt, fehlt auch hier.
- Receipts sind überwiegend
self_attested; ein unabhängiger Verifikator fehlt. - SQLite im WAL-Modus: gegen
SQLITE_BUSYgreifen ein Wartezeitlimit und ein Wiederholversuch an der Verbindungsstelle. Ein Lasttest unter echter Nebenläufigkeit steht weiterhin aus — die Performance-Baseline lief ohne Parallellast. - Eine Context-Firewall ist prinzipiell nicht lückenlos — gegen Prompt-Injection gibt es keine Garantie.
- Mutationstests fehlen: die Abdeckung sagt nicht, ob die Tests das Richtige prüfen.
npm audit: im frisch installierten npm-Paket 0 Befunde (129 Produktions-Pakete) · im Repo-Baum 4 (2 hoch, 2 mittel), mit devDependencies 6. Alle transitiv; drei der vier hängen am HTTP-Transport des MCP-SDK, den der stdio-Server nicht lädt.
Kein Produktivitätsfaktor, keine Prozentzahl zur Modellverbesserung, keine Vergleiche mit Systemen, gegen die nie gemessen wurde. Zahlen, die einmal aus Pitch-Material stammten und keinen Lauf hinter sich haben, sind aus diesem Auftritt entfernt worden und kommen nicht zurück.
Zwei Wege hinein
Soul 4.0.2 — direkt installieren
Kein Konto nötig, kein Schlüssel, keine Anmeldung. Ein Befehl, und der Server läuft lokal.
Soul 4.1.0 — Konto und API-Key
Konto anlegen und Schlüssel verwalten geht schon. Der Proxy selbst ist noch nicht erreichbar — das Dashboard sagt dir das offen, statt einen Schlüssel vorzutäuschen.