1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Code v2.1.312 Bedrock/Vertex系の短いシステムプロンプト化と変更点まとめ

1
Posted at

はじめに

2026-10-27 に公開された Claude Code v2.1.312 では、Amazon Bedrock・Google Vertex AI・Microsoft Foundry・Mantle 経由で使っている人に影響する挙動変更が入りました。特に重要なのは次の3点です。

  • Claude Code が認識できないモデル名(カスタムデプロイ名、推論プロファイルARNなど)では、短いシステムプロンプトが使われる
  • 同じく未認識のモデル名でも、フラグ付きメッセージ後の**自動モデル切替(refusal fallback)**が有効になる
  • OpenTelemetry の claude_code.safety_event が送信されなくなる

アップデートするだけで、出力の品質や監視ダッシュボードの挙動が変わる可能性があります。この記事では、影響を受ける人と取るべき対応を整理します。

📌 影響を受ける人

  • Bedrock / Vertex AI / Foundry / Mantle で、カスタムデプロイ名や推論プロファイルARNを指定して Claude Code を使っている人
  • OpenTelemetry で claude_code.safety_event を監視・アラートに使っている人
  • prompt / agent フックを多数使っている人
  • 公式マーケットプレイスのプラグイン経由のリモートMCPサーバーを mcp_server.name で集計している人

変更の全体像

モデル名が認識されるかどうかが、システムプロンプトと自動切替の2つの挙動を同時に左右する点がポイントです。

変更内容

1. 未認識モデル名では短いシステムプロンプトを使用(severity: high)

クラウドプロバイダ経由で、カスタムデプロイ名や推論プロファイルARNを指定している場合が対象です。中身が Claude Sonnet や Claude Haiku であっても、Claude Code がモデル名を認識できなければ、フルのシステムプロンプトではなく短いシステムプロンプトが使われます。

項目 変更前 変更後
認識できるモデル名 フルのプロンプト 変更なし
未認識のモデル名(カスタムデプロイ名・ARNなど) フルのプロンプト(中身がSonnet/Haikuの場合) 短いシステムプロンプト
対象プロバイダ - Bedrock / Vertex / Foundry / Mantle

フルのプロンプトを使い続けたい場合は、環境変数 CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=0 を設定します。

⚠️ Breaking Change
設定を変えていなくても、アップデート後に Claude Code の振る舞いが変わる可能性があります。カスタムデプロイ名を使っている環境は要確認です。

2. 未認識モデル名にも自動モデル切替を適用(severity: medium)

メッセージがフラグされたときの自動モデル切替(refusal fallback)は、これまでカスタムデプロイ名の環境では働きませんでした。今回から未認識のモデル名でも対象に含まれるため、意図しないモデルに切り替わる可能性があります。決めたデプロイだけを使いたい場合は CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1 で無効化できます。

3. OpenTelemetry の変更(severity: medium)

変更 内容 影響
claude_code.safety_event 送信停止 このイベントを使うダッシュボード・アラートは見直しが必要
mcp_server.name 公式Anthropicマーケットプレイスのプラグインが宣言する固定URLのリモートMCPサーバーで、custom ではなく実際のサーバー名になる 集計クエリで custom を前提にしていると結果が変わる
effort 値 タスク途中でeffortを変更した際、スピナー・OTelの effort 値・トランスクリプトに実際に効いているレベルが表示される 以前は適用前のレベルが出ていた

4. フックの同時実行数に上限(severity: medium)

prompt フックと agent フックに同時実行数の上限が入りました。

  • 1セッションあたり最大 24個(サブエージェント分を含む)
  • これとは別に、イベントの timeout を超えて待っているフックが最大 12個
  • 1秒未満の timeout は 1秒として扱われる

フックを大量に使っている環境では、実行待ちやタイミングの変化が起こり得ます。

5. サブエージェントの autoCompactWindow

サブエージェントの autoCompactWindow が、CLAUDE_CODE_AUTO_COMPACT_WINDOW で決めたウィンドウを小さくする方向にだけ効くようになりました(これまでは効果なし)。大きくすることはできません。

6. その他の新機能・改善

区分 内容
新機能 Claude apps ゲートウェイに oidc.user_id_claim を追加。sub 以外のクレーム(Entra ID の oid など)でユーザー識別が可能
新機能 フルスクリーン表示で、キューに入ったメッセージの「to send now」をクリックで即送信
新機能 Cloud sessions のルーティン作成・編集でeffortレベルを指定可能。セットアップスクリプト欄がBashエディタ化
改善 利用上限の表記が「session limit」から「5-hour limit」に変更。VS Code ではリセット時刻も表示
改善 タスク中にeffortを変更すると「次のメッセージまで反映を待つ場合がある」と表示

7. バグ修正(抜粋)

  • 大きなCLAUDE.mdの上書き事故: サブディレクトリの非常に大きなCLAUDE.md・ルールファイル・@で読み込むファイルを、冒頭だけ読んだ状態で Write 上書きしてしまう問題を修正。Write で上書きしようとすると、全体を読むか Edit で編集するよう Claude に促します
  • claude -p が出力なし: 名前が不正なコマンドが1つあるだけで全コマンドが読み込まれない問題
  • スキル検出: Bashでgitリポジトリの奥へ cd すると、ディレクトリごとのスキルや paths: 指定のスキルが見つからなくなる問題
  • セッション再開: 再開直後の最初の返答が、次回再開時に消えていることがある問題(まれ)
  • Readツール: 古いセッションファイルの掃除と重なると PDF が読めず pdftoppm failed: Could not write image になる問題
  • VS Code: サインイン後に管理設定・組織ポリシーが取得されない問題、組織設定を読み込めないときにコード終了だけで終わる問題(今はタブに理由と Retry / Sign in again を表示)
  • Claude Tag(Slack): プライベートチャンネル公開時に設定が既定値に戻る問題、ネットワークアクセス「None」のチャンネルで返信しない問題、別スレッドにファイルを投稿する問題など
  • Code Review: GitHubのpush通知が遅れて届くと古いコミットをレビューする(または何もレビューしない)問題
  • Remote Control: アーカイブ解除したセッションが「作業中」と表示される問題

影響と対応

アクションチェックリスト

  1. モデル名の確認: カスタムデプロイ名・推論プロファイルARNを使っているか確認する
  2. システムプロンプトの方針決定: フルのプロンプトが必要なら CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=0 を設定する
  3. 自動モデル切替の方針決定: 決めたデプロイのみ使いたいなら CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1 を設定する
  4. OTelの見直し: claude_code.safety_event に依存するアラートを洗い出し、代替を検討する。mcp_server.name の custom 前提のクエリも確認する
  5. フックの見直し: prompt / agent フックが多い場合は、上限を踏まないか確認する。1秒未満の timeout は1秒になる
  6. CLAUDE.md の更新: チームの CLAUDE.md に環境変数とフック上限の注意を追記する

💡 Tips
環境変数はチーム共通の設定(settings.json の env など)にまとめておくと、メンバー間で挙動がばらつきません。

コード例

環境変数による挙動の固定(Before / After)

Before(v2.1.312 未満): 特に設定なしで、カスタムデプロイ名でもフルのプロンプトが使われていた。

# 設定なし
claude

After(v2.1.312 以降): 従来に近い挙動を保つ場合。

# フルのシステムプロンプトを維持
export CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=0

# 自動モデル切替(refusal fallback)を無効化し、指定したデプロイのみを使う
export CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1

claude

CLAUDE.md への追記例

## 環境変数 / クラウドプロバイダ設定

- カスタムデプロイ名や推論プロファイルARNを使う場合は短いシステムプロンプトになる。
  フルのプロンプトを保つには CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=0 を設定する。
- カスタムデプロイ名でも自動モデル切替が働く。止めるには
  CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1 を設定する。

## Hooks

- prompt/agent フックの同時実行は1セッションあたり24個まで
  (timeout 超過分は別枠で12個)。1秒未満の timeout は1秒として扱われる。

## サブエージェント設定

- subagent の autoCompactWindow は CLAUDE_CODE_AUTO_COMPACT_WINDOW を
  下げる方向にだけ効き、上げることはできない。

まとめ

  • Bedrock / Vertex / Foundry / Mantle で未認識のモデル名を使うと、短いシステムプロンプトになり、自動モデル切替も有効になる
  • 元の挙動を保つには CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=0、切替を止めるには CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1
  • OpenTelemetry は claude_code.safety_event の送信停止と mcp_server.name の実名化に注意。監視・アラートの見直しが必要
  • prompt / agent フックは同時実行数に上限(24個+12個)が入った
  • 大きなCLAUDE.mdの上書き事故防止をはじめ、CLI・VS Code・Cloud sessions・Slack・Code Review の修正が多数入っている

カスタムデプロイ名を使っている環境は、アップデート前後で出力の傾向を比べておくと安心です。

参考: Claude Code v2.1.312 リリースノート

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?