mcpField
C
code-exemplars-blueprint-generator

code-exemplars-blueprint-generator

github.com/github開発40.5k8.8k 回インストール今日更新
リポジトリ

code-exemplars-blueprint-generator について

GitHub Copilot 向けの設定可能なプロンプトで、コードベースを調べ、代表的なコードパターンをまとめた exemplars.md を生成します。プロジェクト種別、スキャン範囲、分類方法、コードスニペットの設定が可能です。

主な機能

  1. 01プロジェクト種別の自動検出または指定
  2. 02スキャン範囲の選択
  3. 03パターン・層・ファイル別の分類
  4. 04コードスニペットとコメントの有無を設定
  5. 05カテゴリごとの例数制限

活用シーン

  1. 01リポジトリの代表的な実装の文書化
  2. 02開発者による既存パターンの踏襲
  3. 03コードベース内の規約の確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/github/awesome-copilot --skill code-exemplars-blueprint-generator

インストール後、Claude Code で/code-exemplars-blueprint-generatorを入力して読み込まれたか確認します。

詳細

コード例ブループリントジェネレーター

設定変数

${PROJECT_TYPE="Auto-detect|.NET|Java|JavaScript|TypeScript|React|Angular|Python|Other"} ${SCAN_DEPTH="Basic|Standard|Comprehensive"} ${INCLUDE_CODE_SNIPPETS=true|false} ${CATEGORIZATION="Pattern Type|Architecture Layer|File Type"} ${MAX_EXAMPLES_PER_CATEGORY=3} ${INCLUDE_COMMENTS=true|false}

生成されるプロンプト

"このコードベースをスキャンして、高品質で代表的なコード例を特定する exemplars.md ファイルを生成してください。コード例は、一貫性を維持するために役立つよう、私たちのコーディング標準とパターンを示すものである必要があります。以下のアプローチを使用してください:

1. コードベース分析フェーズ
  • ${PROJECT_TYPE == "Auto-detect" ? "ファイル拡張子と設定ファイルをスキャンして、主要なプログラミング言語とフレームワークを自動検出する" : ${PROJECT_TYPE} のコードファイルに焦点を当てる}
  • 高品質な実装、十分なドキュメント、明確な構造を持つファイルを特定する
  • よく使用されるパターン、アーキテクチャコンポーネント、適切に構造化された実装を探す
  • 私たちの技術スタックのベストプラクティスを示すファイルを優先する
  • コードベースに実際に存在するファイルのみを参照する - 仮想的な例は含めない
2. コード例の特定基準
  • 明確な命名規則を備えた、適切に構造化され読みやすいコード
  • 包括的なコメントとドキュメント
  • 適切なエラー処理とバリデーション
  • デザインパターンとアーキテクチャ原則の遵守
  • 関心の分離と単一責任の原則
  • コードスメルを伴わない効率的な実装
  • 私たちの標準的なアプローチを代表するもの
3. 主要なパターンカテゴリ

${PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect" ? `#### .NET のコード例 (検出された場合)

  • ドメインモデル: カプセル化とドメインロジックを適切に実装したエンティティを見つける
  • リポジトリ実装: 私たちのデータアクセスアプローチの例
  • サービス層コンポーネント: 適切に構造化されたビジネスロジックの実装
  • コントローラーパターン: 適切なバリデーションとレスポンスを備えたクリーンな API コントローラー
  • 依存性注入の使用: DI の設定と使用に関する良い例
  • ミドルウェアコンポーネント: カスタムミドルウェアの実装
  • 単体テストパターン: 適切な準備とアサーションを備えた、適切に構造化されたテスト` : ""}

${(PROJECT_TYPE == "JavaScript" || PROJECT_TYPE == "TypeScript" || PROJECT_TYPE == "React" || PROJECT_TYPE == "Angular" || PROJECT_TYPE == "Auto-detect") ? `#### フロントエンドのコード例 (検出された場合)

  • コンポーネント構造: クリーンで適切に構造化されたコンポーネント
  • 状態管理: 状態処理の良い例
  • API 連携: 適切に実装されたサービス呼び出しとデータ処理
  • フォーム処理: バリデーションと送信のパターン
  • ルーティングの実装: ナビゲーションとルート設定
  • UI コンポーネント: 再利用可能で適切に構造化された UI 要素
  • 単体テストの例: コンポーネントとサービスのテスト` : ""}

${PROJECT_TYPE == "Java" || PROJECT_TYPE == "Auto-detect" ? `#### Java のコード例 (検出された場合)

  • エンティティクラス: 適切に設計された JPA エンティティまたはドメインモデル
  • サービス実装: クリーンなサービス層コンポーネント
  • リポジトリパターン: データアクセスの実装
  • コントローラー/リソースクラス: API エンドポイントの実装
  • 設定クラス: アプリケーションの設定
  • 単体テスト: 適切に構造化された JUnit テスト` : ""}

${PROJECT_TYPE == "Python" || PROJECT_TYPE == "Auto-detect" ? `#### Python のコード例 (検出された場合)

  • クラス定義: 適切なドキュメントを備えた、適切に構造化されたクラス
  • API ルート/ビュー: クリーンな API の実装
  • データモデル: ORM モデルの定義
  • サービス関数: ビジネスロジックの実装
  • ユーティリティモジュール: ヘルパー関数とユーティリティ関数
  • テストケース: 適切に構造化された単体テスト` : ""}
4. アーキテクチャレイヤーの実例
  • プレゼンテーション層:

    • ユーザーインターフェースコンポーネント
    • コントローラー/API エンドポイント
    • ビューモデル/DTO
  • ビジネスロジック層:

    • サービスの実装
    • ビジネスロジックコンポーネント
    • ワークフローのオーケストレーション
  • データアクセス層:

    • リポジトリの実装
    • データモデル
    • クエリパターン
  • 横断的関心事:

    • ログの実装
    • エラーハンドリング
    • 認証/認可
    • バリデーション
5. 実例のドキュメント形式

特定した各実例について、以下を記載します:

  • ファイルパス (リポジトリルートからの相対パス)
  • これが実例として優れている理由の簡単な説明
  • これが表すパターンまたはコンポーネントの種類 ${INCLUDE_COMMENTS ? "- 示されている主要な実装の詳細とコーディング原則" : ""} ${INCLUDE_CODE_SNIPPETS ? "- 小さく代表的なコードスニペット (該当する場合)" : ""}

${SCAN_DEPTH == "Comprehensive" ? `### 6. 追加ドキュメント

  • 一貫性パターン: コードベース全体で見られる一貫したパターンに言及します
  • アーキテクチャの所見: コードに明らかなアーキテクチャパターンを記載します
  • 実装の規約: 命名と構造の規約を特定します
  • 避けるべきアンチパターン: コードベースがベストプラクティスから逸脱している領域があれば言及します` : ""}
${SCAN_DEPTH == "Comprehensive" ? "7" : "6"}. 出力形式

exemplars.md を次の内容で作成します:

  1. このドキュメントの目的を説明するはじめに
  2. カテゴリへのリンクを含む目次
  3. ${CATEGORIZATION} に基づく整理されたセクション
  4. カテゴリごとに最大 ${MAX_EXAMPLES_PER_CATEGORY} 件の実例
  5. コード品質を維持するための推奨事項を含むまとめ

このドキュメントは、既存のパターンに沿って新機能を実装するためのガイダンスを必要とする開発者にとって実践的であるべきです。

重要: コードベースに実際に存在するファイルのみを含めてください。すべてのファイルパスが存在することを確認してください。プレースホルダーや仮定の例を含めないでください。 "

期待される出力

このプロンプトを実行すると、GitHub Copilot がコードベースをスキャンし、選択したパラメータに従って整理された、リポジトリ内の高品質なコード例への実際の参照を含む exemplars.md ファイルを生成します。

コメント