--- name: mac-maintenance-cleanup description: macOS 系统深度清理和优化工作流。当用户需要以下操作时使用:(1) 清理系统缓存、日志和临时文件,(2) 卸载应用及其残留文件,(3) 分析磁盘空间使用情况,(4) 清理开发项目构建产物,(5) 系统优化和性能提升,(6) 任何关于 Mac 清理和维护的请求。提供交互式菜单、智能诊断和混合模式(指导+自动执行)。 --- # 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. **系统诊断**(可选) ```bash mo status ``` 显示系统健康状态:CPU、内存、磁盘使用率等 2. **预览清理计划** ```bash mo clean --dry-run ``` 列出将要清理的缓存和文件大小 3. **用户确认** 使用 AskUser 确认是否执行清理: - 显示预览结果 - 询问是否继续 - 提供"仅清理特定类别"选项 4. **执行清理** ```bash # 根据用户确认执行 mo clean # 全部清理 # 或 mo clean --whitelist # 选择性清理 ``` 5. **记录结果** 显示清理前后的磁盘空间对比 **用户交互示例**: ``` 发现以下可清理内容: - 用户应用缓存:45.2GB - 浏览器缓存:10.5GB - 开发者工具:23.3GB - 系统日志和临时文件:3.8GB - 废纸篓:12.3GB 预计释放空间:95.5GB 是否执行清理? 1. 全部清理 2. 选择性清理(跳过浏览器缓存) 3. 仅显示详细操作计划 4. 取消 ``` ### 场景 2:深度清理 **目标**:全面清理系统,包括应用卸载、大文件分析和系统优化。 **工作流程**: 1. **磁盘空间分析** ```bash mo analyze ``` 可视化显示磁盘使用情况,找出占用空间的大文件和目录 2. **应用卸载**(如果需要) ```bash mo uninstall ``` 交互式选择要卸载的应用,彻底删除应用及其残留文件 3. **深度清理缓存** ```bash mo clean --dry-run --debug ``` 显示详细的清理计划,包括风险等级和文件信息 4. **安装文件清理** ```bash mo installer ``` 查找并删除下载的安装文件(.dmg、.pkg 等) 5. **系统优化** ```bash mo optimize --dry-run ``` 预览优化操作:重建系统缓存、刷新服务等 6. **逐步确认和执行** 每个步骤使用 AskUser 获取用户确认 **用户交互示例**: ``` 深度清理包括以下步骤: 1. 磁盘空间分析 ✓ 2. 应用卸载(发现 3 个不常用应用) 3. 深度缓存清理(预计释放 95.5GB) 4. 安装文件清理(发现 3.8GB 安装文件) 5. 系统优化(重建缓存和刷新服务) 希望从哪一步开始? - 逐步执行(每步确认) - 全部执行(最后确认) - 跳过某些步骤 ``` ### 场景 3:开发者清理 **目标**:清理开发环境,删除 node_modules、构建产物等开发相关文件。 **工作流程**: 1. **扫描项目构建产物** ```bash mo purge ``` 扫描默认项目目录(~/Projects、~/GitHub、~/dev 等) 2. **显示清理选项** 列出所有项目及其构建产物大小: - 标记近期项目(<7天)为默认不选中 - 显示每个项目的构建类型(node_modules、target、venv 等) 3. **自定义扫描路径**(可选) ```bash 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. **系统健康检查** ```bash mo status ``` 获取系统状态:CPU、内存、磁盘、网络等 2. **磁盘空间分析** ```bash 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` 预览,不实际执行删除: ```bash # 错误示例(直接执行) mo clean # 正确示例(先预览) mo clean --dry-run ``` ### 2. 用户确认 在执行任何危险操作前,必须使用 AskUser 获取用户明确同意: **确认模板**: ``` 即将执行以下操作: - 清理系统缓存(45.2GB) - 清理浏览器缓存(10.5GB) - 清理废纸篓(12.3GB) 预计释放空间:67.7GB 确认执行? - 是,执行清理 - 仅执行部分操作 - 取消 ``` ### 3. 详细操作日志 记录所有操作,包括: - 执行的命令 - 时间戳 - 清理的文件和大小 - 清理前后的系统状态 ### 4. 渐进式披露 对于高级选项,使用 `--debug` 和 `--whitelist` 提供更详细的信息: ```bash 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](references/mole-commands.md) 包含: - 所有 Mole 命令的详细用法 - 常用参数和选项 - 输出格式说明 - 最佳实践和注意事项 ### 清理最佳实践 详细指南请参考:[references/cleanup-best-practices.md](references/cleanup-best-practices.md) 包含: - 清理频率建议 - 安全注意事项 - 常见问题和解决方案 - 性能优化建议 ## 平台兼容性 本 skill 主要基于 Mole 工具,专为 macOS 设计。对于跨平台需求: - **macOS**:使用 Mole 工具(完整功能) - **Windows/Linux**:提供等效的原生命令和替代工具 在非 macOS 平台上,参考 [references/cross-platform-alternatives.md](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. **备份重要数据**:在执行深度清理前,建议备份重要数据