dwgx@blog:~$dwgx
> cd ../posts

VRCSM:VRChat 缓存清理和设置管理工具

// created

VRCSM 是给 Windows 上 VRChat 做的缓存管理工具,负责清理缓存、备份迁移设置和诊断修复。VRChat 的 Cache-WindowsPlayer 目录会悄无声息吃掉几十上百 G,全是别人化身和世界的缓存,手动翻目录算大小、判断坏链接又慢又容易误删,这工具就是把这些活自动化。

底层 C++20 做主机,界面用 WebView2 内嵌 React 19(Vite 6 + Tailwind 4 + shadcn/ui),原生 Windows 11 无边框加 Mica,看着跟系统一体,不用再套 Electron 吃内存。C++ 干脏活——扫目录、算大小、解 bundle、动 junction,前端只管展示,两边走 WebView2 消息通道对接。

缓存是核心。扫描按目录分类,大小、文件数、时间戳、坏链接全列清楚。删除默认走 dry-run,破坏性操作先给清单再确认,删前还会检测 VRChat.exe 有没有在跑,开着直接拦。真正省 C 盘的是 NTFS 迁移,用 junction 把缓存挪到别的盘,对 VRChat 完全透明,也不用管理员权限。

顺手把玩家关心的也做了:本地 UnityFS bundle 直接解三维模型做化身预览,读写 config.json 和启动参数,离线回放 output_log_*.txt 重建好友进出和世界停留,内置 SQLite 存备注收藏。后面加了 Steam Link / Quest 诊断修复,修前一律先备份。多语言铺了简中英日韩泰印地俄。

不想折腾就去 Releases 拿 .msi 装。自己编的话环境是 Windows 10 22H2+ x64、VS 2026 Build Tools、CMake 3.28+、Ninja、pnpm、vcpkg,我塞在 third_party/vcpkg 里了。

cd web && pnpm install && pnpm build && cd ..
cmake --preset x64-release
cmake --build --preset x64-release
.\build\x64-release\src\host\VRCSM.exe

VRCSM 是 local-first,扫描、解析、清理、迁移全优先动本地文件,登录才调 VRChat API,没做任何对服务器的非常规请求。源码公开走 VSAL,只为学习审计,不算开源,个人自己用随便,别转发魔改再发或商用。