本日はAWESOME-COPILOTの技術調査枠です。
AWESOME-COPILOTのドキュメントを読みながら実際に操作を試して記事に残します。
今回はカスタムインストラクションの一つBest Practices and Guidance for Code Componentsについてです。
Best Practices and Guidance for Code Componentss
Best Practices and Guidance for Code ComponentsはPCFコードコンポーネント開発のベストプラクティスとガイダンスです。
PCFとはMicrosoft Power Platform(Power Apps / Dataverseで使うカスタムUIコンポーネントを作るフレームワークです。
以下のページからBest Practices and Guidance for Code Componentsのインストールボタンをクリックして取得します。
github.com
インストールボタンを押してBest Practices and Guidance for Code Componentsをダウンロードします。
すると.github/instructions配下にインストラクションがインストールされます。

インストールしたインストラクションはCopilotの動作に自動的に適用されます。
インストラクションが読み込まれると、CopilotはPCFコンポーネント開発の実務ベストプラクティスを前提にコード生成・修正・レビューを行います。
具体的には以下のような行動になります。
PCF コンポーネント開発の標準プロセスに従う
Copilot は PCF コンポーネントの開発において以下の全てのベストプラクティスを前提に提案します。
- コンポーネントの設計
- ビルド
- Dataverse へのデプロイ
- 運用
これにより単なるUIコード生成ではなくPower Apps環境で安全に運用できるコンポーネント開発を意識した提案になります。
開発ビルドを本番環境にデプロイしない
Copilotに対して開発ビルドをDataverseにデプロイしないというルールを強制します。
これは以下の理由によるものです。
- サイズが大きい
- パフォーマンスが悪い
- デプロイがブロックされる可能性がある
これによりCopilot は以下の振る舞いを行います。
- 本番用ビルドを推奨
- CI/CD を利用したデプロイを提案
デプロイ自動化(CI/CD)を推奨
PCF開発ではビルド忘れや開発ビルドの混入などの事故が起こりやすいです。
そのためCopilotは以下を利用した自動デプロイパイプラインを提案するようになります。
- Azure DevOps
- GitHub Actions
- Power Platform CLI
これにより「ビルド → テスト → Dataverse デプロイ」を自動化する設計を推奨します。
PCF コンポーネント開発の全体知識を前提にする
PCF開発は次の複数領域の知識が必要とします。
- Power Platform
- TypeScript
- Dataverse
- Power Apps
- DevOps
Copilotは以下を総合的に考慮した提案を行うようになります。
- UIコンポーネント
- データバインディング
- Dataverse統合
- パフォーマンス
PCF コンポーネント設計の品質向上
Copilotは次の点を意識したコード提案をします。
コンポーネント構造
- 再利用可能設計
- シンプルなUI
パフォーマンス
- 不要なレンダリング削減
- 最適化されたビルド
保守性
- 明確な命名
- コメント
- ドキュメント整備
運用とメンテナンスも考慮
Copilotは運用・更新・デプロイまで含めたライフサイクルを扱うように指示されます。
これによりCopilotは以下を考慮した提案を行います。
- バージョン管理
- デプロイ戦略
- パフォーマンス問題