Claude Code 2.1.110 リリース:TUIレンダリング改善とフック・MCP安定性の強化

anthropics/claude-code

Claude Code 2.1.110では、フリッカーフリーなフルスクリーンレンダリングを実現する /tui コマンドの追加を筆頭に、MCP接続の堅牢化、フック処理の修正、Remote Controlの操作性向上など、広範な改善が施されました。

背景

前バージョン 2.1.108〜2.1.109 では、プロンプトキャッシュの長時間TTL対応やセッション recap 機能が導入されましたが、フルスクリーンモードのレンダリング品質や MCP サーバーの安定性、フック処理の一貫性に課題が残っていました。2.1.110 はこれらの積み残しを解消しつつ、UI操作性の再設計を行ったリリースです。

技術的な変更

TUI・フルスクリーン表示の再設計

フルスクリーンレンダリングの制御モデルが刷新され、/tui コマンドと tui 設定が新たに追加されました。/tui fullscreen を実行することで、同一会話セッションを維持したままフリッカーフリーなレンダリングに切り替えられます。

あわせて、既存のキーバインドと表示モードの責務が整理されました:

  • Ctrl+O: フォーカスビューではなく、通常トランスクリプトと詳細トランスクリプトのトグルに変更
  • /focus コマンド: フォーカスビューのトグルを独立したコマンドとして分離
  • autoScrollEnabled 設定: フルスクリーンモードでの会話自動スクロールを無効化するオプションを追加

あわせて、macOS Terminal.app など synchronized output をサポートしない端末での起動時の文字化けも修正されています。

MCP サーバーの安定性向上

今回のリリースでは MCP まわりの修正が複数含まれています。SSE/HTTP トランスポートを使用している場合に、レスポンス送信中にサーバー接続が切断されると MCP ツール呼び出しが無限にハングする問題が修正されました。

2.1.105 でのリグレッションも解消されています。それ以前は stdio MCP サーバーが stdout に非 JSON 行を出力した場合でも許容されていましたが、2.1.105 以降は最初の非 JSON 行で切断されていました。今回の修正でこのリグレッションが解消され、stray non-JSON lines を出力する stdio MCP サーバーとの互換性が回復しています。

さらに /doctor コマンドが強化され、同一 MCP サーバーが異なるエンドポイントで複数の設定スコープに定義されている場合に警告を出すようになりました。

フック処理の一貫性修正

PermissionRequest フックと PreToolUse フックに関して、動作の一貫性を損なうバグが修正されました:

  • PermissionRequest フック: updatedInput を返した場合に permissions.deny ルールの再チェックが行われていなかった問題を修正。また、setMode: 'bypassPermissions' による更新が disableBypassPermissionsMode 設定を無視していた問題も合わせて修正
  • PreToolUse フック: ツール呼び出しが失敗した際に additionalContext が破棄されていた問題を修正

これらの修正により、フックによるパーミッション制御がより予測可能な動作になっています。

SDK・ヘッドレスセッションの改善

SDK およびヘッドレスセッションで、環境変数 TRACEPARENT / TRACESTATE を読み込んで分散トレーシングのリンクが可能になりました。これにより、外部の可観測性基盤と Claude Code セッションをトレース単位で紐付けられます。

また、CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC または CLAUDE_CODE_DISABLE_TERMINAL_TITLE が設定されているときに、セッションの自動タイトル生成が余分な Haiku リクエストを発行していた問題も修正されています。

Remote Control の操作性向上

モバイル・Web クライアントからの Remote Control セッションに対して、/autocompact/context/exit/reload-plugins の各コマンドが新たに動作するようになりました。また、claude.ai 側からのセッションリネームがローカル CLI セッションに反映されない問題、セッションが古い場合に再ログインを促す代わりに汎用エラーが表示される問題も修正されています。

設計判断

フォーカスビューのトグルを Ctrl+O から /focus コマンドへ分離したことは、単純なキーバインドの変更以上の意味を持ちます。Ctrl+O は「表示の詳細度をトグルする」という一貫した責務に絞られ、フォーカスという別の次元の切り替えは明示的なコマンドとして独立させる設計です。フルスクリーンモードの成熟に伴い、UI状態の軸が増えたことへの対応といえます。

セッション recap のデフォルト挙動についても注目すべき変更があります。これまでテレメトリー無効環境(Bedrock、Vertex、Foundry、DISABLE_TELEMETRY)では recap が無効でしたが、今回からはデフォルトで有効化されました。オプトアウトは /config または CLAUDE_CODE_ENABLE_AWAY_SUMMARY=0 で行えます。プライバシー設定とは独立して利便性を提供するという方向への調整です。

まとめ

2.1.110 は、フルスクリーン TUI の基盤再設計と、MCP・フック・Remote Control にわたる信頼性修正を一体で提供するリリースです。特に MCP スタックの安定化とフックのセキュリティ的な一貫性修正は、Claude Code をエージェント基盤として活用する環境での運用品質に直結する変更です。

記事メタデータ

Generated by:
Claude Sonnet 4.6 for DiffDaily
LLM Trace:
1e4503a1

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

品質レビュー結果

Review Status:
承認済み
Review Count:
1回
Reviewed by:
Gemini 2.5 Pro for DiffDaily

Review Criteria:

記事構成 ✓ PASS

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

「総論→各論→結論」の構成が明確です。リード文、背景、技術詳細、設計判断、まとめがそれぞれ適切に配置されており、理想的な記事構成です。

カスタムMarkdown構文 ⚠ WARNING

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

記事末尾のPrimary Sourceで、コミットIDへのリンクがPR番号形式([PR #...])で記述されています。これは不正確です。

対象読者への適合性 ✓ PASS

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

TUI, MCP, フックなどの専門用語が適切に使用されており、専門知識を持つエンジニアという対象読者に適合した内容です。

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

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

各セクションが総論から各論へと展開され、各段落はトピックセンテンスで始まるなど、パラグラフ・ライティングの原則が守られており、非常に読みやすいです。

Diff内容との照合 ✓ PASS

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

記事はCHANGELOGのDiff内容を正確に反映しています。箇条書きの情報を意味のあるグループに再編成し、分かりやすく解説しています。

技術用語の正確性 ✓ PASS

技術用語の正確な使用

CHANGELOGに記載されている技術用語(stray non-JSON lines, TRACEPARENT, PermissionRequestなど)を正確に使用しています。

説明の技術的正確性 ✓ PASS

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

CHANGELOGの変更点を論理的にグループ化し、それぞれの技術的な意味合いを正確に説明しています。例えば、MCP関連の修正をまとめて安定性向上という文脈で解説しており、分かりやすいです。

事実の突合 ✓ PASS

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

記事の主張はすべて提供されたCHANGELOGのDiffによって裏付けられています。「設計判断」セクションも、Diffの内容から導き出される妥当な解釈であり、ハルシネーションは見られません。

数値・固有名詞の確認 ⚠ WARNING

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

バージョン番号やコマンド名は正確ですが、ソースとして記載されているコミットIDの表記がPR番号と誤解を招く形式(PR #45ae2f5)になっています。

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

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

記事のタイトルは、PRの変更内容(CHANGELOG 2.1.110の主要な改善点)を的確に要約しており、読者の期待と一致します。

外部知識の正確性 ✓ PASS

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

記事の内容はすべてPR情報(CHANGELOG)に基づいており、サポート状況やリリース予定といった外部知識の持ち込みはありません。

時間表現の正確性 ✓ PASS

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

「2.1.105 でのリグレッション」といった時間的な前後関係を示す表現が、CHANGELOGの記述に基づいており正確です。