2026 OpenClaw のアップデートとロールバック openclaw update、自動アップデートのゲート、npm/git の順序

本番で OpenClaw Gateway を運用するとき、難しいのは openclaw update を打つことではなく、stable/beta/dev チャネルを変更ウィンドウに合わせることインシデント中に自動アップデートで不意に再起動されないようにすること、そして npm で固定するか git で戻すかの順序を誤らないことです。本稿ではロールバックを誤って責める七つの前提、インストール面・更新入口・ロールバック手段のマトリクス、順序依存の六段階 Runbook(バックアップ → チャネル確認 → アップデート → 任意で OPENCLAW_NO_AUTO_UPDATE → 再起動/プローブ → doctor)、および gateway install --force が必要なときに split brain ガイド へ寄せる判断をまとめます。Docker 利用者は compose 本番アップグレード と併読し、ベースラインは ヘルスログとロールバック に置きます。

01

ポストモーテムで「アップデート/ロールバック」が不当に責められる七つの前提

「OpenClaw の品質」チケットを開き直す前に、次の落とし穴を拾ってください。

  1. 01

    openclaw update を「パッケージだけでサービスは触らない」とみなす: launchd/systemd のメタデータは、ユニットが呼ぶバイナリと一致している必要があります。不一致は再起動後も再発します。

  2. 02

    本番 SLA を beta/dev に載せる: プレビュー系はサンドボックス向けです。変更票は既定で stable と明示的な semver を書きます。

  3. 03

    バイナリを下げる前に openclaw.json を大量編集する: まず実行面を既知良好ビルドに固定し、その後でスキーマ移行が要るか判断します。

  4. 04

    OPENCLAW_NO_AUTO_UPDATE を連絡の代替だと思う: 制御レバーです。メンテ窓、オーナー、ロールバック手順は別途公開します(意味論は最新の upstream ドキュメントに従います)。

  5. 05

    クリーンなツリー確認なしで git ロールバックする: git checkout <tag> のあと、サブモジュール、ロックファイル、ローカルパッチを確認し、リリース成果物と一致させます。

  6. 06

    Docker の手順をベアメタルの npm にそのまま当てる: タグ、ボリューム、エントリポイントは異なります。コンテナは compose ガイド に従い、コマンドチェーンは分けます。

  7. 07

    doctor が終わる前に全トラフィックを戻す: メンテを下ろす前に、少なくとも一度 channels status --probecron list の確認を要求します。

手順 7 が緑でもガードがバイナリ不一致を訴える場合は、npm をループする前に split brain プレイブック へ移ってください。

02

マトリクス:インストール面、更新入口、ロールバック手段

ロールバックをスクリプト化する前に、OpenClaw を何で入れたかを言語化します。

代表的な更新入口主なロールバック手段次に読む
npm グローバルopenclaw updatenpm install -g …@scope/[email protected] を固定して再インストールし、サービス封入を合わせるsplit brain
git ツリーgit pull/ベンダビルドタグで git checkout して再ビルド第3節の順序;Docker と混在させない
インストーラベンダ CLI/curl インストーラピン留めしたインストーラバンドルを再実行チェックサムをチケットに添付
Docker/compose新しいイメージタグを pullタグ/ダイジェストとボリュームスナップショット方針を戻すcompose アップグレード

黄金の順序:(1) 証跡のバックアップ → (2) バイナリの身元 を固定 → (3) そのあとで JSON 移行を議論する。

リモート構成では gateway.mode と URL の確認が依然として必要です。詳細は リモートモードガイド を参照してください。

03

六段階 Runbook:アップデート、任意のゲート、回帰

順序に敏感です。CLI とユーザーサービスのバイナリが分岐している場合は split brain ガイド を開いてください。

  1. 01

    証跡とバックアップ: openclaw --versiongateway status、マスクした環境変数抜粋、openclaw.json またはマウントボリュームのスナップショットを取得します。

  2. 02

    チャネル確認: upstream ドキュメントに沿って stable/beta/dev を揃えます。本番は stable を既定とし、チケットに semver を明記します。

  3. 03

    アップデート適用: 文書化された openclaw update を優先します。npm install -g を使う場合は、直後に サービスユニットが正しい接頭辞を指しているか を検証します。

  4. 04

    インシデント用ゲート(任意): 凍結やホットフィックス固定時に、ドキュメントに従い systemd/launchd のシェルやコンテナへ OPENCLAW_NO_AUTO_UPDATE を注入し、不意のアップグレードを止めます。解除条件を記録します。

  5. 05

    コールド再起動とプローブ: openclaw gateway restartchannels status --probe。リソース症状は not ready へ回します。

  6. 06

    doctor と観測: openclaw doctor を実行し、ヘルスログ の保持窓に沿ってログをサンプリングしてからメンテを閉じます。

bash · アップデートスモーク(例)
openclaw --version
openclaw update
openclaw gateway restart
openclaw doctor
openclaw channels status --probe
# npm 固定の例(パッケージ名はドキュメントに従う)
# npm install -g @your-scope/[email protected]
info

注: doctor がフォークしたバイナリを報告する、あるいは破壊的な gateway 手順を拒否する場合は split brain チェックリスト に切り替え、npm だけでループしないでください。

04

自動アップデートのゲート:OPENCLAW_NO_AUTO_UPDATE と変更窓

自動アップデートはドリフトを減らしますが、インシデント、監査、チーム横断の固定ではバックグラウンド pull を止める必要があります。それが OPENCLAW_NO_AUTO_UPDATE の意図です。正確な意味、既定、注入箇所(ユーザーユニット/シェルプロファイル/コンテナ環境)は最新の upstream ドキュメントに従い、本稿は運用上の衛生のみを扱います。

warning

注意: ゲートは恒久的な方針ではありません。長期間自動アップデートを止めると手動のずれを招きます。理由、解除担当、解除後の全回帰を記録してください。

レガシーバイナリにサービスを書き換えさせる破壊的な OPENCLAW_* とは異なり、このゲートは主として自動アップグレードのペースを一時停止します。split brain が既にある場合でも、PATH を揃えて封入を再インストールすることが先です。

05

変更記録向けの三つのアンカー(と収束)

定量化できるチェックを変更票に残します。

  • 二重のバージョン: 対話シェルとサービスから見える環境の双方で openclaw --version が一致し、チケットの目標と合わせます。
  • ロールバック証明: git 系は git rev-parse HEAD とタグを添付、npm は正確な semver、compose はイメージダイジェスト(Docker ガイドに従う)。
  • 業務プローブ: インシデント表示を下ろす前に、少なくとも一度のチャネルプローブと一度の cron 周期を確認します。

コンシューマ向けノート PC はスリープや再起動が予測しづらく、Gateway を VPS のように安定稼働 させつつ Apple Silicon や GUI の利点を残したい場合、無限のローカルアップグレードより専用クラウド Mac の方が安全なことが多いです。NodeMini は SSH 向けのレンタルノードと明瞭な料金を提供します。Mac Mini レンタル料金ヘルプセンター を参照してください。OpenClaw の推奨読み順:オブザーバビリティcronリモートモードsplit brain本稿(チャネルとロールバック)カテゴリ絞り込み

FAQ

よくある質問

openclaw update はベンダのチャネル意味論に沿います。単純な npm はグローバル接頭辞下のファイルだけを更新し、古いパスを指したままの launchd/systemd ユニットを自動では修復しません。それが split brain の話題であり、多くの場合 gateway install --force が必要です。

インシデント、監査での凍結、必須のパッチ固定時です。意味と注入は upstream に従います。解除後は doctor とチャネルプローブを再実行し、ログは オブザーバビリティの指針 に合わせます。

compose 本番アップグレード を優先してください。イメージのタグ/ダイジェスト、ボリューム、起動順がロールバックを決めます。ベアメタルの npm/git の説明は並行して読む参照であり、無関係なコマンドチェーンを混ぜないでください。