macOS 上的 Gateway(外部 launchd)
OpenClaw.app 不再捆绑 Node/Bun 或 Gateway 运行时。macOS 应用
期望外部 openclaw CLI 安装,不将 Gateway 作为
子进程启动,并管理每个用户的 launchd 服务以保持 Gateway
运行(或附加到已运行的本地 Gateway,如果已有的话)。
安装 CLI(本地模式所需)
您需要在 Mac 上安装 Node 22+,然后全局安装 openclaw:
npm install -g openclaw@<version>
macOS 应用的 Install CLI 按钮通过 npm/pnpm 运行相同流程(不推荐将 bun 用于 Gateway 运行时)。
Launchd(作为 LaunchAgent 的 Gateway)
标签:
ai.openclaw.gateway(或ai.openclaw.<profile>;旧版com.openclaw.*可能保留)
Plist 位置(每用户):
~/Library/LaunchAgents/ai.openclaw.gateway.plist(或~/Library/LaunchAgents/ai.openclaw.<profile>.plist)
管理器:
- macOS 应用拥有本地模式下的 LaunchAgent 安装/更新。
- CLI 也可以安装它:
openclaw gateway install。
行为:
- “OpenClaw Active” 启用/禁用 LaunchAgent。
- 退出应用不会停止 gateway(launchd 保持其运行)。
- 如果 Gateway 已在配置的端口上运行,应用附加到 它而不是启动新的。
日志:
- launchd stdout/err:
/tmp/openclaw/openclaw-gateway.log
版本兼容性
macOS 应用检查 gateway 版本与其自身的版本。如果不兼容, 请更新全局 CLI 以匹配应用版本。
冒烟测试
openclaw --version
OPENCLAW_SKIP_CHANNELS=1 \
OPENCLAW_SKIP_CANVAS_HOST=1 \
openclaw gateway --port 18999 --bind loopback
然后:
openclaw gateway call health --url ws://127.0.0.1:18999 --timeout 3000