📚
GitHub Copilot の指示書が複数ファイル対応に!ルールを用途別に整理できる新機能
GitHub Copilot の指示がもっと柔軟に!VSCode v1.100.0 の新機能
GitHub Copilot にカスタム指示を与える .github/copilot-instructions.md
。
これまで、この指示書は1ファイルのみ対応で、すべてのルールやガイドラインを1つに詰め込む必要がありました。
そのため、以下のような課題がありました。
- 内容が肥大化して読みにくい
- 技術スタックごとのルールを分けづらい
- チームでの管理・メンテが大変
複数ファイルで指示を管理できるように
VSCode v1.100 のリリースにより、.github/instructions/*.instructions.md
にファイルを分割して配置できるようになりました。
これにより、Copilot のカスタマイズがより柔軟になりました!
.clinerules
など一部のツールでは以前から使われていた構成法ですが、Copilot にもようやく導入された形です。
詳しい設定方法や仕様は公式ドキュメントをご参照ください。
ディレクトリ構成例
以下のように用途別にファイルを作成できます。
.github/
instructions/
general.instructions.md
react.instructions.md
testing.instructions.md
.instructions.md
ファイルの書き方
基本的な書式は以下の通りです。
---
applyTo: '**'
---
GitHub Copilot に適用したい指示をここに記載します。
applyTo の役割
- applyTo は Front Matter で、この指示をどのファイルに適用するかを指定できる
- glob パターンが使える
具体的な例
全般的なコーティングルール
.github/instructions/general.instructions.md
---
applyTo: "**"
---
- 変数名や関数名は意味のある名前を使ってください。
- コメントは簡潔かつ具体的に書いてください。
- マジックナンバーは避け、定数として定義してください。
- コードの可読性を重視してください。
React コンポーネント
.github/instructions/react.instructions.md
---
applyTo: "src/components/**/*.tsx"
---
- クラスコンポーネントではなく、関数コンポーネントとフックを使ってください。
- props は TypeScript の interface または type で定義してください。
- スタイリングには styled-components を使用してください。
- JSX 内ではロジックを複雑にしすぎず、必要であれば関数に切り出してください。
テスト
.github/instructions/react.instructions.md
---
applyTo: "src/**/*.test.tsx,src/**/*.spec.tsx,src/**/*.test.ts,src/**/*.spec.ts"
---
- テストは `@testing-library/react` を使って記述してください。
- 外部モジュールは `vi.mock` を使ってモック化してください。
- 実装ではなく、ユーザーの操作や見た目の振る舞いをテストしてください。
- describe / it ブロックの説明は何をテストしているか明確に記述してください。
まとめ
- VSCode v1.100.0 以降、Copilot の指示書が複数ファイルで管理できるようになった!
- 用途別・対象ファイル別に指示を分けられることで、柔軟性・可読性・メンテナンス性が大幅向上!
- チーム開発や大型プロジェクトでも、Copilot の精度がさらに引き出せる!
AI アシスタントを活かすには「コンテキスト」が命。
この機能を使えば、Copilot により明確で的確なガイドラインを渡せるようになります。
ぜひ活用して、あなたの Copilot を真の相棒に育てていきましょう!
Discussion