NPkill

🗑️ 一键清理 JS 构建目录,释放磁盘空间

智能清理 node_modules 和 .next 构建目录,一键回收海量磁盘空间,专为 JavaScript/Next.js 开发者设计的存储优化工具

收藏
13.8k
安装
2.9k
版本
1.0.0
CLS 安全性认证2026-07-14
点击查看完整报告 >

使用说明

核心用法

npkill 是一款专精于清理 JavaScript 生态磁盘占用的命令行工具,核心能力在于快速扫描并安全移除 node_modules 和 .next 构建目录。

基础交互:直接运行 npkill 进入 TUI 界面,上下导航浏览所有目标文件夹,空格键勾选、回车确认删除,操作直观零学习成本。

自动化场景:npkill --delete-all --yes 实现无人值守批量清理,适合 CI/CD 环境或定时任务;--dry-run 预演模式可先评估释放空间,避免误删。

定向搜索:通过 --target .next 切换清理目标至 Next.js 构建产物,--directory /path 指定扫描起点,--gb 以 GB 单位显示更直观。

显著优点

1. 精准定位:专为 JavaScript 开发者痛点设计,直击 node_modules"黑洞"问题,单项目常占用 500MB-2GB,累积数十项目后可达数十 GB
2. 双重模式:兼顾交互式精细管理与自动化批量处理,适应个人开发与团队协作不同场景

3. 原生安全:内置受保护目录检测(VSCode、Discord 等应用目录),--exclude 支持自定义白名单,降低误触系统关键路径风险

4. 生态适配:官方支持 .next 目标切换,对 Next.js 开发者友好,填补通用清理工具对前端构建产物的覆盖空白

潜在局限

  • Node 专属:仅限于 Node.js 项目目录,对 Python venv、Rust target 等其他语言构建产物无感知
  • 递归风险:--full 扫描家目录或根目录时,若配合 --delete-all 可能波及依赖 node_modules 运行的应用(如 Electron 应用内置依赖)
  • 无版本管理:删除后无法回滚,需配合 package.json 重新 npm install 恢复
  • 权限边界:对系统目录的"保护警告"依赖白名单机制,新型应用或自定义路径可能漏检

适合人群

  • 本地维护大量前端/Node 项目的全栈开发者
  • 磁盘空间紧张的 MacBook SSD 用户
  • 需要定期清理 CI 构建缓存的 DevOps 工程师
  • Next.js 项目频繁构建导致 .next 目录膨胀的重度使用者

常规风险

| 风险类型 | 说明 | 缓解措施 |
|---------|------|---------|
| 误删运行中应用依赖 | 某些应用(如 VSCode 扩展、Electron 应用)依赖内部 node_modules | 严格使用交互模式,确认路径后再删除 |
| 项目恢复成本 | 删除后需重新执行 npm install,大型项目耗时较长 | 优先清理确认废弃的旧项目 |
| 路径遍历注入 | 若工具解析 `--directory` 参数不当,可能触及敏感路径 | 避免在脚本中直接拼接不可信路径变量 |

npkill 作为开源社区广泛使用的专用工具,在正确配置下安全性良好,但需用户保持"先预览、后执行"的操作纪律。

安全解读

NPKill Skill 综合评估

核心用法

NPKill Skill 是一个磁盘空间管理工具,专为 JavaScript 和 Next.js 开发者设计。它通过调用外部 npkill CLI 工具,帮助用户定位并清理累积的 node_modules 和 .next 构建文件夹。核心命令包括:

  • 交互式清理:npkill 启动 TUI 界面,浏览并按大小排序的文件夹列表,支持选择性删除
  • 自动化模式:npkill --delete-all --yes 一键清理(需谨慎使用)
  • 定向搜索:--target .next 针对 Next.js 构建产物,--directory 指定起始路径
  • 安全预览:--dry-run 模拟执行,无实际删除操作

显著优点

1. 针对性场景:精准解决 JS/Node 生态中 node_modules 膨胀的行业痛点,Next.js 开发者可通过 --target .next 专门清理构建缓存
2. 分层安全设计:内置对 VSCode、Discord 等保护目录的警告机制,交互式确认 + 干运行双重保险

3. 零依赖轻量:Skill 本身无第三方依赖,完全委托外部 CLI 执行,降低供应链攻击面

4. 灵活输出:支持 --gb 单位切换,便于大容量存储评估

潜在局限与风险

| 风险类型 | 具体说明 |
|---------|---------|
| **误删风险** | `--delete-all --yes` 自动化模式若配置在错误目录,可能导致重要项目依赖丢失 |
| **T3 来源可信度** | 维护者为个人开发者格式(kn76xzwmgqfv2...),无明确 GitHub 仓库或组织背书 |
| **外部工具依赖** | 实际功能依赖系统全局安装的 `npkill` CLI,版本兼容性未作约束 |
| **权限边界模糊** | `--full` 扫描 home 目录时,可能触及其他用户或系统级 node_modules |

适合人群

  • 前端开发者:长期维护多项目,磁盘空间紧张
  • DevOps/CI 维护者:需要定期清理构建服务器的构建缓存
  • Next.js 用户:需要专项清理 .next 输出目录

常规风险控制建议

1. 强制 dry-run 优先:首次在任何目录使用前,必须执行 --dry-run 评估影响范围
2. 排除关键路径:利用 --exclude 参数保护生产代码库、Monorepo 根目录

3. 避免自动化滥用:不建议将 --delete-all --yes 加入无人工审核的定时任务

4. 版本锁定:建议配套 package.json 或文档说明推荐的 npkill CLI 版本范围

NPkill 内容

assets文件夹
references文件夹
scripts文件夹
手动下载zip · 6.4 kB
npkill_config_template.txttext/plain
请选择文件