但装上去容易,卸载干净这件事,很多人反而会卡住:
OpenClaw 官方其实已经给了完整卸载说明,而且分得很细:
如果 CLI 还在,用官方卸载命令最省事;如果 CLI 已经不在了,但后台服务还活着,就需要手动按系统清理。
OpenClaw 官方把卸载分成两种情况:
第一种:CLI 还在
也就是你还能正常执行 命令,这种最简单,直接用官方内置卸载器。
第二种:CLI 没了,但服务还在跑
这种常见于你删了命令、删了目录,结果后台网关服务还在自启动。这时就要按 macOS、Linux、Windows 的服务方式手动清理。
如果你机器上 命令还在,官方推荐直接执行:
openclaw uninstall
这是最省事的做法。官方也提供了适合自动化场景的非交互命令:
openclaw uninstall –all –yes –non-interactive
如果你是通过 调用,也可以这样:
npx -y openclaw uninstall –all –yes –non-interactive
openclaw gateway stop
这一步的目的是先把后台运行的 OpenClaw 网关停掉。
openclaw gateway uninstall
这一条会把系统里的服务注册卸掉。不同系统底层机制不同,可能对应的是:
rm -rf “${OPENCLAW_STATE_DIR:-$HOME/.openclaw}”
这里删的是 OpenClaw 的状态目录。默认路径通常是
如果你设置过 并且它指向的是状态目录之外的自定义配置文件,那这个文件也要手动删掉。
rm -rf ~/.openclaw/workspace
这一步是可选的,主要用于删除 agent 相关文件和工作区内容。
如果你想彻底清掉 OpenClaw 留下的工作目录,建议也一起删。
看你当初是怎么安装的,就卸载对应的全局包:
npm rm -g openclaw
pnpm remove -g openclaw
bun remove -g openclaw
官方文档说明,如果你是通过 或 安装,本质上 CLI 一般也是通过全局包安装的,所以这一步别漏。
rm -rf /Applications/OpenClaw.app
也就是说,CLI 卸载 ≠ App 卸载。
如果你 Mac 上还装过 OpenClaw 图形应用,记得把 也清掉。
如果你启动时用了 或者配置了 那么状态目录不一定只有默认的
官方默认命名方式是:
~/.openclaw-
所以你可能删了默认目录,但其他 profile 目录还在。重装之后看起来像“卸载没成功”,其实是旧 profile 还被读到了。
远程模式下,状态目录是在 gateway 主机上。
也就是说,你在本地删一遍不够,真正的状态、服务、工作目录,可能还在远程服务器上。
这时官方建议把前面的停止、卸载、删除目录这些步骤,也在 gateway 主机上执行一遍。
这就是第二条路径:手动移除服务。官方把三大系统分别写了。
在 macOS 上,OpenClaw 默认使用的是
官方给出的默认服务标签是:
ai.openclaw.gateway
如果你用了 profile,可能会变成:
ai.openclaw.
此外,官方还提醒:旧版本遗留的 也可能还在。
官方命令如下:
launchctl bootout gui/$UID/ai.openclaw.gateway
rm -f ~/Library/LaunchAgents/ai.openclaw.gateway.plist
如果你用了 profile,就把服务名和 plist 名里的 替换成对应 profile。
如果你机器上还留着旧版 的 plist,也建议顺手一并清理。
Linux 下默认是
默认服务名是:
openclaw-gateway.service
如果用了 profile,则会变成:
openclaw-gateway-
官方给出的手动清理命令是:
systemctl –user disable –now openclaw-gateway.service
rm -f ~/.config/systemd/user/openclaw-gateway.service
systemctl –user daemon-reload
这三步分别对应:
如果你是多 profile,也记得把对应 profile 的 service 文件一起删掉。
Windows 下,OpenClaw 默认使用的是计划任务。
官方写得很明确:默认任务名是:
OpenClaw Gateway
如果用了 profile,则可能显示为:
OpenClaw Gateway (<profile>)
对应的任务脚本一般会放在状态目录下面。
官方给出的删除命令是:
schtasks /Delete /F /TN “OpenClaw Gateway”
Remove-Item -Force “$env:USERPROFILE.openclawgateway.cmd”
如果你用了 profile,就把计划任务名称和路径里的目录一起替换掉,例如:
$env:USERPROFILE.openclaw-<profile>gateway.cmd
这样才算删干净。
这个点官方也单独说明了。
如果你是通过这些方式装的:
那 CLI 一般就是全局安装的 包,所以卸载时需要执行全局包移除命令。
如果你是:
git clone …
然后在源码目录里运行 或
那官方建议顺序是:
这个顺序很重要。
因为如果你先删仓库,再删服务,可能会遇到“服务残留、启动入口找不到、但系统还记着要启动它”的情况。
你可以把 OpenClaw 想成四层结构:
就是你平时敲的
它可能注册在:
例如:
~/.openclaw
~/.openclaw-
例如:
~/.openclaw/workspace
很多人以为“删了命令就算卸载”,其实只是删了第一层。
真正要做到“重装像新装一样干净”,至少要把服务 + 状态目录也处理掉。这个逻辑和官方文档是一致的。
如果你只是想“赶紧卸载干净,别留坑”,我建议直接按这个顺序来:
openclaw uninstall
如果你还想更彻底、适合自动化:
openclaw uninstall –all –yes –non-interactive
然后再检查一下:
OpenClaw 的官方卸载逻辑其实不复杂,核心就一句话:
先卸服务,再删状态,再删 CLI。
如果 CLI 还在,直接:
openclaw uninstall
如果 CLI 不在了,就按你的系统去删后台服务:
openclaw 配置
再把 workspace、profile 目录一起清掉,才算真正“卸载干净”。
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/272786.html原文链接:https://javaforall.net
