OpenClaw ゲートウェイをベアメタル macOSに載せると、ログインセッションと launchd の境界・環境変数・TCP 18789 などがホスト直の挙動になります。アップグレード後の認証ドリフトも出やすいので、層で切り分けます。ホスト常駐から複数リージョン M4 の近接・フェイルオーバーまでをチェックリスト化しました。
一、ベアメタル常駐と Docker ルートの前提差
Compose は env_file とコンテナ境界で揃いますが、ベアメタルはログイン文脈・LaunchAgent の plist・シェル初期化の三層に分かれます。手動だけ成功するなら PATH/シークレットの参照元を一つに寄せます。コンテナ側はDocker Compose トラブルシュート(2026)を参照してください。
二、launchd と「ユーザーサービス」、Linux 側の systemd への写像
~/Library/LaunchAgents では WorkingDirectory・ログ出力・EnvironmentVariables を plist に明示しないと対話シェルとズレます。Linux の systemctl --user も WorkingDirectory= と Environment= を揃えるのが同型です。アップグレード直後だけ失敗する場合はホームパスや鍵チェーン参照を疑います。
三、ポート 18789 の層別チェック
18789 は「プロセス生存 → バインド先(loopback / LAN)→ FW/プロキシ」の順で確認し、トンネルやリバプロではヘルスチェックと実クライアントの向き先を一致させます。
四、アップグレード後の「認証ドリフト」
アップグレード後にトークン/鍵パス/環境変数のいずれかが古いままだと 401 や拒否に見えます。Compose は状態がボリュームに閉じがちですがホスト直は露出するため、設定の退避とロールバックを Runbook に1枚足します。
五、複数リージョンの M4 クラウド Mac:近接とフェイルオーバー
ホーム/待機リージョンを決め、DNS か設定テンプレだけ差し替える切替演習を四半期に一度。読み方は六地域・M4 の選び方 FAQ、席回しは越境チームの並列キュー FAQと併読してください。
六、運用チェックリスト(そのまま Runbook に)
- LaunchAgent の plist に WorkingDirectory とログパス、必要な EnvironmentVariables が揃っている
- 手動シェルとデーモンで
node -vとゲートウェイのバイナリパスが一致する - 18789(または公開ポート)が意図したインタフェースで Listen し、ヘルスチェックと実クライアントが同じ向き先を見ている
- アップグレード手順にトークン/鍵ディレクトリの退避と検証が含まれる
- 副リージョンへの切替で、設定テンプレまたは DNS の切替を演習済みである
vpszap クラウド上なら、検証と切替が速い
チェックリストは専有物理 M4 Mac mini上で再現しやすく、vpszap は CPU/メモリ/SSD を独占、約 5 分で SSH+VNC、日/週/月/四半期課金で長期契約なし、多地域低遅延で切替検証もしやすいです。
vpszap クラウド Mac miniのホームから構成とリージョンを選ぶのが早いです。