要让vs code回归出厂状态,需彻底删除插件本体(~/library/application support/code/extensions/下所有子文件夹)、用户配置(settings.json和keybindings.json)、插件私有状态与缓存(globalstorage、workspacestorage、caches、cacheddata)及项目级.vscode文件夹。

Mac上想让VS Code回归出厂状态,必须清除插件本体、配置残留、缓存数据和项目级设置——只在Extensions界面点“Uninstall”或运行code --uninstall-extension命令,只会让插件变灰,实际文件仍躺在磁盘上,下次启动可能触发Extension Host崩溃或“正在激活…”无限卡顿。
删掉所有插件本体文件夹
打开访达,按下 Shift + Command + G,粘贴路径:~/Library/Application Support/Code/Extensions/ → 回车进入 → 全选所有子文件夹 → 按 Command + Delete 彻底删除。
⚠️注意:这个目录是插件真正的代码存放地,不是缓存也不是注册表。UI里卸载一百次,只要这个文件夹还在,VS Code就可能尝试加载它。删错父目录Extensions会导致整个扩展系统失效,但删里面每一个子文件夹是安全的。
这一步操作起来很简单,直接全选删除就行。别试图靠文件名判断是否该删——有些插件版本号带日期(如ms-python.python-2026.9.1),有些用短ID(如esbenp.prettier-vscode),统一全删最稳妥。
清空用户配置与快捷键残留
方法一:手动定位并清理关键JSON文件
按下 Shift + Command + G,输入:~/Library/Application Support/Code/User/ → 找到 settings.json 和 keybindings.json 两个文件。
用VS Code或其他文本编辑器打开 settings.json → 全局搜索插件ID关键词(如prettier、copilot、python.、drawio)→ 逐行删除整段配置,包括嵌套在"editor.codeActionsOnSave"或"files.associations"里的子项 → 保存。
同样打开 keybindings.json → 搜索Ctrl+Enter、Cmd+Shift+P等常见被插件劫持的组合 → 删除对应key+command对象 → 保存。
方法二:一步重命名备份(推荐给怕误删的用户)
回到 ~/Library/Application Support/Code/User/ 目录 → 将 settings.json 重命名为 settings.json.bak → 将 keybindings.json 重命名为 keybindings.json.bak → 启动VS Code后会自动生成空白配置文件。
清理插件私有状态与缓存
第一步:关闭所有VS Code进程
打开「活动监视器」→ 在搜索框输入 Code → 选中所有 Code、Code Helper、Code Helper (Renderer) 进程 → 点击左上角「X」强制退出 → 确认全部消失。
第二步:删除四类关键状态目录
依次进入以下路径,将整个文件夹拖入废纸篓:
① 插件私有数据:~/Library/Application Support/Code/User/globalStorage
② 语言服务器快照:~/Library/Application Support/Code/WorkspaceStorage
③ 二进制缓存:~/Library/Caches/com.microsoft.VSCode
④ 临时工作区缓存:~/Library/Application Support/Code/CachedData
【globalStorage不清理,Copilot或Claude插件重装后会显示“已登录”却无法调用模型】 这些目录体积不大,但藏着API密钥、对话历史、上次激活状态——它们不会随插件卸载消失,却是“插件卡死”的最大元凶。
别漏掉项目级 .vscode 文件夹
打开你常用的工作目录(比如~/Projects或~/Desktop/my-app)→ 显示隐藏文件(Command + Shift + .)→ 查找所有名为 .vscode 的文件夹 → 逐个进入 → 删除其中的 extensions.json、settings.json 或 tasks.json(如果存在且含插件相关配置)。
某些Linter或Formatter插件(如ESLint、Prettier)会在项目根目录下生成.vscode/settings.json,优先级高于全局配置。不清掉它,新装插件可能直接读取旧规则导致格式化异常。











