Gateway on macOS(外部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経由で同じフローを実行します(Gatewayランタイムにはbunは推奨されません)。

Launchd(GatewayをLaunchAgentとして)

ラベル:

  • bot.molt.gateway(またはbot.molt.<profile>; レガシーのcom.openclaw.*が残る場合があります)

Plist位置(ユーザー毎):

  • ~/Library/LaunchAgents/bot.molt.gateway.plist (または~/Library/LaunchAgents/bot.molt.<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