โก Usage
soap modes, flags, and examples for cleaning Homebrew casks and manually installed apps.
soap <cask-name> Clean an app installed via a Homebrew cask
soap <path-to-app> Clean a manually installed app
soap --help Show help
soap --version Print the installed version๐ Modes
soap decides its mode from the argument: a path containing .app is treated as
a manual install, anything else as a Homebrew cask.
Cask mode โ soap spotify
- Resolves the
.appname frombrew info. - Scans macOS directories for files matching the app name or bundle identifier.
- Fetches the cask's zap stanza โ the maintainer-curated list of known leftover files.
- Presents a checkbox list of everything found, all pre-selected.
- Moves selected files to Trash.
- Optionally runs
brew uninstall --zapto unregister the cask from Homebrew.
If a cask has been renamed, soap warns you and cleans using the new name. If it
cannot determine an app name, it falls back to brew uninstall --zap.
Path mode โ soap '/Applications/Slack.app'
Same file scan as cask mode, but skips every Homebrew step. Use this for apps installed manually from a DMG.
๐ Examples
soap spotify
soap android-studio
soap '/Applications/Android Studio.app'
soap spotify --yes๐ฉ Flags
| Flag | Effect |
|---|---|
--yes, -y | Skip all prompts: auto-select every file and auto-confirm the brew uninstall. |
--yes-dangerously | Like --yes, but also auto-confirms sudo rm for root-owned files. |
--version, -v | Print the installed version and exit. |
--help, -h | Show usage and exit. |
๐ Debug mode
SOAP_DEBUG=1 soap spotifyEnables verbose shell output โ soap prints every subprocess command it runs, and prints full error objects when something fails.