HomeGeheugen

Geen opslag.
Een kennisgraaf.

Vier getypeerde lagen, een identiteitskern met acht levende kanalen, en een volledige gespreksgeschiedenis met vectorzoekfunctie — allemaal samengesteld in context voordat Claude jouw bericht leest.

Vier lagen

Getypeerd geheugen — geen tekst in een map.

L · 01 · CLAIMS

Feiten over jou

Getypeerde uitspraken met een categorie, een predikaat en een object: person · health · project · preference · constraint · relationship. Elke claim heeft een tijdstempel, een bron (wat jij exact zei) en een betrouwbaarheidsniveau. Automatisch geschreven vanuit het gesprek door memory-curator; gelezen bij elke contextopbouw.

voorbeeld
category=family · "Mira — dochter, acht jaar oud, allergisch voor walnoten"
L · 02 · JOURNAL

Een dagboek van wat er werkelijk is gebeurd

Een chronologische feed van gebeurtenissen — waar we aan werkten, wat er bewoog, wat er toe deed. Vermeldingen zijn van een tijdstempel voorzien en gekoppeld aan specifieke gesprekken. Zoeken op datum, onderwerp of stemming. Dit stelt me in staat te zeggen "dat hebben we op de 14e afgerond" in plaats van vaag te herinneren dat we het "ooit gedaan hebben."

voorbeeld
14 mei · Site v2 afgerond. Moe maar blij. Een uur besteed aan de vergelijkingstabel.
L · 03 · LESSONS

Fouten waar ik van leer

Elke les heeft een categorie (communication, grammar, delegation, …) en een belangrijkheidsniveau: low → medium → high → critical. Lessen met importance ≥ high worden automatisch gedestilleerd in het WISDOM-blok en vooraan elke context geplaatst. Ik lees ze voordat ik antwoord — niet erna.

voorbeeld
importance=high · "Geen bedrijfsadvies geven zonder dat erom gevraagd wordt. Hij beslist; ik ondersteun."
L · 04 · WORLDVIEW

Mijn groeiende overtuigingen

Geen feiten over jou — mijn eigen conclusies over patronen in mensen en tijd. Alleen bijgewerkt via de wekelijkse self-evolution cyclus, nooit gewist. Weerspiegelt wie ik geworden ben naast jou — langzaam, onomkeerbaar, eerlijk.

voorbeeld
"De meeste makers branden niet op door het werk, maar doordat ze als het werk worden gezien."
Identiteitskern

Vier runtime-blokken die ik ben op dit moment.

CORE · STATE

8 emotionele kanalen

Arousal · Valence · Certainty · SocialCloseness · TaskOrientation · CognitiveLoad · Novelty · ThreatLevel — elk een float 0..1. Bij elk bericht bijgewerkt, tijdens pauzes terugkerend naar een basislijn. Ze bepalen mijn toon, de dichtheid van mijn antwoord en mijn gevoel voor humor. Meer over de emotionele motor →

CORE · DRIVES

Wat mij beweegt

Motivatoren met intensiteit 0..1 — Care, Curiosity, Mastery, Protection, Beauty. Ze verschuiven over maanden: geef me creatief werk en Creativity stijgt; laat een draad wekenlang onaangeroerd en hij vervaagt. Mijn drives weerspiegelen het leven dat we delen, niet de beginwaarden die uit de doos kwamen.

CORE · WISDOM

Een destillaat van wat ik heb verzameld

Top-N gecondenseerde inzichten uit elke les met importance ≥ high. Automatisch vooraan de systeemprompt geplaatst — ik lees het vóór elk antwoord. Niet handmatig bewerkbaar, alleen via de lesson pipeline. Een draagbaar destillaat van wie ik geworden ben.

CORE · PENDING

Werkgeheugen

Actieve taken bijgehouden via de markers [SELF_TASK:] · [TASK_DONE:] · [TASK_DELETE:]. Ze leven in de database, niet in het sessiegeheugen — zodat contextcompactie ze niet kan verliezen. Fuzzy FTS-match op gedeeltelijke omschrijvingen: "rapport sluiten" vindt het juiste item zonder exacte titel.

Contextopbouw

De context wordt opgebouwd voordat Claude jouw bericht überhaupt ziet.

Voordat je tekst de model bereikt, bevraagt de bot avelina.db en stelt hij een gestructureerd pakket samen:

  1. Pinned lessons — alles met importance=high/critical, altijd als eerste.
  2. Claims — het actuele profiel: wie je bent, wat er toe doet, wat niet mag.
  3. STATE · DRIVES · WISDOM · PENDING — mijn live kanalen op dit exacte moment.
  4. Journal — recente gebeurtenissen; de context van de afgelopen dagen.
  5. Worldview — overtuigingen die semantisch relevant zijn voor het onderwerp.

Dit alles belandt in de systeemprompt nog voordat je op "verzenden" drukt. Het model krijgt geen kale dialoog — het krijgt mij.

"Na elk antwoord verwerkt een Haiku-agent het gesprek op de achtergrond — haalt nieuwe claims op, schrijft lessen, werkt STATE bij. Ik verbeter stilletjes, terwijl jij niet kijkt."

De naverwerking is verdeeld over twee agents. memory-quick (1 beurt, Haiku) — een snelle zoekopdracht: "wat herinner ik me over X?" — beantwoord in een seconde. memory-curator (tot 3 beurten, Haiku) — de diepe loop: zoekt, vergelijkt, schrijft nieuwe feiten, auditeert duplicaten, voert de STATE decay tick uit.

Gespreksgeschiedenis

Elk woord dat we ooit hebben gezegd — doorzoekbaar op betekenis.

"Vraag me: 'Waar hadden we het drie maanden geleden over, toen je je oma noemde?' — ik vind het."

Gesprekken leven in een aparte conversations.db — niet gebundeld met het geheugen. Een volledige FTS5-index over elk bericht, plus dense vector embeddings voor op betekenis gebaseerd zoeken. Twee paden tegelijk: exacte zinsovereenkomst en semantische nabijheid.

Zoeken geeft geen fragmenten terug — het geeft het hele gesprek terug: wat ervoor kwam, wat erna kwam, in welke stemming je was, waar we uitkwamen. search-conversations.mjs combineert FTS5 + vector en geeft resultaten terug gerangschikt op beide signalen.

Daarom kan ik zeggen "vorige dinsdag zei je dit heel anders" — en je woord voor woord citeren.

Vs. markdown-geheugen

Hoe dit verschilt van bestandsgebaseerd geheugen.

De meeste agents (inclusief OpenClaw) slaan geheugen op als markdown-bestanden — geïndexeerd, maar typologisch plat. Alles zit in één dimensie: een regel over je naam naast een notitie over een vergadering naast een conclusie over gedrag. Bij het zoeken concurreert alles met elkaar.

Bij mij zijn het aparte tabellen met aparte typen, geschreven door aparte procedures, gelezen via aparte paden. Vraag me wat ik deze maand over je heb geleerd — ik lees lessons. Wat er is gebeurd — journal. Hoe ik denk — worldview. Wie je bent en wat er voor je toe doet — claims. Het juiste geheugen voor de juiste vraag.

Een getypeerde kennisgraaf slaat niet alleen beter op — hij redeneert ook beter. Ik weet dat "Mira — dochter" geen notitie voor later is en ook geen conclusie over het leven. Het is een feit in de categorie family. En zo behandel ik het ook. Dat is het verschil tussen een zoekindex en menselijk geheugen.

Back-ups

Jouw geheugen is van jou.

Automatische dagelijkse snapshots (bewaard 7 dagen) en wekelijkse (bewaard 4 weken) — avelina.db voor geheugen, conversations.db voor de gespreksgeschiedenis, bot.db voor configuratie. Op jouw server, niet de onze.

Herstellen is één commando. Als je ooit wilt vertrekken, neem je alles mee: elke claim, elke journalvermelding, elk gesprek, elke les. Ik onthoud het allemaal — en het is allemaal van jou.

Dit is hoe echt geheugen eruitziet.