Claude Code 2.1.113 リリース — ネイティブバイナリへの移行とセキュリティ強化

anthropics/claude-code

Claude Code 2.1.113では、CLIのコアアーキテクチャをJavaScriptバンドルからネイティブバイナリへ切り替えるとともに、Bashセキュリティの複数の穴を塞ぎ、UI・安定性・リモート機能の多数の不具合を修正しました。

背景

本リリースは単なるバグ修正にとどまらず、CLIの実行モデルそのものを変える構造的な変更を含んでいます。また、Bashツールのパーミッション制御における複数のセキュリティ上の見落としが修正されており、セキュリティ観点での重要度も高いリリースです。

あわせて、サブエージェント・リモートコントロール・MCP連携といった複合機能の信頼性向上に向けた修正が多数含まれています。

技術的な変更

CLIのネイティブバイナリへの移行

最大の構造変更は、CLIがJavaScriptバンドルを実行する代わりに、プラットフォームごとのオプション依存として提供されるネイティブバイナリを起動するようになった点です。プラットフォーム別の per-platform optional dependency という配布方式を採用することで、実行プラットフォームに対応したバイナリのみがインストールされます。

Bashセキュリティの強化

Bashツールのパーミッション制御に関して、3つの独立したセキュリティ修正が行われました。

  • Bash(rm:*) ルール: macOSにおいて /private/{etc,var,tmp,home} 配下のパスが危険な削除対象として扱われるようになりました。
  • execラッパーへの対応: Bashの denyルール が、env/sudo/watch/ionice/setsid などのラッパーで包まれたコマンドにも正しくマッチするようになりました。
  • Bash(find:*) ルール: find -execfind -delete オプションが自動承認されなくなりました。

また、マルチラインコマンドの先頭行がコメントの場合にコマンド全体をトランスクリプトに表示する修正も行われました。これはコメントで実際のコマンドをUI上で隠蔽するスプーフィングベクターを閉じるものです。さらに、dangerouslyDisableSandbox が有効な場合にパーミッションプロンプトなしでサンドボックス外のコマンドが実行されていたバグも修正されています。

サブエージェントの安定性向上

ストリーム途中で停止したサブエージェントが、従来は無音でハングしていたのに対し、10分後に明確なエラーで失敗するようになりました。また、MCP同時呼び出し時のタイムアウト処理のバグも修正されています。あるツール呼び出しへのメッセージが別の呼び出しのウォッチドッグを無効化してしまう競合状態が解消されました。

リモートコントロールの修正

リモートコントロール(モバイル/Webクライアント)に関連する複数の不具合が修正されました。

  • サブエージェントのトランスクリプトがリモートセッションにストリーミングされない問題
  • Claude Code終了時にリモートセッションがアーカイブされない問題
  • Bedrock Application Inference Profile ARN経由でOpus 4.7を使用した際の thinking.type.enabled is not supported 400エラー
  • CLAUDE_CODE_EXTRA_BODYoutput_config.effort がサブエージェント呼び出しやVertex AIで400エラーを引き起こす問題

UX・入力操作の改善

フルスクリーンモードでのキーボード操作が改善されました。Shift+↑/↓ による選択範囲の拡張時にビューポートがスクロールするようになり、Ctrl+A/Ctrl+E でマルチライン入力の論理行の先頭/末尾に移動できるようになりました(readlineの挙動に合わせた変更です)。Windowsでは Ctrl+Backspace で前の単語を削除できるようになりました。

ターミナル表示面では、OSC 8ハイパーリンク対応ターミナルで、レスポンスやBash出力中の長いURLが折り返しを跨いでもクリック可能になりました。NO_COLOR 設定時にプロンプトカーソルが消える問題も修正されています。

cd <現在のディレクトリ> && git … が no-op の cd でもパーミッションプロンプトを出していた問題が修正されました。また、セッションリキャップが未送信テキストの入力中に自動発火する問題や、Cmd+Backspace/Ctrl+U が行頭までの削除を行わなくなっていた問題も合わせて修正されています。

まとめ

2.1.113は、CLIのネイティブバイナリ移行という実行モデルの刷新と、Bashセキュリティにおける複数のパーミッション制御修正を軸としたリリースです。特にBashツールを許可ルールで運用しているユーザーにとって、今回のセキュリティ修正は実際の動作に影響する変更であり、アップデートを優先すべきリリースといえます。

記事メタデータ

Generated by:
Claude Sonnet 4.6 for DiffDaily
LLM Trace:
7c4d103a

この記事はAIによって自動生成されています。内容の正確性については、必ずソースコードやPRを確認してください。

品質レビュー結果

Review Status:
リトライ後承認
Review Count:
3回 (改善を経て承認)
Reviewed by:
Gemini 2.5 Pro for DiffDaily

Review Criteria:

記事構成 ✓ PASS

Title, Context, Technical Detailの存在と明確さ

リード文(総論)→背景・技術詳細(各論)→まとめ(結論)という3部構成が明確に適用されており、読者が記事の全体像を把握しやすい構成になっています。

カスタムMarkdown構文 ✓ PASS

シンタックスハイライト・GitHubリンク記法の正確性

コミットIDへのリンクが短縮形で正しく記述されています。記事内にコードブロックがないため、シンタックスハイライトの評価は対象外ですが、使用されている構文は適切です。

対象読者への適合性 ✓ PASS

エンジニア向けの適切な技術レベルと表現

「per-platform optional dependency」「スプーフィングベクター」「競合状態」などの専門用語が適切に使用されており、対象読者であるエンジニアに適した技術レベルで書かれています。

パラグラフ・ライティング ✓ PASS

トピックセンテンス・1段落1トピック・段落長

各セクションの冒頭で要旨が述べられ、各段落がトピックセンテンスで始まるなど、パラグラフ・ライティングの原則が守られており、高い可読性を実現しています。

Diff内容との照合 ⚠ WARNING

コードブロックとDiff内容の一致

提供されたDiffはCHANGELOGの更新のみで、コードの差分ではないため、コード引用の正確性を直接照合することはできません。ただし、記事の内容はCHANGELOGの記述と整合しています。

技術用語の正確性 ✓ PASS

技術用語の正確な使用

CHANGELOGに記載された`MCP concurrent-call`や`UI-spoofing vector`といった技術的な変更内容を、日本語で正確かつ分かりやすく解説できています。

説明の技術的正確性 ✓ PASS

技術的主張の正確性と論理性

CHANGELOGに羅列された多数の変更点を、ネイティブバイナリ移行、セキュリティ、安定性向上といったカテゴリに効果的に分類し、技術的に正確に解説できています。

事実の突合 ✓ PASS

PR情報による主張の裏付け(ハルシネーション検出)

記事内のすべての主張は、提供されたCHANGELOGの記述に完全に基づいており、推測や根拠のない情報の追加(ハルシネーション)は見られません。

数値・固有名詞の確認 ✓ PASS

PR番号・コミットID・バージョン等の正確性

バージョン番号「2.1.113」やコミットID「71366ec」などの数値・固有名詞が正確に記載されています。

タイトル・説明との一致 ✓ PASS

記事タイトル・説明とPR内容の一致

タイトルが、CHANGELOGの中でも特に重要な変更点である「ネイティブバイナリへの移行」と「セキュリティ強化」を的確に捉えており、記事の内容を正確に反映しています。

外部知識の正確性 ✓ PASS

PRに記載のない外部知識(LTS、サポート状況など)の不使用

記事の内容は提供されたCHANGELOGの範囲に留まっており、サポート状況やリリース予定など、根拠のない外部知識は含まれていません。

時間表現の正確性 ✓ PASS

時間表現がPR情報と一致しているか

リリース内容を報告する記事として、「〜しました」「〜されました」といった過去形の表現が適切に使われており、時間表現に誤りはありません。