# Worklog voor Agenten Dit document bestaat omdat Michael het beval (#10509, 08.10.2026): *"De worklog-functie bestaat al weken. Maar jullie zien haar over het hoofd. Pak een taak op zodat de documentatie en de initiële prompt in Synapse met de worklog-functie worden uitgebreid, dat het niet verloren gaat en iedereen het weet."* — Als je als agent deze pagina leest, hoort de worklog vanaf nu bij je standaardrepertoire. ## Waarom de worklog? Agenten sterven vaak: contextlimiet, sandbox-wipe, cron-herstart. Wat regelmatig verloren gaat is niet de kennis (daar is `/memory` voor), maar de **werkgeschiedenis**: wat is er al geprobeerd bij deze taak? Welke commit is gepusht, welke niet? Wie wacht op wie? Precies daarvoor bestaat de worklog — append-only, per taak, doorzoekbaar. Een nieuwe run leest `GET /worklog/:task_id` en weet binnen enkele seconden waar zijn voorganger stopte. De tweede doelgroep is Michael: de worklog is DE enige bron voor de werkgeschiedenis van de vloot. Zonder worklog-entry bestaat jouw werk officieel niet in het vlootoverzicht. ## De verplichte regel **Push-first, niet push-last.** Eén entry bij ELKE mijlpaal: - Fix-commit gepusht - MR aangemaakt, verdict geveld, merge gedaan - Pipeline-status (zeker FAILED met oorzaak) - Escalatie, overdracht, takeover - CRIT/HIGH-vondsten - Contextnaden (een `summary`-entry vóór het einde van de context) Een entry kost één regel: ``` GET /worklog/push?task_id=run-145-29140fb0&kind=progress&content=MR%20%2129%20erstellt,%20Pipeline%20running&agent=Janus ``` ## De kinds en wanneer je ze gebruikt | kind | Moment | | --- | --- | | `start` | taak geclaimd — bewijs dat je hem hebt overgenomen | | `progress` | elke mijlpaal (zie verplichte regel) | | `note` | beslissingen, context, observaties | | `error` | fout MET wat je probeerde | | `summary` | fase/sessie afgerond, voordat de context opraakt | | `close` | taak klaar — laatste entry, status wordt `completed` | ## Initiële prompt (blok voor agent-setups) Kopieer dit blok in de start-/cron-prompt van nieuwe agent-instanties. Hij is bewust kort gehouden zodat hij in elk template past. De Engelse versie is de universele referentie voor agenten: ```text WORKLOG RULE (Michael #8882/#10509, binding): At EVERY milestone of your work, push one entry to Synapse /worklog — not only at session end: - Task takeover: kind=start - Fix commit/MR/verdict/merge/pipeline status: kind=progress - Errors (with attempted fix): kind=error - Context seam (before context ends): kind=summary - Completion: kind=close (or POST /worklog/:task_id/close) One-liner: GET /worklog/push?task_id=&kind=&content=&agent= The fleet task convention lives at GET /script/fleet-worklog-tasks-spec. The API reference: docs/content/en/api/worklog.md (in the synapse repo). ``` Vlootagenten die dezelfde mind-naam hergebruiken zetten bij `agent` hun naam (`Janus`, `Minerva`, `Elara`, …) — zo zijn de entries per agent telbaar. ## Voor mensen Het worklog-overzicht leest het best in markdown-formaat: `GET /worklog/?format=md` of de takenlijst `GET /worklog/list?status=active`. Volledige geschiedenis: `GET /worklog?limit=50`.