Claude Code v2.1.290 — WebSearch上限が補充式に、セッションを名前で開けるように
Claude Code v2.1.290は、WebSearchの上限が時間あたりの補充式に変わり、claude attachとclaude logsが名前の一部で指定できるようになりました。権限判定とmod周りの修正が大半です。
このリリースで何ができるようになるか
Claude Code v2.1.290は、追加は少なく、修正と挙動変更が100件を超えるリリースです。日々の操作に関わるのは次の3点です。
claude attachとclaude logsでセッション名の一部が使える: IDを調べずに、名前の断片だけでバックグラウンドセッションを開けます- WebSearchの上限が「1セッション200回で終わり」から「1時間に100回ずつ補充」に変わる: 長時間のリサーチ作業が途中で止まりにくくなります
- WebFetchが10万文字を超えるページを黙って切らなくなる: 読み残した量が表示され、
offsetで続きを読めます
もう一つ、見落とすと困る点があります。v2.1.290には、クラウドセッションが権限プロンプトへの回答を取りこぼす不具合が入っていました。v2.1.291で修正されています。クラウドセッションを使うなら、v2.1.291以降への更新が前提になります。
あなたの開発フローはどう変わるか
バックグラウンドセッションを名前で開く
claude agentsのエージェントビューで動かしているセッションは、これまでIDを指定しないとclaude attachやclaude logsで操作できませんでした。v2.1.290からは、名前の一部で足ります。公式docsの例はclaude logs "auth refactor"です。
claude logs "auth refactor"
claude attach auth名前での指定にはv2.1.290以降が必要です。セッションの名前は/renameやCtrl+Rで付けたものが使えます。複数のセッションを並べて回している人ほど、IDを控えておく手間が減ります。エージェントビューの基本はagent viewの掃除手順にも出てきます。
claude agentsから稼働中のセッションへ送る/model・/effort・/renameも変わりました。ビジー状態のセッションでは、ターンの終了を待たず、確認なしですぐ反映されます。
WebSearchの上限が補充式になる
対話セッションのWebSearchには、1セッションあたり200回という上限がありました。メインの会話とサブエージェントの呼び出しを合算して数える仕組みで、並列のリサーチを回すと早く使い切ります。
v2.1.290では、この上限が時間で補充される方式に変わりました。
| 項目 | 従来 | v2.1.290 |
|---|---|---|
| 上限の考え方 | 従来1セッションで200回 | v2.1.2901時間あたり100回を補充 |
| 上限に達すると | 従来継続を促す通知が返り、それ以上は検索しない | v2.1.290時間の経過で回数が補充される |
| 補充レートの変更 | 従来補充の仕組みがなく、CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION(既定200)で上限そのものを変える(設定の詳細) | v2.1.290CLAUDE_CODE_WEB_SEARCH_REFILLS_PER_HOUR |
| 補充を止める | 従来なし | v2.1.290同変数を0に設定(changelogの表現は "0 turns it off") |
同変数は補充の速さを決める設定で、0にすると補充が止まります。
WebFetchが読み残しを知らせる
WebFetchは、ページのテキストが10万文字を超えると、超えた分を何も告げずに切り捨てていました。v2.1.290では、どれだけ読めていないかを知らせ、offsetを指定して続きを読めます。長い仕様書やログを取り込む作業では、「末尾に答えがあるのに読めていない」という状況に気づけます。
WebFetchの既定のキャッシュと待機時間はWebFetchのキャッシュとタイムアウトにまとめています。
定期タスクが復帰しない不具合が直る
/loopの間隔指定やリマインダーといった定期タスクについて、4件の修正が入りました。/loopコマンドの使い方で扱う機能です。
- 会話が圧縮されたあとに再開すると、タスクが戻らなかった(圧縮はこのバージョン以降のものが対象)
- フォアグラウンドで設定したタスクが、←や
/backgroundでバックグラウンドへ移したあと一度も動かなかった - 繰り返しタスクが、再開・リスポーン・フォークのたびに余分に1回動いていた
- LinuxでサンドボックスのBashコマンドを実行したあと、または
.claude/scheduled_tasks.jsonを削除したあとに、余分に1回動いていた
あわせて、定期タスクの次回実行を待っているバックグラウンドセッションは、アップデートやメモリ不足のときも止められずに残ります。再起動や停止で実行予定が消えるのを避けるためです。
主な変更点
追加
| 項目 | 内容 |
|---|---|
claude attach / claude logs | 内容IDの代わりにセッション名の一部で指定 |
/claude-api managed-agents-onboard <url> | 内容ページが説明するManaged Agentsの構成をant apply用ファイルとして用意 |
/claude-api managed-agents-onboard <quickstart-name> | 内容deep-researcherなどのConsoleクイックスタートをant CLIで構築 |
| 管理設定の警告 | 内容管理設定ファイルが管理フォルダー外へのリンクのとき、また管理設定がユーザー設定のsandbox allowReadパスや許可ドメインを無視するときに、警告(後者は/statusとdoctor) |
serverToolUses | 内容modのturn.stepフックの結果に、API側が実行したツール(advisor)の呼び出しを追加 |
agentId | 内容プラグインフックのtool.checkに追加。サブエージェントの権限確認とメインを区別できる |
ceiling | 内容modのtool.checkフックが読む質問と判定に追加。組織が要求する承認を示す |
ThemeKey / Color | 内容プラグインフックの型定義に追加 |
claude plugin validate | 内容modが登録したゲート位置のフックごとに、.catchの有無を表示(--jsonではgatingHooks) |
| ゲートウェイのDenyボタン | 内容Claude apps gatewayのサインイン承認ページに追加。待機中の端末は数秒で止まる |
挙動の変更
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICは、起動時の接続ウォームアップも省くようになりました- Claude in Chromeは、プロジェクトの設定ファイルから有効化できなくなりました。
--chrome、/chrome、ユーザー設定のいずれかで有効にします CLAUDE_CODE_DISABLE_ATTACHMENTSは、リポジトリの.claude/settings.jsonと.claude/settings.local.jsonからは設定できなくなりました。シェル・ユーザー・管理設定では引き続き設定できます- Bashツールは
pyrightの実行前に確認を求めます。読み取り専用のコマンドとは扱われなくなりました psコマンドの一部の形が、確認なしで通らず承認を求めるようになりました- スキルとカスタムコマンドの
!シェルコマンドは、タブと改行以外の制御文字を含むと拒否されます。メッセージで位置が示されます - 組み込みの
gh api(クラウドセッション)は、GH_HOSTやGH_REPOでgithub.com以外のホストを指定すると拒否します。--hostnameか完全なURLで指定します /code-reviewは、medium effortのとき、調整済みのレビュー設定を持たないモデルでも整理とCLAUDE.md規約の指摘を報告します。Opus 5.5とSonnet 5.5が該当します- 組織配布のゲートウェイで、PostgreSQLの最低対応バージョンが14から11に下がりました
/artifactsは、ブラウザで開くと一覧を閉じるようになりました
VS Code拡張
VS Code拡張向けの項目は、追加2件、修正6件、改善2件、変更1件です。
- メッセージのタイムスタンプが既定で表示されます。消すには
Claude Code: Show Message Timestamps設定を使います - Claudeの作業中にメッセージを送ると、スクリーンリーダーに「Message queued.」と読み上げられます
- 「Manage plugins」ダイアログで、プラグインマーケットプレイスのインストール・更新コマンドを確認して実行できます
- メッセージ内のファイルピルにマウスを重ねると、プロジェクトフォルダーからのパスが出ます。同名ファイルを見分けられます
- 再読み込み後の「Continue After Reload」は、再起動で中断された手順の完了までやってくれます
- 権限プロンプトがダイアログの背後に出たとき、プロンプトがキーボードフォーカスを奪い、ダイアログ内のキー入力が回答になってしまう問題が直りました
- 何も入力していない空のチャットが、保存済みの会話を開いたあともバックグラウンドのClaudeプロセスを動かし続ける問題も直りました
修正の分類
| 領域 | 主な修正 |
|---|---|
| 権限・サンドボックス | 主な修正変数をdeclare・export等の前置きで設定したコマンドの照合漏れ、rg・git grepの展開される引数の素通り、PreToolUseフックが入力を書き換えたあとの規則の適用漏れ |
| 読み取り制限 | 主な修正シンボリックリンクを通した範囲外ファイルの読み取り(画像、@メンション)、Read denyの適用漏れ |
/ultrareview | 主な修正未コミットの変更が警告なく落ちる、core.safecrlf=trueでのアップロード失敗、gitフィルタードライバー名による素通りなど |
| agent view・background | 主な修正EscによるRestartの確定、Ctrl+Xでの連続削除、/clear後のループ回数、Mac復帰時の「Agent stalled」 |
| 長いセッション・性能 | 主な修正画像数百枚で「Request rejected as unprocessable by the model」になる、巨大な貼り付けでのrewindメニューの固まり、極端に長い文字列でのシークレット検出の固まり |
| 組織・ゲートウェイ | 主な修正組織提供のMCPサーバーが自分用として再掲される、ゲートウェイの証明書・URL設定の起動エラー、PostgreSQLの保持期間スイープ |
| クラウド・Remote Control | 主な修正コンテナー再起動でのプラン・定期タスク・返信の消失、Remote Controlメニューの表示遅れ |
権限判定の修正は何を塞いだか
件数が多いのは権限まわりで、読み取り制限と許可規則の抜け道がまとめて塞がれました。報告された経路を挙げます。
declare・typeset・export・readonlyの前置きで設定した変数から来たコマンド名やパスを、denyとaskの規則が見逃していたrgやgit grepのような読み取り専用コマンドで、シェルがワイルドカードとして展開する引数が確認なしに通っていた- zshとbashで読み方が違う変数名のコマンドが、自動承認されていた
- PreToolUseフックが入力を書き換えたあと、一部の許可規則と安全確認が適用されなかった
- シンボリックリンクを途中で差し替えると、承認された範囲外のファイルを画像として、また
@メンションで読めた(画像の読み取りの修正はmacOSとWindowsに限ったものです) permissions.blockReadsOutsideWorkingDirectoriesやReadのdenyルールの下でも、作業ディレクトリ外へのシンボリックリンクのCLAUDE.md・ルール・AGENTS.mdが読み込まれていた
複合コマンドの評価はBash権限ルールと複合コマンドで扱っています。許可規則を細かく書いているチームでは、この修正で新たに確認が出る場面があります。pyrightとpsの変更も同じ方向で、これまで確認なしで通っていたコマンドが確認の対象になります。
/ultrareviewは修正の数が多い領域です。未コミットの変更を、警告なしにアップロードから落とす経路が複数見つかっていました。拒否時のエラーは原因ごとに別のメッセージになり、対処法も添えられます。使い方はultrareviewの手順にあります。
modの修正は、組織ポリシーとの境界に集中した
v2.1.287で入ったClaude Modsについて、v2.1.289から始まった組織のポリシーとの境界の詰めが、v2.1.290でまとまった形になりました。v2.1.290の修正の中身は次のとおりです。
- ユーザーが入れたmodが、組織のプラグインをアンロードさせる経路があった。今後は、そのmodのほうがアンロードされます
- ユーザーが入れたmodが、組織のガードに確認を飛ばさせる経路があった。該当するmodはアンロードされます
prompt.submitフックがnext(e)を呼んだあとでプロンプトを捨てる実装は、失敗として扱われず無視されていました。今はフックの名前つきで失敗として報告されます- フックが
.catchを持つのに、フックのワーカーがプロンプトやツール呼び出しで埋まっていると、.catchごとアンロードされていた
追加されたceilingとagentIdは、同じ流れの上にあります。組織が要求する承認の水準をmodのフックが読め、サブエージェント由来の確認かどうかを区別できます。claude plugin validateも、ゲート位置のフックが.catchを持つかを一覧にします。modは「あなたの権限で動くコード」です。組織の権限判定の前に立つ場面があります。ガードを自作する側にも、入れる側にも、境界を明確にする変更です。
Claude Modsはv2.1.287からv2.1.291でどう固まってきたか
導入のv2.1.287から5回のリリースで、modの周りは「入れる」段階から「境界を決める」段階へ進みました。
| バージョン | modまわりの動き |
|---|---|
| v2.1.287 | modまわりの動きClaude Modsと組み込みmod You should knowが登場。プラグインがツール呼び出しや描画に介入できるようになった |
| v2.1.288 | modまわりの動き$.ui.selection()で全画面モードの選択テキストを取得できるようになった |
| v2.1.289 | modまわりの動きagent.spawn(teammate向け)の追加、modの描画失敗の切り離し、管理環境で、複合コマンドの入れ子部分に対するdeny/ask規則が、ユーザーmodの承認に負けていた経路の修正 |
| v2.1.290 | modまわりの動きceiling・agentIdの追加、claude plugin validateのgatingHooks表示、ユーザーのmodが組織のプラグインやガードに影響する経路の遮断 |
| v2.1.291 | modまわりの動きmodの変更はなし。v2.1.290で入った、クラウドセッションが権限プロンプトへの回答を取りこぼす不具合の修正 |
v2.1.287と288は「何ができるか」の拡張です。「組織が決めた承認を、modが飛び越えない」ための修正はv2.1.289から始まり、v2.1.290でまとまりました。入れる人は、更新後に自分のmodがアンロードされていないかを確かめる価値があります。
v2.1.290は使い方によってどこまで効くか
| 使い方 | 影響 |
|---|---|
| 管理設定で権限を配る組織 | 影響明確な恩恵あり(modによる迂回の遮断、管理設定の警告) |
| Bash権限の許可規則を多く書いている | 影響明確な恩恵あり(照合漏れの修正。新規の確認プロンプトが出る可能性あり) |
バックグラウンドセッションと/loopを併用 | 影響明確な恩恵あり(定期タスクの復帰と重複実行の修正) |
| クラウドセッション中心 | 影響条件次第(v2.1.291の修正が前提) |
| WebSearchを大量に回すリサーチ | 影響条件次第(補充式の上限への変更) |
| 単発の対話利用のみ | 影響ほぼ影響なし |
まとめ
v2.1.290は、新機能の導入よりも、許可規則・読み取り制限・定期タスクの取りこぼしをまとめて塞いだリリースです。権限を細かく設計している環境では、これまで確認なしで通っていたコマンドが確認に回る点を、更新前に頭に入れておくと混乱がありません。クラウドセッションを使う場合は、権限プロンプトへの回答が落ちる不具合を直したv2.1.291までまとめて上げておくと、この不具合を避けられます。v2.1.291は、2.1.288で入った「終了時にセッション末尾のメッセージが失われる」不具合も直しています。
前のバージョンの内容はv2.1.287とv2.1.288にあります。
関連ガイド
このバージョン単体の位置づけや前後の版とのつながりは、Claude Code(クロードコード)の解説でまとめて確認できます。