插件是卡顿根源需先验证:执行 code --disable-extensions 启动 VS Code,若响应正常即可确认;再用 Developer: Start Extension Bisect 二分法定位高危插件(如 Prettier、ESLint、Copilot 等);按需全局或工作区禁用,并清理残留服务与配置。

确认插件确实是卡顿根源
别急着禁用,先验证是不是插件惹的祸。终端执行 code --disable-extensions 启动 VS Code,打开一个常见文件(比如 .py 或 .js),敲几行代码再保存——如果这时编辑器秒响应、补全正常、不弹“Extension host terminated unexpectedly”,那基本可以锁死是插件问题。这个命令不改配置、不删数据,关窗口就自动恢复,比反复重启省至少五分钟。
用二分法定位冲突插件
VS Code 自带的扩展二分法比手动试错快得多,尤其适合启动就卡死、连插件面板都打不开的情况:
- 按
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS),输入并运行Developer: Start Extension Bisect - VS Code 会自动分组启用/禁用插件,每轮提示你“问题是否复现”,你只需点“是”或“否”
- 通常 3–5 轮后,嫌疑范围就缩到 1–2 个插件;重点盯那些 Startup Time >150ms 或 CPU 占用持续跳动的扩展
常见高危对象:esbenp.prettier-vscode、dbaeumer.vscode-eslint、github.copilot、ms-python.python、eamodio.gitlens——它们常因监听全量事件或后台扫描拖垮主线程。
禁用方式选工作区还是全局
关键看影响范围,不是所有插件都该一刀切:
- 全局禁用:适合你压根不用的通用型插件,比如
ritwickdey.liveserver、oderwat.indent-rainbow,右键插件选“Disable (For All Folders)”即可 - 工作区禁用:只对当前项目生效,比如 Vue 项目里不想让 Python 插件扫描
node_modules,就在该工作区的.vscode/settings.json里写:{ "extensions.enabled": { "ms-python.python": false } }注意字段名是extensions.enabled,设为false才是禁用;extensions.disabled是无效字段
禁用后部分插件(如 GitLens、ESLint)需重新打开文件或切换标签页才真正释放资源,别以为点了“禁用”就立刻生效。
禁用后还要清理残留服务
很多插件禁用只是“表面停机”,后台进程可能还在跑:
- AI 类插件(如
codegeex.codegeex、amazon.code-whisperer)常自带 CLI 服务,执行codex skills list查看是否还有冗余技能条目,有就手动删掉对应目录 - Copilot 等插件会在
settings.json里埋一堆开关项(如copilot.enable、copilot.inlineSuggest.enable),单纯禁用插件不会清掉这些,得一并删掉或设为false - 某些崩溃类插件(如旧版
ms-python.python)即使被禁用,仍可能在启动时尝试初始化,直接删扩展目录更彻底:~/.vscode/extensions/ms-python.python-*(Linux/macOS)或%USERPROFILE%\.vscode\extensions\ms-python.python-*(Windows)
最易被忽略的是 files.watcherExclude 配置没同步更新——哪怕插件禁了,如果 node_modules、.git 这些目录还在被监听,卡顿照样回来。


















