/tmp/openclaw と openclaw gateway status の時刻突合せ手順を示し、ヘッドレス SSH、CLI 整合、launchd トークン、診断ラダー へ誘導してランブックの重複を避けます。2026 年の Node 22 と「アプリ殻 + 外部 CLI」: トリアージを遅らせる五つの誤解
OpenClaw の macOS 体験は、ゲートウェイのバイナリとプロトコルをグローバルに入れた openclaw CLI が担い、アプリは検証とオーケストレーションに寄る設計へ寄っています。公式の install.sh だけを流し、node -v が宣言下限を満たすかを確認しないまま進めると、ダッシュボードや最初の WebSocket で断片的な失敗が出ます。逆にアプリだけ入れてランタイム同梱を期待しても同様です。専用クラウドの利点は、PATH、npm のグローバル接頭辞、LaunchAgent の Label、ログの置き場所を同一サービスアカウントに固定できる点にあります。
ヘッドレス SSH が Node 20 を強調するのに対し、2026 年の多くのインストーラは Node 22 を前提とします。本文は 22 を下限とし、イメージが 20 のまま凍結している場合の更新方針だけ別枠で触れます。近距離リージョンと遠距離 M4 Pro の差は主に依存取得の所要時間であり、プロトコル意味論ではないため、検証コマンド列は同一、調達行だけを分けます。
App Store のビルドだけ見る:node -v、which openclaw、openclaw --version、npm prefix -g も必ず印刷します。
install.sh と npm グローバルを同時に正とする:メンテナンス枠ごとに主経路は一つにします。
18789 が LISTEN なら必ず新規と決めつける:既存 Gateway への接続が起きやすく、PID の誕生時刻を先に見ます。
ログを読まず token をいじる:先に /tmp/openclaw のタイムスタンプを確認します。
共有アカウントで複数人が npm i -g:plist の ProgramArguments が静かにズレます。専用アカウントが安全です。
これらを 共有ノードのガバナンス と同じ変更前チェックに含めると、口頭のバージョン伝言ゲームを減らせます。AMI を凍結するチームは、許容するグローバル semver 帯と禁止 PATH 接頭辞をリリースノートへ明記し、初回起動ログへ openclaw doctor の末尾を追記すると、当番が AMI バッチと突き合わせやすくなります。
対話用ラップトップとヘッドレス云ノードの二本線がある場合、チケットに「どちらのレーンを変えたか」を必須項目にしてください。混在すると、ラップトップ側の npm 更新だけで本番も揃ったと錯覚しやすく、LaunchAgent は昨日の接頭辞のままです。
ロールバック規律として、App Store 側だけ先行したときはメンテナンス枠の間に一方を凍結し、plist を試行錯誤で叩かない運用を推奨します。手順書に動詞を固定すると、タイムゾーンを跨いでも同じ順序で戻せます。
対照表: install.sh と npm グローバル、18789 の接続先再利用と新規
二軸で整理します。主インストール経路とポート挙動です。長大な表は インストールの長いチェックリスト に任せ、本文は 2026 年の二系統と Node 22 の順序に絞ります。
| 主経路 | 向いている場面 | 追加で必ず見る項目 |
|---|---|---|
| 公式 install.sh | Node と PATH の典型穴をインストーラ側で処理したい初回構築 | 終了コード、非対話環境変数、ログの出力先 |
| npm グローバル openclaw@latest | イメージに Node 22 が同梱され、社内 npm ミラーと揃えたい | plist の ProgramArguments に絶対パスを書くか |
| 18789 の症状 | 有力な説明 | 次の一手 |
|---|---|---|
| アプリは開くが挙動が古い | 既存 Gateway へ接続 | プロセス起動時刻と設定 mtime を比較 |
| ダッシュボードが空で CLI も失敗 | ポート競合か bind 失敗 | 診断ラダー の浅い命令から |
| launchd だけ即死 | 環境か token パス | launchd トークン の二分へ |
どのバイナリが Gateway を担い、いつ起動したかを先に確定してから UI の話に進みます。
シンガポール、東京、ソウル、香港、台北、米東西へ同じランブックを複製するとき、インストール経路と RTT は別行にしてください。遠距離だからといって kickstart やログ読取を省略する理由にはなりません。
貼り付けブロック: Node 22、CLI、LaunchAgent、/tmp/openclaw の突合せ
下の列は短く、スクショとチケットに向いています。GUI のないセッションでは ヘッドレス SSH の PATH 節と交差確認してください。
node -v which node which openclaw openclaw --version openclaw gateway status ls -lt /tmp/openclaw 2>/dev/null | head launchctl list | grep -i openclaw
ヒント:再現性のある運用では口頭の版数ではなくコマンド出力全文をチケットへ添付し、ホスト名と AMI バッチと契約行も併記すると会計突合が楽です。
openclaw onboard --install-daemon は Label と ProgramArguments と環境変数を一括で書き込む公式入口のままです。plist を手で弄った後は onboard が非破壊でキーを飛ばし、新旧が混ざりがちです。メジャー更新や待受ポート変更は bootout からの再インストールを検討し、npm update だけに頼らない方が安全です。無人の探针の組合せは cron プローブ の骨格を再利用します。
/tmp/openclaw のログを読むときは、先頭行の時刻を gateway status の起動時刻と揃えてから、「設定が効いていない」のか「古いプロセスが残る」のかを分けます。実験用に複数 Gateway を同居させる場合は state ディレクトリとポート帯を分け、ファイアウォールでも明示的に隔離してください。
六段階: CLI 検証から監査可能なクラウド常駐へ
四点を凍結:Node のマイナー、openclaw --version、npm prefix -g、LaunchAgent Label。
主経路を一つ決める:install.sh か npm グローバルかをチケットに明記します。
onboard でデーモンを入れ、標準エラーを失敗時に添付:全文を残します。
gateway status と /tmp/openclaw を突合:誕生時刻と bind を確認します。
macOS アプリでゲート検証:まだ壊れるなら CLI 整合 へ戻ります。
リージョンと SKU 行を書く:近距離試験か遠距離 M4 Pro 常駐かを 注文ページ に揃えます。
メンテ後はアプリ版、CLI 版、plist Label、ヘルス終了コードの四つ組を CMDB かコストタグへ追記し、請求照合でホストの役割を推測しない運用にします。
引用しやすい値: Node 下限、既定ポート、ログルート、誤検知の予算
Node 下限:上流が宣言する最低メジャーに従い、イメージが遅れる場合は AMI の更新期限をチケットへ書きます。
既定 WebSocket ポート:ドキュメントの既定が変わったら plist とファイアウォール許可と監視を同時に更新します。
ログルート:実際の書き込み先、空き容量、権限を token 手術の前に確認します。
注意:ネストした仮想化やベンダー支持外の macOS 供給では前提が変わり、唯一の本番真実源には向きません。
ノートだけで短期デモを回すのと、チーム共有の常時コンポーネントに昇格させるのでは、再現可能な順序と版の契約とログの揃え方が決定的に違います。GUI の修復ボタンだけに頼り、CLI と plist とログ位置を固定しないと、アップグレード週に同じ坑に戻ります。家庭用回線とスリープ方針のノートは、常時エージェントに構造的な不安を残します。iOS の CI/CD と AI エージェント自動化により安定した本番を目指すなら、KVMNODE の Mac mini クラウドレンタルは多くの場合、運用上のより良い答えになります。専用の Apple Silicon、透明なリージョン、段階的な構成、弾性のある契約期間が揃います。価格と接続の詳細は 価格ページ と ヘルプセンター を参照してください。
近距離で二週間試してから遠距離 M4 Pro 常駐へ移す計画なら、両方の四つ組を残し、差分が依存取得時間由来かデーモン設定由来かを事後分析で分けてください。
App Store と npm が一時的に食い違うときは、半端なアップグレード状態を避けるため一方をメンテナンス枠で凍結し、18789 の誤読とログ時刻のズレを減らします。