Skip to main content
Two paths:
  • Easy path if openclaw is still installed.
  • Manual service removal if the CLI is gone but the service is still running.

Easy path (CLI still installed)

Recommended: use the built-in uninstaller:
State removal preserves configured workspace directories unless you also select --workspace. Preview what will be removed (safe):
Non-interactive (automation / npx). Use with caution and only after confirming scopes:
Flags: --service, --state, --workspace, --app select individual scopes; --all selects all four. Manual steps (same result):
  1. Stop the gateway service:
  1. Uninstall the gateway service (launchd/systemd/schtasks):
  1. Delete state + config:
If you set OPENCLAW_CONFIG_PATH to a custom location outside the state dir, delete that file too. If you want to keep a workspace inside the state dir, such as ~/.openclaw/workspace, move it aside before running rm -rf or delete state contents selectively.
  1. Delete your workspace (optional, removes agent files):
  1. Remove the CLI install (pick the one you used):
  1. If you installed the macOS app:
Notes:
  • If you used profiles (--profile / OPENCLAW_PROFILE), repeat step 3 for each state dir (defaults are ~/.openclaw-<profile>).
  • In remote mode, the state dir lives on the gateway host, so run steps 1-4 there too.

Manual service removal (CLI not installed)

Use this if the gateway service keeps running but openclaw is missing.

macOS (launchd)

Default label is ai.openclaw.gateway (or ai.openclaw.<profile> with a profile):
If you used a profile, replace the label and plist name with ai.openclaw.<profile>.

Linux (systemd user unit)

Default unit name is openclaw-gateway.service (or openclaw-gateway-<profile>.service). A pre-rename clawdbot-gateway.service unit may still exist on machines upgraded from very old installs; openclaw uninstall / openclaw gateway uninstall detects and removes it automatically.

Windows (Scheduled Task)

Default task name is OpenClaw Gateway (or OpenClaw Gateway (<profile>)). The task launches a windowless gateway.vbs script under your state dir, which in turn runs gateway.cmd; remove both.
If you used a profile, delete the matching task name and the gateway.cmd / gateway.vbs files under ~\.openclaw-<profile>.

Normal install vs source checkout

Normal install (install.sh / npm / pnpm / bun)

If you used https://openclaw.ai/install.sh or install.ps1, the CLI was installed with npm install -g openclaw@latest. Remove it with npm rm -g openclaw (or pnpm remove -g / bun remove -g if you installed that way).

Source checkout (git clone)

If you run from a repo checkout (git clone + openclaw ... / bun run openclaw ...):
  1. Uninstall the gateway service before deleting the repo (use the easy path above or manual service removal).
  2. Delete the repo directory.
  3. Remove state + workspace as shown above.