Code Velocity
Zana za Msanidi

Ukuzaji Unaoendeshwa na Wakala: Kuimarisha Sayansi Tumizi ya Copilot

·7 dakika kusoma·GitHub·Chanzo asili
Shiriki
Picha ya skrini inayoonyesha kiolesura cha ukuzaji kinachoendeshwa na wakala cha GitHub Copilot, ikionyesha mapendekezo ya msimbo na mifumo ya kazi ya usimbaji shirikishi.

Kuendesha Kazi ya Kiakili Kiotomatiki kwa Wakala wa AI

Katika mazingira yanayoendelea kwa kasi ya uhandisi wa programu, harakati ya ufanisi mara nyingi husababisha uvumbuzi wa kutisha. Tyler McGoffin, mtafiti wa AI, hivi karibuni alielezea safari inayoakisi roho hii: kuendesha kazi yake ya kiakili kiotomatiki kupitia ukuzaji unaoendeshwa na wakala na GitHub Copilot. Hii si tu kuhusu usimbaji wa haraka; ni kuhusu kubadilisha kimsingi jukumu la msanidi kutoka uchambuzi unaorudiwa hadi utatuzi wa matatizo ya ubunifu na usimamizi wa kimkakati. Uzoefu wa McGoffin unaonyesha muundo unaojulikana kati ya wahandisi—kutengeneza zana za kuondoa kazi ngumu—lakini anachukua hatua zaidi kwa kuwakabidhi wakala wa AI kazi ngumu za uchambuzi ambazo hapo awali zilikuwa haziwezekani kupanuliwa kwa mikono.

Msukumo wa McGoffin ulitokana na kipengele muhimu, lakini chenye kutisha, cha kazi yake: kuchambua utendaji wa wakala wa usimbaji dhidi ya vigezo kama TerminalBench2 na SWEBench-Pro. Hii ilihusisha kuchambua 'mifumo ya mienendo'—kumbukumbu za JSON za kina za michakato ya mawazo na vitendo vya wakala—ambazo zinaweza kufikia mamia ya maelfu ya mistari ya msimbo katika kazi nyingi na utekelezaji wa vigezo. Ingawa GitHub Copilot tayari ilisaidia katika utambuzi wa mifumo, asili inayojirudia ya mzunguko huu wa uchambuzi ilihitaji sana uendeshaji kamili wa kiotomatiki. Hii ilisababisha uundaji wa 'eval-agents,' mfumo ulioundwa kuendesha mzigo huu wa kiakili kiotomatiki, ukiwezesha timu yake katika Copilot Applied Science kufikia ufanisi sawa.

Mchoro wa Ukuzaji Unaoendeshwa na Wakala

Mwanzo wa 'eval-agents' uliongozwa na seti wazi ya kanuni zilizolenga ushirikiano na upanuzi. McGoffin alilenga kufanya wakala hawa wa AI wawe rahisi kushiriki, rahisi kuandika, na gari kuu la michango ya timu. Malengo haya yanaakisi maadili makuu ya GitHub, hasa yale yaliyoboreshwa wakati wa uzoefu wake kama mtunzaji wa OSS wa GitHub CLI. Hata hivyo, ilikuwa lengo la tatu—kuwafanya wakala wa usimbaji kuwa mchangiaji mkuu—ambalo liliunda kweli mwelekeo wa mradi na kufungua faida zisizotarajiwa kwa malengo mawili ya kwanza.

Usanidi wa usimbaji wa wakala ulitumia zana kadhaa zenye nguvu kurahisisha mchakato wa ukuzaji:

  • Wakala wa usimbaji: Copilot CLI, inayotoa mwingiliano wa moja kwa moja na udhibiti.
  • Muundo uliotumika: Claude Opus 4.6, inayotoa uwezo wa juu wa hoja na uzalishaji wa msimbo.
  • IDE: VSCode, inayotumika kama nafasi kuu ya kazi kwa ukuzaji.

Muhimu, Copilot SDK ilikuwa muhimu sana, ikitoa ufikiaji wa zana zilizopo, seva za MCP, na taratibu za kusajili zana na ujuzi mpya. Msingi huu uliondoa hitaji la kurudia utendakazi wa msingi wa wakala, kuruhusu timu kuzingatia mantiki maalum ya programu. Mazingira haya jumuishi yalikuza mzunguko wa ukuzaji wa haraka, ikithibitisha kwamba kwa usanidi sahihi, wakala wa AI hawakuweza tu kusaidia bali pia kuendesha sehemu kubwa ya juhudi za ukuzaji.

Kanuni Muhimu za Usimbaji Bora wa Wakala

Kuhama kwenda kwenye dhana inayoendeshwa na wakala kunahitaji zaidi ya zana tu; kunadai mabadiliko ya mbinu. McGoffin alitambua kanuni tatu muhimu ambazo zilionyesha kuwa msingi wa kuharakisha ukuzaji na kukuza ushirikiano:

  1. Mikakati ya Kutoa Vidokezo: Kuingiliana na wakala kwa ufanisi kunamaanisha kuwa wa mazungumzo, maelezo mengi, na kuipa kipaumbele mipango.
  2. Mikakati ya Usanifu: Msingi wa msimbo safi, wenye nyaraka kamili, na uliorekebishwa upya ni muhimu sana kwa wakala kupitia na kuchangia kwa ufanisi.
  3. Mikakati ya Kurudia: Kukumbatia mawazo ya "laumu mchakato, sio wakala," sawa na utamaduni usio na lawama, huwezesha majaribio ya haraka na kujifunza.

Mikakati hii, inapotumika mfululizo, ilisababisha matokeo ya kushangaza. Kama ushuhuda wa ufanisi huu, wachangiaji wapya watano, ndani ya siku tatu tu, kwa pamoja waliongeza wakala 11 wapya, ujuzi nne mpya, na kuanzisha dhana ya 'mifumo ya kazi ya wakala wa tathmini' kwenye mradi. Mbio hizi shirikishi zilisababisha mabadiliko ya ajabu ya +28,858/-2,884 mistari ya msimbo katika faili 345, ikionyesha athari kubwa ya mifumo ya kazi ya wakala wa github katika vitendo.

Hapa kuna muhtasari wa kanuni kuu:

KanuniMaelezoFaida kwa Ukuzaji Unaoendeshwa na Wakala
Kutoa VidokezoWatendee wakala kama wahandisi wazoefu: elekeza mawazo yao, eleza kupita kiasi mawazo, tumia hali za kupanga (/plan) kabla ya utekelezaji. Kuwa wa mazungumzo na wa kina.Husababisha matokeo sahihi zaidi na muhimu, ikiwasaidia wakala kutatua matatizo magumu kwa ufanisi.
UsanifuIpe kipaumbele kurekebisha upya, nyaraka kamili, na upimaji thabiti. Weka msingi wa msimbo safi, unaosomeka, na uliopangwa vizuri. Safisha kikamilifu msimbo usiokitumika.Huwawezesha wakala kuelewa msingi wa msimbo, mifumo, na utendakazi uliopo, na kuwezesha michango sahihi.
KurudiaKukumbatia mawazo ya 'laumu mchakato, sio wakala.' Tekeleza vizuizi (uwekaji vikali wa aina, linters, majaribio mengi) ili kuzuia makosa. Jifunze kutokana na makosa ya wakala kwa kuboresha michakato na vizuizi.Hukuza kurudia haraka, hujenga ujasiri katika michango ya wakala, na kuboresha mfululizo mkondo wa ukuzaji.

Kuharakisha Ukuzaji: Mikakati Katika Vitendo

Mafanikio ya mbinu hii inayoendeshwa na wakala yanatokana na matumizi ya vitendo ya kanuni hizi.

Mikakati ya Kutoa Vidokezo: Kuongoza Mhandisi wa AI

Wakala wa usimbaji wa AI, ingawa wana nguvu, huweka vyema katika matatizo yaliyopangwa vizuri. Kwa kazi ngumu zaidi, wanahitaji mwongozo, kama vile wahandisi wachanga. McGoffin aligundua kuwa kushiriki katika mtindo wa mazungumzo, kuelezea mawazo, na kutumia hali za kupanga kulikuwa na ufanisi zaidi kuliko amri fupi. Kwa mfano, wakati wa kuongeza majaribio thabiti ya kurudisha nyuma, kidokezo kama /plan Nimeona hivi karibuni Copilot ikisasisha majaribio kwa furaha ili kulingana na mifumo yake mipya ingawa majaribio hayafai kusasishwa. Ninawezaje kuunda nafasi ya majaribio iliyohifadhiwa ambayo Copilot haiwezi kugusa au lazima ihifadhi ili kujikinga na kurudi nyuma? kilianzisha mazungumzo yenye tija. Mwingiliano huu, mara nyingi na muundo thabiti wa Claude Opus 4.6, ulisababisha suluhisho za kisasa kama vile vizuizi vya upimaji wa mkataba, ambavyo wahandisi wa kibinadamu pekee ndio wangeweza kusasisha, kuhakikisha utendakazi muhimu unabaki salama.

Mikakati ya Usanifu: Msingi wa Ubora Unaosaidiwa na AI

Kwa wahandisi wa kibinadamu, kutunza msingi wa msimbo safi, kuandika majaribio, na kuweka nyaraka za vipengele mara nyingi huwekwa kipaumbele cha chini chini ya shinikizo la vipengele. Katika ukuzaji unaoendeshwa na wakala, haya yanakuwa muhimu sana. McGoffin aligundua kuwa kutumia muda kurekebisha upya, kuweka nyaraka, na kuongeza kesi za majaribio kuliboresha sana uwezo wa Copilot kupitia na kuchangia kwenye msingi wa msimbo. Hifadhi ya kwanza ya wakala inastawi kwa uwazi. Hii inaruhusu wasanidi hata kumpa Copilot maswali kama 'Nikijua ninachojua sasa, ningeundaje hii tofauti?', kubadilisha urekebishaji wa kinadharia kuwa miradi inayoweza kufikiwa kwa usaidizi wa AI. Kuzingatia huku kwa kudumu kwenye afya ya usanifu kunahakikisha kuwa vipengele vipya vinaweza kutolewa kwa urahisi.

Mikakati ya Kurudia: Kuamini Mchakato, Sio Tu Wakala

Mageuzi ya mifumo ya AI yamebadilisha mawazo kutoka 'amini lakini hakikisha' kwenda kwenye msimamo wa kuamini zaidi, sawa na jinsi timu zenye ufanisi zinavyofanya kazi na falsafa ya 'laumu mchakato, sio watu.' 'Utamaduni huu usio na lawama' katika ukuzaji unaoendeshwa na wakala unamaanisha kwamba wakala wa AI anapofanya kosa, jibu ni kuboresha michakato na vizuizi vilivyopo, badala ya kumlaumu wakala mwenyewe. Hii inahusisha kutekeleza mazoea magumu ya CI/CD: uwekaji vikali wa aina ili kuhakikisha utiifu wa kiolesura, linters thabiti kwa ubora wa msimbo, na majaribio mengi ya ujumuishaji, mwisho-hadi-mwisho, na mkataba. Ingawa kujenga majaribio haya kwa mikono kunaweza kuwa ghali, usaidizi wa wakala unawafanya kuwa na gharama nafuu zaidi kutekeleza, ikitoa ujasiri muhimu katika mabadiliko mapya. Kwa kuanzisha mifumo hii, wasanidi wanampa Copilot uwezo wa kukagua kazi yake mwenyewe, ikiakisi jinsi mhandisi mchanga anavyowekwa kwa mafanikio.

Kufahamu Mzunguko wa Ukuzaji Unaoendeshwa na Wakala

Kuunganisha kanuni hizi kwenye mfumo wa kazi unaotumika huunda mzunguko wa ukuzaji wenye nguvu, ulioharakishwa:

  1. Panga na Copilot: Anzisha vipengele vipya kwa kutumia /plan. Rudia mpango, kuhakikisha vipimo na masasisho ya nyaraka yamejumuishwa na kukamilika kabla ya utekelezaji wa msimbo. Nyaraka zinaweza kutumika kama seti ya ziada ya miongozo kwa wakala.
  2. Tekeleza na Autopilot: Ruhusu Copilot kutekeleza kipengele kwa kutumia /autopilot, ikitumia uwezo wake wa kuzalisha msimbo.
  3. Kagua na Copilot Code Review: Mpe Copilot kidokezo kuanzisha mzunguko wa ukaguzi. Hii inahusisha kuomba wakala wa Copilot Code Review, kushughulikia maoni yake, na kuomba tena ukaguzi hadi masuala yatatuliwe.
  4. Ukaguzi wa Binadamu: Fanya ukaguzi wa mwisho wa binadamu ili kuhakikisha mifumo inatekelezwa na maamuzi magumu yanaendana na nia ya kimkakati.

Zaidi ya mzunguko wa vipengele, uboreshaji endelevu ni muhimu. McGoffin mara kwa mara humpa Copilot amri kama vile /plan Kagua msimbo kwa ajili ya vipimo vyovyote vinavyokosekana, vipimo vyovyote vinavyoweza kuvunjika, na msimbo usiokitumika au /plan Kagua nyaraka na msimbo ili kutambua mapungufu yoyote ya nyaraka. Ukaguzi huu, unaoendeshwa kila wiki au vipengele vipya vinapojumuishwa, unahakikisha mazingira ya ukuzaji unaoendeshwa na wakala yanabaki na afya na ufanisi.

Mustakabali wa Uhandisi wa Programu na AI

Kile kilichoanza kama azma ya kibinafsi ya kuendesha kazi ya uchambuzi yenye kufadhaisha kiotomatiki kimegeuka kuwa dhana mpya ya ukuzaji wa programu. Ukuzaji unaoendeshwa na wakala, unaotumiwa na zana kama GitHub Copilot na mifumo ya hali ya juu kama Claude Opus, si tu kuhusu kuwafanya wasanidi kuwa wepesi; ni kuhusu kubadilisha kimsingi asili ya kazi kwa watafiti wa AI na wahandisi wa programu sawa. Kwa kuhamisha kazi ngumu ya kiakili kwa wakala wenye akili, timu zinaweza kufikia viwango visivyo na kifani vya tija, ushirikiano, na uvumbuzi, hatimaye kuzingatia changamoto za ubunifu na kimkakati zinazoendesha maendeleo kweli. Mbinu hii inatangaza mustakabali wa kusisimua ambapo wakala wa AI si zana tu, bali ni wanachama muhimu wa timu ya ukuzaji, wakibadilisha jinsi tunavyojenga na kutunza programu.

Maswali Yanayoulizwa Mara kwa Mara

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.

Baki na Habari

Pokea habari za hivi karibuni za AI kwenye barua pepe yako.

Shiriki