vscode插件安装卡在0%主因是本地防火墙或安全软件静默丢包,导致tls握手包被拦截、请求长期stalled;需彻底退出安全软件、放行code.exe和node.exe出站规则,并排除https劫持干扰。

VSCode插件安装卡在0%:先确认是不是根本没发请求
卡在0%不是插件慢,是VSCode压根没发出有效网络请求。典型表现是Network面板里第一个请求长期stalled、控制台只报ERR Failed to fetch、浏览器能正常打开https://open-vsx.org/vscode/item。这90%以上是本地防火墙或安全软件静默丢包——比如360、火绒、腾讯电脑管家直接拦截TLS握手包,不弹窗、不告警,只让请求卡死。
- 右键任务栏安全软件图标 → 选「彻底退出」(不是关实时监控)
- 用任务管理器杀掉所有
Code.exe和Code Helper.exe进程 - 重启VSCode再试安装,如果立刻开始下载,就坐实是它拦的
Windows Defender防火墙出站规则必须放行Code.exe和node.exe
VSCode插件市场请求走的是出站HTTPS连接,而Windows Defender默认不放行第三方程序的出站流量。只加Code.exe还不够,很多插件(如Ollama、CodeGeex)底层用独立node.exe子进程发fetch请求,被拦后现象就是“搜索无结果”或“XHR failed”。
- 以管理员身份打开PowerShell,运行:
Get-NetFirewallApplicationFilter | Where-Object { $_.Program -like "*Code.exe*" },若无输出说明没放行 - 进「高级安全 Windows Defender 防火墙」→「出站规则」→「新建规则」→「程序」→ 浏览定位到
C:\Users\<username>\AppData\Local\Programs\Microsoft VS Code\Code.exe</username> - 同样为
node.exe建一条出站规则(路径通常是C:\Program Files\nodejs\node.exe或%USERPROFILE%\AppData\Roaming\nvm\v20.15.0\node.exe)
手动安装.vsix时提示“Download failed”:校验阶段被防火墙中断
这不是下载失败,是VSCode加载.vsix前做签名/引擎版本校验时,防火墙阻断了本地文件读取或进程间通信。现象是选完文件后无反应,或弹模糊错误提示。
- 别急着重下.vsix,先彻底退出安全软件,再试一次
- 若仍失败,检查
settings.json里有没有配http.proxyStrictSSL: false——这个配置对本地文件校验无效,纯属干扰项 - 临时把.vsix文件复制到一个不含中文、空格、特殊符号的路径(如
C:\vsix\python.vsix),再从那里选
代理配置无效?可能是防火墙劫持了HTTPS流量
有些防火墙(尤其企业级或国产杀软)会强制注入根证书并重写HTTPS请求。VSCode默认启用http.proxyStrictSSL: true,遇到非标准证书就直接拒绝连接,表现就是卡0%且控制台报net::ERR_CERT_AUTHORITY_INVALID。
-
http.proxyStrictSSL: false仅用于临时排查,不应长期开启 - 若用了Clash/Surge等代理工具,需确保其配置里有
allow-unknown-ca: true - 更稳的方式是绕过代理:用浏览器打开插件页面,滚动到底部点「Download Extension」,拿到.vsix后离线安装











