Claude Code /

v2.1.214

3 ハイライト
8 セキュリティ
6 機能追加
28 バグ修正
4 その他の変更

ハイライト

Bash権限チェックの複数の抜け穴を一斉修正

zsh変数展開、ファイルディスクリプタのリダイレクト、10,000文字を超える長いコマンド、help/manコマンドの危険なオプションなど、権限チェックをすり抜けて確認なしに実行されてしまうケースが多数修正された。Edit(src/**)のような単一セグメントの許可ルールが、ツリー内の別の場所にある同名ディレクトリにも誤って一致していた問題も修正され、自動承認の適用範囲がより正確になった。

危険なセッションを自ら終了できるEndConversationツール

claude.aiで2025年から提供されている機能がClaude Codeにも導入され、高圧的なユーザーやjailbreak試行に対してClaudeがセッションを終了できるようになった。

バックグラウンドセッションの安定性を広範に改善

デーモンの後継プロセスが誤って停止させられる問題、アイドル状態のバックグラウンドセッションがワーカープロセスを残し続ける問題、完了済みセッションが削除できない問題など、バックグラウンド実行まわりの複数の不具合が修正された。

セキュリティ

  • 単一セグメントのdir/**許可ルール(例: Edit(src/**))が、ツリー内の別の場所にある同名ディレクトリにも誤って一致し、書き込みを自動承認してしまう問題を修正
  • Windows PowerShell 5.1セッションで実行するコマンドに対する権限チェックのバイパスを修正
  • bashのパース結果と権限アナライザの解釈が異なるファイルディスクリプタのリダイレクト形式で、権限チェックがフェイルオープンしてしまう問題を修正
  • 10,000文字を超える長いコマンドを権限チェックが誤判定する問題を修正。以降は自動実行せず必ずプロンプトで確認するように
  • [[ ]]比較内のzsh変数添字・修飾子を無害なテキストとして扱ってしまう問題を修正。該当コマンドは承認プロンプトが出るように
  • 危険なオプション・コマンド置換・バックスラッシュパスを含みうるhelpmanコマンドを自動承認してしまう問題を修正
  • リモートセッションで権限プロンプトの処理が、ローカルの確認ダイアログより先に進んでしまう問題を修正
  • daemon-redirectフラグ(--url--connection--identity、Podmanのリモートモード等)を伴うdockerコマンド(Podmanのdockerシム含む)に権限プロンプトを追加

機能追加

  • 長時間実行のツール呼び出しに定期的な進捗ハートビートを追加。無応答に見えていた問題を防止
  • メモリファイルのfrontmatterにISO形式のmodifiedタイムスタンプを追加
  • OpenTelemetryログイベントにmessage.uuidclient_request_idtool_source属性を追加し、メッセージ単位の相関とツールの来歴追跡が可能に
  • CLAUDE_CODE_OTEL_CONTENT_MAX_LENGTHでOpenTelemetryコンテンツ属性の60KB切り詰め上限を設定可能に
  • subagentStatusLineのペイロードにreasoning effortを追加し、カスタムエージェント行でモデルとエフォートを表示可能に

危険なセッションを自動終了するEndConversationツール

claude.aiで2025年から提供されている機能がClaude Codeにも導入された。高圧的なユーザーやjailbreak試行があった場合、Claudeが自らセッションを終了できるようになる。

バグ修正

  • GrowthBookのフィーチャーフラグがnullと評価された際にクラッシュする問題、および不正なフラグペイロードでキャッシュ済みフラグが消える問題を修正
  • Linuxでpkill -fのパターンがClaude CLI自身のプロセスに偶然一致し、Bashツールがセッションを巻き込んで終了させてしまう問題を修正
  • --settingsがデバイスファイルや数GB規模の巨大ファイルを指す場合の無制限メモリ増加を修正。2MiBを超える設定ファイルは起動時に明確なエラーで失敗するように
  • Windowsで企業プロキシ経由のストリーミングターンが「Socket is closed」で失敗する問題を修正
  • stream-json出力が、読み込みの遅いSDK/パイプラインコンシューマで終了時に切り詰められる問題を修正。終了時のドレイン処理が固定2秒上限ではなくキューされたバイト数に応じてスケールするように
  • スケジュールタスクが自身に設定されたプロンプトを未信頼な入力として拒否してしまう問題を修正。発火したプロンプトはセッションに割り当てられたタスクとして配信されるように
  • Windowsで、標準入力を待つ子プロセスがあるとPowerShellツールのコマンドがタイムアウトまでハングする問題を修正
  • Windowsで、標準入力から非UTF-8データを読むPowerShellツール配下のPythonスクリプトがUnicodeDecodeErrorでクラッシュする問題を修正
  • Windowsで、非ASCII出力を行うPythonスクリプトがUnicodeEncodeErrorでクラッシュする問題、およびPowerShell 7のエラーメッセージに生のANSIエスケープシーケンスが含まれる問題を修正
  • Windowsで、PowerShellツール配下のwhere.exefc.exediff.exeが有効な否定応答を返した際にエラー扱いされる問題を修正
  • Windows PowerShell 5.1のPowerShellツール配下で>>>がUTF-16LEでファイルを書き込み、他ツールがUTF-8として読めない問題を修正
  • 入れ替わったバックグラウンドデーモンが、後継デーモンの制御ソケットをシャットダウン時に削除してしまい、次回クライアントが正常な後継デーモンを誤って終了させる問題を修正
  • /backgroundでアイドル状態にしたバックグラウンドセッションが、バックグラウンドデーモンとワーカープロセスを無期限に生かし続ける問題を修正
  • バックグラウンドサービスがアイドルになった後、完了済みバックグラウンドセッションをclaude rmやエージェントビューから削除できない問題を修正
  • gitリポジトリ外から起動したバックグラウンドセッションがエージェントビューから削除できない問題を修正
  • セッションストアに読み取れないフォルダが存在すると、停止済みバックグラウンドセッションの再開時に保存済み会話を復元できない問題を修正
  • Remote Controlが明示的に有効化されていないセッションに対して「session ready」プッシュ通知が発火してしまう問題を修正
  • /install-github-app/mcp設定メニューがエージェントビューセッションでブロックされる問題を修正。ターミナル未接続のバックグラウンドセッションのみで拒否されるように
  • --settings CLIフラグ経由で有効化したプラグインが読み込まれない問題を修正(v2.1.181からの回帰)
  • 長時間セッションでOAuthトークンがローテーションした後、フィーチャーフラグが古いまま更新されない問題を修正
  • マージベースのないリポジトリで/ultrareviewが実行を拒否する問題を修正。全追跡ファイルのレビューを提案するように変更
  • claude updateclaude doctorがシェル設定パスがディレクトリの場合に無言でハングし、/statusのSystem diagnosticsが空欄になる問題を修正
  • メモリファイル保存時、frontmatterの値がインラインの#で無言で切り詰められる問題を修正
  • 複数の累積message_deltaフレームを送るストリームで、セッションのコストとトークン計測が二重カウントされる問題を修正
  • advisorが思考中に「check your network」という誤った警告が表示される問題を修正
  • フックが終了コード2を返してもstdoutのJSONがスキーマ検証に失敗するとドキュメント通りにブロックしない問題を修正
  • ターンの非同期コンテキスト外で発行されたOTelログイベントに、対応するインタラクションspanのtrace contextが欠落する問題を修正
  • prompts/resourcesリフレッシュ中のMCP一時エラーが、サーバーのスラッシュコマンドとリソースをクリアしてしまう問題を修正

その他の変更

  • 単一セグメントのdir/**フックif:条件を<cwd>/dirのみに一致するよう変更。任意の深さで一致させたい場合は**/dir/**を使う(deny/ask権限ルールは従来通り任意の深さで一致)
  • -m/--magic-fileまたは-f/--files-fromを使うfileコマンドが、読み取り専用として自動許可されず権限確認を必要とするように変更
  • keep-alive接続プールを、古い接続エラー発生後は無効化するように変更。再試行時に新しいソケットを開く
  • SessionStartフックが、セッションがforkから開始した場合にソース"fork"を報告するように変更(従来は"resume"