VSCode 远程 SSH 连接下 Copilot 使用 Claude 模型及代理配置问题
最近不少开发者反馈,在本地 VSCode 中配置好代理后,Copilot 的 Claude 模型可以正常使用,但一旦切换到远程 SSH 连接,就会出现访问异常或无法连接的情况。
网上常见的解决方案是在本地设置中强制将扩展运行在 UI 端(Local),例如添加如下配置:
{
"http.proxy": "http://127.0.0.1:1082",
"remote.extensionKind": {
"GitHub.copilot": ["ui"],
"GitHub.copilot-chat": ["ui"]
}
}
这样做虽然能让 Claude 模型显示出来,但在 Agent 模式下编辑文件时,经常会报错提示工作区异常,例如:copilotAllow edits to sensitive files?The model wants to edit files outside of your workspace。这是因为强制本地运行导致远程路径在本地无法被正确识别,从而引发工作区校验失败。
正确的解决思路
核心在于让代理和扩展都在远程环境中生效,而不是强行拉回本地。
-
清理本地配置 首先注释掉本地
settings.json中关于强制扩展运行位置的配置,避免干扰远程上下文。 -
配置远程代理 确保你的 SSH 隧道已经打通了本地代理端口到远程服务器。如果使用的是 SSH 本地转发,需要在远程服务器上能够访问到该代理地址。
-
修改远程设置 打开远程连接的
settings.json,配置代理信息,并移除对扩展运行位置的强制限制(或者根据实际需求调整)。示例配置如下:{ "http.proxy": "http://127.0.0.1:1082", "http.proxyStrictSSL": false, "remote.extensionKind":

