macOS 上的 Gateway(外部 launchd)
OpenClaw.app 不再內建 Node/Bun 或 Gateway 執行環境。macOS 應用程式預期有一個外部安裝的 openclaw CLI,不會將 Gateway 作為子程序啟動,而是管理一個以使用者為單位的 launchd 服務來維持 Gateway 運行(或連接已在執行的本機 Gateway)。
安裝 CLI(本機模式必備)
Mac 上預設使用 Node 24 作為執行環境。Node 22 LTS(目前為 22.16+)仍可相容使用。接著全域安裝 openclaw:
npm install -g openclaw@<version>
macOS 應用程式的 Install CLI 按鈕會透過 npm/pnpm 執行相同的安裝流程(不建議以 bun 作為 Gateway 執行環境)。
Launchd(Gateway 作為 LaunchAgent)
標籤:
ai.openclaw.gateway(或ai.openclaw.<profile>;舊版com.openclaw.*可能仍存在)
Plist 位置(以使用者為單位):
~/Library/LaunchAgents/ai.openclaw.gateway.plist(或~/Library/LaunchAgents/ai.openclaw.<profile>.plist)
管理者:
- macOS 應用程式在 Local 模式下負責安裝/更新 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