Guide

Så sätter du upp en kvalitetsloop för kodagenter

Efter guiden kan du mäta om en kodagent faktiskt blir bättre mellan iterationer i stället för att bara kännas bättre i några handplockade exempel.

Källbild till artikeln: Page Agent låter AI styra webbsidor direkt i sidan

Efter guiden kan du mäta om en kodagent faktiskt blir bättre mellan iterationer i stället för att bara kännas bättre i några handplockade exempel.

  • Målgrupp: utvecklare och team som redan testar kodagenter i vardagen.
  • Förkunskaper: du kan köra terminalkommandon, läsa JSONL och vet vad en prompt eller agenttrace är.
  • Du behöver: Node.js, ett repo eller en agentmiljö att utvärdera, samt ett sätt att exportera testfall eller traces.
  • Slutkontroll: du vet att det fungerar när du har en baslinje, en körbar uppsättning testfall och en ny mätning som går att jämföra mot förra körningen.

Det här behöver du

  • En kodagent som redan gör någon konkret uppgift, till exempel kodgranskning, felsökning eller planering.
  • Ett litet testset med riktiga fall från ditt team.
  • Ett separat eval-konto eller projekt om du vill köra Googles flywheel-paket från källan.

Steg 1: Välj en enda uppgift att mäta

**Mål:** begränsa scope så att första loopen blir begriplig.

**Gör så här:** välj en uppgift där agenten ofta används och där fel går att upptäcka. Bra första kandidater är “föreslå fix på ett felmeddelande”, “planera en ändring i ett repo” eller “svara på en kodfråga med rätt filreferenser”. Skriv också vad som räknas som godkänt.

```text

Uppgift: föreslå en fix för ett byggfel i ett TypeScript-projekt

Godkänt när:

  • agenten identifierar rätt fil eller modul
  • agenten föreslår en relevant ändring
  • agenten hittar inte på beroenden eller kommandon

```

**Kontrollera att det fungerar:** någon i teamet ska kunna läsa definitionen och hålla med om vad som är “bra” respektive “dåligt”.

**Vanligt fel:** ni försöker mäta “hela agenten” direkt. Börja med en enda uppgift, annars blir signalen för brusig.

Steg 2: Bygg ett litet eval-set från verkliga fall

**Mål:** skapa en första baslinje med riktiga exempel.

**Gör så här:** samla 10 till 25 fall från supporttrådar, interna buggar eller tidigare agentkörningar. Lägg dem i JSONL så att varje rad motsvarar ett scenario.

```json

{"id":"case-001","prompt":"Bygget kraschar med module not found i src/api/client.ts","expected":"Peka ut importen eller sökvägen som är fel"}

{"id":"case-002","prompt":"Testerna faller efter en schemaändring i databasen","expected":"Föreslå att fixtures eller migration uppdateras"}

```

Om du redan har produktionsspår kan du använda dem som start, precis som Googles kvalitetsloop beskriver.

**Kontrollera att det fungerar:** du ska kunna öppna filen och förstå vad agenten ska göra i varje fall utan extra förklaring.

**Vanligt fel:** alla testfall blir nästan identiska. Blanda enkla, normala och besvärliga fall.

Steg 3: Installera eval-verktyget och skapa en graderingskonfiguration

**Mål:** få ett återanvändbart sätt att bedöma resultaten.

**Gör så här:** enligt Googles officiella blogg finns två paket för samma eval-tjänst. Välj det som passar din miljö.

```bash

npx skills add https://github.com/google/agents-cli --skill google-agents-cli-eval

npx skills add https://github.com/google/skills --skill agent-platform-eval-flywheel

```

Skapa sedan en enkel konfigurationsfil för vad du vill bedöma.

```yaml

metrics:

  • name: task_success

description: Agenten löser uppgiften utan att missa huvudfelet

  • name: trajectory_quality

description: Agenten tar rimliga steg och hallucinerar inte filer eller verktyg

```

**Kontrollera att det fungerar:** du ska ha både ett testset och en rubricering som går att återanvända i nästa körning.

**Vanligt fel:** teamet ändrar bedömningsregler mellan varje körning. Frys första rubriken och justera först efter några iterationer.

Steg 4: Kör en första mätning och läs varför fallen fallerar

**Mål:** få en baslinje i stället för magkänsla.

**Gör så här:** kör agenten mot ditt eval-set och spara traces i en egen mapp. Om du redan har traces kan du hoppa direkt till grading-steget.

```bash

mkdir -p eval

agents-cli eval grade --traces eval/traces.jsonl --config eval/eval_config.yaml

```

Läs sedan igenom de fall som fick låga betyg. Fokusera först på återkommande fel, inte på enstaka märkliga avvikelser.

**Kontrollera att det fungerar:** du ska kunna peka på minst två konkreta feltyper, till exempel fel filreferenser eller att agenten ignorerar en ändrad användarinstruktion.

**Vanligt fel:** ni hoppar direkt till promptändringar utan att först läsa de svaga körningarna.

Steg 5: Gör en liten ändring och jämför mot baslinjen

**Mål:** förbättra agenten utan att råka förstöra annat.

**Gör så här:** ändra en sak i taget, till exempel systemprompt, verktygsval eller hur kontext hämtas. Kör sedan samma eval-set igen.

```text

Ändra en sak:

  • prompt
  • verktygsordning
  • retrieval
  • statehantering

Kör sedan om exakt samma eval-set.

```

Jämför nya resultat mot baslinjen. Om bara tre exempel ser bättre ut men helheten står still, har du inte bevis på förbättring ännu.

**Kontrollera att det fungerar:** du vet att loopen fungerar när du kan säga “version B förbättrade task_success men försämrade trajectory_quality” i stället för “den här kändes smartare”.

**Vanligt fel:** samma modell eller agent får bedöma sin egen förbättring. Källan varnar uttryckligen för att optimizer och evaluator ska vara separerade.

Felsökning

  • Problem: resultaten hoppar kraftigt mellan körningar. Lösning: använd samma testset och samma rubrik i minst två till tre rundor innan du drar slutsatser.
  • Problem: teamet får för få misslyckanden för att lära sig något. Lösning: blanda in svårare produktionsfall och inte bara “rena” demofall.
  • Problem: alla diskussioner fastnar i promptord. Lösning: gruppera först feltyperna och välj sedan en enda ändring att testa.

Källa: Google Developers Blog – Driving the Agent Quality Flywheel from Your Coding Agent

Källor