Claude Code のモデル設定: /model・opusplan・effort の使い方

Claude Code エンジニアリング 6分で読めます

Claude Code は、どのモデルで応答するかを sonnet や opus といったエイリアス、またはモデルの正式名で切り替えられます。この記事では、公式ドキュメント「Model configuration」をもとに、/model と --model の使い分け、設定の優先順位、計画だけ Opus に任せる opusplan、推論の深さを決める effort(エフォート)の調整までをまとめます。

モデルエイリアスの種類

Claude Code の model 設定には、モデルエイリアスかモデル名のどちらかを指定します。モデル名は Anthropic API なら正式なモデル名(例: claude-opus-5-5)、Amazon Bedrock なら推論プロファイルの ARN、Microsoft Foundry ならデプロイ名です。エイリアスを使うと、バージョン番号を覚えなくても用途に合ったモデルを選べます。

エイリアス動作
defaultモデルの上書きを解除し、アカウント種別ごとの既定モデルに戻す特別な値(それ自体はエイリアスではない)
sonnet日常のコーディング向けの最新 Sonnet
opus複雑な推論向けの最新 Opus
haiku単純な作業向けの高速な Haiku
fable長時間かかる難しい作業向けの Fable モデル
bestFable が使える環境では fable と同じモデル、使えなければ opus と同じモデル
sonnet[1m] / opus[1m]100 万トークンのコンテキストウィンドウで使う
opusplanプランモード中は opus、実行時は sonnet に切り替える特別なモード

エイリアスが指すバージョンはプロバイダーごとに異なり、時期によって更新されます。公式ドキュメント(確認日 2026-09-28)では、Anthropic API の場合 opus は Opus 5.5、sonnet は Sonnet 5 を指し、Amazon Bedrock や Google Cloud では sonnet が Sonnet 4.5 を指すなど差があります。特定のバージョンに固定したいときは、claude-opus-5-5 のように正式名を指定するか、ANTHROPIC_DEFAULT_OPUS_MODEL などの環境変数でエイリアスの行き先を決めます。

環境変数決めるもの
ANTHROPIC_DEFAULT_OPUS_MODELopus、およびプランモード中の opusplan が使うモデル
ANTHROPIC_DEFAULT_SONNET_MODELsonnet、およびプランモード以外の opusplan が使うモデル
ANTHROPIC_DEFAULT_HAIKU_MODELhaiku とバックグラウンド処理が使うモデル
ANTHROPIC_DEFAULT_FABLE_MODELfable が使うモデル
CLAUDE_CODE_SUBAGENT_MODELモデルを個別に指定していないサブエージェントなどの既定モデル

モデルを指定する方法と優先順位

モデルは次の5通りで指定でき、上にあるものほど優先されます。

  1. セッション中: /model <エイリアスまたは名前> ですぐに切り替える。引数なしの /model で選択画面(ピッカー)を開く
  2. 起動時: claude --model <エイリアスまたは名前> で起動する
  3. 環境変数: ANTHROPIC_MODEL=<エイリアスまたは名前> を設定する
  4. 設定ファイル: settings の model フィールドに書いて恒久的に使う
  5. 新規セッションの既定: ANTHROPIC_DEFAULT_MODEL=<エイリアスまたは名前> を設定する(v2.1.236 以降)

たとえば Opus で起動し、途中で Sonnet に切り替えるには次のようにします。

claude --model opus
/model sonnet

設定ファイルに書く場合の例です。

{
  "permissions": {
    "allow": ["Bash(npm run lint)"]
  },
  "model": "opus"
}

/model は既定値として保存される

/model で選んだモデルは、ユーザー設定(~/.claude/settings.json)の model に書き込まれ、次回以降のセッションの既定になります。ピッカーでは Enter が「切り替えて既定として保存」、s が「このセッションだけ切り替え、既定は変えない」です。/model sonnet のように直接名前を打った場合は Enter と同じ扱いになります。

一方、--model フラグと ANTHROPIC_MODEL はそれで起動したセッションにだけ効きます。複数のターミナルで別々のモデルを同時に使いたいときは、/model で切り替えるのではなく、それぞれ --model を付けて起動します。

/model で切り替えると、メイン会話のモデルを引き継ぐサブエージェントにも反映されます。サブエージェントを小さなモデルのまま使いたい場合は、その定義に model を書いておきます。

opusplan とフォールバックモデル

opusplan: 計画は Opus、実装は Sonnet

opusplan は、プランモードの間は opus で設計や方針の検討を行い、実行モードに移ると自動で sonnet に切り替えてコードを書くエイリアスです。Opus の推論力を計画に、Sonnet の効率を実装に使い分けられます。

/model opusplan

両方のフェーズで 100 万トークンのコンテキストを要求したいときは opusplan[1m] を指定します(/model で設定する場合は v2.1.265 以降。それより前は --model か model 設定を使う)。

フォールバックモデルの連鎖

メインのモデルが過負荷や利用不可などのサーバーエラーを返したとき、失敗させずに別のモデルへ切り替えるよう設定できます。1回のセッションだけなら --fallback-model にカンマ区切りで並べます。

claude --fallback-model sonnet,haiku

毎回使うなら settings に fallbackModel を配列で書きます。

{
  "fallbackModel": ["claude-sonnet-5", "claude-haiku-4-5"]
}

フラグは設定より優先されます。切り替えはそのターンだけで、次のメッセージでは再びメインのモデルから試します。連鎖は重複を除いて最大3モデルまでです。認証・課金・レート制限などのエラーでは切り替わりません。また、起動時に確認表示は出ず /status にも出ないため、実際に切り替わったときの通知が設定が効いている最初のサインになります。

effort で推論の深さを調整する

effort(エフォート)レベルは、モデルがどの程度考えるかを制御します。低いほど速く安く、高いほど複雑な問題を深く推論します。使えるレベルはモデルによって異なり、最新の Opus・Sonnet・Fable では low・medium・high・xhigh・max の5段階です。対応していないレベルを指定すると、それ以下で最も高い対応レベルに落とされます。

レベル向いている場面
low短く範囲が限られ、速さを重視する作業
medium多少の性能と引き換えにトークンを節約したい作業
highトークン消費と性能のバランスを取る
xhighより多くのトークンを使って深く推論する
max難しい作業で効くことがあるが、効果が頭打ちになったり考えすぎたりしやすい。広く使う前に試す

既定値はモデルごとに決まっており、公式ドキュメントでは大半のモデルが high、Opus 5.5 は medium とされています。変更方法は次のとおりです。

/effort やピッカーで Enter を押すとレベルがモデルごとに保存され、s を押すとそのセッションだけに適用されます。max は環境変数で指定した場合を除き、そのセッション限りです。

設定を変えずに1回だけ深く考えさせたいときは、プロンプトのどこかに ultrathink と書きます。Claude Code はこのキーワードを認識して指示を追加しますが、API に送る effort レベルは変わりません。「think hard」などほかの言い回しはキーワードとしては扱われず、普通の文章として渡されます。

現在のモデルの確認と切り替わらないときの原因

いま使っているモデルは /status(アカウント情報や effort レベルも表示)か、設定していればステータスラインで確認できます。/model status でも現在のモデルを表示できます。effort レベルはセッションのヘッダーにモデル名と並んで表示されます。

次のセッションが選んだモデルで始まらない

/model で選んだのに次のセッションが別のモデルで始まる場合、公式ドキュメントは主に次の原因を挙げています。

組織でモデルが制限されている

管理者は管理設定の availableModels で選べるモデルを制限できます。制限外のモデルは /model のピッカーに表示されず、/model で指定するとエラーになります。--model や ANTHROPIC_MODEL、model 設定で制限外のモデルを指定した場合は、警告のうえ既定のモデルで起動します。

本サイトは非公式翻訳です

エイリアスが指すモデルや既定の effort レベル、必要なバージョンは更新されることがあります。正確な内容は公式ドキュメントの Model configuration、CLI reference、Commands をご確認ください(確認日 2026-09-28)。