103 stjerner på ti dager og 110 poeng på Hacker News: Rust-prosjektet Statewright har truffet en nerve hos utviklere som er lei av at KI-agentene deres roter med 30+ verktøy og ender i loop der de leser samme fil fem ganger uten å redigere. Plugin-en legger en tilstandsmaskin oppå Claude Code, Codex, Cursor og opencode. Planlegging-fasen får kun Read, Grep og Glob. Når agenten transitionerer til implementering, åpnes Edit og Write med tak på 20 endrede linjer per fil. Testing slipper bare gjennom hvitelistede kommandoer som pytest og cargo test.
Det interessante er hvilke modeller dette løfter. På et SWE-bench-subsett på fem oppgaver gikk to lokale modeller (13,8 GB gpt-oss og 19,9 GB gemma4:31b) fra 2 av 10 til 10 av 10 med Statewright-bindinger. Samme oppgaver, samme maskinvare. Frontier-modeller bruker færre tokens før de er ferdige. Under 13 GB kollapser det fortsatt: modellen klarer å produsere tool-calls, men beholder ikke nok filkontekst til å gjøre nøyaktige endringer.
«Instead of making the model bigger, make the problem smaller.» > — Statewright-prosjektet på GitHub
Forskjellen fra et observabilitetslag ligger i håndhevingen. Tool-restriksjoner håndheves på protokollnivå før modellen ser dem, ikke som råd i system-prompten. Bash blokkerer redirect og destruktive operasjoner i ikke-skrive-stater selv om Bash er tillatt. Edit-guard avviser diff som overskrider max_edit_lines. Hver state har sin egen allowed_tools-liste og kan ha guards som programmatisk sjekker kontekstdata før transition (eq, gt, exists). Hele kjernen er en Rust-motor uten LLM i loopen.
Hva bør du gjøre?
- Installer plugin-en i Claude Code med
/plugin marketplace add statewright/statewrightog kjør bugfix-workflowen for å se transition-mekanikken i praksis. - Skriv en egen workflow-JSON tilpasset prosjektet ditt. Start med tre stater (planning, implementing, testing) og legg på guards bare når du ser konkret atferd du vil unngå.
- Test mot en lokal modell hvis du har 13 GB+ GPU-minne. Forskjellen er størst der modellen ellers ville flaile på SWE-bench-oppgaver.
Bakgrunn
Tilstandsmaskiner er ikke DAG-er. De looper og prøver om igjen, som er nettopp det agentisk arbeid trenger. Statewrights kjerne-engine (crates/engine) er Apache 2.0 og embeddable uten runtime-avhengigheter. Fri til solo-utviklere og enkeltteam som self-hoster; managed cloud på statewright.ai håndterer workflow-lagring og MCP-gateway. Gratis-laget gir tre workflows og 200 transitions per måned. Cursor-støtten er foreløpig advisory; MCP alene kan ikke gate verktøy-kall i Cursors arkitektur.