How to uninstall OpenClaw on Mac
Remove the OpenClaw Mac app separately from its Gateway and CLI. The Mac documentation describes the app as a companion to the Gateway, so moving the app to the Trash does not establish that the service or command-line installation has gone.
Save state and choose the scope
Before changing data, stop active agent work and make a verified copy of wanted ~/.openclaw state and its default ~/.openclaw/workspace, outside both folders and every sync root. Custom state/config locations and profiles can differ. The uninstall guide recommends openclaw backup create before deleting state; keep that backup outside the removal scope too. Also copy wanted existing ~/Library/Application Support/OpenClaw after quitting the Mac app.
If you want to remove the local Gateway service and Mac app while preserving state, workspaces and the CLI, use the documented scoped command while the CLI is still available:
openclaw uninstall --service --app
Read its results. A failed service step does not prove it stopped, and partial completion is possible. If you only want the Mac companion gone and still use a Gateway, quit OpenClaw and move OpenClaw.app from Applications to the Trash in Finder instead. Do not remove remote Gateway data as part of this Mac app procedure.
For complete CLI removal, finish service cleanup first, then use the package manager that actually installed it: npm rm -g openclaw, pnpm remove -g openclaw or bun remove -g openclaw. The official git installer instead uses a ~/.local/bin/openclaw launcher and normally a ~/openclaw checkout; inspect the launcher's target and preserve source changes before removing only those owned entries in Finder. The CLI installer can use ~/.openclaw as its prefix, so deleting that directory may remove both state and the CLI. Keep it if either is still needed.
If you installed it with Homebrew
The Mac cask declares no separate service uninstall step. Without zap it removes the managed Mac app:
brew uninstall --cask openclaw
Zap also names ~/.openclaw, ~/Library/Application Support/OpenClaw, ~/Library/Caches/ai.openclaw.mac, ~/Library/HTTPStorages/ai.openclaw.mac, ~/Library/HTTPStorages/bot.molt.mac, ~/Library/WebKit/ai.openclaw.mac, matching OpenClaw* entries in ~/Library/Logs/DiagnosticReports, and four preferences in ~/Library/Preferences: ai.openclaw.mac.plist, ai.openclaw.shared.plist, bot.molt.mac.plist and bot.molt.shared.plist. Inspect the old and current identities separately and keep CLI/workspace data you still use.
Direct brew uninstall --cask --zap openclaw does not consult Mole's checkboxes. Mole uses zap only when its entire scope passes selection, ownership and safety checks; selected remnants otherwise use Mole's own Trash flow. The cask does not separately uninstall a Gateway or CLI.
Check the result
pgrep -ifl openclaw
command -v openclaw
ls -ld "$HOME/.openclaw" "$HOME/Library/Application Support/OpenClaw"
No process match means the pattern found no matching arguments, not that every remote Gateway is stopped. Inspect surviving paths before quitting a CLI you intend to keep. command -v resolves a PATH entry, not its owner; no output means none resolves in this shell. Printed folders remain, expected when preserved. Missing-path errors apply only to those folders; other errors leave their state unknown.
What Mole lists
The display-name support folder and the own ~/.openclaw row start unchecked with Remove data and settings with apps off. Turning it on can preselect eligible unshared rows, including that home folder, so keep it unchecked when retaining CLI state or workspaces. Exact app-ID caches and preferences follow their default selection rules. The option neither stops a remote Gateway nor establishes CLI ownership.
What this test covered
On September 22, 2026, the official-download OpenClaw 2026.9.5 app was copied into Applications, launched without local-network permission, then removed with its selected support folder. The pre-existing ~/.openclaw folder was left unchecked and remained. Gateway/CLI removal, workspace restoration and Homebrew were not tested.
