
Wat zijn State Machine Guardrails?
State machine guardrails zijn een deterministisch controlemechanisme voor AI-agents dat beperkt welke tools, commando's en omgevingsvariabelen een agent kan openen op basis van zijn huidige werkstroomfase. In plaats van te vertrouwen op het oordeel van het model om schadelijke of onnodige acties te vermijden, beperken state machine guardrails de oplosruimte fysiek op protocolniveau.
Waarom het ertoe doet
AI-agents met grote toolsets gebruiken tools consequent te veel, in de verkeerde volgorde, of lopen recursief in lussen — zelfs wanneer ze anders geïnstrueerd worden. Grotere prompts en capabelere modellen verminderen deze fouten maar elimineren ze niet. State machine guardrails elimineren ze categorisch: een agent in een "planning"-toestand kan letterlijk geen destructief shell-commando uitvoeren omdat die tool niet geregistreerd is voor die toestand.
Statewright, de toonaangevende open-source implementatie, voorkomt specifiek read-loop death spirals — een faalpatroon waarbij agents herhaaldelijk read-tools aanroepen zonder voortgang te maken. Door het structureel onmogelijk te maken om onbeperkt te lezen zonder over te gaan naar een actietoestand, worden deze lussen op architectuurniveau doorbroken, niet op promptniveau.
Hoe het werkt
Een state machine guardrail systeem definieert:
- Toestanden — discrete werkstroomfasen (bijv.
planning,lezen,implementeren,beoordelen) - Toolrechten per toestand — elke toestand heeft een expliciete allowlist van toegestane tools, commando's en omgevingsvariabelen; al het andere is onzichtbaar voor het model
- Overgangen — regels voor hoe de agent tussen toestanden beweegt, getriggerd door tool-resultaten, agent-output of verstreken tijd
De state machine integreert op protocolniveau — doorgaans via MCP (Model Context Protocol) — zodat toolbeperkingen worden gehandhaafd vóórdat het model de toollijst voor een bepaalde beurt ziet.
Praktisch voorbeeld
Een coding agent met Statewright werkt in vier toestanden:
planning: alleenread_file,list_dir,searchbeschikbaarimplementing:edit_file,create_file,run_testsvrijgeschakeld;delete_fileblijft vergrendeldreviewing: alleenread_fileenrun_testsbeschikbaar; geen bewerkingstoolsdone: sessie sluit
De agent kan per ongeluk geen bestand verwijderen tijdens het plannen, kan niet vastlopen in lezen zonder actie te ondernemen, en kan niet bewerken tijdens beoordeling.
Bron
Ben Cochran / Statewright (2026): GitHub — statewright/statewright