エージェント型開発を探求する -

Visual Studio Code での AI のカスタマイズ

Visual Studio Code には、AI にコードベース、コーディング標準、ワークフローを学習させるためのいくつかの方法が用意されています。この記事では、カスタマイズのオプションを紹介し、使い始めをサポートします。

基本概念

さまざまなカスタマイズの種類と、それぞれの使用場面について学びます。

カスタマイズにアクセスするには、チャットビューで チャットの構成 (歯車アイコン) を選択し、チャットカスタマイズエディターを開きます。

Screenshot of the Chat Customizations editor, showing the sidebar with customization categories and the main view listing custom agents.

カスタマイズのシナリオ

以下のセクションでは、一般的なカスタマイズシナリオと、それぞれに使用するオプションについて説明します。

コーディング標準の定義

カスタム指示を使用して、プロジェクト全体に適用されるルールや規約を AI と共有します。常時有効な指示はすべてのリクエストに適用され、ファイルベースの指示は特定のファイルタイプやフォルダーを対象とします。例えば、すべてのファイルで ESLint ルールを強制したり、.tsx ファイルでのみ React パターンを適用したりできます。

タスクとワークフローの自動化

コンポーネントの足場作成やプルリクエストの準備など、頻繁に行う繰り返しタスクのためにプロンプトファイルを作成します。

スクリプトや外部ツールを含むより複雑な多段階ワークフローについては、それらをエージェントスキルとしてパッケージ化します。

AI を専門化する

セキュリティレビュアー、データベース管理者、プランナーなど、特定のペルソナを採用するカスタムエージェントを作成します。各エージェントは独自の動作、利用可能なツール、言語モデルの優先設定を定義します。タスクに応じて異なる言語モデルを選択したり、独自の API キーを持ち込んで追加のモデルにアクセスしたりできます。

プラグインの検出とインストール

エージェントプラグイン(プレビュー)をインストールして、プラグインマーケットプレイスから事前にパッケージ化されたカスタマイズセットを追加します。1 つのプラグインで、スラッシュコマンド、スキル、カスタムエージェント、フック、MCP サーバーを提供できます。

外部ツールとデータの接続

MCP サーバーを追加して、Model Context Protocol を介してデータベース、API、その他のサービスへのアクセスを AI に提供します。フックを使用して、すべてのファイル編集後のフォーマッターの実行やセキュリティポリシーの強制など、主要なライフサイクルポイントでシェルコマンドを実行します。

開始方法

AI のカスタマイズは段階的に実装してください。基本から始めて、必要に応じて追加していきます。実践的なチュートリアルについては、プロジェクト向けに AI をカスタマイズするガイドを参照してください。

  1. プロジェクトの初期化: チャットで /init と入力し、コードベースに合わせたコーディング標準を含む .github/copilot-instructions.md ファイルを生成します。

  2. 対象を絞ったルールの追加: 言語規約やフレームワークパターンなど、コードベースの特定の領域に対してファイルベースの *.instructions.md ファイルを作成します。

  3. 反復的なタスクの自動化: 一般的なワークフロー用のプロンプトファイルを作成し、外部サービスに接続するための MCP サーバーを追加します。

  4. 専門的なワークフローの作成: 特定の役割に応じたカスタムエージェントを作成します。再利用可能な機能をエージェントスキルとしてパッケージ化し、ツール間で共有します。

  5. AI によるカスタマイズの生成: チャットで /create-prompt/create-instruction/create-skill/create-agent、または /create-hook と入力し、AI の支援を受けてカスタマイズファイルを生成します。

親リポジトリの検出

モノレポ構成では、リポジトリのルートではなく、サブフォルダーを VS Code で開く場合があります。デフォルトでは、Visual Studio Code は開いているワークスペースフォルダー内のカスタマイズファイルのみを検出します。 chat.useCustomizationsInParentRepositories Open in VS Code Open in VS Code Insiders 設定を有効にすると、親リポジトリからのカスタマイズも検出されます。

この設定が有効な場合、VS Code は各ワークスペースフォルダーから .git フォルダーが見つかるまでフォルダー階層をさかのぼります。見つかった場合、ワークスペースフォルダーからリポジトリルートまでの(両端を含む)すべてのフォルダーからカスタマイズを収集します。これは、常時有効な指示(copilot-instructions.mdAGENTS.mdCLAUDE.md)、ファイルベースの指示、プロンプトファイル、カスタムエージェント、エージェントスキル、フックなど、すべてのカスタマイズタイプに適用されます。

例えば、次のモノレポ構造を考えてみます。

my-monorepo/              # repo root (has .git folder)
├── .github/
│   ├── copilot-instructions.md
│   ├── instructions/
│   │   └── style.instructions.md
│   ├── prompts/
│   │   └── review.prompt.md
│   └── agents/
│       └── reviewer.agent.md
├── packages/
│   └── frontend/          # opened as workspace folder
│       └── src/

VS Code で packages/frontend/ のみを開いてこの設定を有効にした場合、VS Code は copilot-instructions.mdstyle.instructions.mdreview.prompt.mdreviewer.agent.md といったリポジトリルートにあるカスタマイズファイルを検出します。

親リポジトリ検出の条件

  • ワークスペースフォルダーに .git フォルダーが含まれていないこと(それ自体がリポジトリルートではない)。
  • 親フォルダーに .git フォルダーが含まれていること。
  • 親リポジトリのフォルダーが信頼されていること。ワークスペースを開いた際、VS Code が親フォルダーを信頼するように促します。
注意

chat.useCustomizationsInParentRepositories Open in VS Code Open in VS Code Insiders 設定がデフォルトで無効になっていること。

チャットカスタマイズエディター

注意

チャットカスタマイズエディターは現在プレビュー段階です。

チャットカスタマイズエディターは、すべてのチャットカスタマイズを一元管理するための集中 UI を提供します。エディターは異なるカスタマイズタイプを別々のタブに整理し、構文の強調表示や検証機能を備えた組み込みコードエディターでカスタマイズファイルを編集できます。

対応する Markdown を編集してゼロから新しいカスタマイズを作成したり、AI を使用してプロジェクト固有の初期コンテンツを生成したりできます。

MCP サーバーやエージェントプラグインを追加するには、エディターから直接マーケットプレイスを閲覧し、新しいアイテムをインストールしたり、既存のアイテムを管理したりできます。

Screenshot of the Chat Customizations editor, showing the sidebar with customization categories and the main view listing custom agents.

チャットカスタマイズエディターを開くには、チャットビューで チャットの構成 (歯車アイコン) を選択するか、コマンドパレット (⇧⌘P (Windows, Linux Ctrl+Shift+P)) から Chat: Open Chat Customizations を実行します。

ローカルエージェント、Copilot CLI、Claude エージェントなど、異なるエージェントタイプのカスタマイズを構成できます。エディター上部のドロップダウンからエージェントタイプを選択し、そのエージェントのカスタマイズを表示・管理します。

カスタマイズに関する問題のトラブルシューティング

カスタマイズが適用されない場合や予期しない動作をする場合は、チャットビューの省略記号 (...) メニューを選択し、Show Agent Debug Logs を選択してエージェントの問題をトラブルシューティングします。

© . This site is unofficial and not affiliated with Microsoft.