vscode项目真正需清理的无用缓存位于workspacestorage、extensions子目录及插件自建的cache/中;删node_modules或dist无效,因其非vscode管理的运行时缓存;应通过storage.json定位对应guid目录并删除,再清理插件cache/、__pycache__/等明确缓存子目录。

VSCode 项目内真正需要清理的“无用缓存文件夹”,基本不在项目根目录下,而是藏在 workspaceStorage、extensions 子目录或插件自己的 cache/ 里——直接删 node_modules 或 dist 是无效操作,也和 VSCode 缓存无关。
为什么删 node_modules 或 dist 没用
这些是项目构建产物或依赖安装目录,VSCode 本身不把它们当“缓存”管理;它不会因这些目录存在而变慢,也不会从中读取索引或语言服务数据。真正拖慢搜索、跳转、启动的,是 VSCode 自己生成的运行时缓存,比如:
-
workspaceStorage下对应你这个项目的 GUID 目录(存符号索引、调试快照) -
.vscode/extensions/xxx-cache(插件更新中断残留的损坏包) - 插件自己建的
cache/或__pycache__/(如ms-python.python-2024.12.0里的子目录)
精准定位当前项目对应的 workspaceStorage 目录
每个打开过的文件夹在 workspaceStorage 里都有一个 GUID 命名的子目录,但名字看不出归属。要确认哪个属于当前项目,不能靠猜,得查 storage.json:
- Windows 路径:
$env:APPDATA\Code\User\workspaceStorage - macOS/Linux 路径:
~/.config/Code/User/workspaceStorage - 进该目录后,逐个打开里面的
storage.json(文本文件),找"folder字段匹配你当前项目绝对路径的那一项 - 找到后,记下所在 GUID 文件夹名,再删整个文件夹(不是只删
storage.json)
删完重启 VSCode,首次打开该项目会重建索引,后续就轻了。
清理插件在项目级产生的缓存
某些插件(尤其是 Python、TypeScript、Rust)会在扩展目录内为当前工作区单独建缓存,常见位置:
-
~/.vscode/extensions/ms-python.python-2024.12.0/cache/(含 Pylance 符号缓存) -
~/.vscode/extensions/ms-vscode.vscode-typescript-next/.../node_modules/typescript/lib/tsserver.js加载时生成的临时映射 - 插件子目录下的
__pycache__、.cache、cached-data
这些目录不会随项目关闭自动清理,且常因中断写入而损坏。建议手动进入对应扩展目录,只删明确带 cache、__pycache__、cached-data 名称的子目录,别动主逻辑文件。
避免误删的关键红线
以下目录绝对不要碰,哪怕看起来“像缓存”:
-
.vscode/launch.json、.vscode/settings.json:这是你写的配置,不是缓存 -
%APPDATA%\Code\User\settings.json:全局设置,删了就丢所有偏好 -
~/.vscode/extensions/ms-python.python-2024.12.0(不带-cache后缀):这是插件本体,删了插件就没了 -
workspaceStorage里没确认归属的 GUID 目录:可能对应你上周刚调试过的微服务,删了就得重新索引全部
最稳妥的做法是:先关死所有 Code 进程,再按修改时间排序清理 workspaceStorage,只动超过 90 天没更新的;插件缓存则紧盯 -cache 后缀和 cache/ 目录名——其他都留着。











