この記事の結論:v2.1.312はEntra IDのOIDCクレーム対応、managed settings取得の不具合修正、大きなCLAUDE.mdの上書き問題修正など、企業環境での安定稼働に関係する変更を複数含む。Bedrock・Vertex・Foundry・Mantleのシステムプロンプト動作も変わっている。
対象読者
- Claude Codeを企業環境(Bedrock・Vertex・Foundry・Mantle・VS Code拡張)で動かしている人
- Claude TagでSlack連携しているチーム
- 大きなCLAUDE.mdや長いルールファイルを使っているプロジェクト
出典:Claude Code v2.1.312 Release Notes(2026-10-27T20:24:20 UTC)
v2.1.311の翌日にv2.1.312が出た。v2.1.311が企業運用環境のバグ修正中心だったのと同様、v2.1.312も細かいがインパクトのある変更が並んでいる。特にCLAUDE.mdの上書き問題とmanaged settings取得の不具合は、無人実行環境で動かしている場合には確認しておきたい。
企業環境・ゲートウェイ運用に直結する変更
OIDC ユーザーID クレームの追加対応
Claude appsのゲートウェイにoidc.user_id_claimが追加された。これにより、sub以外のIDトークンクレーム(Microsoft Entra IDのoidなど)でユーザーを識別できるようになる。
Entra IDでのシングルサインオン統合を進めている企業では、oidクレームを使っているケースが多い。これまでsubでしかユーザーを識別できなかった制約が解消された。Entra ID統合を検討している場合は、この変更を確認する価値がある。
managed settingsとorganization policyの取得不具合を修正
VS Code拡張からサインインした後、セッション残りの間managed settingsとorganization policyが取得されない不具合が修正された。
この不具合は、VS Code拡張でClaude Codeにサインインすると、その後のセッション全体で組織のポリシーが効かない可能性があった。無人実行やチームメンバーがVS Code経由で使っている環境では影響があり得る。修正されたが、もしポリシー違反と思われる動作が過去にあった場合は、v2.1.312へのアップデートで解消されるはずだ。
Bedrock・Vertex・Foundry・Mantleのシステムプロンプト変更
Bedrock・Vertex・Foundry・MantleがClaude Codeの認識していないモデル名(カスタムデプロイ名、inference profile ARNなど)に対して、短いシステムプロンプトを使うよう変わった。以前は長いシステムプロンプトが使われていた。
元に戻したい場合は環境変数CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=0で設定できる。カスタムデプロイ名を使っている企業では、この変更後の動作を確認しておくとよい。
同様に、フラグ付きメッセージ後の自動モデル切り替えも、Claude Codeが認識していないモデル名に対して適用されるようになった。これもオフにする場合はCLAUDE_CODE_DISABLE_REFUSAL_FALLBACK=1で設定できる。
フックの同時実行数の上限設定
promptフックとagentフックは、セッションあたり最大24個(サブエージェント含む)が同時実行するようになった。加えて、タイムアウトを超えて待機中のフックは最大12個まで。タイムアウトが1秒未満の場合は1秒として扱う。
自動化パイプラインで多数のフックを使っている場合、この上限が影響するかどうかを確認しておく。特にサブエージェントを複数並列で動かす構成では注意が必要だ。
サブエージェントのautoCompactWindowの動作変更
サブエージェントのautoCompactWindowが、CLAUDE_CODE_AUTO_COMPACT_WINDOWで設定した値を下げる方向にのみ効くようになった。以前は効果がなかった。「上げる」方向には変わらない点は注意が必要だ。
開発者が影響を受ける変更
大きなCLAUDE.mdの上書き問題を修正
Claude Codeが非常に大きなCLAUDE.md・ルールファイル・@インクルードされたファイルを先頭だけ読んだ状態でWriteツールで上書きしてしまう不具合が修正された。Writeがファイル全体を読むか、in-placeで編集するよう求めるようになった。
これは実際の使用環境では深刻になりえる問題だ。大きなCLAUDE.mdを使っている場合、Claudeが「最初の数千トークン」しか読まないまま上書きすることで、後半に書いていたルールが全部消える可能性があった。v2.1.312で修正されている。
per-directoryパスのスキルが見つからない問題を修正
Bashでcdコマンドでgitリポジトリの深い位置に移動した後、paths:スキルが見つからなくなる問題が修正された。cdを使ったスクリプトの中でスキルを呼ぶ場合、正しく動くか改めて確認できる。
無効なコマンド名によるコマンド全停止の問題を修正
無効な名前のコマンドが原因で、すべてのコマンドが読み込まれなくなり、claude -pが何も出力しない問題が修正された。カスタムコマンドを使っている環境では、設定を確認するきっかけになる。
ReadツールのPDF処理失敗の修正
Readツールが古いセッションファイルの削除と同じタイミングで実行されたとき、「pdftoppm failed: Could not write image」でPDFページの読み込みに失敗することがあった問題が修正された。PDF処理をパイプラインに組み込んでいる場合は確認を。
セッション再開時に最初の返信が欠落する問題を修正
ターミナルでセッションを再開した後、最初の返信が次にセッションを再開したときに欠落することがあった稀なケースが修正された。
VS Code拡張の変更
- 組織設定が読み込めなかった場合や起動時に拒否された場合、
exit codeだけで終了していたセッションが、タブに理由を表示し「Retry」「Sign in again」を提示するようになった - 利用制限のリセット表示が時刻(「3:10 PMにリセット」)形式になり、「5時間制限」という表記に統一された
Claude Tag(Slack連携)の変更
- Anthropic公式マーケットプレイスのプラグインで宣言された固定URL型リモートMCPサーバーの名前が、カスタムの名前ではなく実際の名前で報告されるようになった
- SlackでのClaude Tagの再試行通知が、汎用的なAPIエラーメッセージではなくモデル名またはレート制限の旨を表示するようになった
- パブリックになった古いプライベートSlackチャンネルが新しいIDを持つ場合、Claude Tagチャンネルのon/offスイッチとエージェント設定がワークスペースのデフォルトにフォールバックする問題が修正された
- ネットワークアクセスが「None」に設定された環境のチャンネルでClaude in Slackが返信しない問題が修正された
今回の変更で確認しておくべきこと
- CLAUDE.mdが大きい(数千行以上)場合:v2.1.312へのアップデートで上書き問題が解消される
- VS Code経由でサインインしているユーザーがいる場合:managed settingsが正しく適用されるようになった
- Bedrock・Vertex・Foundry・Mantleを使っている場合:カスタムデプロイ名・ARNのシステムプロンプト動作が変わった(元に戻すには環境変数で設定)
- Claude TagでSlack連携している場合:再試行通知のメッセージとチャンネルIDの問題が修正された
- 多数のフックを使っている場合:同時実行の上限(24/12)を確認する
v2.1.311と312が連続して出ており、特にCLAUDE.mdの上書き問題は早めに対応しておきたい修正だ。
Claudeの自動化実行環境については別途まとめている。
https://note.com/light_tern636/n/n0af91154f91c