ワークフローに合わせてチャットをカスタマイズする
Visual Studio Code のチャットは、コーディング習慣やプロジェクト要件に合わせてカスタマイズできます。優先するコンテキスト、ツール、ガイドラインをすべての会話に自動的に適用する永続的な構成を設定できます。これにより、時間を節約し、各チャットリクエストで同じ情報を手動で提供することなく、一貫した応答を保証できます。
カスタマイズオプション
Visual Studio Code のチャットをカスタマイズするには、主に 5 つの方法があります。これらのオプションは独立して機能しますが、より包括的なカスタマイズのために組み合わせることもできます。
カスタム指示
カスタム指示を使用すると、コードの生成、コードレビューの実行、コミットメッセージの生成などのタスクについて、共通のガイドラインまたはルールを Markdown ファイルで定義できます。カスタム指示では、特定のタスクをどのように実行するかを記述します。VS Code はこれらの指示を自動的に適用することも、特定のチャットリクエストに含めるように選択することもできます。
カスタム指示の使用目的
- コーディングの慣行、優先するテクノロジー、またはプロジェクト要件を指定して、生成されるコードが標準に準拠するようにする
- コミットメッセージやプルリクエストのタイトルと説明の構成方法に関するガイドラインを提供する
- セキュリティの脆弱性、パフォーマンスの問題、コーディング標準への準拠などをチェックするなど、コードレビューのルールを設定する
プロンプトファイル
プロンプトファイルを使用すると、一般的で反復可能な開発タスク向けの再利用可能なプロンプトを Markdown ファイルで定義できます。プロンプトファイルは、チャットで直接実行できるスタンドアロンのプロンプトです。タスク固有のコンテキストと、タスクの実行方法に関するガイドラインを含めることができます。プロンプトファイルをカスタム指示と組み合わせて、複雑なタスクの一貫した実行を保証できます。
プロンプトファイルの使用目的
- 新しいコンポーネント、API ルートのスキャフォールディング、テストの生成など、一般的なコーディングタスク向けの再利用可能なプロンプトを作成する
- コード品質、セキュリティの脆弱性、パフォーマンスの問題などをチェックするなど、コードレビューを実行するためのプロンプトを定義する
- 複雑なプロセスやプロジェクト固有のパターンに対する段階的なガイドを作成する
- 実装計画、アーキテクチャ設計、または移行戦略を生成するためのプロンプトを定義する
チャットモード
チャットモードは、データベース管理者、フロントエンド開発、計画など、特定の役割やタスクの専門アシスタントを作成する方法です。チャットモードの Markdown ファイル内で、そのスコープと機能、アクセスできるツール、優先する言語モデルを記述します。
チャットモードの使用目的
- AI がコードベースへの読み取り専用アクセス権を持ち、実装計画のみを生成できる計画用のチャットモードを作成する
- AI が外部リソースにアクセスして新しいテクノロジーを探索したり情報を収集したりできる研究チャットモードを定義する
- AI がフロントエンド開発に関連するコードのみを生成および変更できるフロントエンド開発者チャットモードを作成する
言語モデル
言語モデルを使用すると、特定のタスクに最適化されたさまざまな AI モデルを選択できます。モデルを切り替えて、コード生成、推論、または視覚処理のような特殊なタスクで最高のパフォーマンスを得ることができます。独自の API キーを持ち込んで、より多くのモデルにアクセスしたり、モデルのホスティングをより細かく制御したりできます。
異なる言語モデルの使用目的
- 迅速なコード提案と簡単なリファクタリングタスクには高速モデルを使用する
- 複雑なアーキテクチャ上の決定や詳細なコードレビューには、より高性能なモデルに切り替える
- 実験的なモデルにアクセスしたり、ローカルでホストされているモデルを使用したりするために、独自の API キーを持ち込む
MCP とツール
MCP とツールを使用すると、モデルコンテキストプロトコル (MCP) を介して外部サービスや特殊なツールを接続できます。これにより、チャット機能がコードを超えて拡張され、データベース、API、その他の開発ツールと対話できます。
MCP とツールの使用目的
- 開発環境を離れることなく、データベースツールを接続してデータをクエリおよび分析する
- 外部 API と統合してリアルタイム情報を取得したり、アクションを実行したりする
使用シナリオ
異なるカスタマイズ方法は、異なるシナリオで最適に機能します。次の表は、一般的なユースケースと推奨されるアプローチを示しています。
| ユースケース | アプローチ |
|---|---|
| プロジェクト全体のコーディング標準 | カスタム指示 |
| 言語またはフレームワーク固有のルール | グロブパターンを使用したカスタム指示 |
| 再利用可能な開発タスク | プロンプトファイル |
| 計画モードまたは調査モードでチャットを使用する | カスタムチャットモード |
| 専門的なワークフローを定義する | カスタムチャットモード |
| 複雑な推論と分析 | 言語モデル |
| 独自のモデルを持ち込む | 言語モデル |
| 外部サービスを統合する | MCP とツール |
はじめに
チャットのカスタマイズは、最も簡単なオプションから始めて、必要に応じて徐々に複雑さを加えていくことで、段階的に実装できます。
1. 異なる言語モデルを試す
まず、さまざまな種類の作業でより良い結果を得るために、さまざまな言語モデルを試してみてください。チャットのモデルピッカーを使用してモデルを切り替えます。簡単なタスクにはより高速なモデルを、複雑な推論にはより高性能なモデルを試してください。これには設定は不要で、すぐに結果が得られます。
2. 基本的なガイドラインを設定する
すべてのチャットインタラクションで一貫した結果を得るために、カスタム指示を作成します。コーディング標準と設定を記述した.github/copilot-instructions.mdファイルを作成します。これにより、余分な労力なしにすべてのチャット応答が自動的に改善されます。グロブパターンを使用してコードベースの異なる部分に対して異なる指示ファイルを作成し、特定の言語またはフレームワークをターゲットにします。
3. タスクの自動化を追加する
繰り返しのタスクを特定したら、コンポーネント生成、コードレビュー、ドキュメントタスクなどの一般的なワークフロー用にプロンプトファイルを作成します。これらは時間を節約し、チーム全体で一貫性を確保します。
4. 機能を拡張する
外部サービスを接続したり、特殊な操作を実行したりする必要がある場合は、MCP サーバーとツールを追加して、チャットを基本的なコードアシスタンスを超えて拡張します。
5. 専門的なワークフローを作成する
高度な使用法のために、特定の役割やプロジェクトフェーズに合わせて、特定のツール、指示、コンテキストを組み合わせたカスタムチャットモードを構築します。