Claude Code v2.1.149 リリース — セキュリティ修正とUI改善を含む大型パッチ
Claude Code v2.1.149 では、PowerShellのパーミッションバイパスやgit worktreeのサンドボックス設定ミスなど複数のセキュリティ修正に加え、/usage のコスト内訳表示やGFMチェックボックスレンダリングなどのUX改善が施された。
背景
今回のリリースは、セキュリティ上の懸念とユーザー体験の両面で積み重なったフィードバックへの対応が中心となっている。特にPowerShell環境でのパーミッション制御に複数の抜け穴が発見されており、ワークスペース外へのファイルアクセスを許してしまう可能性があった。また、macOS環境で find コマンドがシステムのファイル記述子テーブルを枯渇させホストをクラッシュさせる深刻な問題も含まれていた。
UI面では、/usage コマンドが使用量の合計しか表示できなかったため、どの機能がコストを押し上げているかを把握しにくいという課題があった。これらを一括解消する形で本バージョンがリリースされた。
技術的な変更
セキュリティ修正:PowerShellのパーミッション制御
PowerShell環境における複数のパーミッション制御の抜け穴が修正された。これらは連鎖すると、意図したワークスペース外のファイルを読み取れる状態になりうるものだった。
具体的には以下の3点が修正されている:
-
組み込み
cd関数によるバイパス:cd..・cd\・cd~・X:といった組み込み形式のcdがワーキングディレクトリを変更してもパーミッションチェッカーに検知されず、後続コマンドがワークスペース外を読めてしまう問題 -
プレフィックス/ワイルドカード許可ルールの不備:
PowerShell(dotnet.exe build *)のような前方一致ルールがネイティブ実行ファイルやスクリプトを事前承認しない問題 -
変数トラッキングの陳腐化: パーミッション解析パーサーが
cd/pushd/popdをまたいでPWD/OLDPWD/DIRSTACKの古い追跡値を信頼してしまうギャップ
これら3件はいずれも「シェルのディレクトリ状態をパーミッションチェッカーが正確に追跡できていない」という共通の技術的課題に起因している。
セキュリティ修正:git worktreeのサンドボックス設定
git worktree 環境でのサンドボックス書き込み許可リストが、共有 .git ディレクトリのみを対象とすべきところをメインリポジトリルート全体に適用していた問題が修正された。修正後は .git ディレクトリのみが対象となり、hooks/ と config は引き続き拒否される。
macOS固有の修正:find によるvnodeテーブル枯渇
Bashツール内の find コマンドが大きなディレクトリツリーを走査する際に、macOSのシステムファイル/vnodeテーブルを使い果たしてホストがクラッシュする問題が修正された。サンドボックス化されたツール実行であっても、OSレベルのリソースを枯渇させる可能性があることを示す事例となっている。
機能追加:/usage のカテゴリ別内訳表示
/usage コマンドが使用量の合計だけでなく、スキル・サブエージェント・プラグイン・MCPサーバーごとのコスト内訳を表示できるようになった。どの機能がリミットを消費しているかを可視化することで、MCPサーバーの使いすぎやサブエージェントの多用といったコスト要因を特定しやすくなる。
機能追加:GFMタスクリストチェックボックスのレンダリング
Markdown出力で GFM(GitHub Flavored Markdown) のタスクリスト構文 - [ ] todo / - [x] done がプレーンな箇条書きではなくチェックボックスとして描画されるようになった。コードレビューのフィードバックやToDoリストをClaude Codeで扱う際の視認性が向上する。
その他のUI/UX修正
多数の細かい表示・操作上のバグも修正されている:
-
/diffのキーボードスクロール: 詳細ビューでカーソルキー・j/k・PgUp/PgDn・Space・Home/Endによるスクロールが可能になった -
Ctrl+Oトランスクリプトビュー: 開いた瞬間の状態でフリーズせず、新着メッセージをテールするよう修正 - プロンプト履歴の編集保持: 履歴エントリを呼び出して編集中に上下キーで移動しても編集内容が失われなくなった
-
/feedbackの改善: コンテキスト圧縮前の会話も報告に含まれ、長いセッション初期の問題をトリアージしやすくなった -
Enterprise向け:
allowAllClaudeAiMcpsマネージド設定が追加され、managed-mcp.jsonと並行してclaude.aiクラウドMCPコネクターを読み込めるようになった
設計判断
PowerShell固有のパーミッション修正が3件まとめて含まれている点は注目に値する。組み込み cd 関数のバイパス、ワイルドカード許可ルールの不備、変数トラッキングの陳腐化という3つの問題は、いずれも「ディレクトリ変更操作後のシェル状態をパーミッションチェッカーが正確に把握できていない」という技術的課題の異なる側面として整理できる。
git worktreeの修正は、「共有リソースの許可範囲をどこまで認めるか」という境界定義の誤りに対する修正であり、最小権限の原則に沿って .git ディレクトリのみを許可対象に絞る方向の変更となっている。hooks/ と config を明示的に拒否対象として挙げている点は、許可範囲の縮小が意図的であることを示している。
まとめ
v2.1.149 は、PowerShellとgit worktreeにおける複数のパーミッション制御の欠陥を修正しつつ、/usage のコスト可視化やGFMチェックボックスレンダリングなど実用的な機能追加を同時に届けるリリースとなった。セキュリティ修正の3件がいずれも「シェルのディレクトリ状態追跡」という共通の技術的課題に関連している点は、この領域の堅牢性向上が継続的なテーマとなっていることをCHANGELOGから読み取れる。