# Mac App Uninstall

> 卸载 macOS 程序并清理关联文件、隐藏配置、缓存和后台组件，或检查已卸载程序的残留。用户要求彻底卸载、删除干净、检查卸载遗漏时使用；仅咨询卸载按钮时只检查和解释，不执行删除。

- Skill: `li1164267803/mac-app-uninstall` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add li1164267803/mac-app-uninstall`
- Raw SKILL.md: https://api.skillmd.com/api/skills/li1164267803/mac-app-uninstall/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: li1164267803 (https://skillmd.com/u/li1164267803)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/li1164267803/mac-app-uninstall

---


# Mac 程序彻底卸载

目标是清除指定程序在授权范围内的专属文件、配置及运行组件，并用卸载后的复查证明结果。不能以卸载器成功、搜索无结果或应用图标消失代替验收。发现未解决残留就继续处理；权限、归属或系统状态阻塞时明确列出，不能宣称全盘零残留。

## 对象与授权

- 从当前请求和会话确定应用、安装位置及清理意图。创建本技能、询问按钮效果、要求扫描都不等于授权卸载示例应用。同名应用或多个安装副本会影响删除范围时，先核实身份。
- “卸载 X 并清理所有配置/残留”已授权删除 X 的程序本体及确认专属的配置、缓存、日志、插件、辅助程序等；不在清单完成后重复请求相同授权。若用户只要求普通卸载，按惯例保留独有业务数据，发现需要删除有价值数据时说明具体内容。
- 区分程序数据和用户作品：配置中的自定义场景属于用户明确要求清除的配置；录制视频、项目、文稿、素材、虚拟机、数据库等独有内容不能因“由 X 创建/打开”自动删除。用户已明确将它们纳入删除范围时执行，否则仅就这些具体对象澄清，并继续独立清理。共享组件先确认其他使用者。
- 默认覆盖当前用户与系统级安装、数据及有证据指向的本地路径；“整台电脑”须盘点其他用户目录及挂载卷，标明可访问和未覆盖区域，不擅自将其他账户的私人数据纳入删除。历史备份/快照、云端副本、系统审计记录单列边界，不为了“零痕迹”清空系统数据库或备份。

## 建立可核验清单

进行实际扫描或卸载前阅读 [references/macos.md](references/macos.md)。优先本机安装信息和应用官方卸载说明；针对实际版本核对命令，必要时查官方资料。

1. 获取应用真实路径、Bundle ID、版本、签名 Team ID、安装来源；检查内嵌 helper/extension 的标识、官方卸载器和包管理记录。主程序已不存在时，从残留配置、收据和服务定义重建身份，不因此跳过扫描。
2. 同时按身份和路径调查：名称搜索只产生候选，结合 Bundle ID、签名、安装清单、配置内路径、服务可执行文件和应用文档确认归属。显示名称、Bundle ID 和数据目录常不同；例如 OBS 的 `com.obsproject.obs-studio` 之外还有 `Application Support/obs-studio`。不要只匹配 Bundle ID。
3. 将候选记录成清单：绝对路径或服务标识、归属依据、专属/共享/用户作品、预计动作、执行结果。额外记录搜索根目录、使用的标识/别名、访问错误和未覆盖区域。清单可保存在任务工作区；不复制配置正文或密钥到报告。
4. 包含隐藏项、空目录和符号链接；Spotlight、Raycast 和卸载器的结果都是线索，不是完整清单。扫描报错或无权限不算“不存在”。目录名称命中后检查实际内容和共享关系再决定整目录删除，指向目录外的链接不得自动跟随删除目标。

## 执行清理

- 在清除配置前提取调查所需的输出路径、组件标识和安装线索，避免删掉后无法追踪。用户可审阅简短清单或行动说明；这不是新增批准点。
- 先正常退出应用并核实相关进程；有未保存工作时不强杀丢弃。按真实服务身份停止会重建文件的后台任务。需要应用本体来注销扩展时先运行官方卸载流程，后移除本体，不能一开始删掉卸载能力。
- 按安装来源使用官方卸载器或包管理器，再独立清理遗漏；审阅卸载范围，不能盲用第三方一键深度清理、包管理器宽泛 `zap` 或共享依赖自动删除。
- 执行只消费已核对的明确路径/标识。临删除前重新检查路径类型、父目录和归属，避免对象被替换或路径解析越界。绝不把搜索结果直接接到删除命令，不使用宽泛通配符递归删除，不清空 `Library`、厂商共享目录或整个废纸篓。
- 用户明确要求彻底删除的专属对象，在权限允许时精确删除，不默认制造备份、隔离副本或仅移入废纸篓后宣称无残留。普通卸载采用废纸篓时报告其仍占空间；已有废纸篓中相关对象也须确认身份后按授权单独处理。
- 系统扩展、驱动、登录项、特权 helper 使用受支持的注销机制；不能直接抹除受管系统目录、关闭 SIP 或绕过权限。证据表明需要管理员授权、用户操作或重启时，完成其余工作后说明具体剩余动作；不自动重启。
- 钥匙串凭据、TCC 权限、云端账号及订阅是独立对象：有明确相关授权时使用针对目标的官方机制，否则报告实际发现的项目，不能整库删除或擅自撤销共享凭据。

## 完成依据

卸载后同时检查原清单与重新发现结果：

- 每个已授权专属路径均不再存在（包括断开的符号链接），没有被进程或后台服务重新生成。
- 按原身份、别名和新发现标识重新搜索文件系统；再次覆盖参考表中适用位置，避免只检查已知列表。新增候选回到归属判断和清理。
- 相关进程、launchd 服务、登录项和系统扩展不再运行或注册；“等待重启移除”必须记为未完成。只检查目标，不结束其他程序或重置全局索引。
- 共享项和用户作品的保留依据明确；权限不足、未挂载卷、其他用户、备份、凭据及无法验证项有明确状态。搜索失败、截断或跳过必须披露，不能以零匹配抵消。

最终说明删除了什么、复查覆盖范围、保留项和剩余动作。全部适用检查通过时可说“已清理，并在已检查范围内未发现专属残留”；只有废纸篓操作时说“已移入废纸篓”。不声称物理不可恢复、全盘绝对无痕，或掩盖有证据的残留。没有阻塞时继续完成，不把复查、第二轮清理或本可执行的卸载留给用户。

