Code Velocity
Mjetet e Zhvilluesve

Zhvillimi i Drejtuar nga Agjentët: Superforcimi i Shkencës së Aplikuar Copilot

·7 min lexim·GitHub·Burimi origjinal
Ndaj
Pamje e ndërfaqes së zhvillimit të drejtuar nga agjentët të GitHub Copilot, duke treguar sugjerime kodi dhe rrjedha pune kodimi bashkëpunues.

Automatizimi i Punës Intelektuale me Agjentë AI

Në peizazhin në zhvillim të shpejtë të inxhinierisë softuerike, kërkimi i efikasitetit shpesh çon në inovacione thelbësore. Tyler McGoffin, një studiues i AI, kohët e fundit detajoi një udhëtim që mishëron këtë frymë: automatizimin e punës së tij intelektuale përmes zhvillimit të drejtuar nga agjentët me GitHub Copilot. Kjo nuk është vetëm për kodim më të shpejtë; bëhet fjalë për zhvendosjen thelbësore të rolit të zhvilluesit nga analiza e përsëritur në zgjidhjen krijuese të problemeve dhe mbikëqyrjen strategjike. Eksperienca e McGoffin nxjerr në pah një model të njohur mes inxhinierëve—ndërtimin e mjeteve për të eleminuar monotoninë—por e çon një hap më tej duke u besuar agjentëve të AI detyra analitike komplekse që më parë ishin të pamundura të shkallëzoheshin manualisht.

Inspirimi i McGoffin buronte nga një aspekt kritik, por dërrmues, i punës së tij: analizimi i performancës së agjentëve të kodimit kundrejt standardeve si TerminalBench2 dhe SWEBench-Pro. Kjo përfshinte shpërbërjen e 'trajektoreve' — regjistra të detajuar JSON të proceseve të të menduarit dhe veprimeve të një agjenti — të cilat mund të arrinin në qindra mijëra rreshta kodi nëpër detyra të shumta dhe ekzekutime standardesh. Ndërsa GitHub Copilot tashmë ndihmonte në njohjen e modeleve, natyra e përsëritur e këtij cikli analitik kërkonte automatizim të plotë. Kjo çoi në krijimin e 'eval-agents,' një sistem i projektuar për të automatizuar këtë barrë intelektuale, duke fuqizuar ekipin e tij në Copilot Applied Science për të arritur efikasitet të ngjashëm.

Plani për Zhvillimin e Drejtuar nga Agjentët

Themelimi i 'eval-agents' u udhëhoq nga një grup i qartë parimesh të fokusuar në bashkëpunim dhe shkallëzueshmëri. McGoffin synonte t'i bënte këta agjentë të AI të lehtë për t'u shpërndarë, të thjeshtë për t'u krijuar dhe mjetin kryesor për kontributet e ekipit. Këto objektiva pasqyrojnë vlerat thelbësore të GitHub, veçanërisht ato të përsosura gjatë përvojës së tij si mirëmbajtës OSS për GitHub CLI. Megjithatë, ishte qëllimi i tretë — bërja e agjentëve të kodimit kontribuesi kryesor — ai që vërtet formësoi drejtimin e projektit dhe zhbllokoi përfitime të papritura për dy të parët.

Konfigurimi agjentik i kodimit shfrytëzonte disa mjete të fuqishme për të thjeshtuar procesin e zhvillimit:

  • Agjenti i kodimit: Copilot CLI, duke ofruar ndërveprim dhe kontroll të drejtpërdrejtë.
  • Modeli i përdorur: Claude Opus 4.6, duke ofruar aftësi të avancuara arsyetimi dhe gjenerimi kodi.
  • IDE: VSCode, duke shërbyer si hapësira qendrore e punës për zhvillim.

Është thelbësore, Copilot SDK ishte thelbësor, duke siguruar qasje në mjetet ekzistuese, serverët MCP, dhe mekanizmat për të regjistruar mjete dhe aftësi të reja. Ky themel eliminoi nevojën për të rishpikur funksionalitetet thelbësore agjentike, duke lejuar ekipin të fokusohej në logjikën specifike të aplikacionit. Ky mjedis i integruar nxiti një cikël zhvillimi të shpejtë, duke provuar se me konfigurimin e duhur, agjentët e AI mund jo vetëm të asistojnë, por edhe të drejtojnë pjesë të rëndësishme të përpjekjes zhvillimore.

Parimet Themelore për Kodim Efektiv Agjentik

Kalimi në një paradigmë të drejtuar nga agjentët kërkon më shumë se thjesht mjete; kërkon një ndryshim në metodologji. McGoffin identifikoi tre parime thelbësore që u treguan themelore për përshpejtimin e zhvillimit dhe nxitjen e bashkëpunimit:

  1. Strategjitë e Kërkesave: Ndërveprimi efektiv me agjentët do të thotë të jesh bisedor, i detajuar dhe të prioritizosh planifikimin.
  2. Strategjitë Arkitekturore: Një bazë kodi e pastër, e dokumentuar mirë dhe e refaktorizuar është thelbësore që agjentët të navgojnë dhe të kontribuojnë efektivisht.
  3. Strategjitë e Iteracionit: Adoptimi i një mentaliteti "fajëso procesin, jo agjentët", e ngjashme me një kulturë pa faj, mundëson eksperimentimin dhe mësimin e shpejtë.

Këto strategji, kur aplikohen në mënyrë konsistente, çuan në rezultate mahnitëse. Si dëshmi e kësaj efikasiteti, pesë kontribues të rinj, brenda vetëm tre ditësh, shtuan kolektivisht 11 agjentë të rinj, katër aftësi të reja dhe prezantuan konceptin e 'rrjedhave të punës eval-agent' në projekt. Ky sprint bashkëpunues rezultoi në një ndryshim të jashtëzakonshëm prej +28,858/-2,884 rreshta kodi në 345 skedarë, duke demonstruar ndikimin e thellë të github-agentic-workflows në praktikë.

Këtu është një përmbledhje e parimeve thelbësore:

ParimiPërshkrimiPërfitimi për Zhvillimin e Drejtuar nga Agjentët
KërkesaTrajtoni agjentët si inxhinierë të lartë: udhëhiqni mendimin e tyre, shpjegoni tejkalimisht supozimet, shfrytëzoni mënyrat e planifikimit (/plan) para ekzekutimit. Jini bisedorë dhe të detajuar.Çon në rezultate më të sakta dhe të rëndësishme, duke ndihmuar agjentët të zgjidhin probleme komplekse në mënyrë efektive.
ArkitekturorePrioritizoni refaktorizimin, dokumentacionin gjithëpërfshirës dhe testimin e fortë. Mbajeni bazën e kodit të pastër, të lexueshme dhe të strukturuar mirë. Pastroni në mënyrë aktive kodin e vjetër.U mundëson agjentëve të kuptojnë bazën e kodit, modelet dhe funksionalitetin ekzistues, duke lehtësuar kontributet e sakta.
IteracioniAdoptimi i një mentaliteti 'fajëso procesin, jo agjentët'. Zbatoni mbrojtje (shkrim të rreptë, 'linters', teste të gjera) për të parandaluar gabimet. Mësoni nga gabimet e agjentëve duke përmirësuar proceset dhe mbrojtjet.Nxit iteracionin e shpejtë, ndërton besimin në kontributet e agjentëve dhe përmirëson vazhdimisht 'pipeline'-n e zhvillimit.

Përshpejtimi i Zhvillimit: Strategjitë në Veprim

Suksesi i kësaj qasjeje të drejtuar nga agjentët rrjedh nga zbatimi praktik i këtyre parimeve.

Strategjitë e Kërkesave: Udhëzimi i Inxhinierit të AI

Agjentët e kodimit me AI, ndonëse të fuqishëm, shkëlqejnë në probleme të kufizuara mirë. Për detyra më komplekse, ata kërkojnë udhëzim, ngjashëm me inxhinierët e rinj. McGoffin zbuloi se angazhimi në një stil bisedor, shpjegimi i supozimeve dhe shfrytëzimi i mënyrave të planifikimit ishin shumë më efektivë sesa komandat e shkurtra. Për shembull, kur shtoheshin teste të fuqishme regresioni, një kërkesë si /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? filloi një dialog produktiv. Ky shkëmbim, shpesh me modelin e fuqishëm claude-opus-4-6, çoi në zgjidhje të sofistikuara si mbrojtjet e testimit të kontratës, të cilat vetëm inxhinierët njerëzorë mund t'i përditësonin, duke siguruar që funksionaliteti kritik të mbetej i mbrojtur.

Strategjitë Arkitekturore: Themeli i Cilësisë së Asistuar nga AI

Për inxhinierët njerëzorë, mirëmbajtja e një baze kodi të pastër, shkrimi i testeve dhe dokumentimi i veçorive shpesh neglizhohen nën presionin e veçorive. Në zhvillimin e drejtuar nga agjentët, këto bëhen thelbësore. McGoffin zbuloi se shpenzimi i kohës për refaktorizim, dokumentim dhe shtim të rasteve të testimit përmirësonte në mënyrë dramatike aftësinë e Copilot për të naviguar dhe kontribuar në bazën e kodit. Një depozitë e parë me agjentë lulëzon me qartësi. Kjo u lejon zhvilluesve madje t'i kërkojnë Copilot pyetje si "Duke ditur atë që di tani, si do ta dizajnoja ndryshe këtë?", duke i kthyer refaktorizimet teorike në projekte të realizueshme me asistencën e AI. Ky fokus i vazhdueshëm në shëndetin arkitekturor siguron që veçoritë e reja të mund të dorëzohen lehtësisht.

Strategjitë e Iteracionit: Besimi te Procesi, Jo Vetëm te Agjenti

Evolucioni i modeleve të AI ka zhvendosur mentalitetin nga "beso, por verifiko" në një qëndrim më besues, ngjashëm me mënyrën se si ekipet efektive operojnë me një filozofi "fajëso procesin, jo njerëzit". Kjo "kulturë pa faj" në zhvillimin e drejtuar nga agjentët do të thotë se kur një agjent i AI bën një gabim, reagimi është të përmirësosh proceset dhe mbrojtjet themelore, në vend që të fajësosh agjentin vetë. Kjo përfshin zbatimin e praktikave të rrepta CI/CD: shkrim të rreptë për të siguruar konformitetin e ndërfaqes, 'linters' të fuqishëm për cilësinë e kodit, dhe teste të gjera integrimi, fund-për-fund dhe kontratë. Ndërsa ndërtimi i këtyre testeve manualisht mund të jetë i shtrenjtë, asistenca e agjentëve i bën ato shumë më të lira për t'u zbatuar, duke ofruar besim kritik në ndryshimet e reja. Duke ngritur këto sisteme, zhvilluesit fuqizojnë Copilot të kontrollojë punën e vet, duke pasqyruar se si një inxhinier i ri vihet në rrugën e suksesit.

Zotërimi i Ciklit të Zhvillimit të Drejtuar nga Agjentët

Integrimi i këtyre parimeve në një rrjedhë pune praktike krijon një cikël zhvillimi të fuqishëm dhe të përshpejtuar:

  1. Planifikoni me Copilot: Nisni veçoritë e reja duke përdorur /plan. Iteroni mbi planin, duke siguruar që testet dhe përditësimet e dokumentacionit të përfshihen dhe të përfundohen para implementimit të kodit. Dokumentacioni mund të shërbejë si një set udhëzimesh shtesë për agjentin.
  2. Implementoni me Autopilot: Lejoni Copilot të implementojë veçorinë duke përdorur /autopilot, duke shfrytëzuar aftësitë e tij të gjenerimit të kodit.
  3. Rishikoni me Copilot Code Review: Kërkoni Copilot të nisë një cikël rishikimi. Kjo përfshin kërkesën ndaj agjentit Copilot Code Review, adresimin e komenteve të tij dhe rikërkimin e rishikimeve derisa çështjet të zgjidhen.
  4. Rishikim Njerëzor: Kryeni një rishikim final njerëzor për të siguruar që modelet të zbatohen dhe vendimet komplekse të jenë në përputhje me qëllimin strategjik.

Përtej ciklit të veçorive, optimizimi i vazhdueshëm është thelbësor. McGoffin rregullisht i kërkon Copilot me komanda si /plan Review the code for any missing tests, any tests that may be broken, and dead code ose /plan Review the documentation and code to identify any documentation gaps. Këto kontrolle, të kryera javore ose kur integrohen veçori të reja, sigurojnë që mjedisi i zhvillimit të drejtuar nga agjentët të mbetet i shëndetshëm dhe efikas.

E Ardhmja e Inxhinierisë Softuerike me AI

Ajo që nisi si një kërkim personal për të automatizuar një detyrë analize zhgënjyese ka evoluar në një paradigmë të re për zhvillimin e softuerit. Zhvillimi i drejtuar nga agjentët, i fuqizuar nga mjete si GitHub Copilot dhe modele të avancuara si Claude Opus, nuk ka të bëjë vetëm me bërjen e zhvilluesve më të shpejtë; ka të bëjë me ndryshimin thelbësor të natyrës së punës si për studiuesit e AI ashtu edhe për inxhinierët softuerikë. Duke transferuar punën intelektuale te agjentët inteligjentë, ekipet mund të arrijnë nivele të paparashikueshme produktiviteti, bashkëpunimi dhe inovacioni, duke u fokusuar në fund të fundit në sfidat krijuese dhe strategjike që vërtet drejtojnë progresin. Kjo qasje paralajmëron një të ardhme emocionuese ku agjentët e AI nuk janë thjesht mjete, por anëtarë integralë të ekipit të zhvillimit, duke transformuar mënyrën se si ndërtojmë dhe mirëmbajmë softuerin.

Pyetjet e bëra shpesh

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.

Qëndroni të përditësuar

Merrni lajmet më të fundit të AI në email.

Ndaj