OpenClaw本地部署启动失败怎么办?
OpenClaw本地部署启动失败 排查四个关键环节
近期,部分用户在完成OpenClaw本地部署后,遇到双击启动程序无反应、命令行执行openclaw gateway run后秒退、或浏览器访问127.0.0.1:18792显示连接被拒绝等问题。经排查,这些情况通常由四个关键环节配置错误导致,漏掉任意一项均可能造成服务假启动。
以下为当前已知的常见原因及对应解决方法。
确认Node.js版本是否达标
OpenClaw强制要求Node.js版本≥22.0.0,低于此版本的程序会静默退出,不报错也不提示。用户可在PowerShell或CMD中运行node --version检查当前版本,若返回v18.x或报“command not found”,说明系统未安装v22+或未设为默认版本。可前往nodejs.org下载LTS(v22+)安装包,并勾选“Add to PATH”后重装。如果已安装v22+但版本显示仍为旧版,可运行where node查看实际路径,再检查是否被nvm或volta等版本管理器覆盖,使用nvm use 22或volta install node@22强制切换。
解除PowerShell脚本执行限制
Windows系统默认禁用本地.ps1脚本,而OpenClaw的gateway.cmd内部调用.ps1启动网关,策略拦截会导致“找不到命令”或直接闪退。用户需以管理员身份打开PowerShell,执行Set-ExecutionPolicy -Scope CurrentUser RemoteSigned,关闭窗口后重新打开PowerShell再尝试openclaw gateway run。
修复计划任务工作目录
OpenClaw开机自启依赖Windows任务计划,但默认创建的任务未设置“起始于”路径,导致gateway.cmd在C:WindowsSystem32下执行,无法找到.openclaw配置目录,从而秒退。用户可先运行schtasks /query /tn "OpenClaw Gateway" /fo LIST /v查看输出中“起始于”字段是否为空。若为空,需将以下命令中的C:UsersYourName.openclaw替换为实际.openclaw路径后执行:schtasks /change /tn "OpenClaw Gateway" /tr "cmd /c cd /d C:UsersYourName.openclaw && C:UsersYourName.openclawgateway.cmd"。完成后可通过schtasks /run /tn "OpenClaw Gateway"手动触发测试,观察终端是否持续输出日志。
设置网关运行模式并启动
一键安装后若执行openclaw gateway run提示“Gateway start blocked: set gateway.mode=local”,说明核心配置缺失。用户可通过命令行直接修复:openclaw config set gateway.mode local,或手动编辑配置文件%USERPROFILE%.openclaw.env(Windows)或~/.openclaw/.env(Mac/Linux),确保存在且未被注释的行GATEWAY_MODE=local。注意:.env文件必须使用UTF-8无BOM编码保存,否则配置读取失败。完成配置后,依次执行openclaw gateway stop -Force和openclaw gateway run,并保持终端窗口打开。
检查端口占用并访问Web UI
若启动后浏览器仍无法访问127.0.0.1:18792,可能是端口被其他程序占用。用户可运行netstat -ano | findstr :18792获取占用端口的PID,再执行taskkill /F /PID 强制结束进程。如需永久避开冲突,可更换端口:openclaw config set gateway.port 18793,之后访问http://127.0.0.1:18793。