问题描述
ClawPanel 的「一键隔离」功能将当前 Gateway 正在使用的 openclaw.cmd 重命名为 .bak,导致 Gateway 热重启时找不到可执行文件而崩溃,且事后没有自动切换到备选路径兜底恢复。
复现步骤
- 系统有两套 Node.js:nvm4w (C:\nvm4w\nodejs) 和 nvm-windows (C:<span class="hl-type">Users<span class="hl-type">PC<span class="hl-type">AppData<span class="hl-type">Local\nvm\v22.22.2)
- 两套都安装了 openclaw(版本相同),但 PATH 中 nvm4w 排第一位
- ClawPanel 配置 openclawCliPath 指向 nvm-windows 路径,但实际启动 Gateway 时走 PATH 找到了 nvm4w 的 openclaw.cmd
- ClawPanel 检测到 nvm4w 的 openclaw.cmd 为「未识别来源」
- 用户点击「一键隔离」→ 将 C:\nvm4w\nodejs\openclaw.cmd 重命名为 .disabled-by-clawpanel-xxx.bak
- Gateway 配置变更触发热重启 → 命令行窗口找不到 openclaw 命令
- → '"C:\nvm4w\nodejs\openclaw"' 不是内部或外部命令 → Gateway exited
- ClawPanel 虽然 openclawCliPath 记录了 nvm-windows 路径,但未自动使用它兜底重启,导致永久卡死
期望行为
- 方案A:「一键隔离」应跳过正在被 Gateway 使用的可执行文件,不隔离自身
- 方案B:隔离后如果 Gateway 崩溃,应自动检测其他可用路径(如 openclawCliPath 配置的备选路径)并尝试重新启动
实际行为
隔离自身正在使用的文件 → Gateway 崩溃 → 无法自动恢复
环境信息
- OS: Windows 11 企业版 25H2
- ClawPanel 版本: 未确认(请用户补充)
- OpenClaw 版本: 2026.6.1
- Node.js: 两套(nvm4w + nvm-windows v22.22.2)
日志证据
gateway.err.log 显示所有 Gateway 进程的执行方式:C:\nvm4w\nodejs\node.exe C:\Users\PC\AppData\Local\nvm\v22.22.2\node_modules\openclaw\dist\index.js gateway --port 18789
即 nvm4w 的 Node.exe 运行 nvm-windows 的 openclaw 代码,但启动入口走的是 nvm4w 的 openclaw.cmd 包装器。
clawpanel.json 配置:
json
{
"openclawCliPath": "C:\Users\PC\AppData\Local\nvm\v22.22.2\openclaw.cmd"
}
问题描述
ClawPanel 的「一键隔离」功能将当前 Gateway 正在使用的 openclaw.cmd 重命名为 .bak,导致 Gateway 热重启时找不到可执行文件而崩溃,且事后没有自动切换到备选路径兜底恢复。
复现步骤
期望行为
实际行为
隔离自身正在使用的文件 → Gateway 崩溃 → 无法自动恢复
环境信息
日志证据
gateway.err.log 显示所有 Gateway 进程的执行方式:C:\nvm4w\nodejs\node.exe C:\Users\PC\AppData\Local\nvm\v22.22.2\node_modules\openclaw\dist\index.js gateway --port 18789
即 nvm4w 的 Node.exe 运行 nvm-windows 的 openclaw 代码,但启动入口走的是 nvm4w 的 openclaw.cmd 包装器。
clawpanel.json 配置:
json
{
"openclawCliPath": "C:\Users\PC\AppData\Local\nvm\v22.22.2\openclaw.cmd"
}