Github Copilot Agent Mode: یک دستیار کد حتی باهوش تر

به تازگی ، حالت عامل GitHub Copilot در پیش نمایش VSCode Insiders در دسترس قرار گرفت. این حالت جدید می تواند بیش از کد خود تکرار شود ، خطاها را تشخیص دهد و آنها را به طور خودکار اصلاح کند. علاوه بر این ، این می تواند دستورات ترمینال را پیشنهاد کرده و درخواست اجرای آنها و همچنین تجزیه و تحلیل خطاهای زمان اجرا و اعمال تصحیح خودکار را انجام دهد.
اکنون ، به جای اجرای کار درخواستی ، Copilot همچنین می تواند کارهای اضافی را که در سریع مشخص نشده است اضافه کند اما برای راه حل صحیح کار لازم است. این می تواند خطاهای خاص خود را شناسایی کرده و اصلاحات را مستقیماً در کد اعمال کند.
من چند هفته است که در پروژه های آزمایشی در حال آزمایش هستند تا درک کنم که چگونه کار می کند و چگونه می تواند بر بهره وری من در توسعه تأثیر بگذارد.
یک مثال عملی
یکی از جالب ترین ویژگی های حالت عامل ، توانایی آن در تجزیه و تحلیل کل یک پروژه (یا فقط پرونده های خاص) و تولید خودکار راه حل ها است. حتی می تواند در صورت لزوم پرونده های جدیدی ایجاد کند.
برای آزمایش این کار ، من یک پروژه ساده Crud ایجاد کردم و از Copilot خواستم که مسیر جدیدی را برای لیست کامیون ها و درایورها در کنار هم اضافه کند و دو مسیر موجود را با هم ترکیب کند:
حالت عامل شروع به تجزیه و تحلیل کد کرد ، منابع مربوطه را در پروژه شناسایی کرد و روش ایده آل را برای استفاده از راه حل درخواست شده تعیین کرد.
اندکی پس از آن ، یک فایل جدید ایجاد کرد ، به طور خودکار شامل واردات مؤلفه لازم برای لیست و درخواست ها است.
در مرحله بعد ، درخواست لیست کامیون ها و درایورها ، از جمله منطق فیلتر را اضافه کرد:
و نمایش نتایج را ساختار می دهد:
سرانجام ، Copilot تشخیص داد که لازم است مسیر جدید را در پرونده اصلی مسیرهای ثبت کنید و این اصلاح را به صورت خودکار انجام دهید:
مسیر جدید به همراه وارد کردن صفحه تازه ایجاد شده اضافه شد:
همه اینها از یک پیام واحد در چت حالت عامل ایجاد شده است. این فقط یک نمونه از امکانات بی شماری است که این ویژگی جدید ارائه می دهد. در حال حاضر ، Agent Mode هنوز در پیش نمایش است ، اما من قبلاً در هنگام استفاده از آن متوجه افزایش قابل توجهی در بهره وری شده ام. من معتقدم که در آینده ، این مسئله حتی تصفیه شده تر و یک متحد بزرگ در توسعه ، کاهش مجدد کار و از بین بردن نیاز به کپی کد از منابع دیگر خواهد بود.