1. はじめに
「Issue テンプレートを全リポジトリに適用したい」「Copilot カスタムエージェントを組織で共有したい」——こうしたニーズに応えるのが、GitHub の 組織レベル共有機能 です。.github リポジトリ、.github-private リポジトリ、Organization 設定、各リポジトリの .github/ ディレクトリを組み合わせることで、設定の一元管理が実現します。
本記事を作成した背景は、複数の共有レイヤーが並行して存在し、機能ごとに使い分けが分かりにくいことです。本記事の目的は、それぞれのレイヤーの役割と適用範囲を整理し、チームがどの機能を使うべきか判断できるようにすることです。
2. 全体像
以下の図は、3 つのレイヤーの関係を示しています。
3. レイヤー 1: .github リポジトリ(Organization デフォルトファイル)
Organization 内に .github という名前のリポジトリを作成すると、そこに配置したファイルが組織全体のデフォルトとして機能します(Creating a default community health file - GitHub Docs)。
共有できるファイル
| ファイル | 用途 |
|---|---|
CODE_OF_CONDUCT.md | コミュニティの行動規範 |
CONTRIBUTING.md | 貢献ガイドライン |
SECURITY.md | 脆弱性報告の手順 |
SUPPORT.md | サポート情報 |
FUNDING.yml | スポンサーボタンの表示 |
GOVERNANCE.md | プロジェクトのガバナンス |
| Discussion category forms | ディスカッションカテゴリのテンプレート |
| Issue / PR テンプレート | .github/ISSUE_TEMPLATE/ に配置 |
| ワークフローテンプレート | workflow-templates/ に配置(Team 以上) |
セットアップ手順
- Organization で
.githubという名前のリポジトリを public で作成します - リポジトリのルート、
.github/フォルダ、またはdocs/フォルダに対象ファイルを配置します - 各リポジトリに同名のファイルがなければ、
.githubリポジトリのファイルがデフォルトとして使われます
注意点
.githubリポジトリは public である必要があります(Free / Team プラン)- 個別リポジトリに同じファイルがある場合は、そちらが優先されます
- ライセンスファイルは
.githubリポジトリでは共有できません
4. レイヤー 2: Organization 設定による一括管理
Organization の Settings 画面から、以下の設定を組織全体に適用できます。
Copilot Organization カスタム指示(Public Preview)
Organization オーナーが設定画面から Copilot への指示を追加できます。全メンバーの GitHub.com 上の Copilot Chat・Copilot code review・Copilot cloud agent に反映されます(現時点では GitHub.com のみ)。詳細は Adding organization custom instructions for GitHub Copilot - GitHub Docs を参照してください。
設定手順:
- Organization の Settings → Copilot → Custom instructions を開きます
- テキストボックスに自然言語で指示を記述します
- Save changes をクリックします
# 指示の例
常に日本語で回答してください。
セキュリティに関する質問は #security チャンネルに相談するよう案内してください。
コード生成時は TypeScript を優先してください。
必要プラン: GitHub Copilot Business または GitHub Copilot Enterprise
リポジトリルールセット
ブランチ保護やタグルールを Organization レベルで一括設定できます。Team プラン以上で利用可能です。
5. レイヤー 3: 各リポジトリの .github/ ディレクトリ
プロジェクト固有の設定は、リポジトリ内の .github/ ディレクトリに配置します。
Copilot カスタム指示の種類
| ファイル | スコープ | 用途 |
|---|---|---|
.github/copilot-instructions.md | リポジトリ全体 | プロジェクトの概要・コーディング規約 |
.github/instructions/*.instructions.md | パス指定 | 特定ファイル種別への指示 |
AGENTS.md | Copilot cloud agent・IDE | Copilot cloud agent 向けの指示 |
補足:
AGENTS.mdと同等の役割を持つCLAUDE.md・GEMINI.mdもサポートされています。ただし、これらはリポジトリルートに 1 ファイルのみ配置可能です。 注意: Path-specific 指示は Copilot cloud agent および Copilot code review で使用されます。GitHub.com の Copilot Chat では現時点で未対応です。
パス固有の指示ファイルの例
---
applyTo: "**/*.ts,**/*.tsx"
---
TypeScript では早期リターンを使用してください。
React コンポーネントは関数コンポーネントで記述してください。
6. プラン別の対応状況
7. .github-private リポジトリ(Copilot カスタムエージェントの共有)
Organization または Enterprise 内に .github-private という名前のリポジトリを作成すると、Copilot カスタムエージェントを組織全体で共有できます。これは public の .github リポジトリとは別の、プライベートまたは internal のリポジトリです(Preparing to use custom agents in your organization - GitHub Docs)。
ステータス: Public Preview(本記事執筆時点。最新の提供状況は上記公式ドキュメントで確認してください)
何ができるのか
.github-private リポジトリの agents/ ディレクトリにカスタムエージェントプロファイル(.agent.md)を配置すると、組織内のすべてのリポジトリでそのエージェントを利用できます。テスト専門家、実装プランナーなど、組織標準の AI エージェントを一箇所で管理できます。
セットアップ手順(Organization)
- カスタムエージェントテンプレートリポジトリを使って、Organization 内に
.github-privateという名前のリポジトリを作成します - visibility を選択します
- internal: 組織または Enterprise の全メンバーに読み取り権限を付与
- private: 作成後に手動でアクセス権を付与
agents/ディレクトリにカスタムエージェントプロファイルを配置します
エージェントプロファイルの例
---
name: test-specialist
description: テストカバレッジと品質に特化したテスト専門家エージェント
tools: ["read", "edit", "search"]
---
あなたはテスト専門家です。テストカバレッジの分析、
ユニット・結合・ E2E テストの作成、テスト品質のレビューを行います。
本番コードは変更せず、テストファイルのみを対象とします。
.github と .github-private の違い
| 項目 | .github(public) | .github-private(private / internal) |
|---|---|---|
| 主な用途 | Community Health Files、ワークフローテンプレート | Copilot カスタムエージェント |
| visibility | public(必須) | private または internal |
| 共有範囲 | 組織内の全リポジトリ | 組織または Enterprise 全体 |
| 外部公開 | あり | なし |
Enterprise の場合: Enterprise オーナーは
.github-privateに Enterprise レベルのカスタムエージェントを配置できます。また、ルールセットでエージェントプロファイルの編集権限を Enterprise オーナーのみに制限することも可能です。
8. Tips: Enterprise Cloud の internal visibility
Enterprise Cloud プランでは、.github リポジトリを internal visibility で作成できます。これにより、外部には非公開のまま Enterprise 内のメンバーにデフォルトファイルを共有できます。
社内向けの CONTRIBUTING.md やセキュリティポリシーを外部に見せたくないチームにおすすめです。
9. こんなチームにおすすめ
| チームの状況 | おすすめの方法 |
|---|---|
| OSS プロジェクトの標準化 | .github リポジトリ(public) |
| 社内開発の統一ルール | Organization カスタム指示 + ルールセット |
| AI コーディングの品質統一 | copilot-instructions.md を各リポジトリに配置 |
| 組織標準の AI エージェント共有 | .github-private リポジトリ |
| Enterprise 内のルール共有 | .github リポジトリ(internal) |
10. 注意点・制限事項
.github-privateリポジトリは Copilot カスタムエージェントの共有専用です。Community Health Files やワークフローテンプレートの共有には使えません(それらは.githubリポジトリを使います)- Copilot cloud agent 自体は GitHub Copilot Pro / Pro+ / Business / Enterprise で利用可能ですが、
.github-privateによる Organization / Enterprise 共有にはそれぞれのオーナー権限が必要です - Organization カスタム指示は Public Preview であり、現在は GitHub.com の Copilot Chat・Copilot code review・Copilot cloud agent のみ対応です
- Copilot カスタム指示の優先順位は「Personal > Repository > Organization」です。Repository 内の詳細な優先順位は「Path-specific → Repository-wide → AGENTS.md」の順になります(About customizing GitHub Copilot responses - GitHub Docs)
- Copilot code review では、カスタム指示ファイルの先頭 4,000 文字のみが使用されます。長すぎる指示は Copilot code review に反映されない場合があります(Adding repository custom instructions for GitHub Copilot - GitHub Docs)
- Copilot Organization カスタム指示は GitHub プランではなく Copilot サブスクリプション(GitHub Copilot Business / Enterprise)に紐づく機能です。Free プランの Organization でも GitHub Copilot Business を契約すれば利用できます
11. まとめ
GitHub Organization で設定を共有する主な方法は以下のとおりです。
.githubリポジトリ: テンプレートとガイドラインの組織デフォルト.github-privateリポジトリ: Copilot カスタムエージェントの組織共有- Organization Settings: Copilot 指示やルールセットの一括適用
- 各リポジトリの
.github/: プロジェクト固有の AI 指示
AI エージェントを組織で活用するなら、.github-private リポジトリのセットアップから始めましょう。テンプレートを組織で統一するなら .github リポジトリが最初の一歩です。
12. 参考情報
- Creating a default community health file - GitHub Docs
- Adding organization custom instructions for GitHub Copilot - GitHub Docs
- Adding repository custom instructions for GitHub Copilot - GitHub Docs
- About customizing GitHub Copilot responses - GitHub Docs
- Creating workflow templates for your organization - GitHub Docs
- Creating custom agents for Copilot cloud agent - GitHub Docs
- Preparing to use custom agents in your organization - GitHub Docs
- Preparing to use custom agents in your enterprise - GitHub Docs
この記事の執筆にあたり、AI の支援を受けています。






