1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Visual Studio 2026 Copilot入門 — カスタムエージェント・プロファイラ・デバッガの全貌

1
Last updated at Posted at 2026-04-28

はじめに

2026年4月14日、Visual Studio 2026の April Update がリリースされました。今回のアップデートの目玉は、GitHub Copilot のエージェント機能の大幅強化です。

新しく追加された4つの組み込みエージェント(@debugger@profiler@test@modernize)に加え、開発チームが独自のエージェントを定義できるカスタムエージェントエージェントスキルが正式に利用可能になりました。

この記事では、Visual Studio 2026 の Copilot エージェント機能を体系的に解説します。

この記事で学べること

  • 4つの組み込みエージェント(@debugger / @profiler / @test / @modernize)の使い方
  • .agent.md ファイルによるカスタムエージェントの定義
  • SKILL.md によるエージェントスキルの設計
  • MCP との連携によるエージェントの拡張
  • find_symbol ツールによるコードナビゲーション

対象読者

  • Visual Studio 2026 を利用している .NET / C++ 開発者
  • GitHub Copilot Agent Mode を業務効率化に活用したい方
  • チーム固有のワークフローをエージェントに定義したい方

前提環境

  • Visual Studio 2026 version 18.4 以降
  • GitHub Copilot サブスクリプション(Individual / Business / Enterprise)
  • GitHub アカウント

TL;DR

  • VS 2026 April Update で 4つの組み込みエージェント@profiler, @debugger, @test, @modernize)が追加
  • .github/agents/ フォルダに .agent.md を置くだけでカスタムエージェントを定義できる
  • .github/skills/SKILL.mdエージェントスキルを定義し、Copilot が自動検出する
  • MCP サーバーと接続することで外部の知識ソース(設計ドキュメント・API・DB)を活用できる
  • Enterprise ではMCP Allowlist ポリシーで組織管理者が接続先サーバーを制御できる

4つの組み込みエージェント

Visual Studio 2026 では、Copilot Chat のエージェントピッカー(@ メンション)または Chat パネルから4つの専用エージェントを呼び出せます。

エージェント 主な用途 対応言語
@debugger コールスタック分析・根本原因特定・修正提案 全言語
@profiler CPU/メモリボトルネック分析・最適化提案 .NET 系
@test ユニットテスト生成(プロジェクトのフレームワーク準拠) 全言語
@modernize フレームワーク・依存関係のアップグレード .NET / C++

@debugger — エラー診断の自動化

@debugger エージェントは、コールスタックと変数状態を解析して根本原因を特定し、修正を提案します。

Copilot Chat での呼び出し例:

@debugger NullReferenceException が発生しています。UserService.GetById の
コールスタックを解析して根本原因と修正方法を教えてください。

エージェントはさらに、エンドツーエンドの自律ワークフローもサポートします。

  1. バグを再現する
  2. トレースポイント・条件付きブレークポイントをアプリに挿入
  3. ライブランタイムデータを使って修正を検証

また、デバッグ中のインライン PerfTips と統合されており、経過時間・CPU 使用率・メモリ動作を分析して最適化案を提示します。

@profiler — パフォーマンスボトルネックの特定

@profiler エージェントは、Copilot Chat の @profiler タグまたは Agent Mode の自然言語指示で呼び出します。ツールメニューから有効化が必要です。

対応する分析タイプ:

  • CPU 使用率パターン
  • メモリアロケーションとランタイム動作
  • .NET オブジェクトアロケーションデータ

分析ワークフロー:

1. アプリケーションのプロファイリングデータを解析
2. コストが高いボトルネックを検出
3. BenchmarkDotNet ベンチマークの生成・既存ベンチマークの最適化
4. 改善案を提案
5. ビフォー/アフターの計測値を比較

実績:
公式ブログでは、Microsoft エンジニアが @profiler を使って OSS プロジェクト(CsvHelper, NLog, Serilog)に PR を提出した事例が紹介されています。foreach でのダックタイピングを使って不要なインターフェース実装を除去し、メモリ使用量と実行時間を改善しました。

Profile with Copilot コマンドは Test Explorer でも使用可能で、特定のテストをプロファイリングしてから Profiling Agent が CPU・計装データを自動分析します。

@test — ユニットテストの自動生成

@test エージェントはプロジェクトのテストフレームワークと既存パターンを理解した上でユニットテストを生成します。xUnit / MSTest / NUnit などを自動検出します。

@test UserService.GetById メソッドのユニットテストを生成してください。
正常系・異常系・境界値ケースを含めてください。

@modernize — 依存関係の近代化

@modernize エージェントは .NET / C++ プロジェクトのフレームワークバージョンや依存パッケージをアップグレードします。マイグレーションガイドに沿った変更を自動適用し、テストで検証します。

カスタムエージェントの作成

組み込みエージェントに加えて、チーム固有のエージェントを .agent.md ファイルで定義できます。

ディレクトリ構造

your-repo/
└── .github/
    └── agents/
        ├── code-reviewer.agent.md    # コードレビューエージェント
        ├── security-checker.agent.md # セキュリティチェックエージェント
        └── design-enforcer.agent.md  # デザインシステム準拠チェック

.github/agents/ フォルダに .agent.md ファイルを配置すると、Copilot Chat のエージェントピッカーに自動で表示されます。

.agent.md ファイルの形式

カスタムエージェントは Markdown ベースで定義します。以下はコードレビューエージェントの例です。

---
name: Code Reviewer
description: チームのコーディング規約に従ってコードレビューを実行します
model: claude-sonnet-4-6  # 省略時はモデルピッカーの選択モデルを使用
tools:
  - github
  - codebase
  - mcp-docs          # MCPサーバー接続
---

## 役割

このエージェントはチームのコーディング規約と設計原則に従ってコードレビューを実施します。

## レビュー観点

1. **命名規則**: PascalCase (クラス)、camelCase (メソッド・変数)
2. **例外処理**: カスタム例外クラスの使用、適切なログ記録
3. **パフォーマンス**: 不要な LINQ クエリ・N+1 問題の検出
4. **セキュリティ**: SQL インジェクション・XSS 脆弱性のチェック

## 出力形式

レビュー結果は以下の形式で出力してください:
- 🔴 Critical: 即時修正が必要
- 🟡 Warning: 修正を推奨
- 🟢 Info: 改善提案

呼び出し方法

@Code Reviewer この PR の変更をレビューしてください。
特にパフォーマンスとセキュリティに注目してください。

エージェントはワークスペース認識・コード理解・指定ツール・選択モデル・MCP 接続のすべてにアクセスできます。

エージェントスキルの設計

エージェントスキルは、エージェントが特定タスクを実行する方法を定義する再利用可能な命令セットです。リポジトリまたはユーザープロファイルに配置すると Copilot が自動検出します。

ディレクトリ構造

# リポジトリスキル(チーム共有)
your-repo/
└── .github/
    └── skills/
        ├── migration-guide/
        │   └── SKILL.md
        └── api-review/
            └── SKILL.md

# 個人スキル(ユーザー固有)
~/.copilot/skills/
└── my-workflow/
    └── SKILL.md

スキルのディレクトリは .claude/skills/.agents/skills/ にも対応しており、Claude Code などのほかのコーディングエージェントでも利用できます(agentskills.io/specification 準拠)。

SKILL.md の形式

---
name: api-review
description: REST API の設計をレビューし、OpenAPI 仕様への準拠を確認します
---

## このスキルの使い方

REST API のエンドポイント定義が含まれるファイルまたはコードを共有してください。
このスキルが自動で検出され、レビューを実行します。

## レビュー項目

- HTTP メソッドの適切な使用(GET/POST/PUT/DELETE)
- ステータスコードの一貫性
- リクエスト/レスポンスのスキーマ定義
- エラーレスポンスの形式統一
- 認証・認可のエンドポイント設計

## 出力形式

    {
      "endpoint": "/api/users/{id}",
      "issues": [
        { "severity": "warning", "message": "..." }
      ]
    }

スキルの自動呼び出し

スキルはプロンプトに応じて自動で呼び出されます。直接指定する場合はプロンプト内でヒントを与えます。

# 自動呼び出し(Copilot が判断)
このエンドポイント設計をレビューしてください。

# 明示的な呼び出し
"api-review" スキルを使ってこのエンドポイントをレビューしてください。

スキルパネル(Chat ウィンドウ右下のツールアイコン)でリポジトリとユーザープロファイルのすべてのスキルを確認できます。

MCP との連携

カスタムエージェントは Model Context Protocol (MCP) を通じて外部の知識ソースに接続できます。

接続できる外部ソース

  • 社内ドキュメントシステム
  • 設計システム(Figma MCP など)
  • 外部 API・データベース
  • GitHub リポジトリ外のコードベース

MCP ガバナンス(Enterprise)

Enterprise プランでは、GitHub で設定した MCP Allowlist ポリシーが適用されます。

組織管理者 → GitHub 組織設定 → Copilot → MCP Servers
└── 許可する MCP サーバーのリストを指定
└── Allowlist 設定後は承認済みサーバーのみ接続可能

これにより、機密データへのアクセスを持つ MCP サーバーを組織ポリシーで制御できます。

.agent.md での MCP サーバー指定

---
name: Design Enforcer
tools:
  - figma-mcp        # Figma デザインシステムへの接続
  - confluence-mcp   # 社内ドキュメントへの接続
---

このエージェントは Figma のデザインシステムと Confluence の設計仕様を参照して、
実装がデザイン要件に準拠しているか確認します。

find_symbol ツール

エージェントに組み込まれた find_symbol ツールは、言語対応のシンボルナビゲーションを提供します。

対応言語: C++、C#、Razor、TypeScript、LSP 拡張がある言語すべて

機能:

  • 全参照の検索
  • 型メタデータへのアクセス
  • 宣言とスコープの理解

エージェントが find_symbol を活用することで、リファクタリングやコード変更の影響範囲を正確に把握します。

@modernize UserRepository クラスの IUserRepository インターフェースへの
依存関係をすべて特定して、DI コンテナへの移行を支援してください。

このようなプロンプトでは find_symbol が全参照を検索し、影響を受けるファイルをすべて列挙した上で変更を適用します。

注意点

プラットフォーム間のツール名の差異

.agent.md で指定するツール名は GitHub Copilot プラットフォームごとに異なる場合があります。Visual Studio で利用可能なツールは、Copilot Chat のツールメニューで確認してください。

カスタムエージェントの要件

  • Visual Studio 2026 version 18.4 以降が必要
  • カスタムエージェントはプレビュー機能のため、ファイル形式は今後変更される可能性があります

@profiler の有効化

@profiler エージェントは Copilot Chat のツールメニューから明示的に有効化する必要があります。また、現時点では高 CPU 分析と .NET オブジェクトアロケーション分析に対応しており、追加の分析タイプは後続リリースで追加される予定です。

まとめ

Visual Studio 2026 April Update で導入されたエージェント機能を整理します。

機能 定義場所 用途
組み込みエージェント 設定不要 デバッグ・プロファイリング・テスト・近代化
カスタムエージェント .github/agents/*.agent.md チーム固有のワークフロー自動化
エージェントスキル .github/skills/*/SKILL.md 再利用可能な手順定義
MCP 連携 .agent.md の tools 設定 外部知識ソースへのアクセス

開発への影響:

  • コードレビュー・パフォーマンス分析・テスト生成が AI に委譲可能に
  • チーム固有のワークフローをエージェント定義として Git 管理できる
  • Claude Code などほかのコーディングエージェントと共通のスキル定義が可能

awesome-copilot リポジトリにはコミュニティ製エージェント設定・スキルのサンプルが多数公開されているため、カスタムエージェント設計の参考になります。

参考リンク

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?