この記事で分かること
2026-04-23、Anthropicは公式ブログで「3月から4月にかけての Claude Code 品質低下は 3つの regression が原因だった」と発表しました(An update on recent Claude Code quality reports)。3つとも v2.1.116(4/20)で修正済で、全 subscriber への usage limits reset という補償付きの発表です。
この記事では:
- 4/23 postmortem が認めた 3 bugs を日本語で解説
- postmortem が触れていない別事象(独立分析勢の Cache TTL 1h→5m 指摘)との切り分け
-
次に同種 regression が起きた時の自衛策 3 つ(
/usage日次 log + hook 2 個)
対象読者は Max($200/月)・Pro($20/月)の subscriber で、3-4月に「Claude Codeが鈍くなった気がする」と感じていた人です。
4/23 postmortem が認めた 3 bugs
Anthropic 公式発表によれば、今回の品質低下は独立した 3 つの変更が原因で、偶然同じ期間に重なっていました。
Bug 1 — Reasoning effort downgrade(2026-03-04)
3/4、Anthropic は Claude Code の reasoning effort デフォルトを high → medium に下げました。
- 意図: latency が長すぎて「UI が freeze した」と感じる層への対応
- 副作用: 考える量が減り、回答品質が体感で低下
Bug 2 — Caching bug(2026-03-26)
3/26、「idle が 1 時間以上の session で、古い thinking を clear する」機能を ship しました。
- 意図: 再開時の latency を下げるため、thinking cache を 1 回だけ clear する
- バグ: その session の全ターンで clear が発火し続ける
- 症状: Claude が「忘れっぽい/同じ話を繰り返す」挙動に
Stella Laurenzo 氏が AMD で計測した 6,852 sessions では、files-read-before-edit の比率が 6.6 → 2.0、thinking の長さが 2,200 chars → 600 chars に減少しました(公式 HN スレッド #47878905 895pt)。
Bug 3 — Verbosity instruction(2026-04-16)
4/16、system prompt に「verbosity(冗長さ)を削減せよ」という指示を追加しました。
- 意図: 回答を簡潔にしたい層への対応
- 副作用: 他の prompt 変更と相互作用して coding quality が悪化
- 撤回: 4/20 v2.1.116 で revert 済
補償:4/23 全 subscriber に usage limits を reset
Anthropic は postmortem 発表と同時に、全 subscriber の usage limits を reset しました。5-hour / weekly の両方が reset されたかは subscriber ごとに /usage で確認するのが確実です。
2ヶ月間 degraded mode の Claude Code を使っていた Max $200/月層にとって、一定の金銭的補償の意味を持ちます。
Boris Cherny は "most complex investigation" とコメント。3 つの独立した変更が同時期に重なったため、ユーザー側で再現条件を絞れず、原因特定まで時間が掛かったという説明です。
「postmortem が触れていない」もう 1 本の火種
ここから先は公式発表ではなく、独立調査勢の主張です。分けて読んでください。
#46829 + Mariański 氏の Cache TTL 1h→5m 指摘
4/12、GitHub Issue #46829 で @seanGSISG が「Cache TTL が 3 月上旬から silent に 1h → 5m に regressed している」と提起。2 台のマシンで 92 日間に渡り 119,866 API calls を実測し、3/5 までは ephemeral_5m token 0 件、3/6 以降は急増、3/8 以降は 5m が主流化と示しました。Opus 換算で約 $1,582 の overpay(※ 後に投稿者本人が一部数値撤回)。
Jacek Mariański 氏は Medium で binary 分析まで実施し、cache 関連の追加 regression を 4 件特定(Resume Attachment Relocation Bug 他)。
しかし 4/23 postmortem はこれに触れていない
4/23 の Anthropic 公式発表は Cache TTL regression には明示的に触れていません。4/13 の The Register 取材でも「quota drain is not caused by cache tweaks」と否定しています。
読者の立場としては次のように整理できます:
- Anthropic 公式認定 = 3 bugs(effort / caching thinking / verbosity)
- 独立分析勢の主張 = + Cache TTL 1h→5m regression(公式は否定)
どちらを信じるかは読者の判断です。自分の /usage --json で cache_creation が cache_read の 40% を超えていれば、公式認定外の事象の影響を受けている可能性はあります。
次に同種 regression が起きた時の自衛策 3 つ
同じような「2 ヶ月劣化したと後で気付く」を繰り返さないために、以下の 3 つを Claude Code の .claude/settings.json や cron に仕込んでおくと、ユーザー側で degraded mode を早期検知できます。
自衛策 1 — /usage --json を日次 log する
# crontab -e
0 0 * * * /usr/local/bin/claude --usage-json > "$HOME/claude-usage/$(date +\%Y-\%m-\%d).json"
毎日 0:00 に /usage --json を保存します。cache_creation_tokens / cache_read_tokens / thinking_tokens の日次推移を後で見返せば、「今月から何か変わった」を発見可能。今回の 3 bugs も、日次 log があれば 3 月時点で「thinking の長さが突然半分以下になった」と気付けた可能性が高いです。
自衛策 2 — model version pinning hook
Claude Code が session 開始時に model を silent に downgrade する挙動(例:Opus 4.7 → 4.6 切替)に対する警戒。
#!/bin/bash
# .claude/hooks/model-version-check.sh
EXPECTED="claude-opus-4-7"
ACTUAL=$(claude --status --json 2>/dev/null | jq -r '.model.id // "unknown"')
if [ "$ACTUAL" != "$EXPECTED" ]; then
echo "⚠ Model downgraded: expected $EXPECTED, got $ACTUAL" >&2
osascript -e 'display notification "Claude Code model downgraded" with title "⚠"' 2>/dev/null || true
fi
期待 model と異なる場合に notification を飛ばします。具体実装は cc-safe-setup の examples/model-version-alert.sh を参考にしてください。
自衛策 3 — cache/thinking ratio の週次 alert
Bug 2(caching bug)は「thinking の長さが半分以下になる」症状を出しました。日次 log があれば、週次でこの変化を検出できます。
#!/bin/bash
# 過去 7 日の thinking_tokens 中央値 vs 今日の thinking_tokens
MEDIAN=$(ls -t ~/claude-usage/*.json | head -n 8 | tail -n 7 | \
xargs -I{} jq '.totals.thinking_tokens // 0' {} | \
sort -n | awk 'NR==4')
TODAY=$(jq '.totals.thinking_tokens // 0' ~/claude-usage/$(date +%Y-%m-%d).json)
if [ $(echo "$TODAY < $MEDIAN / 2" | bc -l) -eq 1 ]; then
echo "⚠ thinking_tokens dropped to <50% of 7-day median"
fi
「今日の thinking が過去 7 日の中央値の半分未満」で alert。Bug 2 のような silent な degradation を検知できます。
まとめ
- 2 ヶ月の劣化は公式認定 3 bugs(effort / caching / verbosity)が主因、v2.1.116 で修正済、4/23 全 subscriber の usage limits reset で補償
-
Cache TTL 1h→5m regression は公式認定外、独立分析との乖離あり。自分の
/usage --jsonで cache_creation/cache_read ratio を見て判断 -
次回同種 regression に備える 3 自衛策:日次
/usage --jsonlog/model version pinning hook/cache ratio 週次 alert - 自衛策の具体実装は cc-safe-setup(MIT / 707 hooks)に寄せています
参考リンク
- Anthropic 公式: An update on recent Claude Code quality reports(4/23)
- Simon Willison 解説: Recent Claude Code quality reports(4/24)
- The Register: Anthropic admits it dumbed down Claude with 'upgrades'(4/23)
- GitHub Issue #46829: Cache TTL silently regressed from 1h to 5m around early March 2026
関連コンテンツ(本記事で解説した自衛策を深掘りしたい方向け)
- Claude Code Migration Playbook($19、5/8 full release)— 「stay / switch / hybrid DIY」を 5 triggers × decision tree で機械化。本記事の自衛策の 10 倍詳細版。preorder で Ch1-9 + Appendix A-D 即 deliver
- Claude Code トークン消費を減らす完全ガイド(Zenn Book 1)(¥800)— 非エンジニア目線でトークン消費の仕組みを解説
- cc-safe-setup(MIT, OSS)— 本記事の自衛 hook 3 個を含む 707 hook の実装集。14 日で 7,906 clones
※ 本記事の公式情報は 2026-04-25 時点。Anthropic が後日追加の postmortem を出す・3 bugs の修正が rollback される等の変化があれば追記します。