openclaw update

OpenClawを安全にアップデートし、stable/beta/devチャンネルを切り替えます。

npm/pnpm(グローバルインストール、gitメタデータなし)でインストールした場合、アップデートは Updating のパッケージマネージャーフローで行います。

使い方

openclaw update
openclaw update status
openclaw update wizard
openclaw update --channel beta
openclaw update --channel dev
openclaw update --tag beta
openclaw update --dry-run
openclaw update --no-restart
openclaw update --json
openclaw --update

オプション

  • --no-restart: アップデート成功後のGatewayサービス再起動をスキップ。
  • --channel <stable|beta|dev>: アップデートチャンネルを設定(git + npm。設定に永続化)。
  • --tag <dist-tag|version>: 今回のアップデートのみnpmのdistタグまたはバージョンをオーバーライド。
  • --dry-run: 設定の書き込み、インストール、プラグイン同期、再起動を行わずに計画されたアップデートアクション(チャンネル/タグ/ターゲット/再起動フロー)をプレビュー。
  • --json: 機械読み取り可能な UpdateRunResult JSONを出力。
  • --timeout <seconds>: ステップごとのタイムアウト(デフォルトは1200秒)。

注意: ダウングレードは古いバージョンが設定を壊す可能性があるため、確認が必要です。

update status

アクティブなアップデートチャンネル + gitタグ/ブランチ/SHA(ソースチェックアウトの場合)、およびアップデートの利用可能状況を表示します。

openclaw update status
openclaw update status --json
openclaw update status --timeout 10

オプション:

  • --json: 機械読み取り可能なステータスJSONを出力。
  • --timeout <seconds>: チェックのタイムアウト(デフォルトは3秒)。

update wizard

アップデートチャンネルを選択し、アップデート後にGatewayを再起動するかどうかを確認する対話式フローです(デフォルトは再起動)。gitチェックアウトなしで dev を選択した場合、チェックアウトの作成を提案します。

動作内容

チャンネルを明示的に切り替えた場合(--channel ...)、OpenClawはインストール方法も整合させます:

  • dev → gitチェックアウトを確保し(デフォルト: ~/openclawOPENCLAW_GIT_DIR でオーバーライド可)、更新してそのチェックアウトからグローバルCLIをインストール。
  • stable/beta → 対応するdistタグを使用してnpmからインストール。

Gatewayコアの自動アップデータ(設定で有効化された場合)も同じアップデートパスを使用します。

gitチェックアウトフロー

チャンネル:

  • stable: 最新の非betaタグをチェックアウトし、ビルド + doctorを実行。
  • beta: 最新の -beta タグをチェックアウトし、ビルド + doctorを実行。
  • dev: main をチェックアウトし、fetch + rebaseを実行。

大まかな流れ:

  1. クリーンなワークツリーが必要です(コミットされていない変更は不可)。
  2. 選択されたチャンネル(タグまたはブランチ)に切り替えます。
  3. アップストリームをフェッチします(devのみ)。
  4. devのみ: 一時ワークツリーでプリフライトlint + TypeScriptビルドを実行。tipが失敗した場合、最大10コミット遡って最新のクリーンビルドを探します。
  5. 選択されたコミットにリベースします(devのみ)。
  6. 依存関係をインストールします(pnpm優先、npmフォールバック)。
  7. ビルド + Control UIのビルド。
  8. 「安全なアップデート」チェックとして openclaw doctor を実行。
  9. プラグインをアクティブチャンネルに同期し(devはバンドル拡張機能、stable/betaはnpmを使用)、npmインストール済みプラグインを更新。

--update ショートハンド

openclaw --updateopenclaw update にリライトされます(シェルやランチャースクリプト向け)。

関連項目