すべてのコーディングエージェントに向けた統一されたエクスペリエンス
2025年11月5日、VS Codeチーム、@code
これらの機能の開発に貢献してくれたRob Lourens、Bhavya U、Matt Bierner、Peng Lyu、Osvaldo Ortega、Josh Spicer、Brigit Murtaugh、Martin Aeschlimann、Alex Britez、そしてHarald Kirschnerに特別な感謝を捧げます。
この1年を一言で表すなら、おそらく「エージェント(Agent)」になるでしょう。
2025年、VS Codeはエージェント一色となりました。私たちはVS Code向けのエージェントモード、Copilotコーディングエージェント(クラウド版)との統合、そして新しいGitHub Copilot CLIをリリースしました。しかし、エージェントの選択肢はCopilotだけではありません。OpenAIやAnthropicが提供するものを含め、今やかつてないほど多くのコーディングエージェントが存在しています。
こうした選択肢の多さは開発者にとって有益である一方、エージェントのエコシステムを少し断片化させてしまいました。サブスクリプションの乗り換え、ツールの使い分け、最新エージェントのトレンドに対する絶え間ないFOMO(取り残されることへの不安)が当たり前になっています。今年のGitHub Universeで、私たちはVS Codeにおける「統一されたエージェントエクスペリエンス」を通じて、この状況を改善することを目指しました。その実現に向けた最初の大きな一歩は、Copilotのサブスクリプションでより多くのエージェントを利用できるようにすることでした。それも、「Copilot」という名前がついているものだけではありません。
OpenAI Codexの統合
OpenAIにとって今年は飛躍の年でした。彼らはGPT-5およびGPT-5 Codexモデルを出荷し、これらは標準のモデルピッカーを通じて初日からVS Codeで利用可能になりました。さらに、彼らはコーディングエージェントである「Codex」をCLIツールおよびVS Code拡張機能としてリリースしました。そしてこれは開発者の間で大きな反響を呼びました。
GitHub Universeにて、GitHub Copilot Pro+サブスクリプションでOpenAI Codexが利用可能になったことを発表しました。追加のサブスクリプションは不要です。
この統合を利用するには、OpenAI Codex拡張機能をインストールし、GitHub Copilotでサインインしてください。

Copilot Pro+でCodexを使用すると、Copilotがすべてのモデル呼び出しを処理し、標準のレート制限が適用されます。コード生成、コード解説、そしてあらゆる機能を利用でき、個別にOpenAIアカウントを管理する必要はありません。
Codexの追加により、VS Codeでは以下の4つの強力なコーディングエージェントを利用できるようになりました。
- GitHub Copilot
- Copilotコーディングエージェント(クラウド)
- GitHub Copilot CLI
- OpenAI Codex
しかし、これほど多くのエージェントがいると、圧倒されてしまいがちです。今どのエージェントが動いているのか?どこで動いているのか?今日は何曜日でしたっけ?
そこで、ローカル・リモートを問わず、あらゆるエージェントをオーケストレーション(統合管理)するための新機能をVS Codeに導入しました。私たちはこれを「エージェントセッション(Agent Sessions)」と呼んでいます。
エージェントセッション
VS Codeのサイドバーには、「エージェントセッション」という新しいビューが追加されました。ローカルで実行されているか、クラウドで実行されているかにかかわらず、すべてのエージェントを一元管理できます。

エージェントセッションを使用すると、プロジェクトのすべてのエージェントセッションを確認できます。どのエージェントが実行中か、そのステータス、そしてクリック一つでセッション間を切り替えることが可能です。
すべてのアエージェントに、「チャットエディター」と呼ばれる新しいタブ形式のエクスペリエンスが導入されました。チャットエディターでCopilotコーディングエージェントを開けば、その進捗状況を監視できます。実行の途中でもエージェントの軌道修正が可能です。プロンプトを送信した後に「重要なことを伝え忘れた」と気づくことはよくあります。以前は待つかキャンセルするしかありませんでしたが、これからはタブを開いて更新内容を追記すれば、エージェントが計画を調整する様子を確認できます。
また、チャットビューから直接、あらゆるタスクを任意のエージェントに委任することも可能です。

この統合されたエージェントセッションビューにより、VS Codeはあらゆるエージェントを制御する「ミッションコントロール」となります。作業場所であるエディターから離れる必要はありません。本日OpenAI Codexを歓迎できることを嬉しく思います。今後、さらに多くのエージェントをCopilot+サブスクリプションで利用できるように取り組んでいきます。
プランニングエージェント
数ヶ月前、私たちはVS Codeにチャットモードという概念を導入しました。これは、組み込みのエージェントプロンプトの動作を拡張・変更するためのカスタムモードです。チャットモードを使用してVS Codeのエージェントの動作を変更するとき、実際には自分専用の「カスタムエージェント」を作成していることになります。そこで、その役割をより正確に反映させるため、「チャットモード」を「エージェント」と呼ぶことにしました。
カスタムエージェントの作成を始めるにあたり、「プラン(計画)」という新しい組み込みエージェントを追加しました。

この新しいプランエージェントは、「ドラッグ&ドロップを追加して」のような曖昧なプロンプトから詳細な計画を作成する手助けをします。これは実際に私が昨日送ったプロンプトです。「何に追加するのか」「どのページに」「ライブラリは何を使うか」といった詳細は一切ありません。私はよくこうした指示をしてしまいますが、きっと私だけではないはずです。
プランエージェントを使えば、Copilotが回答が必要な質問を投げかけてくれます。ドラッグ&ドロップに適したライブラリを推奨し、それぞれの選定理由まで教えてくれます。

質問に対しては、別々の行に素早く回答を書けば、どの質問に対する答えかをエージェントが理解してくれます。回答例は以下の通りです。
dnd-kit
yes - what kind of a question is this in 2025
link creation only
プロからのヒント:「workbench.action.chat.submit」のキーバインドを「Ctrl + Enter」に変更しましょう。改行したいだけなのに誤ってメッセージを送信してしまうことがなくなります。あなたの悪態をつく回数も減ることでしょう。
プランエージェントが十分な情報を得ると、質問を停止し、実行準備ができたか尋ねてきます。チャット内の新しい「ハンドオフ(Handoff)」機能を使用して、処理を実行するか、完全なプランをエディターで開くかを選択できます。

ぜひ様々なモデルを試して、プランニングに最適なものを見つけてください。私たちは、Claudeモデルが欠けている文脈やエッジケースの特定、適切な質問の投げかけにおいて非常に優れていることを発見しました。
私のように、プロンプトエンジニアリングのスキルを向上させるために「プランエージェントがどう動いているか」を知りたい場合は、コマンドパレットから「エージェントの設定(Configure Agents)」を選び、「プラン」を選択することでプロンプトを閲覧できます。これは自分専用のカスタムエージェントを作成する際の素晴らしいベースラインになります。私はこれを使って、再帰的にインターネット検索を行い、結果をまとめてくれる「リサーチ(Research)」というエージェントを作りました。
これらのカスタムエージェントは、Copilot CLIやCopilotコーディングエージェントなど、他のエージェントに委任する際にも利用可能です。カスタムエージェントは、あなたが必要とするあらゆる場所で機能します。
プロからのヒント:awesome-copilotリポジトリには、何百ものカスタム指示、プロンプトファイル、エージェントが公開されています。まだチェックしていないなら、今すぐ見るべきです。インスピレーションとすぐに使えるプロンプトの宝庫です。
サブエージェント
コンテキストの混乱(Context Confusion)は、エージェント利用において深刻な問題です。対話が増えるほど、エージェントが追跡する文脈が増え、混乱しやすくなります。コンテキストを管理するための「コンテキストエンジニアリング」という新しい分野も生まれています。
VS Codeの最新リリースでは、コンテキスト管理を助ける「runSubagent」というツールを追加しました。
サブエージェント(Subagents)はメインのチャットから独立して動作し、独自の文脈を持ちます。プロンプトに #runSubagent ツールを追加することで呼び出せます。LLMがプロンプトを作成し、サブエージェントに引き渡すと、そのエージェントはあなたが送信した文脈のみを受け取ります。メインのチャットのことは何も知りませんし、逆にメインのチャットもサブエージェントの文脈については知りません。サブエージェントはフィードバックを待たずに動作し、メインチャットと同様のツールの多くにアクセスできます。
サブエージェントが完了すると、最終結果がメインのチャットに返されます。その結果のみがメインの文脈に統合されます。サブエージェントを使えば、メインチャットを簡潔に保ちつつ、脇道に逸れた深い調査が可能になります。例えば、APIを構築中に認証について調べる必要があるなら、サブエージェントを立ち上げてそれを実行させれば良いのです。
Analyze the #file:api with #runSubagent and recommend the best authentication strategy for a web client consuming these endpoints.
サブエージェントが実行されているときは、サブエージェントのアクションの下にツール呼び出しやモデルの応答が表示されるため、すぐに分かります。下のスクリーンショットでは、「認証のためにアプリ構造を分析する(Analyze app structure for auth)」がそれに当たります。

私たちはエージェントの文脈管理を支援する方法を今も模索しており、サブエージェントはその始まりに過ぎません。
今後の展望
エージェントは私たちのコードの書き方や仕事のやり方を変えています。一つだけを選ぶ必要はありません。エージェント間をシームレスに移動し、文脈をきめ細かく制御し、独自のカスタムエージェントを作成して既存の組み込みエージェントのプロンプトを拡張できるべきです。VS Codeの統一されたエージェントエクスペリエンスなら、それがすべて可能です。
これらは今年のGitHub Universeにおけるハイライトのほんの一部です。私たちが目指す「どこでも必要な時にマルチエージェント体験ができる統一ワークフロー」に関するすべての最新情報は、GitHubブログをチェックしてください。
最後に一言。私たちが「Copilot Edits」と「CopilotでのClaudeサポート」を発表したのは、わずか12ヶ月前のことです。このペースで行けば、12ヶ月後の世界は一体どうなっているでしょうか。
それでは、Happy Coding! 💙