Code Velocity
ڈویلپر ٹولز

ایجنٹ سے چلنے والی ترقی: کوپائلٹ اپلائیڈ سائنس کو تقویت دینا

·7 منٹ پڑھنے·GitHub·اصل ماخذ
شیئر کریں
GitHub Copilot کے ایجنٹ سے چلنے والے ترقیاتی انٹرفیس کا اسکرین شاٹ، جو کوڈ کی تجاویز اور باہمی تعاون کے کوڈنگ کام کے فلو کو دکھا رہا ہے۔

AI ایجنٹس کے ساتھ فکری مشقت کو خودکار بنانا

سافٹ ویئر انجینئرنگ کے تیزی سے ترقی پذیر منظرنامے میں، کارکردگی کی تلاش اکثر انقلابی ایجادات کا باعث بنتی ہے۔ AI محقق ٹائلر میکگوفن نے حال ہی میں ایک ایسے سفر کی تفصیلات بیان کیں جو اس جذبے کی بہترین مثال ہے: GitHub Copilot کے ساتھ ایجنٹ سے چلنے والی ترقی کے ذریعے اپنی فکری مشقت کو خودکار بنانا۔ یہ صرف تیز کوڈنگ کے بارے میں نہیں ہے؛ یہ بنیادی طور پر ڈویلپر کے کردار کو بار بار کے تجزیے سے تخلیقی مسئلے کے حل اور اسٹریٹجک نگرانی کی طرف منتقل کرنے کے بارے میں ہے۔ میکگوفن کا تجربہ انجینئرز کے درمیان ایک واقف نمونے — مشقت کو ختم کرنے کے لیے ٹولز بنانا — کو اجاگر کرتا ہے، لیکن وہ اس سے ایک قدم آگے بڑھ کر AI ایجنٹس کو پیچیدہ تجزیاتی کاموں کی ذمہ داری سونپتے ہیں جو پہلے دستی طور پر پیمانے کے قابل نہیں تھے۔

میکگوفن کی تحریک ان کے کام کے ایک اہم، yet بہت بڑے، پہلو سے پیدا ہوئی: TerminalBench2 اور SWEBench-Pro جیسے بینچ مارکس کے خلاف کوڈنگ ایجنٹ کی کارکردگی کا تجزیہ کرنا۔ اس میں 'ٹرایجیکٹریز' — ایک ایجنٹ کے فکری عمل اور اقدامات کے تفصیلی JSON لاگز — کا تجزیہ شامل تھا، جو متعدد کاموں اور بینچ مارک رن میں لاکھوں لائنوں کے کوڈ تک ہو سکتا تھا۔ اگرچہ GitHub Copilot پیٹرن کی شناخت میں پہلے ہی مدد کر رہا تھا، اس تجزیاتی لوپ کی دہرائی جانے والی نوعیت نے مکمل خودکار نظام کی ضرورت کو واضح کیا۔ اس کے نتیجے میں 'eval-agents' کی تخلیق ہوئی، ایک ایسا نظام جو اس فکری بوجھ کو خودکار بنانے کے لیے ڈیزائن کیا گیا تھا، جس سے Copilot Applied Science میں ان کی ٹیم کو اسی طرح کی کارکردگی حاصل کرنے میں مدد ملی۔

ایجنٹ سے چلنے والی ترقی کا خاکہ

'eval-agents' کی ابتدا تعاون اور پیمانے کی قابلیت پر مرکوز اصولوں کے ایک واضح سیٹ سے رہنمائی کی گئی تھی۔ میکگوفن کا مقصد ان AI ایجنٹس کو اشتراک کے قابل، مصنف کے لیے آسان، اور ٹیم کے شراکت کے لیے بنیادی ذریعہ بنانا تھا۔ یہ مقاصد GitHub کی بنیادی اقدار کی عکاسی کرتے ہیں، خاص طور پر وہ جو GitHub CLI کے لیے OSS مینٹینر کے طور پر ان کے تجربے کے دوران نکھارے گئے تھے۔ تاہم، یہ تیسرا ہدف — کوڈنگ ایجنٹس کو بنیادی حصہ دار بنانا — تھا جس نے واقعی پروجیکٹ کی سمت کو تشکیل دیا اور پہلے دو کے لیے غیر متوقع فوائد کو کھولا۔

ایجنٹک کوڈنگ سیٹ اپ نے ترقیاتی عمل کو ہموار کرنے کے لیے کئی طاقتور ٹولز کا فائدہ اٹھایا:

  • کوڈنگ ایجنٹ: Copilot CLI، جو براہ راست تعامل اور کنٹرول فراہم کرتا ہے۔
  • استعمال شدہ ماڈل: Claude Opus 4.6، جو جدید استدلال اور کوڈ جنریشن کی صلاحیتیں پیش کرتا ہے۔
  • IDE: VSCode، جو ترقی کے لیے مرکزی ورک اسپیس کے طور پر کام کرتا ہے۔

اہم بات یہ ہے کہ، Copilot SDK انتہائی اہم تھا، جس نے موجودہ ٹولز، MCP سرورز، اور نئے ٹولز اور مہارتوں کو رجسٹر کرنے کے میکانزم تک رسائی فراہم کی۔ اس بنیاد نے بنیادی ایجنٹک افعال کو دوبارہ ایجاد کرنے کی ضرورت کو ختم کر دیا، جس سے ٹیم کو ایپلیکیشن کے مخصوص منطق پر توجہ مرکوز کرنے کا موقع ملا۔ اس مربوط ماحول نے ایک تیز ترقیاتی لوپ کو فروغ دیا، یہ ثابت کرتے ہوئے کہ صحیح سیٹ اپ کے ساتھ، AI ایجنٹس نہ صرف مدد کر سکتے ہیں بلکہ ترقیاتی کوششوں کے اہم حصوں کو بھی چلا سکتے ہیں۔

موثر ایجنٹک کوڈنگ کے لیے بنیادی اصول

ایجنٹ سے چلنے والے نمونے میں منتقلی صرف ٹولنگ سے زیادہ کا تقاضا کرتی ہے؛ اس کے لیے طریقہ کار میں تبدیلی کی ضرورت ہوتی ہے۔ میکگوفن نے تین بنیادی اصولوں کی نشاندہی کی جو ترقی کو تیز کرنے اور تعاون کو فروغ دینے کے لیے بنیادی ثابت ہوئے:

  1. پرامپٹ کرنے کی حکمت عملی: ایجنٹوں کے ساتھ مؤثر طریقے سے تعامل کرنے کا مطلب ہے بات چیت کرنے والا، تفصیلی، اور منصوبہ بندی کو ترجیح دینا۔
  2. آرکیٹیکچرل حکمت عملی: ایک صاف، اچھی طرح سے دستاویز شدہ، اور ریفیکٹرڈ کوڈ بیس ایجنٹوں کے لیے مؤثر طریقے سے نیویگیٹ کرنے اور اس میں حصہ ڈالنے کے لیے انتہائی اہم ہے۔
  3. اعادی حکمت عملی: 'بے قصور کلچر' کی طرح، 'عمل کو قصوروار ٹھہرائیں، ایجنٹوں کو نہیں' کے رویے کو اپنانا تیز تجربات اور سیکھنے کو ممکن بناتا ہے۔

ان حکمت عملیوں کو، جب مستقل طور پر لاگو کیا گیا، تو حیرت انگیز نتائج برآمد ہوئے۔ اس افادیت کی گواہی میں، پانچ نئے حصہ داروں نے، صرف تین دنوں کے اندر، اجتماعی طور پر 11 نئے ایجنٹس، چار نئی مہارتیں شامل کیں، اور پروجیکٹ میں 'eval-agent workflows' کے تصور کو متعارف کرایا۔ اس باہمی تعاون کے نتیجے میں 345 فائلوں میں +28,858/-2,884 لائنوں کے کوڈ کی نمایاں تبدیلی آئی، جو عملی طور پر 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 سے ایسے سوالات پوچھنے کی بھی اجازت دیتا ہے جیسے 'Knowing what I know now, how would I design this differently?'، نظریاتی ریفیکٹرز کو AI کی مدد سے قابل حصول منصوبوں میں تبدیل کرتے ہوئے اسٹریٹجک ارادے کے مطابق ہوں۔ فن تعمیراتی صحت پر یہ مسلسل توجہ اس بات کو یقینی بناتی ہے کہ نئی خصوصیات آسانی سے فراہم کی جا سکیں۔

اعادی حکمت عملی: عمل پر بھروسہ، صرف ایجنٹ پر نہیں

AI ماڈلز کے ارتقاء نے ذہنیت کو "بھروسہ کریں لیکن تصدیق کریں" سے ایک زیادہ بھروسہ مند موقف کی طرف منتقل کر دیا ہے، جو اس کے مماثل ہے کہ موثر ٹیمیں "عمل کو قصوروار ٹھہرائیں، لوگوں کو نہیں" کے فلسفے کے ساتھ کیسے کام کرتی ہیں۔ ایجنٹ سے چلنے والی ترقی میں یہ "بے قصور کلچر" کا مطلب ہے کہ جب کوئی AI ایجنٹ غلطی کرتا ہے، تو ردعمل یہ ہوتا ہے کہ بنیادی عمل اور حفاظتی اقدامات کو بہتر بنایا جائے، بجائے اس کے کہ ایجنٹ کو ہی قصوروار ٹھہرایا جائے۔ اس میں سخت CI/CD طریقوں کو لاگو کرنا شامل ہے: انٹرفیس کی مطابقت کو یقینی بنانے کے لیے سخت ٹائپنگ، کوڈ کے معیار کے لیے مضبوط لنٹرز، اور وسیع انٹیگریشن، اینڈ ٹو اینڈ، اور کنٹریکٹ ٹیسٹ۔ اگرچہ ان ٹیسٹوں کو دستی طور پر بنانا مہنگا ہو سکتا ہے، ایجنٹ کی مدد انہیں لاگو کرنا بہت سستا بنا دیتی ہے، جو نئی تبدیلیوں میں اہم اعتماد فراہم کرتی ہے۔ ان سسٹمز کو قائم کرکے، ڈویلپرز Copilot کو اپنا کام چیک کرنے کا اختیار دیتے ہیں، یہ اس کی عکاسی کرتا ہے کہ ایک جونیئر انجینئر کو کامیابی کے لیے کیسے تیار کیا جاتا ہے۔

ایجنٹ سے چلنے والے ترقیاتی لوپ میں مہارت حاصل کرنا

ان اصولوں کو عملی کام کے فلو میں ضم کرنے سے ایک طاقتور، تیز ترقیاتی لوپ بنتا ہے:

  1. Copilot کے ساتھ منصوبہ بندی کریں: /plan کا استعمال کرتے ہوئے نئی خصوصیات شروع کریں۔ منصوبہ پر نظر ثانی کریں، اس بات کو یقینی بناتے ہوئے کہ کوڈ کے نفاذ سے پہلے ٹیسٹ اور دستاویزات کی تازہ کاریوں کو شامل اور مکمل کیا جائے۔ دستاویزات ایجنٹ کے لیے اضافی رہنما خطوط کے طور پر کام کر سکتی ہیں۔
  2. Autopilot کے ساتھ لاگو کریں: Copilot کو /autopilot کا استعمال کرتے ہوئے خصوصیت کو لاگو کرنے کی اجازت دیں، اس کی کوڈ جنریشن کی صلاحیتوں کا فائدہ اٹھاتے ہوئے۔
  3. Copilot Code Review کے ساتھ جائزہ لیں: Copilot کو ایک جائزہ لوپ شروع کرنے کے لیے کہیں۔ اس میں Copilot Code Review ایجنٹ کی درخواست کرنا، اس کے تبصروں کو حل کرنا، اور مسائل حل ہونے تک دوبارہ جائزے کی درخواست کرنا شامل ہے۔
  4. انسانی جائزہ: پیٹرن کو نافذ کرنے اور پیچیدہ فیصلوں کو اسٹریٹجک ارادے کے مطابق کرنے کو یقینی بنانے کے لیے ایک حتمی انسانی جائزہ لیں۔

فیچر لوپ سے ہٹ کر، مسلسل اصلاح کلیدی ہے۔ میکگوفن باقاعدگی سے 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 ایجنٹس صرف ٹولز نہیں ہیں، بلکہ ترقیاتی ٹیم کے لازمی ارکان ہیں، جو ہمارے سافٹ ویئر کی تعمیر اور دیکھ بھال کے طریقے کو تبدیل کر رہے ہیں۔

اکثر پوچھے جانے والے سوالات

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.

اپ ڈیٹ رہیں

تازہ ترین AI خبریں اپنے ان باکس میں حاصل کریں۔

شیئر کریں