رفع مشکل اتصال GitHub Copilot با VPN
برای رفع مشکل اتصال GitHub Copilot، فقط بازشدن سایت GitHub کافی نیست؛ خود ادیتور باید بتواند به endpointهای Copilot وصل شود. ابتدا اتصال مستقیم به endpoint رسمی را آزمایش کنید، سپس proxy، گواهی شبکه و پوشش system-wide VPN را بررسی کنید. این ترتیب کمک میکند بهجای تعویض تصادفی سرور، محل واقعی خطا را پیدا کنید.
این راهنما دربارهی کیفیت اتصال است، نه ساخت حساب یا پرداخت. وضعیت اشتراک را از داخل حساب GitHub بررسی کنید و برای تنظیمات محصول همیشه مستندات رسمی را مرجع قرار دهید.
چرا سایت GitHub باز میشود اما Copilot نه؟
صفحهی وب، ورود حساب و افزونهی Copilot دقیقاً از یک مسیر شبکه استفاده نمیکنند. مرورگر ممکن است از یک افزونهی proxy عبور کند، درحالیکه VS Code هنوز با اتصال عادی سیستم کار کند. همچنین firewall، proxy سازمانی یا گواهی سفارشی میتواند ارتباط افزونه را متوقف کند.
GitHub در راهنمای رسمی خطاهای شبکه Copilot خطاهایی مانند ETIMEDOUT، ECONNRESET و خطاهای certificate را به تنظیم proxy، firewall یا بازرسی اتصال امن مرتبط میداند. بنابراین پیام خطا را یادداشت کنید؛ نوع خطا مسیر عیبیابی را کوتاه میکند.
۱. سلامت حساب و افزونه را جدا کنید
پیش از تغییر VPN، این موارد را بررسی کنید:
- در مرورگر وارد همان حساب GitHub شوید که داخل ادیتور انتخاب شده است.
- در VS Code بخش Extensions را باز کنید و GitHub Copilot را بهروز کنید.
- از منوی Accounts یکبار Sign out و دوباره Sign in کنید.
- یک فایل ساده باز کنید و هم پیشنهاد inline و هم پنل Chat را جداگانه بیازمایید.
اگر ورود حساب شکست میخورد، مشکل با مرحلهی پیشنهاد کد یکی نیست. ابتدا login را کامل کنید و بعد سراغ تست شبکه بروید.
۲. endpoint رسمی Copilot را تست کنید
GitHub برای عیبیابی این دستور را پیشنهاد میکند:
curl --verbose https://copilot-proxy.githubusercontent.com/_ping
پاسخ HTTP 200 یعنی دستکم این endpoint از همان محیط قابل دسترس است. timeout، reset یا خطای TLS نشان میدهد اتصال پیش از رسیدن به سرویس قطع شده است. فرمان را یکبار بدون VPN و یکبار با VPN اجرا کنید و فقط نتیجه را مقایسه کنید؛ خروجی verbose ممکن است اطلاعات محیط را نشان دهد، پس آن را بدون بررسی عمومی منتشر نکنید.
اگر ترمینال به endpoint میرسد اما VS Code نه، تفاوت معمولاً در proxy داخلی ادیتور، environment variableها یا certificate store است.
۳. مطمئن شوید VPN ترافیک ادیتور را میگیرد
افزونهی مرورگر برای Copilot کافی نیست. از یک کلاینت system-wide یا حالت TUN استفاده کنید تا پردازش VS Code نیز از همان مسیر عبور کند. اگر با مفهوم TUN آشنا نیستید، راهنمای TUN Mode تفاوت آن را با proxy مرورگر توضیح میدهد.
پس از اتصال:
- IP مرورگر و ترمینال را مقایسه کنید؛
- VS Code را کامل ببندید و دوباره باز کنید؛
- فقط یک VPN یا proxy فعال نگه دارید؛
- در زمان تست، سرور را پیدرپی عوض نکنید.
تغییر همزمان چند متغیر تشخیص علت را سخت میکند. ابتدا یک مسیر پایدار بسازید و بعد عملکرد پیشنهادها را بسنجید.
۴. proxy و متغیرهای محیطی را بررسی کنید
Copilot ممکن است مقدار proxy را از تنظیم ادیتور یا متغیرهایی مانند HTTPS_PROXY و HTTP_PROXY بخواند. یک مقدار قدیمی میتواند حتی بعد از روشنشدن VPN، درخواستها را به proxy ازکارافتاده بفرستد.
در ترمینالی که VS Code از آن اجرا میشود، وجود این متغیرها را بررسی کنید. اگر شبکهی سازمانی است، تنظیمات را خودسرانه حذف نکنید و با مدیر شبکه هماهنگ شوید. مستندات Network settings for GitHub Copilot جزئیات proxyهای پشتیبانیشده را توضیح میدهد.
۵. خطای certificate را از timeout جدا کنید
خطای unable to verify the first certificate با timeout یکی نیست. این وضعیت معمولاً به certificate سفارشی یا بازرسی TLS مربوط است. راهحل امن، نصب صحیح گواهی مورد اعتماد سازمان یا استفاده از مسیری است که اتصال امن را خراب نمیکند؛ غیرفعالکردن بررسی TLS راهحل مناسبی نیست.
اگر دستگاه کاری است، از تیم IT بخواهید endpointهای لازم را طبق allowlist رسمی GitHub مجاز کند. دورزدن policy شبکهی شرکت میتواند هم امنیت پروژه و هم حساب را به خطر بیندازد.
۶. پایداری را در یک جلسهی واقعی بسنجید
بعد از رفع اتصال، فقط ظاهرشدن یک پیشنهاد را موفقیت ندانید. در یک بازهی ۲۰ تا ۳۰ دقیقهای این موارد را کنترل کنید:
- پیشنهاد inline بدون مکث غیرعادی ظاهر شود؛
- Chat وسط پاسخ offline نشود؛
- عملیات Git و دانلود dependency همزمان پایدار بماند؛
- با sleep و wake سیستم، اتصال دوباره برقرار شود.
برای مقایسهی سرورها از روش تست سرعت و latency VPN استفاده کنید. کمترین ping همیشه بهترین نیست؛ loss و قطعووصل برای ابزار تعاملی آزاردهندهتر است.
چه نوع اتصالی برای توسعه مناسبتر است؟
یک اتصال مناسب Copilot باید system-wide، پایدار و قابل عیبیابی باشد. اگر چند دستگاه دارید، پروفایل جدا برای لپتاپ بهتر از اشتراکگذاری بیقاعدهی یک اتصال است. هنگام خرید، امکان تعویض سرور و تست اولیه را در نظر بگیرید؛ سرویس VPN v2route برای اتصال دستگاههای توسعه و انتخاب سرور پایدار ارائه میشود.
سؤالات متداول
چرا GitHub باز میشود ولی Copilot در VS Code وصل نمیشود؟
احتمالاً مرورگر و ادیتور از مسیرهای متفاوت استفاده میکنند یا endpointهای Copilot توسط proxy، firewall یا certificate شبکه متوقف شدهاند. تست _ping و لاگ افزونه محل خطا را روشنتر میکند.
آیا افزونهی VPN مرورگر برای Copilot کافی است؟
معمولاً نه. Copilot داخل پردازش ادیتور اجرا میشود و باید کلاینت VPN یا TUN ترافیک VS Code را نیز پوشش دهد.
آیا باید بررسی TLS را خاموش کنم؟
خیر. خطای certificate را با نصب صحیح گواهی مورد اعتماد یا اصلاح proxy حل کنید. خاموشکردن اعتبارسنجی TLS امنیت اتصال را کاهش میدهد.
برای Copilot سرور نزدیک بهتر است؟
سرور نزدیک میتواند latency را کم کند، اما پایداری و packet loss مهمترند. دو یا سه مقصد را در یک بازهی یکسان آزمایش کنید و سروری را نگه دارید که session پایدارتر دارد.
راهحلهای بالا را انجام دادید و هنوز مشکل باقی است؟
اول با یک کانفیگ سالم رایگان مقایسه کنید؛ اگر مشکل حل شد، بعد پلن مناسب را بخرید