Code Velocity
Izstrādātāju rīki

Aģentu vadīta izstrāde: Copilot pielietojamās zinātnes paātrināšana

·7 min lasīšana·GitHub·Sākotnējais avots
Dalīties
Ekrānuzņēmums, kas attēlo GitHub Copilot aģentu vadītas izstrādes saskarni, parādot koda ieteikumus un sadarbības kodēšanas darbplūsmas.

Intelektuālā darba automatizēšana ar AI aģentiem

Strauji mainīgajā programmatūras inženierijas ainā efektivitātes meklējumi bieži noved pie revolucionārām inovācijām. Tailers Makgoffins (Tyler McGoffin), AI pētnieks, nesen detalizēti aprakstīja ceļojumu, kas iemieso šo garu: sava intelektuālā darba automatizēšana, izmantojot aģentu vadītu izstrādi ar GitHub Copilot. Tas nav tikai par ātrāku kodēšanu; tas ir par fundamentālu izstrādātāja lomas maiņu no atkārtotas analīzes uz radošu problēmu risināšanu un stratēģisku pārraudzību. Makgoffina pieredze izceļ pazīstamu inženieru paradumu — veidot rīkus, lai novērstu smagu darbu —, taču viņš to paceļ jaunā līmenī, uzticot AI aģentiem sarežģītus analītiskos uzdevumus, kurus iepriekš nebija iespējams manuāli mērogot.

Makgoffina iedvesma radās no viņa darba kritiskā, taču milzīgā aspekta: kodēšanas aģenta veiktspējas analīze pret etalonos, piemēram, TerminalBench2 un SWEBench-Pro. Tas ietvēra 'trajektoriju' — detalizētu JSON žurnālu par aģenta domāšanas procesiem un darbībām — sadalīšanu, kas varēja veidot simtiem tūkstošu koda rindiņu daudzos uzdevumos un etalonu izpildēs. Lai gan GitHub Copilot jau palīdzēja modeļu atpazīšanā, šī analītiskā cikla atkārtotais raksturs prasīja pilnīgu automatizāciju. Tas noveda pie 'eval-agents' izveides — sistēmas, kas paredzēta šī intelektuālā sloga automatizēšanai, dodot iespēju viņa komandai Copilot Applied Science sasniegt līdzīgu efektivitāti.

Aģentu vadītas izstrādes plāns

Projekta 'eval-agents' aizsākumu vadīja skaidrs principu kopums, kas vērsts uz sadarbību un mērogojamību. Makgoffins vēlējās padarīt šos AI aģentus viegli koplietojamus, vienkāršus veidošanā un primāro līdzekli komandas ieguldījumiem. Šie mērķi atspoguļo GitHub pamatvērtības, īpaši tās, kas tika pilnveidotas viņa pieredzē kā OSS uzturētājam GitHub CLI. Tomēr tieši trešais mērķis — padarīt kodēšanas aģentus par primārajiem veicinātājiem — patiesi veidoja projekta virzienu un sniedza negaidītus ieguvumus pirmajiem diviem.

Aģentiskās kodēšanas iestatīšana izmantoja vairākus jaudīgus rīkus, lai racionalizētu izstrādes procesu:

  • Kodēšanas aģents: Copilot CLI, nodrošinot tiešu mijiedarbību un kontroli.
  • Izmantotais modelis: Claude Opus 4.6, piedāvājot uzlabotas spriešanas un koda ģenerēšanas iespējas.
  • IDE: VSCode, kas kalpo kā centrālā darba telpa izstrādei.

Būtiski, ka Copilot SDK bija izšķirošs, nodrošinot piekļuvi esošajiem rīkiem, MCP serveriem un mehānismiem jaunu rīku un prasmju reģistrēšanai. Šis pamats novērsa nepieciešamību no jauna izgudrot galvenās aģentiskās funkcionalitātes, ļaujot komandai koncentrēties uz lietojumprogrammu specifisko loģiku. Šī integrētā vide veicināja ātru izstrādes ciklu, pierādot, ka ar pareizu iestatījumu AI aģenti var ne tikai palīdzēt, bet arī virzīt ievērojamas izstrādes centienu daļas.

Efektīvas aģentiskās kodēšanas pamatprincipi

Pāreja uz aģentu vadītu paradigmu prasa vairāk nekā tikai rīkus; tā prasa metodoloģijas maiņu. Makgoffins identificēja trīs pamatprincipus, kas izrādījās būtiski izstrādes paātrināšanai un sadarbības veicināšanai:

  1. Prompt inženierijas stratēģijas: Efektīva mijiedarbība ar aģentiem nozīmē būt sarunvalodas stilā, izvērstam un prioritizēt plānošanu.
  2. Arhitektūras stratēģijas: Tīra, labi dokumentēta un refaktorēta koda bāze ir ārkārtīgi svarīga, lai aģenti varētu to efektīvi pārlūkot un sniegt savu ieguldījumu.
  3. Iterācijas stratēģijas: Pieņemot domāšanas veidu "vaino procesu, nevis aģentus", līdzīgi kā nevainīguma kultūrā, tiek veicināta ātra eksperimentēšana un mācīšanās.

Šīs stratēģijas, konsekventi pielietojot, noveda pie pārsteidzošiem rezultātiem. Apliecinājumam par šo efektivitāti, pieci jauni dalībnieki tikai trīs dienu laikā kopīgi pievienoja 11 jaunus aģentus, četras jaunas prasmes un ieviesa projektā 'eval-agent workflows' koncepciju. Šī kopīgā sprinta rezultātā tika veikta ievērojama +28 858/-2 884 koda rindiņu izmaiņa 345 failos, demonstrējot dziļo ietekmi, ko github-agentic-workflows sniedz praksē.

Šeit ir pamatprincipu kopsavilkums:

PrincipsAprakstsIeguvums aģentu vadītai izstrādei
Prompt inženierijaIztratieties ar aģentiem kā ar vecākajiem inženieriem: vadīt viņu domāšanu, pārmērīgi izskaidrot pieņēmumus, izmantot plānošanas režīmus (/plan) pirms izpildes. Esiet sarunvalodas stilā un detalizēti.Nodrošina precīzākus un atbilstošākus rezultātus, palīdzot aģentiem efektīvi risināt sarežģītas problēmas.
ArhitektūraPrioritizējiet refaktorēšanu, visaptverošu dokumentāciju un stabilu testēšanu. Uzturiet koda bāzi tīru, lasāmu un labi strukturētu. Aktīvi tīriet nederīgu kodu.Ļauj aģentiem saprast koda bāzi, modeļus un esošās funkcionalitātes, veicinot precīzu ieguldījumu.
IterācijaPieņemiet domāšanas veidu "vaino procesu, nevis aģentus". Ieviesiet aizsardzības mehānismus (stingra tipizēšana, linteri, plaši testi), lai novērstu kļūdas. Mācieties no aģentu kļūdām, uzlabojot procesus un aizsardzības mehānismus.Veicina ātru iterāciju, veido uzticību aģentu ieguldījumam un nepārtraukti uzlabo izstrādes plūsmu.

Izstrādes paātrināšana: Stratēģijas darbībā

Šo principu integrēšana praktiskā darbplūsmā rada jaudīgu, paātrinātu izstrādes ciklu:

Prompt inženierijas stratēģijas: AI inženiera vadīšana

AI kodēšanas aģenti, lai arī jaudīgi, izcili veic labi definētus uzdevumus. Sarežģītākiem uzdevumiem tiem nepieciešami norādījumi, gluži kā jaunākajiem inženieriem. Makgoffins atklāja, ka sarunvalodas stils, pieņēmumu izskaidrošana un plānošanas režīmu izmantošana bija daudz efektīvāka par īsām komandām. Piemēram, pievienojot robustus regresijas testus, prompts, piemēram, /plan Esmu nesen novērojis, ka Copilot labprāt atjaunina testus, lai tie atbilstu tā jaunajām paradigmām, lai gan šie testi nebūtu jāatjaunina. Kā es varu izveidot rezervētu testēšanas vietu, ko Copilot nevar aiztikt vai kam jābūt rezervētai, lai pasargātu no regresijām? uzsāka produktīvu dialogu. Šī mijiedarbība, bieži vien ar jaudīgo claude-opus-4-6 modeli, noveda pie sarežģītiem risinājumiem, piemēram, līgumu testēšanas aizsardzības mehānismiem, kurus varēja atjaunināt tikai cilvēki-inženieri, nodrošinot, ka kritiskā funkcionalitāte paliek aizsargāta.

Arhitektūras stratēģijas: AI atbalstītas kvalitātes pamats

Cilvēkiem-inženieriem tīras koda bāzes uzturēšana, testu rakstīšana un funkciju dokumentēšana bieži tiek atstāta otrajā plānā, jo ir spiediens piegādāt funkcijas. Aģentu vadītā izstrādē tas kļūst ārkārtīgi svarīgi. Makgoffins atklāja, ka laika veltīšana refaktorēšanai, dokumentēšanai un testu gadījumu pievienošanai dramatiski uzlaboja Copilot spēju orientēties koda bāzē un sniegt ieguldījumu. Repozitorijs, kurā vispirms tiek domāts par aģentiem, plaukst skaidrībā. Tas ļauj izstrādātājiem pat jautāt Copilot jautājumus, piemēram, 'Zinot to, ko zinu tagad, kā es to izveidotu citādi?', pārvēršot teorētiskus refaktoringus par sasniedzamiem projektiem ar AI palīdzību. Šis nepārtrauktais fokuss uz arhitektūras veselību nodrošina, ka jaunas funkcijas var tikt piegādātas bez piepūles.

Iterācijas stratēģijas: Uzticēšanās procesam, ne tikai aģentam

AI modeļu attīstība ir mainījusi domāšanas veidu no "uzticies, bet pārbaudi" uz uzticīgāku nostāju, līdzīgi tam, kā efektīvas komandas darbojas ar filozofiju "vaino procesu, nevis cilvēkus". Šī "nevainīguma kultūra" aģentu vadītā izstrādē nozīmē, ka, ja AI aģents pieļauj kļūdu, atbilde ir uzlabot pamatprocesus un aizsardzības mehānismus, nevis vainot pašu aģentu. Tas ietver stingru CI/CD praksi ieviešanu: stingru tipizāciju, lai nodrošinātu saskarnes atbilstību, robustus linterus koda kvalitātei un plašas integrācijas, galapunktu un līgumu testus. Lai gan šo testu manuāla izveide var būt dārga, aģentu palīdzība padara to ieviešanu daudz lētāku, nodrošinot kritisku uzticību jaunām izmaiņām. Iestatot šīs sistēmas, izstrādātāji dod Copilot iespēju pārbaudīt savu darbu, atspoguļojot, kā juniora inženieris tiek sagatavots panākumiem.

Aģentu vadītā izstrādes cikla apguve

Šo principu integrēšana praktiskā darbplūsmā rada jaudīgu, paātrinātu izstrādes ciklu:

  1. Plānot ar Copilot: Sākt jaunas funkcijas, izmantojot /plan. Iterēt plānu, nodrošinot, ka testi un dokumentācijas atjauninājumi tiek iekļauti un pabeigti pirms koda ieviešanas. Dokumentācija var kalpot kā papildu vadlīniju kopums aģentam.
  2. Ieviest ar Autopilot: Ļaut Copilot ieviest funkciju, izmantojot /autopilot, izmantojot tā koda ģenerēšanas iespējas.
  3. Pārskatīt ar Copilot Code Review: Mudināt Copilot uzsākt pārskatīšanas ciklu. Tas ietver pieprasījumu Copilot Code Review aģentam, tā komentāru risināšanu un atkārtotu pārskatu pieprasīšanu, līdz problēmas ir atrisinātas.
  4. Cilvēka pārskats: Veikt galīgo cilvēka pārskatu, lai nodrošinātu modeļu ievērošanu un sarežģītu lēmumu atbilstību stratēģiskajiem mērķiem.

Ārpus funkciju cikla nepārtraukta optimizācija ir galvenā. Makgoffins regulāri mudina Copilot ar komandām, piemēram, /plan Pārskatiet kodu, lai atrastu trūkstošus testus, testus, kas varētu būt salūzuši, un nederīgu kodu vai /plan Pārskatiet dokumentāciju un kodu, lai identificētu dokumentācijas nepilnības. Šīs pārbaudes, kas tiek veiktas katru nedēļu vai integrējot jaunas funkcijas, nodrošina, ka aģentu vadītā izstrādes vide paliek veselīga un efektīva.

Programmatūras inženierijas nākotne ar AI

Tas, kas sākās kā personisks uzdevums automatizēt frustrējošu analīzes uzdevumu, ir attīstījies jaunā programmatūras izstrādes paradigmā. Aģentu vadīta izstrāde, ko nodrošina tādi rīki kā GitHub Copilot un progresīvi modeļi, piemēram, Claude Opus, nav tikai par to, lai izstrādātāji būtu ātrāki; tas ir par AI pētnieku un programmatūras inženieru darba būtības fundamentālu maiņu. Novirzot intelektuālo darbu inteliģentiem aģentiem, komandas var sasniegt vēl nepieredzētu produktivitātes, sadarbības un inovācijas līmeni, galu galā koncentrējoties uz radošajiem un stratēģiskajiem izaicinājumiem, kas patiesi virza progresu. Šī pieeja vēsta par aizraujošu nākotni, kurā AI aģenti nav tikai rīki, bet gan neatņemami izstrādes komandas locekļi, mainot to, kā mēs veidojam un uzturam programmatūru.

Bieži uzdotie jautājumi

What is agent-driven development in the context of GitHub Copilot?
Agent-driven development refers to a software engineering paradigm where AI agents, such as those powered by GitHub Copilot, become primary contributors and collaborators in the development process. Instead of merely suggesting code, these agents actively participate in planning, implementing, refactoring, testing, and documenting software. This approach leverages the AI's ability to automate repetitive intellectual tasks, allowing human engineers to focus on higher-level problem-solving, strategic design, and creative work, thereby accelerating development cycles and improving code quality through structured AI assistance and rigorous guardrails.
How did the 'eval-agents' project originate?
The 'eval-agents' project was born out of a common challenge faced by AI researchers: analyzing vast quantities of data. Tyler McGoffin, an AI researcher, found himself repeatedly poring over hundreds of thousands of lines of 'trajectories'—detailed logs of AI agent thought processes and actions during benchmark evaluations. Recognizing this as an intellectually toilsome and repetitive task, he sought to automate it. By applying agent-driven development principles with GitHub Copilot, he created 'eval-agents' to analyze these trajectories, significantly reducing the manual effort required and transforming a tedious analytical chore into an automated process.
What are the key components of an agentic coding setup for this approach?
An effective agentic coding setup, as demonstrated in this approach, typically includes a powerful AI coding agent like Copilot CLI, a robust underlying large language model such as Claude Opus 4.6, and a feature-rich Integrated Development Environment (IDE) like VSCode. Crucially, leveraging an SDK, such as the Copilot SDK, provides access to essential tools, servers, and mechanisms for registering new tools and skills, offering a foundational infrastructure for building and deploying agents without reinventing core functionalities. This integrated environment enables seamless interaction between the developer and the AI agent throughout the development lifecycle.
What prompting strategies are most effective when working with AI coding agents?
Effective prompting strategies for AI coding agents emphasize conversational, verbose, and planning-oriented interactions. Rather than terse problem statements, developers achieve better results by engaging agents in a dialogue, over-explaining assumptions, and leveraging the AI's speed for initial planning before committing to code changes. This involves using planning modes (e.g., '/plan') to collaboratively brainstorm solutions and refine ideas. Treating the AI agent like a junior engineer who benefits from clear guidance, context, and iterative feedback helps it to produce more accurate and relevant outputs, leading to superior problem-solving and feature implementation.
Why are architectural strategies like refactoring and documentation crucial for agent-driven development?
Architectural strategies like frequent refactoring, comprehensive documentation, and robust testing are paramount in agent-driven development because they create a clean, navigable codebase that AI agents can effectively understand and interact with. A well-maintained codebase, much like for human engineers, allows AI agents to contribute features more accurately and efficiently. By prioritizing readability, consistent patterns, and up-to-date documentation, developers ensure that Copilot can interpret the codebase's intent, identify opportunities for improvement, and implement changes with minimal errors, making feature delivery trivial and facilitating continuous re-architecture.
How does a 'blameless culture' apply to iteration strategies in agent-driven development?
Applying a 'blameless culture' to agent-driven development means shifting from a 'trust but verify' mindset to one that prioritizes 'blame process, not agents.' This philosophy acknowledges that AI agents, like human engineers, can make mistakes. The focus then shifts to implementing robust processes and guardrails—such as strict typing, comprehensive linters, and extensive integration and end-to-end tests—to prevent errors. When an agent does make a mistake, the response is to learn from it and introduce additional guardrails, refining the processes and prompts to ensure the same error isn't repeated, fostering a rapid and psychologically safe iteration pipeline.
What is the typical development loop when using agent-driven development?
The typical development loop in agent-driven development begins with planning a new feature collaboratively with Copilot using a '/plan' prompt, ensuring testing and documentation updates are integrated early. Next, Copilot implements the feature, often using an '/autopilot' command. Following implementation, a review loop is initiated with a Copilot Code Review agent, addressing comments iteratively. The final stage involves a human review to enforce patterns and standards. Outside this feature loop, Copilot is periodically prompted to review for missing tests, code duplication, or documentation gaps, maintaining a continuously optimized agent-driven environment.
What kind of impact did agent-driven development have on team productivity and collaboration?
The impact of agent-driven development on team productivity and collaboration was transformative, leading to an incredibly rapid iteration pipeline. In one instance, a team of five new contributors, using this methodology, created 11 new agents, four new skills, and implemented complex workflows in less than three days. This amounted to a staggering change of +28,858/-2,884 lines of code across 345 files. This dramatic increase in output highlights how agent-driven development, by automating routine tasks and providing intelligent assistance, significantly accelerates feature delivery, fosters deeper collaboration, and enables teams to achieve unprecedented levels of innovation and efficiency.

Esiet informēti

Saņemiet jaunākās AI ziņas savā e-pastā.

Dalīties