Claude Media
Claude CodeのautoUpdatesChannelでstableとlatestを選ぶ

Claude CodeのautoUpdatesChannelでstableとlatestを選ぶ

autoUpdatesChannelのstableとlatestの違い、minimumVersionが切り替え時のダウングレードを防ぐ仕組み、インストール方法ごとのチャネルの決まり方をまとめます。

autoUpdatesChannel は、Claude Codeの自動更新と claude update がどのリリースを追いかけるかを決める設定です。値は "latest"(既定)か "stable" の2つ。"stable" は約1週間遅れのバージョンに追従し、重大な回帰のあるリリースを飛ばします。

チャネルを切り替えるときの落とし穴は、新しい latest に乗っている状態で stable へ変えると、古いバージョンへ下がりかねない点です。これを防ぐのが minimumVersion で、/config から切り替えると自動で書き込まれます。

stableとlatestは何が違うのか

くらべる

2つのチャネルの追従先

既定

latest

最新リリースに追従します。新機能も新モデル対応も、出た時点で届きます。

約1週間遅れ

stable

通常は約1週間前のバージョンに追従し、重大な回帰のあるリリースは飛ばされます。

「約1週間」は公式の「typically」つきの目安で、何日遅れるかは固定ではありません。重大な回帰が見つかったリリースを飛ばすぶん、その時々で変わります。具体的なバージョンは、切り替えたあとの claude --version で確かめられます。

設定キーを書かなければ latest と同じ動きです。チャネルは settings.json に直接書くか、/config のAuto-update channelで選びます。

{
  "autoUpdatesChannel": "stable"
}

スコープは設定ファイルのどれでも指定できます。組織全体で同じチャネルに揃えたいときは、managed settingsに入れます。

stableに寄せると何を失うのか

遅れる分、新機能の到着も遅れます。とくに効くのが新モデルです。新しく公開されたモデルが、stableチャネルの配るバージョンより新しいClaude Codeを要求することがあります。公式の記載はこうです。

  • 新しいモデルは、stableが配信するバージョンより新しいClaude Codeを必要とする場合がある
  • そのモデルをすぐ使うなら、latestチャネルへ移る

つまり「stableで安定運用し、新モデルが出た週だけlatestに寄せる」という使い方が成り立ちます。逆に、新モデルの当日利用が仕事の前提になっているチームは、stableだと待たされる場面があります。

切り替えでダウングレードしないためのminimumVersion

latest から stable へ変えると、チャネルが指すバージョンが手元より古い場合があります。そこで minimumVersion が下限として働きます。バックグラウンドの自動更新と claude update は、この値より古いバージョンを入れません。

/config での挙動は次のとおりです。

手順

/config でlatestからstableへ切り替えたとき

  1. 1

    Auto-update channelを選ぶ

    /config を開き、Auto-update channelで stable を選びます。

  2. 2

    ダウングレードを許すか尋ねられる

    「ダウングレードを許可する」か「今のバージョンに留まる」かを選びます。

  3. 3

    留まると minimumVersion が入る

    留まる方を選ぶと、現在のバージョンが minimumVersion に書き込まれます。

  4. 4

    latestへ戻すと消える

    /config で latest に戻すと、autoUpdatesChannel のキーも minimumVersion も消えます。

手書きで両方を指定する場合の形は次のとおりです。

{
  "autoUpdatesChannel": "stable",
  "minimumVersion": "2.1.100"
}

minimumVersion に有効なバージョン番号でない値を入れると、無視されます。タイプミスで効いていない状態になるので、書いたあとは claude doctor の Auto-updates の行で状態を確かめられます。

自動で書かれる値と手書きの値の違い

/config 経由で書かれる minimumVersion は、その瞬間のバージョンです。stableが追いつけば、いずれ下限より新しいバージョンを配るようになります。下限を引き上げ続けたいわけではなく、「切り替えで下がらない」ことだけが目的の値です。/config で latest に戻したときに消えるのはこの自動で書かれた値で、手書きで入れた値まで消えるかどうかは、設定リファレンスに記載がありません。

手書きでは、実際に問題のなかったバージョンを下限に置く使い方もできます。ただし minimumVersion が拒否するのは自動更新と claude update だけです。起動そのものは止まりません。起動を止めたいなら、managed settings専用の requiredMinimumVersion を使います。違いの詳細はClaude Codeバージョンの確認・固定・ダウングレード手順にまとまっています。

managed settingsで組織のチャネルと下限を決める

autoUpdatesChannel も minimumVersion もmanaged settingsに置けます。組織向けの動きは2点です。

キーmanagedに置いたとき起動への影響
autoUpdatesChannelmanagedに置いたとき組織全体で1つのチャネルを強制できる起動への影響なし
minimumVersionmanagedに置いたとき組織全体の下限になり、ユーザー設定・プロジェクト設定では下げられない起動への影響なし(更新だけを縛る)
requiredMinimumVersionmanagedに置いたとき古いバージョンの起動を拒否する起動への影響あり(v2.1.163以降)
{
  "autoUpdatesChannel": "stable",
  "minimumVersion": "2.1.150"
}

「全員をstableに揃え、下限を割る更新だけは入れさせない」という最小構成がこれです。起動できるバージョンの範囲まで縛る場合は、requiredMinimumVersion と requiredMaximumVersion を足します。後者は、組織が許す最新バージョンを決めるキーで、上限を超えたバージョンは起動時に終了します。設定の置き場所や優先順位はmanaged settingsの導入ガイドで扱っています。

インストール方法によってチャネルの決まり方が違う

autoUpdatesChannel が効くのは、ネイティブインストールの自動更新と claude update です。ほかの経路は、設定キーではなく入れた側で決まります。

入れ方チャネルの決め方
ネイティブインストーラーチャネルの決め方autoUpdatesChannel。claude install stable / claude install latest も保存する
Homebrewチャネルの決め方claude-code のcaskがstable、claude-code@latest がlatest。キーは無視される
apt / dnf / apkチャネルの決め方リポジトリで選ぶ(stable用とlatest用のURLが別)
npmチャネルの決め方公式の記載はnpmの更新コマンド(@latest)のみで、チャネル指定の記述なし

aptでlatestへ移るには、URLのパスとsuite名の両方を latest に変えます。dnfは baseurl を、apkはリポジトリの行を差し替えます。

Homebrewでは claude update も brew upgrade に処理を委ねます。キーを書いても効かないので、「stableにしたはずなのにlatestのままだ」という場合は、まず入れたcaskを確認します。Homebrew固有の注意はHomebrewでのインストールにあります。

なお、Homebrew・WinGet・apt・dnf・apkの導入は、既定では自動更新されません。HomebrewとWinGetで自動更新を有効にするには、環境変数 CLAUDE_CODE_PACKAGE_MANAGER_AUTO_UPDATE を 1 にします。apt・dnf・apkは管理者権限が要るため、手動更新のままです。

ネイティブインストーラーでは、最初から stable を指定して入れられます。

curl -fsSL https://claude.ai/install.sh | bash -s stable

Windowsでは、PowerShellとCMDで stable の渡し方が違います。PowerShellは irm の結果をスクリプトブロックにして引数を渡します。CMDはインストーラーを保存して実行し、末尾に stable を付けます。

& ([scriptblock]::Create((irm https://claude.ai/install.ps1))) stable
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd stable && del install.cmd

macOS・Linux・WSLの bash -s stable も含め、インストール時に選んだチャネルは、以後の自動更新の既定として残ります。

切り替えたあとに確かめること

設定を書いただけでは、実際にどのバージョンが入っているかは分かりません。切り替えの前後で、次の3つを控えておくと状況を追えます。

claude --version
claude doctor
claude update

claude --version は今動いているバージョンです。claude doctor は直近の更新結果と Auto-updates の行を表示します。claude update は、バックグラウンドのチェックを待たずに更新を適用します。成功すると Successfully updated from <旧> to version <新> と出て、すでに最新なら Claude Code is up to date (<version>) と出ます。Homebrew、WinGet、apkの導入では Claude is up to date! という別の文言です。

更新はバックグラウンドでダウンロードとインストールまで済み、反映されるのは次に起動したときです。チャネルを変えた直後に走っているセッションのバージョンは変わりません。

stableに乗ったあとで特定のバージョンへ戻す、あるいはバージョンを固定する必要が出たときは、claude install <バージョン> と minimumVersion の使い分けが別の話になります。チャネルは「どこを追うか」、固定は「どこで止めるか」と切り分けると混ざりません。

チャネルを揃える前に確認したい前提

チーム展開では、メンバーの導入経路がそろっているとは限りません。ネイティブインストーラー、Homebrew、aptが混在していれば、managed settingsの autoUpdatesChannel が効くのはネイティブ導入の端末だけです。

また、autoUpdatesChannel はmanagedに置くと組織全体で強制できる一方、requiredMinimumVersion と requiredMaximumVersion はmanaged専用で、ほかのスコープに書いても警告なしで無視されます。置き場所を間違えて「効いていない」と気づくまでに時間がかかる点は、設定の確認手順に含めておくと見落としを防げます。

自動更新そのものを止めたいとき

チャネルは「何に追従するか」を選ぶ設定で、追従をやめる設定ではありません。更新自体を止めるには、settings.json の env に DISABLE_AUTOUPDATER を "1" で入れます。これはバックグラウンドの更新チェックを止めるだけで、claude update と claude install は動きます。手動の更新まで塞ぐなら DISABLE_UPDATES です。止めた状態の確認は claude doctor の Auto-updates の行で行います。autoUpdates: false を書いても止まらなかったという報告についてはautoUpdatesが効かない件の整理にあります。

どのチャネルを選ぶかの目安

選び方

状況別のチャネルの選び方

  • 新機能・新モデルを当日使いたい

    latest(既定)のままにします。キーは不要です。

  • 退行で作業が止まるのを避けたい

    stableを選び、/config から切り替えて現在のバージョンに留まります。

  • チーム全員を同じ条件に揃えたい

    managed settingsに autoUpdatesChannel と minimumVersion を入れます。

  • 起動できる範囲まで縛りたい

    requiredMinimumVersion と requiredMaximumVersion を使います。

この記事を共有:XはてブLinkedIn