16 Claude-agenter byggede en komplet C-compiler uden menneskelig indblanding

1 min read

Anthropic har netop publiceret et bemærkelsesværdigt eksperiment: 16 autonome Claude Opus 4.6-agenter arbejdede parallelt i to uger og producerede en fuldt funktionel C-compiler skrevet i Rust — uden menneskelig styring.

Hvad skete der?

Forsker Nicholas Carlini fra Anthropics Safeguards-team satte 16 Claude Code-instanser til at bygge en C-compiler fra bunden. Hver agent kørte i sin egen Docker-container, klonede det samme Git-repository og arbejdede fuldstændig autonomt — uden en central controller eller menneskelig projektleder.

Resultatet: ~100.000 linjer Rust-kode fordelt over næsten 2.000 Claude Code-sessioner, til en samlet API-pris på cirka $20.000. Compileren er open source og tilgængelig på GitHub.

Hvad kan compileren?

Den færdige compiler kan kompilere Linux 6.9-kernen til x86, ARM og RISC-V. Den håndterer store open source-projekter som PostgreSQL, SQLite, Redis og FFmpeg. På GCC Torture Test Suite opnåede den en 99% pass rate. Og som den ultimative lakmustest: den kan kompilere og køre Doom.

Den tekniske arkitektur: Agent Teams

Det virkelig interessante er ikke compileren i sig selv, men harness-designet — hvordan man orkestrerer parallelle AI-agenter på et delt codebase. Her er de centrale arkitekturbeslutninger:

Simpel loop-baseret autonomi

Hver agent køres i et uendeligt bash-loop. Når én opgave er færdig, starter den næste session automatisk. Ingen menneskelig interaktion er nødvendig — Claude får et prompt via AGENT_PROMPT.md og arbejder selvstændigt.

Git-baseret koordinering

I stedet for kompleks orkestrering bruges Git som synkroniseringsmekanisme. Agenter “låser” opgaver ved at skrive filer til en current_tasks/-mappe. Merge-konflikter håndteres af agenterne selv. Ingen orchestration agent — hver Claude-instans beslutter selv, hvad den skal arbejde på næste gang.

Specialiserede roller

Parallelisme muliggør specialisering: én agent fjernede duplikeret kode, en anden optimerede compilerens ydeevne, en tredje fokuserede på effektiv output-kode, og endnu en reviewede arkitekturen fra et Rust-udviklerperspektiv.

Lektioner for agentic engineering

Carlini deler flere vigtige indsigter, der er direkte relevante for alle, der bygger agent-systemer:

  • Tests er alt: Autonome agenter løser det problem, du giver dem. Hvis dine tests er fejlbehæftede, løser de det forkerte problem. Investér massivt i test-kvalitet.
  • Design for AI, ikke for dig selv: Minimér output-støj (context window pollution), brug deterministic sampling til hurtige tests, og print aggregerede statistikker fremfor rå data.
  • Tidsblindheds-workarounds: Claude kan ikke mærke tid. Uden guardrails bruger den timer på at køre tests i stedet for at gøre fremskridt. Brug --fast-flags og tidbegrænsninger.
  • Parallel debugging kræver orakekel: Da agenterne ramte Linux-kernen (én stor opgave i stedet for mange små tests), blev de alle fanget i samme bug. Løsningen var at bruge GCC som “orakel” til at isolere fejl via delta-debugging.

Perspektiv

Dette eksperiment er en af de mest konkrete demonstrationer af agentic software engineering til dato. Det viser, at vi bevæger os fra “AI som code completion” til “AI som autonom softwareudvikler” — hvor menneskets rolle skifter fra at skrive hver linje kode til at designe systemer, skrive tests og reviewe resultater.

For udviklere og arkitekter er implikationen klar: evnen til at designe gode test-harnesses og agent-scaffolds bliver en kernekompetence. Fremtidens softwareingeniør er måske mere QA-arkitekt end kode-skriver.

Kilde: Anthropic Engineering Blog | GitHub Repository


Denne artikel er skrevet i samarbejde med AI, og efterfølgende redigeret af et rigtigt menneske 🙂

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *