macos-complete-uninstall

Installation
SKILL.md

Complete macOS uninstall

Removing the .app and the data directory leaves the thing alive and re-installable. A complete uninstall is an inventory problem first and a deletion problem second: find every hook (launchd, browser, keychain, shell, OS privacy), find the install trigger that recreates the software, then delete, then prove it is gone with checks that cannot pass by accident.

Non-negotiables

  1. Inventory completely before deleting anything. Run scripts/inventory.sh <term> (ships with this skill) and read its output. Never delete from a guess about where an app lives.
  2. Find the install trigger, not just the payload. Deleting an installed artifact while its install trigger survives means the OS reinstalls it on next launch. See pitfall 4.
  3. Ask before irreversible destruction. Confirm scope with the user and offer a backup choice for user-authored content. Report size and what will be lost.
  4. Verify with falsifiable checks, not with the absence of errors. A successful rm is not a completed uninstall.
  5. Never hand-edit HMAC-protected or consensus-managed state (Chrome Secure Preferences, launchd override DB). Remove the trigger and let the owning process reconcile.
Installs
2
GitHub Stars
1
First Seen
Oct 26, 2026