应清理 workspaceStorage、Cache 和 CachedData 三个目录:workspaceStorage 积压过期项目索引导致搜索与跳转卡顿;Cache 与 CachedData 需同时清除以避免插件市场加载异常和语法高亮错乱;清理后首次打开多根工作区会变慢属正常重建索引过程。

多项目本地缓存不清理,会导致搜索变慢、符号跳转卡顿、甚至工作区打开延迟几十秒——这不是项目太多,而是 workspaceStorage 和 CachedData 积压了大量过期索引。
workspaceStorage 是多项目缓存的主因
VSCode 每次打开一个文件夹(无论是否保存为 .code-workspace),都会在 %APPDATA%\Code\User\workspaceStorage(Windows)下生成一个以 GUID 命名的子目录,里面存着该文件夹的搜索索引、符号缓存、折叠状态、终端历史等。多个项目反复打开后,这里可能堆积上百个目录,总大小轻松突破 1.5GB。
- 删掉整个
workspaceStorage文件夹完全安全:重启 VSCode 后,只会在你再次打开某个项目时重建对应目录 - 不要只删部分子目录——VSCode 不会自动识别“哪些已废弃”,残留的旧 GUID 目录仍会参与启动扫描
- 如果你用的是多根工作区(如
my-team.code-workspace),它只对应一个 workspaceStorage 子目录,但这个目录里会混合 frontend/、backend/ 等所有根文件夹的缓存数据
CachedData 和 Cache 必须一起清
这两个目录影响多项目下的语法高亮、语义着色、插件市场加载和扩展行为。特别是当多个项目使用不同语言(比如 Python + TypeScript + Rust)时,CachedData 会缓存各语言服务器的 tokenization 规则快照,版本升级后旧快照不更新就会导致高亮错乱或跳转失效。
-
Cache:HTTP 缓存,含 marketplace 接口响应、图标、扩展描述等;只清它,插件列表可能仍显示旧版本 -
CachedData:压缩过的语言服务快照和编辑器渲染中间产物;只清它,插件市场可能卡在“加载中” - 必须同时清空两者,且操作前确认 VSCode 已彻底退出(包括托盘进程),否则部分文件被锁住删不掉
别碰 extensions 和 globalStorage 直接删
很多人一并删掉 extensions 目录想“重装插件”,结果发现 Project Manager、ESLint 等依赖全局状态的插件丢失全部配置;globalStorage 里则存着 Git Graph 的分支缓存、TODO Tree 的标签索引等跨项目数据。
- 如果只是多项目卡顿,不要动
extensions或globalStorage;它们不是性能瓶颈来源 - Project Manager 插件的项目列表存在
globalStorage\alessandrofragnani.project-manager下,删了就丢所有手动添加的项目入口 - 真正要清理的只有:
workspaceStorage、Cache、CachedData这三个目录
最常被忽略的一点:清理后首次打开多根工作区会明显变慢——这不是失败,是 VSCode 正在为每个根文件夹重建符号索引。等它完成一次完整扫描(通常 1–3 分钟),后续打开速度就会回归正常。别在中途强行关掉窗口。











