快速筛出真正没用的扩展需三步:先按@disabled筛选长期未启用的扩展,再查Contributions确认是否注册冷门命令且从未调用,最后看activationEvents是否含"*"或"onStartupFinished"导致启动必加载;禁用仅停功能,卸载才释放资源,Deprecated、功能重复、频繁崩溃或Node版本不匹配者应卸载。

怎么快速筛出真正没用的扩展
禁用状态不等于闲置——很多扩展装完就再没点开过,但 VS Code 不记录使用痕迹,得靠人工判断。最有效的三步法是:
• 打开扩展视图(Ctrl+Shift+X),输入@disabled筛选已禁用项,把长期没手动启用过的先标记出来
• 点进每个扩展详情页,切换到Contributions标签,看它注册了哪些功能:如果只暴露一个冷门命令(比如extension.sortLines)且你从没调用过,基本可卸载
• 检查package.json里的activationEvents字段:声明了"*"或"onStartupFinished"的扩展,启动时必加载,哪怕你只用它处理 Markdown
禁用和卸载到底该选哪个
禁用只是关掉功能,文件还在磁盘上,VS Code 启动时仍要扫描它的package.json;卸载才真正删文件、减负担。以下情况必须卸载:
• 扩展页面明确标有Deprecated,或作者说明“replaced by xxx”
• 同类功能重复:比如同时装了esbenp.prettier-vscode和HookyQR.beautify,但只用 Prettier 格式化
• 触发过Extension host terminated unexpectedly错误,重装后仍频繁崩溃
• 它的engines.vscode字段要求^1.70.0,而你当前 VS Code 是1.92.0,Node 版本不匹配导致兼容性问题
工作区隔离比全局开关更安全
别一上来就点Disable (Global)——这会影响所有项目。多数场景该用工作区级控制:
• 打开具体项目文件夹后,在扩展列表里找到ms-python.python,点击右下角齿轮 → Disable (Workspace)
• 效果写在.vscode/settings.json里:"extensions.disabled": ["ms-python.python"],提交 Git 就能同步给团队
• 如果想批量禁用某类扩展(比如所有 GraphQL 相关),在搜索框输@installed graphql,Ctrl多选后统一右键 → Disable (Workspace)
• 注意:禁用后部分 UI(如 GitLens 侧边栏图标)可能残留,需执行Developer: Reload Window才能彻底清除
自动更新其实只对启用状态生效
"extensions.autoUpdate": true是默认值,但它只作用于当前**已启用**的扩展。被禁用的扩展哪怕有新版,也不会自动下载安装。
• 查看所有待更新项:搜索框输入@outdated,它会列出全部存在新版本的扩展,不管启用与否
• 手动更新失败常见原因:扩展正被占用(比如你在调试 Python 脚本,ms-python.python就被锁住),得先关掉相关文件、重启 VS Code 再试
• 想精细控制更新节奏?在settings.json里加黑白名单:"extensions.autoUpdate": false关全局,再用"extensions.ignoreRecommendations": true或"extensions.experimental.ignoredRecommendations": true减少干扰
activationEvents写得太宽泛、启动就加载的扩展。这类问题用户端没法改,只能换替代品或反馈给作者——这点容易被忽略。


















