◉CLAUDE LABEN
●CODE 2.1.319 — Claude Code で MCP のタスク実行が自動でバックグラウンドに回るようになりました。確認待ちを拒否に倒す denyInsteadOfPrompting 設定も入りました●CONSOLE — Console の IP 許可リストがベータで登場しました(11/5)。許可外のアドレスからのリクエストは拒否されます●SONNET 4.5 — Claude API での提供終了は 11/30、残り22日。移行先は Sonnet 5.5●WINDOWS — 日本語の環境でだけフックが黙って壊れる報告があり、文字コードの確認が呼びかけられています●FAST — Opus 4.8 の fast mode は非推奨になり、11/30 に除去されます。移行先は Opus 5.5●NEW — Cowork に渡したフォルダの先頭に、十行の約束ファイルを置いてみました●CODE 2.1.319 — Claude Code で MCP のタスク実行が自動でバックグラウンドに回るようになりました。確認待ちを拒否に倒す denyInsteadOfPrompting 設定も入りました●CONSOLE — Console の IP 許可リストがベータで登場しました(11/5)。許可外のアドレスからのリクエストは拒否されます●SONNET 4.5 — Claude API での提供終了は 11/30、残り22日。移行先は Sonnet 5.5●WINDOWS — 日本語の環境でだけフックが黙って壊れる報告があり、文字コードの確認が呼びかけられています●FAST — Opus 4.8 の fast mode は非推奨になり、11/30 に除去されます。移行先は Opus 5.5●NEW — Cowork に渡したフォルダの先頭に、十行の約束ファイルを置いてみました
記事一覧/API & SDK
⬡ API & SDK/2026-11-09初級

日付なしで書いた claude-sonnet-4-5 は、11 月 30 日の退役から外れるのでしょうか

退役表には日付つきの ID しか載っていません。日付なしの claude-sonnet-4-5 も止まるのか、公式の記述から読み分け、grep で両方を拾う手順を整理しました。

Claude API145モデル廃止6Sonnet 4.54モデルIDエイリアス

自分のコード例とメモを見返して、claude-sonnet-4-5 の出てくる行を数えていた夜のことです。

退役表に載っている ID は claude-sonnet-4-5-20250929。日付がついています。ところが私の手元には、日付のない claude-sonnet-4-5 のほうが多く残っていました。数えてみると、日付なしが 69 か所、日付ありが 61 か所です。

日付を書いていないのだから、表の「11 月 30 日」とは別の話ではないか。 そう思いかけて、手が止まりました。この思い込みが正しいのか、公式の記述で確かめた記録をお渡しします。

退役表に載っているのは、日付つきの ID だけです

公式のモデル廃止ページの表には、現時点でこう書かれています。

API model nameCurrent stateDeprecatedTentative retirement date
claude-sonnet-4-5-20250929DeprecatedSeptember 30, 2026November 30, 2026
claude-sonnet-4-6ActiveN/ANot sooner than February 17, 2027

推奨の移行先は claude-sonnet-5-5 です。表に claude-sonnet-4-5(日付なし)の行はありません。そのため「載っていない=対象外」と読みたくなります。ここが落とし穴でした。

日付なしの ID は、最新の日付つき ID を指す別名です

別のページ「Model IDs and versioning」に、答えに近い記述がありました。4.6 より前の世代のモデルには、API 上で短い別名が使えます。たとえば claude-sonnet-4-5 は、同じ minor バージョンの最も新しい日付つきスナップショットを指す、と書かれています。

つまり claude-sonnet-4-5 は独立したモデルではなく、claude-sonnet-4-5-20250929 への近道です。同じページには、どの ID にも固有の廃止・退役の予定がある、という一文もあります。

私の読みを整理すると、次のとおりです。

書き方公式の説明11 月 30 日との関係
claude-sonnet-4-5-20250929日付つきのスナップショット表の行そのもの。対象です
claude-sonnet-4-5最新の日付つきスナップショットを指す別名指し先が 20250929 なので、同じ日に止まると読むのが自然です
claude-sonnet-4-6日付なしだが別名ではなく、スナップショットそのもの別の ID。表では 2027 年 2 月 17 日が下限です

「同じ日に止まる」の部分は、公式が一文で言い切っているわけではありません。別名の仕組みから導いた私の解釈です。ですから、対象外と信じて放置するより、対象として動くほうが安全だと判断しました。

もう一つ、混同しやすい点があります。claude-sonnet-4-6 のように日付のない ID は、4.6 世代以降では別名ではありません。公式は、最新版へ自動で付け替わる「evergreen」ではなく、固定されたスナップショットだと明記しています。日付の有無は、新しさの印にはならないのです。

日付あり・なしの両方を、一度に拾います

別名が混じっていると、日付つきだけを検索しても取りこぼします。拾う正規表現は一つで足ります。

# 日付つき・なしの両方と、Bedrock / Google Cloud 表記もまとめて拾う
grep -rnE --exclude-dir=node_modules --exclude-dir=.git \
  'claude-sonnet-4-5(-20250929|@20250929|-v1:0)?' .

Amazon Bedrock では anthropic.claude-sonnet-4-5-20250929-v1:0、Google Cloud(Google managed)では claude-sonnet-4-5@20250929 という形で現れます。上の式はこの三つの顔を同時に拾います。ただし、Bedrock や Google managed の側は、退役日を各社が別に決めると公式に書かれています。表の 11 月 30 日は、Anthropic が運営する側の日付です。そこは分けて見てください。

見つかった行は、設定ファイルと、ドキュメント上の説明文に分けます。止まって困るのは、実際にリクエストを送る行だけです。

迷ったら、レスポンスで指し先を確かめます

別名がどれを指しているかは、実際に一度送ってみると分かります。レスポンスの model 欄に、解決後の ID が入っているからです。

import anthropic
 
client = anthropic.Anthropic()  # ANTHROPIC_API_KEY は環境変数から読む
msg = client.messages.create(
    model="claude-sonnet-4-5",  # 別名で送る
    max_tokens=16,
    messages=[{"role": "user", "content": "ok と返してください"}],
)
print(msg.model)  # 手元で確かめた指し先がここに出る

出力が日付つきの ID なら、別名の指し先が分かります。私はこの確認を、置き換えを始める前に一度だけ行うことにしました。

置き換えの前に、一つだけ決めます

見つかった行を機械的に全部書き換える前に、「実際に送っている行か」を分けてください。呼び出し元の洗い出しは、grep だけでは足りない場合もあります。その手順は、Usage の CSV から呼び出し元を数えた記録に書きました。一括置換の前に手元のカタログを引く方法は、モデルIDを一括置換する前に、手元の CLI が抱えるカタログを引くにまとめています。

日付の有無ではなく、どの ID に解決されるかで数えます。 今回の線引きは、この一文だとあとから気づきました。

まずは今日のうちに、上の grep を一度だけ走らせて、日付なしの行が何か所あるかを数えてみていただければと思います。残りは 3 週間ほどです。数が分かれば、あとの段取りは自然に決まってきます。

シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • ✦コピー&ペーストで使える実装コード付き
  • ✦毎日新しい上級ガイドを追加
  • ✦¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

もしこの記事がお役に立ちましたら、チップ(¥150)で応援いただけると大変励みになります。広告なしでの運営を続けるため、皆さまのご支援が大きな力になっています。

関連記事

⬡ API & SDK2026-10-18
Sonnet 4.5 の退役まで 43 日 — 呼び出し元は grep ではなく、Usage の CSV から数えました
claude-sonnet-4-5 は 11 月 30 日に退役します。コードの grep は「書かれたもの」しか教えてくれません。Console の Usage CSV と、コード内のモデル ID を 1 本のスクリプトで突き合わせる手順と、実際に走らせた結果をまとめました。
⬡ API & SDK2026-10-08
Sonnet 4.5 の退役前に、コードに残った「400 になる引数」を一本のスクリプトで拾いました
claude-sonnet-4-5 は 11 月 30 日に退役します。モデル ID を書き換えるだけでは、budget_tokens・prefill・tool_choice などで 400 が返ります。公式の移行ガイドの該当箇所を正規表現にしたスキャナと、実行結果、直し方の順番をまとめました。
⬡ API & SDK2026-08-30
モデルIDを一括置換する前に、手元の CLI が抱えるカタログを引きます
新しい世代が出ると、前の世代のモデルIDが急に古く見えます。インストール済みの実行ファイルに埋め込まれたカタログを引き、一致・日付不一致・書式破損の三段に仕分けてから直す手順を、実測値とスクリプトつきでまとめました。