How to uninstall Hopper Disassembler on Mac
Hopper Disassembler is Cryptic Apps' reverse engineering tool for Mac, from hopperapp.com. The download is one app: per the download page, the free demo cannot save or export disassembly and a license unlocks it, so what you may want to keep is not in the app. If you have a license, keep the license file or the email it came in; the FAQ says a license never expires and is tied to a person (Personal) or a computer (Computer), and describes no deactivation step. Any databases or exports you saved are files in the folders you chose, and removing the app does not touch them. If you pointed an AI client at Hopper's MCP server, which the FAQ says is set up from the Help menu, remove that connection in the client too. This guide covers the official disk image and the Homebrew cask hopper-disassembler.
Quit and remove the app
- Save and close your Hopper documents. When Mole removes Hopper it asks it to quit and force quits it if it does not, so anything unsaved is lost.
- Quit Hopper with Command + Q. In the test, Status grouped seven processes under one row: Hopper, its
ExternalAPIhelper and five macOS services (the open and save panel, Metal's shader compiler twice, a Safari support helper and Quick Look). - Open Finder, go to Applications and drag Hopper Disassembler to the Trash.
The first launch started a user-level service, com.cryptic-apps.ExternalAPI. Right after the uninstall it was still listed; a later launchctl print no longer found it. No login item was registered.
Where the data lives
Press Shift + Command + G in Finder to open each path. Skip any path that is not on your Mac.
| Location | What it holds | What to do |
|---|---|---|
| Your saved databases and exports | Your analysis, from a licensed copy | Keep. Mole does not list them. |
~/Library/Application Support/Hopper |
Hopper's own folder, 16 KB in the test. Hopper supports scripts and plug-ins, so if you keep your own here, copy them out first | Remove. Mole lists it for review and selects it by default. |
~/Library/Preferences/com.cryptic-apps.hopper-web-4.plist |
Preferences | Remove. Mole selects it by default. |
The com.cryptic-apps.hopper-web-4 folder inside the folder that getconf DARWIN_USER_CACHE_DIR prints |
Mole's temporary cache row, 205 KB in the test | Remove. Mole selects it by default. |
~/Library/Application Support/com.apple.sharedfilelist/com.apple.LSSharedFileList.ApplicationRecentDocuments/com.cryptic-apps.hopper-web-4.sfl4 |
macOS's recent documents list for Hopper; it stayed after the uninstall | Safe to leave. Mole may list this app's own list; leave the other files in com.apple.sharedfilelist alone. |
~/Library/Application Support/Hopper Disassembler v4, ~/Library/Caches/com.cryptic-apps.hopper-web-4, ~/Library/HTTPStorages/com.cryptic-apps.hopper-web-4 and ~/Library/Saved Application State/com.cryptic-apps.hopper-web-4.savedState |
Named in the cask's zap list; none existed in the test | Remove whichever exist. |
Check the result
pgrep -il 'hopper|ExternalAPI'
launchctl list | grep -i cryptic
ls -d /Applications/Hopper\ Disassembler.app ~/Library/Application\ Support/Hopper ~/Library/Preferences/com.cryptic-apps.hopper-web-4.plist
- No output from
pgrepmeans neither Hopper nor its helper is running. A printed line is a process still alive; quit it, or restart the Mac once. - No output from
launchctlmeans no Cryptic Apps job is loaded for your user. A line namingcom.cryptic-apps.ExternalAPIis the helper service still registered; it can take a moment to disappear after the app is gone. - For
ls -d, "No such file or directory" means that path is gone. A printed path is still on disk.
License
Uninstalling does not touch a license. The demo needs none. With a license, keep its file or email so you can install again.
If you installed it with Homebrew
brew uninstall --cask hopper-disassembler
The cask installs the demo build, and its ordinary uninstall does more than remove the app: it quits Hopper and unloads the com.cryptic-apps.ExternalAPI service. Its zap list names ~/Library/Application Support/Hopper, ~/Library/Application Support/Hopper Disassembler v4, the cache, the network storage, the preferences file, the saved state, a help cache and the recent documents entry. Running brew uninstall --cask --zap hopper-disassembler yourself deletes all of it, scripts or plug-ins in the Hopper folder included, and does not read Mole's checkboxes. Mole adds --zap only when its whole removal scope passes its zap gate: an unchecked row, a path that exists but was not listed, a path outside the reviewed boundary or one another installed app claims keeps it off, and Mole then removes the rows you selected itself. The Homebrew install was not tested.
What Mole lists
Mole selects the app, the preferences file and the temporary cache row. It lists ~/Library/Application Support/Hopper for review and selects it by default. Before removing, Mole asks Hopper to quit and force quits it if it does not. Mole does not list your databases or exports, or your license.
What this test covered
On November 9, 2026, the test downloaded the Hopper 6.6.2 demo (a Universal disk image) from hopperapp.com, whose checksum matched the Homebrew cask, copied the app to Applications without running brew install and opened it once. It then quit the app and removed it with a source-built Mole with every review row ticked. Mole asked Hopper to quit, force quit it, and moved the app and three rows to the Trash. The recent documents entry stayed; the test build could not read that folder without Full Disk Access, so it was not listed. The ExternalAPI service was still listed right after the uninstall and gone on a later check. Status showed one Hopper row with 7 processes. Mole detected a Sparkle update feed, and no update was run. No license was entered; analysing a binary, saving, the debugger, the MCP server, a Homebrew-managed uninstall and Mole's notarized release build were not tested.
