Claude Code v2.1.281:署名を無効にする設定、自動モードとrmの安全性に関する変更、Claude apps gatewayの新オプション
Claude Code v2.1.281では、attribution: false設定、MCPのURLモードelicitation、Claude apps gatewayの新オプションが追加され、自動モードと危険なrmコマンドの審査方法が変わりました。修正も多数含まれます。
Claude Code v2.1.281は大規模なリリースです。コミットとPRの署名をまとめて非表示にする設定、MCPサーバー向けのURLモードelicitation、Claude apps gatewayの複数のオプションが追加され、自動モードと危険なrmコマンドの審査方法が変わりました。そのほか、セッションの再開、プロキシやゲートウェイ経由のストリーミング、ダイアログ、vimモード、VS Code、Claude Code on the web、Claude Tagにわたる問題が修正されています。
新機能
"attribution": falseで署名を非表示に
settings.jsonで"attribution": falseを設定すると、コミットとPRの署名がすべて非表示になります。古いバージョンのCLIはこの設定を含む設定ファイルを読み飛ばすため、複数のバージョンで共有する設定ファイルではオブジェクト形式を使い続けてください。
自動モード:サーバー側の審査がより多くのシェルコマンドに
自動モードの分類器による審査がサーバー側で行われる環境では、読み取り専用やサンドボックス内のシェルコマンドもその審査を待つようになり、問題ありと判定されるとブロックされます。CLAUDE_CODE_AUTO_MODE_SERVERはAnthropic APIへの直接接続にも適用されるようになり、0でサーバー側分類器をオプトアウト(その場合ローカル分類器が使用量に計上されます)、1でオプトインします。VS CodeとJetBrainsのパネルでは、自動モードが課金対象の分類器リクエストにフォールバックしたときにContinue/Stopのプロンプトが表示されるようになり、/insightsには最近のセッションで自動モードが処理できた権限プロンプトの数を見積もる推奨が加わりました。
危険なrmコマンドへの安全策
対象がコマンド置換の出力だけである再帰的なrm(例:rm -rf "$(pwd)")は、自動モードや--dangerously-skip-permissionsモードで確認なしに実行されなくなりました。CLAUDE_CODE_DISABLE_SUBSTITUTION_RM_PROMPT=1を設定していない限り、Bashの許可ルールがあっても確認を求めます。これらのモードでは危険なrmの確認が2分間回答を待ち、その後は書き換えのヒントを添えてコマンドを拒否するため、無人のセッションも処理を続けられます(CLAUDE_CODE_DISABLE_DANGEROUS_RM_TIMEOUT=1で無効化)。危険なrmのチェックも、シェル変数の後にトップレベルのディレクトリ名が続く削除など、より多くのパターンを検出するようになりました。
「今すぐ送信」で実行中のツールをバックグラウンドへ
今すぐ送信(send now、ctrl+enterまたはctrl+x ctrl+s)は、ターンをキャンセルするのではなく、実行中のツールをバックグラウンドに移すようになりました。
MCPのURLモードelicitationとプラグイン検証の強化
2026-07-28プロトコルの接続では、MCPサーバーがURLモードelicitationを使って、ブラウザーベースのフローを開くようClaude Codeに求められるようになりました。サーバーが完了を確認する手段を持たない場合、待機中のダイアログは画面に残りません。claude plugin validateはMCPサーバーもチェックするようになり、読み込み時に黙って除外される.mcp.jsonのエントリ、宣言されていない${user_config.*}の参照、安全でないURLを報告します。シェル形式のフックで${CLAUDE_PLUGIN_ROOT}が引用符で囲まれていない場合も警告します。
Claude apps gatewayの追加機能
Claude apps gatewayが、desktopポリシーブロック内の新しいClaude Desktopのキー(blockReadsOutsideWorkingDirectoriesやdisableBypassPermissionsModeなど)に対応しました。Bedrockアップストリームには、STS経由で引き受けたIAMロールとしてBedrockを呼び出すassume_role(必要なら別のAWSアカウントでも可能で、開発者ごとに1セッションにすることもできます)と、経由するすべてのリクエストにAmazon Bedrockのガードレールを適用するguardrail: {id, version}(すべてのBedrockアップストリームに設定するか、どれにも設定しないかのどちらか)が加わりました。新しいtelemetry.resource_attributes設定では、Claude Desktopと/loginセッションのテレメトリに固定のラベルを付けられます。
AGENTS.mdの対応範囲を拡大
AGENTS.mdのサポートが、Amazon Bedrock、Google Vertex AI、Microsoft Foundry、LLMゲートウェイ、テレメトリを無効にしたセッションでも機能するようになりました。
self-hosted runnerはシステムプロンプトをファイルで受け渡し
self-hosted runnerは、システムプロンプトをコマンドライン文字列ではなくプライベートなファイルとしてClaude Codeに渡すようになり、大きなプロンプトで起動に失敗しなくなりました。--system-promptや--append-system-promptを付け足すラッパーやcommandフックは、--system-prompt-fileまたは--append-system-prompt-fileに切り替える必要があります。
修正と改善
- 再開:再開したセッションが以前のターンを変化した形で再送しなくなりました(APIが会話のそれまでの推論を破棄する原因になりえました)。非常に大きなセッションを再開した際に、最後の数メッセージしか復元されないことがある問題も修正されました。
- 再開:ツール呼び出しの途中で終了したセッションを再開すると、Claudeがその呼び出しを把握し、結果が不明であることを知らされるようになりました。手動で再開したときに隠れた「Continue」メッセージが追加されることもなくなりました。多くのファイルを読んだ長いセッションや、圧縮済みの非常に長いセッションの再開も速くなっています。
- プロキシとゲートウェイ:ストリームを正常に閉じるプロキシやゲートウェイによって途中で切られた応答が、警告なしに完了として表示されなくなりました。重複したストリームイベントでツール呼び出しが2回実行されることもなくなりました。
- プロキシとゲートウェイ:プロキシが応答の途中でストリームイベントを落としても、「Content block not found」で失敗しなくなりました。部分的な応答は保持され、ウェブ検索もすでに届いた結果を保持します。
- プロンプトキャッシュ:ツール検索がオフのとき、MCPサーバーが会話の途中で切断されたり、再開後もまだ接続中だったりしても、プロンプトキャッシュが失われなくなりました。
- 信頼性:APIリクエストの再試行中にセッションが終了しうるクラッシュ(「unrecoverable interface error」)と、モデルが解析できないツール呼び出しと出力上限による切り詰めを交互に繰り返したときに、ターンが
--max-turnsを無視して際限なく再試行しうる問題を修正しました。 - 起動:MCPサーバーもプラグインも設定していない場合、対話型の起動がマネージド設定のネットワークリクエスト(約80ミリ秒、ネットワークに到達できない場合は17秒以上)を待たなくなりました。gitの読み取り、起動時のテレメトリ、Bedrock/Vertexのモデルアップグレードチェックも、最初の画面描画より前には実行されません。
- PDF:3 MBを超えるPDFを読み込んだり@メンションしたりしたときに、応答が最大2分間遅れることがなくなりました。
- 権限:NULバイトを含む権限ルールはワイルドカードとして展開されず、何にもマッチしなくなりました。また、権限ダイアログと添付ファイルのチェックが、承認前にmacOSの
/.vol、/.nofollow、/.resolve以下のパスを読み取らなくなりました。 - バックグラウンドセッション:
claude --bgは、ワークスペースの信頼確認を通っていないディレクトリでバックグラウンドセッションを開始してプロジェクトのフックを実行する前に、まず信頼を確認するようになりました。非対話で実行した場合は終了します。 - 設定:
--setting-sources(およびSDKのsettingSources)が起動されるセッションに引き継がれるようになり、teammates、/bg、claude agentsのセッション、--worktree --tmuxが親と同じ制限で開始します。 - サンドボックス:
excludedCommandsのエントリが、git rev-parse --git-dir、シェルの組み込みコマンドと同じ名前のプログラム、[WIP]や#の行を含むコミットメッセージにもマッチするようになりました。CLAUDE_CODE_TMPDIRを設定している場合でも、サンドボックス内のBashコマンドが$TMPDIRに書き込めます。 - MCP:ブロッキングイベント(PreToolUseなど)の
mcp_toolフックが、MCPサーバーの接続中にスキップされず、MCPの接続タイムアウトまで接続を待つようになりました。プラグインやclaude.aiコネクタと設定済みサーバーでURLの書き方が異なっていても、同じMCPサーバーに2回接続しなくなりました。 - ダイアログ:
/memory、/hooks、/mcp、/export、/copy、/themeなど残りのダイアログやピッカーでも、Ctrl+CまたはCtrl+Dを2回押すとClaude Codeが終了せずにそれらが閉じるようになりました。Shift+Tabを素早く2回押したときに誤った権限モードになる問題も修正されました。 - vimモード:
dj/dk/dG/dggとそのc/y形式が行の一部にしか作用しない問題、1Gが最終行に移動する問題、d0/c0/y0が何もしない問題、特定の状況でcwが次の単語まで変更する問題、ヒンディー語やベンガル語などの文字で単語移動が単語の途中で止まる問題を修正しました。 - プロンプト周り:キューに入れたメッセージが、スピナーの下ではなく上に、会話の一部として表示されるようになりました。プロンプト下のセッションのアーティファクトリンクは1つのフッターピルにまとめられ、クリックすると
/artifactsが開き、このセッションのアーティファクトが先頭に並びます。 - Windows:
$TMPDIR/…に書き込むBashコマンドが「Permission denied」で失敗しなくなりました。同時に更新されるClaude Codeのセッション同士が互いのclaude.exeのバックアップを削除してしまう競合も修正されました。 - macOS:ログインキーチェーンがロックされているとき(スリープ解除直後など)に資格情報を書き込んでも、保存済みのMCP OAuthトークンが失われたり、キーチェーンの項目が削除されたりしなくなりました。
- VS Code:拡張機能ホストの再起動後に、エディタータブ内の会話が黙って止まったままにならなくなりました。履歴を読み込めなかったclaude.ai/codeのセッションは、空や一部だけの状態で開くのではなくエラーを表示します。
- Claude Code on the webとClaude Tag:プランに高速モードが含まれ、選択中のモデルが対応している場合、クラウドセッションのコンポーザーのモデルメニューにFast modeの切り替えが表示されます。Slackでは、スレッド内の返信にClaudeが永久に応答しなくなることがあったチャンネルが、Claudeへの次の新しいメッセージで自動的に回復するようになり、Stopで止めたリクエストをClaudeが再開することもなくなりました。
このリリースには合計177件の変更が含まれています。すべての項目は変更履歴の全文をご覧ください。
アップデート方法
- インストール済みのバージョンを確認:
claude --version - その場でアップデート:
claude update - self-hosted runnerのラッパーや
commandフックが--system-promptや--append-system-promptを付け足している場合は、--system-prompt-fileまたは--append-system-prompt-fileに切り替えてください。"attribution": falseを使う場合、古いバージョンのCLIはこの設定を含むファイルを読み飛ばすため、古いCLIも読む設定ファイルではオブジェクト形式を維持してください。