安装OpenClaw后,执行命令没有反应,界面无法打开,在浏览器中输入localhost:18789要么白屏要么超时——明明没有报错也不退出,但就是静悄悄地失败了。遇到这种情况先别急着卸载重装,问题往往藏在环境配置的细节里。首先快速锁定几个关键原因:Node版本不匹配、PowerShell执行策略限制、gateway.mode字段未设置、端口被占用、权限被锁定。这五类原因加起来,基本覆盖了九成以上的“静默失败”场景。

确认Node.js版本是否符合要求
OpenClaw v2026.3.31版本对Node.js有硬性门槛——必须≥22.0.0。如果版本不够,它不会给出任何提示,直接静默退出,连错误日志都不会生成。
先执行node -v查看版本号。如果显示的是v20.x或v21.x,无需犹豫,直接升级。
Windows用户可前往nodejs.org/dist/v22.14.2/下载最新的msi安装包,安装时务必勾选“Add to PATH”,这一步遗漏的话,后续所有命令都会提示找不到node,你又得回头排查。
Mac/Linux用户推荐使用nvm管理版本:运行nvm install 22.14.2 && nvm use 22.14.2,之后通过which node确认路径指向了v22目录。
检查PowerShell执行策略(仅限Windows)
OpenClaw的gateway.cmd内部依赖PowerShell调用.ps1脚本来启动。但Windows默认禁止本地脚本执行,这会导致启动流程在第一步就卡住,外表看起来像没有任何反应一样。
解决方法很简单:以管理员身份打开PowerShell,运行一条命令:Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
关闭PowerShell再重新打开,尝试openclaw gateway start。如果依然不行,说明策略未生效或被组策略覆盖,需要进一步检查系统策略设置。
验证gateway.mode是否已显式配置
新版本OpenClaw有一个关键变化:如果gateway.mode字段缺失或为空,Gateway会直接拒绝初始化。前端会一直等待WebSocket连接,表现为黑屏或加载转圈无休止。
如何修复?两种方式任选:
方法一:通过CLI快速修复
直接执行openclaw config set gateway.mode local,这条命令会立刻写入配置并生效。
方法二:手动编辑配置文件
找到~/.openclaw/openclaw.json(Windows用户为%USERPROFILE%\.openclaw\openclaw.json),打开后确保包含以下结构:
{"gateway": {"mode": "local"}}
保存后执行openclaw gateway restart,问题即可解决。
排查端口18789是否被占用
Gateway默认监听端口18789。如果该端口已被其他进程占用——比如旧版OpenClaw残留、Docker容器或调试工具——服务会静默失败,连冲突提示都不会打印。
排查方法很简便:
第一步,查找占用进程。Windows执行netstat -ano | findstr :18789,Mac/Linux执行lsof -i :18789。
第二步,获取PID后直接结束进程。Windows使用taskkill /F /PID XXX,Mac/Linux使用kill -9 XXX。
第三步,如果端口确实被系统进程占用且无法释放,可以临时更换一个应急端口:openclaw config set gateway.port 18790,然后openclaw gateway restart。
强制重启服务的五种方法
以上检查都做过了依然没有反应?说明进程可能已僵死或守护进程异常,需要更彻底的干预。
- ① 终止所有claw进程:
Linux/macOS执行pkill -f claw;Windows执行taskkill /F /IM node.exe /IM cmd.exe /FI "IMAGENAME eq node.exe" - ② 删除daemon锁文件:
rm -f ~/.openclaw/daemon.lock - ③ 重启网关:
openclaw gateway start - ④ 如果Web UI仍能打开,访问
http://localhost:18789/#/system/restart,点击【强制重启】按钮,输入FORCE-RESTART确认。 - ⑤ 终极方案:删除整个配置目录并重建。Linux/macOS执行
rm -rf ~/.openclaw;Windows执行Remove-Item -Recurse -Force $HOME\.openclaw。删除目录后,重新执行openclaw init初始化即可。
