-
-
Notifications
You must be signed in to change notification settings - Fork 69.5k
[Bug/SOP] Fix version mismatch & zombie process on Windows | Windows 更新后版本不同步的排查指南 #28270
Description
Summary
Windows 环境下更新 OpenClaw 后,旧的 Node 进程未被正确杀死(僵尸进程),导致 Dashboard 版本显示不同步。这里提供完整的排查与修复 SOP,供社区参考。
Steps to reproduce
1.在 Windows 终端运行 npm update 更新 OpenClaw。
2.重新启动应用。
3.发现终端显示已是最新版,但 Dashboard 仍显示旧版本。
Expected behavior
Dashboard 应该与本地实际安装的最新版本号保持一致。
Actual behavior
终端显示已更新成功,但前端 Dashboard 显示的版本号仍然是旧版本。根本原因是 Windows 下旧的 Node 进程变成了僵尸进程,没有被正确关闭。
👇 下面是完整的排查与修复 SOP (Here is the complete SOP to fix it):
1. 🚨 故障现象 (Symptoms)
- 终端 (CLI) 表现:通过
npm install -g openclaw@latest成功更新到了最新版本。 - UI (Dashboard) 表现:浏览器控制台依然显示旧版本,且可能伴随红色报错弹窗。
- 操作无效:在终端执行
openclaw gateway stop和start后,UI 界面版本号依然不更新。
2. 🧠 根本原因 (Root Cause)
这是典型的“幽灵进程 (Zombie Process)”与“前后端状态割裂”问题:
- 后台守护进程未释放:在 Windows 系统中,OpenClaw 网关是作为计划任务在后台运行的。仅仅在终端更新 npm 包,并不会自动杀死内存中正在运行的旧版
node.exe进程。 - 路径咬合:后台任务依然指向旧版本的执行路径,导致
gateway start只是重启了旧的实例。 - 前端强缓存:Dashboard 是单页应用 (SPA),浏览器强缓存了旧版的静态资源。
架构认知:CLI (发令枪) 更新了,不代表 Backend (后台引擎) 重启了,更不代表 Frontend (显示器) 刷新了。必须彻底阻断旧链路。
3. 🛠️ 解决 SOP (标准操作步骤)
请严格按照以下顺序在 PowerShell (管理员模式) 中执行:
Step 1: 物理超度旧进程 (Kill Process)
强制杀掉系统中所有 Node 进程,释放被占用的端口和文件锁。(注意:这会关闭本地所有正在运行的 Node 项目)
taskkill /F /IM node.exeStep 2: 卸载旧的系统计划任务
将 OpenClaw 从 Windows 后台任务中彻底拔除。
openclaw gateway stopStep 3: 重新覆盖全局安装路径
在旧引擎彻底熄火的状态下,重新安装最新包,确保系统环境变量和注册路径是最新的。
npm install -g openclaw@latest(💡 提示:安装过程中如果出现大量黄色的 npm warn deprecated 属于正常现象,不影响使用,耐心等待安装完成即可。)
Step 4: 重新点火注册服务
openclaw gateway startStep 5: 强制刷新前端缓存 (清理显示器)
回到浏览器 Dashboard 页面,按下 Ctrl + F5 (或 Shift + F5) 强制刷新页面,清除旧版缓存。
OpenClaw version
2026.2.26
Operating system
Windows 11
Install method
No response
Logs, screenshots, and evidence
Impact and severity
No response
Additional information
No response