AIと作業するときには文脈が重要です。すべてのコードベースには独自の流儀があります。コンポーネントの構造方法、実行すべきスクリプト、さまざまなフレームワークやファイルタイプに適用される規約などです。
Copilot はプロジェクト全体にわたる変更を支援できますが、それらのルールを把握しているときに最も効果を発揮します。その知識の多くはリポジトリ内に置くことができるため、新しいタスクを開始するたびに同じ規準、スクリプト、ワークフローを説明する必要がなく、Copilot が自動的にそれらを取得できます。
初心者向け GitHub Copilot アプリシリーズのこの回では、Copilot がプロジェクトと連携する方法をカスタマイズする4つの方法を見ていきます:
- カスタム指示は、Copilotが従うべき規約を伝えます。
- エージェントスキルは繰り返し可能な手順をパッケージ化します。
- カスタムエージェントは、より大きなタスクに専門化されたガイダンスをもたらします。
- Model Context Protocol (MCP)サーバーはCopilotを外部ツールやデータソースに接続し、Copilotの能力を拡張します。
それでは、それぞれがどのように機能し、また互いにどう連携できるのかを見ていきましょう。
カスタム指示から始める
Copilotにアプリケーションへカスタムページサイズを追加するよう依頼したとします。変更を加えることは作業の一部にすぎません。新しいコードは、チームがすでに使用しているパターンにも従う必要があります。
リポジトリのカスタム指示 Copilotにその基本的な文脈を与えてください。さらに .github/copilot-instructions.md リポジトリ全体に適用されるガイダンス(好みのアーキテクチャ、命名規則、テストや検証に対する期待など)を定義するためのファイル。
内にパス固有の指示ファイルを作成することもできます。 .github/instructions。これらのファイルは applyTo フィールドを使用して、そのガイダンスがいつ関連するのかを Copilot に伝えます。
Copilotが一致するファイルを扱う際には、リポジトリ全体の指示と、より具体的なガイダンスの両方を利用できます。これにより、すべてのファイル形式を同じ型に押し込めることなく、大まかなルールを一箇所にまとめておくことができます。
繰り返し可能な手順をエージェントスキルとしてパッケージ化する
カスタム指示は、多くのタスクに適用されるべき基準に役立ちます。しかし、一部のガイダンスは、品質チェックの実行、リリースの準備、失敗したワークフローのデバッグなど、Copilotが特定の手順を実行する場合にのみ重要となります。
そこが エージェントスキル 組み込まれます。スキルとは、指示を含むフォルダーであり、必要に応じて Copilot が読み込めるスクリプトやその他のリソースを任意で含めることができます。プロジェクトレベルのスキルは、 .github/skills、各スキルがそれぞれ専用のサブフォルダに格納されています。
たとえば、 .github/skills/quality-checks 「フォルダにはaが含まれている可能性があります」 SKILL.md 説明するファイル:
- Copilotがいつそのスキルを使用すべきか。
- プロジェクトのテストとリントを実行するスクリプト。
- 各スクリプトが何をチェックするか。
- よくある失敗のトラブルシューティング方法。
内の説明は、 SKILL.md スキルがいつ適用されるかをCopilotが判断するのに役立ちます。インターフェースを更新した後、Copilotはquality-checksスキルを読み込み、どのコマンドを実行すべきか推測するのではなく、プロジェクトで確立されたテストおよびリントのプロセスに従うことができます。
より広範な専門作業にはカスタムエージェントを使用する
単一の手順を超えるタスクもあります。たとえば、アクセシビリティレビューでは、複数のファイルにわたるコンポーネント、テンプレート、スタイル、インタラクションをCopilotが調査する必要があるかもしれません。
カスタムエージェント を使用すると、このような作業のためにCopilotの特殊なバージョンを作成できます。リポジトリレベルのエージェントプロファイルは .github/agents に配置され、エージェントの目的、指示、ツール、および関連するプロジェクトコンテキストを定義できます。
繰り返し行われる種類の作業が専用の役割や視点から恩恵を受ける場合、特にタスクが複数のファイルにまたがり、複数のツールやコンテキストソースに依存する可能性がある場合に、カスタムエージェントを使用してください。
MCPサーバーでCopilotを外部ツールに接続する
指示、スキル、エージェントは、プロジェクト内でCopilotがどのように作業するかを理解するのに役立ちます。MCPサーバーは、リポジトリを超えてCopilotがアクセスしたり実行したりできる範囲を広げます。
MCPサーバー は、Copilotを外部ツール、データソース、サービスに接続します。ドキュメントサーバーはフレームワークのガイダンスへのアクセスを提供し、Playwrightのようなサーバーはブラウザでアプリケーションを開いて操作できるようにします。
Copilot アプリでは、利用可能な MCP サーバーを閲覧したり、カスタムのサーバーを追加できます。Playwright を設定したら、次のように尋ねることができます: Playwright MCP サーバーを使って機能を手動でテストしてください。
その後、Copilot は Playwright を使ってブラウザでアプリケーションを開き、あなたが操作するのとほぼ同じようにアプリケーションとやり取りできます。これにより、コードが自動チェックを通過するだけでなく、更新されたインターフェースが期待どおりに動作することも検証できるようになります。
適切なカスタマイズの種類を選択する
これらのカスタマイズはそれぞれ異なる問題を解決しますが、組み合わせるとより有用になります:
- カスタム指示 リポジトリ全体または特定のファイルについて、Copilot が従うべき規則を定義します。
- エージェントスキル 関連性がある場合に Copilot が読み込めるように、繰り返し使う手順をパッケージ化します。
- カスタムエージェント より広範なタスクに向けて専門的な知識と指導を提供します。
- MCPサーバー Copilot を外部ツール、サービス、データソースに接続し、Copilot ができることを拡張します。
これを持ってお出かけください
Copilotに有用なプロジェクトの文脈を与えることは、4つの質問から始まります:
- 私はどのプロジェクトの規約を説明し続けているのか?
- 私はどの複数ステップの手順を繰り返せばよいのでしょうか?
- どのような複雑なタスクなら専用のカスタムエージェントの恩恵を受けられるでしょうか?
- Copilotには、外部のどのようなツールやソースが必要ですか?
どこから始めればよいかわかりませんか?コミュニティがすぐに使える instructions、skills、agents などを通じて Awesome Copilot を活用。すでに繰り返し行っているワークフローに対応するものを1つ見つけ、その内容を確認し、あなたのリポジトリのツールや標準に合わせて調整してください。
小さく始めましょう:何度も説明し続けている慣習を1つ選び、それに追加しましょう .github/copilot-instructions.md、Copilotが次のタスクにそれをどのように適用するかを確認してください。
この投稿 初めてのGitHub Copilotアプリ活用:コードベースについてCopilotに教える方法 この記事は最初にに掲載されました。 GitHub 公式ブログ.
