Model configuration
概要
Claude Code で使うモデルの選択方法、モデルエイリアス、effort level、extended thinking、extended context、および組織による制限の設定。
仕様
指定できる値
model 設定にはモデルエイリアス、またはモデル名を指定する。
- Anthropic API: 完全なモデル名
- Amazon Bedrock: inference profile ARN
- Microsoft Foundry: deployment name
- Google Cloud's Agent Platform: version name
ANTHROPIC_BASE_URL はリクエストの送信先を変えるだけで、どのモデルが答えるかは変えない。
モデルエイリアス
| エイリアス | 挙動 |
|---|---|
default | モデルの上書きを解除し、アカウント種別の推奨モデル(管理者が設定していれば organization default model)に戻す特別な値。エイリアス自体ではない |
best | 組織が Fable 5 にアクセスできる場合は Fable 5、そうでなければ最新の Opus |
fable | Claude Fable 5 |
sonnet | 最新の Sonnet |
opus | 最新の Opus |
haiku | 高速で効率的な Haiku |
sonnet[1m] | 1M トークンのコンテキストウィンドウを持つ Sonnet。sonnet が既にネイティブ 1M の Sonnet 5 に解決される場合は効果が無い。LLM gateway の背後では Sonnet 5 の 1M ウィンドウを選ぶ |
opus[1m] | 1M トークンのコンテキストウィンドウを持つ Opus |
opusplan | plan mode では opus、実行では sonnet に切り替える特別なモード |
opus と sonnet の解決先はプロバイダに依存する。
| プロバイダ | opus | sonnet |
|---|---|---|
| Anthropic API | Opus 5 | Sonnet 5 |
| Claude Platform on AWS | Opus 5 | Sonnet 4.6 |
| Amazon Bedrock, Google Cloud's Agent Platform | Opus 5 | Sonnet 4.5 |
| Microsoft Foundry | Opus 4.6 | Sonnet 4.5 |
- エイリアスが古いモデルに解決される場合、完全なモデル名の指定、または
ANTHROPIC_DEFAULT_OPUS_MODEL/ANTHROPIC_DEFAULT_SONNET_MODELの設定で新しいモデルを使える - エイリアスはプロバイダごとの推奨版を指し、時間とともに更新される。固定するには完全なモデル名か対応する環境変数を使う
- Opus 5 は v2.1.219 以降、Sonnet 5 は v2.1.197 以降、Opus 4.8 は v2.1.154 以降が必要
Fable 5
- 既定モデルではない。
/model fableで選ぶ - 安全性 classifier がフラグを立てたリクエスト(多くはサイバーセキュリティと生物学)は automatic model fallback を起こす
- v2.1.170 以降が必要。zero data retention 下では利用できず、
/modelピッカーで省略されるか無効表示になる - Anthropic API では、サーバーが組織向けに利用可能と報告してから
/modelピッカーに載る。/model fableと入力するとサーバーに直接確認するため、ピッカーに載る前でも選択が成功しうる
モデルの設定方法(優先順)
- セッション中:
/model <alias|name>で即座に切り替える、または引数なしでピッカーを開く - 起動時:
claude --model <alias|name> - 環境変数:
ANTHROPIC_MODEL=<alias|name> - Settings: settings ファイルの
modelフィールド
- v2.1.153 以降、
/modelは user settings のmodelフィールドに書き込み、新規セッションの既定として保存する。ピッカーではEnterが切り替え+既定保存、sがそのセッションのみ /model <name>を直接入力するとEnterと同じ挙動。-pの非対話モードで設定したモデルは現在のセッションのみで既定として保存されない- project settings と managed settings は引き続き優先され、次の起動で再適用される
--modelフラグとANTHROPIC_MODELは起動したセッションにのみ適用される。同時に別ターミナルで別モデルを動かすには、それぞれ--modelを付けて起動する- ピッカーの価格表示は Anthropic API と直接、またはそれをプロキシする LLM gateway 経由で通信しているときに出る。第三者プロバイダと Claude apps gateway では価格を表示しない。表示ラベルであり選択や請求には影響しない
claude --resume/--continue//resumeで resume したセッションは、現在のmodel設定に関わらずトランスクリプト保存時のモデルを保つ。復元対象のモデルが引退済みかavailableModelsで除外されている場合は通常の優先順位に落ちる。プロバイダ固有のデプロイ ID を使うプロバイダ(Amazon Bedrock、Google Cloud's Agent Platform、Microsoft Foundry)ではトランスクリプトのモデルは復元されない--model/ANTHROPIC_MODELは復元モデルより優先される。v2.1.195 以降、ANTHROPIC_DEFAULT_OPUS_MODEL系のファミリー変数も同様- 起動時のモデルが自分の選択ではなく project / managed settings 由来の場合、起動ヘッダーがどの settings ファイルで設定されたかを示す
- Agent SDK の
setModel()やホストアプリからのモデル切り替え要求では、保存前に文字列が認識可能かを確認する(v2.1.200 以降、Anthropic API のみ)。認識するのはモデルエイリアス、/modelピッカーのエントリ、claude-で始まる名前、ANTHROPIC_CUSTOM_MODEL_OPTIONやmodelOverridesで自分が設定した値。認識できない文字列はModel "<name>" is not a recognized model id.で拒否され、セッションは現在のモデルを保つ - リクエストしたモデルに引退予定日があるか自動的に新版へ remap される場合、要求したモデル名を挙げた警告が出る。対話セッションでは起動時通知、v2.1.182 以降は既定のテキスト出力の非対話モードで stderr にも出る。
--output-format json/stream-jsonでは抑止されるので result メッセージのmodelUsageから実際のモデルを読む
availableModels(モデル選択の制限)
- managed / policy settings で選択可能なモデルを制限する。エントリはモデルファミリー(
sonnet)、バージョン接頭辞(claude-sonnet-4-5)、完全なモデル ID(claude-sonnet-4-5-20250929)に一致する
適用範囲:
-
メインセッションのモデル:
/model、--model、ANTHROPIC_MODEL、model設定、resume 時に復元されるモデル -
エイリアス解決:
ANTHROPIC_DEFAULT_OPUS_MODEL/_SONNET_/_HAIKU_/_FABLE_MODELは許可されたエイリアスをリスト外のモデルへ向け直せない -
Fast mode: リスト外の Opus へ暗黙に切り替わる場合
/fastはトグルを拒否し「is not in your organization's allowed models」と表示する -
subagent と teammate のモデル: subagent frontmatter の
model、Agent ツールのmodelパラメータ、agent team の teammate モデル(teammateDefaultModel設定を含む)、CLAUDE_CODE_SUBAGENT_MODEL -
skill / command のモデル: skill と command の
modelfrontmatter -
Advisor モデル:
advisorModel設定と--advisorフラグ -
Background agent モデル: dispatch ピッカーで選んだモデル
-
Anthropic API と Claude Platform on AWS では、ファミリーエイリアス(
opus/sonnet/haiku/fable)は allowlist が許す最新版に解決される。両方のモデル名を挙げた通知が出る。許可されるバージョンが 1 つも無い場合は、他のブロック値と同じ扱いになる -
Amazon Bedrock / Google Cloud's Agent Platform / Microsoft Foundry / Mantle はプロバイダ固有 ID を使うため、ブロックされたエイリアスはこの置換ではなく下記の扱いになる
ブロックされた選択の扱い:
/model: エラーで拒否される--model/ANTHROPIC_MODEL/model設定: 起動時に置換され、要求したモデルと置換後のモデルを挙げた警告が出て、既定モデルで開始する- subagent / teammate の上書き: リクエストを失敗させず、subagent の継承モデルまたは既定 teammate モデルにフォールバックする
- skill / command の上書き: 上書きを無視してセッションのモデルで動く。subagent で動く skill / command は subagent の挙動に従う
advisorModel設定: そのセッションでは advisor を無効にする--advisorフラグ: 起動時にエラー終了する
Claude Code 自身が行うモデル変更も同様に確認される。
-
Fallback model chains: allowlist 外のエントリは落とされる
-
Plan-mode upgrades: Anthropic API と Claude Platform on AWS では、
opusplanなどのアップグレード先が除外されている場合、そのファミリーで許可された最新版を使う。プロバイダ固有 ID のプロバイダ、および許可バージョンが 1 つも無い場合はアップグレードを飛ばす -
Automatic model fallback: 対象が除外されている場合フォールバックせず、フラグの付いたリクエストは拒否で終わる
-
Auto mode classifier: Sonnet 5 の既定は allowlist が Sonnet 5 を許すときだけ適用される。除外されている場合はセッションのモデル、Fable 5 セッションでは Opus モデルで動く(v2.1.210 以降)
-
Fast mode: 有効化後に動くことになるモデルが allowlist 外なら拒否される
-
除外されたモデルは
/modelピッカーから隠れる。組み込みのピッカー行が無い完全なモデル ID をリストに入れると、独自のラベル付き行として現れる(v2.1.199 以降) -
空の
availableModels: []では、名前付きのモデル選択はブロックされるが、アカウント種別の Default モデルはenforceAvailableModelsに関わらず引き続き使える
enforceAvailableModels
- 非空の
availableModelsとともに managed settings でtrueにすると、allowlist が Default 選択肢にも及ぶ。v2.1.175 以降が必要 - Default はアカウント種別の既定(管理者が設定していれば organization default model)に解決される。それが allowlist に無い場合、Default は許可され利用可能なモデルを指す最初の
availableModelsエントリに解決され、/modelピッカーの Default 行にそのモデルが表示される - 適用される場所: セッション起動時、
/modelでの Default 選択、fallback model chains の"default"キーワード、除外された選択が落とされたときのフォールバック availableModelsが未設定または空のときは効果が無いavailableModelsが非空でも、許可され利用可能なモデルに解決されるエントリが 1 つも無い場合は enforcement がスキップされ、Default はアカウント種別の既定に解決される(警告は--debugでのみ見える)- 両キーは最も優先度の高い managed ソースに配置する。これらのキーは managed ソース間でマージされないため、admin console が何らかの settings を配布している場合、managed settings ファイルに置いたペアは無視される
マージの挙動
- 最も優先度の高い managed settings ソースが
availableModelsを定義している場合、そのリストのみが適用される。user / project / local settings のエントリは拡張できず、admin が配布した managed ソース間でもマージされない - そうでない場合、user / project / local settings のリストは他の配列設定と同様に連結・重複排除される。v2.1.175 以降、managed リストは下位のエントリを置き換える(それ以前はマージしていた)
- 実効リスト内では、ファミリー内の特定モデルを指すエントリ(バージョン接頭辞または完全なモデル ID)がそのファミリーのワイルドカードエントリを無効にする。
["sonnet", "claude-sonnet-4-5"]は Sonnet 4.5 系のみを許可する
組織によるモデル制限と既定モデル
- Claude Enterprise プランの管理者は claude.ai の admin console で個々のモデルを無効化できる。この制限は認証時にアカウントのエンタイトルメントとともに配信され、
availableModelsとは別。サーバーもセッション作成時に同じ制限を独立して強制する。v2.1.187 以降が必要 - メンバーがサインインするか自分の API キーを使う場合に適用される。組織スコープの認証情報(組織サービスキーなど)はユーザーに紐づかないため適用されない
- 制限されたモデルは
/modelピッカーから隠れる。--model/ANTHROPIC_MODEL/model設定で名前指定するとModel "<name>" is restricted by your organization's settings. Using <model> instead.を表示し許可モデルで開始する。/model <name>はModel '<name>' is restricted by your organization's settings. Run /model to choose a different model.で拒否される - 組織全体またはロール単位で適用される。Haiku モデルは常に利用可能で無効化できない。変更は約 1 分で新しいリクエストに反映され、
/modelピッカーは次のセッション開始時に反映する - Anthropic API と LLM gateway デプロイのセッションに配信される。Amazon Bedrock / Google Cloud's Agent Platform / Microsoft Foundry / Claude Platform on AWS には配信されない
- ただし MDM や managed settings ファイルで配った
availableModelsallowlist は、第三者プロバイダを使う場合でも適用される(server-managed settings がそこへ配信されないだけ)
organization default model:
- Claude Enterprise プランの管理者が Claude Code メンバー向けの既定モデルを組織全体またはカスタムロール単位で設定できる。v2.1.196 以降が必要
/modelピッカーの Default 行に Org default のラベル付きで名前が表示される。ロール既定は組織全体の既定より優先され、複数ロールが異なる既定を設定している場合は最も高性能なモデルが適用される- 出発点であり制限ではない。
--model、ANTHROPIC_MODEL、managed settings や--settingsのmodel、user / project / local settings のmodel(/modelで保存したものを含む)が優先される - 管理者はユーザー選択を上書きするよう設定できる。その場合 user / project / local settings の
modelより優先され、/modelで保存したモデルは現在のセッションに適用され次の起動で組織既定に戻る。/modelはYour organization's default (<model>) applies on restartを表示する - 起動時に一度だけ読まれる。セッション中に管理者が変更しても次の起動から有効になる
default の解決先
| アカウント種別 | 既定 |
|---|---|
| Max、Team Premium、Enterprise pay-as-you-go、Anthropic API | Opus 5 |
| Claude Platform on AWS、Amazon Bedrock、Google Cloud's Agent Platform | Opus 5 |
| Pro、Team Standard、Enterprise subscription seats | Sonnet 5 |
| Microsoft Foundry | Sonnet 4.5 |
- 管理者が organization default model を設定している場合はそちらに解決される
- managed settings が Default に allowlist を強制していて、アカウント種別の既定がリストに無い場合は強制後の Default に解決される
- Fable 5 はどのアカウント種別でも既定モデルではない
opusplan
- plan mode では
opus、実行モードでは自動的にsonnetに切り替える - plan mode の Opus フェーズは
opus設定と同じコンテキストウィンドウを使う。Opus が自動的に 1M へアップグレードされるサブスクリプション階層では plan mode でもアップグレードを受ける。自動アップグレード階層でない場合に両フェーズで 1M を強制するにはopusplan[1m] availableModelsが最新 Opus を除外し古い版を許可している場合、opusplanは許可された最新の Opus で計画する。Opus がすべて除外されている場合のみ Sonnet に留まる
Fallback model chains
- 主モデルが過負荷・利用不可、またはその他の再試行不可のサーバーエラーを返したとき、リクエストを失敗させずフォールバックモデルへ切り替える
- 認証・課金・レート制限・リクエストサイズ・トランスポートのエラーでは切り替えない
- 切り替えは現在のターンのみ。次のメッセージは再び主モデルから試す
- 重複排除後、チェーンは最大 3 モデル。超過分は無視される
--fallback-modelはカンマ区切りのリストを受け付け、fallbackModel設定(配列)より優先される。各エントリはモデル名かエイリアスで、"default"は既定モデルに展開される- 起動時にチェーンの確認は行われず、
/statusにも表示されない - チェーンから事前に除かれるもの:
availableModelsで許可されないエントリ、compaction 時に主モデルよりコンテキストウィンドウが小さいモデル(すべてのフォールバックが小さい場合、compaction は元のエラーを表示する)
Automatic model fallback(内容ベース)
- Fable 5 と Opus 5 はサイバーセキュリティと生物学のコンテンツに対する安全性 classifier とともに動く。classifier がフラグを立て、そのカテゴリにフォールバックモデルがある場合、そのモデルでリクエストを再実行しトランスクリプトに通知を表示する
- Fable 5: 生物学フラグは Opus 5、サイバーセキュリティフラグは Opus 4.8 で再実行
- Opus 5: サイバーセキュリティフラグは Opus 4.8 で再実行。生物学フラグは拒否で終わる(Opus 5 は独自の生物学 classifier を持ちフォールバック先が無いため)
- フォールバック後、セッションはフォールバックモデルで継続する。元に戻すには
/model - カテゴリ別フォールバックは v2.1.219 以降が必要
- フォールバック先は
availableModelsと照合される。ブロックされている場合フォールバックは起きず、拒否が通常のエラーとして表示されセッションのモデルは変わらない - 最初のリクエストはワークスペースのコンテキスト(CLAUDE.md の内容、git status)を含むため、何も特別な入力をしていなくてもフォールバックが起きうる。カスタマイズが原因か確認するには
claude --safe-modeで起動する(git status とディレクトリ名はカスタマイズではないため含まれ続ける) - 毎回切り替えるのではなく都度決めるには、
/configの Switch models when a message is flagged をオフにするかswitchModelsOnFlagをfalseにする。フラグの付いたリクエストでセッションが一時停止し、フォールバックモデルへ切り替えるか、プロンプトを編集して現在のモデルで再試行するかを選べる- フォールバック先が無いカテゴリではプロンプトは出ず拒否で終わる
- 非対話モードとプロンプトを表示できない SDK 統合では、フラグの付いたリクエストは拒否でターンを終える
- モバイルの Claude Code on the web セッションでは、プロンプトの編集と再試行に非対応。モデルを切り替えるか、デスクトップのブラウザ・アプリからセッションを続ける
- Amazon Bedrock / Google Cloud's Agent Platform / Microsoft Foundry ではモデル ID がプロバイダ固有のため、関与する両モデルを Claude Code が識別できる場合にのみ automatic fallback が働く。 識別できない場合は自動で切り替わらず、フラグの付いたリクエストは拒否で終わる(
/modelで切り替えて再試行する)- 現在のモデルをフォールバック元として認識する条件: Fable 5 はモデル ID に
claude-fable-5を含む、ANTHROPIC_DEFAULT_FABLE_MODELの値に一致する、modelOverridesでマップされている、のいずれか。Opus 5 はプロバイダのモデル ID かmodelOverridesのマッピングで認識される - フォールバック先もデプロイ内で解決できる必要がある。
ANTHROPIC_DEFAULT_OPUS_MODELを設定するとフォールバックのある全カテゴリがそのモデルで再実行される(Opus 5 の生物学フラグは依然として拒否)。未設定ならサイバーセキュリティフラグはプロバイダのモデル一覧の Opus 4.8 エントリ、Fable 5 の生物学フラグは Opus 5 エントリで再実行される
- 現在のモデルをフォールバック元として認識する条件: Fable 5 はモデル ID に
effort level
| モデル | 水準 |
|---|---|
| Fable 5 | low, medium, high, xhigh, max |
| Opus 5, Sonnet 5, Opus 4.8, Opus 4.7 | low, medium, high, xhigh, max |
| Opus 4.6, Sonnet 4.6 | low, medium, high, max |
- ここに無いモデルは effort をサポートしない
- サポートしない水準を設定すると、指定以下でサポートされる最も高い水準にフォールバックする(Opus 4.6 では
xhighがhighとして動く) - 既定は effort をサポートする全モデルで
high。ただし Opus 4.7 はxhigh - Fable 5 / Opus 4.8 / Opus 4.7 を初めて動かすとき、以前に別モデルで設定した水準があってもそのモデルの既定 effort が適用され、
/effortや--effortで明示的に選ぶまでセッションをまたいで保持される。Opus 5 にこの hold は無い low/medium/high/xhighは対話セッションで設定するとセッションをまたいで保持される。maxは現在のセッションのみ(CLAUDE_CODE_EFFORT_LEVELで設定した場合を除く)-pの非対話モードで/effortを使うと現在のセッションのみに適用され既定として保存されない。モデル既定の hold 中はNot appliedを報告するため、起動時に--effortを渡す
ultracode:
- モデルの effort level ではなく Claude Code の設定。モデルには
xhighを送り、加えて実質的なタスクで dynamic workflows を Claude に指揮させる。現在のセッションのみ - 有効化:
/effort ultracodeまたはメニューから選択、claude --effort ultracode(xhighで開始し ultracode をオン)、--settingsや Agent SDK の control request で"ultracode": true --effortと Agent SDK のeffortLevelへのultracode指定は v2.1.203 以降が必要- 永続化される
effortLevel設定とCLAUDE_CODE_EFFORT_LEVEL環境変数はultracodeを受け付けない。CLAUDE_CODE_EFFORT_LEVELがxhigh以外に設定されていると、その水準で動き ultracode の workflow 指揮は非アクティブになる - workflows を切っているなど ultracode が使えない場合、
--effort ultracodeはxhighの設定のみになる
設定方法:
-
/effort(引数なしでスライダー、水準名で直接設定、autoでモデル既定へリセット) -
/model内で左右矢印キー -
--effortフラグ -
環境変数
CLAUDE_CODE_EFFORT_LEVEL(水準名またはauto) -
settings の
effortLevel(low/medium/high/xhigh。maxとultracodeは session-only で受け付けない) -
skill と subagent の frontmatter の
effort -
優先順位: 環境変数 > 設定した水準 > モデル既定。frontmatter の effort はその skill / subagent がアクティブな間、セッションの水準を上書きするが環境変数は上書きしない
-
managed settings の
effortLevelは出発点であり強制ではない。ユーザーは/effortや--effortでセッション単位に変更でき、managed の値は新規セッションで既定として再適用される -
組織の管理者はカスタムロールごとにモデル別の最大 effort level を設定できる。上限を超える水準は
/effortピッカーに出ず、--effortや/effortで高い水準を指定しても上限で動く。対話セッションとプレーンテキストの--printでは要求と適用の水準を挙げた警告が出る。json/stream-json出力とバックグラウンド agent では静かに clamp される。v2.1.195 以降が必要
ultrathink
- プロンプトのどこかに
ultrathinkを含めると、セッションの effort 設定を変えずにそのターンだけ深い推論を要求できる。Claude Code がキーワードを認識して in-context の指示を追加する。API に送る effort level は変わらない - 「think」「think hard」「think more」などの語句は通常のプロンプトテキストとして通され、キーワードとしては認識されない
extended thinking
| 制御 | 方法 |
|---|---|
| 現在のセッションのトグル | macOS は Option+T、Windows / Linux は Alt+T |
| グローバル既定 | /config で thinking mode をトグルする。~/.claude/settings.json に alwaysThinkingEnabled として保存される |
| effort に関わらず無効化 | MAX_THINKING_TOKENS=0。Anthropic API では Fable 5 を除き thinking をオフにする。第三者プロバイダでは thinking パラメータを省略するだけで、adaptive-reasoning のモデルは思考しうる。それ以外の値は fixed thinking budget のときのみ適用される |
- Fable 5 では thinking をオフにできない。セッションのトグル、
alwaysThinkingEnabled、MAX_THINKING_TOKENS=0はいずれも効果が無い - thinking の出力は既定で畳まれる。
Ctrl+Oで verbose モードにすると灰色斜体で推論が見える - Anthropic API の対話セッションは既定で redacted thinking ブロックを受け取る。展開時に完全な要約を見たい場合は settings で
showThinkingSummaries: trueを設定する - 畳まれていても redact されていても、生成された thinking トークンは課金される
adaptive reasoning と fixed thinking budget
- Fable 5、Sonnet 5、Opus 4.7 以降は常に adaptive reasoning を使う。fixed thinking budget モードと
CLAUDE_CODE_DISABLE_ADAPTIVE_THINKINGは適用されない - Opus 4.6 と Sonnet 4.6 では
CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1でMAX_THINKING_TOKENSが制御する従来の fixed thinking budget に戻せる
extended context(1M トークン)
- Fable 5、Sonnet 5、Opus 4.6 以降、Sonnet 4.6 が 1M トークンのコンテキストウィンドウに対応する
- Anthropic API では Fable 5、Sonnet 5、Opus 4.7 以降は常に 1M で動く
| プラン | Opus の 1M | Sonnet 4.6 の 1M |
|---|---|---|
| Max, Team, Enterprise | サブスクリプションに含まれる | usage credits が必要 |
| Pro | usage credits が必要 | usage credits が必要 |
| API, pay-as-you-go | フルアクセス | フルアクセス |
CLAUDE_CODE_DISABLE_1M_CONTEXT=1で 1M コンテキストを完全に無効化する(1M のモデル variant がピッカーから消える)- 1M ウィンドウは標準のモデル価格で、200K を超えるトークンに割増は無い
[1m]接尾辞はエイリアスにも完全なモデル名にも付けられる(/model opus[1m]、/model claude-opus-4-8[1m])
Sonnet 5 のコンテキストウィンドウ:
- Anthropic API では常に 1M で動く。200K の variant も選択する
[1m]接尾辞も無く、どのプランでも usage credits は不要 - 既定では約 967K トークンでウィンドウが埋まる前に auto-compact する。閾値は
CLAUDE_CODE_AUTO_COMPACT_WINDOWで変える - 200K として扱われる 2 つの構成:
ANTHROPIC_BASE_URLが gateway を指す場合(フルウィンドウを使うにはピッカーで Sonnet 5 (1M context) を選ぶ。sonnet[1m]にマップされる)、CLAUDE_CODE_DISABLE_1M_CONTEXT=1
カスタムモデル選択肢
ANTHROPIC_CUSTOM_MODEL_OPTIONで組み込みのエイリアスを置き換えずに/modelピッカーへエントリを 1 つ追加するANTHROPIC_CUSTOM_MODEL_OPTION_NAMEとANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTIONは任意。省略時はモデル ID が名前になり、説明はCustom model (<model-id>)になる- 環境変数は起動時に読まれるため、
claudeの起動前に export するか既存セッションを再起動する ANTHROPIC_CUSTOM_MODEL_OPTIONのモデル ID は検証をスキップするavailableModelsを設定している場合はカスタムモデル ID も allowlist に入れる。ファミリー名を含むカスタム ID はそのファミリーの specific entry として数えられワイルドカードを無効にする
モデル関連の環境変数
| 環境変数 | 説明 |
|---|---|
ANTHROPIC_DEFAULT_FABLE_MODEL | fable に使うモデル。第三者プロバイダで automatic model fallback のために Fable 5 と認識されるモデル ID |
ANTHROPIC_DEFAULT_OPUS_MODEL | opus、および plan mode 中の opusplan に使うモデル |
ANTHROPIC_DEFAULT_SONNET_MODEL | sonnet、および plan mode でないときの opusplan に使うモデル |
ANTHROPIC_DEFAULT_HAIKU_MODEL | haiku、およびバックグラウンド機能に使うモデル |
CLAUDE_CODE_SUBAGENT_MODEL | すべての subagent、agent team、workflow の agent に使うモデル。エイリアスまたは完全なモデル名。呼び出しごとの model パラメータと subagent 定義の model frontmatter を上書きする。inherit で通常のモデル解決に戻す |
ANTHROPIC_SMALL_FAST_MODELはANTHROPIC_DEFAULT_HAIKU_MODELに置き換えられ非推奨
第三者デプロイでのモデル固定:
- 固定しない場合、エイリアスはプロバイダごとの組み込み既定モデル ID に解決される。その既定は最新の Anthropic リリースに遅れることがあり、ユーザーのアカウントで有効化されていない場合もある。既定が利用できないとき、Amazon Bedrock と Google Cloud's Agent Platform のユーザーには通知が出て、既定モデルの古い版(既定が Opus でどの Opus も無い場合は既定 Sonnet)にフォールバックする。Microsoft Foundry には同等の起動時チェックが無いためエラーになる
- Amazon Bedrock と Google Cloud's Agent Platform では、
--model/ANTHROPIC_MODEL/model設定で特定バージョンの Sonnet / Opus を指定して開始すると、そのバージョンがそのエイリアスのセッション既定として固定され、起動時チェックは組み込み既定を飛ばして通知も出さない(v2.1.211 以降) - 固定したモデルで extended context を有効にするには、
ANTHROPIC_DEFAULT_OPUS_MODEL/ANTHROPIC_DEFAULT_SONNET_MODELのモデル ID に[1m]を付ける。Claude Code はプロバイダへ送る前に接尾辞を取り除く。接尾辞は変数ごとに読まれ、モデルごとではない
固定モデルの表示と capability:
_NAME/_DESCRIPTION/_SUPPORTED_CAPABILITIESの接尾辞がANTHROPIC_DEFAULT_OPUS_MODEL/_SONNET_/_HAIKU_/_FABLE_MODEL/ANTHROPIC_CUSTOM_MODEL_OPTIONで使える- 第三者プロバイダで有効。
_NAMEと_DESCRIPTIONはANTHROPIC_BASE_URLが LLM gateway を指す場合にも有効。api.anthropic.comに直接つなぐ場合は効果が無い
| capability 値 | 有効にするもの |
|---|---|
effort | effort level と /effort コマンド |
xhigh_effort | xhigh の effort level |
max_effort | max の effort level |
thinking | extended thinking |
adaptive_thinking | タスクの複雑さに応じて thinking を動的に割り当てる adaptive reasoning |
interleaved_thinking | ツール呼び出しの間の thinking |
_SUPPORTED_CAPABILITIESを設定すると、列挙した capability が有効になり列挙していないものは無効になる。未設定ならモデル ID に基づく組み込みの検出にフォールバックする
modelOverrides
- 個々の Anthropic モデル ID を、プロバイダ API へ送るプロバイダ固有の文字列にマップする
- キーは Models overview に載っている Anthropic モデル ID。日付付きのモデル ID は日付接尾辞もそのとおりに含める。未知のキーは無視される
/modelピッカーの各エントリを裏で支える組み込みモデル ID を置き換える。Amazon Bedrock では起動時に自動検出される inference profile より優先される。既にプロバイダネイティブな値(Bedrock の ARN、Foundry の deployment 名)はそのまま渡される--model、ANTHROPIC_MODEL、ANTHROPIC_DEFAULT_*_MODELで Anthropic モデル ID を直接渡した場合にも適用される(v2.1.200 以降)availableModelsと併用できる。allowlist は override 後の値ではなく Anthropic モデル ID に対して評価される- managed settings に
availableModelsが設定されている場合、--modelや上記の環境変数で直接渡した Anthropic モデル ID に適用されるのは、その managed ソースのmodelOverridesのみ(v2.1.200 以降)
prompt caching の無効化
| 環境変数 | 説明 |
|---|---|
DISABLE_PROMPT_CACHING | 1 で全モデルの prompt caching を無効化する。モデル別の設定より優先される |
DISABLE_PROMPT_CACHING_HAIKU | Haiku のみ無効化 |
DISABLE_PROMPT_CACHING_SONNET | Sonnet のみ無効化 |
DISABLE_PROMPT_CACHING_OPUS | Opus のみ無効化 |
DISABLE_PROMPT_CACHING_FABLE | Fable のみ無効化 |
現在のモデルの確認
- 設定していれば status line
/status(アカウント情報も表示する)
設定
claude --model opus
claude --fallback-model sonnet,haiku
export ANTHROPIC_DEFAULT_OPUS_MODEL='us.anthropic.claude-opus-4-8'
export ANTHROPIC_DEFAULT_OPUS_MODEL='claude-opus-4-8[1m]'
export ANTHROPIC_CUSTOM_MODEL_OPTION="my-gateway/claude-opus-5"
{
"model": "claude-sonnet-4-5",
"availableModels": ["claude-sonnet-4-5", "haiku"],
"enforceAvailableModels": true,
"env": {
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-5"
}
}
{
"fallbackModel": ["claude-sonnet-5", "claude-haiku-4-5"]
}
{
"modelOverrides": {
"claude-opus-4-7": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-prod",
"claude-sonnet-4-6": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/sonnet-prod"
}
}
制約・注意点
model設定は初期選択であり強制ではない。ユーザーは/modelで Default を選べ、enforceAvailableModelsが向け直さない限り Default はランタイム既定に解決される- 第三者プロバイダへ展開する場合、ユーザーに配る前にモデルバージョンを固定する
- effort のスケールはモデルごとに較正されているため、同じ水準名がモデル間で同じ内部値を意味するわけではない
関連
facts/claude-code/settings.mdfacts/claude-code/env-vars.mdfacts/claude-code/cli-reference.mdfacts/claude-code/commands.mdfacts/claude-code/sub-agents.mdfacts/claude-code/skills.mdfacts/claude-code/context-window.mdfacts/claude-code/costs.mdfacts/claude-code/permission-modes.md