カスタム指示でルールを伝える(copilot-instructions.md)

この記事でわかること
- カスタム指示のファイルの種類と置き場所
- copilot-instructions.md の作り方と書き方の例
- 指示が効いているかを確かめる方法
確認した環境: GitHub Copilot の公式ドキュメント / VS Code の安定版 1.141.0 / 2026年10月11日に確認
Copilot に「説明は日本語で」「ライブラリは足さないで」のようなルールを毎回書くのは手間です。カスタム指示のファイルにルールを書いておくと、そのルールが Copilot に渡されます。この記事では、リポジトリ全体に効く .github/copilot-instructions.md を中心に、作り方と確かめ方を説明します。
カスタム指示の種類
リポジトリ(コードと変更の記録をまとめた置き場所)に置くファイルのほか、自分用・組織用の指示があります。
| カスタム指示の種類 | 置き場所 | 効く範囲 |
|---|---|---|
| リポジトリ全体 | .github/copilot-instructions.md |
そのリポジトリ |
| パス別 | .github/instructions/ の中の、名前が .instructions.md で終わるファイル |
applyTo で指定したファイル |
| エージェント用 | AGENTS.md・CLAUDE.md・GEMINI.md |
機能によって、読むかどうかが違う |
| 個人 | GitHub.com の Copilot Chat の画面(プロフィール画像 → Personal instructions)など | 自分だけ |
| 組織 | 組織のオーナーが設定する(Business・Enterprise) | GitHub.com のチャット・コードレビュー・cloud agent |

VS Code で Copilot を使う場合、公式のおすすめは .github/copilot-instructions.md か AGENTS.md です。対象のファイルを絞りたいときは、.github/instructions/ の .instructions.md を使います。
自分用の指示の置き場所
自分用の指示は、使う場所で置き場所が違います。
- GitHub.com: Copilot Chat の画面で、プロフィール画像 → Personal instructions。GitHub.com のチャットにだけ効きます。
- Copilot CLI:
~/.copilot/copilot-instructions.md、または~/.copilot/instructions/の中の.instructions.md。 - VS Code(Copilot Agent Host):
~/.copilot/copilot-instructions.md、~/.copilot/instructions。 - JetBrains の IDE のチャットにも、自分用の指示があります。
リポジトリ全体の指示を作る
いちばん基本になるのが、リポジトリ全体に効く .github/copilot-instructions.md です。
-
.githubフォルダを作るリポジトリのいちばん上のフォルダに、
.githubという名前のフォルダを作ります。すでにあれば、それを使います。 -
copilot-instructions.mdを作る.githubの中に、copilot-instructions.mdという名前のファイルを作ります。 -
ルールを書いて保存する
Markdown(見出しや箇条書きを記号で書く書き方)で、守ってほしいことを書きます。書き方は、次の「書き方の例」を見てください。
VS Code の画面からも作れます。
- チャットで
/initと入力して送ると、プロジェクトを調べて、最初のカスタム指示を作ります。できた中身は、読んで確かめてから使います。 - チャットビューの歯車(Configure Chat)か、コマンドパレットの「Chat: Open Customizations」から Instructions → New で作れます。コマンド「Chat: New Instructions File」もあります。
書き方の例
公式ドキュメントは、次のような書き方をすすめています。
- 短く、1 つの文に 1 つの指示を書く。
- 理由も書く。
- よい例と、よくない例のコードを見せる。
- リンター(書き方を自動で確かめる道具)で済む決まりは書かない。
次は、ブラウザで動くやることリストのリポジトリを想定して、編集部が作った例です。
## このリポジトリについて
ブラウザで動くやることリストです。
index.html・app.js・style.css の 3 つのファイルでできています。
## 守ってほしいこと
- 説明とコメントは日本語で書いてください。
- ライブラリは追加しないでください。
index.html を開くだけで動くようにしたいからです。
- 入力された文字は textContent で表示してください。
innerHTML に入れると、入力が HTML として扱われるからです。
- よい例: `label.textContent = todo.text;`
- よくない例: `label.innerHTML = todo.text;`
決まったファイルにだけ効かせる(.instructions.md)
.github/instructions/ の中に、名前が .instructions.md で終わるファイル(例: js.instructions.md)を作ると、決まったファイルを作ったり変えたりするときにだけ使う指示を書けます。対象は、ファイルの先頭の frontmatter(--- で囲んで書く設定)で決めます。
---
name: "JavaScript のルール"
description: "JavaScript のファイルを書くときのルール"
applyTo: "**/*.js"
---
- 変数は const で宣言し、値を変えるときだけ let を使ってください。
name: 表示される名前です。description: どんな作業のための指示かを書きます。必要なときに読み込むのに使われます。applyTo: 対象のファイルを、glob という書き方で指定します。作ったり変えたりするファイルが一致すると、自動で付きます。
**/*.js は「どのフォルダにある .js のファイルも」という意味です。description と applyTo のどちらも書かないと自動では付かないので、チャットで手で添付します。
指示が重なったときの優先順位
優先順位は、個人 > リポジトリ(パス別 > リポジトリ全体 > エージェント用)> 組織 です。ただし、当てはまる指示はすべて Copilot に渡されます。ファイルどうしで食い違うことを書かないようにします。

機能ごとに読む指示
どの指示を読むかは、Copilot の機能によって違います(GitHub Docs の対応表から抜き出したもの)。
| 機能 | 読む指示 |
|---|---|
| VS Code のチャット | リポジトリ全体・パス別・AGENTS.md |
| VS Code のコードレビュー | リポジトリ全体だけ |
| cloud agent | リポジトリ全体・パス別・AGENTS.md・CLAUDE.md・GEMINI.md(GitHub.com では組織の指示も) |
| GitHub.com のコードレビュー | リポジトリ全体・パス別・AGENTS.md・CLAUDE.md・GEMINI.md・REVIEW.md・組織の指示 |
| Copilot CLI | リポジトリ全体・パス別・エージェント用・個人(全部を合わせて使う) |
| コードの補完(書いている途中の提案) | カスタム指示は使われない |
- VS Code の設定
github.copilot.chat.codeGeneration.useInstructionFiles(指示のファイルを使う)とchat.useAgentsMdFile(AGENTS.mdを使う)は、どちらも既定で true です。フォルダの中に置いたAGENTS.mdを使うchat.useNestedAgentsMdFilesは、既定でオフです。 - Session Target を Local にしたときのエージェントは、
CLAUDE.mdなども読めます。 - Copilot のコードレビューは、プルリクエストの head ブランチ(変更する側)にある指示を読みます。
指示が効いているかを確かめる
応答の上の References(「Used n references」と出ているところ)を開くと、その応答で使われたファイルが並びます。ここに指示のファイルがあれば、指示が読み込まれています。

プロンプトファイルについて
プロンプトファイル(.prompt.md)は、VS Code では非推奨になりつつあります
- プロンプトファイルは、よく使う依頼を
.prompt.mdのファイルに書いておき、チャットで/ファイル名として呼ぶ仕組みです。既定の置き場所は.github/promptsです。 - VS Code の公式ドキュメントでは、Agent Host のセッションでは非推奨で、読み込まれません。Local のエージェントでは今は動きますが、Local のエージェントは将来の版で取り除かれる予定です。今あるものは、エージェントスキル(
.github/skills/名前/SKILL.md。/名前で呼べる)に移すよう案内されています。 - GitHub Docs では、まだ public preview(公開の試用版)として、VS Code・Visual Studio・JetBrains で使えると書かれています。2 つの公式の書き方が揃っていません。
次の記事では、GitHub の Issue を Copilot に任せる cloud agent と、コードレビューを説明します。どちらも、ここで作ったカスタム指示を読みます。
参考にした公式の情報
- GitHub Docs「About customizing GitHub Copilot responses」
- GitHub Docs「Support for different types of custom instructions」
- GitHub Docs「Adding repository custom instructions for GitHub Copilot」
- GitHub Docs「Adding repository custom instructions for GitHub Copilot in your IDE」
- Visual Studio Code ドキュメント「Use custom instructions in VS Code」
- Visual Studio Code ドキュメント「Use prompt files in VS Code」
- Visual Studio Code ドキュメント「AI settings reference」
- Claude Code ドキュメント「How Claude remembers your project」
- Codex ドキュメント(AGENTS.md)
この記事は、ハック!でAI編集部が AI を使って執筆しました。画面の画像は、編集部の検証環境で実際に操作して撮影したものです(引用の画像は出典を記載しています)。内容の誤りはお問い合わせからお知らせください。
連載
GitHub Copilot 入門全 7 回の目次
- 1GitHub Copilot とは? プランと料金・できること
- 2VS Code で GitHub Copilot を使い始める
- 3コードの補完を使いこなす(Tab・Esc・次の候補)
- 4Copilot Chat の使い方(チャット・インラインチャット・# と @)
- 5Copilot のエージェントモードとプランモードで直してもらう
- 6カスタム指示でルールを伝える(copilot-instructions.md)(この記事)
- 7Issue を Copilot に任せる(cloud agent)とコードレビュー