複数の Gateway(同一ホスト)
ほとんどのセットアップでは 1 つの Gateway を使うべきです。単一の Gateway で複数のメッセージング接続とエージェントを扱えるためです。より強い分離や冗長性(たとえばレスキューボット)が必要な場合は、分離されたプロファイル / ポートで別々の Gateway を実行してください。分離チェックリスト(必須)
OPENCLAW_CONFIG_PATH— インスタンスごとの設定ファイルOPENCLAW_STATE_DIR— インスタンスごとのセッション、認証情報、キャッシュagents.defaults.workspace— インスタンスごとのワークスペースルートgateway.port(または--port)— インスタンスごとに一意- 派生ポート(browser / canvas)は重複してはいけない
推奨: プロファイル(--profile)
プロファイルは OPENCLAW_STATE_DIR と OPENCLAW_CONFIG_PATH を自動的にスコープ分けし、サービス名にサフィックスを付けます。
レスキューボットガイド
同じホスト上で 2 台目の Gateway を、以下をそれぞれ専用にして実行します。- プロファイル / 設定
- state dir
- ワークスペース
- ベースポート(および派生ポート)
インストール方法(レスキューボット)
ポートマッピング(派生)
ベースポート =gateway.port(または OPENCLAW_GATEWAY_PORT / --port)。
- browser control service のポート = ベース + 2(loopback のみ)
- canvas host は Gateway HTTP サーバー上で提供される(
gateway.portと同じポート) - Browser profile の CDP ポートは
browser.controlPort + 9 .. + 108から自動割り当てされる
Browser / CDP に関する注意(よくある落とし穴)
- 複数インスタンスで
browser.cdpUrlを同じ値に固定してはいけません。 - 各インスタンスには、専用の browser control port と CDP 範囲(gateway port から派生)が必要です。
- 明示的な CDP ポートが必要な場合は、インスタンスごとに
browser.profiles.<name>.cdpPortを設定してください。 - リモート Chrome には
browser.profiles.<name>.cdpUrlを使ってください(プロファイルごと、インスタンスごと)。
手動 env の例
クイックチェック
gateway status --deepは、古いインストールから残っている launchd / systemd / schtasks サービスを見つけるのに役立ちます。multiple reachable gateways detectedのようなgateway probeの警告文は、意図的に複数の分離された Gateway を実行している場合にのみ想定されるものです。