Claude Code v2.1.34 — サンドボックス自動許可の権限抜け穴を塞ぐ修正
Claude Code v2.1.34は2件のみのパッチ。ただし片方はサンドボックス除外コマンドがautoAllowBashIfSandboxed有効時にBash許可確認をバイパスできていた権限系の抜け穴で、運用者には見逃せない安全側修正です。
このリリースで何ができるようになるか
Claude Code v2.1.34は変更点2件のみの極小パッチですが、片方は権限モデルの境界ケースを埋める安全側修正で、autoAllowBashIfSandboxedを有効にしている環境では軽視できない内容です。
- サンドボックス除外コマンドがBash許可確認をバイパスできていた問題を修正(
autoAllowBashIfSandboxed有効時の経路で意図せぬ自動実行を防止) - Agent Teams設定がレンダリング間で変化したときのクラッシュを修正
v2.1.32でOpus 4.6とAgent Teamsが投入された直後の整地サイクルの一部で、今回はサンドボックス除外 × 自動許可という権限の境界ケースを単独パッチで切り出しています。
あなたの開発フローはどう変わるか
autoAllowBashIfSandboxedを有効にしている環境
これが今回の主要対象です。関係する設定項目は次の通りです。
| 設定キー | 役割 |
|---|---|
sandbox.excludedCommands | サンドボックスを通さずに直接実行するコマンドをユーザーが明示指定するリスト |
dangerouslyDisableSandbox | サンドボックス機構自体を丸ごと無効化する強力なフラグ(名前の通り危険側) |
autoAllowBashIfSandboxed | サンドボックス内で走るBashなら都度確認なしに許可する快適性寄りの設定 |
本来の意図は、「サンドボックス内で実行されることが保証されている安全寄りのBashだけを、自動許可の対象にする」というものでした。ところが本版以前のバグでは、サンドボックスから除外されたコマンド(本来であれば追加の確認を挟むべき対象)が、autoAllowBashIfSandboxedがオンのときに「Bashだから許可」と扱われ、ユーザー確認(ask permission rule)が発火しないまま実行されうる状態になっていました。
サンドボックスの役割は「危険度の高い操作を隔離する」ことであり、excludedCommandsは「隔離しない = 慎重に扱う」という宣言です。その対象が逆に自動許可の経路に流れ込んでいたのは、意味的に前提が逆転した穴でした。本版で経路が塞がれ、excludedCommandsとdangerouslyDisableSandboxに該当する呼び出しは、従来どおりBash確認ルールに従うようになります。
Agent Teamsを設定切り替えしながら試しているチーム
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMSの有効 / 無効切り替えや、.claude/settings.jsonのteammate関連フィールドを編集した直後に画面が落ちるクラッシュが解消されました。Claude CodeのTUIはInkベース(ReactのCLI版)で実装されているため、設定値がレンダリング中に更新されると参照が噛み合わずクラッシュする、という典型的な宣言的UIのバグでした。Agent Teamsはまだ周辺の安定化が続くresearch preview段階なので、設定を試行錯誤しているチームには地味に効く修正です。
サンドボックス未使用 / Agent Teams未使用の通常利用
このリリースは直接の影響がありません。通常の更新サイクルに合わせて取り込めば十分です。
主な変更点
1. サンドボックス除外コマンドのBash確認バイパス修正
Fixed a bug where commands excluded from sandboxing (via
sandbox.excludedCommandsordangerouslyDisableSandbox) could bypass the Bash ask permission rule whenautoAllowBashIfSandboxedwas enabled
excludedCommandsに登録したコマンドや、dangerouslyDisableSandbox配下で走るコマンドが、autoAllowBashIfSandboxedの自動許可ロジックに紛れ込み、本来要求されるはずのBash確認をスキップして実行できていました。本版で経路が塞がれ、本来の権限境界が回復しています。
2. Agent Teams設定のレンダリング間クラッシュ修正
Fixed a crash when agent teams setting changed between renders
設定値がレンダリング中に更新されると、直前と直後でpropsや参照が噛み合わずクラッシュする宣言的UIの典型バグでした。changelogには原因の詳細記述はありませんが、CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMSの切り替えやsettings.jsonの編集直後に発生していた挙動と読めます。
なぜこの修正がこのタイミングで切り出されたか
Claude Codeの直近の開発サイクルは、以下のパターンで回っています。
- 大型リリースで新機能とアーキテクチャを一気に動かす
- その直後48〜72時間の報告を吸い上げて、境界ケースをパッチで潰す
- パッチは1点集中・低リスクに留め、次の機能追加は次のマイナーに回す
v2.1.30でPDF部分読み込みやMCP OAuth事前設定など周辺環境を底上げし、v2.1.32でOpus 4.6とAgent Teamsという目玉機能が投入され、v2.1.33はそれを受けてtmux疎通修正、TeammateIdle / TaskCompleted hooks、memory frontmatter、proxy修正など16項目をまとめて投入しました。本版v2.1.34はその翌刻に飛んできたパッチです。
2項目の並びを見ると、
- 1件目はAgent Teams周辺(v2.1.32, 33で投入・強化された機能の余波)
- 2件目はサンドボックス権限周辺(継続的に強化されている安全系の機能)
となっており、直近2〜3リリースで表面積が広がった領域に対して、即座にバグ報告がフィードバックされてパッチが回っている構図が読み取れます。サンドボックス権限は企業利用やCI実行の文脈で影響が大きいため、優先度を上げて単独パッチで切り出したと読めます。
前後版との位置付け
v2.1.32で広がった「Agent Teamsとサンドボックス強化」の表面積を、v2.1.33〜v2.1.34の2リリースで静かに固めている流れです。本版はきわめてタクティカルな緊急度寄りの切り出しで、「このまま次に進むために塞いでおきたい穴」を2つ抜いた小休止リリースとして記憶しておくとタイムラインが読みやすくなります。
まとめ
autoAllowBashIfSandboxedを有効にしているなら更新推奨: サンドボックス除外コマンドの自動許可バイパスが塞がれる- Agent Teamsを試しているなら更新推奨: 設定変更時のクラッシュ回避
- サンドボックス共有プロファイルを企業配布している場合は確認推奨: セキュリティポリシー担当と同期しておくと安全
- 通常利用なら任意: 通常の更新サイクルで取り込めば十分
更新はclaude updateで取得できます。changelogの行数だけを見て通り過ぎてしまうと評価を見誤るタイプのリリースで、権限系の意味論を踏まえて取り込み判断するのが安全です。
関連する記事
Claude Code をもっと見る →Claude Code v2.1.133 — ワークツリーのベース選択機能と、Hooks/Bashでのeffort連携
Claude Code v2.1.98 — Vertex AIセットアップウィザードとLinuxサンドボックス強化
Claude Code v2.1.83 — managed-settings.d/ 対応と、組織ポリシー配布の柔軟化
Claude Code v2.1.78 — 失敗時のフック追加と、プラグインの永続データ領域を強化
Claude Code v2.1.53 — Windowsの3種クラッシュとRemote Control切断時の残留セッションを修正
Claude Code v2.1.47 — Windows・メモリ周り68項目を整える整備版
Claude Code v2.1.45 — Sonnet 4.6対応と、複数クラウド環境でのAgent Teams修正
Claude Code v2.1.41 — claude auth CLIとWindows ARM64対応、企業向けエラー改善の22項目