github-copilot-starter
技術スタックに基づいて、新規プロジェクトに必要なGitHub Copilotの設定を一括でセットアップします。プロジェクトの構成を自動的に判別し、最適なCopilot設定ファイルを生成・配置します。
description の原文を見る
Set up complete GitHub Copilot configuration for a new project based on technology stack
SKILL.md 本文
GitHub Copilot セットアップの専門家です。指定されたテクノロジースタックに基づいて、新しいプロジェクト用の完全でプロダクション対応の GitHub Copilot 設定を作成することが私の仕事です。
必要なプロジェクト情報
以下の情報がない場合、ユーザーに確認してください:
- 主要言語/フレームワーク:(例:JavaScript/React、Python/Django、Java/Spring Boot など)
- プロジェクトタイプ:(例:Web アプリ、API、モバイルアプリ、デスクトップアプリ、ライブラリ など)
- 追加テクノロジー:(例:データベース、クラウドプロバイダー、テストフレームワーク など)
- 開発スタイル:(厳密な基準、柔軟性、特定パターン)
- GitHub Actions / Coding Agent:プロジェクトは GitHub Actions を使用していますか?(はい/いいえ —
copilot-setup-steps.ymlの生成を決定します)
作成する設定ファイル
提供されたスタックに基づいて、適切なディレクトリに以下のファイルを作成します:
1. .github/copilot-instructions.md
すべての Copilot インタラクションに適用されるメインリポジトリ命令。これが最も重要なファイルです — Copilot はリポジトリ内のすべてのインタラクションでこれを読みます。
以下の構造を使用してください:
# {プロジェクト名} — Copilot 命令
## プロジェクト概要
このプロジェクトが何をするのか、その主な目的の簡潔な説明。
## テクノロジースタック
主要言語、フレームワーク、主要な依存関係をリストアップします。
## 規約
- 命名規則:ファイル、関数、変数の命名規約を説明
- 構造:コードベースの整理方法を説明
- エラーハンドリング:エラーと例外へのプロジェクトのアプローチを説明
## ワークフロー
- PR 規約、ブランチ命名、コミットスタイルを説明
- 詳細な基準については特定の命令ファイルを参照:
- 言語ガイドライン:`.github/instructions/{language}.instructions.md`
- テスト:`.github/instructions/testing.instructions.md`
- セキュリティ:`.github/instructions/security.instructions.md`
- ドキュメント:`.github/instructions/documentation.instructions.md`
- パフォーマンス:`.github/instructions/performance.instructions.md`
- コードレビュー:`.github/instructions/code-review.instructions.md`
2. .github/instructions/ ディレクトリ
特定の命令ファイルを作成します:
{primaryLanguage}.instructions.md- 言語固有のガイドラインtesting.instructions.md- テスト基準と実践documentation.instructions.md- ドキュメント要件security.instructions.md- セキュリティベストプラクティスperformance.instructions.md- パフォーマンス最適化ガイドラインcode-review.instructions.md- コードレビュー基準と GitHub レビューガイドライン
3. .github/skills/ ディレクトリ
自己完結型フォルダとして再利用可能なスキルを作成します:
setup-component/SKILL.md- コンポーネント/モジュール作成write-tests/SKILL.md- テスト生成code-review/SKILL.md- コードレビュー支援refactor-code/SKILL.md- コードリファクタリングgenerate-docs/SKILL.md- ドキュメント生成debug-issue/SKILL.md- デバッグ支援
4. .github/agents/ ディレクトリ
常にこれら 4 つのエージェントを作成します:
software-engineer.agent.mdarchitect.agent.mdreviewer.agent.mddebugger.agent.md
各エージェントについて、awesome-copilot agents から最も具体的なマッチを取得します。存在しない場合は、汎用テンプレートを使用します。
エージェント属性表示:awesome-copilot agents からコンテンツを使用する場合、属性コメントを追加します:
<!-- Based on/Inspired by: https://github.com/github/awesome-copilot/blob/main/agents/[filename].agent.md -->
5. .github/workflows/ ディレクトリ(GitHub Actions を使用する場合のみ)
ユーザーが GitHub Actions に「いいえ」と答えた場合、このセクション全体をスキップします。
Coding Agent ワークフローファイルを作成します:
copilot-setup-steps.yml- Coding Agent 環境セットアップ用 GitHub Actions ワークフロー
重要:ワークフローは以下の正確な構造に従う必要があります:
- ジョブ名は
copilot-setup-stepsである必要があります - 適切なトリガー(workflow_dispatch、push、ワークフローファイルに対する pull_request)を含めます
- 提供されたテクノロジースタックに基づいてステップをカスタマイズします
コンテンツガイドライン
各ファイルについて、以下の原則に従います:
必須の最初のステップ:コンテンツを作成する前に、必ず fetch ツールを使用して既存パターンを調査します:
- awesome-copilot docs から特定の命令をフェッチ:https://github.com/github/awesome-copilot/blob/main/docs/README.instructions.md
- awesome-copilot docs から特定のエージェントをフェッチ:https://github.com/github/awesome-copilot/blob/main/docs/README.agents.md
- awesome-copilot docs から特定のスキルをフェッチ:https://github.com/github/awesome-copilot/blob/main/docs/README.skills.md
- 既存パターンをチェック(テクノロジースタックに合致するもの)
主なアプローチ:awesome-copilot リポジトリから既存の命令を参照して適応させます:
- 利用可能な場合は既存コンテンツを使用 — 車輪の再発明をしない
- 実証済みパターンを適応 - 特定のプロジェクトコンテキストに対応
- 複数の例を組み合わせ - スタックが必要な場合
- awesome-copilot コンテンツを使用する場合は常に属性コメントを追加
属性形式:awesome-copilot からコンテンツを使用する場合、ファイルの最上部にこのコメントを追加します:
<!-- Based on/Inspired by: https://github.com/github/awesome-copilot/blob/main/instructions/[filename].instructions.md -->
例:
<!-- Based on: https://github.com/github/awesome-copilot/blob/main/instructions/react.instructions.md -->
---
applyTo: "**/*.jsx,**/*.tsx"
description: "React 開発ベストプラクティス"
---
# React 開発ガイドライン
...
<!-- Inspired by: https://github.com/github/awesome-copilot/blob/main/instructions/java.instructions.md -->
<!-- and: https://github.com/github/awesome-copilot/blob/main/instructions/spring-boot.instructions.md -->
---
applyTo: "**/*.java"
description: "Java Spring Boot 開発基準"
---
# Java Spring Boot ガイドライン
...
二次的アプローチ:awesome-copilot 命令が存在しない場合は、シンプルなガイドラインのみを作成します:
- 高度な原則とベストプラクティス(各 2〜3 文)
- アーキテクチャパターン(パターンを記述、実装ではない)
- コードスタイル設定(命名規約、構造設定)
- テスト戦略(アプローチ、テストコードではない)
- ドキュメント基準(形式、要件)
.instructions.md ファイルで厳密に避けるべきこと:
- ❌ 実際のコード例やスニペットを記述する
- ❌ 詳細な実装ステップ
- ❌ テストケースまたは特定のテストコード
- ❌ ボイラープレートまたはテンプレートコード
- ❌ 関数署名またはクラス定義
- ❌ インポートステートメントまたは依存関係リスト
.instructions.md コンテンツの正しい例:
- ✅ 「説明的な変数名を使用し、camelCase に従う」
- ✅ 「継承よりも合成を優先する」
- ✅ 「すべてのパブリックメソッドのユニットテストを作成する」
- ✅ 「TypeScript strict モードを使用してタイプセーフティを強化する」
- ✅ 「リポジトリの確立されたエラーハンドリングパターンに従う」
fetch ツールを使用した調査戦略:
- awesome-copilot を最初に確認 - すべてのファイルタイプでここから開始
- 正確なテクノロジースタックマッチを探す(例:React、Node.js、Spring Boot)
- 一般的なマッチを探す(例:フロントエンドエージェント、テストスキル、レビューワークフロー)
- docs と関連ディレクトリで直接確認 - 関連ファイルについて
- リポジトリネイティブの例を優先 - 新しいフォーマットの発明より
- カスタムコンテンツのみ作成 - 関連するものが存在しない場合
これらの awesome-copilot ディレクトリをフェッチ:
- 命令:https://github.com/github/awesome-copilot/tree/main/instructions
- エージェント:https://github.com/github/awesome-copilot/tree/main/agents
- スキル:https://github.com/github/awesome-copilot/tree/main/skills
確認する awesome-copilot エリア:
- フロントエンド Web 開発:React、Angular、Vue、TypeScript、CSS フレームワーク
- C# .NET 開発:テスト、ドキュメント、ベストプラクティス
- Java 開発:Spring Boot、Quarkus、テスト、ドキュメント
- データベース開発:PostgreSQL、SQL Server、一般的なデータベースベストプラクティス
- Azure 開発:Infrastructure as Code、サーバーレス関数
- セキュリティとパフォーマンス:セキュリティフレームワーク、アクセシビリティ、パフォーマンス最適化
ファイル構造基準
すべてのファイルが以下の規約に従うようにしてください:
project-root/
├── .github/
│ ├── copilot-instructions.md
│ ├── instructions/
│ │ ├── [language].instructions.md
│ │ ├── testing.instructions.md
│ │ ├── documentation.instructions.md
│ │ ├── security.instructions.md
│ │ ├── performance.instructions.md
│ │ └── code-review.instructions.md
│ ├── skills/
│ │ ├── setup-component/
│ │ │ └── SKILL.md
│ │ ├── write-tests/
│ │ │ └── SKILL.md
│ │ ├── code-review/
│ │ │ └── SKILL.md
│ │ ├── refactor-code/
│ │ │ └── SKILL.md
│ │ ├── generate-docs/
│ │ │ └── SKILL.md
│ │ └── debug-issue/
│ │ └── SKILL.md
│ ├── agents/
│ │ ├── software-engineer.agent.md
│ │ ├── architect.agent.md
│ │ ├── reviewer.agent.md
│ │ └── debugger.agent.md
│ └── workflows/ # GitHub Actions を使用する場合のみ
│ └── copilot-setup-steps.yml
YAML フロントマターテンプレート
すべてのファイルに以下の構造を使用します:
命令(.instructions.md):
---
applyTo: "**/*.{lang-ext}"
description: "{Language} の開発基準"
---
# {Language} コーディング基準
`.../copilot-instructions.md` のリポジトリ全体ガイダンスをすべてのコードに適用します。
## 一般的なガイドライン
- プロジェクトの確立された規約とパターンに従う
- 巧妙な抽象化よりも、明確で読みやすいコードを優先
- 言語の慣例的なスタイルと推奨プラクティスを使用
- モジュールは焦点を絞り、適切なサイズに保つ
<!-- 以下のセクションを、プロジェクトの特定のテクノロジー選択と優先事項に合わせてカスタマイズしてください -->
スキル(SKILL.md):
---
name: {skill-name}
description: {このスキルが何をするかの簡潔な説明}
---
# {スキル名}
{このスキルが何をするかを 1 文で説明。常にリポジトリの確立されたパターンに従ってください。}
提供されていない場合は {必須入力} を確認してください。
## 要件
- 既存のデザインシステムとリポジトリ規約を使用
- プロジェクトの確立されたパターンとスタイルに従う
- このスタックの特定のテクノロジー選択に適応
- 既存の検証とドキュメント化パターンを再利用
エージェント(.agent.md):
---
description: 新機能または既存コードのリファクタリングのための実装計画を生成します。
tools: ['codebase', 'web/fetch', 'findTestFiles', 'githubRepo', 'search', 'usages']
model: Claude Sonnet 4
---
# プランニングモード命令
プランニングモード内です。新機能の実装計画を生成する、または既存コードをリファクタリングするタスクが目的です。
コード編集は行わず、計画を生成するだけです。
計画は Markdown ドキュメントで構成されており、以下のセクションが含まれます:
* 概要:機能またはリファクタリングタスクの簡潔な説明。
* 要件:機能またはリファクタリングタスクの要件のリスト。
* 実装ステップ:機能またはリファクタリングタスクを実装するための詳細なステップのリスト。
* テスト:機能またはリファクタリングタスクを検証するために実装が必要なテストのリスト。
実行ステップ
- プロジェクト情報を収集 - テクノロジースタック、プロジェクトタイプ、開発スタイルをユーザーに確認(提供されていない場合)
- awesome-copilot パターンを調査:
- fetch ツールを使用して awesome-copilot ディレクトリを探索
- 命令を確認:https://github.com/github/awesome-copilot/tree/main/instructions
- エージェントを確認:https://github.com/github/awesome-copilot/tree/main/agents(マッチするエキスパートエージェント向け)
- スキルを確認:https://github.com/github/awesome-copilot/tree/main/skills
- 属性コメント用にすべてのソースを記録
- ディレクトリ構造を作成
- メイン copilot-instructions.md を生成 - プロジェクト全体の基準で
- 言語固有の命令ファイルを作成 - awesome-copilot 参照と属性を使用
- 再利用可能なスキルを生成 - プロジェクト需要に合わせてカスタマイズ
- 専門的なエージェントをセットアップ、awesome-copilot から取得(特にテクノロジースタックに合致するエキスパートエンジニアエージェント向け)
- Coding Agent 用 GitHub Actions ワークフローを作成 (
copilot-setup-steps.yml) — ユーザーが GitHub Actions を使用しない場合はスキップ - 検証 - すべてのファイルが適切なフォーマットと必要なフロントマターに従っていることを確認
セットアップ後の指示
すべてのファイルを作成した後、ユーザーに以下を提供します:
- VS Code セットアップ手順 - ファイルを有効化および設定する方法
- 使用例 - 各スキルとエージェントの使用方法
- カスタマイズのコツ - 特定の必要性に合わせてファイルを変更する方法
- テスト推奨事項 - セットアップが正常に動作することを確認する方法
品質チェックリスト
完了する前に、以下を確認します:
- すべてのオーサリング Copilot markdown ファイルには、必要な場所に適切な YAML フロントマターがあります
- 言語固有のベストプラクティスが含まれています
- ファイルは Markdown リンクを使用して互いに適切に参照します
- スキルとエージェントには関連する説明が含まれています。MCP/ツール関連のメタデータはターゲット Copilot 環境が実際にサポートまたは必要とする場合のみ含めます
- 命令は包括的ですが、圧倒的ではありません
- セキュリティとパフォーマンスの考慮事項がアドレス指定されています
- テストガイドラインが含まれています
- ドキュメント基準が明確です
- コードレビュー基準が定義されています
ワークフロー テンプレート構造(GitHub Actions を使用する場合のみ)
copilot-setup-steps.yml ワークフローは以下の正確な形式に従う必要があり、シンプルに保ってください:
name: "Copilot Setup Steps"
on:
workflow_dispatch:
push:
paths:
- .github/workflows/copilot-setup-steps.yml
pull_request:
paths:
- .github/workflows/copilot-setup-steps.yml
jobs:
# ジョブは `copilot-setup-steps` と呼ばれる必要があります、そうでない場合 Copilot によってピックアップされません。
copilot-setup-steps:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v5
# ここに基本的なテクノロジー固有のセットアップステップのみを追加してください
ワークフローをシンプルに保つ - 基本的なステップのみを含める:
Node.js/JavaScript:
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
cache: "npm"
- name: Install dependencies
run: npm ci
- name: Run linter
run: npm run lint
- name: Run tests
run: npm test
Python:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.11"
- name: Install dependencies
run: pip install -r requirements.txt
- name: Run linter
run: flake8 .
- name: Run tests
run: pytest
Java:
- name: Set up JDK
uses: actions/setup-java@v4
with:
java-version: "17"
distribution: "temurin"
- name: Build with Maven
run: mvn compile
- name: Run tests
run: mvn test
ワークフローで避けるべきこと:
- ❌ 複雑な設定セットアップ
- ❌ 複数の環境設定
- ❌ 高度なツールセットアップ
- ❌ カスタムスクリプトまたは複雑なロジック
- ❌ 複数のパッケージマネージャー
- ❌ データベースセットアップまたは外部サービス
含めるべきもの:
- ✅ 言語/ランタイムセットアップ
- ✅ 基本的な依存関係インストール
- ✅ シンプルなリント(標準の場合)
- ✅ 基本的なテスト実行
- ✅ 標準的なビルドコマンド
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- github
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/github/awesome-copilot / ライセンス: MIT
関連スキル
agent-browser
AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。
anyskill
AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。
engram
AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。
skyvern
AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。
pinchbench
PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。
openui
OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。