# Copilot后端代理服务 **Repository Path**: VicBilibily/github-copilot-proxies ## Basic Information - **Project Name**: Copilot后端代理服务 - **Description**: 当前仓库已暂停维护,但会偶尔更新 models.json。 接入使用了一个多月,正常开发使用的合计成本与入官费用相近,故已入官不再折腾。 如你低频率使用,可自行二开或滚动到底部鸣谢部分进入使用源项目。 - **Primary Language**: Unknown - **License**: WTFPL - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 2 - **Created**: 2025-03-09 - **Last Updated**: 2025-05-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: GitHubCopilot, coder, Proxies ## README  #### 此项目已暂停功能维护,仅不定期更新 [`models.json`](models.json) 以同步官方模型以便无 `GitHub Copilot Pro` 订阅的开发者二开。 ## Github Copilot 后端代理服务 `.NET9` 实现 > 以下说明仅供参考,请进行具体配置以适用于你的需求。 - 可借助支持 `FIM` 接口的平台使用国产模型接管 `GitHub Copilot` 插件服务端。 - 已支持使用文本对话接口接管 `GitHub Copilot` 插件服务端,可选用各大云平台的 `DeepSeek-V3-0324` 或 豆包1.5、千问2.5。 - 使用国产语言模型,接管 `GitHub Copilot Chat` 插件服务端。 - 使用国产向量模型 `bge-m3` (硅基免费) 接管插件 `embeddings` 向量及 `chunks` 索引接口。 > v0.1.15 开始兼容视觉语言模型,详情可参阅 [`models.json`](models.json) 中 `supports` 节点 `vision` 值为 `true` 的模型。 > 目前支持 `vision` 的模型ID: `gpt-4o`、`claude-3.5-sonnet`、`claude-3.7-sonnet`、`gemini-2.0-flash-001`、`gemini-2.5-pro`、`gpt-4.5`。 ## 功能特性 - [x] 主要支持IDE:[VSCode](#vscode), [Visual Studio 2022](#visual-studio-2022) - [x] 接口兼容IDE:[Jetbrains IDE系列](#jetbrains-ide系列),[HBuilderX](#hbuilderx) - [x] `GitHub Copilot` 插件关键API接口**全接管**。(GitHub仓库索引缓存接口暂未实现接管) - [x] 固定使用域名`copilot.supercopilot.top`, 自动配置 `Let's Encrypt` SSL证书 - [x] 局域网共享, 可多台电脑共享一个服务端, 参考: [局域网共享方案](#局域网共享方案) ## 如何使用? **在使用之前确保自己的环境是干净的, 也就是说不能使用过其他的激活服务, 可以先检查自己的环境变量将 `GITHUB` `COPILOT` 相关的环境变量删除, 然后将插件更新最新版本后重启IDE即可.** **⚠️ 如果你本地有使用科学上网工具, 那必须将域名 `copilot.supercopilot.top` 系列域名添加直连名单中, 否则无法正常使用!** ### 快速使用步骤 1. **部署服务**: 可以使用[下载文件直接部署使用](#下载文件直接部署使用). 2. **配置IDE**: 详细参考下面的[IDE设置方法](#ide设置方法). 3. **重启IDE**: 点击登录 `GitHub Copilot` 插件即可. ### 下载文件直接部署使用 1. 下载最新版本的可执行文件访问 [releases](https://gitee.com/VicBilibily/github-copilot-proxies/releases)。 2. 在可执行文件同级目录下创建 `.env`\[可选\](或设置环境变量) 及 `appsettings.json` 文件, 参考 [.env.example](.env.example) 和 [appsettings.example.json](appsettings.example.json) 文件配置。(如不修改端口及调试,`.env` 文件并非必要) 3. 启动服务后然后按照[IDE设置方法](#ide设置方法)配置IDE。 4. 重启IDE,登录 `GitHub Copilot` 插件。 > - 测试时 `.env` 可配置为 `ASPNETCORE_ENVIRONMENT=Development`,完成配置后再改为 `Production` 环境。 > - `appsettings.json` 的 `SystemConfig` 配置节点支持热更新配置,无需重启服务即可修改并测试服务配置。 ### Docker部署 - 克隆项目到本地 ```shell git clone https://gitee.com/VicBilibily/github-copilot-proxies.git cd github-copilot-proxies ``` - 构建 Docker 镜像 ```shell docker build --network host --no-cache --progress=plain . ``` - 修改文件 [`docker-compose.yml`](docker-compose.yml) 及 创建 `appsettings.json`,**模型API KEY 替换为你的**。 - 然后执行以下命令即可启动服务: ```shell # 启动服务 docker-compose up -d # 停止服务 docker-compose down # 更新服务 0. 拉取最新代码后构建镜像 1. docker-compose pull 2. docker-compose down 3. docker-compose up -d # 查看日志 docker-compose logs -f ``` - Nginx 代理配置请参照 [ripperTs/github-copilot-proxies/README.md](https://gitee.com/ripperTs/github-copilot-proxies/blob/master/README.md) ## IDE设置方法 ### VSCode 1. 安装插件: `GitHub Copilot` 2. 修改 VSCode 的 settings.json 文件, 添加以下配置: ```json "github.copilot.advanced": { "authProvider": "github-enterprise", "debug.overrideCAPIUrl": "https://api.copilot.supercopilot.top", "debug.overrideProxyUrl": "https://copilot-proxy.copilot.supercopilot.top", "debug.chatOverrideProxyUrl": "https://api.copilot.supercopilot.top/chat/completions", "debug.overrideFastRewriteEngine": "v1/engines/copilot-centralus-h100", "debug.overrideFastRewriteUrl": "https://api.copilot.supercopilot.top" }, "github-enterprise.uri": "https://copilot.supercopilot.top" ``` ### Jetbrains IDE系列 1. 找到 `设置` > `语言与框架` > `GitHub Copilot` > `Authentication Provider` 2. 填写的值为: `copilot.supercopilot.top` ### Visual Studio 2022 1. 更新到最新版本(内置 Copilot 版本)至少是 `17.10.x` 以上 2. 首先, 开启 `Github Enterprise` 账户支持:工具->环境->账户->勾选 `包含 Github Enterprise 服务器账户` 3. 然后, 重启你的 `Visual Studio 2022` 编辑器 4. 最后, 点击添加 Github 账户,切换到 Github Enterprise 选项卡,输入 `https://copilot.supercopilot.top` 即可。 ### HBuilderX ⚠️ 注意, 插件中的相关 domain 已经写死无法修改, 所以必须使用默认的 `copilot.supercopilot.top` 域名配置. 1. 下载 **[copilot-for-hbuilderx-v1.zip](https://pan.quark.cn/s/70e6849970e5)** 插件到本地 2. 将插件安装到 plugin目录下, 详细参考: [离线插件安装指南](https://hx.dcloud.net.cn/Tutorial/OfflineInstall) 3. 重启 Hbuilder X 后点击登录 `GitHub Copilot` 即可. ## 局域网共享方案 如果是局域网多台电脑共用一个服务端,只需要更改hosts文件指向到内网服务器 ip 即可, 例如: 在局域网服务器(192.168.1.168)部署了copilot-proxies服务,那么局域网内其他机器仅需要修改host为以下即可。 ``` 192.168.1.168 copilot.supercopilot.top 192.168.1.168 api.copilot.supercopilot.top 192.168.1.168 copilot-proxy.copilot.supercopilot.top 192.168.1.168 copilot-telemetry-service.copilot.supercopilot.top ``` ## 问题排查 如果本地部署遇到了 `无法登录` `无法对话` `无法补全` 等问题, 可以参考下面的排查方法: 1. 确认最新版本服务 2. `ping copilot.supercopilot.top` 是否指向 `127.0.0.1` ,如果不是则表明受到了代理工具影响 3. 检查目录下是否含有 `cert` 目录 4. 特别注意检查 https 端口不可被占用 5. 访问 [https://copilot.supercopilot.top](https://copilot.supercopilot.top/help) 是否出现帮助页面 6. 确保插件不被本地环境变量影响,可使用 Windows Sandbox 进行隔离测试 ## 注意事项 1. 请勿将本服务用于商业用途, 仅供学习交流使用 2. 请勿将本服务用于非法用途, 一切后果自负 #### 国内替代平台 - [硅基流动](https://cloud.siliconflow.cn/i/tQkcsZbJ) 可仅使用免费的模型,付费可保证稳定但不会有明显的提速。 - [阿里云百炼](https://www.aliyun.com/product/bailian) 按需选用千问的模型,其它模型功能暂时不全。 - [火山引擎](https://console.volcengine.com/ark/region:ark+cn-beijing/experience/chat) 可使用其 `豆包1.5(Lite)` 替代 `gpt-4o-mini`,按需接入 `DeepSeek`,火山是目前 DS 支持工具调用且响应速度最快的平台。 - [DeepSeek](https://platform.deepseek.com/) 按需配置,推荐仅用于代码编辑接口接管。聊天接口可用但多数时间都较慢,推荐用火山引擎的代替。 #### 国外AI代理推荐 - [CloseAI](https://referer.shadowai.xyz/r/1025612) 企业运营,接口稳定,¥10 起冲。仅使用其 `text-embedding-3-small` 向量模型 (1000 RPM),调用都很集中且需求不大,使用 `GitHub Copilot` 的同款向量模型可达到近官方一致的向量检索效果。对话模型可按需使用,贵但稳定可用。 #### AI代理避坑指北 > 最新版版本的 `GitHub Copilot Chat` 已支持接入三方模型,本地可用 `Ollama`,三方可用 `OpenRouter`,不再建议用其它烦心的代理。 > - `OpenRouter` 可注册后在 [模型提供商](https://openrouter.ai/settings/integrations) 直接配置 `DeepSeek` 的 ApiKey,默认选中 `Enabled`,不要勾选 `Use this key as a fallback` 即会优先使用配置的 ApiKey 请求官方服务。然后在 `GitHub Copilot Chat` 配置更多模型,通过 `OpenRouter` 调用 `deepseek/deepseek-chat-v3-0324`。 > - `OpenRouter` 可使用 `支付宝` 或 `微信` 充值,充值界面勾选 `Use checkout page`,稍等即可点击 `Get Payment Link`,然后再次点击 `Buy Credits` 进入 `stripe`,在支付方式的底部展开 `More payment methods` 即可选择国内的支付方式,按要求填写联系方式后支付即可。 > - 若通过 `OpenRouter` 使用带有 `:free` 标识的模型,余额低于 $10 时限制每日 50 次免费请求,需要至少保留 $10 在账上才支持每日 1000 次免费请求。 > - `OpenRouter` 首次充值建议更改金额为 $11,平台会扣除充值金额的 5% + $0.35 作为手续费,另外还会扣税。eg: 支付 $15 后到账 $13.8。 ### 向量模型使用说明: - 国内方案推荐使用 `bge-m3` 向量模型,该模型在 [硅基流动](https://cloud.siliconflow.cn/i/tQkcsZbJ) 平台上免费,其它厂商的向量模型目前在 `GitHub Copilot` 的测试结果并不理想。 - 如果需要更加精确的检索效果,可使用官方插件同款模型 `text-embedding-3-small`,但需要支付些许费用。推荐使用 [CloseAI](https://referer.shadowai.xyz/r/1025612) 的接口,每分钟并发数量为 `1000RPM`。虽然收费倍率较高,但正常使用的情况下一个月的费用不到几块钱人民币,其检索准确性可降低调用对话模型时所消耗的输入Token费用。 #### 如何测试向量模型的结果: - 你可以在 VSCode 打开一个项目后,询问其中的项目实现的功能或拖入文件夹询问其中的一个关键词,查看服务端日志是否存在 `embeddings` 或 `chunks` 的请求。 - 如果存在,则等待回复结果输出完毕后等待数秒后关闭 VSCode,然后重新打开项目,等待初始化完毕后即可发现服务端存在大量的 `chunks` 请求。 - 当所有的 `chunks` 请求都是正常停止后,可重新询问之前的问题,可检查其检索到的文件状况。如果较多时可询问某一个关键词,查看检索结果是否有关联。 > 提示:如果你*体验*过官方免费版,但配置了 `text-embedding-3-small` 以外的模型,亦或*切换*了服务配置的向量模型,你需要到 VSCode 的本地缓存文件夹下删除 `workspace-chunks.json` 文件,然后重新打开项目以重新请求向量以生成本地索引。 > 其中 Windows 下的路径为 `C:\Users\<你的用户名>\AppData\Roaming\Code\User\workspaceStorage\<你的项目ID>\GitHub.copilot-chat\workspace-chunks.json`。 ## 鸣谢 - [copilot_take_over](https://gitee.com/LoveA/copilot_take_over) - [override](https://github.com/linux-do/override) - [硅基流动](https://cloud.siliconflow.cn/i/NO6ShUc3) - [Ripper/Copilot后端代理服务](https://gitee.com/ripperTs/github-copilot-proxies)