macOS 上の OpenClaw ゲートウェイは上流 LLM API の影響を強く受けます。遅延スパイク、HTTP 429 のレート制限、リージョン障害が重なると、接続されたチャネル全体が一度に止まったように見えます。本プレイブックでは障害の分類、コスト特性の異なるプライマリ/セカンダリモデルの積み方、ツール多用セッション向けタイムアウト調整、専用 Mac mini M4 クラウドノードでの再現可能な復旧手順を整理します。
まだスタックを入れている段階なら、先にOpenClaw macOS インストールとデプロイを完了させ、ルーティング強化に戻ってきてください。インシデント対応の型は運用ランブック(ログ・アップグレード・ロールバック)と組み合わせると効果的です。
本番で出る失敗モード(OpenClaw が「元気」に見えるときも)
- プロバイダ側の飽和:フロンティアモデルは数十秒キューに入ることがあり、上限がないとゲートウェイスレッドがブロックし、アダプタがフリーズしたように見えます。
- トークンバケットのスロットリング:HTTP 429 と
retry-afterを無視するとクォータをさらに浪費します。 - ローカルリソース圧迫:ブラウザ自動化と同じ Mac で Ollama を動かすと RAM が 90% を超え、カーネル圧縮で遅延がネットワーク問題に見えがちです。
症状と緩和のマトリクス
| 観測できる症状 | ありがちな原因 | 最初の緩和策 |
|---|---|---|
| ログに 3 分超のハング | クライアント側タイムアウトなし | 補完呼び出しを 120 秒で上限しバックアップモデルへ |
| HTTP 429 の連発 | レート制限または API キー共有 | 2 秒から指数バックオフ、ワークスペースごとにキー分割 |
| 応答品質の劣化 | 極小ローカルモデルへのサイレントフェイルオーバー | モデル ID をタグ付け、フェイルオーバーが 15% を超えたらアラート |
| スリープ後にゲートウェイ終了 | 永続化された launchd ジョブがない | KeepAlive とヘルス再起動付き LaunchAgent |
三段階モデルラダーの設計
モデルは DNS レコードのように扱い、常に三段階を維持します——プレミアム推論、経済的なジェネラリスト、緊急時のローカル推論。2026 年の OpenClaw エコシステム(旧 Clawdbot/Moltbot など)はホスト型 API と Kilo や Ollama などのゲートウェイの併用を推奨しますが、運用上のコツは順序の決定性にあります。設定ファイルをその場で書き換えるのではなく、切り替え条件を短いポリシー文書に落とし込んでおくと、オンコールが迷いません。
- ティア A(プライマリ):ファイル変更やメッセージ送信などツール呼び出しのデフォルト。フロンティアまたは Anthropic 互換エンドポイント。
- ティア B(セカンダリ):別ベンダーまたは別ファミリーでクォータ分離。単一障害点で容量がゼロにならないようにします。
- ティア C(ローカル):Ollama と 7B〜14B 程度の instruct モデル。遅いが WAN 断でもゲートウェイを生かします。
- 切替基準を文書化:例:「60 秒タイムアウトが連続 2 回なら 30 分はティア B」。
- 環境ごとに API キー分離:ステージングのボットが負荷試験で本番クォータを奪わないようにします。
- 千ツールターンあたりのコスト計測:週次で追跡し、ティア A が予算超えなら要約のみティア B へ自動ルーティングします。
警告:自動フェイルオーバーは請求のサプライズを隠します。日次トークン使用量が週次で 40% 以上跳ねたらアラートを。
観測指標と SLO の置き方
タイムアウトとバックアップモデルだけでは不十分です。エンドツーエンド遅延の 95 パーセンタイル、時間あたりの 429 件数、フェイルオーバートラフィック比率、Ollama の推論キュー深さを最低限メトリクス化し、既存の監視に流し込みましょう。リージョンダウン時には告知チャネルの文言を早めに切り替え、ユーザーが「完全停止」と誤解する時間を短縮できます。読み取り専用ツールには短いタイムアウト、書き込みや外部送信には長めの上限を割り当てると、タイムアウト再試行による二重操作リスクも下がります。
プロバイダを積み増す前に:M4 でのメモリと並行性のバジェット
ホストがスワップし尽くして動かなくなれば、フェイルオーバー論理は役に立ちません。第 2 のクラウドプロバイダを足す前に、負荷が同時にピークに達したとき各サブシステムが必要とするユニファイドメモリを洗い出してください:Node.js ゲートウェイ、ローカルの埋め込みモデル、自動化が起動するブラウザタブ、そして macOS 本体です。
ユニファイドメモリの見積もりなしにフェイルオーバーを設計すると、セカンダリモデルや追加のブラウザプロファイルがホストを圧縮と遅延のスパイラルに押し込み、タイムアウトがプロバイダ側の問題に見えてしまいます。
| サブシステム | おおよその RAM 使用量 | 逼迫時の緩和策 |
|---|---|---|
| OpenClaw ゲートウェイ(Node.js) | 600 MB – 1.5 GB | 同時ツールセッションを制限;低トラフィック帯で cron による日次再起動 |
| 常駐 Ollama 7B〜14B モデル | 6 – 12 GB | 量子化を使う;ティア A/B が回復したらモデルをアンロード |
| ブラウザ自動化セッション | プロファイルあたり 1 – 3 GB | 各タスク後にプロファイルを回収して作り直す;CI モードでは GPU 負荷の高いサイトを無効化 |
合計がマシンのユニファイドメモリ総量に近づくと、フェイルオーバー事象はかえって悪化します。macOS がページを圧縮し、負荷の軽いホストなら間に合っていた API 期限をクライアントが逃します。専用 Mac mini M4 を 2 台借り、1 台を「ゲートウェイ+Ollama」、もう 1 台を「ブラウザサンドボックス」とラベルするのは、メモリ逼迫時だけ現れるハイゼンバグを追う工数より安く済むことがよくあります。
クラウド Mac mini M4 での運用八ステップ
香港・日本・韓国・シンガポール・米国の NodeMac Mac mini M4 に SSH できる前提です。ブラウザ GUI を伴うならVNC ガイドも併せて確認してください。
- Node.js と OpenClaw の版を固定し、
.tool-versionsまたはロックファイルに書き、アップグレードでタイムアウト挙動が勝手に変わらないようにします。 - HTTP クライアントのタイムアウトを明示——通常チャットは 60 秒、複数ツール承認を連鎖するセッションは 120 秒から。
- 429 に指数バックオフ:ベース 2 秒、上限 120 秒、ジッター ±20% でサンダリングハードを避けます。
- cron または LaunchAgent のウォッチドッグでローカルヘルスを 5 分ごとに叩き、2 回連続失敗で再起動します。
- Ollama を有効にするなら RAM を区画:ブラウザ自動化と同時なら macOS ファイルキャッシュ用に少なくとも 8 GB の余裕を。
- ログをディスクへストリームしローテート、ファイル約 200 MB で、インシデント前後の遅延を比較しやすくします。
- 四半期ごとにカオス訓練:プライマリベンダーへの外向き HTTPS をブロックし、ティア B が 1 ループ以内に動くか確認します。
- ロールバックを文書化:直前のゲートウェイ設定 tarball を残し、15 分以内に戻せる手順を。
FAQ
OpenClaw は全チャネルで同じモデルを使うべきですか?
いいえ。高リスクのツール利用は最も能力の高いホスト型モデルへ、Telegram や Discord の軽い挨拶は安価なエンドポイントへ。外向き API 全滅時はローカル Ollama を最後の砦にします。軽量ボットがコード編集セッションと同じクォータバケットを奪わないようにしてください。
クラウド Mac ゲートウェイのタイムアウトはどのくらいがよいですか?
チャット補完は 60 秒、コード重視のツールループは 120 秒から。ヘルスプローブは 30 秒に短くし、ユーザーがボットクラッシュと判断する前にセカンダリへ切り替えます。
信頼性が極端なコスト削減より優先なら、チームのリージョン近くの専用 Mac mini M4にゲートウェイを置き、クラウド API への RTT を安定させます。NodeMac の香港・日本・韓国・シンガポール・米国ノードは、調達プロジェクトではなく運用のチェックボックスにできます。
Mac mini M4 は常時オン OpenClaw ゲートウェイに最適です。Apple Silicon は高速 CPU、十分な GPU、Neural Engine をまとめ、ローカル埋め込みや小型フォールバックモデルを静かなファンで回せます。NodeMac は専用物理マシンを SSH と VNC 付きで提供し、香港・日本・韓国・シンガポール・米国をカバー。フェイルオーバースクリプトは借り物ノートではなく自前ハードで動かせます。レンタルは CapEx を避けつつ、Keychain・ブラウザ自動化・メッセージ統合に期待するネイティブ macOS 環境を維持します。適切なプランと組み合わせれば、コンプライアンス要件に応じてティア A/B を別プロセスや別 Mac でハード分離することも現実的です。