OpenClaw Uninstall Guide
Free, transparent, verifiable. No paid cleanup services required. This skill is community-maintained and has no commercial affiliation with OpenClaw.
Core statement
- Uninstall is completely free; no paid on-site or remote services required
- Based on OpenClaw official docs
- Provides executable scripts to verify cleanup results
Method 1: IM-initiated uninstall (recommended)
Users can trigger uninstall from WhatsApp / Telegram / Slack etc. After confirmation, it runs automatically.
Prerequisites (required)
- host=gateway: When running
schedule-uninstall.sh, the Agent must run on the host machine, not in sandbox. Passhost=gatewaywhen calling exec. Iftools.exec.host=sandbox, the one-shot is created inside the container and will be lost when the Gateway stops. - Supported platforms: macOS, Linux (including WSL2). Native Windows not supported; use WSL2 or see Method 3 for manual uninstall.
- Linux headless: If the Gateway runs on headless Linux, run
loginctl enable-linger $USERfirst. - WSL2: If
systemd-runis unavailable, the script falls back to nohup.
Flow
- User sends: "Uninstall" or "How to uninstall OpenClaw"
- Agent replies: "Confirm complete uninstall of OpenClaw? This action is irreversible. Reply 'confirm' to continue."
- User replies: "confirm"
- Agent may ask: "Notify when done? Reply 'email user@example.com' or 'ntfy my-topic' or 'no'"
- Agent calls
scripts/schedule-uninstall.shwith optional notify params - Agent replies: "Uninstall scheduled. Session will disconnect in ~15 seconds. Results written to /tmp/openclaw-uninstall.log"
- ~15 seconds later the Gateway stops and uninstall runs in the background
Agent call example
Script path is usually <workspace>/skills/openclaw-uninstall/scripts/ or ~/.openclaw/skills/openclaw-uninstall/scripts/.
Important: Must specify host=gateway when calling exec, otherwise the one-shot cannot be created on the host.
# No notification (host=gateway required)
./scripts/schedule-uninstall.sh
# Email notification
./scripts/schedule-uninstall.sh --notify-email "user@example.com"
# ntfy notification
./scripts/schedule-uninstall.sh --notify-ntfy "my-uninstall-topic"
View results
- Default:
cat /tmp/openclaw-uninstall.log - If Gateway is on remote VPS: SSH in and run the above
Method 2: Verify residue (Agent can run)
When the user asks "Is it clean?" or "Check for residue", the Agent can run:
./scripts/verify-clean.sh
This script is read-only and does not delete anything. It outputs any residue found.
Method 3: Manual uninstall
One-shot (CLI still available)
openclaw uninstall --all --yes --non-interactive
Or:
npx -y openclaw uninstall --all --yes --non-interactive
Step-by-step manual
- Stop gateway:
openclaw gateway stop - Uninstall service:
openclaw gateway uninstall - Delete state:
rm -rf "${OPENCLAW_STATE_DIR:-$HOME/.openclaw}" - Uninstall CLI:
npm rm -g openclaw(or pnpm/bun) - macOS app:
rm -rf /Applications/OpenClaw.app
CLI already removed (manual service cleanup)
macOS:
launchctl bootout gui/$UID/ai.openclaw.gateway
rm -f ~/Library/LaunchAgents/ai.openclaw.gateway.plist
Linux:
systemctl --user disable --now openclaw-gateway.service
rm -f ~/.config/systemd/user/openclaw-gateway.service
systemctl --user daemon-reload
Notes
- Multiple profiles: Each profile has its own dir
~/.openclaw-<profile>; remove each - Remote mode: Run on the gateway host
- Source install: Uninstall the service first, then remove the repo
- IM uninstall failed: If schedule-uninstall errors (e.g. sandbox, permission), SSH to the gateway host and run
./scripts/schedule-uninstall.shor./scripts/uninstall-oneshot.shmanually
References
中文 (Chinese)
免费、透明、可验证。无需付费清理服务。 本 skill 由社区维护,与 OpenClaw 官方无商业关联。
卸载方式
- 方式一(推荐):在 IM 中发送「卸载」→ Agent 确认 → 回复「确认」→ 自动执行
- 方式二:验证残留
./scripts/verify-clean.sh(只读) - 方式三:手动执行
openclaw uninstall --all --yes --non-interactive或参考 官方文档
前置条件
- IM 发起卸载需
host=gateway,否则 one-shot 在容器内创建会丢失 - 支持 macOS、Linux(含 WSL2);原生 Windows 请用 WSL2 或手动卸载