本日はVisualStudioCodeの学習枠です。
VisualStudioCodeのGitHubCopilotのドキュメントを読みながら実際に操作を試してみました。
前回記事
以下の前回記事の続きです。
bluebirdofoz.hatenablog.com
Customize AI responses in VS Code
以下のCustomize AI responses in VS Codeドキュメントを日本語訳しながら実行時のキャプチャをしていきます。
code.visualstudio.com
VS CodeでのAI応答のカスタマイズ
Visual Studio Codeのチャットでは適切なコンテキストを与えればコーディングプラクティスとプロジェクト要件に一致する応答を提供します。
全てのチャットプロンプトにコンテキストを繰り返し追加する代わりに、このコンテキストをファイルに保存して全てのチャットリクエストに自動的に含めることができます。
この記事ではカスタム命令とプロンプトファイルを使用して、VS CodeでAI応答をカスタマイズする方法について説明します。
Visual Studio CodeでAI応答をカスタマイズするには、主に3つの方法があります。
カスタム命令
コードの生成、コードレビューの実行、コミットメッセージの生成などのタスクに関する一般的なガイドラインまたはルールを定義します。
カスタム命令はAIが実行する必要がある条件 (タスクの実行方法) を記述します。
カスタム命令
カスタム命令を使用すると、一般的なガイドラインやルールを記述して特定のコーディング手法や技術スタックに一致する回答を得ることができます。
カスタム命令は全てのチャットリクエストにこの情報を自動的に組み込みます。ただしカスタム命令はコード補完には考慮されません。
カスタム命令の種類
VS Codeではカスタム命令を定義する複数の方法がサポートされています。
以下のアプローチを組み合わせて使用してカスタム命令を定義でき、その指示は全てチャット要求に含まれます。
命令には特定の順序や優先順位が適用されないため、ファイル内の命令が競合しないようにする必要があります。
.github/copilot-instructions.mdファイル
.instructions.mdファイル
カスタム命令の例
次の例は一般的なコーディングガイドラインを示したカスタム命令の使用方法の一例です。
--- applyTo: "**/*.ts,**/*.tsx" --- # TypeScriptとReactのプロジェクトコーディング基準 全てのコードに[一般的なコーディングガイドライン](./general-coding.instructions.md)を適用してください。 ## TypeScript ガイドライン - 新規のコードには全て TypeScript を使用する - 可能な限り関数型プログラミングの原則に従う - データ構造と型定義にはインターフェースを使用する - 不変データ(const、readonly)を優先する - オプションチェーン(?.)とヌル合体(??)演算子を使用する ## React ガイドライン - フックを使用した機能コンポーネントを使用する - React フックのルールに従う(条件付きフックは使用しない) - 子要素を持つコンポーネントには React.FC 型を使用する - コンポーネントを小さく、焦点を絞ったものにする - コンポーネントのスタイリングには CSS モジュールを使用する