SDK کوپایلوت گیتهاب؛ ایجنت داخل اپ خودت
خلاصهٔ کاملتر
گیتهاب تو مخزن رسمی copilot-sdk اعلام کرده که SDK کوپایلوت منتشر شده، با این شعار که «ایجنت برای هر اپلیکیشن». ایدهٔ اصلی اینه که همون موتوری که پشت Copilot CLI کار میکنه، حالا بهصورت برنامهنویسیشده در دسترسه و لازم نیست ارکستراسیون ایجنت رو خودت از صفر بسازی.
تقسیم کار روشنه: تو رفتار ایجنت رو تعریف میکنی و کوپایلوت برنامهریزی، فراخوانی ابزارها، ویرایش فایلها و بقیهٔ کارهای اجرایی رو به عهده میگیره. مستندات تأکید میکنن این یه رانتایم تستشده تو پروداکشنه، نه یه نمونهٔ آزمایشی.
SDK برای شش زبان منتشر شده: Node.js/TypeScript با پکیج @github/copilot-sdk، پایتون با github-copilot-sdk، گو، داتنت، راست و جاوا. برای Node.js و پایتون و داتنت، خود Copilot CLI بهعنوان وابستگی همراه پکیج میاد و نصب جدا نمیخواد؛ ولی برای گو، جاوا و راست باید CLI رو دستی نصب کنی یا مطمئن باشی تو PATH هست.
معماریش سادهست: هر SDK از طریق JSON-RPC با Copilot CLI که تو حالت سرور اجرا شده حرف میزنه، و چرخهٔ عمر پروسهٔ CLI رو هم خود SDK مدیریت میکنه. اگه بخوای، میتونی به یه سرور CLI خارجی هم وصل بشی.
از نظر احراز هویت چند راه داری: کاربر لاگینکردهٔ گیتهاب با کردنشیالهای OAuth، توکن کاربر از اپ OAuth خودت، متغیرهای محیطی مثل COPILOT_GITHUB_TOKEN و GH_TOKEN، و BYOK. تو حالت BYOK میتونی بدون احراز هویت گیتهاب و با کلید API خودت از ارائهدهندههایی مثل OpenAI، Azure AI Foundry و Anthropic استفاده کنی — البته فقط احراز هویت کلیدمحور پشتیبانی میشه و Entra ID و managed identity جواب نمیده.
بهصورت پیشفرض، ابزارهای دستاول Copilot CLI در دسترسن، شبیه اجرای CLI با --allow-all؛ ولی اجرای هر ابزار هنوز از فیلتر permission handler رد میشه، پس اپ میتونه فراخوانیها رو تأیید، رد یا سفارشی کنه. میشه ایجنت، skill و ابزار سفارشی هم تعریف کرد و همهٔ مدلهایی که تو CLI موجودن، تو SDK هم در دسترسن.
دربارهٔ هزینه، اشتراک کوپایلوت لازمه مگه اینکه سراغ BYOK بری، و محاسبهٔ مصرف مثل خود CLI ـه: هر پرامپت روی سهمیهٔ مصرفت حساب میشه. SDK بهشکل GA منتشر شده، از نسخهگذاری معنایی پیروی میکنه و لایسنسش MIT ـه. کنار نسخههای رسمی، دو SDK غیررسمی جامعهمحور برای Clojure و C++ هم معرفی شدن که پشتیبانی رسمی ندارن.
نکات کلیدی:
- همون موتور Copilot CLI، اینبار بهشکل SDK قابل فراخوانی از کد
- پشتیبانی از Node.js/TypeScript، پایتون، گو، داتنت، جاوا و راست
- ارتباط از راه JSON-RPC با CLI در حالت سرور؛ مدیریت پروسه خودکاره
- CLI برای Node.js، پایتون و داتنت باندل شده؛ برای گو، جاوا و راست نه
- BYOK امکان استفاده با کلید API شخصی و بدون اکانت گیتهاب رو میده
- امکان تعریف ایجنت، skill و ابزار سفارشی، با کنترل دسترسی روی هر فراخوانی ابزار




