Automatisering av intellektuell møye med AI-agenter
I det raskt utviklende landskapet innen programvareutvikling fører jakten på effektivitet ofte til banebrytende innovasjoner. Tyler McGoffin, en AI-forsker, beskrev nylig en reise som eksemplifiserer denne ånden: automatisering av hans intellektuelle møye gjennom agentdrevet utvikling med GitHub Copilot. Dette handler ikke bare om raskere koding; det handler om å fundamentalt endre utviklerens rolle fra repeterende analyse til kreativ problemløsning og strategisk overvåking. McGoffins erfaring fremhever et kjent mønster blant ingeniører – å bygge verktøy for å eliminere kjedelig arbeid – men tar det et skritt videre ved å betro AI-agenter komplekse analytiske oppgaver som tidligere var umulige å skalere manuelt.
McGoffins inspirasjon kom fra et kritisk, men overveldende, aspekt av jobben hans: å analysere kodingagenters ytelse mot benchmarks som TerminalBench2 og SWEBench-Pro. Dette involverte å dissekere 'trajektorier' – detaljerte JSON-logger over en agents tankeprosesser og handlinger – som kunne utgjøre hundretusenvis av kodelinjer på tvers av mange oppgaver og benchmark-kjøringer. Mens GitHub Copilot allerede assisterte med mønstergjenkjenning, skrek den repeterende naturen av denne analytiske sløyfen etter full automatisering. Dette førte til opprettelsen av 'eval-agents', et system designet for å automatisere denne intellektuelle byrden, noe som ga teamet hans i Copilot Applied Science mulighet til å oppnå lignende effektivitet.
Blåkopi for agentdrevet utvikling
Oppstarten av 'eval-agents' ble veiledet av et klart sett prinsipper fokusert på samarbeid og skalerbarhet. McGoffin ønsket å gjøre disse AI-agentene enkle å dele, enkle å forfatte, og det primære virkemiddelet for teamets bidrag. Disse målene reflekterer GitHubs kjerneverdier, spesielt de som ble finpusset under hans erfaring som OSS-vedlikeholder for GitHub CLI. Det var imidlertid det tredje målet – å gjøre kodingagenter til den primære bidragsyteren – som virkelig formet prosjektets retning og låste opp uventede fordeler for de to første.
Det agentiske kodingsoppsettet utnyttet flere kraftige verktøy for å effektivisere utviklingsprosessen:
- Kodeagent: Copilot CLI, som gir direkte interaksjon og kontroll.
- Modell brukt: Claude Opus 4.6, som tilbyr avanserte resonnerings- og kodegenereringsfunksjoner.
- IDE: VSCode, som fungerer som det sentrale arbeidsområdet for utvikling.
Avgjørende var at Copilot SDK var medvirkende, og ga tilgang til eksisterende verktøy, MCP-servere og mekanismer for å registrere nye verktøy og ferdigheter. Dette fundamentet eliminerte behovet for å gjenoppfinne kjernefunksjoner for agenter, noe som gjorde at teamet kunne fokusere på applikasjonsspesifikk logikk. Dette integrerte miljøet fremmet en rask utviklingssløyfe, og beviste at med riktig oppsett kunne AI-agenter ikke bare assistere, men også drive betydelige deler av utviklingsarbeidet.
Kjerneprinsipper for effektiv agentisk koding
Overgangen til et agentdrevet paradigme krever mer enn bare verktøy; det krever et skifte i metodologi. McGoffin identifiserte tre kjerneprinsipper som viste seg å være grunnleggende for å akselerere utvikling og fremme samarbeid:
- Prompt-strategier: Å interagere effektivt med agenter betyr å være samtalebasert, verbal og prioritere planlegging.
- Arkitekturstrategier: En ren, veldokumentert og refaktorert kodebase er avgjørende for at agenter effektivt skal kunne navigere og bidra til den.
- Iterasjonsstrategier: Å omfavne en "skyld prosessen, ikke agentene"-tankegang, lignende en skyldfri kultur, muliggjør rask eksperimentering og læring.
Disse strategiene, når de ble anvendt konsekvent, førte til forbløffende resultater. Som et bevis på denne effektiviteten, la fem nye bidragsytere, innenfor bare tre dager, kollektivt til 11 nye agenter, fire nye ferdigheter, og introduserte konseptet med 'eval-agent workflows' til prosjektet. Denne samarbeidssprinten resulterte i en bemerkelsesverdig +28 858/-2 884 kodelinjers endring på tvers av 345 filer, noe som demonstrerer den dype innvirkningen av github-agentic-workflows i praksis.
Her er en oppsummering av kjerneprinsippene:
| Prinsipp | Beskrivelse | Fordel for agentdrevet utvikling |
|---|---|---|
| Prompting | Behandle agenter som senioringeniører: veiled deres tankegang, overforklar antakelser, utnytt planleggingsmoduser (/plan) før utførelse. Vær samtalebasert og detaljert. | Fører til mer nøyaktige og relevante resultater, og hjelper agenter med å løse komplekse problemer effektivt. |
| Arkitektur | Prioriter refaktorering, omfattende dokumentasjon og robust testing. Hold kodebasen ren, lesbar og velstrukturert. Rydd aktivt opp i død kode. | Gjør det mulig for agenter å forstå kodebasen, mønstre og eksisterende funksjonalitet, noe som legger til rette for nøyaktige bidrag. |
| Iterasjon | Vedta en "skyld prosessen, ikke agentene"-tankegang. Implementer sikkerhetsmekanismer (streng typetjekking, linting, omfattende tester) for å forhindre feil. Lær av agentfeil ved å forbedre prosesser og sikkerhetsmekanismer. | Fremmer rask iterasjon, bygger tillit til agentbidrag, og forbedrer kontinuerlig utviklingspipelinen. |
Akselerering av utvikling: Strategier i praksis
Suksessen med denne agentdrevne tilnærmingen er forankret i praktisk anvendelse av disse prinsippene.
Prompt-strategier: Veiledning av AI-ingeniøren
AI-kodeagenter, selv om de er kraftige, utmerker seg med veldefinerte problemer. For mer komplekse oppgaver krever de veiledning, mye som junioringeniører. McGoffin fant at en samtalebasert stil, forklaring av antakelser og bruk av planleggingsmoduser var langt mer effektive enn knappe kommandoer. For eksempel, når man legger til robuste regresjonstester, initierte en prompt som /plan I've recently observed Copilot happily updating tests to fit its new paradigms even though those tests shouldn't be updated. How can I create a reserved test space that Copilot can't touch or must reserve to protect against regressions? en produktiv dialog. Denne frem og tilbake-dialogen, ofte med den kraftige claude-opus-4-6-modellen, førte til sofistikerte løsninger som kontrakttestende sikkerhetsmekanismer, som kun menneskelige ingeniører kunne oppdatere, og sikret at kritisk funksjonalitet forble beskyttet.
Arkitekturstrategier: Fundamentet for AI-assistert kvalitet
For menneskelige ingeniører blir det å vedlikeholde en ren kodebase, skrive tester og dokumentere funksjoner ofte nedprioritert under press for å levere funksjoner. I agentdrevet utvikling blir dette avgjørende. McGoffin oppdaget at å bruke tid på refaktorering, dokumentasjon og å legge til testtilfeller dramatisk forbedret Copilots evne til å navigere og bidra til kodebasen. Et agent-først-arkiv trives med klarhet. Dette gjør det mulig for utviklere å til og med be Copilot om spørsmål som "Knowing what I know now, how would I design this differently?", og dermed gjøre teoretiske refaktoreringer til oppnåelige prosjekter med AI-assistanse. Dette kontinuerlige fokuset på arkitektonisk helse sikrer at nye funksjoner kan leveres trivielt.
Iterasjonsstrategier: Å stole på prosessen, ikke bare agenten
Utviklingen av AI-modeller har flyttet tankegangen fra "stol på, men verifiser" til en mer tillitsfull holdning, analogt med hvordan effektive team opererer med en "skyld prosessen, ikke folk"-filosofi. Denne "skyldfrie kulturen" i agentdrevet utvikling betyr at når en AI-agent gjør en feil, er responsen å forbedre de underliggende prosessene og sikkerhetsmekanismene, i stedet for å skylde på agenten selv. Dette innebærer å implementere strenge CI/CD-praksiser: streng typetjekking for å sikre grensesnittskonformitet, robuste linting-verktøy for kodekvalitet, og omfattende integrasjons-, ende-til-ende- og kontrakttester. Mens det kan være dyrt å bygge disse testene manuelt, gjør agentassistanse dem mye billigere å implementere, noe som gir kritisk tillit til nye endringer. Ved å sette opp disse systemene, gir utviklere Copilot mulighet til å sjekke sitt eget arbeid, noe som speiler hvordan en junioringeniør settes opp for suksess.
Mestring av den agentdrevne utviklingssløyfen
Integrering av disse prinsippene i en praktisk arbeidsflyt skaper en kraftig, akselerert utviklingssløyfe:
- Planlegg med Copilot: Start nye funksjoner ved hjelp av
/plan. Iterer på planen, og sørg for at tester og dokumentasjonsoppdateringer inkluderes og fullføres før kodeimplementering. Dokumentasjon kan tjene som et ekstra sett med retningslinjer for agenten. - Implementer med Autopilot: La Copilot implementere funksjonen ved hjelp av
/autopilot, ved å utnytte dens kodegenereringsfunksjoner. - Gjennomgå med Copilot Code Review: Be Copilot om å starte en gjennomgangssløyfe. Dette innebærer å be Copilot Code Review-agenten om å gjennomgå, adressere kommentarene og be om nye gjennomganger til problemene er løst.
- Menneskelig gjennomgang: Utfør en siste menneskelig gjennomgang for å sikre at mønstre blir håndhevet og komplekse beslutninger er i tråd med strategisk intensjon.
Utover funksjonsløkken er kontinuerlig optimalisering nøkkelen. McGoffin ber jevnlig Copilot med kommandoer som /plan Review the code for any missing tests, any tests that may be broken, and dead code eller /plan Review the documentation and code to identify any documentation gaps. Disse kontrollene, som kjøres ukentlig eller når nye funksjoner integreres, sikrer at det agentdrevne utviklingsmiljøet forblir sunt og effektivt.
Fremtiden for programvareutvikling med AI
Det som startet som en personlig søken etter å automatisere en frustrerende analyseoppgave, har utviklet seg til et nytt paradigme for programvareutvikling. Agentdrevet utvikling, drevet av verktøy som GitHub Copilot og avanserte modeller som Claude Opus, handler ikke bare om å gjøre utviklere raskere; det handler om å fundamentalt endre arbeidets natur for både AI-forskere og programvareingeniører. Ved å overføre intellektuell møye til intelligente agenter, kan team oppnå enestående nivåer av produktivitet, samarbeid og innovasjon, og til slutt fokusere på de kreative og strategiske utfordringene som virkelig driver fremgang. Denne tilnærmingen varsler en spennende fremtid der AI-agenter ikke bare er verktøy, men integrerte medlemmer av utviklingsteamet, og transformerer hvordan vi bygger og vedlikeholder programvare.
Opprinnelig kilde
https://github.blog/ai-and-ml/github-copilot/agent-driven-development-in-copilot-applied-science/Ofte stilte spørsmål
What is agent-driven development in the context of GitHub Copilot?
How did the 'eval-agents' project originate?
What are the key components of an agentic coding setup for this approach?
What prompting strategies are most effective when working with AI coding agents?
Why are architectural strategies like refactoring and documentation crucial for agent-driven development?
How does a 'blameless culture' apply to iteration strategies in agent-driven development?
What is the typical development loop when using agent-driven development?
What kind of impact did agent-driven development have on team productivity and collaboration?
Hold deg oppdatert
Få de siste AI-nyhetene i innboksen din.
