2026年 OpenClaw インストールウィザード:onboard 完了後に Dashboard(18789)にアクセスできない?SSH ポートフォワード、openclaw doctor 修復、launchd サービス復旧の再現チェックリスト+FAQ
「ウィザード完了」は対話フローが終わっただけです。ブラウザで Dashboard が開けるかは、ローカルリスナー、bind アドレス、ファイアウォール、そしてリモート Mac ではポートフォワードの有無に依存します。以下を順に進め、「SSH を転送していない」ことを「サービス停止」と誤認しないでください。
1. 未リスンか、入口の取り違えか
典型例:OpenClaw が Web UI を 127.0.0.1:18789(またはドキュメントの既定ポート)に bind し、ウィザードをリモート Mac上で完了したが、ノート PCのブラウザで http://127.0.0.1:18789 を開く——これはノート側のループバックに当たり、Mac 上のプロセスには届きません。「実行はサーバー、操作はクライアント」と同じ発想で、どのインターフェースのどのループバックにトラフィックが来るかを最初に揃えます。
以降の手順で使い回す短いタプルをメモしてください:bind アドレス(127.0.0.1/0.0.0.0/LAN IP)、ポート(18789 を変えたか)、クライアント(ローカルブラウザか、向こう側の SSH セッションか)、その前段の HTTP(S)/リバースプロキシ。専有の物理 Mac をエッジとして置く判断は、
2026年のiOS CI:なぜ仮想化クラウドより「独占物理Mac」が選ばれるのか?
とも地続きの論点です。
2. OpenClaw を動かすマシン上で 18789 は LISTEN しているか
対象 Mac に SSH で入る(またはローカル Terminal)で、次のいずれかを実行します。
lsof -nP -iTCP:18789 -sTCP:LISTEN— 出力があればプロセスが待ち受けています。curl -sS -o /dev/null -w "%{http_code}\n" http://127.0.0.1:18789/— ループバックのヘルス確認。ここで失敗するなら、クラッシュ、ポート競合、設定でポート変更を優先します。
リスナーが 127.0.0.1 のみなら、外向きの公開 IP や LAN IP から直叩きしても失敗するのは仕様です。bind 方針を製品設定で変えられる場合と、SSH 転送・トンネル・リバースプロキシのいずれかで揃える場合に分かれます。「bind は絞り、公開は安全に」という姿勢を runbook に書き留めてください。
3. SSH ローカルポートフォワード:ノートからリモートの 127.0.0.1:18789 を開く
OpenClaw を動かすホストへ既に SSH できるとき、ノート PC 側で次のように転送を張ります(例:ローカル 18789 をリモートのループバックへ):
ssh -N -L 18789:127.0.0.1:18789 user@remote-mac-host
セッションを開いたまま、ノートのブラウザで http://127.0.0.1:18789 を開きます。まだダメなら、SSH が正しいホストに着いているか、サーバ上で curl http://127.0.0.1:18789 が成功するか、ローカル 18789 が既に使用中でないかを確認します。別のローカルポートを使う例:-L 18080:127.0.0.1:18789 のあと http://127.0.0.1:18080 を開きます。
4. openclaw doctor:環境の自己診断を一通り
何も LISTEN しない、またはプロセスがすぐ落ちるときは、OpenClaw CLI が入っている同じ環境で openclaw doctor(またはドキュメント記載の同等コマンド)を実行します。依存関係、パス、権限、設定断片の検証と修正案が出ることが多く、インストール直後・ウィザード直後に有効です。アップグレード直後なら、製品の移行手順に沿って doctor 出力と OPENCLAW_* の実効値を突き合わせてください。
doctor が LaunchAgent のパス、Node の版、権限に言及したら、出力(マスク済み)をチケットや runbook に残し、記憶任せにしないでください。
5. launchd:launchctl で常駐サービスを復旧する
Dashboard がバックグラウンドプロセス(LaunchAgent/LaunchDaemon 等)に依存する場合、onboard 後の ドメインとラベル(ユーザ GUI セッションか、システム全体か)を確認します。
launchctl list | grep -i openclaw(または該当 plist のラベル)で終了コードが 0 でない行がないか。- plist を編集したあとは、古い定義がメモリに残らないよう、macOS の版とドメインに合わせて
launchctl bootout/launchctl bootstrapを選びます。 log show --predicate 'process == "launchd"' --last 30mや Console.app でクラッシュ(パス、権限、コード署名)を追います。
エージェントやゲートウェイが二重に立ち、ポートと設定ソースが衝突すると、UI が「たまにだけ」届かない症状になります。実効 plist のパスと待ち受けポートを runbook に固定してください。
6. FAQ
Q: ウィザードのリンクが開かない——ポートが常に間違っている?
A: 必ずしもそうではありません。URL のホストが「ブラウザを動かしているマシン」か「リモート Mac」かを確認し、後者なのに 127.0.0.1 なら SSH 転送など別経路が必要です。
Q: curl はローカルで成功するがブラウザではダメ?
A: http/https の取り違え、システムプロキシ、ローカルアドレスをブロックする拡張を疑ってください。
Q: 18789 を LAN に晒してよいか?
A: 製品とネットワーク方針次第です。共有/本番系では 127.0.0.1 + SSH/トンネル/ゼロトラストの方が無制御の 0.0.0.0 bind より安全です。
OpenClaw を Mac mini で載せると「SSH で再現」しやすい
Dashboard、ゲートウェイ、バックグラウンドエージェントは、常時稼働・低ジッター・予測可能な再起動経路が欲しくなります。macOS と launchd は plist と launchctl という運用言語が揃っており、Apple Silicon の Mac mini は性能あたりの消費電力に優れ、待機電力も非常に低いため、家庭や小チームのエッジノードに向きます。ネイティブ Unix ツールのおかげで SSH、シェル、ヘルスチェックも素直です。
ハードと OS が一体なメモリ帯域や Neural Engine、Gatekeeper・SIP・FileVault によるベースラインの固さも、長期運用の総コストを下げます。実機でのビルド体感については 2026年Macレンタル Xcodeビルド実測:ビルド時間はどれくらい? を参照してください。本文のチェックリストを、静音で安定した筐体に載せたいなら Mac mini M4 は現実的な出発点です——今すぐ入手し、OpenClaw の Web コンソールと常駐サービスを確実に立ち上げ続けましょう。