开源推荐
2025 开源推荐:uv —— 用 Rust 重写的 Python 包管理器,快到飞起
napcat-java-agent:内置 AI Agent 的 Java QQ Bot 框架
开源推荐|Dify —— 一站式开源 LLM 应用开发平台
Open WebUI:最强大的自托管 AI 聊天界面
DuckDB——嵌入式OLAP数据库,数据分析的瑞士军刀
Kondo:一键清理项目构建产物,回收磁盘空间神器
CrewAI:角色驱动的多 Agent 协作框架,让 AI 团队为你工作
OpenHands:让 AI 自主编码的开源编程代理
Void Editor:开源 AI 代码编辑器,Cursor 的隐私替代方案
本站点使用 MrDoc 构建
-
+
Kondo:一键清理项目构建产物,回收磁盘空间神器
> 分类:开源推荐 | 发布时间:2026-05-17  ## 一句话介绍 **Kondo** 是一个用 Rust 编写的命令行工具,能自动扫描你的项目目录,识别并清理各类构建产物和依赖缓存(node_modules、target、__pycache__ 等),一键回收大量磁盘空间。 ## 核心亮点 - **多语言项目支持**:自动识别 Node.js、Rust、Python、Haskell、Unity、Java 等十余种项目类型 - **安全预览模式**:默认只显示可清理内容,需显式执行 `kondo clean` 才会真正删除 - **超快扫描速度**:Rust 实现,递归遍历大型项目目录毫秒级完成 - **精确空间统计**:实时计算每个项目可回收的空间大小,一目了然 - **项目级粒度**:按项目分别展示,支持选择性清理特定项目 ## 快速上手 ### 安装 ```bash # Cargo 安装(推荐) cargo install kondo # Homebrew brew install kondo # 从源码编译 git clone https://github.com/tbillington/kondo.git cd kondo && cargo install --path . ``` ### 基本用法 ```bash # 扫描当前目录下的所有项目 kondo # 扫描指定目录 kondo ~/projects # 交互式选择要清理的项目 kondo -i ~/projects # 直接清理所有可回收空间(谨慎使用) kondo clean ~/projects ``` ### 输出示例  ``` $ kondo ~/projects my-frontend-app node_modules · 247 MB rust-api-server target/debug · 1.2 GB target/release · 890 MB python-ml-pipeline __pycache__ · 18 MB .venv · 312 MB ──────────────────────── Total reclaimable: 2.67 GB ``` ### 在 CI 中使用 ```yaml # GitHub Actions 清理构建缓存 - name: Clean up artifacts run: | cargo install kondo kondo clean ./ # CI 环境中安全使用 ``` ## 适用场景 | 场景 | 推荐指数 | 说明 | |------|---------|------| | 本地开发磁盘空间不足 | ⭐⭐⭐⭐⭐ | 最经典场景,效果立竿见影 | | 多项目仓库统一清理 | ⭐⭐⭐⭐⭐ | 递归扫描多个项目目录 | | CI/CD 缓存清理 | ⭐⭐⭐⭐ | 减少构建缓存占用 | | 服务器磁盘维护 | ⭐⭐⭐⭐ | 定期清理旧项目产物 | | Docker 镜像瘦身 | ⭐⭐⭐ | 构建前清理不必要的依赖 | | 新手磁盘清理 | ⭐⭐⭐⭐ | 比手动删除更安全 | ## 与同类项目对比 | 特性 | Kondo | dust | du + rm | ncdu | |------|-------|------|---------|------| | 自动识别项目类型 | ✅ | ❌ | ❌ | ❌ | | 多语言项目支持 | ✅ 10+ | ❌ | ❌ | ❌ | | 安全预览模式 | ✅ | ❌ | ❌ | ✅ | | 空间回收统计 | ✅ | 部分 | ❌ | ❌ | | 交互式选择 | ✅ | ❌ | ❌ | ✅ | | 执行速度 | 极快 | 快 | 中等 | 中等 | | 删除安全性 | 高 | N/A | 低 | 中 | | 语言 | Rust | Rust | Shell | C | **核心区别**:dust 和 ncdu 是磁盘分析工具,Kondo 是专门的项目清理工具——它知道什么是"可安全删除的",而不是让你自己判断。 ## 技术细节 Kondo 的扫描逻辑基于项目类型检测: 1. **项目识别**:通过特征文件判断项目类型(`package.json` → Node.js, `Cargo.toml` → Rust, `setup.py` → Python...) 2. **产物定位**:根据项目类型定位已知的构建产物目录 3. **空间计算**:递归计算目录大小,使用 Rust 的并行 I/O 加速 4. **安全删除**:确认后才执行删除,支持选择性清理 ```rust // Kondo 核心逻辑示意 fn scan_dir(path: &Path) -> Vec<ProjectArtifact> { let project_type = detect_project_type(path); let artifact_dirs = project_type.artifact_dirs(); artifact_dirs.iter() .filter_map(|dir| path.join(dir).canonicalize().ok()) .map(|dir| ProjectArtifact { path: dir.clone(), size: calc_dir_size(&dir), }) .collect() } ``` ## 相关链接 - **GitHub**:[https://github.com/tbillington/kondo](https://github.com/tbillington/kondo) - **crates.io**:[https://crates.io/crates/kondo](https://crates.io/crates/kondo) - **文档**:README 即完整文档,简洁实用 --- *如果你和我一样是个项目收集狂,磁盘上堆满了 node_modules 和 target 目录,Kondo 绝对值得一试。一行命令,轻松回收数 GB 空间。*
admin
2026年5月17日 02:10
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档(打印)
分享
链接
类型
密码
更新密码