mac-maintenance-cleanup

SKILL.md

Mac Maintenance Cleanup

概述

提供完整的 macOS 系统清理和维护工作流,基于 Mole 工具实现系统缓存清理、应用卸载、磁盘空间分析和开发环境清理。支持交互式菜单选择、智能诊断和安全操作(默认 dry-run + 用户确认)。

核心原则

  1. 安全第一:默认使用 --dry-run 预览,危险操作前必须使用 AskUser 获取用户确认
  2. 详细日志:记录所有操作,便于审计和回溯
  3. 渐进式执行:从预览到确认再到执行,逐步推进
  4. 用户自主:提供清晰的指导,用户可选择手动执行或让 AI 自动执行

工作流决策树

用户请求
   ├─ 不确定需要什么清理?
   │  └─→ 运行智能诊断清理
   ├─ 明确的清理需求
   │  │
   │  ├─ 快速清理/定期维护
   │  │  └─→ 日常清理
   │  │
   │  ├─ 磁盘空间不足/彻底清理
   │  │  └─→ 深度清理
   │  │
   │  └─ 开发环境/构建产物
   │     └─→ 开发者清理
   └─ 特定操作
      ├─ 系统缓存 → mo clean --dry-run
      ├─ 应用卸载 → mo uninstall
      ├─ 磁盘分析 → mo analyze
      ├─ 系统优化 → mo optimize --dry-run
      ├─ 项目清理 → mo purge
      └─ 安装文件 → mo installer

清理场景

场景 1:日常清理

目标:快速清理系统缓存、日志和临时文件,定期维护系统健康。

工作流程

  1. 系统诊断(可选)

    mo status
    

    显示系统健康状态:CPU、内存、磁盘使用率等

  2. 预览清理计划

    mo clean --dry-run
    

    列出将要清理的缓存和文件大小

  3. 用户确认 使用 AskUser 确认是否执行清理:

    • 显示预览结果
    • 询问是否继续
    • 提供"仅清理特定类别"选项
  4. 执行清理

    # 根据用户确认执行
    mo clean                    # 全部清理
    # 或
    mo clean --whitelist        # 选择性清理
    
  5. 记录结果 显示清理前后的磁盘空间对比

用户交互示例

发现以下可清理内容:
- 用户应用缓存:45.2GB
- 浏览器缓存:10.5GB
- 开发者工具:23.3GB
- 系统日志和临时文件:3.8GB
- 废纸篓:12.3GB

预计释放空间:95.5GB

是否执行清理?
1. 全部清理
2. 选择性清理(跳过浏览器缓存)
3. 仅显示详细操作计划
4. 取消

场景 2:深度清理

目标:全面清理系统,包括应用卸载、大文件分析和系统优化。

工作流程

  1. 磁盘空间分析

    mo analyze
    

    可视化显示磁盘使用情况,找出占用空间的大文件和目录

  2. 应用卸载(如果需要)

    mo uninstall
    

    交互式选择要卸载的应用,彻底删除应用及其残留文件

  3. 深度清理缓存

    mo clean --dry-run --debug
    

    显示详细的清理计划,包括风险等级和文件信息

  4. 安装文件清理

    mo installer
    

    查找并删除下载的安装文件(.dmg、.pkg 等)

  5. 系统优化

    mo optimize --dry-run
    

    预览优化操作:重建系统缓存、刷新服务等

  6. 逐步确认和执行 每个步骤使用 AskUser 获取用户确认

用户交互示例

深度清理包括以下步骤:
1. 磁盘空间分析 ✓
2. 应用卸载(发现 3 个不常用应用)
3. 深度缓存清理(预计释放 95.5GB)
4. 安装文件清理(发现 3.8GB 安装文件)
5. 系统优化(重建缓存和刷新服务)

希望从哪一步开始?
- 逐步执行(每步确认)
- 全部执行(最后确认)
- 跳过某些步骤

场景 3:开发者清理

目标:清理开发环境,删除 node_modules、构建产物等开发相关文件。

工作流程

  1. 扫描项目构建产物

    mo purge
    

    扫描默认项目目录(/Projects、/GitHub、~/dev 等)

  2. 显示清理选项 列出所有项目及其构建产物大小:

    • 标记近期项目(<7天)为默认不选中
    • 显示每个项目的构建类型(node_modules、target、venv 等)
  3. 自定义扫描路径(可选)

    mo purge --paths
    

    配置要扫描的项目目录

  4. 确认并清理 使用 AskUser 确认要清理的项目

  5. 记录清理结果 显示释放的空间和清理的项目列表

用户交互示例

发现以下项目构建产物(总计 18.5GB):

➤ ● my-react-app       3.2GB | node_modules  >6mo
  ● old-project        2.8GB | node_modules  >6mo
  ● rust-app           4.1GB | target        >6mo
  ○ current-work       856MB | node_modules  | Recent (2天)
  ● django-api         2.3GB | venv          >6mo

要清理哪些项目?
- 全部清理(保留近期项目)
- 选择性清理
- 查看详细信息
- 取消

场景 4:智能诊断清理

目标:根据系统状态自动判断需要执行哪些清理操作。

工作流程

  1. 系统健康检查

    mo status
    

    获取系统状态:CPU、内存、磁盘、网络等

  2. 磁盘空间分析

    mo analyze ~/Downloads ~/Documents
    

    分析用户目录的磁盘使用情况

  3. 智能判断 根据系统状态提出清理建议:

    • 磁盘使用率 >80% → 建议深度清理
    • 磁盘使用率 60-80% → 建议日常清理
    • 发现大量开发项目 → 建议开发者清理
    • 系统性能下降 → 建议系统优化
  4. 提供清理方案 列出推荐的清理操作和预期效果

  5. 用户选择 使用 AskUser 让用户选择要执行的清理方案

用户交互示例

系统诊断结果:
- 磁盘使用率:78.3% (333/460 GB)
- 内存使用率:58.4% (14.2/24 GB)
- CPU 负载:正常
- 发现:8个旧项目,12.3GB 废纸篓,3.8GB 安装文件

推荐清理方案:
方案A:日常清理 + 开发者清理(预计释放 30GB)
方案B:深度清理(预计释放 110GB)
方案C:仅清理废纸篓和安装文件(预计释放 16GB)

选择方案或自定义清理操作?

安全策略

1. 默认 Dry-Run

所有清理操作默认使用 --dry-run 预览,不实际执行删除:

# 错误示例(直接执行)
mo clean

# 正确示例(先预览)
mo clean --dry-run

2. 用户确认

在执行任何危险操作前,必须使用 AskUser 获取用户明确同意:

确认模板

即将执行以下操作:
- 清理系统缓存(45.2GB)
- 清理浏览器缓存(10.5GB)
- 清理废纸篓(12.3GB)

预计释放空间:67.7GB

确认执行?
- 是,执行清理
- 仅执行部分操作
- 取消

3. 详细操作日志

记录所有操作,包括:

  • 执行的命令
  • 时间戳
  • 清理的文件和大小
  • 清理前后的系统状态

4. 渐进式披露

对于高级选项,使用 --debug--whitelist 提供更详细的信息:

mo clean --dry-run --debug    # 详细预览,包括风险等级
mo clean --whitelist          # 管理受保护的缓存路径

交互式菜单

主菜单结构

Mac 维护清理助手
══════════════════════════════

请选择清理模式:

1. 💨 日常清理(快速清理缓存和临时文件)
2. 🔍 深度清理(全面清理系统和应用)
3. 💻 开发者清理(清理项目构建产物)
4. 🩺 智能诊断(自动判断清理方案)
5. ⚙️  单独操作

选择模式(1-5)或描述你的需求:

单独操作菜单

单独操作
══════════════════════════════

1. 🧹 系统缓存清理(mo clean)
2. 🗑️  应用卸载(mo uninstall)
3. 📊 磁盘空间分析(mo analyze)
4. ⚡ 系统优化(mo optimize)
5. 📦 项目构建清理(mo purge)
6. 💿 安装文件清理(mo installer)
7. 📈 系统状态监控(mo status)

选择操作(1-7):

资源引用

Mole 命令参考

详细命令说明请参考:references/mole-commands.md

包含:

  • 所有 Mole 命令的详细用法
  • 常用参数和选项
  • 输出格式说明
  • 最佳实践和注意事项

清理最佳实践

详细指南请参考:references/cleanup-best-practices.md

包含:

  • 清理频率建议
  • 安全注意事项
  • 常见问题和解决方案
  • 性能优化建议

平台兼容性

本 skill 主要基于 Mole 工具,专为 macOS 设计。对于跨平台需求:

  • macOS:使用 Mole 工具(完整功能)
  • Windows/Linux:提供等效的原生命令和替代工具

在非 macOS 平台上,参考 references/cross-platform-alternatives.md

使用示例

示例 1:快速日常清理

用户请求

帮我清理一下 Mac 系统

AI 响应

我来帮你清理 Mac 系统。首先让我检查一下系统状态:

[执行 mo status]

发现以下可清理内容:
- 用户应用缓存:45.2GB
- 浏览器缓存:10.5GB
- 系统日志:3.8GB

预计可释放:59.5GB

[使用 AskUser]
是否执行日常清理?
1. 执行清理(先预览再确认)
2. 仅显示详细清理计划
3. 自定义清理选项

示例 2:深度清理

用户请求

我的磁盘空间不够了,需要深度清理

AI 响应

我来帮你进行深度清理。让我先分析磁盘使用情况:

[执行 mo analyze]

发现以下问题:
- 磁盘使用率:82% (377/460 GB)
- 大型文件夹:Library (75.4GB)、Downloads (34.6GB)
- 可清理内容:缓存 95.5GB、安装文件 3.8GB

推荐深度清理方案:
1. 清理系统缓存(95.5GB)
2. 清理安装文件(3.8GB)
3. 卸载不常用应用(发现 3 个,共 12.8GB)

[使用 AskUser]
希望执行哪些清理操作?

示例 3:开发者清理

用户请求

清理我的开发环境,删除旧的 node_modules

AI 响应

我来帮你清理开发环境的构建产物:

[执行 mo purge]

发现以下项目构建产物(18.5GB):
- my-react-app (3.2GB, node_modules)
- old-project (2.8GB, node_modules)
- current-work (856MB, node_modules, Recent)

[使用 AskUser]
要清理哪些项目?
1. 清理全部(保留近期项目)
2. 选择性清理
3. 查看详细信息

注意事项

  1. 数据安全:虽然 Mole 设计安全,但文件删除是永久的,请仔细审查操作
  2. 终端兼容性:iTerm2 有已知兼容性问题,推荐使用 Alacritty、kitty、WezTerm、Ghostty 或 Warp
  3. 定期清理:建议每周或每月执行一次日常清理,保持系统健康
  4. 备份重要数据:在执行深度清理前,建议备份重要数据
Weekly Installs
2
GitHub Stars
1
First Seen
9 days ago
Installed on
amp2
cline2
opencode2
cursor2
kimi-cli2
codex2