VS Code における GitHub Copilot の拡張性
Visual Studio Code には、コード補完や自然言語チャットなど、コーディング体験を向上させる GitHub Copilot を利用した多くの AI 機能が搭載されています。エージェントモード用のツールを提供したり、AI 駆動の機能を VS Code 拡張機能に追加したりするなど、Copilot の組み込み機能をさらに拡張できます。
ユースケースに応じて、VS Code 拡張機能で Copilot を拡張するための次のオプションがあります。
-
エージェントモードツール: ユーザーのプロンプトに基づいて自動的に呼び出されるエージェントモード用のツールを提供するには、Language Model Tool API を使用します。ツールで他の拡張機能 API を使用して、VS Code に深く統合します。
-
MCP ツール: エージェントモードで使用できる外部 MCP ツールを自動的に登録します。MCP ツールは VS Code 拡張機能ホストの外部で実行され、VS Code 拡張機能 API にアクセスできません。
-
チャット参加者: 自然言語を使用してドメイン固有の質問をユーザーができるようにする質問モード用のチャット参加者を作成するには、Chat および Language Model API を使用します。
-
Copilot の LLM を使用する: Language Model API および VS Code 拡張機能 API を使用して、カスタム AI 駆動の機能を拡張機能に組み込み、エディター固有のインタラクションを強化します。
または、追加機能を持つ GitHub アプリとして実装された Copilot 拡張機能を構築することもできます。Copilot 拡張機能は、サポートされているすべての IDE と GitHub で動作しますが、VS Code 固有の機能にはアクセスできません。Copilot 拡張機能の詳細については、GitHub ドキュメントを参照してください。
ユースケース
Copilot の機能を使用して、AI 駆動の機能を拡張機能に統合することにより、VS Code での開発体験を向上させることができます。VS Code 拡張機能で Copilot を使用する方法の例を次に示します。
-
ドキュメントのクエリ: 検索拡張生成 (RAG) を使用して、サードパーティのドキュメントサービスにクエリを実行し、取得した情報に基づいて応答を生成します。
-
AI 支援コーディング: Copilot LLM を使用してエディター注釈を提供し、コーディングの提案を行います。
-
AI 駆動レビュー: Copilot LLM を使用して、セキュリティ脆弱性またはパフォーマンス向上のためにコードをレビューします。
-
データ取得: データベースまたはサードパーティのデータサービスにクエリを実行して、特定のトピックに関する情報を取得します。
-
エンタープライズコーディングアシスタント: エンタープライズのデータに基づき、会社が従う特定のコーディングガイドラインを認識しているチャット応答を取得します。
-
拡張機能を強化する: Language Model API を使用して、既存の VS Code 拡張機能に AI 駆動の機能を追加します。
VS Code で Copilot を拡張する例が Visual Studio Marketplace で既にいくつか利用可能です。
-
エージェントモードツール: Marketplace にアクセスするか、拡張機能ビューで
language-model-tools
タグを検索してください。 -
チャット参加者: Marketplace にアクセスするか、拡張機能ビューで
chat-participant
タグを検索してください。
VS Code での Copilot 拡張機能を使い始める
VS Code 拡張機能で Copilot を拡張を開始するには、次のリソースを参照してください。
-
チャットサンプル: エージェントモードツールとチャット参加者を貢献する VS Code 拡張機能を構築するためのサンプルコード。
-
チュートリアル: AI 駆動のコード注釈: Language Model API を使用して、コードを改善するためのエディターにコード注釈を生成する VS Code 拡張機能を実装するためのステップバイステップガイド。
-
チュートリアル: コードチューターチャット参加者: VS Code のチャットビューで自然言語を使用して技術的なトピックの説明をユーザーが求めることができるコードチューターチャット参加者を実装するためのステップバイステップガイド。
-
拡張機能ガイド: Tools API Chat API および Language Model API の使用方法を学びます。