Visual Studio Code のバックグラウンド エージェント
Visual Studio Code のバックグラウンド エージェントは、Copilot CLI のような CLI ベースのエージェントで、ローカル マシン上でバックグラウンドで実行されます。 エディターで他の作業を継続している間、自律的に動作します。 バックグラウンド エージェントは Git worktrees を使用して、メインのワークスペースから分離して作業し、アクティブな作業との競合を防ぐことができます。
この記事では、バックグラウンド エージェントの主な機能、および Copilot CLI または OpenAI Codex からバックグラウンド セッションを開始および管理する方法について説明します。

バックグラウンド エージェントとは?
VS Code のエディター コンテキストを認識し、その中で動作するローカル エージェントとは異なり、バックグラウンド エージェントはローカル マシン上でコマンドライン インターフェイス (CLI) を介して独立して実行されます。 VS Code の統合されたチャット ビューから、すべてのバックグラウンド エージェント セッションを表示および管理できます。 このビューでは、VS Code から直接新しいバックグラウンド エージェント セッションを作成したり、ローカル エージェントの会話をバックグラウンド エージェントに引き継いだりすることもできます。
バックグラウンド エージェントはユーザーの操作なしでバックグラウンドで実行されるため、スコープが明確で必要なコンテキストがすべて揃っているタスクに適しています。 例としては、計画からの機能の実装、概念実証の複数のバリアントの作成、または明確に定義された修正や機能の実装が挙げられます。
バックグラウンド エージェントは、コードベースに変更を自律的に適用します。 エディターでのアクティブな作業への干渉を防ぐために、バックグラウンド エージェントは Git worktrees を使用して 分離された環境 で実行できます。この環境では、メインのワークスペースに影響を与えることなく変更を加えることができます。 worktree 分離でバックグラウンド エージェント セッションを開始すると、VS Code はそのセッション用に別のフォルダーを自動的に作成します。 バックグラウンド エージェントをメインのワークスペースで実行することもできますが、競合が発生する可能性があります。
バックグラウンド エージェントは CLI を介して実行され、VS Code の組み込みツールや実行時コンテキスト (失敗したテストやテキスト選択など) に直接アクセスできません。 また、MCP サーバーや拡張機能が提供するツールにもアクセスできません。 CLI ツールを介して利用可能なモデルに限定されます。 バックグラウンド エージェントはターミナル コマンドを実行でき、必要に応じて承認を求める場合があります。
バックグラウンド エージェントにタスクを割り当てるには、チャット ビューから直接新しいバックグラウンド セッションを作成するか、エージェント専用の CLI を使用するか、VS Code からローカル チャット会話をバックグラウンド エージェント セッションに引き継ぐことができます。
Copilot CLI
Copilot CLI は、VS Code の主要なバックグラウンド エージェントです。 Copilot CLI はターミナルから直接使用するか、VS Code 内からセッションを開始および管理できます。
開始するには、Copilot CLI をインストールしてセットアップしてください。 VS Code がこれを処理してくれますが、次のコマンドで CLI を手動でインストールすることもできます。
npm install -g @github/copilot
GitHub のドキュメントで Copilot CLI について詳しく学んでください。
OpenAI Codex
OpenAI Codex バックグラウンド エージェントは、OpenAI の Codex を使用してコーディング タスクを自律的に実行します。 OpenAI Codex エージェントを使用するには、Visual Studio Marketplace から OpenAI Codex 拡張機能をインストールしてください。
VS Code の OpenAI Codex を使用すると、Copilot Pro+ サブスクリプションを使用して認証し、追加のセットアップなしで Codex にアクセスできます。 GitHub のドキュメントで GitHub Copilot の請求とプレミアム リクエスト についてさらに詳しく知ることができます。
バックグラウンド エージェント セッションの表示と管理
VS Code のチャット ビューから、すべてのバックグラウンド エージェント セッションを表示および管理できます。 フィルター オプションから バックグラウンド エージェント を選択して、セッション リストをバックグラウンド エージェント セッションのみを表示するようにフィルター処理します。

リストからバックグラウンド エージェント セッションを選択すると、チャット ビューでセッションの詳細が開きます。 エディター タブ (チャット エディター) でセッションを表示したい場合は、セッションを右クリックして エディターとして開く を選択します。
VS Code のチャット会話ではなく、ターミナルでバックグラウンド セッションを表示したい場合は、チャット ビューでセッションを右クリックして ターミナルでエージェント セッションを再開 を選択します。 Copilot CLI と直接対話できます。

バックグラウンド エージェント セッションの開始
ワークフローによっては、いくつかの方法でバックグラウンド エージェント セッションを開始できます。 新しいセッションを作成してタスクの詳細を直接提供するか (CLI を使用)、VS Code の チャット ビュー から新しいセッションを開始できます。
もう 1 つのアプローチは、特に複雑なタスクの場合、まず VS Code のチャットでローカル エージェントと対話して、スコープと詳細が明確になったら、タスクをバックグラウンド エージェント セッションに引き継ぐことです。 たとえば、プラン エージェント を使用して複数ステップの機能実装の概要を作成し、実際のコーディングをバックグラウンド エージェントに委任することができます。
Copilot CLI バックグラウンド エージェント セッションの作成
VS Code で Copilot CLI バックグラウンド エージェント セッションを新しく作成するには、いくつかの方法があります。
-
チャット ビューから
-
チャットビューを開く(⌃⌘I (Windows, Linux Ctrl+Alt+I))
-
新しいチャット ドロップダウン > 新しいバックグラウンド エージェント を選択します。
-
-
ローカル チャット セッション中に
-
チャット入力に
@cli <タスクの説明>と入力してメッセージを送信します。 -
プロンプトを入力し、続行 > バックグラウンド エージェント を選択します。
-
-
コマンド パレット (⇧⌘P (Windows, Linux Ctrl+Shift+P)) から Chat: New Background Agent コマンドを実行します。
新しいバックグラウンド エージェント セッションが開かれ、追加のタスクの詳細を入力して Copilot CLI セッションの進行状況を追跡できます。
ターミナルで GitHub Copilot CLI を使用してセッションを開始すると、VS Code のチャット ビューが自動的にこのバックグラウンド セッションを検出し、表示します。 VS Code 内からこのバックグラウンド セッションとさらに対話できます。
OpenAI Codex バックグラウンド エージェント セッションの作成
チャット ビューから新しい OpenAI Codex バックグラウンド エージェント セッションを作成するには
-
チャット ビューから
-
チャットビューを開く(⌃⌘I (Windows, Linux Ctrl+Alt+I))
-
新しいチャット ドロップダウン > 新しい Codex エージェント を選択します。
-
-
コマンド パレット (⇧⌘P (Windows, Linux Ctrl+Shift+P)) から Codex: New Codex Agent コマンドを実行します。
新しい Codex バックグラウンド エージェント セッションが開かれ、追加のタスクの詳細を入力して Codex セッションの進行状況を追跡できます。
エージェント セッションをバックグラウンド エージェントに引き継ぐ
複雑なタスクの場合、まず VS Code チャットでローカル エージェントと対話して要件を明確にし、次にバックグラウンド エージェントにタスクを引き継いで自律実行させるのが役立ちます。 ローカル エージェントの会話をバックグラウンド エージェント セッションに引き継ぐと、会話履歴とコンテキスト全体がバックグラウンド エージェントに渡されます。
ローカル エージェント セッションをバックグラウンド エージェント セッションで続行するには
-
チャットビューを開く(⌃⌘I (Windows, Linux Ctrl+Alt+I))
-
ローカル エージェントと対話して、タスクをバックグラウンド エージェントに引き継ぐ準備ができるまで続行します。
-
バックグラウンド エージェントに引き継ぐには、次のオプションがあります。
-
続行 を選択し、次に バックグラウンド を選択します。

-
Plan agent を使用している場合は、実装の開始 ドロップダウンを選択してから バックグラウンドで続行 を選択して、バックグラウンド エージェント セッションで実装を実行します。

-
チャット入力に
@cliと入力して、タスクをバックグラウンド エージェントに引き継ぎます。
-
バックグラウンド エージェント セッションが自動的に開始され、会話履歴とコンテキスト全体が引き継がれます。 チャット ビューでバックグラウンド エージェントの進行状況を監視できます。
分離されたバックグラウンド エージェント セッションの作成 (実験的)
バックグラウンド エージェントの変更をメインのワークスペースから分離するには、Git worktree を使用するバックグラウンド エージェント セッションを作成できます。 worktree を作成すると、VS Code はセッション用に別のフォルダーを作成します。 バックグラウンド エージェントは、アクティブな作業との競合を防ぐために、この分離されたフォルダーで動作します。
バックグラウンド エージェント セッションで Git worktree を使用するには
-
VS Code で新しい Copilot CLI バックグラウンド エージェント セッションを開始します。
-
チャット入力ボックスで、分離モードとして Worktree を選択します。

Workspace を選択すると、バックグラウンド エージェントが変更をメインのワークスペースに直接適用します。
-
エージェント セッションを開始するためのプロンプトを入力します。 VS Code は新しい Git worktree を自動的に作成します。
バックグラウンド エージェントによって行われたすべての変更は worktree フォルダーに適用され、メインのワークスペースから分離されます。
-
ソース管理ビューの リポジトリ ビューで、Git worktree を表示できます。

エージェント ビューにも、バックグラウンド エージェント セッションの worktree パスが表示されます。
-
エージェント ビューでバックグラウンド エージェントの進行状況を監視する
-
バックグラウンド エージェントがタスクを完了したら、worktree からメインのワークスペースへの変更を確認してマージできます。
ヒント変更をマージする前に、チャット エディターの 変更を適用 ボタンを使用して、worktree からメイン ブランチに直接適用できます。
VS Code ソース管理での Git worktree の使用方法について詳しくは、こちらをご覧ください。
カスタム エージェントをバックグラウンド エージェントで使用する (実験的)
カスタム エージェント を使用すると、VS Code でエージェントのカスタム ペルソナとロールを定義できます。たとえば、コード レビューを実行するためのカスタム エージェントを作成できます。カスタム エージェントは、特定の指示と動作を定義できます。
バックグラウンド エージェント セッションを作成するときに、カスタム エージェントを選択してタスクを処理させることができます。 バックグラウンド エージェントは、カスタム エージェントの定義された動作に従って動作します。
カスタム エージェントをバックグラウンド エージェントで使用できるようにするには
-
github.copilot.chat.cli.customAgents.enabled 設定で、バックグラウンド エージェントのカスタム エージェントを有効にします。 github.copilot.chat.cli.customAgents.enabled
-
コマンド パレット (⇧⌘P (Windows, Linux Ctrl+Shift+P)) から Chat: New Custom Agent コマンドを使用して、ワークスペースにカスタム エージェントを作成します。
注意現在、ワークスペースに定義されたカスタム エージェントのみが、バックグラウンド エージェント セッションで利用可能です。 カスタム エージェントの作成方法について詳しくは、こちらをご覧ください。
-
新しいバックグラウンド エージェント セッションを作成し、エージェント ドロップダウンからカスタム エージェントを選択します。

-
プロンプトを入力すると、カスタム エージェントがタスクの処理に使用されていることに注意してください。
関連リソース
- エージェントの概要: さまざまなエージェントの種類とエージェント間のタスクの引き継ぎ方法を理解する
- クラウド エージェント: GitHub 統合を必要とするタスクのクラウド エージェントについて学ぶ
- カスタム エージェント: カスタム エージェントのロールとペルソナを作成する
- GitHub Copilot CLI ドキュメント