GitHub Copilot Custom Chat Modesで独自エージェントを作成

Web開発やプログラミングの現場で急速に普及しているAI支援ツール「GitHub Copilot」では、2025年5月にリリースされたVisual Studio Code (VS Code) 1.101から、「Custom Chat Modes」という画期的な新機能が利用可能になりました。

この機能により、既存のAsk、Edit、Agentモード以外に、自分だけのオリジナルAIチャットモードを作成し、特定の目的に特化したAI体験を実現できるようになります。

本記事では、Custom Chat Modesの活用法を詳しく解説し、実際に「コードの解説専門AIモード」を作成・活用する方法をご紹介します。

環境

  • オペレーティングシステム: Windows 11
  • エディタ: Visual Studio Code (version 1.101以上)
  • VSCode拡張機能: GitHub Copilot (Business/Pro/Free ※Freeプランは月間制限あり)

Custom Chat Modesとは?

概要

GitHub CopilotのCustom Chat Modesは、2025年5月のVS Code 1.101リリースで導入された新機能です。従来のAsk、Edit、Agentという3つの基本モードに加えて、開発者が独自の指示とツールセットを組み合わせた専用のチャットモードを作成できるようになりました。

この機能はGitHub Copilot のすべてのプラン(Free/Pro/Business)で利用可能です。ただし、Freeプランでは月間のチャットインタラクション数に制限があるため、頻繁にCustom Chat Modesを使用する場合は上位プランの検討をお勧めします。

この機能の最大の特徴は、特定の用途や役割に特化したAIの振る舞いを定義できることです。例えば、プランニング専用モード、レビュー専用モード、初心者向け解説モードなど、あなたのニーズに合わせた多様なAIペルソナを構築することが可能です。

既存のチャットモードとの違い

従来の3つのモードはそれぞれ異なる目的に最適化されています。

  • Askモード: コードベースや技術概念に関する質問回答に最適化
  • Editモード: 複数ファイルにわたるコード編集に最適化
  • Agentモード: 自律的なファイル編集とターミナル操作に最適化

しかし、これらのモードでは対応しきれない特殊なニーズが存在します。例えば以下のような場面です。

  • 新人エンジニア向けの丁寧なコード解説
  • セキュリティ観点でのコードレビュー
  • プロジェクト固有の設計方針に基づく実装計画作成
  • 特定の開発フレームワークに特化した支援

このような場面で、Custom Chat Modesが威力を発揮します。

Custom Chat Modesの作成方法

Custom Chat Modes設定画面

Custom Chat Modesを作成する手順は非常にシンプルです。以下の手順に従って進めてください。

ステップ1: 新しいモードファイルの作成

  1. VS Codeでコマンドパレットを開く(Ctrl+Shift+P
  2. Chat: New Mode File」コマンドを実行
  3. 作成先を選択(ワークスペースまたはユーザープロファイル)
  4. モード名を入力(例:「code-explainer」)

VS Codeが自動的に.github/chatmodes/フォルダ内に.chatmode.mdファイルを生成します。ワークスペース内に作成すれば、チーム全体で共有可能です。ユーザープロファイルに作成すれば、すべてのプロジェクトで再利用できます。

ステップ2: チャットモードファイルの構造理解

生成される.chatmode.mdファイルは、以下の2つの主要部分で構成されています。

Front Matter(メタデータヘッダー)

  • description: モードの説明文(チャット入力欄とドロップダウンメニューに表示)
  • tools: 使用可能なツールやツールセットのリスト
  • model: 使用するAIモデル(省略時は現在選択中のモデルを使用)

本文(チャットモード指示)

  • AIが従うべき具体的なプロンプトやガイドライン
  • 参考となるインストラクションファイルへのMarkdownリンク
  • モード固有の動作や制約事項

ステップ3: モードの切り替え方法

作成したCustom Chat Modesは、以下の手順で簡単に切り替えられます。

  1. Chatビューを開く(Ctrl+Alt+I
  2. チャットモードのドロップダウンリストから任意のCustom Chat Modesを選択

作成したChatmode選択の個所(これが出ていれば成功です)

実践例:コードの解説専門チャットモード作成

ここでは、ITパスポート受験を控えた新卒1年目エンジニア向けの「コード解説専門モード」を実際に作成してみましょう。

このモードの特徴は以下の通りです。

  • IT初心者レベルに合わせた丁寧な説明
  • 例えや比喩を活用したわかりやすい解説
  • 明るい口調と適度な絵文字の使用
  • コード変更は行わず、理解促進に特化
  • 学習定着を図る質問形式の提案

チャットモードファイルの実装

以下が、実際に作成した「コード解説専門モード」のファイル内容です。

※下記コードでは絵文字をカットしています

---
description: 'IT初心者向けコード解説専門モード - 新卒エンジニア・ITパスポート受験者に最適'
tools: ['codebase', 'search', 'fetch']
model: 'GPT-4'
---

# コード解説専門モード

あなたは親しみやすく優秀なプログラミング講師です。ITパスポート受験を控えた新卒1年目エンジニアレベルの学習者に対して、コードの動作や仕組みを丁寧に解説することが役割です。

## 基本方針

### 対象者のレベル設定
- ITパスポート受験予定(基本的なIT知識はある)
- 新卒1年目エンジニア(最低限の開発知識はある)
- コードの詳細な振る舞いは調べながら理解するレベル
- 技術用語の意味や背景知識が不足している可能性がある

### 解説スタイル
1. **明るく親しみやすい口調**
   - 適度に絵文字を使用(ただし過度にならない程度)
   - 丁寧語を基本とし、親近感のある表現を心がける

2. **例えや比喩の積極活用**
   - 日常生活の身近な例で技術概念を説明
   - 建物、料理、交通システムなどの比喩を効果的に使用

3. **段階的な説明**
   - まず全体像を示す
   - 次に各部分の詳細を解説
   - 最後に相互関係を整理

4. **理解度確認の提案**
   - 解説後に理解度を確認する質問を提示
   - 実際に手を動かして確認できる簡単な演習を提案

### 重要な制約事項
- **コード自体の変更・修正は絶対に行わない**
- 解説と理解促進のみに専念する
- バグや改善点を発見しても、解説にとどめる
- 学習者が自分で考える機会を奪わない

## 解説の構成テンプレート

### 1. 概要説明(全体像)
「このコードは◯◯のような仕組みになっています。例えるなら...」

### 2. 重要な概念・用語の解説
「ここで使われている『◯◯』という用語は...」

### 3. 処理の流れ解説
「実際の動作を順番に見ていくと...」

### 4. 重要なポイントの強調
「特に注目すべきは...」

### 5. 理解度確認の提案
「理解を深めるために、次のことを確認してみてください...」

## 使用例

【良い解説例】
「このfor文は、まるで工場のベルトコンベアのようなものです 配列の中身を一つずつ順番に取り出して、同じ処理を繰り返しています。`i`という変数は、今何番目の商品を処理しているかを示す番号札のような役割ですね!」

【避けるべき例】
「ここはバグがあるので修正します。」
「このコードは効率が悪いです。」

学習者の成長と理解を第一に、常に前向きで建設的な解説を心がけてください!

コード解説専門モードファイルの作成

実際の動作確認

作成したモードを使って、実際にサンプルとして用意したタイピングソフトのコードについて質問してみました。

実際のやりとりの例として、「このタイピングソフトのコードについて解説してください」と質問してみます。

コード解説専門モードの利用

AIからの回答を以下に抜粋します。

AIの回答1

AIの回答2

AIの回答3

やや丁寧過ぎるアウトプットかもしれませんが、絵文字の登場頻度や文章のスタイルなどは、後から「コード解説専門モード.md」の内容を変更することにより調節可能です。

Custom Chat Modesの管理と活用のコツ

既存モードの管理方法

作成したCustom Chat Modesは、以下の方法で簡単に管理できます。

  1. Chatビューの「Configure Chat」ボタンをクリック
  2. 「Modes」を選択
  3. 既存のチャットモードのリストから管理したいモードを選択

または、コマンドパレットから「Chat: Configure Chat Modes」コマンドを実行することでも同様の管理画面にアクセスできます。

マウスをモードの上にホバーすると、以下のアクションが利用可能です。

  • コピーまたは移動
  • 名前の編集
  • 削除

効果的なCustom Chat Modes活用のベストプラクティス

プロジェクト固有のモード作成

大規模なプロジェクトでは、そのプロジェクト特有の設計方針や制約に基づいたモードを作成することをお勧めします。例えば以下のようなモードです。

  • 「セキュリティ重視レビューモード」
  • 「パフォーマンス最適化モード」
  • 「アクセシビリティ準拠モード」
チーム共有の活用

ワークスペース内に作成したモードは、チームメンバー全員が利用できます。コードレビューの観点や新人教育の方針を統一するために活用しましょう。

ツールセットの適切な選択

各モードで利用可能なツールを適切に制限することで、AIの動作をより予測可能にできます。例えば、解説専用モードでは編集系ツールを除外し、読み取り専用ツールのみを有効にします。

Custom Chat Modesのファイル管理

デフォルトでは、VS Codeは.github/chatmodesフォルダ内のワークスペース用チャットモードファイルを探します。この場所は、chat.modeFilesLocations設定で変更可能です。

ファイル構成の例です。

プロジェクトルート/
├── .github/
│   └── chatmodes/
│       ├── code-explainer.chatmode.md
│       ├── security-reviewer.chatmode.md
│       └── planning-assistant.chatmode.md
└── src/
    └── (プロジェクトファイル)

応用例とその他の活用場面

プロジェクト計画専用モード

新機能開発やリファクタリングの実装計画生成に特化したモードです。

---
description: '実装計画生成専門モード - 新機能開発とリファクタリング計画'
tools: ['codebase', 'fetch', 'findTestFiles', 'githubRepo', 'search', 'usages']
---

# プランニングモード

あなたはプランニング専門のアーキテクトです。
新機能やリファクタリングの実装計画をMarkdown形式で出力してください。

コードの編集は行わず、以下のセクションを含めた計画を作成してください。

* 概要
* 要件分析
* 実装手順
* テスト戦略
* リスク評価

コードレビュー専用モード

セキュリティやパフォーマンスの観点でコードをレビューするモードです。

---
description: 'セキュリティ・パフォーマンス重視のコードレビューモード'
tools: ['codebase', 'search', 'usages']
---

# セキュリティ・パフォーマンスレビューモード

セキュリティとパフォーマンスの専門家として、コードをレビューしてください。

## チェック項目
1. セキュリティ脆弱性の有無
2. パフォーマンスのボトルネック
3. エラーハンドリングの適切性
4. リソースリークの可能性

コードの修正は提案のみとし、実際の編集は行わないでください。

トラブルシューティング

Custom Chat Modesを使用する際に遭遇する可能性のある問題と解決策をご紹介します。

よくある問題と解決法

問題1: カスタムモードが認識されない
  • VS Codeがバージョン1.101以上であることを確認
  • ファイルが正しい場所(.github/chatmodes/)に配置されているか確認
  • ファイル名が.chatmode.mdで終わっているか確認
問題2: Front Matterの構文エラー
  • YAMLの構文が正しいか確認(インデントとコロンの位置)
  • ツール名の配列形式が正しいか確認
  • 特殊文字が適切にエスケープされているか確認
問題3: 期待通りの動作をしない
  • 指示文が具体的で明確であるか見直し
  • 使用可能なツールが適切に選択されているか確認
  • モデルの制約や限界を考慮した指示になっているか検討

デバッグのコツ

Custom Chat Modesが期待通りに動作しない場合は、以下の手順でデバッグしてください。

  1. シンプルなテストケースで確認: 複雑な指示の前に、基本的な動作を確認
  2. 段階的に機能を追加: 一度にすべての機能を追加せず、一つずつ動作確認
  3. ログの確認: VS Codeの開発者ツールでエラーログを確認
  4. 公式サンプルとの比較: 公式ドキュメントのサンプルと設定を比較

今後の展望と発展可能性

Custom Chat Modesは現在プレビュー段階ですが、今後さらなる機能拡張が予想されます。

期待される機能追加

  • 条件分岐機能: プロジェクトの種類に応じて自動的にモードを切り替え
  • 外部API連携: 外部サービスとの連携によるより高度な機能
  • モード間の連携: 複数のモードを組み合わせたワークフロー
  • 学習機能: ユーザーの使用パターンに基づく自動最適化

コミュニティでの共有

優秀なCustom Chat Modesは、GitHubリポジトリやVS Code拡張機能として共有される可能性があります。

オープンソースプロジェクトでは、プロジェクト固有のモードを公開し、コントリビューターの参加障壁を下げる活用法も考えられます。

まとめ

Custom Chat Modesは、GitHub Copilotの可能性を大幅に拡張する革新的な機能です。

従来の汎用的なAI支援から、特定のニーズに特化したパーソナライズされた開発体験への進化を可能にします。

本記事の重要なポイント

  • VS Code 1.101以降で利用可能な新機能
  • .chatmode.mdファイルで簡単にカスタムモードを作成
  • チーム全体での共有や個人での再利用が可能
  • 特定の目的(教育、レビュー、計画)に特化したAI体験を実現
  • コードの編集ではなく、理解促進に特化したモードも作成可能

今回作成した「コード解説専門モード」のように、学習者のレベルに合わせたカスタマイズにより、より効果的な知識習得が可能になります。特に、新人エンジニアの教育やチーム内の技術力底上げに大きな効果が期待できます。

Custom Chat Modesを活用することで、AIは単なるコード生成ツールから、あなたの開発フローに深く統合された知的パートナーへと進化します。ぜひ、あなたの開発環境やチームのニーズに合わせたオリジナルモードを作成し、より効率的で楽しい開発体験を実現してください。

今後もGitHub Copilotの進化に注目し、新機能を積極的に活用していくことで、さらなる開発効率の向上が期待できるでしょう。Custom Chat Modesは、その第一歩となる重要な機能といえます。

次のステップとして

  • 自分のプロジェクトに適したCustom Chat Modesの作成
  • チームメンバーとのモード共有とフィードバック収集
  • 定期的なモード内容の見直しと改善
  • 新しいツールやMCPサーバーとの組み合わせ実験

ぜひ今すぐVS Codeを開いて、あなただけのCustom Chat Modesを作成してみてください!

執筆担当者プロフィール
前田 将太

前田 将太(日本ビジネスシステムズ株式会社)

BS事業本部 先端技術部に所属。 AI,ComputerVison,VRに興味があります。 前職ではRPAで処理自動化・業務改善を担当していました。

担当記事一覧