You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何阻止VSCode继承代理环境变量并保留Windows企业代理配置?

解决VSCode不继承系统代理变量但终端保留代理的问题

核心配置方案

要实现「VSCode自身不使用系统的http_proxy/https_proxy变量,改用Windows企业NTLM代理,同时内置终端保留这些变量供命令行工具使用」,可以通过修改VSCode的settings.json完成:

  1. 打开VSCode设置界面(快捷键Ctrl+,),点击右上角「打开设置(JSON)」按钮,添加以下配置:
// 清空VSCode主进程的代理变量,避免自身使用cntlm
"env": {
    "http_proxy": "",
    "https_proxy": ""
},
// 强制VSCode不使用手动代理,自动读取Windows系统NTLM代理
"http.proxy": "",
"https.proxy": "",
// 确保内置终端继承系统的代理变量
"terminal.integrated.env.windows": {
    "http_proxy": "${env:http_proxy}",
    "https_proxy": "${env:https_proxy}"
}

关键说明

  • VSCode 1.15及以上版本原生支持NTLM认证,只要http.proxy/https.proxy为空,就会自动使用Windows系统配置的企业代理,无需额外设置。
  • env配置会覆盖VSCode主进程的环境变量,阻止它继承系统的代理变量,从而避免通过cntlm连接。
  • terminal.integrated.env.windows会将系统的代理变量传递给内置bash终端,保证命令行工具仍能通过cntlm访问网络。

关于扩展代理的特殊问题

你提到的部分扩展(比如GitHub Copilot)不遵循VSCode代理配置、直接读取系统环境变量的情况确实存在,这个问题目前尚未修复。对于这类扩展,暂时只能依赖cntlm的稳定性;而普通扩展的安装/更新,只要VSCode主进程的代理变量被清空,就会自动使用系统的NTLM代理完成连接。

内容的提问来源于stack exchange,提问作者neves

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 16:42:41