開発・技術Claude 公開 2026年10月15日

Claude Code v2.1.299・v2.1.300の変更点、アイドル圧縮とMCP許可ルールの変更

関連: Claude Code ・ MCP ・ リリースノート

✔ 事実確認済み(2026-10-14):記事中の事実 24 件を出典の本文と照合しています。

Claude Code の v2.1.299 と v2.1.300 が公開されました。長い会話を放置したときの自動圧縮、MCP(外部ツールをつなぐ仕組み)の許可ルール、フックの実行順など、設定や運用に関わる変更が入っています。Claude Code を日常的に使っている方や、チームの設定を管理している方に向けた記事です。この記事では、影響が大きそうな項目を選び、公式のリリースノートに沿って整理します。

今回の2バージョンの概要

どちらのリリースも、追加(Added)、修正(Fixed)、改善(Improved)、変更(Changed)が多数並ぶ形式です。VS Code 拡張、Claude Tag(Slack 上の Claude)、クラウドセッション、Windows 向けの項目も含まれますが、この記事では扱いません。全項目は公式のリリースノートで確認してください。

以前のバージョンの内容は、v2.1.296の変更点にまとめています。

この記事は 2026 年 10 月時点のリリースノートに基づきます。最新の内容は公式のリリースページで確認してください。

v2.1.299 の主な変更

まず、使い方や設定に直接関わる項目を表にします。

項目 リリースノートの内容
アイドル圧縮 ターミナルで 200K トークン以上の会話を約 54 分放置すると、1 時間のプロンプトキャッシュが切れる前に圧縮される
圧縮の設定 最小トークン数は CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS で変更でき、settings.json の "idleCompaction": false で無効にできる(どちらも v2.1.290 以降が必要)
@ファイル参照 環境変数 CLAUDE_CODE_DISABLE_FILE_MENTIONS を設定すると、@ で指したファイルの中身ではなく、パスだけが Claude に渡る
/usage max effort、ワークフロー、常時読み込まれる文脈、大きなツール結果についての警告を追加
エージェント表示 agent view で /effort と /fast を使うと、新しいセッションの開始時の設定を決められる
claude plugin eval --disallow-tools を追加。Agent などの組み込みツールを、評価の実行から外せる

アイドル圧縮とは

圧縮(compaction)とは、長くなった会話を要約して短くする処理です。リリースノートによると、約 54 分放置された長い会話は、1 時間のプロンプトキャッシュ(同じ内容の再処理を省く仕組み)が切れる前に圧縮されます。目的は、次のメッセージを送ったときに会話全体を処理し直さずに済むようにすることです。

自動で圧縮されたくない場合は、"idleCompaction": false を settings.json に書きます。対象になる会話の大きさを変えたい場合は、CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS を使います。

@ファイル参照を無効にする環境変数

CLAUDE_CODE_DISABLE_FILE_MENTIONS を設定すると、@ でファイルを指したときに、中身ではなくパスだけが Claude に渡ります。Claude は、そのパスを自分のファイル読み込みツールで読みます。

日本語ファイルを扱う方への修正

Write ツールの問題が修正されました。以前は、バイトオーダーマーク(BOM)を落とすことがありました。Windows-1252、Shift-JIS、GBK、UTF-16BE のファイルを、黙って UTF-8 にすることもありました。リリースノートによると、これらのファイルへの書き込みは、変換されずに拒否されます。また、Read ツールが BOM つきの UTF-16LE ファイルを正しく読めない問題も修正されています。

v2.1.299 の変更(互換性に関わるもの)

「Changed」には、既存の設定に影響しうる項目があります。次の表で、確認しておきたいものを挙げます。

項目 内容
MCP の許可ルール mcp__a は、名前が a__b や a_ のサーバーを許可しなくなった。mcp__<server>__* のように、サーバーの正規化後の名前をすべて書く
エージェントの tools: 名前を挙げた MCP サーバーのツールだけを受け取る。名前に __ を含むサーバーは mcp__<名前全体>__* と書く
UserPromptSubmit フック スキルやカスタムスラッシュコマンドが展開される前に実行される。フックがプロンプトを止めたときは、埋め込まれたシェルコマンドも止まる
終了時の再開コマンド セッション名ではなく、セッション ID で表示される。名前に含まれる文字が、貼り付けたときに実行されないようにするため
長時間の通信 ANTHROPIC_BASE_URL を指定した接続は、データが届かないとき 180 秒ではなく 300 秒待つ

MCP の許可ルールを書いている方は、特に確認してください。mcp__a のようなルールで、a__b や a_ といった名前のサーバーも許可するつもりだった場合は、それらに効かなくなります。

v2.1.300 の主な変更

v2.1.300 は、v2.1.299 に続くリリースです。運用や計測に関わる項目を挙げます。

項目 内容
OpenTelemetry api_request イベントに cache_creation_5m_tokens と cache_creation_1h_tokens を追加。キャッシュの書き込みを、保持時間ごとに分けて見られる
OpenTelemetry トレースのスパンに gen_ai.provider.name、gen_ai.conversation.id などの GenAI 用の属性を追加
通信 api.anthropic.com への大きなリクエストは、テレメトリを切っていても gzip で圧縮される。止めるには CLAUDE_CODE_GZIP_REQUEST_BODIES=0 を設定する
フック PreToolUse と PermissionRequest フックが返す updatedInput は、Claude 自身の入力と同じように検証される。未知のキーは捨てられ、ツールが受け付けない入力は呼び出しを拒否する
セッションの記録 ローカルの記録に、各 API リクエストのシステムプロンプト、ツール、パラメータも残る
claude remote-control --sandbox と --no-sandbox を削除。指定するとエラーで終了する。サンドボックスは settings の sandbox.enabled で設定する

注意したい点

claude remote-control で --sandbox や --no-sandbox を付けているスクリプトは、v2.1.300 以降でエラー終了します。リリースノートによると、これらのフラグは以前から効果がありませんでした。該当するスクリプトがある場合は、フラグを外してください。

セッションの記録に、システムプロンプトやツール、パラメータも残るようになりました。記録を共有する場合は、中身を確認してから渡してください。

更新するときの確認手順

  1. 自分が使っているバージョンを確認します。
  2. MCP の許可ルール(mcp__ で始まるもの)を見直し、サーバー名を省略していないか確認します。
  3. フックを使っている場合は、UserPromptSubmit の実行順の変更と、updatedInput の検証の変更が、既存の動きに影響しないか確認します。
  4. 長い会話を放置することが多い場合は、アイドル圧縮の設定が自分の使い方に合うか確認します。
  5. claude remote-control を呼び出すスクリプトに、--sandbox や --no-sandbox が残っていないか探します。

よくある質問

Q. アイドル圧縮はいつでも動きますか。 A. リリースノートによると、ターミナルで 200K トークン以上の会話を約 54 分放置したときに動きます。最小のトークン数は変更でき、無効にもできます。

Q. v2.1.299 の MCP ルールの変更で、既存の設定は壊れますか。 A. 許可ルールは、書かれた名前のサーバーだけに効くようになりました。mcp__a で a__b のような別のサーバーも許可していた場合は、そのサーバー名も含めて書き直す必要があります。自分の設定を見直してください。

Q. 全部の変更点はどこで見られますか。 A. 公式の GitHub リリースページにあります。この記事で扱ったのは、一部の項目だけです。

まとめ

  • v2.1.299 では、約 54 分放置された 200K トークン以上の会話を自動で圧縮するアイドル圧縮が追加されました。
  • MCP の許可ルールは、サーバー名をすべて書く形に厳密化されました。
  • v2.1.300 では、OpenTelemetry のキャッシュ書き込みの内訳が追加され、claude remote-control の --sandbox と --no-sandbox が削除されました。

まず、自分の mcp__ ルールとスクリプトのフラグを確認してください。そのうえで、公式のリリースページで、自分の環境に関わる項目を読み返すことをおすすめします。

参考・出典