🧩 常见问题解决方案
🦞 网关中文路径乱码闪退
严重
Windows
OpenClaw-zh v2026.4.2
📌 本解决方案在 OpenClaw-zh(晴辰汉化版)v2026.4.2 版本下实测有效,适用于 v2026.4.2 及更高版本。
📋 问题现象
Windows 用户名包含中文字符(如"用户名")时,OpenClaw 网关启动失败、闪退,或执行 openclaw gateway restart 命令超时,系统计划任务无法正常运行。
🔍 问题根源
Node.js 在解析含有中文的路径时,Windows CMD 命令行编码可能导致乱码,使 index.js 无法正确加载模块,从而导致网关闪退。
✅ 解决方案(三步骤)
核心思路:通过 目录联接(Junction) 保持 OpenClaw 默认配置路径不变,但实际文件存储到 D 盘英文路径,网关启动时 node.js 完全看不到中文路径。
步骤 1:创建目录联接(Junction)
在管理员权限的命令提示符(CMD)中执行以下两条命令:
mklink /J "C:\Users\用户名\.openclaw" "D:\OpenClaw"
mklink /J "D:\OpenClaw\openclaw-zh" "C:\Users\用户名\AppData\Roaming\npm\node_modules\@qingchencloud\openclaw-zh"
📌 请将命令中的 用户名 替换为您的实际 Windows 用户名(例如:C:\Users\用户名)。执行前请确保 D:\OpenClaw 目录已创建。
步骤 2:创建无中文路径的 gateway.cmd
在 D:\OpenClaw\ 目录下创建文件 gateway.cmd,内容如下:
@echo off
cd /d D:\OpenClaw
set "OPENCLAW_HOME=D:\OpenClaw"
if not exist "D:\OpenClaw\temp" mkdir "D:\OpenClaw\temp"
set "TMPDIR=D:\OpenClaw\temp"
set "OPENCLAW_GATEWAY_PORT=18789"
"C:\Program Files\nodejs\node.exe" "D:\OpenClaw\openclaw-zh\dist\index.js" gateway --port 18789 --allow-unconfigured
⚠️ 如果您的 node.js 安装在其它路径(如 C:\Nodejs\node.exe),请相应修改第 4 行的路径。
步骤 3:覆盖全局 gateway.cmd 并重建计划任务
继续在管理员 CMD中执行:
copy /Y "D:\OpenClaw\gateway.cmd" "C:\Users\用户名\AppData\Roaming\npm\gateway.cmd"
schtasks /delete /tn "OpenClaw Gateway" /f
schtasks /create /tn "OpenClaw Gateway" /tr "D:\OpenClaw\gateway.cmd" /sc onlogon /ru SYSTEM /rl highest /f
这两个命令会覆盖全局 gateway.cmd 并重建系统计划任务,确保网关开机自启。
🔬 验证修复
✅ 检查步骤:
- 手动双击运行
D:\OpenClaw\gateway.cmd - 看到命令行显示
listening on ws://127.0.0.1:18789表示网关启动成功 - 执行
openclaw gateway status确认网关状态正常
💡 原理与注意事项
- 配置路径不变:OpenClaw 配置文件仍使用
C:\Users\用户名\.openclaw\openclaw.json,Junction 会透明重定向到 D 盘,无需修改任何配置。 - npm 环境保持原样:
npm install仍写入 C 盘原路径,但因为 Junction,实际文件存储在 D 盘。 - 向后兼容:如果删除 Junction 链接,OpenClaw 仍可使用 C 盘原始路径正常工作。
- 升级后修复:OpenClaw 版本升级可能会重写
gateway.cmd,如果问题复现,只需重新执行步骤 2-3 即可。 - 权限要求:创建 Junction 和修改计划任务需要管理员权限。