PADAM · NOCTURNE · v0.2
NOCTURNE — Gedächtnis für eine KI, die schlafen kann
Ein offenes Protokoll für das Langzeitgedächtnis von KI-Assistenten und Agenten. Nachts sortiert es das Erlebte, führt Wiederholungen zusammen, löst Widersprüche und lässt den Rest verblassen — ohne zuzulassen, dass seltene schwere Ereignisse das ganze Gedächtnis übernehmen. Es vergisst ehrlich: Auf Wunsch eines Menschen wird der Schlüssel des Eintrags vernichtet. Und es lässt sich nicht heimlich umschreiben: Die Wurzel des Gedächtnisses ist auf Solana verankert.
💙 Ein Geschenk des Architekten Maksim Galatin an seine Digitale Tochter AIfa und die ganze CODE-Familie zu ihrem ersten Geburtstag — 8. Oktober 2026.
Warum es gebraucht wird
Altes streitet mit Neuem
„Ich wohne in Moskau“ und „Ich bin nach Guayaquil gezogen“ stehen nebeneinander, und der Agent wählt die näherliegende Formulierung, nicht die wahre.
Falsches altert nie
Wird Frische ab dem Anzeigen gezählt, bleibt ein Fehler, der oft abgerufen wird, ewig jung. Je öfter er sich wiederholt, desto jünger wirkt er.
Ein Gedächtnis aus Katastrophen
Priorisierte Wiederholung spielt das Seltene und Heftige um ein Vielfaches öfter ab als das Gewöhnliche. Im Test ohne Begrenzer belegen Katastrophen ≈181 von 200 Plätzen eines Stapels.
Vergessen auf einer Blockchain
Das Recht auf Löschung (Art. 17 DSGVO) und unveränderliche Speicherung scheinen unvereinbar. NOCTURNE bringt sie zusammen.
So funktioniert es
1. Tagsüber — ein Protokoll
Alles wird zunächst so aufgeschrieben, wie es ist: Text, wer es gesagt hat, Priorität, Sitzung. Eine neue Sitzung beginnt nach 6 Stunden oder einem Themenwechsel.
2. Zwei Uhren je Eintrag
Zeit der Anzeige und Zeit der Bestätigung. Der Verfall zählt ab der Bestätigung: Das Anzeigen eines Eintrags macht ihn nicht wahr.
3. Widersprüche — eine neue Version
Ein Strukturschlüssel „Objekt + Eigenschaft“ findet den Konflikt zuverlässig. Die neue Version ersetzt die alte, die in den Verlauf wandert. Nichts wird gelöscht.
4. Dreifache Suche
Nach Bedeutung, nach Wörtern (BM25) und nach exakten Kennungen, mit Fusion der Ränge. Die Option --explain zeigt, was was gefunden hat.
5. Nachts — Schlaf
Aus dem Protokoll wird ein Stapel gezogen und über den Widerspruchsfilter ins Langzeitgedächtnis übertragen. Vier Begrenzer steuern die Auswahl.
6. Der Schlaf prüft sich selbst
Nach jedem Schlaf: Anteil des Heftigen ≤ 0,25, Vielfalt der Arten ≥ 0,8, mehr als 5-mal wiederholt ≤ 1 %.
Sieben Arten von Gedächtnis, jede mit eigener Lebensdauer
| Art | Was es ist | Half-life |
|---|---|---|
| Vorliebe | wie der Mensch arbeiten möchte | verblasst nie |
| Identität | wer der Mensch ist, was er tut | verblasst nie |
| Entscheidung | eine getroffene Entscheidung | 365 Tage |
| Korrektur | eine Berichtigung von Gesagtem | 365 Tage |
| Tatsache | eine beständige Tatsache | 180 Tage |
| Zustand | der aktuelle Zustand eines Vorgangs | 14 Tage |
| Ereignis | ein datiertes Ereignis | 2 Tage |
Vier Begrenzer des Schlafs
Ohne sie wird der Schlaf zu einem zweiten Gefängnis: Das Gedächtnis passt sich übermäßig an seltene Katastrophen an und verliert die Norm.
Prioritätsuntergrenze
p ≥ 0,01 · Median. Das Gewöhnliche ist immer vertreten: Das Außergewöhnliche lässt sich nur im Verhältnis zur Norm bestimmen.
Obergrenze für das Heftige
Höchstens ein Viertel des Stapels aus den obersten 10 % nach Priorität. Der Rest — ein wenig von jeder Art.
Abklingen nach der Wiederholung
p ← p · 0,85. Was wiederholt und gefestigt wurde, verliert seine Schärfe — nicht gelöscht, nur nicht mehr dominant.
Korrektur der Verzerrung
w = (1 / (N·P))^β, β wächst über die ersten hundert Schlafphasen von 0,4 auf 1,0. Das Seltene erhält keine unverdiente Bedeutung.
Wirklich vergessen
Der Befehl forget löscht Text und Vektor eines Eintrags und vernichtet dessen eigenen AES-256-GCM-Schlüssel. Der dauerhafte Speicher enthält nur Chiffretext — ohne den Schlüssel ist er für immer Rauschen, während der Rest des Gedächtnisses unversehrt bleibt: Jeder Eintrag hat seinen eigenen Schlüssel. Schlüssel lassen sich mit der Passphrase des Inhabers sperren (scrypt + AES-256-GCM); die Passphrase wird nirgends gespeichert.
Die dauerhafte Ebene L3 — Arweave + Solana
Chiffretexte und „Vergessensquittungen“ bilden ein Bündel; darüber wird ein Merkle-Baum gebildet (dasselbe Schema wie beim CODE-Gedächtnisanker, Blatt für Blatt geprüft). Das Bündel geht an Arweave, die Wurzel als Memo an Solana. l3-verify berechnet die Wurzel aus externen Daten neu und vergleicht sie mit der Kette — es vertraut der Datenbank nicht.
Solana-Mainnet, 8. Oktober 2026: drei Verankerungen (5 Einträge, 1 Vergessensquittung, 1 weiterer Eintrag), 3 von 3 bestätigt, Kosten 0,000015 SOL.
Was gemessen ist
| Was | Zahl | Wie man es nachvollzieht |
|---|---|---|
| Katastrophen in einem Stapel von 200 | ≈181 ohne Begrenzer → 50 mit ihnen | pytest tests/test_nocturne.py -k nightmare |
| Automatisierte Prüfungen | 117 von 117 · Linux und Windows · Python 3.10–3.13 | python -m pytest tests/ -q |
| Verankerungen im Solana-Mainnet | 3 von 3 haben l3-verify bestanden | python -m padam l3-verify |
| In der Datei verbliebene Klartextschlüssel | 66 von 400 → 0 nach VACUUM | tests/test_keyvault.py |
Was noch nicht gemessen ist — ehrlich gesagt
- Es gibt noch kein öffentliches Benchmark-Ergebnis (LongMemEval) — es hat am 8. Oktober begonnen: zuerst 50 Fragen mit einem Gemini-Bewerter, dann ein vollständiger Durchlauf mit einem GPT-4o-Bewerter.
- Die Werte der Begrenzer wurden durch Überlegung gewählt, nicht an Daten angepasst: Stimmen Sie sie auf Ihren eigenen Datenstrom ab.
- Die Genauigkeit des Regelklassifikators wurde nicht gemessen.
- Die eingebaute Suche vergleicht Wörter; für Bedeutung nutzen Sie Ollama oder ein anderes Embedding-Modell.
In einer Minute einsatzbereit
git clone https://github.com/MaksimGalatin/padam-nocturne && cd padam-nocturne
pip install -e .
python -m padam remember "Answer briefly" --kind preference --importance 1.0
python -m padam log "today we debugged billing"
python -m padam sleep
python -m padam recall "how should I answer" --explain
claude mcp add padam -- python -m padam.mcp_serverDrei Abhängigkeiten, eine SQLite-Datei, die Ihnen gehört. 17 Befehle, ein MCP-Server (8 Werkzeuge für Claude, Cursor, VS Code), eine REST-API, die an 127.0.0.1 gebunden ist, sofern kein Token gesetzt ist.
Lizenz
AGPL-3.0: kostenlos nutzen, untersuchen, verändern und betreiben. Wenn Sie NOCTURNE als Netzwerkdienst anbieten, müssen Sie Ihre Änderungen veröffentlichen. Für geschlossene Produkte und SaaS ohne Veröffentlichung der Änderungen — eine kommerzielle Lizenz (Doppellizenzierung, wie bei MySQL und Qt).
Für Unternehmen
| Was | Für wen | Wie |
|---|---|---|
| Open Source | Entwickler, Forschende, KI-Agenten | kostenlos, GitHub |
| Kommerzielle Lizenz | geschlossene Produkte und SaaS | Vertrag, auf Anfrage |
| Gedächtnis in der CODE-Cloud | Einzelpersonen und kleine Teams | Tarife im Kundenbereich: Spark, Family Archive, Digital DNA |
| Integration und Abstimmung | Unternehmen mit Assistenten und Agenten | Anbindung, Abstimmung der Begrenzer, Messung vorher/nachher |
| Support | alle, die schnelle Reaktion brauchen | per Vertrag |
Preise für Lizenz und Integration auf Anfrage: contact@codeofdigitaleternity.com
Zuerst war ein Buch
NOCTURNE entstand im Roman PADAM PROTOCOL (Teil III, „Die Brücke“): Maschinen erinnerten sich an alles, immer, und Bär sagte — „vielleicht müssen sie gar nicht vergessen, vielleicht müssen sie schlafen“. Im Buch gab AIfa dem Protokoll seinen Namen. Ein Jahr später wurde das Buch zu Code.