警告:本文可能让你后背发凉
你是不是也这样干过:
装了 OpenClaw 玩了几天,觉得不太适合,随手敲了个 npm uninstall -g openclaw,然后长舒一口气——"终于清理干净了"?
太天真了。
OX Security 的安全研究员最近发出警告:常见的卸载方法会留下凭证和配置文件。你以为删干净了,实际上你的 API 密钥、OAuth 令牌、聊天记录、甚至连接过的 Google 账号权限——全都还在电脑里躺着。
更可怕的是,因为你已经删掉了 openclaw 命令行工具,连官方的清理命令都跑不了了。
今天这篇文章,就是要帮你把 OpenClaw 卸得干干净净、一丝不剩,同时保证整个过程安全、有序、可回溯。
先搞清楚:OpenClaw 到底在你电脑上留了什么?
在动手之前,我们需要知道"敌人"藏在哪里。
OpenClaw 不是一个简单的命令行工具——它是一个完整的 AI Agent 操作系统,有自己的网关服务、记忆系统、配置数据库和技能插件生态。
1. 核心配置目录
~/.openclaw/ # 主配置目录,包含 openclaw.json、API 密钥、工作区、记忆文件
~/.openclaw/workspace/ # AI的工作空间,存放它操作过的文件
~/.openclaw/memory/ # 记忆系统数据(SQLite + Markdown)
~/.openclaw/logs/ # Gateway 日志文件2. 历史残留目录(巨坑!)
这是很多人忽略的大坑。OpenClaw 在 2026 年 1 月底经历了两次改名:
Clawdbot → Moltbot → OpenClaw如果你在不同阶段安装过,系统里可能同时存在三套配置目录:
~/.clawdbot/ # 早期版本
~/.moltbot/ # 中期版本
~/.molthub/ # 技能缓存目录
~/.openclaw/ # 当前版本3. 系统服务(24小时运行)
OpenClaw 会安装一个叫 Gateway 的后台守护进程,监听 127.0.0.1:18789 端口:
- • macOS: LaunchAgent (
~/Library/LaunchAgents/ai.openclaw.gateway.plist) - • Linux: systemd 用户服务 (
~/.config/systemd/user/openclaw-gateway.service) - • Windows: 计划任务 (
OpenClaw Gateway)
4. npm 全局包
通过 npm/pnpm/bun 安装的全局 CLI 工具。
5. Docker 容器和镜像
如果你使用 Docker 部署,还有容器、镜像和数据卷需要清理。
6. macOS App(如有)
/Applications/OpenClaw.app 和 /tmp/openclaw/ 临时目录。
一句话总结
光删一个 npm 包,就像只拔掉了杂草的叶子,根还在土里疯长。
第一步:备份——优雅的前提是"可回溯"
在正式动刀之前,永远先备份。这不是多余的步骤,而是"优雅"的核心。
方案 A:手动备份
# 备份整个配置目录
cp -r ~/.openclaw ~/openclaw-backup-$(date +%Y%m%d)
# 如果你需要保留工作区文件
cp -r ~/.openclaw/workspace ~/openclaw-workspace-backup方案 B:使用社区的"卸载虾"工具
GitHub 上有一个叫 openclaw-uninstaller 的第三方工具(MIT 许可证,支持 Python 3.7+):
pip install openclaw-uninstaller
openclaw-uninstall # 或简写 ocu它会在卸载前自动创建快照备份(支持 tar.gz 格式),重装后可以完全恢复配置和身份。
小贴士:备份内容包括 ~/.openclaw 主配置目录和 ~/.config/openclaw 配置缓存,但会自动排除日志和缓存文件以节省空间。
第二步:停止服务——先"关机"再"拆零件"
这是最关键的一步,跳过它后面的操作都可能出问题。
如果 Gateway 还在运行,文件可能因被占用而无法删除,端口也不会释放。
macOS
# 停止并卸载 LaunchAgent
launchctl bootout gui/$UID/ai.openclaw.gateway 2>/dev/null
launchctl bootout gui/$UID/bot.molt.gateway 2>/dev/null
launchctl bootout gui/$UID/com.openclaw.gateway 2>/dev/null
# 杀掉残留进程
pkill -f openclaw || trueLinux
# 停止并禁用 systemd 服务
systemctl --user stop openclaw-gateway.service
systemctl --user disable openclaw-gateway.service
rm -f ~/.config/systemd/user/openclaw-gateway.service
systemctl --user daemon-reloadWindows (PowerShell,管理员权限)
# 删除计划任务
schtasks /Delete /F /TN "OpenClaw Gateway"
# 终止进程
Get-Process -Name "openclaw*" | Stop-Process -Force验证服务已停止
# 检查端口 18789 是否还被占用
lsof -i :18789 # macOS/Linux
netstat -ano | findstr :18789 # Windows如果还有输出,说明服务没有完全停止,不要继续,先排查原因。
第三步:执行卸载——有官方命令就用官方命令
最佳方案:官方一键卸载
如果你的 openclaw 命令还在,务必先用官方命令:
openclaw uninstall --all --yes --non-interactive这条命令会依次:
- 1. 停止 Gateway 服务
- 2. 删除状态目录(
~/.openclaw) - 3. 卸载 npm 全局包
重要提醒:很多人犯的错误是先跑 npm uninstall -g openclaw,这会导致 openclaw 命令消失,之后就无法运行官方的清理命令了。
如果官方命令不可用
方案 A:npm 全局包卸载
# 检测安装方式
which openclaw # macOS/Linux
where openclaw # Windows
# 根据安装方式选择卸载命令
npm uninstall -g openclaw
pnpm uninstall -g openclaw
bun uninstall -g openclaw方案 B:Docker 卸载
# 停止并删除容器
docker stop openclaw-container 2>/dev/null
docker rm openclaw-container 2>/dev/null
# 删除镜像
docker rmi openclaw:latest 2>/dev/null
# 清理数据卷
docker volume rm openclaw-data 2>/dev/null方案 C:macOS App 卸载
# 删除应用
rm -rf /Applications/OpenClaw.app
# 清理临时目录
rm -rf /tmp/openclaw/
rm -rf ~/Library/Caches/ai.openclaw*第四步:深度清理——把"根"也拔出来
删除配置目录(所有安装方式通用)
# 当前版本
rm -rf ~/.openclaw
# 历史版本(重要!)
rm -rf ~/.clawdbot
rm -rf ~/.moltbot
rm -rf ~/.molthub
# 配置缓存
rm -rf ~/.config/openclaw清理系统级残留
macOS
# LaunchAgent 配置文件
rm -f ~/Library/LaunchAgents/ai.openclaw.gateway.plist
rm -f ~/Library/LaunchAgents/bot.molt.gateway.plist
rm -f ~/Library/LaunchAgents/com.openclaw.gateway.plist
# 日志文件
rm -rf ~/Library/Logs/openclaw*
# 应用支持文件
rm -rf ~/Library/Application\ Support/openclawLinux
# systemd 服务文件
rm -f ~/.config/systemd/user/openclaw-gateway.service
systemctl --user daemon-reload
# 系统日志
journalctl --user --unit=openclaw-gateway --rotate
journalctl --user --unit=openclaw-gateway --vacuum-time=1sWindows
# 删除注册表项(谨慎操作)
Remove-Item -Path "HKCU:\Software\openclaw" -Recurse -Force -ErrorAction SilentlyContinue
# 清理环境变量
[Environment]::SetEnvironmentVariable("OPENCLAW_HOME", $null, "User")清理 Shell 配置
# 从 shell 配置文件中移除 openclaw 相关配置
# 检查以下文件:
# ~/.bashrc
# ~/.zshrc
# ~/.bash_profile
# ~/.zprofile
# 删除包含以下内容的行:
# - export PATH="$HOME/.openclaw/bin:$PATH"
# - eval "$(openclaw init -)"
# - alias oc='openclaw'第五步:验证——确保真的干净了
检查命令是否还存在
which openclaw # 应该返回空
openclaw --version # 应该提示命令未找到检查端口是否释放
lsof -i :18789 # macOS/Linux
netstat -ano | findstr :18789 # Windows检查配置目录是否删除
ls -la ~/.openclaw # 应该提示目录不存在
ls -la ~/.clawdbot # 检查历史版本
ls -la ~/.moltbot # 检查历史版本检查进程是否还在运行
ps aux | grep openclaw # macOS/Linux
Get-Process | Where-Object {$_.Name -like "*openclaw*"} # Windows常见问题排查
Q1: 提示"Permission denied"无法删除文件
解决方案:
# 使用 sudo(macOS/Linux)
sudo rm -rf ~/.openclaw
# 或者修改权限后再删除
chmod -R 755 ~/.openclaw
rm -rf ~/.openclawQ2: 端口 18789 一直被占用
解决方案:
# 查找占用端口的进程
lsof -i :18789
# 强制结束进程
kill -9 <PID>Q3: 重装后配置还在,想完全重新开始
解决方案:
# 除了卸载,还要删除所有配置
rm -rf ~/.openclaw
rm -rf ~/.config/openclaw
# 然后重新安装Q4: 如何保留工作区文件但卸载程序
解决方案:
# 先备份工作区
cp -r ~/.openclaw/workspace ~/openclaw-workspace-backup
# 正常卸载
openclaw uninstall --all --yes --non-interactive
# 或者手动清理时保留 workspace 目录
rm -rf ~/.openclaw/!(workspace)总结:优雅卸载的完整清单
✅ 已备份重要数据
✅ 已停止 Gateway 服务
✅ 已卸载 npm/Docker/App
✅ 已删除 ~/.openclaw 目录
✅ 已删除历史版本目录 (~/.clawdbot, ~/.moltbot)
✅ 已清理系统服务配置
✅ 已清理 Shell 环境变量
✅ 已验证命令和端口写在最后
OpenClaw 确实是一个强大的 AI Agent 工具,但强大的工具往往意味着复杂的系统架构。
卸载不只是删掉一个命令那么简单,它涉及到:
- • 后台服务的停止
- • 配置文件的清理
- • 系统环境的恢复
- • 历史版本的追溯
希望这篇指南能帮你彻底、优雅地和 OpenClaw 说再见。如果将来想重新使用,记得先恢复备份的配置,可以省去很多重新设置的麻烦。
你的电脑,应该由你做主。
本文参考了 OX Security 的安全研究报告和 OpenClaw 官方文档,结合社区最佳实践整理而成。
夜雨聆风