一覧へ戻る v2.1.162

最新 · 今号

v2.1.162

13 改善 15 修正 · 28 件の変更

claude agents・起動時の通知・--tools の改良に加え、権限(WebFetch・Windows のパス)、MCP のタイムアウト、LSP ツール、stream-json の割り込み、claude agents のバックグラウンドセッション周りなど多数の修正を含むリリースです。

改善 Improvement 13
  • claude agents --json の出力に waitingFor が追加され、待機中のセッションが何で止まっているか(例: 権限の確認待ち)が分かるようになりました。

    agents

    詳しく
    claude agents --json(エージェント一覧を JSON 形式で出力する機能)の改善です。これまでは待機中のセッションが「なぜ止まっているのか」を JSON から読み取れませんでしたが、新しく waitingFor フィールドが加わり、権限の確認待ちなど何によってブロックされているかが分かるようになりました。複数のセッションをスクリプトで監視するときに、どれが手動の対応を必要としているか把握しやすくなります。
  • --tools で Grep/Glob を明示的に指定すると、検索を内蔵したネイティブビルドで専用の検索ツールが提供されるようになりました(以前はこれらの名前が黙って無視されていました)。

    tools

    詳しく
    使うツールを限定する --tools の挙動を改善しました。検索機能を内蔵したネイティブビルドでは、これまで --tools に Grep や Glob を明示しても黙って無視され、専用の検索ツールが有効になりませんでした。今後は指定どおりに Grep/Glob の検索ツールが提供されるため、使用ツールを絞り込みたい場合でも検索が正しく利用できます。
  • /effort で選んだレベルが新しいセッションのデフォルトとして保持される場合に、その旨を確認表示するようになりました。

    uiconfig

    詳しく
    作業の労力レベルを切り替える /effort の改善です。これまでは選んだレベルが今回のセッション限りなのか、今後の新しいセッションにも引き継がれるのかが分かりにくいことがありました。今後は選択したレベルがデフォルトとして保持される場合にその旨を知らせてくれるため、設定が一時的なものか永続的なものかを取り違えずに済みます。
  • オートコンプリートのメニューでスラッシュコマンドをクリックすると、すぐに実行する代わりにプロンプトへ入力されるようになりました。実行するには Enter を押します。

    ui

    詳しく
    スラッシュコマンドの補完メニューでの操作を変更しました。これまではメニューの項目をクリックするとそのコマンドが即座に実行されていましたが、今後はプロンプト欄に入力されるだけになり、内容を確認・編集してから Enter で実行できます。意図せず即実行してしまう誤操作を防げます。
  • Remote Control が、起動時のメッセージではなくフッターに常駐するピル(セッションへのリンク付き)として表示されるようになりました。

    ui

    詳しく
    スマートフォンなどから操作する Remote Control の表示を変更しました。これまでは起動時にメッセージとして一度だけ出ていましたが、今後は画面下部のフッターに常駐する小さなピル(丸みのある表示)として残り、セッションへのリンクも添えられます。接続中であることが常に分かり、必要なときにすぐリンクへアクセスできます。
  • エディタのリブランドに合わせ、/ide メニュー・/terminal-setup/scroll-speed 内で Windsurf を Devin Desktop に名称変更しました。

    ide

    詳しく
    対応エディタの表示名の変更です。Windsurf というエディタが Devin Desktop に名称変更(リブランド)したのに合わせ、/ide メニューや /terminal-setup/scroll-speed などの表示も新しい名称に更新しました。機能自体は変わらず、メニュー上の名前が新しいブランド名で表示されます。
  • 起動をより静かに。通知が重大度ごとにまとめられ、セッション情報とお知らせが起動ごとに 1 行にまとまるようになりました。

    ui

    詳しく
    起動時の画面表示を簡潔にする改善です。これまでは各種の通知が個別に並んで起動画面がにぎやかでしたが、今後は通知が重大度ごとにグループ化され、セッション情報とお知らせは起動ごとに 1 行にまとめて表示されます。起動時の情報量が抑えられ、見やすくなります。
  • 起動時の警告をより短く分かりやすく書き直し、それぞれに具体的な対処法を添えました。

    ui

    詳しく
    起動時に出る警告メッセージの文面を見直した改善です。従来より短く分かりやすい表現に書き直され、各警告に「どう直せばよいか」という具体的な対処法が添えられるようになりました。警告の意味と対応方法をその場で把握しやすくなります。
  • 起動プロンプトの警告(ディープリンクや事前入力されたプロンプト)が、スクロールで流れていく代わりに、対応するまで入力欄の下に固定表示されるようになりました。

    ui

    詳しく
    ディープリンクや事前入力されたプロンプトで起動したときに出る警告の表示に関する改善です。これまではこの警告が会話のスクロールとともに上へ流れて見えなくなることがありましたが、今後は対応するまで入力欄の下に固定されて表示され続けます。重要な確認を見落とさずに済みます。
  • 失敗したターンが、複数行の赤いエラーブロックではなく、コンパクトな警告の 1 行で表示されるようになりました。

    ui

    詳しく
    ターン(やり取り)が失敗したときの表示を簡潔にする改善です。これまでは複数行にわたる赤いエラーブロックが表示され画面を大きく占有していましたが、今後はコンパクトな警告の 1 行で示されます。エラー時も画面が見やすく保たれます。
  • バックグラウンドサービスの起動と claude update の検証を改善し、新しいバイナリへのエンドポイントセキュリティのスキャンを 5 秒で打ち切って失敗する代わりに、完了を待つようにしました。

    backgroundsecurity

    詳しく
    バックグラウンドサービスの起動と claude update(更新)時の検証に関する改善です。企業のエンドポイントセキュリティソフトは新しい実行ファイルをスキャンするためロックすることがありますが、これまでは 5 秒待っても完了しないと失敗扱いになっていました。今後はスキャンの完了を待つようになるため、セキュリティソフトが動く環境でも起動や更新が失敗しにくくなります。
  • バックグラウンドディスパッチの起動失敗で、errno が得られない場合にエラークラス名を報告するようになりました。

    background

    詳しく
    バックグラウンドでの処理起動(ディスパッチ)が失敗したときのエラー表示に関する改善です。これまではエラー番号(errno)が得られないケースで原因の手がかりが乏しくなっていましたが、今後はその場合にエラーの種類を示すクラス名が報告されます。失敗の原因を切り分けやすくなります。
  • 「Claude in Chrome enabled」と「marketplace installed」の起動メッセージを削除しました。モデルの自動更新とチームのオンボーディングのヒントは、ロゴの下に控えめな通知として表示されるようになりました。

    ui

    詳しく
    起動時のメッセージを整理する改善です。「Claude in Chrome enabled」や「marketplace installed」といった通知は表示されなくなりました。また、モデルの自動更新やチーム向けのオンボーディングのヒントは、ロゴの下に目立たない控えめな通知として出るようになり、起動画面がすっきりします。
修正 Fix 15
  • 設定ディレクトリが読み取り専用または書き込み不可のときに起動が黙ってハングする問題を修正。Claude Code は空白画面を表示する代わりに、メモリ上の設定で起動して起動エラーを表示するようになりました。

    config

    詳しく
    設定の保存先フォルダに書き込めない場合の起動に関する修正です。これまでは設定ディレクトリが読み取り専用などで書き込めないと、エラーも出ずに起動が固まり画面が真っ白になることがありました。今後はメモリ上の設定で起動を続け、何が起きたかを起動エラーとして表示するため、原因が分からず行き詰まることがなくなります。
  • WebFetch の権限ルールが組み込みの事前承認ドメインに適用されない問題を修正。明示的な WebFetch(domain:...) の deny/ask/allow ルールが、事前承認ホストの自動許可より優先されるようになりました。

    permissionssecurity

    詳しく
    Web 取得を行う WebFetch の権限ルールに関する修正です。これまでは組み込みで事前承認されたドメインに対して、利用者が設定した権限ルールが効かず、常に自動的に許可されていました。今後は WebFetch(domain:...) で明示した deny/ask/allow のルールが事前承認の自動許可より優先されるため、特定ドメインへのアクセスを意図どおりに拒否・確認・許可できます。
  • Windows で、バックスラッシュ表記(~\\\server\share)や大文字小文字の異なるパスで書かれた権限ルールがまったく一致しない問題と、Read の deny ルールが Glob/Grep の結果からファイルを隠さない問題を修正。

    windowspermissions

    詳しく
    Windows での権限ルールの照合に関する修正です。これまでは ~\\\server\share のようにバックスラッシュで書いたパスや、大文字小文字が異なるパスで指定したルールがまったく一致せず、効いていませんでした。あわせて、Read の deny ルールで拒否したファイルが Glob/Grep の検索結果には表示されてしまう問題も修正され、拒否したファイルが検索結果からも正しく隠れるようになります。
  • stream-json/SDK のセッションで、ターンのごく開始直後に送った割り込み(Esc)が黙って無視され、「Interrupted」の表示も出ないままターンが動き続ける問題を修正。

    api

    詳しく
    stream-json 形式や SDK 経由のセッションでの割り込み(Esc による中断)に関する修正です。これまではターンが始まったごく直後に中断を送ると、その操作が握りつぶされ、「Interrupted」のフィードバックも出ないまま処理が走り続けることがありました。今後は開始直後の割り込みも正しく受け付けられ、ターンが止まって中断されたことが分かります。
  • 分類用のサイドクエリや、絵文字が切り詰め位置の近くにある MCP サーバの説明文で、API が 400 の no low surrogate in string エラーを返す問題を修正。

    apimcp

    詳しく
    絵文字を含む文字列を切り詰める際のエンコーディングに関する修正です。分類のための補助的な問い合わせや、絵文字を含む MCP サーバの説明文が、ちょうど切り詰め位置の近くで絵文字を途中で分断してしまうと、API が no low surrogate in string という 400 エラーを返していました。今後は絵文字を壊さずに切り詰めるため、こうしたエラーが起きなくなります。
  • MCP のサーバごとの timeout 設定で 1000 ミリ秒未満の値が 1 秒のウォッチドッグに丸められ、すべてのツール呼び出しが中断されてしまう問題を修正。1000 ミリ秒未満の値は無視され(MCP_TOOL_TIMEOUT または既定値にフォールバック)、claude mcp get がその旨を注記するようになりました。

    mcp

    詳しく
    MCP サーバごとに設定するタイムアウト(timeout)の扱いに関する修正です。これまでは 1000 ミリ秒未満を指定すると 1 秒の監視タイマーに丸められ、その結果すべてのツール呼び出しが時間切れで中断されてしまっていました。今後は 1000 ミリ秒未満の値は無視されて MCP_TOOL_TIMEOUT 環境変数か既定値が使われ、claude mcp get の表示でもその旨が注記されるため、短すぎる設定で全機能が止まることがなくなります。
  • LSP ツールの workspaceSymbol 操作が何も結果を返さない問題を修正。query パラメータを受け付け、それを言語サーバに渡すようになりました。

    lsp

    詳しく
    コード補完や定義検索を担う LSP(言語サーバ)ツールの修正です。ワークスペース全体からシンボルを探す workspaceSymbol 操作が、これまでは常に結果を返しませんでした。原因は検索語が言語サーバに渡されていなかったことで、今後は query パラメータを受け取って言語サーバへ渡すため、シンボル検索が正しく機能します。
  • claude agents が、ワイドな端末でもライブのステータステキスト(ツール引数・返信・プロンプト・実行出力)を 60〜120 桁で切ってしまう問題を修正。ステータスの詳細が端末の全幅を使うようになりました。

    agentsui

    詳しく
    claude agents のステータス表示に関する修正です。これまでは横幅の広い端末を使っていても、ツールの引数や返信・プロンプト・実行結果といったライブの状況表示が 60〜120 桁あたりで切り詰められ、画面が余っているのに内容が途切れていました。今後は端末の全幅を使って表示するため、広い画面では情報が省略されずに読めます。
  • claude agents が長いセッション名を 40 桁で切り詰める問題を修正。名前の列が端末の幅に応じて広がるようになりました。

    agentsui

    詳しく
    claude agents のセッション名の表示に関する修正です。これまでは長いセッション名が一律 40 桁で切られ、名前の見分けがつきにくいことがありました。今後は名前の列が端末の横幅に合わせて広がるため、広い画面では長い名前も省略されずに確認できます。
  • claude agents でのアタッチが、バックグラウンドサービスの再起動直後の初回に、そのままセッション一覧へ跳ね返されることがある問題を修正。

    agentsbackground

    詳しく
    claude agents でセッションに接続(アタッチ)する操作の修正です。バックグラウンドサービスを再起動した直後の最初の試行で、セッションに入れずそのまま一覧画面へ戻されてしまうことがありました。今後は再起動直後でも初回からきちんとアタッチできます。
  • claude agents のディスパッチ入力欄とセッションの返信欄で、Ctrl+V による画像の貼り付けが何も起きない問題を修正。画像が無い状態で貼り付けたときはヒントを表示するようになりました。

    agentsimages

    詳しく
    claude agents での画像の貼り付けに関する修正です。これまでは新規ディスパッチの入力欄やセッションの返信欄で Ctrl+V を押しても画像が貼り付けられず、無反応でした。今後は画像を正しく貼り付けられるようになり、クリップボードに画像が無い状態で貼り付けた場合はその旨のヒントが表示されます。
  • バックグラウンドサービスが起動できないときに、← でセッションをバックグラウンド化すると会話が黙って失われる問題を修正。セッションは失敗した行として一覧に残り、Enter で再開できるようになりました。

    agentsbackground

    詳しく
    セッションをバックグラウンドへ送る操作(← キー)の修正です。これまではバックグラウンドサービスが起動できない状況だと、バックグラウンド化した会話がエラーも出ずに消えてしまっていました。今後はそのセッションが「失敗」した行として一覧に残り、Enter キーで呼び起こして続けられるため、会話を失わずに済みます。
  • エージェントビューからの返信が送信に失敗すると失われる問題を修正。失敗した返信は次回のセッション起動時に届けられるようキューに入るようになりました。

    agents

    詳しく
    エージェントの一覧画面(エージェントビュー)から送る返信に関する修正です。これまでは返信の送信に失敗するとその内容が失われていました。今後は送れなかった返信がキュー(待ち行列)に保持され、次にそのセッションが起動したときに配信されるため、入力した返信が無駄になりません。
  • CLAUDE_CODE_TMPDIR または $TMPDIR が深いディレクトリを指しているときに、セッション間メッセージング(SendMessage)が黙って壊れる問題を修正。

    agentsconfig

    詳しく
    セッション同士でメッセージをやり取りする SendMessage の修正です。一時ディレクトリを指す CLAUDE_CODE_TMPDIR$TMPDIR に階層の深いパスが設定されていると、この機能がエラーも出さずに動かなくなることがありました。今後は深いパスを指定していてもセッション間のメッセージ送受信が正しく機能します。
  • claude agents から実行中のバックグラウンドセッションを開くと、アタッチするまで 5 秒間停止する問題を修正。

    agentsbackground

    詳しく
    claude agents から動作中のバックグラウンドセッションを開くときの修正です。これまでは接続(アタッチ)が始まる前に 5 秒ほど待たされていました。今回の修正でこの遅延がなくなり、実行中のセッションをすぐに開けるようになります。
原文 Markdown を表示
## 2.1.162

- `claude agents --json` now includes `waitingFor` showing what a waiting session is blocked on (e.g. permission prompt)
- `--tools`: explicitly listing Grep/Glob now provides the dedicated search tools on native builds with embedded search (previously these names were silently ignored)
- `/effort` now confirms when your chosen level will persist as the default for new sessions
- Clicking a slash command in the autocomplete menu now fills it into your prompt instead of running it immediately; press Enter to run
- Remote Control now shows as a persistent footer pill (with a link to the session) instead of a startup message
- Renamed Windsurf to Devin Desktop in the `/ide` menu, `/terminal-setup`, and `/scroll-speed`, following the editor's rebrand
- Fixed a silent startup hang when the config directory is read-only or unwritable — Claude Code now starts with in-memory config and surfaces startup errors instead of showing a blank screen
- Fixed WebFetch permission rules not being applied to built-in preapproved domains; explicit `WebFetch(domain:...)` deny/ask/allow rules now take precedence over the preapproved-host auto-allow
- Fixed Windows permission rules never matching when spelled with backslashes (`~\`, `\\server\share`) or case-variant paths, and Read deny rules not hiding files from Glob/Grep results
- Fixed an interrupt (Esc) sent at the very start of a turn being silently dropped in stream-json/SDK sessions, leaving the turn running with no "Interrupted" feedback
- Fixed API 400 `no low surrogate in string` errors for classifier side-queries and MCP server descriptions containing emoji near a truncation boundary
- Fixed MCP per-server `timeout` config values below 1000 ms being floored to a 1-second watchdog that aborted every tool call; sub-1000 ms values are now ignored (falling back to `MCP_TOOL_TIMEOUT` or default), and `claude mcp get` annotates them accordingly
- Fixed the LSP tool's `workspaceSymbol` operation returning no results; it now accepts a `query` parameter and passes it to the language server
- Fixed `claude agents` cutting live status text (tool args, replies, prompts, exec output) at 60–120 columns on wide terminals; the status detail now uses the full terminal width
- Fixed `claude agents` truncating long session names at 40 columns; the name column now grows with terminal width
- Fixed `claude agents` attach occasionally bouncing straight back to the session list on the first try after a background-service restart
- Fixed `claude agents` Ctrl+V image paste doing nothing in the dispatch input and the session reply box; pasting with no image now shows a hint
- Fixed backgrounding a session with ← silently losing the conversation when the background service cannot start; the session stays in the list as a failed row you can wake with Enter
- Fixed replies from the agents view that fail to send being lost; they are now queued for delivery on the next session start
- Fixed cross-session messaging (`SendMessage`) silently breaking when `CLAUDE_CODE_TMPDIR` or `$TMPDIR` points at a deep directory
- Fixed opening a running background session from `claude agents` stalling for 5 seconds before attaching
- Quieter startup: notices group by severity, and session info and announcements share a single line per launch
- Startup warnings rewritten to be shorter and clearer, each with a concrete fix
- Launch-prompt warnings (deep link/pre-filled prompt) now stay pinned below the input until you act instead of scrolling away
- Failed turns now show a compact warning line instead of a multi-line red error block
- Improved background service startup and `claude update` verification to wait out endpoint-security scanning of new binaries instead of failing after 5 seconds
- Background dispatch spawn failures now report the error class name when no errno is available
- Removed the "Claude in Chrome enabled" and "marketplace installed" startup messages; model auto-updates and the team-onboarding tip now show as quiet notices under the logo