AI 自動化 2026年5月13日

2026-05-13 ヘッドレスレンタル Mac mini での OpenClaw:launchd・MCP・夜間エージェントの前に SSH で完了させる初回ブートチェックリスト

ProxyMac エンジニアリングチーム 2026年5月13日 約 16 分で読了

ProxyMac で Apple Silicon Mac mini を借り、ノードが 香港・日本・韓国・シンガポール・米国 にあるチームは、Finder や画面共有を開かず SSH だけで OpenClawlaunchd に載せたがります。最も高い代償を払うのは初回プリフライトの省略です。MCP のタイムアウトをネットワークのせいにしつつディスク圧を見落としたり、「API キーがない」を製品バグだと決めつけ、実際は非ログインシェルが変数を継承していないケースです。本稿では (1) 対象と完了の定義、(2) インストール前に必ず取る 3 種の定量化シグナル、(3) 5 列のプリフライト行列(4) Confluence に貼れる7 ステップ SSH 手順(5) 症状→対処 表を示し、インストールとデプロイMCP 環境と launchdゲートウェイトークン JSONlaunchctl 復旧へリンクします。macOS のダイアログを人手で押す必要があるときは VNC。スペックは 料金。経路は ヘルプ

対象と「完了」の定義

OpenClaw を常駐ゲートウェイとし、MCP ツールと JSONL 可観測性を載せるプラットフォームエンジニア自動化オーナー向けです。「完了」とはコールド再起動90 秒以内に SSH で再ログインでき、LaunchAgent が人手で ssh セッションを張り直さずに立ち上がり、構造化ログがモデルとツールのヘルスチェック成功を示すことです。再起動のたびに同僚が export しなければならないなら未完了—それは 並列エージェント のピークで爆発する環境負債です。

  • 数値目標:JSONL とモデルキャッシュを載せる APFS ボリュームは少なくとも 25% の空きを維持。計画メンテの短い窓だけ 15% 未満を許容。
  • 遅延の現実:運用用ノート PC から該当リージョンへの RTT を記録。コントロールプレーン API が別大陸にあるなら、MCP タイムアウトに 120–220 ms 級の往復を心に留める。
  • 同時接続の予算:ピークで 4 本の同時 MCP ハンドシェイクを想定してファイル記述子を見積もり、「ネットは問題ない」と言う。

インストールスクリプトを走らせる前に必ず取る 3 シグナル

まず df -hdiskutil apfs listSnapshots / をスナップショット化—OpenClaw の追記ログと移行ツールが残した APFS スナップショットは衝突しやすいです。次に sysctl hw.optional.arm64uname -m を表示し、arm64 の Apple Silicon であることを確認(Rosetta と Node バイナリの混在を避ける)。第三に ssh host 'command -v openclaw'ssh -t host zsh -lic 'command -v openclaw' を突き合わせる。食い違えば、MCP 環境の記事 が説明するのと同型の launchd 不具合で堂々巡りになります。3 組の出力をチケットに貼れば、次の当番は口伝ではなく事実を継承します。

チケットに書く数字の例:空き容量の割合、JSONL ディレクトリの inode 数、コールド起動で launchctl kickstart が 1 周する壁時計時間(M4 上のゲートウェイスケルトンは 12 秒未満が目安)。

プリフライト行列:成果物・所有者・検証・ロールバック・省略時の爆発半径

成果物 所有者アカウント 検証 ロールバック 省略時の影響範囲
ワークディレクトリ LaunchAgent と同じ UID ls -le で ACL 監査 アーカイブ後 install -d -o で再作成 ツール導入時のサイレント半書き込み
JSONL パス _openclaw などのロールユーザー クォータとローテーション方針 バックアップ後に切り詰めてローテーションを締める 深夜の書き込みピークでボリューム全体が満杯
plist ProgramArguments root 以外の LaunchAgent ドメイン plutil -lint と git diff launchctl bootout 後に plist を戻す 起動ループが CPU 枠を食い尽くす
モデルプロバイダの秘密鍵 キーチェーンまたは mode 600 のファイル参照 タイムアウト付き非対話プローブ キーをローテーションしキャッシュを消す 共有ラボでのテナント横断漏えい
MCP サービス一覧 リポジトリの固定 SHA チェックサム + openclaw doctor の一部 直前の SHA に checkout ツール schema のドリフトでエージェントが途切れる

7 ステップ SSH 手順(Confluence にそのまま貼れる)

  1. ストレージ基線:空きが 25% 未満ならインストールを拒否。先に掃除するか SKU を上げる—料金 を参照。
  2. 時刻合わせ:NTP が健全か確認。date -u とリージョン意図(HK / JP / KR / SG / US)を設定の横にメモし、クロスリージョンのログ相関を容易にする。
  3. OpenClaw のインストール/更新:インストールガイド に従うが、PATH スナップショットが通った後だけ。
  4. plist に PATH を固定:Homebrew の /opt/homebrew/bin と必要なランタイムマネージャのパスを含める—暗黙の継承に頼らない。
  5. 二段スモーク:まず SSH 前景でゲートウェイを起動し、同じ引数で launchctl kickstart。JSONL の起動トークン行を突き合わせる。
  6. 診断の接続:ログガイド に従い JSONL を有効化しローテーションを検証。48 時間でファイルが無限成長しないこと。
  7. 引き継ぎ:再起動オーナーとアラートの深刻度を明記し、復旧記事 をリンク。チケットに plist のハッシュを添付。
禁止:共有踏み台に本番シークレットをシェル履歴に貼ること。使い捨て env ファイルを chmod 600 にし、plist 検証後すぐ安全に削除する。

症状 → 想定原因 → 第一選択の対処(依然として SSH のみ)

症状 想定原因 第一選択の対処
MCP ツールの終了コード 127 launchd 下で PATH が切り詰められている plist に絶対パスか薄いラッパースクリプトを書く
デプロイ後ゲートウェイがアイドル CPU 95% タイトループまたはログ書き込みのブロック JSONL ボリュームのレイテンシを確認しログガイドに沿ってローテート
再起動後だけ認証エラー トークンが shell profile にしかない plist の EnvironmentVariables かキーチェーンへ—トークン記事参照
ハンドシェイクが約 40 秒で固まる DNS やレート制限がパケットロスに見える 並列度を下げ、mini 上で明示的に解決テストを実行

SSH から VNC にエスカレーションするタイミング(低頻度に保つ)

プロファイル、権限修復、plist で片付く TCC は SSH に留める。VNC は「画面収録」をクリックする必要があるとき、GPU UI 自動化を目視するとき、デザイナーが JSONL を読めず画面共有が要るとき。セッションは短く:色深度を下げ、大きな scp を一時停止し、クロスリージョン遅延調整と組み合わせてマウス操作を成立させる。HK / JP / KR / SG / US に展開した OpenClaw クラスタの多くは、世代ごとに VNC は一度で足り、毎週ではない。

FAQ

Homebrew は必須? 必須ではないが、ドキュメントが暗黙に前提するなら行列に PATH 仮定を明示しないと同じ事故を繰り返す。

常に個人の管理者アカウントでよい? デモなら可。本番はロールアカウント、制限付き sudo、明確なログ所有者を使う。

企業 HTTP プロキシは? SSH が ProxyCommand を使うなら、MCP の出口も同様かもしれない—先に企業ネットワーク系の記事を揃えてから OpenClaw を責めない。

なぜ ProxyMac Mac mini がヘッドレス OpenClaw に向くか

レンタルの Mac mini M4ネイティブ macOS と予測可能なシングルテナント CPU を束ね、OpenClaw が Apple スタックのツールチェーンだけを編成しつつ、運用は Linux ノートで続けられる構成に合う。ゲートウェイを HK / JP / KR / SG / US に置けば API リージョンにコントロールプレーンを近づけ、五拠点のラックを自前で立てなくてよい。チェックリストを通したあとは、CI と同じ金属の経済モデルを継続—料金 を比較し、ヘルプセンター で緊急 SSH を演習し、VNC はポケットに、クリティカルパスからは外す。

証跡チェーンでヘッドレス OpenClaw を運用

チェックリスト · launchd · HK / JP / KR / SG / US