openclaw

关注公众号 jb51net

关闭
AI > openclaw >

OpenClaw彻底干净卸载指南

万事可爱^

前阵子跟风装了OpenClaw,玩了两周新鲜劲过了,想卸载腾空间,随手敲了一行npm uninstall -g openclaw就以为万事大吉。结果没过几天,安全圈的朋友发了个预警,说常规卸载方式会留下大量凭证和配置文件,哪怕删了CLI工具,API密钥、OAuth令牌、聊天记录全躺在系统里。我回去一查,果然~/.openclaw目录完整存在,里面的明文密钥、历史对话、绑定的账号权限一点没少,瞬间惊出一身冷汗。

作为一个踩过无数开源软件卸载坑的程序员,我花了整整一天时间,把OpenClaw从系统里连根拔起,同时翻遍了官方文档、安全机构报告和社区踩坑经验,整理出了这篇彻底、干净、可回溯的卸载指南。不管你是用npm、Docker、源码编译安装,还是macOS、Linux、Windows系统,跟着这篇走,都能把OpenClaw卸得一干二净,不留任何安全隐患。

一、先搞懂:OpenClaw到底在你的系统里藏了什么?

很多人觉得,不就是个命令行工具吗?删了执行文件不就完了?大错特错。

OpenClaw不是一个简单的CLI工具,它是一套完整的AI Agent运行时系统——有常驻后台的网关服务、本地存储的记忆数据库、绑定多平台的授权令牌、可扩展的技能插件生态,甚至能直接操作你的本地文件、调用系统命令、控制多端设备。它的“根系”远比你想象的深,光删npm包,就像拔草只揪掉了叶子,根全留在土里。

根据官方文档和安全机构的审计,OpenClaw会在你的系统中留下这些核心“足迹”,也是我们卸载时必须清理的目标:

1. 核心配置目录(重中之重)

这是OpenClaw的“数据大本营”,所有敏感信息全存在这里,也是90%的人卸载时会漏掉的部分。

路径存储内容安全风险
~/.openclaw/主配置目录,包含openclaw.json核心配置、API密钥、绑定的账号凭证、工作区文件明文存储的AI平台API密钥、OAuth令牌,一旦泄露可直接被恶意调用
~/.openclaw/workspace/AI的工作空间,存放它操作过的本地文件、下载的内容、生成的脚本可能包含你的本地敏感文件副本,存在数据泄露风险
~/.openclaw/memory/记忆系统数据,SQLite数据库+Markdown格式的对话历史、长期记忆你的所有对话记录、个人信息、操作习惯全在这里
~/.openclaw/logs/Gateway网关的运行日志,包含所有接口调用记录、错误信息、操作轨迹日志中可能泄露密钥、账号信息和操作行为

2. 历史版本残留(最容易忽略的巨坑)

很多人不知道,OpenClaw在2026年1月经历了两次改名:ClawdbotMoltbotOpenClaw。如果你在不同阶段安装过,系统里可能同时存在三套完整的配置目录,哪怕你只卸载了当前版本,历史版本的残留依然躺在系统里。
这些历史残留路径包括:

3. 常驻后台的系统服务

OpenClaw会安装一个叫Gateway的后台守护进程,默认监听127.0.0.1:18789端口,24小时不间断运行。哪怕你删了CLI工具,这个服务只要还在跑,就会持续读写配置文件,甚至重新生成被你删掉的目录。
不同系统的服务位置:

4. 包管理器安装的CLI程序

通过npm、pnpm、bun安装的全局命令行工具,这是最基础的卸载项,但很多人只做了这一步。

5. Docker相关残留

如果你用Docker部署过,还会留下运行中的容器、镜像、持久化数据卷,里面包含完整的配置和数据,删了容器不删卷,等于白卸载。

6. 其他零散残留

二、卸载前必做:先备份,再动手(优雅卸载的核心)

很多人一上来就直接删文件,这是不对的。优雅的卸载,前提是“可回溯”——万一你未来想重装,或者需要找回之前的配置,备份能帮你省去大 麻烦。哪怕你确定再也不用了,备份也能让你在卸载出问题时,有回滚的余地。

这里给两个备份方案,按需选择即可:

方案A:手动备份(简单可控,推荐)

只备份核心配置,排除日志和缓存,占用空间小,操作简单:

# 备份整个主配置目录,按日期命名,避免覆盖
cp -r ~/.openclaw ~/openclaw-backup-$(date +%Y%m%d)
# 如果你需要保留工作区的文件,单独备份
cp -r ~/.openclaw/workspace ~/openclaw-workspace-backup
# 备份历史版本残留(如果有)
[ -d ~/.clawdbot ] && cp -r ~/.clawdbot ~/clawdbot-backup-$(date +%Y%m%d)
[ -d ~/.moltbot ] && cp -r ~/.moltbot ~/moltbot-backup-$(date +%Y%m%d)

方案B:第三方工具备份(懒人首选,一键完成)

GitHub上有个开源的openclaw-uninstaller工具(MIT许可证),专门解决OpenClaw卸载不干净的问题,核心功能之一就是“先存档,再告别”,会自动创建tar.gz格式的快照备份,未来重装可以一键恢复。

# 安装工具
pip install openclaw-uninstaller

# 执行备份(仅备份,不卸载)
openclaw-uninstall --backup-only
# 简写:ocu --backup-only

工具会自动备份~/.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

# 杀掉所有残留的openclaw进程
pkill -f openclaw || true
pkill -f moltbot || true
pkill -f clawdbot || true

Linux系统

# 停止并禁用systemd服务
systemctl --user stop openclaw-gateway.service 2>/dev/null
systemctl --user disable openclaw-gateway.service 2>/dev/null
# 删除服务文件
rm -f ~/.config/systemd/user/openclaw-gateway.service 2>/dev/null
# 重载systemd配置
systemctl --user daemon-reload

# 杀掉残留进程
pkill -f openclaw || true
pkill -f moltbot || true
pkill -f clawdbot || true

Windows系统(PowerShell,必须以管理员权限运行)

# 删除OpenClaw计划任务
schtasks /Delete /F /TN "OpenClaw Gateway" 2>$null

# 终止所有openclaw相关进程
Get-Process -Name "openclaw*" -ErrorAction SilentlyContinue | Stop-Process -Force
Get-Process -Name "moltbot*" -ErrorAction SilentlyContinue | Stop-Process -Force
Get-Process -Name "clawdbot*" -ErrorAction SilentlyContinue | Stop-Process -Force

验证服务是否真的停止了

执行完上面的命令后,必须验证端口和进程是否真的释放了,否则不要继续下一步:

# macOS/Linux 检查18789端口是否还被占用
lsof -i :18789

# Windows PowerShell 检查端口占用
netstat -ano | findstr :18789

如果没有任何输出,说明服务已经停止,端口成功释放;如果还有输出,说明有残留进程,先根据PID杀掉进程,再继续。

步骤二:优先用官方命令卸载(最稳妥,90%的人顺序搞反了)

如果你的openclaw命令还能正常使用,务必先用官方卸载命令,再删npm包,这是我踩过的最大的坑!

很多人上来就先npm uninstall -g openclaw,直接把CLI工具删了,结果官方的卸载命令再也用不了,只能手动一点点清理,极其容易漏东西。

正确的官方卸载操作

# 官方一键卸载命令,会自动完成:停止服务、删除配置目录、卸载npm全局包
openclaw uninstall --all --yes --non-interactive

这条命令的三个参数一定要加全,我给你解释清楚每个参数的作用:

已经先删了npm包,官方命令用不了怎么办?

别慌,还有补救方案,用npx临时调用最新版的OpenClaw,执行卸载命令:

# npx临时调用,执行完整卸载
npx -y openclaw uninstall --all --yes --non-interactive

如果npx也执行失败,没关系,直接跳到下一步的手动清理环节,跟着走也能彻底清干净。

步骤三:手动清理,斩草除根(官方命令也会漏的内容)

哪怕官方卸载命令执行成功,以下手动清理步骤依然是必须的——因为官方卸载不会清理历史名称的残留目录,也不会清理Shell配置、Docker相关内容,这些都是重灾区。

1. 删除所有配置目录(当前版本+历史版本)

macOS/Linux系统(包括Windows WSL2环境)

# 删除当前版本主配置目录
rm -rf ~/.openclaw

# 删除历史版本残留(必须删,很多人忘了这一步!)
rm -rf ~/.clawdbot
rm -rf ~/.moltbot
rm -rf ~/.molthub

# macOS特有残留清理
rm -rf /Applications/OpenClaw.app 2>/dev/null
rm -rf /tmp/openclaw/ 2>/dev/null
# 删除macOS LaunchAgent服务文件
rm -f ~/Library/LaunchAgents/ai.openclaw.gateway.plist 2>/dev/null
rm -f ~/Library/LaunchAgents/bot.molt.gateway.plist 2>/dev/null
rm -f ~/Library/LaunchAgents/com.openclaw.plist 2>/dev/null

Windows系统(PowerShell)

# 删除当前版本和历史版本配置目录
Remove-Item -Recurse -Force "$env:USERPROFILE\.openclaw" -ErrorAction SilentlyContinue
Remove-Item -Recurse -Force "$env:USERPROFILE\.clawdbot" -ErrorAction SilentlyContinue
Remove-Item -Recurse -Force "$env:USERPROFILE\.moltbot" -ErrorAction SilentlyContinue
Remove-Item -Recurse -Force "$env:APPDATA\OpenClaw" -ErrorAction SilentlyContinue

2. 彻底卸载各包管理器的CLI工具

不管官方命令有没有卸载成功,都手动执行一遍,确保所有包管理器安装的CLI都被清理干净:

# npm 安装的版本
npm uninstall -g openclaw 2>/dev/null
npm uninstall -g @qingchencloud/openclaw-zh 2>/dev/null # 中文汉化版

# pnpm 安装的版本
pnpm remove -g openclaw 2>/dev/null

# bun 安装的版本
bun remove -g openclaw 2>/dev/null

3. Docker相关的完整清理

如果你用Docker部署过OpenClaw,必须按以下步骤清理,否则数据卷里的配置会一直留在系统里:

# 停止并删除运行中的openclaw容器
docker stop openclaw 2>/dev/null && docker rm openclaw 2>/dev/null

# 删除openclaw相关的数据卷
docker volume rm openclaw-data 2>/dev/null

# 删除openclaw镜像
docker rmi openclaw/openclaw:latest 2>/dev/null

# 如果你用了docker-compose,进入compose目录执行,彻底删除容器和卷
docker compose down --volumes 2>/dev/null

4. Shell配置文件清理

检查你的Shell配置文件,删除所有和OpenClaw相关的环境变量、PATH配置、别名设置:

# 重载bash配置
source ~/.bashrc
# 重载zsh配置
source ~/.zshrc

步骤四:最容易忽略的安全环节:撤销授权+轮换密钥

这是90%的人会完全忽略的一步,也是安全专家最担心的环节。很多人以为删了本地文件就完事了,但OpenClaw使用的长期OAuth令牌,是存储在服务提供商的服务器上的,根本不在你的电脑里——删本地文件,对这些令牌完全没有影响。

2026年初的ClawHavoc安全事件里,攻击者就是通过恶意Skill窃取了大量用户的OAuth令牌和API密钥,哪怕用户已经卸载了OpenClaw,这些令牌依然能被用来访问用户的Google、GitHub、Telegram等账号,造成严重的数据泄露和财产损失。

所以,这一步必须做,没有任何商量的余地。

1. 撤销所有OAuth应用授权

以下是常用平台的撤销操作路径,只要你曾经在OpenClaw里绑定过,就必须去手动撤销:

平台操作路径
Google访问Google账号授权管理 → 找到OpenClaw相关应用 → 点击“移除访问权限”
GitHub登录GitHub → Settings → Applications → Authorized OAuth Apps → 找到OpenClaw → 点击Revoke(撤销)
Slack访问Slack应用管理 → 找到OpenClaw → 移除授权
Discord打开Discord → 用户设置 → 授权的应用 → 找到OpenClaw → 取消授权
Microsoft访问Microsoft账号授权管理 → 找到OpenClaw相关应用 → 移除应用权限
Notion打开Notion → 设置 → 连接与集成 → 找到OpenClaw → 移除访问权限
Telegram打开Telegram → 找到@BotFather → 发送/mybots → 选择你给OpenClaw创建的Bot → 点击Delete Bot彻底删除

2. 轮换所有相关的API密钥

所有曾经配置在OpenClaw里的API密钥,都应该立即废弃并重新生成,不要抱有侥幸心理。包括:

安全建议:如果你不确定OpenClaw曾经连接过哪些服务,可以在删除~/.openclaw目录之前,先查看以下两个文件,里面有完整的配置信息:

四、最终验证:6项检查,确保万无一失

所有卸载步骤执行完后,必须通过以下6项检查,确认你的系统已经彻底告别OpenClaw,只要有一项不通过,就回到对应步骤重新清理。

# 1. 检查openclaw命令是否已彻底移除
which openclaw
# 期望输出:openclaw not found(macOS/Linux)
# Windows PowerShell:Get-Command openclaw 提示找不到命令

# 2. 检查所有配置目录是否已删除
ls ~/.openclaw ~/.clawdbot ~/.moltbot ~/.molthub 2>&1
# 期望输出:No such file or directory

# 3. 检查后台服务是否已彻底清除(macOS)
launchctl list | grep -i openclaw
launchctl list | grep -i molt
launchctl list | grep -i clawd
# 期望输出:无任何结果

# 4. 检查后台服务是否已彻底清除(Linux)
systemctl --user list-units | grep -i openclaw
# 期望输出:无任何结果

# 5. 检查18789端口是否已完全释放
lsof -i :18789
# 期望输出:无任何结果

# 6. 检查是否还有残留进程
ps aux | grep -i openclaw
# 期望输出:只有grep自身的进程,无其他openclaw相关进程

如果以上6项检查全部通过,恭喜你,你的系统已经彻底、干净地卸载了OpenClaw,没有任何残留和安全隐患。

五、常见踩坑问题排查

我在卸载过程中遇到了不少问题,也整理了社区里最常见的几个坑,给大家对应的解决方案,避免大家走弯路。

问题1:先删了npm包,官方卸载命令用不了怎么办?

这是最常见的问题,解决方案有两个:

  1. 先用npm install -g openclaw@latest重新安装CLI,再执行openclaw uninstall --all官方卸载命令,这是最稳妥的方案;
  2. 不想重装的话,直接跳过官方卸载步骤,严格按照本文的“停止服务→手动清理→撤销授权”步骤执行,也能彻底卸载干净。

问题2:卸载后18789端口还被占用怎么办?

  1. 先执行lsof -i :18789(macOS/Linux)或netstat -ano | findstr :18789(Windows),找到占用端口的进程PID;
  2. 执行kill -9 进程PID(macOS/Linux)或taskkill /F /PID 进程PID(Windows)强制杀掉进程;
  3. 再次检查端口,确认释放后,重新执行服务清理步骤,确保服务不会开机自启。

问题3:配置目录删不掉,提示权限不足怎么办?

  1. 先确认服务已经完全停止,进程已经杀掉,否则文件会被进程占用,无法删除;
  2. 给目录添加删除权限,再执行删除:
# 给目录递归添加读写权限
chmod -R 755 ~/.openclaw
# 强制删除
rm -rf ~/.openclaw
  1. 如果还是不行,加上sudo执行删除(注意:sudo会删除root用户的目录,确保路径是你当前用户的)。

问题4:系统服务删不干净,重启电脑后又出现怎么办?

  1. macOS:先执行launchctl remove ai.openclaw.gateway,再删除plist文件,最后重启电脑检查;
  2. Linux:先执行systemctl --user disable --now openclaw-gateway.service,再删除service文件,执行systemctl --user daemon-reloadsystemctl --user reset-failed
  3. Windows:打开任务计划程序,找到OpenClaw相关的任务,直接右键删除,同时检查任务管理器的启动项,禁用所有OpenClaw相关的启动项。

六、写在最后:为什么卸载一个软件要如此谨慎?

可能有人会觉得:不就是卸个软件吗?至于搞这么复杂?

但如果你了解OpenClaw在2026年初经历的安全风暴,就会明白这种谨慎一点都不多余。2026年1月,攻击者在OpenClaw的官方技能市场ClawHub上传了1184个恶意Skill,伪装成生产力工具、加密货币机器人,实际上在窃取用户的浏览器凭据、SSH密钥、API令牌,甚至建立后门远程控制;同时,OpenClaw被爆出CVSS 8.8分的远程代码执行漏洞,全球有超过13.5万个OpenClaw实例暴露在公网上,无数用户的敏感数据面临泄露风险。

哪怕你已经卸载了软件,只要残留的API密钥、OAuth令牌还在,只要后台服务还在偷偷运行,你的系统就依然处在风险之中。在AI Agent时代,我们给这些工具的权限太大了——它们能访问你的文件、控制你的设备、登录你的账号、调用你的付费API,卸载从来都不是“删个文件”就完事,而是安全闭环的最后一步。

当然,如果你只是暂时卸载,未来还想尝试AI Agent,也可以参考几个更安全的替代方案:比如容器隔离架构的NanoClaw,Anthropic官方的Claude Code,国内腾讯基于OpenClaw封装的QClaw,还有企业级的Dify AI应用平台,它们在安全性和易用性上都有更好的平衡。

最后,我把完整的卸载步骤整理成了一张可勾选的清单,大家可以照着做,避免遗漏:

序号操作内容完成状态
1备份OpenClaw配置(可选但推荐)[ ]
2停止Gateway后台服务,杀掉所有残留进程[ ]
3验证18789端口已释放,无运行中的进程[ ]
4执行官方openclaw uninstall --all卸载命令[ ]
5删除所有配置目录,包括当前版本和历史版本残留[ ]
6彻底卸载npm/pnpm/bun安装的CLI工具[ ]
7清理Docker相关的容器、镜像、数据卷[ ]
8删除Shell配置文件中的OpenClaw相关内容[ ]
9撤销所有平台的OAuth应用授权[ ]
10轮换所有曾经配置过的API密钥[ ]
11执行6项验证检查,确认彻底卸载干净[ ]

以上就是OpenClaw彻底干净卸载指南,不留一丝安全隐患的详细内容,更多关于OpenClaw彻底卸载指南的资料请关注脚本之家其它相关文章!