Appearance
其他开发工具的配置方法
其他开发工具统一使用本地代理转发的方法进行配置。
0. 本地代理转发方法原理图

本地代理转发方法在客户端与 AI杂货铺 Copilot 之间加了一层本地代理,本地代理的作用是修改客户端向 github 发送的 鉴权/代码补全/对话 等请求(主要修改了 host
和 鉴权token
,将其替换为 AI杂货铺 的 host
和 token
)。
这两种方法都能将所有 github 的请求改为指向 AI杂货铺,但是区别在于:
虚线上方的 代理授权模式 需要手动修改 IDE 中的 Copilot 插件配置,将
Authorization Provider
改为copilot.aizahuo.com
,VSCode、Jetbrains、Vim/Neovim 的配置教程就是在教你干这件事情虚线下方的 本地代理转发 方法则不需要手动修 IDE 中的 Copilot 插件配置,这种方法是通过代理工具修改 IDE 的请求完成
Authorization Provider
变更的,但是这种方式的缺点就是需要配置 IDE 的代理,而且本地代理工具(图中的mitmdump
)在 IDE 使用期间要一直保持开启
并不是所有 IDE 中的 Copilot 插件都支持修改 Authorization Provider
,在这种情况下,使用本地代理转发可以解决这个问题。
了解了 本地代理转发 方法的原理之后你就会发现,这种方法适合一切平台的一切 IDE!
综上,所有 IDE 都可以按照如下步骤配置本地代理转发:
打开 IDE 登录你自己的 Github 账号(必须在第 3 步:配置插件代理 之前登录)
接下来跟着下面的教程开始配置吧~
1. 本地代理工具配置
提示
第 1~4 步只有初次启动本地代理转发工具时需要配置,后续参考第 5 步直接启动即可。
先安装代理工具
mitmdump
windows 用户:下载
mitmdump
代理工具,并将保存路径添加到环境变量中。打开 Powershell 执行:ps1# 创建目录: $HOME\.cache\aistore New-Item -Path $HOME\.cache\aistore -ItemType Directory > $null # 下载 mitmdump.exe Invoke-WebRequest -Uri https://oss.aizahuo.com/mitmdump.exe -OutFile $HOME\.cache\aistore\mitmdump.exe # 设置环境变量 $oldPath = [Environment]::GetEnvironmentVariable("Path", "User") if (-not $oldPath.EndsWith(";")) { $oldPath += ";" } $newPath = $oldPath + "$HOME\.cache\aistore;" setx Path $newPath
Linux/Mac 用户:通过
pip
进行安装,如果你本地没有python
环境,请自行通过 ChatGPT 解决。shellpip install mitmdump
导入代理证书
第一次启动代理工具时会自动生成证书,所以配置证书前先启动一次代理工具。
windows 用户:打开 Powershell,输入
mitmdump.exe
运行:启动成功后就可以关闭代理工具了(此时证书已经生成)。
然后按
win + e
打开资源管理器,然后地址栏输入:%USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.p12
,此时会弹出证书安装的对话框:然后保持默认选择,一直点击【下一步】按钮,直到提示证书导入完成为止。
Linux/Mac 用户:终端执行
mitmdump
启动成功后就可以按
ctrl + c
关闭代理工具了(此时证书已经生成)。然后在终端输入如下命令安装证书:
shellsudo security add-trusted-cert -d -p ssl -p basic -k /Library/Keychains/System.keychain ~/.mitmproxy/mitmproxy-ca-cert.pem
shellcp ~/.mitmproxy/mitmproxy-ca-cert.pem /usr/local/share/ca-certificates/mitmproxy.crt sudo update-ca-certificates
shellcp ~/.mitmproxy/mitmproxy-ca-cert.pem /etc/pki/ca-trust/source/anchors/ sudo update-ca-trust
下载代理脚本
将 https://copilot.aizahuo.com/proxy.py 保存到
$HOME/.cache/aistore/copilot/
中:Windows 用户打开 Powershell,Linux/Mac 用户打开终端:
ps1# 创建目录: $HOME\.cache\aistore\copilot New-Item -Path $HOME\.cache\aistore\copilot -ItemType Directory > $null # 下载 proxy.py Invoke-WebRequest -Uri https://copilot.aizahuo.com/proxy.py -OutFile $HOME\.cache\aistore\copilot\proxy.py
shell# 创建目录: $HOME/.cache/aistore/copilot/ mkdir -p $HOME/.cache/aistore/copilot/ # 下载 proxy.py wget https://copilot.aizahuo.com/proxy.py -O $HOME/.cache/aistore/copilot/proxy.py
下载 Access Token
浏览器打开 https://copilot.aizahuo.com/settings/hosts.json(需要登录才能访问,其中包含你的
token
信息,用户 AI 杂货铺 代理服务器 对你的请求鉴权),通过ctrl + s
/cmd + s
将文件保存到$HOME/.cache/aistore/copilot/
中。提示
直接保存到这个隐藏目录可能比较麻烦,你可以先保存到 downloads 文件夹,然后再通过命令移动到目标目录,或者通过 GUI 手动移动到目标目录。
危险
hosts.json
中包含你的token
信息,请勿泄露!如有泄露请及时重置。警告
请务必将文件保存到正确的位置,并以
hosts.json
命令,后续代理工具会读取其中的内容,如果配置错误会导致后续步骤出现问题。启动代理
提示
上面的配置步骤只用配置一次,下次可以直接执行这一步启动本地代理转发服务。
windows 用户:
打开 Powershell,运行:
ps1mitmdump.exe -s ~\.cache\aistore\copilot\proxy.py
Linux/Mac 用户:
shellmitmdump -s ~/.cache/aistore/copilot/proxy.py
启动成功后会显示你的用户名:
如果启动时报错,请根据报错信息检查上面的步骤是否配置成功。
提示
mitmdump 默认的代理端口是
8080
,你可以通过添加-p
参数来自定义代理端口,例如:shellmitmdump -s proxy.py -p 8000
2. IDE 代理配置
提示
目的:将 IDE 的代理指向刚才启动的本地代理服务器。
警告
注意:在这一步之前,需要先登录你自己的 Github 账号。
Visual Studio 2022
参考资料:https://learn.microsoft.com/en-us/answers/questions/1059735/is-it-possible-to-set-proxy-in-vs-2022
按下
win + e
打开资源管理器,地址栏输入:%ProgramFiles%\Microsoft Visual Studio\2022\
,回车进入,然后继续进入路径:<version>\Common7\IDE\
,找到devenv.exe.config
文件使用记事本打开
devenv.exe.config
,ctrl + f
查找关键词<system.net>
,添加下面的配置:xml<defaultProxy useDefaultCredentials="true" enabled="true"> <proxy bypassonlocal="true" proxyaddress="http://127.0.0.1:8080" /> </defaultProxy>
其中,
proxyaddress
指定了代理地址,可以根据自己的实际情况进行修改。配置好的样子如下图所示:
重启 IDE。
其他
请自行通过 ChatGPT 了解配置代理的方式。
提示
你可以优先配置 Copilot 插件的代理,如果插件没有单独的代理配置项,再配置 IDE 的全局代理。
已知支持插件级代理配置的 IDE:Jetbrains,Xcode。
如果有强烈需求可以联系站长添加你希望支持的 IDE。