Visual Studioの「Agent Mode」は、GitHub Copilotに対して「この機能を追加して」「このエラーを直して」のような高レベルの指示を出すと、コード編集、コマンド実行、ビルド結果やエラー内容の読み取りを行いながら、目的達成まで反復して作業する機能です。従来のチャット回答や単発のコード提案よりも、開発作業に近い流れをCopilotへ任せられる点が大きな違いです。(Microsoft Learn)
ただし、Agent Modeは「自動で安全にすべて任せられる機能」ではありません。ターミナルコマンドの実行、複数ファイルの変更、MCPツールやAgent Skillsの利用が関わるため、開発者は差分確認とテストを前提に使い、管理者は利用可否・ツール承認・展開範囲を整理してから導入する必要があります。
WindowsのAI/Copilot更新で何が変わるのか、利用者と管理者向けに整理
Microsoft Learnの「Use Agent Mode – Visual Studio (Windows)」で説明されているAgent Modeのポイントは、Copilot Chatが単に質問に答えるだけでなく、Visual Studio上で作業を進める「エージェント」として振る舞う点です。Visual Studio 2022 version 17.14以降が前提とされています。(Microsoft Learn)
主な変更点を整理すると、次のようになります。
| 変更点 | これまでの使い方との違い | 実務上の影響 |
|---|---|---|
| 自然言語で高レベルの作業を依頼できる | ファイル単位・関数単位で細かく指示しなくてもよい | 仕様変更、リファクタリング、テスト修正をまとめて依頼しやすい |
| Copilotがコード編集を行う | 回答をコピーして貼り付けるだけではない | 差分レビューとGit管理がより重要になる |
| ターミナルコマンドやツールを使える | チャット内の助言にとどまらない | ビルド、テスト、ツール出力を踏まえた修正が可能になる |
| エラーやビルド結果を見て反復する | 1回の回答で止まらない | コンパイルエラー修正やテスト失敗の原因調査に向く |
| 管理者ポリシーの影響を受ける | 個人のIDE設定だけでは完結しない | 企業導入ではCopilot側の管理設定確認が必須 |
Agent Modeは、特に「変更して終わり」ではなく、「変更後にビルドやテストの結果を見て、さらに直す」作業で効果を発揮します。一方で、作業範囲が広がるほど誤変更のリスクも増えるため、導入時は便利さよりも先にレビュー手順を決めることが重要です。
Agent Modeとは何か
Agent Modeは、GitHub Copilot Chatのモードの一つです。Visual StudioでCopilot Chatを開き、モード選択から「Agent」を選ぶことで利用します。プロンプトには「このクラスの責務を分離して」「失敗している単体テストを修正して」のように、作業の目的を入力できます。(Microsoft Learn)
通常のAsk Modeでは、Copilotは質問への回答やコード例の提示が中心です。Agent Modeでは、Copilotが必要なコンテキストを判断し、コード編集、ツール呼び出し、ターミナルコマンドの実行確認、エラー確認を組み合わせて作業を進めます。
Ask ModeとAgent Modeの使い分け
| 使いたい場面 | 向いているモード | 理由 |
|---|---|---|
| 仕様やエラー内容を説明してほしい | Ask Mode | コード変更を伴わず、安全に理解を深められる |
| コード例だけ見たい | Ask Mode | 自分で適用範囲を選べる |
| 複数ファイルにまたがる修正をしたい | Agent Mode | 関連ファイルを探して編集できる |
| ビルドエラーやテスト失敗を見ながら直したい | Agent Mode | 結果を見て反復できる |
| MCPツールを使いたい | Agent Mode | 公式FAQではMCP機能を使う場合はAgent Modeを選ぶ必要があると説明されている |
「絶対に自動編集されたくない」「まず設計方針だけ確認したい」という場面ではAsk Modeを選ぶのが安全です。反対に、既存コードを読みながら修正を進めたい場合はAgent Modeが向いています。
Agent Modeの基本的な使い方
Visual StudioでAgent Modeを使う基本的な流れは、次の通りです。
| 手順 | 操作 | 確認すべきこと |
|---|---|---|
| 1 | Visual Studio 2022 version 17.14以降を使う | Help > About Visual Studioでバージョンを確認 |
| 2 | Copilot Chatを開く | GitHub Copilotが利用できる状態か確認 |
| 3 | モードのドロップダウンでAgentを選ぶ | Askのままになっていないか確認 |
| 4 | 高レベルの依頼を入力する | 対象、制約、変更してよい範囲を明記 |
| 5 | ツールやコマンド実行の確認を行う | 実行内容を読んでから承認 |
| 6 | 提案されたコード差分を確認する | ファイル単位・チャンク単位でレビュー |
| 7 | KeepまたはUndoを選ぶ | 全体採用ではなく個別確認を優先 |
| 8 | ビルド・テスト・レビューを実施する | Agent Modeの結果をそのまま本番反映しない |
Copilotはターミナルコマンドや一部ツールを実行する前に確認を求めます。公式情報では、ツールがローカルマシン上で動作し、ファイルやデータを変更する可能性があるため確認が必要だと説明されています。(Microsoft Learn)
実務で使いやすいプロンプト例
Agent Modeでは、単に「直して」と依頼するよりも、作業範囲と判断基準を明確にした方が失敗しにくくなります。
このソリューションで失敗している単体テストの原因を調べてください。
コード変更が必要な場合は、先に原因と変更対象ファイルを説明してください。
ターミナルコマンドを実行する前に、目的とコマンド内容を表示してください。
OrderServiceの責務を整理し、バリデーション処理を別クラスに分離してください。
既存の公開メソッドのシグネチャは変更しないでください。
変更後にビルドエラーが出る場合は、原因を確認して修正してください。
このC#プロジェクトで警告が出ている箇所を確認し、挙動を変えずに修正案を適用してください。
変更ごとに理由を説明し、不要なリファクタリングは行わないでください。
ポイントは、「何を達成したいか」だけでなく、「何を変えてはいけないか」を入れることです。公開API、DBスキーマ、認証処理、外部連携の仕様などは、明示的に制約として書くべきです。
開発者が確認すべき設定と操作ポイント
Visual Studioのバージョンを確認する
Agent Modeを使うには、Visual Studio 2022 version 17.14以降が必要です。表示されない場合は、まずVisual StudioのバージョンをHelp > About Visual Studioで確認し、必要に応じてVisual Studio Installerから更新します。(Microsoft Learn)
Agent Modeが表示されない場合は、バージョン確認に加えて、Visual Studioの設定で「Enable Agent mode in the chat pane」が有効になっているかを確認します。設定変更後も表示されない場合は、Visual Studioの再起動も試します。(Microsoft Learn)
ツールの有効化状態を確認する
Agent Modeは、組み込みツール、MCPツール、Agent Skillsを利用できます。Copilot ChatのToolsアイコンから、利用可能なツールを確認・管理できます。追加したMCPサーバーのツールは自動で有効化されず、チェックボックスが既定でオフになっているため、使う場合は明示的に有効化が必要です。(Microsoft Learn)
実務では、すべてのツールを一括で有効にするのではなく、プロジェクトに必要なものだけを有効にするのが安全です。特に外部システムやリポジトリ、チケット管理、API連携に関わるMCPツールは、意図しない読み取りや操作につながらないよう、利用目的をチームで共有してから有効化しましょう。
差分は必ず個別に確認する
Agent Modeが編集したファイルは、Copilot ChatのTotal changesに一覧表示されます。全体をKeepまたはUndoするだけでなく、ファイルごと、コードのまとまりごとに確認できます。(Microsoft Learn)
おすすめは、次の順番で確認することです。
- 変更ファイル一覧を確認する
- 変更理由が分からないファイルを先に見る
- 公開API、認証、DB、設定ファイルの変更を重点確認する
- 不要な変更はUndoする
- Gitの差分で再確認する
- ビルドとテストを実行する
AIによる編集は、意図に近い変更を短時間で作れる一方、設計意図や業務ルールを誤解することがあります。特に「ついでの改善」が混ざっている場合は、バグ修正とリファクタリングが同時に入り、レビューしづらくなります。
元に戻す方法を理解しておく
Agent Modeでは、不要な変更をRestoreでチェックポイントまで戻せます。ただし、公式情報では、Visual Studio Copilot agentは現時点でstepwise undo/redoをサポートしていないと説明されています。(Microsoft Learn)
そのため、作業前にGitでブランチを切り、必要ならコミットまたはスタッシュしてからAgent Modeを使うのが現実的です。大きな変更を一度に依頼するより、次のように小さく分けると戻しやすくなります。
まず変更対象を調査して、編集はまだ行わないでください。
次に、UserService.csだけを対象に修正してください。
最後に、関連する単体テストだけを更新してください。
管理者が確認すべき展開・ポリシー・運用上の注意点
Copilotの管理ポリシーを確認する
Visual StudioのAgent Modeは、GitHub Copilot管理者ダッシュボードのEditor preview featuresフラグの影響を受けます。管理者がこの設定をオフにしている場合、そのサブスクリプション配下のユーザーはVisual StudioでAgent Modeを使えません。(Microsoft Learn)
また、GitHub Docsでは、Enterprise ownersが企業全体のCopilotポリシーを定義したり、組織所有者に判断を委任したりできると説明されています。AI Controlsでは、Agents、Copilot、MCPに関するポリシー管理画面が用意されています。(GitHub Docs)
管理者は、Visual Studio側だけでなく、GitHub Copilot側の管理設定を確認する必要があります。IDEを更新しても、Copilotポリシーで無効化されていれば開発者は利用できません。
展開前チェックリスト
| 確認項目 | 管理者が見るべきポイント | 放置した場合のリスク |
|---|---|---|
| Visual Studioのバージョン | 17.14以降に更新されているか | Agent Modeが表示されない、利用者ごとに挙動が異なる |
| Copilotの利用権限 | 対象ユーザーにCopilotが割り当てられているか | 一部ユーザーだけ利用できず問い合わせが増える |
| Editor preview features | 組織方針に沿ってオン・オフを決めているか | 意図せずAgent Modeが使われる、または使えない |
| MCPツール | どのMCPサーバーを許可するか | 外部連携やデータ参照範囲が曖昧になる |
| ツール承認 | セッション、ソリューション、将来の呼び出しの承認範囲 | 危険なコマンドやツールを継続承認してしまう |
| ファイル除外 | Copilotに見せたくないファイルが除外されているか | 秘密情報や対象外ファイルが作業文脈に入る |
| ターミナル権限 | Visual Studio実行ユーザーの権限が適切か | Agent Mode経由のコマンドが広い権限で動く |
| レビュー運用 | AI編集後のレビュー、テスト、承認フロー | 生成コードが未検証のまま取り込まれる |
特に注意すべきなのは、ターミナルコマンドの権限です。公式FAQでは、Agent Modeのファイル操作範囲はソリューション内や開いているソリューション配下のローカルファイルに限定される一方、ターミナルコマンドはVisual Studioプロセスと同じ権限を持ち、その制限には縛られないと説明されています。(Microsoft Learn)
つまり、ファイルコンテキストが制限されていても、承認したコマンド自体はローカル環境で広い影響を持つ可能性があります。管理者は「Copilotが確認を出すから安全」ではなく、「開発者が確認できるルールと教育があるか」を重視すべきです。
パイロット導入から始める
全社一斉導入よりも、まずは限定チームでのパイロット導入が向いています。対象は、次のようなプロジェクトが適しています。
| 向いている対象 | 理由 |
|---|---|
| テストが整備されているプロジェクト | Agent Modeの修正結果を自動テストで検証しやすい |
| Git運用が定着しているチーム | 差分レビューやロールバックがしやすい |
| 小〜中規模の既存改修 | 複数ファイル変更の効果を確認しやすい |
| 開発標準が文書化されているチーム | プロンプトやレビュー基準をそろえやすい |
反対に、テストが少ない本番直結プロジェクト、仕様が暗黙知に依存しているレガシーシステム、権限の強いローカル環境での作業は、いきなりAgent Modeを広く使うとレビュー負荷が増えやすくなります。
Agent Modeで使えるツールと影響範囲
find_symbolでコード理解が進みやすくなる
find_symbol toolは、Agent Modeに言語認識されたシンボルナビゲーションを提供します。有効化すると、Copilotがプロジェクト内の参照検索、型情報、宣言、スコープなどにアクセスしやすくなります。対応言語として、C++、C#、Razor、TypeScriptに加え、サポートされるLanguage Server Protocol拡張機能がインストールされた言語が挙げられています。(Microsoft Learn)
実務では、次のような依頼で効果が出やすいです。
このメソッドの呼び出し元を確認し、戻り値の型を変更しても影響が少ないか調べてください。
このインターフェイスの実装クラスを確認し、共通化できる処理だけを抽出してください。
単純なコード生成よりも、既存コードの関係性を読みながら修正するタスクに向いています。
C++では専用のコード編集ツールも使える
C++プロジェクトでは、Agent ModeがVisual Studio固有のC++コード編集ツールを使えます。公式情報では、呼び出し階層をたどるget_symbol_call_hierarchy、クラスや型の階層を扱うget_symbol_class_hierarchyが紹介されています。利用するには「Desktop development with C++」ワークロードが必要です。(Microsoft Learn)
C++は依存関係、ヘッダー、継承、テンプレートなどの影響範囲が広くなりやすいため、Agent Modeに任せる場合でも、変更単位を小さく区切ることが重要です。
Planning in agent modeはどう扱うべきか
Agent Modeには、複雑な依頼を構造化されたタスクに分解するPlanning機能があります。公式情報では、Visual Studio 2022 version 17.14でpublic previewとして提供されており、開発中のためユーザーフィードバックに基づいて変わる可能性があるとされています。(Microsoft Learn)
Planningを有効にすると、Copilotはユーザー向けのMarkdown計画と、LLMが読み取るための内部JSON計画を作成します。内部JSONファイルはplan-{sessionId}.jsonという形式で、C:\Users\username\AppData\Local\Temp\VisualStudio\copilot-vsに一時保存されると説明されています。(Microsoft Learn)
Planningを使うべき場面
Planningは、次のような多段階タスクに向いています。
| タスク | Planningが役立つ理由 |
|---|---|
| 大きめのリファクタリング | 手順と進捗を可視化しやすい |
| 複数のテスト失敗修正 | 原因調査、修正、再確認を分けられる |
| 既存機能への新規要件追加 | 影響範囲を整理してから編集できる |
| 段階的な移行作業 | どこまで完了したか追跡しやすい |
一方、1ファイルだけの小さな修正や、単純なコード例の作成ではPlanningの恩恵は大きくありません。公式情報でも、Planningには構造化された状態管理によるわずかな遅延があり、一部の特殊なエージェントではまだ対応していない可能性があるとされています。(Microsoft Learn)
セキュリティとレビューで失敗しやすいポイント
Agent Modeの導入で最も避けたいのは、「AIが直したから大丈夫」と考えてレビューを省略することです。失敗しやすいポイントは、技術的な精度よりも運用面にあります。
| 失敗しやすいポイント | 起きる問題 | 対策 |
|---|---|---|
| 変更範囲を指定しない | 関係ないファイルまで変わる | 「対象ファイル」「変更禁止範囲」を明記する |
| コマンドを読まずに承認する | 不要なインストール、削除、生成が行われる | 実行目的とコマンド内容を確認する |
| 全差分を一括Keepする | 小さな誤変更を見落とす | ファイル単位でレビューする |
| テストなしで取り込む | 仕様変更や副作用に気づけない | 最低限ビルドと関連テストを実行する |
| 大きな作業を一度に依頼する | 修正理由が追いづらくなる | 調査、編集、テスト修正を分ける |
| 管理者設定を確認しない | チーム内で使える人と使えない人が出る | バージョン、Copilotポリシー、IDE設定を展開前に確認する |
特に、認証、認可、暗号化、課金、個人情報、データ削除に関わるコードは、Agent Modeによる変更をそのまま採用しないでください。AIが構文上正しいコードを生成しても、業務要件やセキュリティ要件を満たすとは限りません。
移行・展開時のおすすめ運用
Agent Modeをチームに展開する場合は、機能を紹介するだけでなく、使い方のルールを短く決めておくと定着しやすくなります。
開発者向けルール例
Agent Modeを使う前に作業ブランチを作成する。
ターミナルコマンドは内容を確認してから承認する。
認証・課金・DB削除処理の変更は必ず人間のレビューを追加する。
Agent Modeの変更は、少なくともビルドと関連テストを通してからPRに出す。
管理者向けルール例
Agent Modeの利用対象チームを段階的に拡大する。
MCPツールは必要なものだけを許可する。
CopilotポリシーとVisual Studioの対象バージョンを事前に周知する。
問い合わせ対応用に「表示されない場合の確認手順」を用意する。
展開時の説明では、「開発者の代わりに判断するAI」ではなく、「調査・編集・検証の一部を高速化するペア作業者」と位置づけると、過信を避けやすくなります。
Agent Modeを使うべき具体的なシーン
Agent Modeは、次のような作業で特に効果が出やすいです。
ビルドエラーの修正
Visual Studio上でビルドエラーが出ている場合、Agent Modeにエラー内容を踏まえた修正を依頼できます。単にエラー番号を説明させるのではなく、関連ファイルを確認し、修正し、再度結果を見ながら反復できる点が強みです。
現在のビルドエラーを確認し、原因を説明したうえで修正してください。
公開APIのシグネチャは変更しないでください。
単体テストの追加・修正
既存コードを読んだうえでテストを追加したい場合にも向いています。
PaymentCalculatorの主要な分岐に対する単体テストを追加してください。
既存のテスト命名規則に合わせ、外部サービス呼び出しはモック化してください。
小規模リファクタリング
責務分離、重複削除、命名整理などはAgent Modeと相性がよい領域です。ただし、リファクタリングは「動作を変えない」ことが前提なので、プロンプトでも明示しましょう。
挙動を変えずに、重複しているバリデーション処理を共通化してください。
変更後に関連テストを確認してください。
影響範囲調査
find_symbolなどのツールを活用できる環境では、関数や型の参照関係を調べる作業にも使えます。
このメソッドの呼び出し元を調べ、引数を追加した場合の影響範囲を一覧化してください。
まだコード変更はしないでください。
最初に「まだコード変更はしない」と書くと、調査フェーズと編集フェーズを分けやすくなります。
まとめ:Agent Modeは便利だが、導入の鍵は設定確認とレビュー運用
Visual StudioのAgent Modeは、GitHub Copilotを使ってコード編集、コマンド実行、エラー確認、再修正を反復できる強力な機能です。Ask Modeよりも実作業に踏み込めるため、ビルドエラー修正、テスト追加、リファクタリング、影響範囲調査で生産性向上が期待できます。
一方で、Agent Modeはローカル環境でツールやターミナルコマンドを扱うため、差分確認、コマンド承認、Git管理、テスト実行を省略してはいけません。管理者はVisual Studio 2022 version 17.14以降の展開、Copilotポリシー、Editor preview features、MCPツール、ファイル除外、ターミナル権限を確認してから段階的に導入しましょう。
まず取るべき行動は明確です。開発者は小さな作業ブランチでAgent Modeを試し、管理者は対象ユーザー・ポリシー・ツール利用範囲を整理してください。Agent Modeを「自動化された開発者」ではなく、「レビュー前提で作業を進めるAIペア」として扱うことが、安全で実用的な使い方です。

コメント