Автоматизиране на интелектуалния труд с AI агенти
В бързо развиващия се пейзаж на софтуерното инженерство, стремежът към ефективност често води до революционни иновации. Тайлър МакГофин, AI изследовател, наскоро представи подробно пътешествие, което олицетворява този дух: автоматизиране на неговия интелектуален труд чрез разработка, управлявана от агенти, с GitHub Copilot. Това не е просто за по-бързо кодиране; става въпрос за фундаментално изместване на ролята на разработчика от повтарящ се анализ към творческо решаване на проблеми и стратегически надзор. Опитът на МакГофин подчертава познат модел сред инженерите — изграждане на инструменти за премахване на рутинния труд — но го отвежда една стъпка по-далеч, като доверява на AI агенти сложни аналитични задачи, които преди това бяха невъзможни за мащабиране ръчно.
Вдъхновението на МакГофин произлиза от критичен, но същевременно непосилен аспект на работата му: анализиране на производителността на кодиращи агенти спрямо бенчмаркове като TerminalBench2 и SWEBench-Pro. Това включваше разчленяване на 'траектории' — подробни JSON записи на мисловните процеси и действията на агента — които можеха да възлизат на стотици хиляди редове код в множество задачи и бенчмарк изпълнения. Докато GitHub Copilot вече помагаше при разпознаването на модели, повтарящият се характер на този аналитичен цикъл настояваше за пълна автоматизация. Това доведе до създаването на 'eval-agents' — система, предназначена да автоматизира това интелектуално бреме, давайки възможност на неговия екип в Copilot Applied Science да постигне подобни ефективности.
Планът за разработка, управлявана от агенти
Създаването на 'eval-agents' беше водено от ясен набор от принципи, фокусирани върху сътрудничеството и мащабируемостта. МакГофин се стремеше да направи тези AI агенти лесни за споделяне, прости за създаване и основно средство за приноса на екипа. Тези цели отразяват основните ценности на GitHub, особено тези, изковани по време на опита му като поддържащ OSS за GitHub CLI. Въпреки това, третата цел — превръщането на кодиращите агенти в основен сътрудник — наистина оформи посоката на проекта и отключи неочаквани ползи за първите две.
Агентичната среда за кодиране използва няколко мощни инструмента за рационализиране на процеса на разработка:
- Кодиращ агент: Copilot CLI, осигуряващ директно взаимодействие и контрол.
- Използван модел: Claude Opus 4.6, предлагащ усъвършенствани възможности за разсъждение и генериране на код.
- IDE: VSCode, служещо като централно работно пространство за разработка.
От решаващо значение беше Copilot SDK, осигуряващо достъп до съществуващи инструменти, MCP сървъри и механизми за регистриране на нови инструменти и умения. Тази основа елиминира нуждата от преоткриване на основни агентични функционалности, позволявайки на екипа да се фокусира върху логиката, специфична за приложението. Тази интегрирана среда подхрани бърз цикъл на разработка, доказвайки, че с правилната настройка, AI агентите могат не само да помагат, но и да движат значителни части от усилията за разработка.
Основни принципи за ефективно агентично кодиране
Преминаването към парадигма, управлявана от агенти, изисква повече от просто инструментариум; то изисква промяна в методологията. МакГофин идентифицира три основни принципа, които се оказаха фундаментални за ускоряване на разработката и насърчаване на сътрудничеството:
- Стратегии за промптинг: Ефективното взаимодействие с агенти означава да бъдете разговорчиви, подробни и да приоритизирате планирането.
- Архитектурни стратегии: Чиста, добре документирана и рефакторирана кодова база е от първостепенно значение за агентите, за да могат ефективно да навигират и да допринасят.
- Стратегии за итерация: Приемането на мислене "обвинявай процеса, не агентите", подобно на култура без обвинения, позволява бързо експериментиране и учене.
Тези стратегии, когато се прилагат последователно, доведоха до удивителни резултати. Като доказателство за тази ефективност, петима нови участници, само за три дни, колективно добавиха 11 нови агента, четири нови умения и въведоха концепцията за 'eval-agent работни процеси' в проекта. Този съвместен спринт доведе до забележителна +28,858/-2,884 реда код промяна в 345 файла, демонстрирайки дълбокото въздействие на github-agentic-workflows на практика.
Ето резюме на основните принципи:
| Принцип | Описание | Полза за разработката, управлявана от агенти |
|---|---|---|
| Промптиране | Отнасяйте се към агентите като към старши инженери: насочвайте мисленето им, обяснявайте подробно допусканията, използвайте режими за планиране (/plan) преди изпълнение. Бъдете разговорчиви и подробни. | Води до по-точни и уместни резултати, помагайки на агентите ефективно да решават сложни проблеми. |
| Архитектура | Приоритизирайте рефакторинга, изчерпателната документация и стабилното тестване. Поддържайте кодовата база чиста, четима и добре структурирана. Активно почиствайте ненужен код. | Позволява на агентите да разбират кодовата база, моделите и съществуващата функционалност, улеснявайки точния принос. |
| Итерация | Приемете мислене "обвинявай процеса, не агентите". Прилагайте предпазни мерки (стриктно типизиране, линтери, обширни тестове) за предотвратяване на грешки. Учете се от грешките на агентите, като подобрявате процесите и предпазните мерки. | Насърчава бърза итерация, изгражда доверие в приноса на агентите и непрекъснато подобрява процеса на разработка. |
Ускоряване на разработката: Стратегии в действие
Успехът на този подход, управляван от агенти, се корени в практическото прилагане на тези принципи.
Стратегии за промптинг: Насочване на AI инженера
AI кодиращите агенти, макар и мощни, се отличават при добре дефинирани проблеми. За по-сложни задачи те изискват насоки, подобно на младши инженери. МакГофин установи, че ангажирането в разговорен стил, обясняването на допусканията и използването на режими за планиране са много по-ефективни от кратките команди. Например, когато се добавят стабилни регресионни тестове, промпт като /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? инициира продуктивен диалог. Този диалог, често с мощния модел Claude Opus 4.6, доведе до сложни решения като предпазни мерки за тестване на договори, които само човешки инженери можеха да актуализират, гарантирайки, че критичната функционалност остава защитена.
Архитектурни стратегии: Основата на подпомаганото от AI качество
За човешките инженери, поддържането на чиста кодова база, писането на тестове и документирането на функционалности често са с по-нисък приоритет под натиска за нови функционалности. При разработката, управлявана от агенти, те стават от първостепенно значение. МакГофин откри, че отделянето на време за рефакторинг, документиране и добавяне на тестови случаи драстично подобрява способността на Copilot да навигира и да допринася към кодовата база. Хранилище, ориентирано към агенти, процъфтява върху яснотата. Това позволява на разработчиците дори да подканват Copilot с въпроси като "Знаейки това, което знам сега, как бих проектирал това по различен начин?", превръщайки теоретичните рефакторинги в постижими проекти с помощта на AI. Този непрекъснат фокус върху архитектурното здраве гарантира, че новите функционалности могат да бъдат предоставени тривиално.
Стратегии за итерация: Доверяване на процеса, а не само на агента
Еволюцията на AI моделите измести мисленето от "доверявай се, но проверявай" към по-доверчива позиция, аналогична на това как ефективните екипи работят с философия "обвинявай процеса, не хората". Тази "култура без обвинения" при разработката, управлявана от агенти, означава, че когато AI агент допусне грешка, отговорът е да се подобрят основните процеси и предпазни мерки, вместо да се обвинява самият агент. Това включва прилагане на строги CI/CD практики: стриктно типизиране за осигуряване на съответствие на интерфейса, стабилни линтери за качество на кода и обширни интеграционни, end-to-end и договорни тестове. Докато изграждането на тези тестове ръчно може да бъде скъпо, помощта на агентите ги прави много по-евтини за внедряване, осигурявайки критична увереност в новите промени. Чрез настройването на тези системи, разработчиците дават възможност на Copilot да проверява собствената си работа, отразявайки как един младши инженер е настроен за успех.
Овладяване на цикъла на разработка, управлявана от агенти
Интегрирането на тези принципи в практичен работен процес създава мощен, ускорен цикъл на разработка:
- Планирайте с Copilot: Инициирайте нови функционалности, използвайки
/plan. Итерирайте плана, като гарантирате, че актуализациите на тестовете и документацията са включени и завършени преди имплементацията на кода. Документацията може да служи като допълнителен набор от насоки за агента. - Имплементирайте с Autopilot: Позволете на Copilot да имплементира функционалността, използвайки
/autopilot, като използва възможностите си за генериране на код. - Прегледайте с Copilot Code Review: Подканете Copilot да инициира цикъл на преглед. Това включва изискване на агента Copilot Code Review, адресиране на неговите коментари и повторно изискване на прегледи, докато проблемите не бъдат разрешени.
- Човешки преглед: Извършете окончателен човешки преглед, за да гарантирате, че моделите се спазват и сложните решения са в съответствие със стратегическите намерения.
Отвъд цикъла на функционалности, непрекъснатата оптимизация е ключова. МакГофин рутинно подканва Copilot с команди като /plan Review the code for any missing tests, any tests that may be broken, and dead code или /plan Review the documentation and code to identify any documentation gaps. Тези проверки, изпълнявани ежеседмично или при интегриране на нови функционалности, гарантират, че средата за разработка, управлявана от агенти, остава здрава и ефективна.
Бъдещето на софтуерното инженерство с AI
Това, което започна като лично търсене за автоматизиране на една разочароваща задача за анализ, се превърна в нова парадигма за разработка на софтуер. Разработката, управлявана от агенти, захранвана от инструменти като GitHub Copilot и усъвършенствани модели като Claude Opus, не е просто за това да направи разработчиците по-бързи; става въпрос за фундаментално променяне на естеството на работа както за AI изследователите, така и за софтуерните инженери. Чрез прехвърляне на интелектуалния труд към интелигентни агенти, екипите могат да постигнат безпрецедентни нива на производителност, сътрудничество и иновации, като в крайна сметка се фокусират върху творческите и стратегически предизвикателства, които наистина движат напредъка. Този подход предвещава вълнуващо бъдеще, в което AI агентите не са просто инструменти, а неразделни членове на екипа за разработка, трансформирайки начина, по който изграждаме и поддържаме софтуер.
Оригинален източник
https://github.blog/ai-and-ml/github-copilot/agent-driven-development-in-copilot-applied-science/Често задавани въпроси
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?
Бъдете информирани
Получавайте последните AI новини по имейл.
