The Problem
Enterprises that have adopted OpenClaw often discover that removing the service is non‑trivial: multiple background daemons, per‑user configuration directories, and platform‑specific installers must be cleaned manually. Incomplete removal leaves residual files, consumes storage, and can cause accidental re‑activation, increasing operational cost and security exposure.
What This Does
openclaw-killer.sh (Linux/macOS) and openclaw-killer.ps1 (Windows) automate the full uninstall workflow. The scripts:
Detect a running OpenClaw gateway (pgrep, Get‑Process) and stop it. Remove the OpenClaw CLI (npm/pnpm/bun) and desktop client from the user’s $HOME/%USERPROFILE%. Delete configuration, workspace, and profile directories, then self‑destruct (rm/Remove‑Item).
The repository also ships a Skill package (skill.json, openclaw-killer.skill.md, install-skill.sh) that can be dropped into an existing OpenClaw installation, enabling voice‑ or chat‑driven uninstallation from within the platform.
How To Use It
Setup
No build step is required; the repository contains only interpreted scripts. Clone or download the repo, then make the appropriate script executable:
git clone https://github.com/orange2ai/openclaw-killer.git cd openclaw-killer chmod +x openclaw-killer.sh # macOS / Linux
Configuration
The uninstall process runs entirely in the current user context; no external configuration files or environment variables are needed. All paths are resolved relative to the user’s home directory.
Running it
Linux / macOS
./openclaw-killer.sh
Windows PowerShell
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser # if required .\openclaw-killer.ps1
Skill installation (optional)
./install-skill.sh Afterwards, within OpenClaw say “卸载 OpenClaw” or “uninstall OpenClaw”
The scripts emit progress messages and abort gracefully if a component is missing.
Real‑World Use
A SaaS provider that bundles OpenClaw for internal tooling can embed install-skill.sh in its deployment image. When a tenant decides to retire the service, an admin simply runs openclaw-killer.sh on each host, guaranteeing that daemons, npm packages, and residual profiles are removed without manual file‑system inspection.
Example CI step for de‑provisioning a test environment
ssh user@host "./openclaw-killer.sh && echo 'OpenClaw removed'"
Code Health & Issues
Med – No automated tests – repository lacks any _test.* files; untested edge cases (e.g., missing permissions) may cause silent failures. Med – No CI/CD pipeline – no .github/workflows, Makefile, or other CI definitions; changes are not gate‑checked. Low – Platform‑specific assumptions – scripts assume default install locations ($HOME/.openclaw, %USERPROFILE%\.openclaw); custom paths are not supported. Low – Minimal error handling – set -e is not used in the shell script, and PowerShell catches only generic errors; failures may leave partial state. Low – Documentation overload – 23 Markdown files provide extensive multilingual readmes but add maintenance overhead; core functionality is concentrated in two script files.
No secret keys or hard‑coded credentials are present, and the MIT license is clearly provided.
The Bottom Line
openclaw-killer delivers a focused, single‑purpose uninstall utility for OpenClaw across macOS, Linux, and Windows, with an optional Skill integration for in‑product removal. The implementation is straightforward but lacks tests, CI, and flexible path handling, which limits confidence for production‑critical deployments. It is suitable for small‑to‑medium teams that need a quick, low‑maintenance way to fully remove OpenClaw, provided they perform their own validation before wide rollout.