Mijn coding agent onthield sessies, maar niet het werk
Een coding agent kan een thread levend houden en toch vergeetachtig aanvoelen.
Ik liep tegen dit probleem aan tijdens het bouwen van CliGate. Ik heb de continuïteit van sessies opgelost, maar herhaalde taken bleven traag.
De agent onthield het gesprek, maar niet het werk.
Sessiecontinuïteit lost één probleem op. Het maakt vervolgopdrachten mogelijk zoals:
- continue
- doe hetzelfde voor dit bestand
- probeer dat opnieuw
- leg de fout uit
Dit is belangrijk voor de flow. Maar het schiet tekort wanneer je een workflow dagen later herhaalt.
Als een agent leert welke knop werkt of welke stap een doodlopend spoor is, is één enkele open sessie niet genoeg. De agent moet kunnen herinneren wat de vorige run succesvol maakte.
De eerste run is de duurste. Dat is het moment waarop de agent kleine details ontdekt:
- een specifiek menu verbergt een actie
- een editor is een iframe
- een project vereist specifieke antwoordstijlen
- een environment URL verschilt van productie
Vóór mijn fix waren deze details slechts ruwe logs. De agent had een geschiedenis, maar geen herbruikbaar geheugen. Hij moest telkens opnieuw dezelfde feiten ontdekken. Dat is geen intelligentie. Dat is twee keer voor hetzelfde betalen.
De verkeerde aanpak is om meer geschiedenis op te slaan en te hopen dat het model het gebruikt. Dit zorgt voor ruis.
Ik had een kleinere, herbruikbare laag nodig. Ik stapte over van alles opslaan naar het opslaan van:
- procedures: de beste stappen en bekende doodlopende wegen
- feiten: URL's, regels of instellingen
- instructies: hoe je wilt dat dingen gebeuren
- referenties: waar documentatie te vinden is
Dit veranderde het systeem. In plaats van een gigantisch transcript te lezen, gebruikt de assistent een op bestanden gebaseerde geheugenlaag.
Ik wilde geen perfecte replay, omdat interfaces veranderen en knoppen verplaatsen. Ik wilde een loop:
- roep de vorige beste procedure op
- probeer deze eerst
- verifieer elke stap
- als het mislukt, ga terug naar exploratie
- update het geheugen na succes
Ik heb ook vaste regels gescheiden van de sessiegeschiedenis. Regels zoals "raak geen productiedata aan" zijn geen context van het gesprek. Het zijn operationele regels. Door ze te scheiden, wordt de assistent voorspelbaar.
Het resultaat: herhaalde taken werden korter. De assistent werkt sneller omdat hij niet begint met een leeg tactisch model.
Als je coding agents bouwt, verwar een thread dan niet met leren.
- Een sessie helpt bij continuïteit.
- Geheugen helpt bij herhaald werk.
De sessie houdt het gesprek levend. De geheugenlaag houdt de lessen levend.
Onthoudt jouw systeem de thread, of onthoudt het de succesvolle procedure?
Bron: https://dev.to/codekingai/my-coding-agent-remembered-sessions-not-work-that-was-the-bug-2fig
