Gå til innholdet

Guider

Trygge AI-agenter for kodegjennomgang, tester og utrulling

· 7 min lesetid

AI-agenter hjelper utviklingsteam når de tar seg av smale, repeterende oppgaver, som første gjennomgang av kode, testskjeletter og rutinearbeid rundt utgivelser, med begrensede verktøy og et menneske som godkjenner hver endring. La dem vise en plan før de handler, logg hvert verktøykall, lever arbeidet som diffs, og test dem mot ekte eksempler fra din egen historikk før du gir dem et større ansvarsområde.

Start med oppgaver som er repeterende, lette å kontrollere og lite risikable

De beste første oppgavene for en agent er dem teamet ditt allerede gjør på samme måte hver uke og raskt kan kontrollere. Hvis en utvikler ikke i løpet av et minutt kan se om resultatet er riktig, skaper agenten mer gjennomgangsarbeid i stedet for å spare det.

Vent med endringer i produksjonsdata, endringer i infrastrukturen og alt som ikke kan reverseres, til agenten har vist seg pålitelig på tryggere arbeid.

  • Første gjennomgang av pull requests: manglende tester, risikable mønstre, uklar navngivning, stilproblemer
  • Generering av tester for eksisterende funksjoner, særlig grensetilfeller og regresjonstester for feil som er rettet
  • Pull requests som oppdaterer avhengigheter, med et sammendrag av hver endringslogg
  • Utkast til utgivelsesnotater basert på flettede pull requests
  • Sortering av mislykkede CI-kjøringer: feilene grupperes, og den sannsynlige commiten pekes ut

Velg riktig lag: modell-API, agentrammeverk eller arbeidsflytverktøy

Direkte kall til API-ene til OpenAI eller Anthropic Claude med verktøybruk holder for én enkelt, veldefinert oppgave. LangChain tilfører integrasjoner og vanlige byggeklosser, og LangGraph modellerer en agent som en eksplisitt graf av steg med delt tilstand, noe som gjør forgreninger, nye forsøk og punkter for menneskelig godkjenning lettere å holde oversikt over.

n8n passer til limet rundt agenten: starte på en webhook fra GitHub eller GitLab, kalle modellen, publisere en kommentar i kodegjennomgangen og varsle en kanal. En vanlig arbeidsdeling er n8n til orkestreringen og resonneringssteget i kode, der det kan versjoneres og testes som resten av programvaren din.

Hos NorthStar Network bygde utviklerne våre AI-drevne interne verktøy som automatiserte tilbakevendende utviklingsoppgaver for plattformens verktøyteam.

Gi agenten det minste settet med verktøy den trenger

En agent kan bare gjøre skade gjennom verktøyene sine, så verktøylisten er din viktigste sikkerhetskontroll. Definer hvert verktøy med et smalt formål og validerte inndata, i stedet for å gi agenten et generelt skall eller et API-token med vide rettigheter.

Behandle alt agenten leser, også teksten i saker, kodekommentarer og nettsider, som upålitelige inndata. Instruksjoner som er skjult i en fil, kan forsøke å styre agenten i en annen retning, en risiko kjent som promptinjeksjon, og det er stramme grenser for verktøyene som hindrer et slikt forsøk i å gjøre skade.

  • Bare lesetilgang som standard: lese filer, diffs og CI-logger
  • Skrivetilgang begrenset til en arbeidsgren, aldri til hovedgrenen eller produksjon
  • Egne, kortlevde påloggingsopplysninger per agent, med minst mulige rettigheter
  • Ingen direkte utrulling: agenten åpner en pull request, og den vanlige pipelinen din ruller ut etter godkjenning
  • En godkjenningsliste over kommandoer for å kjøre tester, utført i en isolert container

Planlegg først, handle etterpå, og logg hvert verktøykall

Be agenten lage en plan før den endrer noe: hvilke filer den skal lese, hva den har tenkt å endre, og hvordan den skal kontrollere resultatet. Planer med lav risiko kan kjøres automatisk. Alt som berører delt kode, venter på at et menneske godkjenner planen.

Logg hvert verktøykall med inndata, utdata, tidsstempel og oppgaven det hører til. Med den loggen kan du feilsøke et dårlig resultat, svare på et revisjonsspørsmål og oppdage at en agent glir ut av oppgaven sin. Beskytt den som andre utviklingslogger, siden den kan inneholde kildekode.

Sett harde grenser for hver kjøring: et maksimalt antall steg, tokens og minutter, og stopp etter gjentatte feil i stedet for en endeløs løkke av nye forsøk.

Lever hver endring som en diff et menneske går gjennom

Det agenten produserer, bør havne der utviklerne allerede går gjennom arbeid: en pull request, en kommentar i en kodegjennomgang, et utkast til utgivelsesnotat. Diffen viser nøyaktig hva som er endret, CI kjører mot den, og de vanlige godkjenningsreglene dine gjelder.

Hold diffene fra agenten små og med ett formål. En pull request som legger til tester for én modul, er lett å gå gjennom, mens en som berører ti filer for å forbedre litt av hvert, blir godkjent uten å bli lest, eller avvist. Merk endringer som er skrevet av en agent, slik at den som går gjennom dem, sjekker antakelsene og ikke bare syntaksen.

Genererte tester krever ekstra omtanke. Kontroller at de tester den tiltenkte oppførselen og ville feilet hvis koden var feil, i stedet for bare å registrere det den nåværende koden returnerer.

Evaluer på din egen historikk før du utvider omfanget

Bygg et lite evalueringssett fra dine egne repositorier: tidligere pull requests med kjente problemer, funksjoner med kjente feil, CI-feil med kjente årsaker. Kjør agenten mot det hver gang du endrer prompten, modellen eller verktøyene, og sammenlign resultatene med forrige kjøring.

I daglig bruk bør du følge med på hvor ofte de som går gjennom koden, godtar forslagene fra agenten, hvor mange av agentens pull requests som flettes uten endringer, og hvor ofte planer blir avvist. Gi agenten en ny oppgave eller mer tilgang først når disse signalene er stabile.

Skriv datapolicyen før første kjøring

Bestem hvilken kode og hvilke data som kan sendes til hvilken modelleverandør, på hvilke avtalevilkår, og skriv det ned. Sjekk hver leverandørs innstillinger for lagring og trening ved bruk via API, og hold hemmeligheter, påloggingsopplysninger og personopplysninger unna prompter og logger.

Hvis en agent betjener flere team eller kunder, må du isolere dataene, påloggingsopplysningene og loggene til hver av dem. SDK Pilot, AI-agenten vår for utviklingsarbeid, som nå er gratis i tidlig tilgang, følger disse reglene: den viser planen sin før den utfører noe, logger hvert verktøykall, leverer diffs du kan gå gjennom, og isolerer dataene til hver organisasjon.

Det viktigste

  • Start agenter på repeterende oppgaver der en utvikler kan kontrollere resultatet på omtrent ett minutt.
  • Verktøylisten er den viktigste sikkerhetskontrollen, så hold verktøyene smale, med bare lesetilgang som standard og skrivetilgang begrenset til en gren.
  • Krev en plan før handling, og logg hvert verktøykall med inndata og utdata.
  • Lever alt arbeid fra agenter som små diffs gjennom den vanlige gjennomgangs- og CI-prosessen din.
  • Evaluer agenter mot ekte eksempler fra din egen historikk før du gir dem et større ansvarsområde.

Spørsmål og svar

Kan AI-agenter erstatte kodegjennomgang gjort av mennesker?

Nei. Agenter er nyttige til en første runde som fanger opp manglende tester, risikable mønstre og stilproblemer, slik at menneskene som går gjennom koden, kan konsentrere seg om design og intensjon. Et menneske bør fortsatt godkjenne hver endring som flettes.

Er det trygt å la en AI-agent rulle ut i produksjon?

Ikke direkte. La agenten åpne en pull request eller en endringsforespørsel, og rull deretter ut gjennom den eksisterende pipelinen din etter menneskelig godkjenning. Slik beholder du revisjonssporet, testene og prosessen for tilbakerulling.

Bør jeg bruke LangGraph eller n8n til å automatisere utviklingsarbeid?

De løser ulike problemer. LangGraph strukturerer agentens resonnering som eksplisitte steg med tilstand og godkjenningspunkter, mens n8n kobler sammen systemer gjennom utløsere og handlinger. Mange team bruker n8n til å starte og rute arbeidet, og LangGraph eller direkte kall til modellens API til selve agenten.

Fortell oss hva du trenger.

Noe som skal bygges, folk som skal finnes, eller et spørsmål som trenger et svar. I en samtale på 30 minutter lytter vi og sier ærlig hvordan vi kan hjelpe, og hva det vil kreve.

Book en samtale

30 minutter, på fransk eller engelsk. Gratis.

Skriver du heller? Send en kort beskrivelse i stedet.