エージェント型開発を探求する -

2026年2月 (バージョン 1.110)

リリース日: 2026年3月4日

ダウンロード: Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap


セキュリティアップデート: 以下の拡張機能にセキュリティアップデートがあります: GitHub.copilot-chat

アップデート 1.110.1: このアップデートでは、コアのセキュリティ問題と、GitHub Copilot Chat 拡張機能におけるセキュリティ問題に対処しています。

Visual Studio Code 2026年2月リリースへようこそ。今回のリリースでは、長時間実行される複雑なタスクにおいてエージェントが実用的になりました。制御性と可視性の向上、エージェントを拡張する新しい方法、そしてよりスマートなセッション管理が実現しています。

ハッピーコーディング!



これらのリリースノートをオンラインで読みたい場合は、code.visualstudio.comアップデートにアクセスしてください。

Insiders: 新機能をいち早く試したいですか?
毎晩のInsidersビルドをダウンロードして、最新のアップデートが利用可能になり次第試すことができます。
Insiders をダウンロード


エージェント制御

エージェントの動作デバッグ、承認フローの調整、バックグラウンドプロセスへのタスク委譲など、これらの更新によりエージェントの実行方法に対する可視性と制御が向上しました。

バックグラウンドエージェント

バックグラウンドエージェントを使用すると、VS Codeで追跡を継続しながらタスクをCopilot CLIに引き継ぐことができます。ローカルエージェントやクラウドエージェントと同等の機能とエクスペリエンスを提供するために、いくつかの改善を行いました。

  • コンテキストの圧縮: コンテキストウィンドウが上限に達すると、Copilotは自動的に会話履歴を圧縮します。また、スラッシュコマンド /compact を使用して、バックグラウンドエージェントの圧縮を手動でトリガーすることもできるようになりました。

  • /スラッシュコマンドの使用: プロンプトファイルフックスキルなどのチャットカスタマイズオプションが、バックグラウンドエージェントセッションでもスラッシュコマンドとして利用可能になりました。

    Screenshot showing slash commands for background agents.

  • バックグラウンドエージェントセッションの名前変更: セッションの名前を変更して、より簡単に管理できるようになりました。

    Screenshot showing support for renaming background agent sessions.

Claudeエージェント

先月、Claudeエージェントを追加し、GitHub Copilotサブスクリプションに含まれるClaudeモデルを使用してClaude Agent SDKとやり取りできるようになりました。

今月は、新機能と改善によりこの体験を拡充しました。

  • ステアリングとキューイング: 会話の途中でフォローアップメッセージを送信し、エージェントのアプローチを変更したり、追加のリクエストをキューに入れたりすることが可能になりました。

  • セッションの名前変更

    Screenshot of the session rename action on the chat session item.

  • 圧縮機能付きのコンテキストウィンドウレンダリング

    Screenshot of the context window control.

  • 追加のスラッシュコマンド

    • /compact: オンデマンドでの圧縮
    • /agents: カスタムエージェントの管理
    • /hooks: Claudeフックの管理
  • getDiagnostics ツールの追加: エージェントがエディタやワークスペースの問題にアクセスできるようにします。

  • 大幅なパフォーマンスの向上

さらなる改善を計画中です。ぜひGitHubでフィードバックをお寄せください!

エージェントデバッグパネル (プレビュー)

フック、スキル、カスタムエージェントといった様々なカスタマイズがある中で、エージェントへのメッセージ送信時に何が起きているのかを把握するのは難しい場合があります。エージェントデバッグパネルは、チャットセッションとカスタマイズの読み込み状況についての深い可視性を提供します。

エージェントデバッグパネルは、チャットのカスタマイズイベント、システムプロンプト、ツール呼び出しなど、チャットイベントをリアルタイムで表示します。どのプロンプトファイル、スキル、フックなどがセッションに読み込まれているかを正確に確認できるため、エージェント設定の理解とトラブルシューティングが容易になります。これは、以前の診断チャットアクションを置き換える、より詳細なビューです。

Screenshot showing the Agent Debug panel with a list of chat events and a chart view.

コマンドパレットから Developer: Open Agent Debug Panel を実行するか、チャットビュー上部の歯車アイコンから View Agent Logs を選択してパネルを開いてください。

このパネルには、イベントの階層構造を視覚的に表示するチャートビューも含まれており、チャットセッション中に何が起こったかの構造や順序を素早く理解できます。

Screenshot showing the flow chart view in the Agent Debug panel.

この機能は現在プレビュー段階です。ぜひお試しいただき、フィードバックをお寄せください!

: エージェントデバッグパネルは現在、ローカルチャットセッションでのみ利用可能です。ログデータは永続化されないため、現在のVS Codeセッションのチャットログのみを表示できます。

自動承認を有効にするスラッシュコマンド

設定画面に移動することなく、チャット入力から直接グローバル自動承認を切り替えられるようになりました。

  • /autoApprove: すべてのツールに対するグローバル自動承認を有効にします。
  • /disableAutoApprove: グローバル自動承認を無効にします。

/yolo および /disableYolo も同じコマンドのエイリアスとして利用可能です。

注意: グローバル自動承認を有効にすると、すべてのツールの確認プロンプトがスキップされ、承認を待たずにツールやターミナルコマンドが実行されます。これにより、長時間のステップが多いタスクを高速化できますが、破壊的な操作をキャンセルする機会が失われます。有効にする前にセキュリティ上の影響を理解し、さらなる保護のためにターミナルサンドボックスの使用を検討してください。

編集および質問モードの変更

設定: chat.editMode.hidden Open in VS Code Open in VS Code Insiders

エージェントの進化に伴い、エージェントモードは編集モードができるすべてのこと以上に、高いパフォーマンスと信頼性で処理できるようになりました。編集モードはデフォルトでエージェントピッカーから非表示になっているため、オプションを選択することなく、最も有能なモードの恩恵を受けることができます。この設定を無効にすることで、再度表示させることが可能です。

質問モードは、カスタムエージェント定義によって支えられるようになり、完全にエージェント的な体験となりました。これにより、質問モードとエージェントモードを切り替える際に新しいセッションが必要だったといった以前の制限が解消されました。

どちらの変更も、独自のエージェントをカスタマイズする方法を示しています。もし編集モードを好む場合や、独自の質問モードが必要な場合は、ツール、プロンプト、言語モデルを定義してニーズに合ったカスタムエージェントを作成してください。 chat.editMode.hidden を無効にすると、エージェントピッカーで View edit agent アクションを選択して編集モードを支えるエージェント定義を確認でき、これをカスタムエージェントの出発点として使用できます。

カスタムエージェントの作成方法については、カスタムエージェントのドキュメントをご覧ください。

質問ツール

チャットのやり取り中に質問カルーセルUIを表示する askQuestions ツールが、VS Codeコアに統合されました。これにより、リクエストキャンセルの信頼性が向上し、サブエージェントを含む様々なコンテキストで一貫してツールが動作するようになります。

Screenshot showing the ask questions tool with a carousel of questions and a question input box.

カルーセルがアクティブなとき、保留中の質問に回答したり閉じたりしなくても、ステアリングメッセージを送信できるようになりました。これにより、質問シーケンスの途中であっても、その場でエージェントの応答をリダイレクトできます。キーボードを使用して ⌥N (Windows, Linux Alt+N) (次へ) と ⌥P (Windows, Linux Alt+P) (前へ) で質問間を移動できます。

チャット中の自動サスペンド防止

VS Codeは、チャットリクエストの実行中にマシンが自動的にサスペンドしないようOSに要求するようになりました。エージェントの応答を中断する心配をせずに、コンピュータから離れることができます。

なお、プラグを抜いたラップトップの蓋を閉じた場合は、引き続きサスペンドがトリガーされます。

エージェントの拡張性

エージェントは、与えられたツールやカスタマイズによってのみ有用になります。今回のリリースでは、インストール可能なプラグインバンドルからブラウザ自動化、新しいコード認識ツールまで、エージェントの機能をより簡単に拡張できるようにしました。

エージェントプラグイン (実験的)

設定: chat.plugins.enabled Open in VS Code Open in VS Code Insiders , chat.plugins.marketplaces Open in VS Code Open in VS Code Insiders , chat.plugins.paths Open in VS Code Open in VS Code Insiders

VS Codeは、チャットのカスタマイズがパッケージ化されたエージェントプラグインをサポートしました。プラグインにはスキル、コマンド、エージェント、MCPサーバー、フックが含まれます。

VS Code内の拡張機能ビューから直接エージェントプラグインを検索およびインストールできます。検索ボックスに @agentPlugins と入力するか、コマンドパレットから Chat: Plugins コマンドを実行してください。

Screenshot showing the Agent Plugins view in VS Code.

デフォルトでは、VS Codeは copilot-plugins および awesome-copilot リポジトリからプラグインを取得します。以下の設定を使用して、さらに多くのソースを構成できます。

  • chat.plugins.marketplaces Open in VS Code Open in VS Code Insiders : GitHubまたは標準のgitリポジトリを指定して、追加のプラグインマーケットプレイスを追加します。この設定は、anthropics/claude-code のようなClaudeスタイルのマーケットプレイスもサポートしています。
  • chat.plugins.paths Open in VS Code Open in VS Code Insiders : ローカルプラグインディレクトリのパスを指定し、有効または無効にすることで登録します。

エージェントプラグインの詳細については、エージェントプラグインのドキュメントをご覧ください。

エージェント向けブラウザツール (実験的)

設定: workbench.browser.enableChatTools Open in VS Code Open in VS Code Insiders

前回のリリースでは、VS Codeデスクトップに統合ブラウザを追加しました。これにより、エディタ内で直接Webページを操作できます。しかし、エージェントが自律的にこのブラウザを使用し、構築中のWebサイトの変更を検証できたらどうでしょうか?

今回のリリースでは、エージェントが統合ブラウザを読み取り、操作するためのツールセットを追加しました。エージェントがページを操作すると、ページコンテンツの更新や、コンソール内のエラー・警告を確認できます。これらのツールは追加の依存関係をインストールすることなく、すぐに使用可能です。

  • ページナビゲーション: openBrowserPage, navigatePage
  • ページコンテンツと外観: readPage, screenshotPage
  • ユーザー操作: clickElement, hoverElement, dragElement, typeInPage, handleDialog
  • カスタムブラウザ自動化: runPlaywrightCode

これらのツールにより、エージェントはWebアプリの作成と検証を同時に行い、開発ループを完結させることができます。

デフォルトでは、エージェントによって開かれたページはプライベートなメモリ内セッションで実行されます。これにより、エージェントがアクセス可能なブラウジングデータを制御できます。統合ブラウザ内の特定のWebページへのアクセスをエージェントに許可したい場合は、ページをエージェントと明示的に共有することで、一時的なアクセス権と保存済みデータへのアクセスを許可できます。

新しいツールを試すには、 workbench.browser.enableChatTools を有効にし、チャットツールピッカーでブラウザツールを有効にしてください。

ステップバイステップのチュートリアルについては、ブラウザエージェントテストガイドをご覧ください。

チャットからエージェントをカスタマイズ

エージェントモードで新しい /create-* スラッシュコマンドを使用することで、チャットの会話から直接エージェントカスタマイズファイルを生成できるようになりました。

  • /create-prompt: 再利用可能なプロンプトファイルを生成
  • /create-instruction: プロジェクトの慣習のための指示ファイルを生成
  • /create-skill: ステップバイステップのワークフローをスキルパッケージとして抽出
  • /create-agent: 特化したカスタムエージェントペルソナを作成
  • /create-hook: ライフサイクル自動化のためのフック構成を作成

各コマンドは作成プロセスをガイドし、ユーザーレベル(アカウント全体)またはワークスペースレベル(プロジェクト固有)の保存先を選択できます。

また、これらのコマンドは進行中の会話からパターンを抽出することも可能です。例えば、問題をデバッグした後に /create-skill を使用して手順を再利用可能なスキルとしてキャプチャしたり、/create-instruction を使用して修正をプロジェクトの慣習に変えたりできます。

正確なスラッシュコマンドを記憶する必要はありません。「このワークフローをスキルとして保存して」や「ここから指示を抽出して」といった自然言語を使用することも可能で、エージェントが意図を認識し、適切な作成フローを開始します。

同じ生成オプションが、プロンプト、指示、スキル、エージェントのクイックピックメニューでも利用可能で、輝きアイコンで示されます。

使用状況とリネームのためのツール

usages ツールを更新し、rename 用のツールを追加しました。これらのツールは、既存の拡張機能やLSP機能を再利用し、エージェントがコードを高い精度とパフォーマンスでナビゲートおよびリファクタリングできるようにします。

エージェントは自動的にこれらの新しいツールを採用するはずです。ただし、エージェントはこのシナリオにおいて不適切なgrepを優先する傾向があることが分かっています。#rename を使って fib の名前を fibonacci に変更して のようにツール名を明示的に #-メンションするか、SKILL.md ファイルを設定することで、エージェントを支援できます。

Screenshot showing the rename tool having changed all occurrences of the fib function.

よりスマートなセッション

長時間実行されるマルチターンのタスクは、エージェントがコンテキストを記憶し、リサーチを効率的に委譲し、インライン編集を同期し続けることでより効果的に機能します。これらの改善により、セッションの復元性とコンテキスト認識能力が向上します。

計画のためのセッションメモリ

プランエージェントによって作成された計画はセッションメモリに永続化され、会話をまたいで利用可能になります。改善を求めると、エージェントは最初からやり直すのではなく、既存の計画をベースにして構築します。

計画は同じセッション内の無関係なメッセージの後でも呼び出されるため、コンテキストを繰り返さずに計画に戻ることができます。長時間の実装作業中、古い会話履歴がコンテキストスペースを確保するために圧縮された場合でも、計画はメモリ内でアクセス可能です。

コンテキストの圧縮

会話が長くなると、蓄積されたメッセージとコンテキストがモデルのコンテキストウィンドウを一杯にしてしまうことがあります。コンテキストの圧縮は会話履歴を要約してスペースを確保するため、重要な詳細を失うことなく同じセッションで作業を継続できます。

VS Codeはコンテキストウィンドウが上限に達すると自動的に会話を圧縮しますが、手動で圧縮をトリガーすることもできます。手動圧縮はローカル、バックグラウンド、Claudeエージェントセッションで利用可能です。手動で圧縮するには、以下のいずれかの方法を使用します。

  • チャット入力フィールドに /compact と入力します。オプションとして、コマンドの後にカスタム指示を追加して、要約の方法をガイドすることもできます(例: /compact focus on the database schema decisions)。

  • チャット入力ボックスのコンテキストウィンドウコントロールを選択し、Compact Conversation を選択します。

Screenshot showing the context window control and the compact option.

詳細については、ドキュメントのコンテキストの圧縮をご覧ください。

Exploreサブエージェントによるコードベース検索

設定: chat.exploreAgent.defaultModel Open in VS Code Open in VS Code Insiders

プランエージェントは、常にコードベースのリサーチを専用の Explore サブエージェントに委譲するようになりました。Exploreは検索ツールとファイル読み取りツールのみを使用する読み取り専用エージェントで、高速で並列化されたコードベース探索に集中します。リサーチをExploreにオフロードすることで、プランエージェントはワークスペース内の特定のファイルやコードパスを参照する計画を作成できます。

Exploreはデフォルトで高速なモデル(Claude Haiku 4.5、Gemini 3 Flash)で実行され、リサーチを迅速に保ちます。一方、プランエージェントはプランニングのためにフルモデルを使用します。 chat.exploreAgent.defaultModel 設定でモデルをオーバーライドできます。チャット内のエクスプロアタスクの上にホバーすると、リサーチに使用されているモデルを確認できます。

: Exploreはスタンドアロンのエージェントとして直接呼び出すことはできません。オンデマンドで使用されるサブエージェントとしてのみ利用可能です。

インラインチャットとチャットセッション

エージェントセッションがすでにファイルを変更している場合、インラインチャットは個別に変更を行うのではなく、新しいメッセージをそのセッションにキューに入れるようになりました。これにより、完全なコンテキストが使用されるようになり、エージェントの編集内容をレビューする際にも役立ちます。

チャットセッションをフォークする

チャットセッションをフォークして、元の会話履歴を継承する新しい独立したセッションを作成できるようになりました。これは、代替アプローチを検討したり、サイドの質問をしたり、元のコンテキストを失わずに長い会話を別の方向に分岐させたりする場合に便利です。

セッションをフォークするには2つの方法があります。

  • セッション全体をフォーク: チャット入力ボックスに /fork と入力して、完全な会話履歴を持つ新しいセッションを作成します。
  • チェックポイントからフォーク: チャットリクエストにホバーして Fork Conversation を選択し、その時点までの会話のみを含む新しいセッションを作成します。

Screenshot showing the Fork Conversation button on a chat request.

フォークされたセッションは完全に独立しており、一方のセッションでの変更は他方に影響を与えません。チャットセッションのフォークの詳細をご覧ください。

チャットエクスペリエンス

チャットインターフェースへの細かな改良が積み重なりました。よりクリーンなモデルピッカー、ツール出力による視覚的な乱れの軽減、他のファイルに集中しているときでも届く通知などです。

再設計されたモデルピッカー

タスクに適したモデルの選択を改善するために、言語モデルのドロップダウンを再設計しました。新しいドロップダウンはモデルを明確なセクションに整理します。

  • Auto は常にリストのトップに表示されます。
  • 次に Featured and recently used models が表示されます。最大4つの最近使用したモデルと、アカウント向けにキュレートされた注目のモデルが並んで表示されます。モデルを使用すると、自動的にこのセクションに移動します。
  • Other models は折りたたみ可能なグループで、残りの利用可能なモデルが含まれています。これを展開すると、下部に Manage Models オプションも表示されます。
  • 検索ボックスにより、名前でモデルを素早くフィルタリングできます。

各モデルエントリーは、機能やコンテキストウィンドウサイズなどの詳細が表示されるリッチなホバーを表示します。現在のGitHub Copilotプランでは利用できないモデルも表示されますが、選択はできません。

コンテキストヒントで機能を発見 (実験的)

設定: chat.tips.enabled Open in VS Code Open in VS Code Insiders

VS Codeは、AIコーディング体験を最大限に活用するための機能を学習できるように、チャットビューにコンテキストヒントを表示するようになりました。ヒントは新しいチャットセッションを開始したときに表示され、あなたの使用パターンに合わせて調整されます。圧倒されないように、まだ試していない機能のみが提案され、関連性が高く実行可能です。

Screenshot showing a chat tip suggesting to use /create-skill to create a skill.

ヒントは以下を含む様々な機能をカバーしています。

  • カスタムエージェント、プロンプト、スキルの作成
  • メッセージのキューイングとステアリングの使用
  • より優れたモデルへの切り替え
  • YOLOモードやカスタム思考フレーズなどの実験的機能の有効化

ナビゲーションコントロールを使用して利用可能なヒントをブラウズするか、興味のないヒントを個別に消去してください。提案された機能を使用すると、ヒントは自動的に非表示になります。 chat.tips.enabled でヒントを完全に無効にできます。

機能のリリースに合わせて新しいヒントが定期的に追加されるため、頻繁に確認してください。

カスタム思考フレーズ

設定: chat.agent.thinking.phrases Open in VS Code Open in VS Code Insiders

推論中やツール呼び出し中に表示されるローディングテキストがカスタマイズ可能になりました。事前定義されたカスタムフレーズを使用して、replace モードで既存のデフォルトフレーズを置き換えるか、append を使用して既存のデフォルトフレーズに追加することができます。

デフォルトを置き換える例

  "chat.agent.thinking.phrases": {
    "mode": "replace",
    "phrases": [
      "Bribing the hamster",
      "Reticulating splines",
      "Untangling the spaghetti"
    ]
  },

この設定により、チャットのローディング体験をパーソナライズできます。

折りたたみ可能なターミナルツール呼び出し

設定: chat.tools.terminal.simpleCollapsible Open in VS Code Open in VS Code Insiders

エージェントモードでのターミナルツール呼び出しが、折りたたみ可能なセクションとして表示されるようになりました。長いターミナル出力が会話を占有する代わりに、各ターミナルコマンドが概要ヘッダーとして表示され、展開して全出力を確認できます。これにより視覚的なノイズが減り、ステップが多いエージェントのやり取りを確認しやすくなりました。この機能は chat.tools.terminal.simpleCollapsible 設定で無効にできます。

Screenshot showing a terminal tool call in chat displayed as a collapsible section with a summary header.

チャット応答と確認のためのOS通知

設定: chat.notifyWindowOnResponseReceived Open in VS Code Open in VS Code Insiders , chat.notifyWindowOnConfirmation Open in VS Code Open in VS Code Insiders

以前は、チャット応答と確認リクエストのOS通知は、VS Codeがフォーカスされていない場合にのみ表示されていました。そのため、VS Codeで別のタスクに集中して作業していると、応答を受信したときやエージェントが確認を求めているときなどの重要な更新を見逃す可能性がありました。

設定値を always にすることで、ウィンドウがフォーカスされている場合でもこれらの通知を表示するように構成できるようになりました。

インラインチャットのホバーモード

設定: inlineChat.renderMode Open in VS Code Open in VS Code Insiders

インラインチャットは、「行間」UIからホバーベースのUIに移行しています。 inlineChat.renderMode を介して有効にでき、これによりインラインチャット入力がリネーム体験に近くなります。プロンプトが送信されると、進捗と結果が右上に表示されます。

インラインチャットの入口(Affordance)

設定: inlineChat.affordance Open in VS Code Open in VS Code Insiders

インラインチャットを開始しやすくするために、選択範囲の横に表示される2種類の入口を追加しました。これらは電球アイコンと組み合わされ、邪魔にならないように設計されています。

inlineChat.affordance 設定には3つの値が可能です。

オフ
none: テキスト選択時に入口は表示されません。
editor
エディタ内の選択範囲の横にメニューを表示します。
gutter
エディタのガター(行番号エリア)の選択範囲の横にメニューを表示します。

アクセシビリティ

このリリースでは、スクリーンリーダーのサポート、キーボードナビゲーション、およびチャットのやり取りへの意識を高め、すべての開発者がVS CodeのAI機能を効果的に利用できるようにしました。

アクセシブルビューで思考コンテンツの切り替え

スクリーンリーダーユーザーは、チャット応答のアクセシブルビューで ⌥T (Windows, Linux Alt+T) を使用して、思考コンテンツの含め方を切り替えられるようになりました。これにより、応答を読む際にモデルの推論プロセスを含めるかどうかを選択でき、思考の全過程を追うか、最終出力のみに集中するかを柔軟に選べます。

チャットの質問カルーセルがスクリーンリーダーユーザーにとって完全にアクセス可能になりました。

  • 質問は現在の位置とともにアナウンスされます(例: 「1/3の質問」)。
  • Alt+NAlt+P を使用して質問間を移動します。
  • ⇧⌘A (Windows, Linux Ctrl+Shift+A) を使用して、質問カルーセルとチャット入力の間のフォーカスを切り替えます。
  • スクリーンリーダーモードでは、混乱を防ぐためにフォーカスが自動的に移動しなくなりました。

チャットの質問と確認のための通知

設定: chat.notifyWindowOnConfirmation Open in VS Code Open in VS Code Insiders , accessibility.signals.chatUserActionRequired Open in VS Code Open in VS Code Insiders

チャットが質問をしたり確認を求めたりするとき、VS Codeはアクセシビリティシグナルを鳴らし、有効な場合はOS通知を表示するようになりました。これにより、別のウィンドウで作業している場合でも保留中のアクションを把握しやすくなります。

TODOリストのフォーカスを切り替えるキーバインディング

⇧⌘T (Windows, Linux Ctrl+Shift+T) を使用して、エージェントのTODOリストとチャット入力の間でフォーカスをすばやく切り替えます。これは、スクリーンリーダーユーザーが保留中のタスクの概要を把握し、チャット入力に戻るのに特に役立ちます。

アクセシブルビューでカーソル位置を記憶

コンテンツがストリーミング中(チャットの応答中など)にアクセシブルビューを閉じると、再度開いたときにカーソルの位置が保持されるようになりました。これにより、カーソルが一番上に跳ね返るのを防ぎ、中断したところから読み続けることができます。

検索とフィルタのアクセシビリティヘルプ

検索またはフィルタダイアログで Alt+F1 を押して、コンテキストアクセシビリティヘルプを開きます。これには以下が含まれます。

  • エディタの検索と置換
  • ターミナルの検索
  • ファイル全体の検索
  • 出力、問題、デバッグコンソールのフィルタ

ヘルプコンテンツでは、使用可能なキーボードショートカット、ナビゲーションパターン、コンテキスト固有の動作を説明しています。検索ウィジェットにフォーカスがあるとき、「Alt+F1を押すとアクセシビリティヘルプが開きます」とアナウンスされます( accessibility.verbosity.find で制御されます)。

クイック入力のスクリーンリーダー改善

「行へ移動」ダイアログ (⌃G (Windows, Linux Ctrl+G)) やその他のクイック入力ボックスがスクリーンリーダーでより適切に動作するようになりました。

  • 入力中に文字がアナウンスされます。
  • 入力フィールド内での矢印キーナビゲーションが正しく動作します。
  • リストアイテムの移動時に適切なアナウンスが行われます。
  • ナビゲーション後に現在の行と列の位置がアナウンスされます。

スクリーンリーダー用のステアリングインジケーター

応答のストリーミング中にステアリングメッセージを送信すると、スクリーンリーダーユーザーには、ステアリングが行われたことを示す aria-status アナウンスが届きます。

アクセシビリティスキル

新しい組み込みのアクセシビリティスキルは、新機能が適切なアクセシビリティサポートを含むように支援します。エージェントに新機能の作成とアクセシビリティの対応を依頼すると、自動的にアクセシビリティガイドラインとパターンを参照します。

チャット内のチェックマーク

設定: accessibility.chat.showCheckmarks Open in VS Code Open in VS Code Insiders

今回の反復では、チャットビューを簡素化し一貫性を高めるため、デフォルトでツール呼び出しや折りたたみ可能なピースの前にあるチェックマークが削除されました。 accessibility.chat.showCheckmarks を使用すると、チャット内のインジケーターとしてチェックマークを再有効化できます。

エディターエクスペリエンス

モーダルエディタ (実験的)

設定: workbench.editor.useModal Open in VS Code Open in VS Code Insiders , extensions.allowOpenInModalEditor Open in VS Code Open in VS Code Insiders

通常、短時間だけ開き、その後アクティブなタスクに戻るようなエディタのために、新しいモーダルエディタ体験を実験しています。モーダルエディタは、タブのレイアウトに影響を与えることなく、エディタの上に浮かび上がります。モーダルエディタを閉じるには Escape を押します。モーダルには、エディタをエディタタブに戻すアクションや、モーダル体験を最大化するアクションがあります。

Screenshot showing a modal settings editor.

モーダル体験は以下のエディタに適用されます。

  • 設定
  • キーボードショートカット
  • プロファイル管理
  • AIおよび言語モデル管理
  • ワークスペースの信頼管理

workbench.editor.useModal some に設定して、この体験にオプトインしてください。

: 設定エディタとキーボードショートカットエディタには、関連するJSONファイルをテキストエディタとして開くボタンが表示されます。

もう一つの設定 extensions.allowOpenInModalEditor は、モーダルエディタの使用を拡張機能にまで広げます。この体験はまだ開発中であり、将来的に変更される可能性がありますが、フィードバックを得るために現在利用可能にしました。

Screenshot showing a modal extensions editor.

このモーダルエディタでは、タイトルバーのコントロールにより、拡張機能ビューにあったリストからすべての拡張機能を切り替えることができます。これはMCPサーバーにも適用されます。将来のバージョンでは、拡張機能リストと検索機能もモーダルに移動する予定です。ぜひ試してフィードバックをお寄せください。

設定可能な通知位置

設定: workbench.notifications.position Open in VS Code Open in VS Code Insiders

以前、VS Codeの通知は画面の右下隅に表示されていました。チャットビューのデフォルト位置も右側であるため、通知がチャットインターフェースを覆い隠してしまうことがありました。

通知の位置を top-rightbottom-rightbottom-left のいずれかに構成できるようになりました。デフォルトは bottom-right のままです。この設定により、ワークフローに最適な位置を選択できます。

設定エディタのクリーンアップ

VS Codeチャット設定を独自の最上位エントリーに移動し、サブカテゴリに分類しました。GitHub Copilot Chat拡張機能のエントリーは、引き続きExtensionsの下にあります。

表示される設定リストは、選択した目次のエントリにスコープ設定されるため、目次エントリを選択した後は、誤って次のエントリまでスクロールすることがなくなりました。

最後に、実験的な設定は各セクションの最後へ移動され、安定した設定が先に表示されるようになりました。

コード編集

長距離のネクストエディットサジェスト

ネクストエディットサジェスト (NES) は、カーソル位置だけでなく、その周辺の編集内容も予測することでゴーストテキストを拡張します。私たちは、この体験を長距離ネクストエディットサジェストにまで進化させました。これにより、現在のカーソル位置付近だけでなく、ファイル内のあらゆる場所での編集を予測・提案します。

トレーニングデータセットの作成からUXの洗練、成功の評価など、どのように構築されたかについては、長距離ネクストエディットサジェストのブログ投稿をお読みください。VS CodeでNES ( github.copilot.nextEditSuggestions.enabled ) と拡張NES範囲 ( github.copilot.nextEditSuggestions.extendedRange ) が有効になっていることを確認してください。

NESの積極性

Copilotステータスバーアイテムに、ネクストエディットサジェストの積極性(eagerness)オプションが含まれました。このオプションでは、関連性は低いかもしれないが多くの提案を得るか、役立つ可能性が高いが少ない提案を得るかを選択できます。

Screenshot showing the NES eagerness option in the Copilot status bar menu.

当初、このオプションは主に提案のタイミングに影響します。NESモデルの進化に伴い、より微調整された提案のためにあなたの積極性の好みがますます考慮されるようになります。

ソース管理

AI共同作成者のコミット帰属

設定: git.addAICoAuthor Open in VS Code Open in VS Code Insiders

VS Codeは、AI生成されたコードを含む変更をコミットする際に、自動的に Co-authored-by: トレーラーを付加できるようになりました。さらに、Git blameホバーツールチップには、非AIの Co-authored-by エントリーを含むコミットトレーラーからの共同作成者が表示されます。

git.addAICoAuthor を以下の値のいずれかで構成します。

  • off (デフォルト): 共同作成者トレーラーを追加しません。
  • chatAndAgent: Copilot Chatまたはエージェントモードで生成されたコードに対してトレーラーを追加します。
  • all: インライン補完を含む、すべてのAI生成コードに対してトレーラーを追加します。

VS Codeは、VS Code内から行うコミットに対してのみ共同作成者トレーラーを追加します。この設定は、外部Gitツールやコマンドラインで行われるコミットを変更しません。

デバッグ

JavaScriptデバッガー

カスタムプロパティの置き換え

オブジェクトが Symbol.for('debug.properties') を使用して定義されたメソッドを持っている場合、それらのプロパティはデバッガでデフォルト表示されます。これにより、複雑なオブジェクトのより分かりやすいビューを提供できます。

Screenshot showing custom debug properties displayed in the debugger.

元のオブジェクトプロパティは ... リストアイテムの下に折りたたまれます。

フォーカスされたウィンドウのエミュレートとイベントリスナーブレークポイント

以前、ブラウザをデバッグする際、イベントリスナーブレークポイントビューでブレークポイントを設定できました。このビューの名前を Browser Options に変更しました。

Emulate a focused page という追加オプションを追加しました。チェックを入れると、ブラウザウィンドウからフォーカスを外しても、ブラウザ要素がフォーカスを失わなくなります。これは、ホバー状態やフォーカス状態に依存する要素をデバッグするのに便利です。

ターミナル

Kittyグラフィックスプロトコル

設定: terminal.integrated.enableImages Open in VS Code Open in VS Code Insiders , terminal.integrated.gpuAcceleration Open in VS Code Open in VS Code Insiders , terminal.integrated.windowsUseConptyDll Open in VS Code Open in VS Code Insiders

VS Codeターミナルは Kittyグラフィックスプロトコル をサポートし、ターミナル内で高精細な画像レンダリングが可能になりました。このプロトコルをサポートするプログラムは、豊富な機能セットで画像を送信および表示できます。

  • 画像形式: PNG、24ビットRGB、32ビットRGBA
  • 表示レイアウト: 画像の特定の列/行寸法へのスケーリング、ソース領域の切り抜き、サブセルピクセルオフセットの適用、zインデックス重ね合わせ順序の制御
  • 伝送: チャンク転送とzlib圧縮サポートを備えた直接インラインbase64
  • 画像管理: 送信と表示を1ステップで実行、画像を保存して後で異なる位置に配置、IDまたは一度に削除、既存画像の更新のための再送信
  • カーソル制御: レンダリング後にカーソルを画像越しに移動させるか、その場に留めるかを選択
  • ターミナル統合: 画像はテキストと一緒にスクロールし、ターミナルのリセットまたはクリア時に適切にクリーンアップされます。

画像レンダリングを有効にするには、 terminal.integrated.enableImages true に設定し、 terminal.integrated.gpuAcceleration on または auto に設定されていることを確認してください。Windowsでは、 terminal.integrated.windowsUseConptyDll も有効にする必要があります。

kitten icat (macOS/Linux) や VT CLI のようなツールを使用して、ターミナルで画像を表示できます。

Screenshot showing an image rendered in the VS Code terminal using the Kitty graphics protocol.

: Kittyグラフィックスプロトコルのいくつかの機能(アニメーション、相対配置、Unicodeプレースホルダー、ファイルベースの送信など)はまだサポートされていません。最新の実装状況については xterm.jsの議論 を参照してください。

外部ターミナルでのGhosttyサポート

設定: terminal.external.osxExec Open in VS Code Open in VS Code Insiders , terminal.external.linuxExec Open in VS Code Open in VS Code Insiders

Ghostty がmacOSおよびLinux上の外部ターミナルとしてサポートされました。macOSの場合は terminal.external.osxExec 、Linuxの場合は terminal.external.linuxExec を設定して、デフォルトの外部ターミナルとして設定できます。

// macOS
"terminal.external.osxExec": "Ghostty.app",

// Linux
"terminal.external.linuxExec": "ghostty"

構成が完了すると、Terminal: Open New External Terminal などのコマンドや、外部ターミナルで起動するデバッグ構成はGhosttyで開かれるようになります。

Screenshot showing Ghostty launched as an external terminal from VS Code.

外部ターミナル用のワークスペースフォルダー選択

マルチルートワークスペースで ⇧⌘C (Windows, Linux Ctrl+Shift+C) または Terminal: Open New External Terminal コマンドを使用して外部ターミナルを開くと、VS Codeはワークスペースフォルダーを選択するように促すようになりました。選択されたフォルダーが外部ターミナルの作業ディレクトリとして使用されます。

Screenshot showing the workspace folder selection prompt when opening an external terminal in a multi-root workspace.

ターミナルサンドボックスの改善 (プレビュー)

設定: chat.tools.terminal.sandbox.enabled Open in VS Code Open in VS Code Insiders , chat.tools.terminal.sandbox.linuxFileSystem Open in VS Code Open in VS Code Insiders , chat.tools.terminal.sandbox.macFileSystem Open in VS Code Open in VS Code Insiders , chat.tools.terminal.sandbox.network Open in VS Code Open in VS Code Insiders

信頼できるドメインを選択してネットワーク分離を行えるようになりました。これには chat.tools.terminal.sandbox.network Open in VS Code Open in VS Code Insiders allowTrustedDomains を有効にします。制限されたドメインの検出が改善され、どのドメインがブロックされているかが明確に表示されるようになりました。

macOSではターミナルのサンドボックスを有効にするためのインストールは不要です。Linuxではripgrepをインストールせずに有効化できます。

言語

JavaScriptとTypeScriptの設定を統合

近日公開予定のTypeScript 6.0および7.0リリースに備えて、組み込みのJavaScriptおよびTypeScriptの設定IDを統合し、整理しました。以前は、これらの設定の多くに javascript.*typescript.* の重複するバージョンが存在していました。これは、言語固有の設定に対する標準的なアプローチを追加する前の設定だったためです。一部の設定名は一貫性もありませんでした。

現在、これらの設定はすべて js/ts.* プレフィックスの下に移動されました。つまり、デフォルトでは、単一の設定値を更新するだけで、JavaScriptファイルとTypeScriptファイルの両方の動作を変更できます。JavaScriptとTypeScriptファイルで異なる動作をさせたい場合は、言語固有の設定を使用できます。

例えば、以下のように設定する代わりに、

"javascript.format.enable": false,
"typescript.format.enable": true

現在は、統合された設定で言語固有のオーバーライドを使用できます。

"[javascript][javascriptreact]": {
    "js/ts.format.enabled": false
},
"[typescript][typescriptreact]": {
    "js/ts.format.enabled": true
}

また、[javascriptreact] を使用してJSXファイルのみの設定をカスタマイズすることも可能です。

古い javascript.* および typescript.* 設定も引き続き動作しますが、現在は非推奨としてマークされており、新しい統合された js/ts 設定が設定されている場合は、それらによって上書きされます。

これは大きな変更であることを理解していますが、VS Codeの長期的な品質のために正しい判断であると考えています。統合された設定により、JavaScriptとTypeScriptの設定変更が容易になり、言語固有の設定などの最新のオプションもサポートされます。

Python

Python Environments拡張機能がすべてのユーザーに展開

1年間のプレビュー期間を経て、Python Environments拡張機能がすべてのユーザーに提供されるようになりました。この拡張機能は、venv、conda、pyenv、poetry、pipenvのいずれを使用しているかに関わらず、Python環境、パッケージ、インタープリターをVS Code内で直接管理するための統一されたインターフェースを提供します。

主な機能は以下の通りです:

  • クイック作成: デフォルトのマネージャーと最新のPythonバージョンを使用して、ワンクリックで環境を作成
  • Pythonプロジェクト: モノレポやマルチサービスワークスペースのために、特定のフォルダーに環境を割り当て可能
  • uv統合: uv がインストールされている場合、環境の作成とパッケージのインストールが高速化
  • 組み込みパッケージ管理: 環境マネージャービューからパッケージの検索、インストール、アンインストールが可能
  • ポータブル設定: 環境構成はハードコードされたパスではなくマネージャータイプを使用するため、settings.json をマシン間でポータブルに利用可能

今後数週間のうちに自動的に有効になる予定ですが、python.useEnvsExtension 設定を使用して今すぐ有効化することも可能です。

詳細については、発表ブログ記事またはPython環境のドキュメントを参照してください。

拡張機能への貢献

GitHub Pull Requests

プルリクエストと課題の操作、作成、管理を可能にする GitHub Pull Requests 拡張機能にさらなる進歩がありました。新機能には次のようなものがあります。

  • 複数のプルリクエストおよびIssueの説明を同時に開けるようになりました。
  • githubPullRequests.autoRepositoryDetection 設定を true に設定すると、ワークスペース外のリポジトリを含めることができます。
  • 一致するIssueがないリポジトリは、Issueビューで非表示になります。

拡張機能の 0.130.0 リリースノートを確認して、このリリースのすべての詳細を学びましょう。

拡張機能の作成

WebviewとカスタムエディターでThemeIconがアイコンパスとして使用可能に

Webviewパネルおよびカスタムエディターのタブアイコンとして、ThemeIcon を使用できるようになりました。

webviewPanel.iconPath = new vscode.ThemeIcon('octoface');

Screenshot showing the 'octoface' theme icon used for a webview tab icon.

ポータブルモード検出APIが安定版に

env.isAppPortable APIが安定版となり、enabledApiProposals を必要とせずにすべての拡張機能で使用可能になりました。

このAPIを使用して、VS Codeがポータブルモードで実行されているかどうかを検出できます。これは、アプリが data ディレクトリを含むフォルダーから実行されたときに有効になります。

if (vscode.env.isAppPortable) {
  // Running in portable mode - adjust behavior accordingly
}

提案API

チャットアイテムコントローラーAPI

チャットセッションAPIの改善を継続しています。このAPIにより、拡張機能はVS Codeの組み込みチャットセッションビューにアイテムを提供できます。今回のイテレーションでの注目すべき変更は以下の通りです。

  • ChatSessionItemControllerNewItemHandler を追加し、コントローラーが新しいセッションに使用されるURIを指定できるようにしました。

  • ChatSessionProviderOptions.newSessionOptions を追加し、新しいセッションのデフォルトオプションを設定できるようにしました。

また、多数のセッションをサポートするためにAPIの実装を大幅に最適化しました。

エンジニアリング

VS CodeエンジニアリングにおけるTypeScript-Go

vscode リポジトリでの開発作業において、引き続き TypeScript-Go (tsgo) の導入を進めています。

今回のイテレーションから、vscode ワークスペースはデフォルトで開発にTSGoを使用します。すでにこれによるパフォーマンスの向上を確認しており、TSGoの言語ツールのテストにも役立っています。

また、開発中にVS Codeの組み込み拡張機能をコンパイルするためにも TypeScript-Go (tsgo) を使用しています。その結果、各組み込み拡張機能は1秒未満でビルドおよび完全な型チェックが行われるようになりました。

esbuildによる拡張機能のバンドル

組み込み拡張機能の大部分を、バンドルにwebpackではなくesbuildを使用するように移行しました。Esbuildは、これらの拡張機能のデスクトップ版とWeb版の両方のバンドルに使用されています。

この移行により、ビルドが簡素化され高速化されました。移行が必要な拡張機能は残りわずかであり、3月中にこの作業を完了する予定です。

非推奨の機能と設定

今リリースの新しい非推奨機能

  • Edit Mode はVS Codeバージョン1.110をもって正式に非推奨となりました。ユーザーはVS Codeの設定 chat.editMode.hidden Open in VS Code Open in VS Code Insiders を介して一時的にEdit Modeを再度有効にできます。この設定はバージョン1.125までサポートされます。バージョン1.125以降、Edit Modeは完全に削除され、設定から有効にすることはできなくなります。

今後の非推奨機能

なし

注目すべき修正

  • vscode#251722: "workbench.list.horizontalScrolling": true の場合でも、表示可能なスクロール領域内にある拡張機能提供のツリービューアイテム上のインラインアクション。

ありがとうございます

イシュートラッキング

イシュートラッキングへの貢献

vscodeへの貢献

vscode-copilot-chat への貢献

vscode-css-languageserviceへの貢献

vscode-js-debug への貢献

vscode-json-languageservice への貢献

vscode-languageserver-nodeへの貢献

vscode-pull-request-github への貢献

vscode-python-debugger への貢献

vscode-python-environments への貢献

vscode-test への貢献

debug-adapter-protocolへの貢献

language-server-protocolへの貢献


新機能をすぐに試していただくことに感謝しています。頻繁にチェックして、新機能について学んでください。

以前の VS Code バージョンのリリースノートを読むには、code.visualstudio.comUpdates にアクセスしてください。

© . This site is unofficial and not affiliated with Microsoft.