Claude Media
Claude Code v2.1.292 — サブエージェントにeffort指定、stdio MCPは新プロトコルへ

Claude Code v2.1.292 — サブエージェントにeffort指定、stdio MCPは新プロトコルへ

Claude Code v2.1.292は、Agentツールのeffort指定、claude plugin installの--marketplace、stdio MCPの新プロトコル既定化を加え、権限まわりの抜け穴も複数修正しました。

このリリースで何ができるようになるか

Claude Code v2.1.292は、92項目が並ぶ大きめのリリースです。新機能は少なく、大半は修正です。更新前に押さえておきたい変化は次の3つです。

  • サブエージェントごとにeffortを指定できる: Agentツールにeffortパラメータが加わりました。Claudeは、頼まれたeffortレベルでサブエージェントを動かします。
  • シェルから「マーケットプレイスの追加とプラグインの導入」を1回で済ませられる: claude plugin installに--marketplace <source>が加わりました。
  • stdio MCPサーバーが新しいプロトコルで接続する: ローカルのstdio MCPサーバーは、プロトコル版2026-07-28を既定で試します。戻したいときはMCP_PROTOCOL_NEGOTIATION=legacyです。

セキュリティ面では、ネットワーク(UNC)パスのファイル読み取りがPreToolUse hookの承認とauto modeで許可プロンプトを素通りする問題が直りました。changelogにSecurityと明記された項目はこの1件です。

あなたの開発フローはどう変わるか

サブエージェントの重さを呼び出しごとに変える

これまでeffortを決める場所は、サブエージェント定義のfrontmatterか、セッション全体の設定でした。公式のサブエージェントのページでは、frontmatterのeffortは「そのサブエージェントが動くときのレベルで、セッションの設定を上書きする」と説明されています。選べる値はlow、medium、high、xhigh、maxで、使えるレベルはモデルで変わります。ただし、CLAUDE_CODE_EFFORT_LEVEL環境変数が設定されている場合は、frontmatterのeffortでその値を上書きできません。

v2.1.292では、Agentツールの呼び出し側にもeffortが付きました。定義を書き換えずに、1回の依頼ごとにレベルを変えられます。

指示の例として、次のような頼み方が考えられます(例示であり、実際の挙動は手元で確かめてください)。

ログの一次調査は低めのeffortのサブエージェントに、
設計案のレビューは高めのeffortのサブエージェントに任せてください。

モデルの割り当てとあわせて考えるなら、サブエージェントのモデル配分設計が参考になります。なお、公式のサブエージェントのページはfrontmatterのeffortまでを説明していて、Agentツールのパラメータには触れていません。

環境構築スクリプトでのプラグイン導入

claude plugin installに--marketplace <source>が加わりました。未登録のマーケットプレイスなら追加したうえで、そこからプラグインを入れます。追加時の検査はclaude plugin marketplace addと同じポリシーで行われます。

セッション内の/plugin installには、すでに同名のオプションがあります。公式のインストール手順のページに、v2.1.275以降で使える形として次の例が載っています。

/plugin install deploy-helper --marketplace your-org/plugins

ソースの書式は/plugin marketplace addと同じで、スペースは含められません。プラグイン名は@marketplaceなしで書きます。シェル版も同じ書式に沿うと考えられますが、シェル版の記述は公式のインストール手順のページにまだありません。

同じリリースで、組織の管理設定を読み込む前にclaude plugin marketplace addやinstallが走ってしまう問題も直りました。初回実行の環境構築スクリプトでポリシー検査をすり抜ける形だったため、組織で配布する構成では意味のある修正です。追加が失敗するときの原因切り分けはmarketplace addが失敗する原因と対処法にまとめています。

過負荷(529)のリトライを長く待つ

CLAUDE_CODE_OVERLOADED_RETRY_BASE_DELAY_MSは、過負荷(529)で再試行するときのバックオフの基準待ち時間を伸ばす環境変数です。公式の環境変数一覧には、この変数の行がまだありません。既定値もchangelogには書かれていません。

非対話実行(claude -p)とスケジュール

claude -pとAgent SDKの1回実行では、最終結果の5秒後にバックグラウンドコマンドが止められていました。今回から待つようになります。claude -pで予約した再開(scheduled wakeup)が破棄される問題も直りました。

保存済みのスケジュールタスクにも修正が3件あります。/resume、/branch、/clearの後に作ったタスクが発火しない問題、数ミリ秒間隔で2回書き込まれると後の作成・削除を無視する問題、バックグラウンドセッションの/loopがプロセス再起動で止まる問題です。

stdio MCPサーバーの接続

stdioのMCPサーバーは、既定でプロトコル版2026-07-28を交渉するようになりました。BedrockとVertex、Foundryでも同じです。公式のMCPのページは、それまでを「v2.1.285以降で、Anthropicが段階的に有効にしている」と説明していました。今回、全インストールで既定になります。

交渉に応じないstdioサーバーのために、起動の待ちも手当てされています。1回遅い接続になった後は、そのサーバーを7日間覚えておき、待たずに従来の方式で繋ぎます。

MCP_PROTOCOL_NEGOTIATION=legacy claude

legacyを指定すると、サーバー単位ではなく、すべてのMCPサーバーが従来の方式のままになります。

主な変更点

権限とサンドボックスの修正

内容一言で
PreToolUse hookの承認とauto modeが、UNCパスのファイル読み取りで許可プロンプトを迂回していた一言でSecurityの項目
サンドボックス内のコマンドが、/ultrareviewのアップロード用コピー(~/.claude/seed-admin)を読めた一言で読み取りを遮断
managedなサンドボックスのread-denyパスが途中で現れたり付け替わったりしても、プロジェクトの許可と資格情報の注入が残っていた一言で追従して外す
macOSとWindowsでノートブックやPDFを読む間に、リンクのすり替えで承認外のファイルが返りうる一言で修正
server-managed settingsのディスク上キャッシュが改ざんされ、取得失敗中に組み込みのポリシープラグインを外せた一言で修正
Windowsのホームやドライブの8.3短縮名など別表記へのrm -rfが、削除として扱われていなかった一言で削除と判定
permissionMode: autoのサブエージェント定義が、auto modeを使えない状況(設定での無効化、サーキットブレーカー、非対応モデル)でもauto modeに入っていた一言で修正
スキルやスラッシュコマンドのallowed-toolsが、auto modeやplan modeを途中で抜けると後のターンで復活した一言で修正
圧縮サマリーが/nameを繰り返すと、ユーザー専用のスキルをClaudeが呼べた一言で修正

strict sandbox mode(user、managed、--settingsのいずれか)では、FOO=bar python3 app.pyのような環境変数付きのインタープリタ実行が、確認なしで通るようになりました。

ツールの入力とネットワーク

  • NO_PROXYが、HTTPS_PROXY設定時にClaude Code自身のAPIリクエスト(サインイン、ポリシー、フィードバック、アーティファクト)で無視されていた問題が直りました
  • 名前が128文字を超えるMCPツールがあると全リクエストが失敗していました。そのツールは除外され、MCPエラーで名前が示されます
  • GrepとGlobは、渡されたファイルやフォルダを読めないとき「一致なし」と返していました。Claudeが1回再試行するか、状況を伝えます
  • ReadツールにPDFのpagesを「6,9,15」のような列で渡すと、最初の1件だけが返っていました。今は、ページや範囲を別々に読むよう促すエラーになります
  • 256KBを超える@メンションのテキストファイルが黙って落とされていました。ファイルのサイズと、分割して読むことをClaudeに伝えます
  • Grepはpathの代わりにfile_pathを受け付けます。Write、WebFetch、Readは余計なパラメータを無視し、呼び出しを失敗させません
  • hookの出力に含まれる<system-reminder>タグは、Claudeに届く前にエスケープされます

プラグインとmod

mod向けの追加は3つあります。modの全体像はv2.1.287の解説にあります。

  • prompt.autocompleteイベント
  • $.model.completeのプロンプトキャッシュ。promptとsystemにテキストブロックを渡し、ブロックのcache: trueでそこまでをキャッシュします
  • agent.spawnフックでのワークフローエージェントの扱い。runとindexが渡り、modが拒否できます

修正は次のとおりです。

  • $.stateを1つのconstから大量に呼ぶhooksモジュールの読み込みと検証が、数分かかっていた問題
  • claude plugin validateが、別の場所から読まれるmatcherや$.stateの値を並べていた問題。再宣言・再代入されたvar経由のstate値は、モジュール自体が拒否されます
  • claude plugin testは、テストが登録したhook内のexpectの失敗や、エンジンが拒否するスタブ応答で、黙って通らず失敗になります
  • /theme、/configのテーマメニュー、初回のテーマ選択が、プラグインのconfig.setフックに尋ねる前にテーマを保存していた問題
  • 組織のプラグインが、ユーザー導入のmodが追加した$名を返すことで、自分の再読み込み時や他プラグインのクラッシュ後に外されていた問題。今は、そのmodのほうが外されます
  • 1行の理由が4,096文字を超えると、プラグインのプロンプト破棄や設定拒否が無視された問題

入力と画面まわり

  • 長い箇条書きや番号付きの返信の描画が、ストリーミング、リサイズ、transcript(ctrl+o)の再表示で大きく速くなりました
  • Ctrl+Cで消したプロンプトは、スラッシュコマンドや送信の後も、Upで取り戻せます
  • vimモードの修正が3件あります。行末を越えるカーソル、短い行でj/kが桁を失う問題、f/t/F/T/;/,が別の行の一致へ飛ぶ問題です
  • /add-dirのパス欄は、Shift+Enterや貼り付けで改行を入れられなくなり、素早く打った「tab」「up」「down」の文字をキー扱いしなくなりました
  • iTerm2では、フルスクリーンモードがウィンドウのリサイズとCtrl+Lのたびに画面全体のクリアを送っていました。iTerm2のスクロールバックが古いページで埋まる原因かもしれない、とchangelogは書いています
  • /bug、/share、/feedback <text>は、送信中のCtrl+OやCtrl+Zでやり直しになる問題と、送信後に「キャンセル」で閉じる問題が直りました

クラウドセッション・Remote Control・Cowork

  • 大きなtranscriptのクラウドセッションで、承認済みの許可を再び求めなくなりました
  • キュー済みの通知(スケジュールタスクなど)が、メッセージの再試行や編集の最中にも失われなくなりました
  • コンテナを再起動しても、クラウドセッションがthinking設定を保持します
  • ルーティンの実行が、終了後も数時間「実行中」のまま残る表示が直りました
  • ルーティンを編集・複製しても、保存済みの通知設定がない場合にプッシュ通知が切れなくなりました
  • SVG、HEIC、TIFFなど一般的でない画像も、通常のファイルとして添付できます
  • Remote Controlで、claude.ai/codeで始めた新しいセッションの最初のメッセージに、PDFなどのファイルも付けられます(以前は画像のみ)
  • Coworkのクラウドセッションは、組織の設定をAnthropicが確認できないだけのときに「プロキシがアーティファクトを遮断した」と誤表示しなくなりました

スケジュール実行とRun nowのルーティンは、自分だけが見られる新しいアーティファクトを、承認なしで公開するようになりました。コネクタなどの追加アクセスを求めるアーティファクトは、これまでどおり承認を求めます。Artifactツールの一覧では、公開済みの件数が見え、1回に最大200件を取得できます(50件から拡大)。

Claude TagとCode Review

Claude Tagでは、Slackまわりの修正が中心です。スレッドの返信待ちの遅れと、利用クレジット切れなのに支出上限の通知が出る問題が直りました。

GitHubのプルリクエスト活動やルーティンで起きたスレッドは、管理者のモデル変更に追従します。Slackから答えられない許可プロンプトが自動拒否された後に、セッションが固まる問題も直りました。@Claude !statusは、チャンネルの未タグメッセージを読むのをやめた事実と理由、@メンションで再開することを伝えます。!forkで続けたスレッドの最初のメッセージは、元スレッドへのリンク付きのカードになりました。

Code Reviewでは、分析のPRs reviewedチャートに期間の合計と前期間からの変化、リポジトリ別の内訳が加わりました。レビュー待ちのコミットは、プルリクエストの基点ブランチが変わって元のブランチが消えても、再度キューに入ります。プルリクエストがCLAUDE.mdを編集している場合のレビューは、基点ブランチ側のCLAUDE.mdの規則を使います。

利用形態別の影響早見表

使い方効く変更影響
サブエージェントを多用する効く変更Agentツールのeffort影響明確な恩恵あり
環境構築スクリプトでプラグインを入れる効く変更--marketplace、管理設定の読み込み順の修正影響明確な恩恵あり
stdio MCPサーバーを使う効く変更新プロトコルの既定化影響条件次第
claude -pやAgent SDKで回す効く変更バックグラウンドコマンドと予約の扱い影響条件次第
スケジュールタスクや/loopを使う効く変更発火しない問題の修正影響条件次第
Windowsで使う効く変更rm -rfの別表記、UNCパス、8.3短縮名影響条件次第
単発の対話利用だけ効く変更描画速度、vimモード影響ほぼ影響なし

新しいプロトコルに応じないstdioサーバーでは、最初の接続が1回だけ遅くなることがあります。

前後のバージョンとのつながり

v2.1.289以降、権限の抜け穴を塞ぐ修正が続いています。

バージョン中心の変更
v2.1.287中心の変更Claude Modsの導入
v2.1.289中心の変更権限ルールの抜け穴修正、mod描画の安定化
v2.1.290中心の変更WebSearch上限の補充式化、セッションを名前で開く
v2.1.291中心の変更許可プロンプト回答欠落と終了時メッセージ消失の修正
v2.1.292中心の変更Agentツールのeffort、stdio MCPの新プロトコル既定化

Modsの拒否経路は、通ってしまう穴を塞ぐ方向に固まってきた

v2.1.287で入ったClaude Modsは、プラグインがツール呼び出しやプロンプトを止められる仕組みです。止める側の挙動は、今回の修正でかなり具体的になりました。

  • config.set、state.set、env.set、agent.spawnのhookがnext(e)を呼んだ後に拒否すると、拒否として扱われていた。今はhookの失敗として、名前付きで報告される
  • next(e)の後に失敗し、ターンが中断中だったhookは、呼び出しを通していた。今は呼び出しが拒否される
  • フックを再起動しているワーカーの最中に来たツール呼び出しは、プラグインの許可hookなしで応答されていた
  • tool.checkが許可を返すと、質問やプラン承認のように利用者の回答が要るツールが、ダイアログなしで動いていた
  • 拒否の理由は、Write、Edit、NotebookEdit、LSP、単一のRead・Grep・Globの行に表示される

「拒否したつもりが通る」「許可したつもりでダイアログが出ない」という誤動作を、1つずつ塞いだ内容です。なお、1つ目の「拒否として扱われていた」修正の対象はconfig.set、state.set、env.set、agent.spawnのhookで、すべてのガードhookに及ぶわけではありません。mod経由のガードを使っているチームでは、今回の修正の恩恵が最も大きい部分になります。

まとめ

v2.1.292は、機能追加より修正の量で読むリリースです。サブエージェントを使う人はAgentツールのeffort、プラグインを配る人は--marketplaceと管理設定の読み込み順の修正、stdio MCPサーバーを使う人は新プロトコルの既定化が、手元で確かめる項目です。modの拒否経路を使っている場合は、ガードが想定どおり止まるかを更新後に一度試してください。一つ前のv2.1.291の修正と合わせて、Claude Codeの全体像から前後の流れを追えます。

関連ガイド

このバージョン単体の位置づけや前後の版とのつながりは、Claude Code完全ガイドでまとめて確認できます。

この記事を共有:XはてブLinkedIn