开发工具清理:原版 Mole 已经支持什么?
原版 Mole 的开发环境能力主要集中在 mo clean、mo purge、mo installer、mo uninstall 和 mo analyze,不需要独立的 mo dev。
覆盖矩阵
| 工具领域 | 常见对象 | 对应功能 | 高价值资产是否自动删除 |
|---|---|---|---|
| Node.js | npm、pnpm、Yarn、Bun、Corepack 缓存 | clean | 项目 node_modules 需经 purge 选择 |
| 前端框架 | Vite、Next.js、Turbo、Parcel、Webpack | clean + purge | 已追踪内容需要保护 |
| Python | pip、uv、Poetry、Conda、pyenv、Ruff、Pytest | clean + purge | Poetry 虚拟环境等有强制保护 |
| Go | GOCACHE / GOMODCACHE | clean | 使用工具自身路径解析 |
| Rust | Cargo 下载缓存、rustup 下载数据 | clean + purge | 不把完整源码、工具链当作普通垃圾 |
| JVM / Android | Gradle、Android Studio 缓存、NDK 版本提示 | clean | 多版本只提示用户审查 |
| Xcode | DerivedData、CoreSimulator 缓存、DeviceSupport 的部分数据 | clean | Archives、Runtime 镜像需要审查 |
| Flutter / Dart | 部分生成缓存、FVM SDK 占用提示 | clean + purge | SDK 与下载依赖高成本,谨慎保留 |
| Unity | ~/Library/Caches/com.unity3d.*/* | clean | 编辑器本体、项目 Library 不作为普通垃圾 |
| PHP / Ruby / Zig 等 | Composer、gem、Zig、Bazel | clean + purge | 需要按具体缓存类型区分 |
| Docker / OrbStack | BuildX 缓存、容器临时文件、存储使用报告 | clean | 卷、镜像、虚拟磁盘通常只提示 |
| IDE / AI 工具 | JetBrains、VS Code、Cursor、Codex 等历史缓存 | clean | 配置、帐号、模型、对话状态保护 |
Xcode:清缓存不等于卸载 Runtime
原生已有:
- DerivedData 项目目录和 Xcode 应用缓存的受限清理。
- Xcode 构建进程检测,工具状态不明则拒绝删除。
- CoreSimulator 缓存、不可用 Simulator 的处理。
- 孤立 Simulator Runtime 审查提示:使用 runtimeIdentifier 对齐设备列表,而不是看到旧系统版本就删。
- 大型 Xcode Archives、模拟器设备数据体积提示,没有自动删除发布归档。
bash
mo clean --dry-run --debug
mo analyze ~/Library/Developer/Xcode1
2
2
如果某个 Runtime 有任何设备依赖,就不能仅因为版本旧就认为它可清理。
Unity / 团结引擎
Mole 原版已有通配规则:
text
~/Library/Caches/com.unity3d.*/*1
它针对的是 Unity 应用缓存,不是 Unity 安装程序、Hub 编辑器版本、项目 Assets、Library 或资源下载仓库的完整分析器。
- Unity
Library常需要大量导入与 shader/脚本重建时间。 - Unity Hub 安装的不同编辑器版本可能是老项目的精确依赖。
- 团结引擎与 Unity 名称或目录相似不代表可以套用同一删除规则。
- 如果不明确是否仍被项目需要,应保留,或经对应引擎官方管理工具审查。
Rust / Python 为什么不需要再次扩展?
因为原生已经支持包管理器官方清缓存命令、路径动态发现、进程阻断、用户白名单和项目级产物选择。新增一套平行扫描/清理器会引入安全策略不一致的问题。
推荐工作方式
bash
# 1. 看真实空间分布
mo analyze
# 2. 只读看普通缓存候选
mo clean --dry-run
# 3. 对高成本开发资源配置保护
mo clean --whitelist
# 4. 对指定项目再进行独立审查
mo purge --paths
mo purge --dry-run1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
不要为了定期回收几百 MB 而清空仍然会使用的 SDK、编译缓存或依赖下载。
源码:开发工具规则 · Xcode 应用缓存。