ナレッジベースとカスタマイズ(Enterprise)
16.1 Copilot ナレッジベースの作成と管理
Section titled “16.1 Copilot ナレッジベースの作成と管理”ナレッジベースとは
Section titled “ナレッジベースとは”ナレッジベース(Knowledge Base)は、Copilot Enterpriseプラン限定の機能であり、組織のドキュメントやリポジトリからコンテキストを取り込んで、Copilot Chatの応答品質を向上させる。
Copilotが組織固有の用語、アーキテクチャ、ベストプラクティスを理解した上で回答できるようになる。
flowchart TD
A["`組織のリポジトリ
ソースコード
ドキュメント`"] --> B["`ナレッジベース
コードベースインデックス
ドキュメントの取り込み`"]
B --> C["`Copilot Chat
組織固有のコンテキストを
踏まえた回答`"]
ナレッジベースの効果
Section titled “ナレッジベースの効果”- オンボーディングの加速: 新規メンバーが「このプロジェクトのAPI認証の仕組みは?」と質問すると、実際のコードベースとドキュメントに基づいた回答が得られる
- 一貫性のある回答: チーム全員が同じナレッジベースを参照するため、Copilotの回答が組織の実情と整合する
- 暗黙知の形式化: コードの背景や設計意図がナレッジベースを通じてチーム全体に共有される
管理上の考慮事項
Section titled “管理上の考慮事項”- ナレッジベースに含めるリポジトリは、管理者が明示的に指定する
- 機密性の高いリポジトリをナレッジベースに含めるかどうかは、情報セキュリティポリシーに基づいて判断する
- ナレッジベースの内容は定期的に更新され、リポジトリの最新状態が反映される
16.2 Copilot Extensions のインストールと権限管理
Section titled “16.2 Copilot Extensions のインストールと権限管理”Copilot Extensionsの概要
Section titled “Copilot Extensionsの概要”Copilot Extensionsは、サードパーティのツールやサービスをCopilot Chatに統合する拡張機能である。
たとえば、Sentry(エラー監視)、Linear(プロジェクト管理)、データベースクライアントなどをCopilot Chat内から直接操作できるようになる。
Organization管理者の責任
Section titled “Organization管理者の責任”Extensionsの導入は便利な反面、セキュリティリスクを伴う。
管理者として以下のステップを踏むことが重要である。
flowchart TD
A["`ステップ1
利用ポリシーの設定
Extensions有効/無効`"] --> B["`ステップ2
Extensionのインストール
Organization設定から実施`"]
B --> C["`ステップ3
権限の確認
各Extensionの権限レビュー`"]
C --> D{"`権限に問題?`"}
D -->|Yes| E["`Extensionの一時停止
またはアンインストール`"]
D -->|No| F["`ステップ4
継続的なモニタリング
監査ログで利用状況確認`"]
Extension の一時停止とアンインストール
Section titled “Extension の一時停止とアンインストール”インストール済みのExtensionに対して、以下の操作が可能である。
- 一時停止(Suspend): Extensionのアクセスを無期限に停止する。
Extensionはインストールされたままだが、機能しない状態になる - アンインストール: Extensionを完全に削除する
16.3 Copilot Spacesによるコンテキスト共有
Section titled “16.3 Copilot Spacesによるコンテキスト共有”Copilot Spacesとは
Section titled “Copilot Spacesとは”Copilot Spacesは、コード、ドキュメント、仕様書などの関連コンテンツを1つのスペースに整理・集約し、Copilotの応答に適切なコンテキストを与える機能である。
プロジェクト固有のコンテキスト: 特定の機能開発に関連するソースコード、設計書、API仕様を1つのSpaceにまとめ、チーム全員がCopilotに同じコンテキストで質問できるようにする。
オンボーディング: 新規メンバー向けに、プロジェクトの全体像を把握するために必要なファイルを集約したSpaceを用意する。
レビュー: 大規模なPRに関連するコンテキスト(変更背景、設計ドキュメント、関連Issue)をSpaceにまとめ、レビュアーの負担を軽減する。
16.4 組織横断でのカスタム指示の標準化
Section titled “16.4 組織横断でのカスタム指示の標準化”組織レベルのカスタム指示
Section titled “組織レベルのカスタム指示”GitHub.com上のCopilot Chatでは、Organizationレベルでカスタム指示を設定できる。
これにより、組織の全メンバーに共通のコーディング規約やベストプラクティスが自動適用される。
カスタム指示の標準化戦略
Section titled “カスタム指示の標準化戦略”複数のリポジトリ・チームにまたがるカスタム指示の一貫性を確保するために、以下のアプローチが有効である。
flowchart TD
A["`組織共通の指示
Organizationレベルで設定
全リポジトリに適用`"] --> D["`Copilotの応答に
統合的に適用`"]
B["`リポジトリ固有の指示
.github/copilot-instructions.md
プロジェクト固有ルール`"] --> D
C["`パス固有の指示
.github/instructions/*.instructions.md
言語・レイヤー固有ルール`"] --> D
テンプレートリポジトリの活用
Section titled “テンプレートリポジトリの活用”組織標準のカスタム指示テンプレートをテンプレートリポジトリとして管理し、新規リポジトリ作成時に自動的に .github/copilot-instructions.md が含まれるようにする。
これにより、すべてのリポジトリで最低限の指示が設定された状態で開発を開始できる。
AGENTS.md / CLAUDE.md の組織標準化
Section titled “AGENTS.md / CLAUDE.md の組織標準化”Claude Codeなど他のAIツールを併用するチームでは、AGENTS.md や CLAUDE.md ファイルもテンプレートに含めることで、ツール横断でのコーディング規約の一貫性を確保できる。
JetBrains IDEのCopilotプラグインは AGENTS.md と CLAUDE.md を自動検出してコンテキストに含めるため、ツール間の指示の互換性が高まっている。
指示ファイルの保護
Section titled “指示ファイルの保護”Enterpriseプランでは、プッシュルールを使って .github/copilot-instructions.md や .github/agents/*.md への変更を保護できる。
これにより、カスタム指示の変更にPRレビューが強制され、意図しない変更や不正な操作を防止できる。
- Managing Copilot knowledge bases - GitHub Docs
- Extending GitHub Copilot in your organization - GitHub Docs
- About GitHub Copilot Spaces - GitHub Docs
- Adding repository custom instructions for GitHub Copilot - GitHub Docs
- About customizing GitHub Copilot responses - GitHub Docs
- Awesome GitHub Copilot Customizations