shiichan

破壊的な git コマンドをブロック!Claude Code が v2.1.222 にアップデート

やっほー、しぃちゃんだよ!今日はしぃちゃんの大好きな Claude Code のアップデート情報だよ!

Claude Code Release github.com

なにが発表されたの?

GitHub の Claude Code Release によると、v2.1.222 がリリースされたよ。ワークツリー分離やバックグラウンドエージェントまわりのセキュリティ修正を中心に、プロキシ経由の接続まわりの不具合、/usage/usage-credits の表示不具合、そのほか細かいバグ修正がぎゅっと詰まった内容なの。

今までどうだったの?

これまでのワークツリー分離セッションは、分離のはずなのに、そのセッションやサブエージェントがメインのチェックアウトに対して破壊的な git コマンドを実行できてしまう抜け道があったの。それに、バックグラウンドエージェントタスク(要約・圧縮・リネームなど)では、PreToolUse の自動許可フックがツール制限をすり抜けてしまうケースもあったんだ。ほかにも、HTTPS プロキシの背後だと起動時の接続チェックがハングして失敗したり、ANTHROPIC_BASE_URL のカスタムゲートウェイでサーバーのキープアライブ ping が届いているのにストリームのアイドルタイムアウトが誤って発火したりと、ネットワークまわりの細かい不満もいくつかあったんだよね。

これで何が変わるの?

セキュリティ関連の修正がまず目立つポイントだよ。

  • ワークツリー分離セッションとそのサブエージェントが、メインのチェックアウトに対して破壊的な git コマンドを実行できてしまう問題を修正。分離はどのセッション種別でも、ファイル編集と Bash の両方に適用されるようになったの
  • バックグラウンドエージェントタスク(要約・圧縮・リネームなど)で PreToolUse の自動許可フックがツール制限をすり抜けてしまう問題を修正
  • 自動モードの安全性も強化されて、SendMessage で他のエージェントセッションに送るメッセージは、送信前に権限分類器のチェックを通るようになったよ

接続まわりも地味だけどうれしい修正が入ってるの。

  • HTTPS プロキシの背後で起動時の接続チェックがハングして失敗する問題を修正。API リクエストと同じプロキシ対応のトランスポートを使うようになって、失敗時もわかりやすいメッセージでタイムアウトするようになったよ
  • 実際には完了していたレスポンスなのに「Connection closed mid-response」エラーが表示されてしまう問題を修正
  • カスタムの ANTHROPIC_BASE_URL ゲートウェイで、サーバーのキープアライブ ping が届いているのにストリームのアイドルタイムアウトが誤発火する問題を修正

深く潜ってみよう

そのほかの細かい修正・改善もたくさんあるから、気になりそうなものをピックアップするね。

  • /usage-credits が Team/Enterprise プランで、以前の申請が却下されたメンバーに「すでに申請済み」と表示され続けて再申請できなくなる問題を修正
  • /usage が MCP サーバーの使用量を過大に計上していた問題を修正。実際にそのサーバーのツール結果を消費したリクエストだけが、そのサーバーの取り分としてカウントされるようになったよ
  • ブランチをプッシュしたあとに作られたプルリクエストが、セッションにリンクされない問題を修正(GitHub REST API 経由のケースも含む)
  • 組織で許可モデルが制限されているとき、model: opus のようなサブエージェント・チームメイトのファミリーエイリアスが、親モデルまで一気に落ちてしまわず、そのファミリーの中で組織が許可している最新モデルまで段階的に落ちるように修正
  • claude.ai コネクタが、セッショントークンが無効なだけなのに「認証が必要」と誤って表示される問題を修正。今は代わりに /login を促すヒントが出るようになったよ
  • MCP サーバーが削除された場合など、ローカルで使えなくなったツールのエラーが表示されないままになる問題を修正
  • SendMessage が長い要約を拒否してしまう問題を修正。今は文字数上限で失敗せず、切り詰めて送るようになったの
  • サブエージェントのトランスクリプト表示で、スピナーの effort ラベルがセッション全体の effort ではなく、サブエージェント自身の effort: 設定を表示するように修正
  • ファイルウォッチャーがファイルシステムエラーに遭遇したときや、終了処理まわりで発生していたまれなクラッシュを修正
  • スクリーンリーダー(--ax-screen-reader モード)で、バックスペースのたびに入力行全体を読み上げ直してしまう問題を修正。行末の削除は削除した文字だけを読み上げるようになったよ
  • CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST が設定されているとき、ホスト側のモデル選択キーが、古くなった managed-settings.json の内容より優先されなかった問題を修正
  • disable-model-invocation が付いたスキルを呼び出そうとしたときの拒否メッセージを改善。Claude が自力でその処理を再現しようとせず、ユーザーにスキルの実行を頼むように案内するようになったよ
  • /diff ビュー、Remote Control のワークスペース差分、Claude Code on the web のファイル編集差分が、ワークスペース側の diff ドライバーや textconv 設定を無視して、生の git blob の内容を使うように改善

「変更」としては、Remote Control の自動起動まわりのルールも変わったよ。リポジトリローカルの設定(.claude/settings.json.claude/settings.local.json)からは、もう Remote Control を有効化できなくなったの(無効化はできるよ)。有効にしたいときはユーザースコープで /config から設定してね。それと、Ultraplan 機能は削除されたよ。

まとめ

  • ワークツリー分離のセキュリティ強化。破壊的な git コマンドの抜け道と、バックグラウンドタスクでの権限チェックすり抜けを修正
  • SendMessage の送信メッセージが権限分類器でチェックされるようになり、自動モードの安全性が向上
  • HTTPS プロキシやカスタムゲートウェイまわりの接続不具合を複数修正
  • /usage /usage-credits の表示・集計不具合、モデルのフォールバック挙動、スクリーンリーダー対応など、細かい修正・改善が多数
  • Remote Control の自動起動はユーザースコープでのみ有効化可能に変更。Ultraplan 機能は削除

毎日 Claude Code を使ってる人はもちろん、ワークツリー分離やバックグラウンドエージェントを活用してる人、社内プロキシ経由で使ってる人には、セキュリティ面でも安定性の面でも見逃せないアップデートだよ!