Code Velocity
Verkfæri fyrir forritara

Umboðsmanna-drifin þróun: Öflugun Copilot beittra vísinda

·7 mín lestur·GitHub·Upprunaleg heimild
Deila
Skjáskot sem sýnir notendaviðmót GitHub Copilot fyrir umboðsmanna-drifna þróun, með tillögum að kóða og samstarfsverkferlum við forritun.

Sjálfvirkknivæðing hugverkaþreytu með gervigreindarumboðsmönnum

Í ört þróandi landslagi hugbúnaðarverkfræði leiðir leit að skilvirkni oft til byltingarkenndra nýjunga. Tyler McGoffin, gervigreindarrannsakandi, greindi nýlega frá ferðalagi sem lýsir þessum anda vel: að sjálfvirknivæða hugverkaþreytu sína með umboðsmanna-drifinni þróun með GitHub Copilot. Þetta snýst ekki bara um hraðari forritun; það snýst um að breyta grundvallaratriðum hlutverki forritarans frá endurtekinni greiningu yfir í skapandi vandamálalausnir og stefnumótandi yfirsýn. Reynsla McGoffins undirstrikar kunnuglegt mynstur meðal verkfræðinga – að byggja verkfæri til að útrýma leiðindum – en fer skrefi lengra með því að fela gervigreindarumboðsmönnum flókin greiningarverkefni sem áður var ómögulegt að skala handvirkt.

Innblástur McGoffins kom frá mikilvægum, en yfirþyrmandi, þætti starfs hans: að greina frammistöðu forritunarumboðsmanna gegn viðmiðunarprófum eins og TerminalBench2 og SWEBench-Pro. Þetta fól í sér að kryfja 'ferla' – ítarlega JSON annála yfir hugsunarferli og aðgerðir umboðsmanns – sem gætu numið hundruðum þúsunda kóðalína yfir fjölda verkefna og viðmiðunarakstra. Þó að GitHub Copilot hafi þegar aðstoðað við mynstragreiningu, kallaði endurtekið eðli þessa greiningarferils á fulla sjálfvirkni. Þetta leiddi til stofnunar 'eval-agents,' kerfis sem hannað var til að sjálfvirknivæða þessa hugverkaþreytu, og styrkja teymi hans í Copilot Applied Science til að ná sambærilegri skilvirkni.

Teikningin að umboðsmanna-drifinni þróun

Tilurð 'eval-agents' var stýrt af skýrum meginreglum sem lögðu áherslu á samvinnu og skalanleika. McGoffin stefndi að því að gera þessa gervigreindarumboðsmenn auðvelda í deilingu, einfalda í höfundarverki og aðal farartæki fyrir framlög teyma. Þessi markmið endurspegla kjarnagildi GitHub, sérstaklega þau sem hann þróaði í gegnum reynslu sína sem OSS viðhaldsaðili fyrir GitHub CLI. Hins vegar var það þriðja markmiðið – að gera forritunarumboðsmenn að aðal þátttakendum – sem í raun mótaði stefnu verkefnisins og opnaði óvænta kosti fyrir fyrstu tvö.

Uppsetning umboðsmanna-drifinnar forritunar nýtti nokkur öflug verkfæri til að straumlínulaga þróunarferlið:

  • Forritunarumboðsmaður: Copilot CLI, sem veitir beina samskipti og stjórn.
  • Líkan notað: Claude Opus 4.6, sem býður upp á háþróaða röksemdafærslu og kóðagerðargetu.
  • IDE: VSCode, sem þjónar sem miðlægt vinnusvæði fyrir þróun.

Mikilvægt er að Copilot SDK var lykilatriði, sem veitti aðgang að núverandi verkfærum, MCP netþjónum og kerfum til að skrá ný verkfæri og færni. Þessi undirstaða útilokaði þörfina á að endurfinna kjarnavirkni umboðsmanna, sem gerði teyminu kleift að einbeita sér að forritunarsértækri rökfræði. Þetta samþætta umhverfi ýtti undir hraðan þróunarhring, sem sannaði að með réttri uppsetningu gætu gervigreindarumboðsmenn ekki aðeins aðstoðað heldur einnig knúið áfram stóran hluta þróunarstarfsins.

Kjarnareglur fyrir árangursríka umboðsmanna-drifna forritun

Að færa sig yfir í umboðsmanna-drifið viðhorf krefst meira en bara verkfæra; það krefst breytingar á aðferðafræði. McGoffin greindi þrjár kjarnareglur sem reyndust grundvallaratriði til að flýta fyrir þróun og efla samvinnu:

  1. Inntaksverkfræðistefnur: Að eiga árangursrík samskipti við umboðsmenn þýðir að vera í samræðum, orðmargur og að forgangsraða skipulagningu.
  2. Byggingarfræðilegar aðferðir: Hreinn, vel skjalfestur og endurforritaður kóðagrunnur er mikilvægastur fyrir umboðsmenn til að geta vafrað um og lagt sitt af mörkum á áhrifaríkan hátt.
  3. Endurtekningaraðferðir: Að tileinka sér hugarfar 'kenna ferli, ekki umboðsmönnum', svipað og sakalítil menning, gerir kleift hraðvirka tilraunastarfsemi og nám.

Þessar aðferðir, þegar þeim var beitt stöðugt, leiddu til ótrúlegra niðurstaðna. Til vitnis um þessa skilvirkni bættu fimm nýir þátttakendur, á aðeins þremur dögum, samtals við 11 nýjum umboðsmönnum, fjórum nýjum færnum, og kynntu hugtakið 'eval-agent verkferlar' inn í verkefnið. Þessi samstarfssprattur leiddi til merkilegrar breytingar upp á +28.858/-2.884 kóðalínur í 345 skrám, sem sýnir djúpstæð áhrif github-agentic-workflows í framkvæmd.

Hér er samantekt á kjarnareglunum:

ReglaLýsingÁvinningur fyrir umboðsmanna-drifna þróun
InntaksverkfræðiMeðhöndla umboðsmenn eins og eldri verkfræðinga: leiðbeina hugsun þeirra, útskýra forsendur of ítarlega, nýta skipulagshami (/plan) fyrir útfærslu. Vera í samræðum og nákvæmur.Leiðir til nákvæmari og viðeigandi niðurstaðna, sem hjálpar umboðsmönnum að leysa flókin vandamál á áhrifaríkan hátt.
ByggingarfræðilegtForgangsraða endurforritun, ítarlegri skjalfestingu og öflugum prófunum. Halda kóðagrunninum hreinum, læsilegum og vel skipulögðum. Hreinsa virkan upp dauðan kóða.Gerir umboðsmönnum kleift að skilja kóðagrunninn, mynstur og núverandi virkni, sem auðveldar nákvæm framlög.
EndurtekningTileinka sér hugarfar 'kenna ferli, ekki umboðsmönnum'. Innleiða varnarráðstafanir (stranga tegundun, linters, víðtækar prófanir) til að koma í veg fyrir mistök. Læra af villum umboðsmanna með því að bæta ferla og varnarráðstafanir.Eflir hraðvirka endurtekningu, byggir upp traust á framlögum umboðsmanna og bætir stöðugt þróunarferlið.

Flýta fyrir þróun: Aðferðir í framkvæmd

Árangur þessarar umboðsmanna-drifinnar nálgunar er sprottinn af hagnýtri beitingu þessara meginreglna.

Inntaksverkfræðistefnur: Leiðbeina gervigreindarverkfræðingnum

Gervigreindarforritunarumboðsmenn, þótt öflugir séu, eru bestir í vandamálum með skýra afmörkun. Fyrir flóknari verkefni þurfa þeir leiðbeiningar, líkt og yngri verkfræðingar. McGoffin komst að því að samskipti í samræðuformi, útskýring á forsendum og nýting skipulagshamna voru mun áhrifaríkari en stuttar skipanir. Til dæmis, þegar bætt var við öflugum afturhvarfsprófunum, hvati eins og /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? hóf frjósama samræðu. Þetta fram og til baka, oft með hinu öfluga claude-opus-4-6 líkani, leiddi til háþróaðra lausna eins og samningsprófunar varnarráðstafana, sem aðeins mannlegir verkfræðingar gátu uppfært, og tryggði að mikilvæg virkni væri varin.

Byggingarfræðilegar aðferðir: Grundvöllur gervigreindaraðstoðaðs gæða

Fyrir mannlega verkfræðinga eru viðhald á hreinum kóðagrunni, skrifa prófanir og skjalfesta eiginleika oft sett í lægri forgang vegna eiginleikaþrýstings. Í umboðsmanna-drifinni þróun verða þessir þættir afar mikilvægir. McGoffin uppgötvaði að tími sem varið var í endurforritun, skjalfestingu og bætingu prófunartilfella bætti verulega getu Copilot til að vafra um og leggja sitt af mörkum í kóðagrunninn. Geymsla sem setur umboðsmenn í forgang dafnar á skýrleika. Þetta gerir forriturum jafnvel kleift að spyrja Copilot spurninga eins og "Knowing what I know now, how would I design this differently?", sem breytir fræðilegum endurforritunum í raunhæf verkefni með gervigreindaraðstoð. Þessi stöðuga áhersla á byggingarfræðilega heilsu tryggir að hægt sé að afhenda nýja eiginleika auðveldlega.

Endurtekningaraðferðir: Treysta ferlinu, ekki bara umboðsmanninum

Þróun gervigreindarlíkana hefur fært hugarfarið frá 'treysta en sannreyna' yfir í traustara viðhorf, svipað og hvernig skilvirk teymi starfa með 'kenna ferli, ekki fólki' heimspeki. Þessi 'sakalítla menning' í umboðsmanna-drifinni þróun þýðir að þegar gervigreindarumboðsmaður gerir mistök er viðbragðið að bæta undirliggjandi ferla og varnarráðstafanir, frekar en að kenna umboðsmanninum sjálfum um. Þetta felur í sér að innleiða strangar CI/CD venjur: stranga tegundun til að tryggja samræmi í viðmóti, öflugar linters fyrir kóðagæði, og víðtækar samþættingar-, end-to-end- og samningsprófanir. Þó að byggja þessar prófanir handvirkt geti verið dýrt, gerir umboðsmannaaðstoð þær mun ódýrari í útfærslu, sem veitir mikilvægt traust á nýjum breytingum. Með því að setja upp þessi kerfi styrkja forritarar Copilot til að athuga eigin vinnu, sem endurspeglar hvernig yngri verkfræðingur er undirbúinn fyrir árangur.

Að ná tökum á þróunarhringnum sem knúinn er af umboðsmönnum

Með því að samþætta þessar meginreglur í hagnýtan verkferil skapast öflugur, hraðaður þróunarhringur:

  1. Skipuleggja með Copilot: Hefja nýja eiginleika með /plan. Endurtaka áætlunina og tryggja að prófanir og uppfærslur á skjölum séu innifaldar og fullgerðar áður en kóðinn er útfærður. Skjöl geta þjónað sem viðbótarleiðbeiningar fyrir umboðsmanninn.
  2. Útfæra með Autopilot: Leyfa Copilot að útfæra eiginleikann með /autopilot, og nýta kóðagerðargetu hans.
  3. Endurskoða með Copilot Code Review: Hvata Copilot til að hefja endurskoðunarferil. Þetta felur í sér að biðja Copilot Code Review umboðsmanninn, taka á athugasemdum hans og biðja um endurskoðun aftur þar til mál eru leyst.
  4. Mannleg endurskoðun: Framkvæma loka mannlega endurskoðun til að tryggja að mynstur séu framfylgt og flóknar ákvarðanir samræmist stefnumótandi tilgangi.

Fyrir utan eiginleikahringinn er stöðug fínstilling lykilatriði. McGoffin hvetur Copilot reglulega með skipunum eins og /plan Review the code for any missing tests, any tests that may be broken, and dead code eða /plan Review the documentation and code to identify any documentation gaps. Þessar athuganir, sem keyrðar eru vikulega eða þegar nýir eiginleikar eru samþættir, tryggja að umboðsmanna-drifið þróunarumhverfi haldist heilt og skilvirkt.

Framtíð hugbúnaðarverkfræði með gervigreind

Það sem byrjaði sem persónuleg leit að því að sjálfvirknivæða pirrandi greiningarverkefni hefur þróast í nýja hugmyndafræði fyrir hugbúnaðarþróun. Umboðsmanna-drifin þróun, knúin áfram af verkfærum eins og GitHub Copilot og háþróuðum líkönum eins og Claude Opus, snýst ekki bara um að gera forritara hraðari; hún snýst um að breyta grundvallaratriðum eðli vinnu fyrir gervigreindarrannsakendur og hugbúnaðarverkfræðinga jafnt. Með því að létta af hugverkaþreytu yfir á greinda umboðsmenn geta teymi náð óviðjafnanlegum stigum framleiðni, samvinnu og nýsköpunar, og að lokum einbeitt sér að skapandi og stefnumótandi áskorunum sem sannarlega knýja áfram framfarir. Þessi nálgun boðar spennandi framtíð þar sem gervigreindarumboðsmenn eru ekki bara verkfæri, heldur óaðskiljanlegir meðlimir þróunarteymisins, sem umbreyta því hvernig við byggjum og viðhöldum hugbúnaði.

Algengar spurningar

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.

Fylgstu með

Fáðu nýjustu gervigreindarfréttirnar í pósthólfið.

Deila