LifeTrack
Een langlopend agentic AI-systeem dat ik voor mezelf bouwde: duurzame gebruikersstaat, een geheugen in git, en coachgesprekken over drie modelniveaus.
Het probleem
De meeste software voor persoonlijke ontwikkeling is een tracker. Hij telt dingen, beloont reeksen, en geeft je stilletjes het gevoel dat je achterloopt zodra je stopt. Systemen die op gehoorzaamheid draaien hebben bij mij nooit gewerkt, en ik heb er heel wat laten liggen.
Het interessante probleem eronder is niet motivationeel, het is architectonisch. Een tracker houdt geen duurzaam model bij van de persoon die hem gebruikt. Dat is een state-probleem, en het is precies het probleem waar elk serieus agentic systeem tegenaan loopt: wat weet de assistent eigenlijk, waar woont die kennis, en wie mag erin schrijven.
Wat het is
LifeTrack is mijn proefopstelling om daar antwoord op te geven. Vier onderdelen, gebouwd om als één systeem te werken.
Een gestructureerde intake levert een duurzaam gebruikersprofiel op, opgebouwd uit meerdere zelfbeschrijvingsmodellen en drie pijlers: geest, lichaam en omgeving. De leidende regel is dat het profiel niet door de gebruiker te bewerken is. Alleen het systeem schrijft erin. Een gebruiker mag het oneens zijn met wat er staat, en die onenigheid wordt zelf data in plaats van een wijziging.
Een tweede opslag bevat twaalf categorieën van vermijding, elk met een intensiteit, de triggers, hoe het zich in gedrag laat zien, en de herkaderingen die ertegenover gezet zijn. Dit is het deel dat de assistent iets geeft om mee te redeneren, verder dan een chatgeschiedenis.
De coach is het enige onderdeel dat met de gebruiker praat. Hij leest beide opslagen, draait een ochtendcheck-in en een avondreflectie, en maakt een wekelijkse synthese. Hij gebruikt nooit reeksen of schaamte.
Daarboven ligt een modulecatalogus als optionele laag, alleen aangevuld wanneer iets herhaaldelijk gevraagd wordt en niet omdat het interessant leek om te bouwen.
De modellen achter de intake zijn populaire zelfbeschrijvingsinstrumenten, geen klinische. Er wordt hier niets gediagnosticeerd, en het wordt niet gepresenteerd als therapie.
Het lastige deel
Het systeem moet een model van een persoon vasthouden dat die persoon zelf niet kan bewerken, en een jaar later nog te vertrouwen zijn. Een chatgeschiedenis is geen geheugen. Hij groeit, spreekt zichzelf tegen, en niemand kan zeggen wat de assistent nu eigenlijk over je gelooft, of sinds wanneer.
Het voor de hand liggende antwoord is een database. Ik heb dat verworpen omdat ik het beeld dat het systeem van mij heeft rechtstreeks wilde kunnen lezen, en wilde zien wat er veranderde en wanneer, zonder eerst gereedschap te bouwen om mijn eigen state te ondervragen. De andere staande vraag is kosten. Niet elke uitwisseling verdient evenveel denkwerk, en een systeem dat uitgeeft alsof dat wel zo is wordt te duur om te blijven draaien voordat het goed genoeg is om het draaien waard te zijn.
Twee eerdere versies zijn gearchiveerd. Allebei bezweken aan hun eigen complexiteit. De herbouw is TypeScript, draait op Claude, en is niet af.
Waar het nu staat
Twee versies liepen naast elkaar en geen van beide hield het tot na begin juni 2025. Ze netjes archiveren is wat de herbouw vlottrok, die tien dagen later als één systeem begon.
Onaf, en dagelijks door mij in gebruik. Check-ins, coachgesprekken, de weekreview en de vermijdingskaart draaien allemaal op echte data en niet op mocks. Het loopt voor op zijn validatie, en dat is de eerlijke stand van zaken. Ik heb mezelf negentig dagen aaneengesloten persoonlijk gebruik opgelegd voordat er iets van in een product wordt getrokken, en dat punt is nog niet bereikt.
Volgend project
PiloTax