راهنمای GitHub برای Agentic Engineering؛ فراتر از تولید کد

چرا مهم است

اگر با AI کد بیشتری تولید می‌کنی، ممکن است بررسی تغییرات به محل انباشته‌شدن کار تبدیل شود. این راهنما نشان می‌دهد کجا می‌توانی از Copilot کمک بگیری و کدام تصمیم‌ها همچنان به قضاوت تو نیاز دارند.

قبل از خواندن، این‌ها را بدان۵ مفهوم
agent

سیستمی مبتنی بر AI که می‌تواند برای انجام یک کار، چند مرحله را با استفاده از ابزارها پیش ببرد.

بیشتر درباره این مفهوم

Sandbox

محیطی جداشده برای اجرای کارها که اجرای آن‌ها را از محیط اصلی تفکیک می‌کند.

بیشتر درباره این مفهوم

pull request

پیشنهاد ثبت‌شده برای بررسی و واردکردن مجموعه‌ای از تغییرات به شاخه مقصد در یک repository.

بیشتر درباره این مفهوم

Agentic Engineering

رویکردی در توسعه نرم‌افزار که در آن agent‌ها در مراحل مختلف کار مشارکت می‌کنند و توسعه‌دهنده هدایت و ارزیابی نتیجه را بر عهده دارد.

در حال نگارش

Code Review

بررسی تغییرات کد پیش از پذیرش آن‌ها برای یافتن اشکال‌ها و ارزیابی سازگاری با نیازمندی‌ها و قواعد پروژه.

در حال نگارش

تولید سریع‌تر کد لزوماً به معنی پیشرفت هم‌اندازه در کل فرایند توسعه نیست. GitHub می‌گوید در یک هفته از اکتبر بیش از ۱٫۲ میلیارد commit ثبت شده؛ بیش از ۴۰۰ درصد بیشتر از یک سال قبل. در همین مطلب، به مطالعه‌ای از Faros AI اشاره شده که در آن، با گذار تیم‌ها از استفاده کم به استفاده زیاد از AI،؜ زمان ماندن pull request‌ها در بررسی ۴۴۱ درصد بیشتر شده است.

راهنمای GitHub،؜ Agentic Engineering را فراتر از فرستادن یک prompt برای تولید کد مطرح می‌کند. چارچوب معرفی‌شده چهار مرحله Plan،؜ Build،؜ Verify و Observe دارد؛ بخش موجود از مطلب، سه مرحله نخست را توضیح می‌دهد و بر نقش توسعه‌دهنده در هدایت پیاده‌سازی و ارزیابی نتایج تأکید دارد.

در برنامه‌ریزی، Copilot می‌تواند اطلاعات پراکنده میان ابزارها و گفت‌وگوها را جمع کند، گزینه‌ها را مقایسه کند و نیازمندی‌های توافق‌شده را به GitHub Issues با معیارهای پذیرش تبدیل کند. GitHub Agentic Workflows برای برچسب‌گذاری و برآورد پیچیدگی کارها پیشنهاد شده است. برای کارهای پیچیده‌تر، Plan Mode امکان اصلاح برنامه را فراهم می‌کند؛ برنامه باید پیش از شروع پیاده‌سازی بررسی و تأیید شود.

در مرحله ساخت، ادامه همان session روی دستگاه‌های مختلف و اجرای کارها در Sandbox‌های cloud مطرح است. Copilot app برای session‌ها نسخه‌های جداگانه‌ای از repository فراهم می‌کند تا تغییرات کارهای مستقل با هم مخلوط نشوند. دستورالعمل‌های repository و shared memory نیز قواعد پروژه و اطلاعات قابل استفاده مجدد را نگه می‌دارند. Copilot Fusion انتخاب model و عمق reasoning را متناسب با کار در اختیار توسعه‌دهنده می‌گذارد.

برای Code Review،؜ پیشنهاد اصلی شکستن تغییرات وابسته به pull request‌های کوچک‌تر با روش stacked pull requests است. GitHub Code Quality قواعد کدنویسی را بررسی می‌کند و Copilot code review می‌تواند تحلیل سبک‌تر یا عمیق‌تر ارائه دهد. AI Scan و AI secret detection برای یافتن آسیب‌پذیری و secret مطرح شده‌اند. بررسی مجوز dependency‌ها و GitHub package firewall نیز به کنترل سیاست‌های سازمان مربوط‌اند؛ مورد دوم برای npm در public preview است.

در ادامه، Agentic Autofix برای پیشنهاد اصلاح مشکلات امنیتی و Agent Merge برای رسیدگی خودکار به check‌های ناموفق، نظرهای بررسی و merge conflict معرفی می‌شوند. در این رویکرد، agent کارهای بیشتری را پیش می‌برد، اما تصمیم درباره برنامه و ارزیابی تغییرات همچنان بر عهده توسعه‌دهنده است.

نکته کلیدی

پیش از سپردن پیاده‌سازی به agent،؜ برنامه و معیارهای پذیرش را روشن و تأیید کن. هنگام بررسی هم تغییرات وابسته را به pull request‌های کوچک‌تر تقسیم کن و بررسی‌های معمول را پیش از بررسی انسانی انجام بده.

خواندن مقاله اصلی (در زبانه‌ی جدید باز می‌شود)
برچسب‌ها (۳)