メモ
この記事のこのバージョンでは、GitHub Web サイトのカスタム指示について説明します。 他の環境については上のタブをクリックしてください。
メモ
この記事のこのバージョンでは、VS Code 内のカスタム指示とプロンプト ファイルについて説明します。 他の環境については上のタブをクリックしてください。
メモ
この記事のこのバージョンでは、Visual Studio のカスタム指示について説明します。 他の環境については上のタブをクリックしてください。
メモ
この記事のこのバージョンでは、JetBrains IDE のカスタム指示について説明します。 他の環境については上のタブをクリックしてください。
メモ
この記事のこのバージョンでは、Xcode のカスタム指示について説明します。 他の環境については上のタブをクリックしてください。
メモ
この記事のこのバージョンでは、Eclipse でのカスタム指示について説明します。 他の環境については上のタブをクリックしてください。
GitHub Copilot Chat の回答のカスタマイズについて
GitHub Copilot では、十分なコンテキストを提供すれば、個人の好み、チームの作業方法、使うツール、プロジェクトの詳細などに合わせてカスタマイズされたチャットの回答を得ることができます。 チャットの質問にこのコンテキストの詳細を繰り返し追加するのではなく、この情報を自動的に追加するカスタム指示を作成できます。 追加情報はチャットには表示されませんが、Copilot が使用して、より高品質の応答を生成できます。
カスタム指示の種類
- 個人のカスタム指示は、GitHub Web サイト全体の Copilot Chat とのすべての会話に適用されます。 好みの言語や回答スタイルなどの個別の設定を指定できるため、自分のニーズに合わせた回答を確実に受け取ることができます。
- リポジトリのカスタム指示は、特定のリポジトリのコンテキスト内の会話に適用されます。 プロジェクト固有のコーディング標準、フレームワーク、またはツールを定義するのに役立ちます。 たとえば、リポジトリで TypeScript と特定のライブラリを使うように指定し、すべての共同作成者に対して一貫性のある回答を確保できます。
- Organization のカスタム指示 (パブリック プレビュー) は、GitHub Web サイト上の organization のコンテキスト内の会話に適用されます。 共通言語やセキュリティ ガイドラインなど、organization 全体の設定を適用するのに最適です。 Organization のカスタム指示は、Copilot Enterprise サブスクリプションを持つ organization の organization 所有者のみが設定できます。
リポジトリのカスタム指示について
GitHub.com 上の Copilot Chat に対して、次の 2 種類のリポジトリ カスタム指示を作成できます。
-
Repository-wide custom instructions, which apply to all requests made in the context of a repository.
These are specified in a
copilot-instructions.md
file in the.github
directory of the repository.Repository-wide custom instructions files are used for chat responses, for code review, and also by Copilot コーディング エージェント.
-
Path-specific custom instructions, which apply to requests made in the context of files that match a specified path.
These are specified in one or more
NAME.instructions.md
files within the.github/instructions
directory in the repository.By using path-specific instructions you can avoid overloading your repository-wide instructions with information that only applies to files of certain types, or in certain directories.
メモ
Currently, path-specific custom instructions files are only used by Copilot コード レビュー, Copilot コーディング エージェント, and Copilot Chat in VS Code.
For more information, see GitHub Copilot のリポジトリ カスタム命令を追加する.
GitHub Copilot は、チームの活動方法、使用するツール、またはプロジェクトの詳細に合わせて調整されたチャット応答を提供できます (そのために十分なコンテキストを指定した場合)。 このコンテキストの詳細をチャットの質問に繰り返し追加するのではなく、この情報を自動的に追加するファイルをリポジトリ内に作成できます。
VS Code で GitHub Copilot Chat にコンテキストと指示を提供するには、次の 2 種類のファイルを使用できます。
- リポジトリ カスタム指示を使うと、リポジトリのコンテキストで動作するときに Copilot が考慮する指示と優先設定を指定できます。
- プロンプト ファイル (パブリック プレビュー) を使うと、共通のプロンプト指示と関連するコンテキストを Markdown ファイル (
*.prompt.md
) に保存し、後でそれをチャット プロンプトで再利用できます。 プロンプト ファイルは、VS Code でのみ使用できます。
カスタム命令は、各 AI ワークフローにコードベース全体のコンテキストを追加するのに役立ちますが、プロンプト ファイルを使うと、特定のチャット操作に命令を追加できます。
GitHub Copilot は、チームの活動方法、使用するツール、またはプロジェクトの詳細に合わせて調整されたチャット応答を提供できます (そのために十分なコンテキストを指定した場合)。 このコンテキストの詳細をチャットの質問に繰り返し追加するのではなく、この情報を自動的に追加するカスタム指示ファイルをリポジトリ内に作成できます。 追加情報はチャットには表示されませんが、Copilot が使用して、より高品質の応答を生成できます。
GitHub Copilot は、チームの活動方法、使用するツール、またはプロジェクトの詳細に合わせて調整されたチャット応答を提供できます (そのために十分なコンテキストを指定した場合)。 このコンテキストの詳細をチャットの質問に繰り返し追加するのではなく、この情報を自動的に追加するカスタム指示ファイルをリポジトリ内に作成できます。 追加情報はチャットには表示されませんが、Copilot が使用して、より高品質の応答を生成できます。
GitHub Copilot は、チームの活動方法、使用するツール、またはプロジェクトの詳細に合わせて調整されたチャット応答を提供できます (そのために十分なコンテキストを指定した場合)。 このコンテキストの詳細をチャットの質問に繰り返し追加するのではなく、この情報を自動的に追加するカスタム指示ファイルをリポジトリ内に作成できます。 追加情報はチャットには表示されませんが、Copilot が使用して、より高品質の応答を生成できます。
GitHub Copilot は、チームの活動方法、使用するツール、またはプロジェクトの詳細に合わせて調整されたチャット応答を提供できます (そのために十分なコンテキストを指定した場合)。 このコンテキストの詳細をチャットの質問に繰り返し追加するのではなく、この情報を自動的に追加するカスタム指示ファイルをリポジトリ内に作成できます。 追加情報はチャットには表示されませんが、Copilot が使用して、より高品質の応答を生成できます。
Eclipse で Copilot Chat にコンテキストと指示を提供するために使用できる 2 種類のリポジトリ カスタム指示があります。
- ワークスペース カスタム指示: ワークスペース内のすべてのプロジェクトに適用され、ワークスペース全体の指示と優先設定を 1 つのファイルで指定できます。
- プロジェクト カスタム指示: 特定のプロジェクトに適用されます。
カスタム指示の使用
カスタム指示は自然言語の指示で構成された、短い自己完結型の文章である場合に最も効果的です。 個人、リポジトリ、(使用できる場合) organization のいずれのレベルで指示を追加するかを選ぶときは、指示を適用するスコープを考慮してください。
メモ
- Multiple types of custom instructions can apply to a Copilot Chat conversation. Personal instructions take the highest priority, followed by repository instructions, with organization instructions prioritized last. However, all sets of relevant instructions are still combined and provided to Copilot Chat.
- Whenever possible, you should avoid providing conflicting sets of instructions. If you are concerned about response quality, you can also choose to temporarily disable repository instructions. See GitHub Copilot のリポジトリ カスタム命令を追加する.
カスタム指示の種類ごとに、一般的なユース ケースと例を次に示します。
- 個人のカスタム指示:
- 優先する個別の言語:
Always respond in Portuguese.
- 個別の回答のユーザー設定:
Explain a single concept per line. Be clear and concise.
- 優先する個別の言語:
- リポジトリのカスタム指示:
- コーディング標準:
Use early returns whenever possible.
- フレームワーク:
Use Vue with the PrimeVue library.
またはUse Typescript rather than Javascript.
- コード スタイルの基本設定:
Use camel case for variable names.
- コーディング標準:
- Organization のカスタム指示:
- 特定の質問に対する回答方法説明します:
For questions related to security, use the Security Docs Knowledge Base or advise people to consult with #security on Slack.
- 1 つの言語のみを使う会社の優先する言語:
Always respond in Portuguese.
- Organization 全体の設定:
Do not generate code blocks in responses.
- 特定の質問に対する回答方法説明します:
リポジトリのカスタム指示について
VS Code で使用する 2 種類のリポジトリ カスタム指示を作成できます。
-
Repository-wide custom instructions, which apply to all requests made in the context of a repository.
These are specified in a
copilot-instructions.md
file in the.github
directory of the repository.Repository-wide custom instructions files are used for chat responses, for code review, and also by Copilot コーディング エージェント.
-
Path-specific custom instructions, which apply to requests made in the context of files that match a specified path.
These are specified in one or more
NAME.instructions.md
files within the.github/instructions
directory in the repository.By using path-specific instructions you can avoid overloading your repository-wide instructions with information that only applies to files of certain types, or in certain directories.
メモ
Currently, path-specific custom instructions files are only used by Copilot コード レビュー, Copilot コーディング エージェント, and Copilot Chat in VS Code.
For more information, see GitHub Copilot のリポジトリ カスタム命令を追加する.
プロンプト ファイルについて
メモ
プロンプト ファイルは パブリック プレビュー 段階であり、変更される可能性があります。
プロンプト ファイルを使うと、追加のコンテキストを含む再利用可能なプロンプト命令を作成し、共有することができます。 プロンプト ファイルはワークスペースに格納される Markdown ファイルです。Copilot Chat でプロンプトを記述する既存の形式 (たとえば、Rewrite #file:x.ts
) を模倣したものです。 これにより、自然言語命令、追加のコンテキストだけでなく、依存関係としての他のプロンプト ファイルへのリンクも組み合わせて使用することができます。
一般的な使用用途は次のとおりです。
- コードの生成。 コンポーネント、テスト、または移行 (React フォーム、API モックなど) 用の再利用可能なプロンプトを作成します。
- ドメイン専門知識。 プロンプトを通じて、セキュリティ対策やコンプライアンス チェックなどの専門知識を共有します。
- チーム コラボレーション。 仕様とドキュメントを参照して、パターンとガイドラインを文書化します。
- オンボード。 複雑なプロセスやプロジェクト固有のパターンにはステップバイステップ ガイドを作成します。
ワークスペースには複数のプロンプト ファイルを含めることができます。そのそれぞれに異なる目的のプロンプトを定義します。
例
次の例は、プロンプト ファイルの使用方法を示しています。
-
New React form.prompt.md
- React を使ってフォームを生成する再利用可能なタスクの命令が含まれています。Your goal is to generate a new React form component. Ask for the form name and fields if not provided. Requirements for the form: - Use form design system components: [design-system/Form.md](../docs/design-system/Form.md) - Use `react-hook-form` for form state management: - Always define TypeScript types for your form data - Prefer *uncontrolled* components using register - Use `defaultValues` to prevent unnecessary rerenders - Use `yup` for validation: - Create reusable validation schemas in separate files - Use TypeScript types to ensure type safety - Customize UX-friendly validation rules
-
API security review.prompt.md
- REST API のセキュリティ プラクティスに関する再利用可能な情報が含まれており、REST API のセキュリティ レビューを行うために使用できます。Secure REST API review: - Ensure all endpoints are protected by authentication and authorization - Validate all user inputs and sanitize data - Implement rate limiting and throttling - Implement logging and monitoring for security events …
リポジトリのカスタム指示について
リポジトリのカスタム指示は、リポジトリ内に作成する 1 つのファイル .github/copilot-instructions.md
で構成されます。 ファイルに追加する指示は、チャットの質問を補完するコンテキストや関連情報を追加する、短い自己完結型の文章にすることをお勧めします。
一般的な使用用途は次のとおりです。
- テストの生成。 特定のテスト フレームワークの使用を指定するなど、テストの生成に関する指示を作成します。
- コード レビュー。 コード内の特定のエラーを探すようにレビュー担当者に指示するなど、コードのレビューに関する指示を指定します。
- コミット メッセージの生成。 コミット メッセージを生成する手順 (形式や含める情報の種類など) を記述します。
例
この .github/copilot-instructions.md
ファイルの例には、Copilot 向けの 3 つの指示が含まれています。
We use Bazel for managing our Java dependencies, not Maven, so when talking about Java packages, always give me instructions and code samples that use Bazel.
We always write JavaScript with double quotes and tabs for indentation, so when your responses include JavaScript code, please follow those conventions.
Our team uses Jira for tracking items of work.
Copilot コード レビュー を構成するために使用されるカスタム指示の例については、「GitHub Copilot コード レビューの使用」を参照してください。
リポジトリのカスタム指示について
リポジトリのカスタム指示は、リポジトリ内に作成する 1 つのファイル .github/copilot-instructions.md
で構成されます。 ファイルに追加する指示は、チャットの質問を補完するコンテキストや関連情報を追加する、短い自己完結型の文章にすることをお勧めします。
一般的な使用用途は次のとおりです。
- テストの生成。 特定のテスト フレームワークの使用を指定するなど、テストの生成に関する指示を作成します。
- コード レビュー。 コード内の特定のエラーを探すようにレビュー担当者に指示するなど、コードのレビューに関する指示を指定します。
- コミット メッセージの生成。 コミット メッセージを生成する手順 (形式や含める情報の種類など) を記述します。
例
この .github/copilot-instructions.md
ファイルの例には、Copilot 向けの 3 つの指示が含まれています。
We use Bazel for managing our Java dependencies, not Maven, so when talking about Java packages, always give me instructions and code samples that use Bazel.
We always write JavaScript with double quotes and tabs for indentation, so when your responses include JavaScript code, please follow those conventions.
Our team uses Jira for tracking items of work.
リポジトリのカスタム指示について
リポジトリのカスタム指示は、リポジトリ内に作成する 1 つのファイル .github/copilot-instructions.md
で構成されます。 ファイルに追加する指示は、チャットの質問を補完するコンテキストや関連情報を追加する、短い自己完結型の文章にすることをお勧めします。
一般的な使用用途は次のとおりです。
- テストの生成。 特定のテスト フレームワークの使用を指定するなど、テストの生成に関する指示を作成します。
- コード レビュー。 コード内の特定のエラーを探すようにレビュー担当者に指示するなど、コードのレビューに関する指示を指定します。
- コミット メッセージの生成。 コミット メッセージを生成する手順 (形式や含める情報の種類など) を記述します。
例
この .github/copilot-instructions.md
ファイルの例には、Copilot 向けの 3 つの指示が含まれています。
We use Bazel for managing our Java dependencies, not Maven, so when talking about Java packages, always give me instructions and code samples that use Bazel.
We always write JavaScript with double quotes and tabs for indentation, so when your responses include JavaScript code, please follow those conventions.
Our team uses Jira for tracking items of work.
リポジトリのカスタム指示について
ワークスペース カスタム指示はワークスペース内のすべてのプロジェクトに適用され、ワークスペース全体の指示と優先設定を指定できます。 ワークスペース カスタム指示を使って、Eclipse で Copilot Chat にコンテキストと指示を提供できます。
プロジェクト カスタム指示は、プロジェクトで作成する 1 つのファイル .github/copilot-instructions.md
で構成されます。 ファイルに追加する指示は、チャットの質問を補完するコンテキストや関連情報を追加する、短い自己完結型の文章にすることをお勧めします。
一般的な使用用途は次のとおりです。
- テストの生成。 特定のテスト フレームワークの使用を指定するなど、テストの生成に関する指示を作成します。
- コード レビュー。 コード内の特定のエラーを探すようにレビュー担当者に指示するなど、コードのレビューに関する指示を指定します。
- コミット メッセージの生成。 コミット メッセージを生成する手順 (形式や含める情報の種類など) を記述します。
例
この .github/copilot-instructions.md
ファイルの例には、Copilot 向けの 3 つの指示が含まれています。
We use Bazel for managing our Java dependencies, not Maven, so when talking about Java packages, always give me instructions and code samples that use Bazel.
We always write JavaScript with double quotes and tabs for indentation, so when your responses include JavaScript code, please follow those conventions.
Our team uses Jira for tracking items of work.
効果的なカスタム指示の記述
追加する指示は短く自己完結型の文章にするのが最適で、役に立つ関連情報を Copilot に提供することをお勧めします。
リポジトリのカスタム指示を記述するときは、リポジトリのサイズと複雑さも考慮する必要があります。 次のような指示は、共同作成者が少数の小規模なリポジトリではうまくいく可能性がありますが、大規模で多様なリポジトリでは、問題が発生する可能性があります。
- 応答を作成するときに外部リソースを参照するという要求
- 特定のスタイルで回答するという指示
- 常に特定の詳細レベルで応答するという要求
たとえば、次の指示では意図した結果が得られない場合があります。
Always conform to the coding styles defined in styleguide.md in repo my-org/my-repo when generating code.
Use @terminal when answering questions about Git.
Answer all questions in the style of a friendly colleague, using informal language.
Answer all questions in less than 1000 characters, and words of no more than 12 characters.
次のステップ
- GitHub Copilot 用に個人用カスタム命令を追加する
- GitHub Copilot のリポジトリ カスタム命令を追加する
- GitHub Enterprise Cloud ドキュメントの「GitHub Copilot に対する organization カスタム指示の追加」