0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Tips - GitHub Copilot 管理者向け & トラブルシュート

Posted at

Tips - GitHub Copilot 管理者向け & トラブルシュート

はじめに

GitHub Copilotは、開発者の日常業務を大きく変える可能性を秘めたAIペアプログラマーです。個人向けのCopilot ProやCopilot Freeもありますが、組織やエンタープライズで導入する際は、Copilot BusinessまたはCopilot Enterpriseが選択肢となります。

このガイドでは、GitHub Copilotを組織に導入し、運用していくための実践的な知識を体系的にまとめました。技術的な詳細や実際の設定手順を中心に、現場で必要となる情報を網羅しています。


1. プランの選択と導入

1.1 Copilot BusinessとCopilot Enterpriseの違い

GitHub Copilotには、組織向けに2つのプランがあります。

Copilot Businessは、基本的なAI支援機能を提供します。IDEでのコード補完、Copilot Chat、CLIツールなどが含まれます。

Copilot Enterpriseは、Copilot Businessの機能に加えて、以下が利用できます。

  • GitHub.com上でのCopilot Chat
  • カスタムエージェントの作成
  • より高度なコードレビュー機能
  • GitHub Sparkによるアプリケーション構築
  • 詳細な使用状況メトリクス

1.2 導入フロー

エンタープライズでの導入は、以下のステップで進めます。

1.3 エンタープライズレベルでの設定手順

  1. GitHub右上のプロフィール画像をクリック
  2. 「Enterprise」または「Enterprises」を選択
  3. 「Billing and licensing」タブを開く
  4. サイドバーから「Licensing」を選択
  5. 「Copilot」セクションで「Manage」をクリック

1.4 組織レベルでの設定手順

組織オーナーがCopilot Businessプランを直接セットアップすることも可能です。

  1. Copilotサインアップページへアクセス
  2. 正しい組織アカウントにサインインしていることを確認
  3. 「Enable GitHub Copilot」をクリック
  4. メンバーへのライセンス割り当てを設定

1.5 プラン変更について

1.5.1 アップグレード(Business → Enterprise)

エンタープライズ内の組織をCopilot Enterpriseにアップグレードするには、以下を実行します。

  1. エンタープライズ設定の「Billing and licensing」→「Licensing」へ移動
  2. 「Copilot」セクションで「Manage」をクリック
  3. 「Organizations」タブを開く
  4. 対象組織の右側にあるドロップダウンメニューから「Copilot Enterprise」を選択

1.5.2 ダウングレード(Enterprise → Business)

同様の手順で、ドロップダウンメニューから「Business」を選択します。ダウングレードの影響を確認するダイアログが表示されるので、内容を確認してから実行してください。

1.5.3 プランのキャンセル

エンタープライズのCopilotプランをキャンセルするには、すべての組織でCopilotを無効化する必要があります。組織のプランをキャンセルするには、すべての割り当てられたシートを削除します。


2. アクセス管理の実践

2.1 ライセンス割り当ての2つのアプローチ

GitHub Copilotのライセンス割り当てには、2つの主要な方法があります。

2.1.1 エンタープライズレベルでの直接割り当て

ユーザーやエンタープライズチームに直接ライセンスを割り当てる方法です。この方法では、GitHub Enterpriseライセンスを持たないユーザーにもCopilotライセンスを付与できます。現在はCopilot Businessライセンスのみが対象です。

手順

  1. エンタープライズ設定の「Billing and licensing」→「Licensing」へ移動
  2. 「Copilot」の「Manage」をクリック
  3. 「All members」または「Enterprise Teams」タブを選択
  4. 「Assign licenses」をクリック
  5. ユーザーまたはチームを検索して「Add licenses」をクリック

エンタープライズチームへの割り当ての利点

  • チームメンバーの追加・削除に応じて自動的にライセンスが付与・削除される
  • Enterprise Managed Usersを使用している場合、IdP(Identity Provider)グループと同期できる

2.1.2 組織レベルでの割り当て

組織に対してCopilotを有効化し、組織オーナーが各メンバーにライセンスを割り当てる方法です。

組織へのCopilot有効化

  1. エンタープライズ設定の「Billing and licensing」→「Licensing」→「Copilot」→「Manage」へ移動
  2. 「Organization access」で、すべての組織に有効化するか、特定の組織を選択するかを決定
  3. 特定の組織を選択した場合、「Organizations」タブで対象組織を選択
  4. 組織名の右側のドロップダウンメニューから以下を選択
    • Copilot Businessプランの場合: 「Enabled」
    • Copilot Enterpriseプランの場合: 「Copilot: Enterprise」または「Copilot: Business」

組織内でのメンバーへの割り当て

組織オーナーは、以下の方法でメンバーにライセンスを割り当てます。

全メンバーへの一括割り当て

  1. 組織設定で「Code, planning, and automation」→「Copilot」→「Access」へ移動
  2. 「Start adding seats」をクリック
  3. 「Purchase for all members」を選択
  4. 確認ダイアログで「Purchase seats」をクリック

特定のメンバーやチームへの割り当て

  1. 同じく「Access」ページで「Start adding seats」をクリック
  2. 「Purchase for selected members」を選択
  3. 「Users and teams」タブで個別にユーザーやチームを検索して追加、または「Upload CSV」タブでCSVファイルを使って一括追加
  4. 「Continue to purchase」→「Purchase seats」をクリック

CSVファイルでの一括追加の注意点

CSVファイルには、ユーザー名またはメールアドレスをカンマ区切りで記載します。Enterprise Managed Usersを使用していない場合、GitHub.com上のすべてのユーザーが検索対象となります。組織のメンバーでないユーザーが含まれていた場合、そのユーザーは組織への招待が送信されます。

2.2 REST APIを使ったライセンス管理

大規模な組織では、REST APIを使ったライセンス管理が効率的です。

チームへのライセンス追加

# チームをCopilotサブスクリプションに追加
POST /orgs/{org}/copilot/billing/selected_teams

ユーザーへのライセンス追加

# ユーザーをCopilotサブスクリプションに追加
POST /orgs/{org}/copilot/billing/selected_users

ライセンスの取り消し

# チームからライセンスを削除
DELETE /orgs/{org}/copilot/billing/selected_teams

# ユーザーからライセンスを削除
DELETE /orgs/{org}/copilot/billing/selected_users

割り当て情報の取得

# 組織のCopilotシート情報を取得
GET /orgs/{org}/copilot/billing

# すべてのシート割り当てをリスト
GET /orgs/{org}/copilot/billing/seats

# 特定ユーザーのシート割り当て詳細を取得
GET /orgs/{org}/members/{username}/copilot

2.3 セルフサービスモデルの設定

GitHubは、開発者が承認なしでライセンスを要求できるセルフサービスモデルを推奨しています。

2.4 アクセスリクエストの管理

組織オーナーは、メンバーからのCopilot Businessアクセスリクエストを管理できます。GitHubは、保留中のリクエストをまとめた週次メールを送信します。

リクエスト承認手順

  1. 組織設定で「Access」→「Requests from members」へ移動
  2. リクエストを確認し、「Buy Copilot Business」をクリック

エンタープライズが所有する組織の場合、エンタープライズオーナーが先に組織に対してCopilotを有効化する必要がある場合があります。

2.5 ライセンスの取り消し

2.5.1 組織全体での取り消し

  1. 組織設定で「Billing & licensing」→「Licensing」または「Copilot」→「Access」へ移動
  2. 「Copilot Business is active in your organization」で「Disabled」を選択
  3. 確認ダイアログで「Confirm and remove seats」をクリック

2.5.2 特定ユーザーからの取り消し

  1. 組織設定で「Copilot」→「Access」へ移動
  2. 「Enabled For: selected members」を選択
  3. 検索バーでユーザーを検索
  4. ユーザーを選択して「Cancel seat」をクリック
  5. 確認ダイアログで「Remove seats」をクリック

課金への影響

ライセンスの取り消しは、次の課金サイクルの開始時から有効になります。サイクル途中で取り消した場合、ユーザーは残りの期間もCopilotにアクセスできます。

2.6 ネットワークベースのアクセス制御

サブスクリプションベースのネットワークルーティングを使用すると、ファイアウォールでCopilot Business/Enterpriseへのアクセスを明示的に許可し、Copilot ProやCopilot Freeへのアクセスをブロックできます。

影響を受ける機能

  • IDEでのインライン提案(VS Code、Visual Studio、JetBrains、Vim/NeoVim)
  • IDEでのCopilot Chat
  • GitHub.com上のCopilot Chat
  • GitHub Mobileアプリ
  • Copilot CLI

設定手順

  1. メンバーのCopilotクライアントが以下の最小バージョン以上であることを確認

    • VS Code: Copilot Chat version 0.17以降
    • JetBrains: Copilot version 1.5.6.5692以降
    • Visual Studio: VS 2022 17.11以降
  2. ファイアウォールのallowlistに以下を追加

    • Copilot Businessプランの場合: *.business.githubcopilot.com
    • Copilot Enterpriseプランの場合: *.enterprise.githubcopilot.com
  3. ファイアウォールのblocklistに以下を追加

    • *.individual.githubcopilot.com

重要な注意点

ワイルドカード(*)は必須です。Copilotが正しく機能するために複数のサブドメインが必要になります。


3. ポリシーと機能制御

3.1 ポリシーの階層構造

GitHub Copilotのポリシーは、エンタープライズレベルと組織レベルの2層で管理されます。

ポリシーの優先順位

エンタープライズレベルで明示的な設定(有効または無効)が選択されている場合、組織レベルでその設定を上書きすることはできません。組織に委任されている場合のみ、組織オーナーが独自の設定を行えます。

3.2 エンタープライズレベルでのポリシー設定

アクセス方法

  1. GitHub右上のプロフィール画像をクリック
  2. 「Enterprise」または「Enterprises」を選択
  3. 「AI controls」タブを開く
  4. サイドバーから設定したいカテゴリを選択
    • 「Agents」: AIエージェント関連のポリシー
    • 「Copilot」: Copilot機能のポリシー
    • 「MCP」: Model Context Protocolのポリシー

主要なポリシー項目

各ポリシーには、通常以下の選択肢があります。

  • Enabled everywhere: すべての組織で有効
  • Disabled everywhere: すべての組織で無効
  • Let organizations decide: 組織オーナーに決定を委任

Copilot機能のポリシー例

  • Copilot in GitHub.com(GitHub.com上でのCopilot Chat)
  • Copilot coding agent(タスク委譲機能)
  • Copilot code review(コードレビュー機能)
  • MCP servers in Copilot(MCPサーバーの使用)
  • GitHub Spark(アプリケーション構築ツール)

3.3 組織レベルでのポリシー設定

アクセス方法

  1. 組織設定で「Code, planning, and automation」→「Copilot」へ移動
  2. 「Policies」タブで機能の有効/無効を設定
  3. 「Models」タブで利用可能なモデルを設定

各ポリシーの設定

ドロップダウンメニューから、以下のいずれかを選択します。

  • Enabled: 有効
  • Disabled: 無効
  • (一部のポリシーでは)Allowed / Blocked / No policy

3.4 プレビュー機能とフィードバック収集

「Copilot in GitHub.com」を有効にすると、2つの追加オプションが表示されます。

Opt in to user feedback collection

有効にすると、ユーザーは選択したCopilot機能に対してフィードバックを提供できるようになります。

Opt in to preview features

有効にすると、ユーザーはまだ一般公開されていない新しいCopilot機能をテストできます。プレビュー機能には不具合が含まれる可能性があり、機能が変更または廃止される可能性があることに注意してください。

3.5 MCPサーバーのポリシー

「MCP servers in Copilot」ポリシーは、Copilotで一般公開(GA)されているMCPサーバーの使用を制御します。

注意点

このポリシーは、サードパーティのホストアプリケーション(Cursor、Windsurf、Claudeなど)でのGitHub MCPサーバーへのアクセスと権限は制御しません。


4. エージェント機能の活用

GitHub Copilotは、従来のコード補完やチャット機能に加えて、より高度なエージェント機能を提供しています。これらの機能は、開発ワークフローの自動化や効率化に大きく貢献します。

4.1 Copilot Coding Agent

Copilot Coding Agentは、開発者がタスクを委譲できる機能です。エージェントは複数のファイルにまたがる変更を行い、プルリクエストとして提出できます。

利用可能なプラン

  • Copilot Pro
  • Copilot Pro+
  • Copilot Business
  • Copilot Enterprise

利用可能な環境

GitHub上のすべてのリポジトリで利用できますが、Managed User Accountsが所有するリポジトリと、明示的に無効化されているリポジトリは除外されます。

4.1.1 エンタープライズでの有効化

メンバーへの有効化手順

エンタープライズに割り当てられたCopilot EnterpriseまたはCopilot Businessライセンスを持つユーザーに対して、Coding AgentとサードパーティMCPサーバーの使用はデフォルトでブロックされています。

  1. エンタープライズの「AI Controls」タブへアクセス
  2. 「Agents」ページで「Copilot coding agent」をクリック
  3. 「Enabled everywhere」または「Let organizations decide」を選択
  4. 「MCP」ページで「MCP servers in Copilot」ポリシーについても同様に設定

次のステップ

  • 「Enabled everywhere」を選択した場合: 組織オーナーに、すべてのメンバーに対してCoding Agentが有効化されたことを通知します。デフォルトではすべてのリポジトリで利用可能ですが、一部または全部のリポジトリをオプトアウトすることも可能です。
  • 「Let organizations decide」を選択した場合: 組織オーナーとメンバーの有効化について協議します。

4.1.2 リポジトリでの無効化

エンタープライズが所有するすべてのリポジトリでCoding Agentを無効化できます。

  1. エンタープライズの「AI Controls」タブへアクセス
  2. 「Installed Agents」セクションで「Copilot coding agent」をクリック
  3. 「Block Copilot coding agent in all repositories owned by ENTERPRISE-NAME」の横のトグルをクリック

注意点

Copilot Pro+ユーザーは、エンタープライズのリポジトリにアクセスできる場合、Coding Agentを使用でき、エンタープライズのポリシーによる制限を受けません。組織レベルの設定を使用することで、一部またはすべてのリポジトリでエージェントの使用を停止できます。

4.1.3 組織でのCoding Agent有効化

ポリシーの有効化

Copilot EnterpriseまたはCopilot Businessを持つ組織は、メンバーに対してこれらの機能を有効化できます。

  1. 組織のCopilot Policiesページへアクセス
  2. 「Copilot coding agent」ポリシーで「Enabled」を選択
  3. 「MCP servers on GitHub.com」ポリシーで「Enabled」を選択

リポジトリアクセスの制御

デフォルトでは、すべてのリポジトリでCoding Agentが利用可能ですが、一部またはすべてのリポジトリでブロックできます。

  1. 組織設定で「Code, planning, and automation」→「Copilot」→「coding agent」へ移動
  2. 「Repository access」コントロールを使用して、Coding Agentを許可するリポジトリを定義
  3. 「Selected repositories」を選択した場合、ダイアログでリポジトリを選択

Coding Agentが有効化されたリポジトリでは、Coding Agentへのアクセス権とリポジトリへの書き込み権限を持つユーザーが、Copilotに作業を委譲できます。

4.2 Copilot Code Review

Copilot Code Reviewは、コードレビューを支援し、プルリクエストのサマリーを作成する機能です。

概要

  • コードレビューの自動化支援
  • プルリクエストサマリーの生成
  • コードの問題点や改善点の提案

有効化手順

エンタープライズの「AI Controls」タブから設定します。

注意事項

  • Copilot Code Reviewの新しいツールはパブリックプレビュー中で、変更される可能性があります
  • パブリックプレビューに参加するには、エンタープライズのAI Controlsの「Copilot」ページから「Copilot in GitHub.com」→「Opt in to preview features」を有効にする必要があります

リポジトリでの無効化

Coding Agentと同様に、エンタープライズが所有するすべてのリポジトリでCode Reviewを無効化できます。

4.3 GitHub Spark

GitHub Sparkは、自然言語のプロンプトを使用してインテリジェントなアプリケーションを構築できるツールです。

主な機能

  • 自然言語によるアプリケーション開発
  • 高度なコントロールと組み込みデザインツール
  • チームメイトとの共有や本番環境へのデプロイ

利用条件

  • Copilot Enterpriseプランが必要
  • GitHub Enterprise Cloud with data residencyを使用しているエンタープライズでは現在利用不可

有効化手順

デフォルトでは、エンタープライズ所有の組織からCopilot Enterpriseライセンスを受け取るユーザーに対してSparkは無効です。

エンタープライズの「AI Controls」タブからメンバーがSparkを使用できるようにします。

次のステップ

  • 「Enabled everywhere」を選択した場合: 組織オーナーに、すべてのメンバーに対してこれらの機能が有効化されたことを通知します
  • 「Let organizations decide」を選択した場合: 組織オーナーとメンバーの有効化について協議します

4.4 カスタムエージェント

組織やエンタープライズ独自のカスタムエージェントを作成できます。

注意事項

Copilotカスタムエージェントはパブリックプレビュー中で、変更される可能性があります。

4.4.1 エンタープライズでのカスタムエージェント準備

リポジトリの作成

  1. エンタープライズ内の組織を1つ選択し、カスタムエージェントリポジトリの所有者とします
  2. GitHubのテンプレートリポジトリを使用して、選択した組織に.github-privateという名前の新しいリポジトリを作成します
  3. リポジトリの可視性を以下のように設定します
    • エンタープライズのすべてのメンバーに読み取りアクセスを許可する場合: Internal
    • 作成後に手動でアクセスを許可する場合: Private
  4. テンプレートのREADMEを必要に応じて更新します

エンタープライズでのカスタムエージェント有効化と保護

  1. エンタープライズの「AI controls」タブへアクセス
  2. 「Custom agents」セクションで、「Select organization」ドロップダウンメニューからカスタムエージェントリポジトリを含む組織を選択
  3. 「Protect agent files using rulesets」セクションで「Create ruleset」をクリックし、エンタープライズオーナーのみがエージェントプロファイルを編集できるようにルールセットを自動設定します

ルールセットに関する注意点

  • リポジトリへの書き込みアクセス権を持つエンタープライズメンバーは、エージェントプロファイルへの変更を提案するプルリクエストを作成できます
  • ルールセットへのバイパスアクセス権を持つエンタープライズメンバーは、それらのプルリクエストをマージできます
  • このルールセットを作成すると、エンタープライズ内の組織オーナーが組織レベルのカスタムエージェントを作成または編集することもブロックされます

4.4.2 組織でのカスタムエージェント準備

エンタープライズルールセットの確認

組織がエンタープライズの一部である場合、エンタープライズオーナーは組織レベルのカスタムエージェントの作成と管理を制限するルールセットを設定できます。組織におけるカスタムエージェントの可用性を理解するには、エンタープライズオーナーに連絡してください。

リポジトリの作成

  1. GitHubのテンプレートリポジトリを使用してカスタムエージェントリポジトリの作成を開始します
  2. 「Choose an owner」ドロップダウンメニューで組織を選択
  3. リポジトリ名を.github-privateとし、簡単な説明を記述します
  4. 可視性ドロップダウンメニューから以下のいずれかを選択します
    • 組織またはエンタープライズのすべてのメンバーに読み取りアクセスを許可する場合: Internal
    • 作成後に手動でアクセスを許可する場合、またはinternal可視性がオプションでない場合: Private
  5. 「Create repository」をクリック
  6. テンプレートのREADMEを必要に応じて更新します

5. カスタムモデルの統合

GitHub Copilotでは、独自のLLM(Large Language Model)プロバイダーのAPIキーを使用して、カスタムモデルを統合できます。これにより、組織のガバナンス、データセキュリティ、コンプライアンス要件に対応できます。

注意事項

  • 独自のAPIキーをGitHub Copilotに持ち込む機能はパブリックプレビュー中で、変更される可能性があります
  • 一部のモデルはResponses APIを必要としますが、現在サポートされていません

5.1 サポートされているプロバイダー

以下のプロバイダーからのAPIキーがサポートされています。

  • Anthropic
  • Microsoft Foundry
  • OpenAI
  • xAI

ファインチューニングされたモデルもサポートされていますが、機能と結果の品質はファインチューニングの設定によって異なります。本番環境で使用する前に、モデルをテストして出力を慎重にレビューしてください。

5.2 カスタムモデル統合のメリット

ガバナンスとコンプライアンス

組織のポリシーと規制要件に準拠するLLMプロバイダーを選択できます。

コスト管理

既存の支払い方法、契約、クレジット、または交渉済みのレートに合わせることができ、使用量の超過を回避できます。

可視性とコントロール

チームがアクセスできるモデルを管理し、プロバイダーの既存のダッシュボードと課金を通じて使用状況を監視できます。

柔軟性

組織がすでに使用しているカスタムまたは専門的なモデルをサポートできます。

5.3 エンタープライズアカウントへのAPIキー追加

重要な推奨事項

最小権限の原則に従い、APIキーには必要最小限のスコープのみを割り当てることを強く推奨します。

追加手順

  1. GitHub右上のプロフィール画像をクリック
  2. 「Enterprise」または「Enterprises」を選択
  3. 「AI controls」タブを開く
  4. サイドバーで「Copilot」をクリック
  5. 「Configure allowed models」をクリック
  6. 「Custom models」タブをクリック
  7. APIキーのリスト上部で「Add API key」をクリック
  8. 「Provider」で使用するLLMプロバイダーを選択
  9. 「Name」にキーの名前を入力(モデルピッカーに表示されます)
  10. 「API key」にキーを入力または貼り付け
  11. 使用しているプロバイダーに応じて、モデルを選択または追加します

OpenAI、Anthropic、xAIの場合

  • APIキーテキストフィールドで「🔄」をクリックして、キーに関連付けられたモデルを取得
  • 「Available models」で使用するモデルを選択

Microsoft Foundryの場合

  • 「Deployment URL」フィールドにデプロイメントURLを入力
  • 「Available models」フィールドにModel IDを入力し、「+」をクリックして追加

注意点

モデルのデプロイメントURLが異なる場合、同じAPIキーに追加できません。デプロイメントURLごとに個別のAPIキーを作成してください。

  1. 使用可能にするモデルを選択または追加したら、「Save」をクリック

結果

APIキーを追加してモデルを選択すると、あなたと組織のメンバーがGitHub Copilot Chatでそれらを使用できるようになります。モデルはモデルピッカーの下部に、エンタープライズ名の下に表示されます。

5.4 組織でのカスタムモデルの可用性管理

追加したモデルを、エンタープライズアカウント内の組織で利用可能にするかどうかを選択できます。

設定手順

  1. エンタープライズの「AI controls」タブへアクセス
  2. サイドバーで「Copilot」をクリック
  3. 「Configure allowed models」をクリック
  4. 「Custom models」タブをクリック
  5. APIキーのリスト上部で「Added models」タブをクリック
  6. モデルの横にある「Configure」をクリック(すでにアクセス権を持つ組織がある場合、「All organizations」または「X organizations」が表示されます)
  7. 開いたモーダルで「Access」タブをクリック

注意点

「Access」タブは、モデルが「Enabled」に設定されている場合にのみ利用可能です。

  1. モデルを組織で利用可能にする方法を選択します
    • エンタープライズアカウント内のすべての組織で利用可能にする場合: 「Allow for all organizations」を選択
    • 特定の組織でのみ利用可能にする場合: 「Choose per organization」を選択し、下にリストされている組織をチェックまたはチェック解除
  2. 「Save」をクリック

5.5 組織アカウントへのAPIキー追加

重要な推奨事項

エンタープライズと同様に、最小権限の原則に従い、APIキーには必要最小限のスコープのみを割り当てることを強く推奨します。

追加手順

  1. GitHub右上のプロフィール画像をクリックし、「Organizations」をクリック
  2. 組織の横にある「Settings」をクリック
  3. サイドバーの「Code, planning, and automation」で「Copilot」をクリック
  4. 「Copilot」で「Models」をクリック
  5. 「Custom models」タブをクリック
  6. APIキーのリスト上部で「Add API key」をクリック
  7. エンタープライズと同様の手順でAPIキーとモデルを追加します

結果

APIキーを追加してモデルを選択すると、あなたと組織のメンバーがGitHub Copilot Chatでそれらを使用できるようになります。モデルはモデルピッカーの下部に、組織名の下に表示されます。


6. MCPサーバーの管理

Model Context Protocol(MCP)は、AIシステムが外部ツールやデータソースとやり取りするための標準プロトコルです。GitHub CopilotでMCPサーバーを管理することで、開発者がアクセスできるMCPサーバーを制御できます。

6.1 MCPレジストリの作成

6.1.1 オプション1: MCPレジストリのセルフホスティング

MCPレジストリの核心は、含まれるMCPサーバーの詳細を提供するHTTPSエンドポイントのセットです。以下のいずれかのオプションでレジストリを作成できます。

  • オープンソースのMCP Registryをフォークしてセルフホストする
  • Dockerを使用してオープンソースレジストリをローカルで実行する
  • 独自のカスタム実装を公開する

注意点

開発者がローカルMCPサーバーにアクセスできるようにする場合は、正しいサーバーIDでそれらのサーバーをレジストリに含めてください。

エンドポイントと仕様の要件

有効なレジストリは、URLルーティングをサポートし、v0.1 MCPレジストリ仕様に従う必要があります。以下のエンドポイントを含みます。

  • GET /v0.1/servers: すべての含まれるMCPサーバーのリストを返す
  • GET /v0.1/servers/{serverName}/versions/latest: 特定のサーバーの最新バージョンを返す
  • GET /v0.1/servers/{serverName}/versions/{version}: サーバーの特定のバージョンの詳細を返す

v0.1仕様のサポート

MCPレジストリはv0仕様を使用して開始されましたが、そのバージョンは現在不安定と見なされており、実装すべきではありません。代わりに、v0.1仕様に従ってレジストリを作成してください。以下のIDEでサポートされています。

IDE v0.1サポート
VS Code Insiders
VS Code
Visual Studio
Eclipse 2025年12月予定
JetBrains IDEs 2025年12月予定
Xcode 2025年12月予定

CORS(Cross-Origin Resource Sharing)要件

Copilotがレジストリを取得する際にクロスオリジンリクエストを成功させるため、レジストリまたはリバースプロキシはCORSヘッダーを含める必要があります。すべての/v0.1/serversエンドポイントに以下のヘッダーを追加してください。

Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET, OPTIONS
Access-Control-Allow-Headers: Authorization, Content-Type

6.1.2 オプション2: MCPレジストリとしてAzure API Centerを使用

Azure API Centerは、自動CORS設定、組み込みガバナンス機能、追加のWebサーバーセットアップ不要の完全に管理されたMCPレジストリを提供します。

セットアップ手順

  1. レジストリの初期セットアップを完了します
  2. 開発者がローカルMCPサーバーにアクセスできるようにする場合は、正しいサーバーIDでそれらのサーバーをレジストリに含めます
  3. GitHub Copilotがレジストリをフェッチできるようにするため、API Centerの可視性設定で匿名アクセスを許可します
  4. API CenterエンドポイントURLをコピーします。次の記事で、このURLを使用して会社全体でレジストリを利用可能にします

料金と制限

Azure API Centerは、MCPレジストリ管理を含む基本的なAPIカタログ化と検出のための無料ティアを提供しています。無料ティアに含まれる制限よりも高い制限が必要な場合は、Standardプランにアップグレードできます。

6.2 MCPサーバーアクセスの設定

MCPレジストリURLとアクセス制御ポリシーを設定して、開発者がサポートされているIDEでGitHub Copilotを使用して検出・使用できるMCPサーバーを決定できます。

注意事項

MCPレジストリURLとallowlistはパブリックプレビュー中で、変更される可能性があります。

6.2.1 エンタープライズでのMCP allowlistポリシー設定

統一されたアクセスを確保するため、MCPレジストリURLとallowlistポリシーをエンタープライズレベルで設定・維持できます。チームに異なるニーズがある場合は、各組織に個別のポリシーを設定する必要があります。

設定手順

  1. GitHub右上のプロフィール画像をクリック
  2. 「Enterprise」または「Enterprises」を選択
  3. 「AI controls」タブを開く
  4. サイドバーで「MCP」をクリック
  5. 「MCP servers in Copilot」が「Enabled everywhere」に設定されていることを確認
  6. 「MCP Registry URL」セクションにレジストリのURLを入力し、「Save」をクリック

注意点

Azure API Centerを使用してMCPレジストリを設定した場合、API CenterのベースURLを入力してください。/v0.1/serversなどのルートサフィックスを含めると、レジストリがエラーになります。

  1. 「Restrict MCP access to registry servers」セクションで、ドロップダウンメニューを選択し、以下のいずれかをクリックします
    • Allow all: 制限なし。すべてのMCPサーバーを使用可能
    • Registry only: レジストリからのサーバーのみ実行可能

選択したポリシーは、エンタープライズの開発者にすぐに適用されます。

6.2.2 組織でのMCP allowlistポリシー設定

設定手順

  1. GitHub右上のプロフィール画像をクリックし、「Organizations」をクリック
  2. 組織の横にある「Settings」をクリック
  3. サイドバーの「Code, planning, and automation」で「Copilot」をクリックし、「Policies」をクリック
  4. 「Features」セクションで、「MCP servers in Copilot」が「Enabled」に設定されていることを確認
  5. 「MCP Registry URL (optional)」フィールドにレジストリのURLを入力し、「Save」をクリック

注意点

Azure API Centerを使用してMCPレジストリを設定した場合、API CenterのベースURLを入力してください。/v0.1/serversなどのルートサフィックスを含めると、レジストリがエラーになります。

  1. 「Restrict MCP access to registry servers」セクションで、ドロップダウンメニューを選択し、以下のいずれかをクリックします
    • Allow all: 制限なし。すべてのMCPサーバーを使用可能
    • Registry only: レジストリからのサーバーのみ実行可能

選択したポリシーは、組織の開発者にすぐに適用されます。


7. 監視とメトリクス

GitHub Copilotの使用状況を監視することで、組織全体での採用状況を把握し、ライセンス管理を最適化できます。

7.1 使用状況メトリクスダッシュボード

注意事項

GitHub Copilot使用状況メトリクスは現在、データ保護付きのパブリックプレビュー中で、変更される可能性があります。

使用状況メトリクスダッシュボードは、エンタープライズ全体での開発者のCopilot採用状況と使用状況の監視に役立ちます。初期展開後、このダッシュボードを使用して、時間の経過とともに使用状況がどのように進化するかを監視できます。

7.1.1 ダッシュボードへのアクセス

アクセス権限

  • エンタープライズオーナー
  • 課金マネージャー
  • 「View Enterprise Copilot Metrics」権限を持つエンタープライズカスタムロールを持つユーザー

アクセス手順

  1. Enterprisesページへアクセスし、エンタープライズを選択
  2. 「Insights」タブをクリック
  3. 左サイドバーで「Copilot usage」をクリック

データについて

ダッシュボードはエンタープライズレベルでデータを報告し、IDEテレメトリのみに基づいており、現在の日付から最大3日遅れて表示される場合があります。

7.1.2 Copilot Chatによるエクスポートデータの分析

より深い分析のため、ダッシュボードからNDJSONレポートをエクスポートし、Copilot Chatを使用してデータをより詳細に探索できます。

プロンプト例

* user_initiated_interaction_count > 0だが、code_acceptance_activity_countが低いユーザーは誰ですか?
* 採用率が低い特定のチームはありますか?

7.2 コード生成ダッシュボード

注意事項

GitHub Copilot使用状況メトリクスは現在、データ保護付きのパブリックプレビュー中で、変更される可能性があります。

コード生成ダッシュボードは、ユーザーとエージェントの両方からのアクティビティを含む、エンタープライズ全体でCopilotがコードを生成する方法を示します。

7.2.1 ダッシュボードへのアクセス

アクセス権限

使用状況メトリクスダッシュボードと同様です。

アクセス手順

  1. Enterprisesページへアクセスし、エンタープライズを選択
  2. 「Insights」タブをクリック
  3. 左サイドバーで「Code generation」をクリック

注意点

Copilot使用状況メトリクスダッシュボードはエンタープライズレベルでデータを報告します。組織レベルのメトリクスは、Copilot使用状況メトリクスAPIを通じてのみ利用可能です。

7.2.2 表示可能な内容

ダッシュボードは、以下を含むエンタープライズ全体の集約されたコード生成アクティビティを示します。

AIで変更されたコード行数

すべてのモードにわたって追加および削除されたコード行の合計。

ユーザー起動のコード変更

補完とチャットアクションを通じて提案または手動で追加された行。

エージェント起動のコード変更

edit、agent、customモードにわたってエージェントによって自動的に追加または削除された行。

モデルと言語別のアクティビティ

モデルと言語別にグループ化されたユーザー起動およびエージェント起動のアクティビティ。

7.3 アクティビティレポートのダウンロード

組織またはエンタープライズのCopilotユーザーアクティビティに関するCSVレポートをダウンロードできます。レポート内のデータにより、以下が可能になります。

  • Copilotライセンス使用状況の正確な監視
  • ユーザー認証のパターンの理解
  • ライセンス管理と主要業績評価指標の測定

7.3.1 エンタープライズのレポートダウンロード

  1. GitHub右上のプロフィール画像をクリック
  2. 「Enterprise」または「Enterprises」を選択
  3. 「Billing and licensing」タブを開く
  4. 「Billing and licensing」サイドバーで「Licensing」をクリック
  5. 「Copilot」の横にある「Get activity report」をクリック

7.3.2 組織のレポートダウンロード

  1. 組織設定へ移動
  2. 左サイドバーで「Copilot」をクリックし、「Access」をクリック
  3. 「Access management」の横にある「Get usage report」をクリックし、「Get activity report」をクリック

7.4 ユーザーアクティビティデータのレビュー

組織のGitHub Copilot使用状況をレビューして、シート割り当てに関する情報に基づいた決定を行えます。

アクセス権限

組織オーナー

対象プラン

Copilot Businessプランを持つ組織

7.4.1 レビュー手順

  1. GitHub右上のプロフィール画像をクリックし、「Organizations」をクリック
  2. 組織の横にある「Settings」をクリック
  3. サイドバーの「Code, planning, and automation」セクションで「Copilot」をクリックし、「Access」をクリック
  4. ページ上部の「GitHub Copilot」の下に、組織のGitHub Copilot使用状況の概要が表示されます
  5. 「Access management」の下で、ソートオプションを使用して、ユーザーがGitHub Copilotを最後に使用した時期でユーザーのリストをソートできます
  6. より詳細な情報については、アクティビティレポートを取得できます

7.4.2 APIを使用した割り当て情報の取得

GitHub REST APIを使用して、組織内のGitHub Copilotシート割り当ての詳細を取得できます。

  • 組織のCopilotシート情報と設定を取得: GET /orgs/{org}/copilot/billing
  • 組織のすべてのCopilotシート割り当てをリスト: GET /orgs/{org}/copilot/billing/seats
  • ユーザーのCopilotシート割り当て詳細を取得: GET /orgs/{org}/members/{username}/copilot

7.4.3 last_activity_atデータのトラブルシューティング

ユーザーのlast_activity_at日付が、CSVまたはAPIレポートに表示されているものよりも最近であるべきだと思われる場合、24時間待ってから再度確認してください。それでも最近のCopilot使用状況がlast_activity_at日付に反映されていない場合、ユーザーにIDE設定でテレメトリが有効になっているかどうかを確認してもらってください。

7.5 Copilotライセンス使用状況の表示

Copilot BusinessまたはCopilot Enterpriseプランを持っている場合、エンタープライズのCopilot使用状況情報を表示できます。この情報には、割り当てられたシート数と現在の課金サイクルの総支出が含まれます。

アクセス権限

エンタープライズオーナー

対象プラン

Copilot EnterpriseまたはCopilot Businessプランを持つエンタープライズ

7.5.1 表示手順

  1. GitHub右上のプロフィール画像をクリック
  2. 「Enterprise」または「Enterprises」を選択
  3. 「Billing and licensing」タブを開く
  4. ページの下部までスクロールし、「Copilot」タブをクリック

7.6 監査ログのレビュー

7.6.1 Copilot Businessの監査ログについて

Copilot Businessプランの監査ログを使用して、組織内のユーザーが実行したアクションをレビューできます。レビュー可能なアクションには以下が含まれます。

  • Copilot設定とポリシーの変更
  • Copilot Businessプランへのシートの追加または削除

監査ログには、過去180日間のCopilot Businessプランに関連するイベントがリストされます。

7.6.2 組織の監査ログの表示

アクセス権限

組織オーナー

対象プラン

Copilot Businessプランを持つ組織

表示手順

  1. GitHub右上のプロフィール画像をクリックし、「Organizations」をクリック
  2. 組織の横にある「Settings」をクリック
  3. サイドバーの「Archive」セクションで「Logs」をクリックし、「Audit log」をクリック

7.6.3 Copilot Business監査ログイベントの検索

action修飾子とcopilotカテゴリを使用して、任意のGitHub Copilot監査ログイベントを検索できます。

検索例

  • action:copilot: 組織のすべてのGitHub Copilot監査ログイベントを返す
  • action:copilot.cfb_seat_assignment_created: Copilot Businessシートが新しいユーザーに割り当てられたことに関連するすべての監査ログイベントを返す

7.7 エージェント活動の監視

注意事項

AI Controlsビューはパブリックプレビュー中で、変更される可能性があります。

7.7.1 エンタープライズのアクティブおよび最近のエージェントセッションの表示

  1. GitHub右上のプロフィール画像をクリック
  2. 「Enterprise」または「Enterprises」を選択
  3. 「AI controls」タブを開く
  4. ページ上部の「Agent sessions」セクションに、エンタープライズの最近の3つのエージェントセッションが表示されます。過去24時間のすべてのエージェントセッションを表示するには、「View all」をクリックします

7.7.2 監査ログによるエンタープライズのエージェントアクティビティの追跡

  1. GitHub右上のプロフィール画像をクリック
  2. 「Enterprise」または「Enterprises」を選択
  3. 「AI controls」タブを開く
  4. 過去180日間のエンタープライズのエージェントアクティビティのリストを表示するには、ページ下部の「Audit logs」をクリックします

7.8 コンテンツ除外の変更レビュー

組織またはリポジトリ管理者は、GitHub Copilotの監査ログを使用して、コンテンツ除外設定の変更をレビューできます。

アクセス権限

  • 組織オーナー
  • Copilot Businessプランを持つ組織

7.8.1 組織の監査ログの表示

  1. GitHub右上のプロフィール画像をクリックし、「Organizations」をクリック
  2. 組織の横にある「Settings」をクリック
  3. サイドバーの「Archive」セクションで「Logs」をクリックし、「Audit log」をクリック

7.8.2 GitHub Copilot監査ログイベントの検索

検索構文

action修飾子とcopilotカテゴリを使用します。

検索例

  • action:copilot: 組織のすべてのGitHub Copilot監査ログイベントを返す
  • action:copilot.content_exclusion_changed: コンテンツ除外設定の変更に関連するすべての監査ログイベントを返す

8. トラブルシューティング

8.1 一般的な問題

8.1.1 IDEでGitHub Copilot拡張機能を使用できない

拡張機能の更新

GitHub Copilot拡張機能は、バグ修正と新機能の追加のために頻繁に更新されます。古いクライアントはGitHub Copilotサーバーと通信できないため、拡張機能を最新の状態に保つことが重要です。インストールしたすべてのマシンでGitHub Copilot拡張機能を更新してください。

8.1.2 一部のファイルでGitHub Copilotが機能しない

Copilot BusinessまたはCopilot Enterpriseライセンスを使用している場合、一部のファイルでエディタにインライン提案が表示されない場合があります。これは、コンテンツ除外設定によってファイルがGitHub Copilotの使用から除外されている場合に発生します。

確認方法

ファイルがGitHub Copilotの除外コンテンツとして設定されている場合、ステータスバーのアイコンに斜線が入ります。アイコンにカーソルを合わせると、この制限を適用した設定を示すツールチップが表示されます。

8.1.3 コンテンツ除外が適用されない

コンテンツ除外は、リポジトリレベルと組織レベルで設定できます。除外の範囲は、ルールが設定されたレベルによって決定されます。

適用タイミング

コンテンツ除外を追加または変更した後、IDEで設定がすでに読み込まれている場合、有効になるまで最大30分かかる場合があります。

注意点

Copilotは、IDEによって間接的に提供される場合、除外されたファイルからセマンティック情報を使用する可能性があります。

8.1.4 エラー: "GitHub Copilot could not connect to server. Extension activation failed"

このエラーは、Copilotプランを持っていないか、GitHub APIに接続してCopilotを使用するためのトークンをリクエストする際にエラーが発生したことを示しています。

解決方法

api.github.comから別のトークンをリクエストするには、IDEからCopilotにサインインしてサインアウトしてみてください。ログアウトすると、Copilotは再度サインインするよう促します。

8.1.5 Copilotが複数行のコードを提案しない

これは既知の問題であり、チームは修正に取り組んでいます。

8.1.6 エラー: "Sorry, your request was rate-limited."

このエラーは、Copilotリクエストのレート制限を超えたことを示しています。GitHubは、すべての人がCopilotサービスへの公平なアクセスを確保し、乱用から保護するためにレート制限を使用しています。

ほとんどの人は、容量が限られているため、プレビューモデルのレート制限を確認しています。

Copilotでレート制限が繰り返し発生する場合は、GitHub Supportに連絡してください。

8.1.7 IDEでCopilot Chatが見つからない

エディタでCopilot Chatが見つからない場合は、「Asking GitHub Copilot questions in your IDE」の「Prerequisites」セクションを確認してください。

8.1.8 最新のCopilot ChatがVisual Studio Codeで動作しない

Copilot ChatへのUI統合が深いため、Copilot Chatの変更はVisual Studio Codeのリリースと一致します。その結果、Copilot Chatのすべての新しいバージョンは、Visual Studio Codeの最新リリースとのみ互換性があります。

解決方法

Copilot Chatを使用するには、Visual Studio Codeの最新バージョンを使用していることを確認してください。

8.1.9 Visual Studio Codeでの認証問題

GitHubにサインインしているがVisual Studio CodeでCopilotが利用できない場合、認証の問題が原因である可能性があります。以下の手順を試してください。

  1. Visual Studio Codeウィンドウの左下隅にあるアカウントアイコンをクリックし、GitHubユーザー名にカーソルを合わせ、「Sign out」ボタンをクリック
  2. Visual Studio Codeを再読み込みするには、F1キーを押してコマンドパレットを開き、「Developer: Reload Window」を選択
  3. Visual Studio Codeが再読み込みされたら、GitHubアカウントに再度サインイン

8.1.10 Visual Studioでの認証問題

Visual StudioでCopilot Chatを使用しようとすると認証の問題が発生する場合、以下の手順を試して問題を解決できます。

確認項目

  1. Visual StudioにサインインしているGitHub IDが、Copilot Chatへのアクセスが許可されているものと同じであることを確認します
  2. Visual StudioでGitHub ID/資格情報を更新する必要があるかどうかを確認します
  3. Visual StudioにGitHub IDを削除して再追加し、Visual Studioを再起動してみます

それでも解決しない場合

上記の手順で解決しない場合は、「Share feedback」ボタンをクリックし、「Report a problem」を選択してVisual Studioチームに問題を報告してください。

8.1.11 GitHub.comでのチャット応答の中断

チャット応答が完了する前に予期せず終了する場合は、質問を再送信してみてください。

Copilot Chat(github.com/copilot)では、チャット応答の下にある「🔄」ボタンをクリックして質問を再送信できます。

8.2 ネットワークエラー

プロキシとカスタム証明書に関連する一般的なエラーを解決します。

会社の機器で作業し、企業ネットワークに接続している場合、VPNまたはHTTPプロキシサーバーを介してインターネットに接続している可能性があります。場合によっては、これらのタイプのネットワークセットアップにより、GitHub CopilotがGitHubのサーバーに接続できない場合があります。

8.2.1 ネットワーク問題の診断

ネットワーク問題のトラブルシューティングを行う場合、接続をテストするためにcurlリクエストを行うと役立つ場合があります。--verboseフラグを追加すると、これらのリクエストは問題を診断したり、会社のIT部門やGitHub Supportと共有したりするための詳細情報を提供します。

基本的な接続テスト

環境から少なくともいくつかのGitHubエンドポイントにアクセスできるかどうかを確認するには、コマンドラインから以下のコマンドを実行できます。

curl --verbose https://copilot-proxy.githubusercontent.com/_ping

接続できる場合、HTTP 200応答を受信するはずです。

プロキシ経由のテスト

HTTPプロキシ経由で接続していることがわかっている場合、プロキシ経由でリクエストが成功するかどうかを確認できます。以下の例では、YOUR-PROXY-URL:PORTをプロキシの詳細に置き換えてください。

curl --verbose -x http://YOUR-PROXY-URL:PORT -i -L https://copilot-proxy.githubusercontent.com/_ping

「証明書の失効」に関連するエラーを受信した場合、--insecureフラグを付けてリクエストを再試行できます。--insecureフラグを追加した場合にのみリクエストが成功する場合、証明書エラーを無視した場合にのみGitHub Copilotが正常に接続することを示している可能性があります。

Copilot Chatの問題

エディタでCopilot Chatに特に問題がある場合は、上記のcurlコマンドを実行しますが、https://copilot-proxy.githubusercontent.com/_pingの代わりにhttps://api.githubcopilot.com/_pingを使用してください。

8.2.2 プロキシエラーのトラブルシューティング

プロキシセットアップに問題がある場合、以下のエラーが表示される場合があります: GitHub Copilot could not connect to server. Extension activation failed: "read ETIMEDOUT" または "read ECONNRESET"。このエラーは、さまざまなネットワークの問題によって引き起こされる可能性があります。

プロキシに関する一般的なエラーの原因

GitHub Copilotは、プロキシに接続するためにカスタムコードを使用しています。つまり、エディタでサポートされているプロキシセットアップが、必ずしもGitHub Copilotでサポートされているとは限りません。一般的なエラーの原因には以下があります。

  • プロキシのURLがhttps://で始まる場合、現在GitHub Copilotではサポートされていません
  • プロキシへの認証が必要な場合があります。GitHub Copilotは基本認証またはKerberosによる認証をサポートしています
  • GitHub Copilotはカスタム証明書を拒否する場合があります

8.2.3 証明書関連エラーのトラブルシューティング

プロキシセットアップによっては、「certificate signature failure」、「custom certificate」、または「unable to verify the first certificate」などのエラーが発生する場合があります。これらのエラーは通常、カスタム証明書を使用して安全な接続を傍受および検査する企業プロキシセットアップによって引き起こされます。

証明書関連エラーの解決方法

  • 安全な接続を傍受しない別のプロキシを設定します
  • 企業プロキシを使用している場合、IT部門に連絡して、プロキシが安全な接続を傍受しないように設定できるかどうかを確認します
  • カスタム証明書がオペレーティングシステムのトラストストアに適切にインストールされていることを確認します

証明書検出のメカニズム

証明書がマシンにインストールされているがGitHub Copilotが検出していない場合、GitHub Copilotが証明書を見つけるために使用するメカニズムを知っていると役立つ場合があります。

  • Windows: Copilotはwin-caパッケージを使用
  • macOS: Copilotはmac-caパッケージを使用
  • Linux: Copilotは標準のOpenSSLファイル/etc/ssl/certs/ca-certificates.crtおよび/etc/ssl/certs/ca-bundle.crtを確認

証明書エラーの無視

GitHub Copilotを証明書エラーを無視するように設定します。プロキシ設定で、Visual Studio Codeでは「Proxy Strict SSL」の選択を解除するか、JetBrains IDEでは「Accept non-trusted certificates automatically」を選択します。

警告

証明書エラーを無視すると、セキュリティ上の問題が発生する可能性があるため、推奨されません。

8.2.4 セキュリティソフトウェア関連の証明書エラー

あなたまたは組織が安全なWebトラフィックを監視するセキュリティソフトウェアを使用しており、「unable to verify the first certificate」エラーを受信する場合、IDEやCopilot拡張機能の例外を設定する必要がある場合があります。

例外を設定する方法の詳細については、セキュリティソフトウェアベンダーを参照してください。

8.3 ファイアウォール設定

8.3.1 問題について

あなたまたは会社がファイアウォールを使用している場合、Copilotが期待どおりに機能しない可能性があります。Copilotはリモート機械学習モデルと対話し、更新を確認するため、ファイアウォールが重要なトラフィックをブロックし、ユーザーエクスペリエンスを低下させる可能性があります。

8.3.2 問題の解決

最適なCopilotエクスペリエンスのために、ファイアウォールを介して特定のURL、ポート、プロトコルを通過させる「allowlist」を作成する必要があります。

8.4 ログの表示

GitHub Copilotに関連するエラーのトラブルシューティングを行うためにログを表示します。

8.4.1 Visual Studio Codeでのログファイルの表示と収集

GitHub Copilot拡張機能のログファイルは、Visual Studio Code拡張機能の標準ログ場所に保存されます。ログファイルは、接続の問題を診断するのに役立ちます。

Outputビューでの表示

  1. Visual Studio Codeで「View」メニューを開く
  2. 「Output」をクリック
  3. Outputビューペインの右側で、ドロップダウンメニューから「GitHub Copilot」を選択

ログフォルダを開く

別の方法として、システムのファイルエクスプローラーでVisual Studio Code拡張機能のログフォルダを開くことができます。これは、サポートチームにログファイルを転送する必要がある場合に便利です。

  1. VS Codeコマンドパレットを開く
    • Mac: Shift+Command+P
    • Windows/Linux: Ctrl+Shift+P
  2. 「Logs」と入力し、リストから「Developer: Open Extension Logs Folder」を選択

8.4.2 デバッグモードの有効化

ログファイルに問題を解決するのに十分な情報が含まれていない場合、一時的にデバッグログを有効にすると役立つ場合があります。これは、ネットワーク関連の問題をデバッグする場合に特に役立ちます。

有効化手順

  1. VS Codeコマンドパレットを開く
    • Mac: Shift+Command+P
    • Windows/Linux: Ctrl+Shift+P
  2. 「Developer」と入力し、「Developer: Set Log Level」を選択
  3. 「GitHub」と入力し、トラブルシューティングを行うGitHub拡張機能を選択
    • Copilot Chat拡張機能の場合: 「GitHub Copilot Chat」
    • GitHub Copilot拡張機能の場合: 「GitHub」
  4. ドロップダウンリストから「Trace」を選択
  5. 必要な情報を取得したら、手順1〜4を繰り返してログレベルを「Info」に戻してデバッグモードを無効にします

8.4.3 ネットワーク接続診断ログの表示

ネットワーク制限、ファイアウォール、またはプロキシセットアップのためにGitHub Copilotへの接続に問題が発生した場合は、以下のトラブルシューティング手順を使用してください。

診断の収集

  1. VS Codeコマンドパレットを開く
    • Mac: Shift+Command+P
    • Windows/Linux: Ctrl+Shift+P
  2. 「Diagnostics」と入力し、リストから「GitHub Copilot: Collect Diagnostics」を選択。これにより、関連情報を含む新しいエディタが開きます
  3. 「Reachability」セクションを確認して、GitHub Copilotが必要なサービスに実際にアクセスできるかどうかを判断します

8.4.4 Electronログの表示

まれに、エラーが対応するエラーハンドラーに伝播されず、通常の場所にログが記録されない場合があります。エラーが発生し、ログに何もない場合は、VS Codeと拡張機能を実行しているプロセスからログを確認してみることができます。

表示手順

  1. VS Codeコマンドパレットを開く
    • Mac: Shift+Command+P
    • Windows/Linux: Ctrl+Shift+P
  2. 「Toggle」と入力し、リストから「Developer: Toggle Developer Tools」を選択
  3. Developer Toolsウィンドウで「Console」タブを選択して、エラーや警告を確認

8.5 GitHub Sparkのトラブルシューティング

Sparkに関する一般的な問題と解決方法について説明します。

8.5.1 エラー: "Live preview is interrupted. Try refreshing the page to reconnect."

AppleのSafariブラウザとSparkがライブプレビューをレンダリングする方法との間に既知の互換性問題があります。

解決方法

Google Chrome、Microsoft Edge、Mozilla Firefoxなど、別のブラウザに切り替えてください。

8.5.2 エラー: "HTTP 413 status code ("Payload Too Large")"

Sparkは、アプリデータにキーバリューストアを使用します。キー(ラベル)とペイロード(実際のデータ)の合計サイズは512kB未満である必要があります。この制限を超えるデータを保存すると、HTTP 413ステータスコード(「Payload Too Large」)エラーが発生します。

解決方法

保存しようとしているデータのサイズを削減するか、データをより小さなレコードに分割してください。

8.5.3 外部ライブラリを追加した後にアプリのビルドが失敗する

Sparkは、信頼性のために独自のスタック(React、TypeScript)を使用しています。スパークに外部ライブラリを追加できますが、互換性は保証されておらず、追加を徹底的にテストする必要があります。最良の結果を得るには、SparkのSDKとコアフレームワーク内で作業する必要があります。


まとめ

GitHub Copilotは、開発者の生産性を大幅に向上させる可能性を持つツールです。しかし、その真価を発揮するためには、適切な導入と運用が不可欠です。

成功のためのポイント

段階的な展開

いきなり全社展開するのではなく、パイロットチームでの試験運用から始めることをお勧めします。フィードバックを収集し、課題を特定してから、段階的に展開範囲を広げていきます。

明確なポリシー設定

組織のセキュリティ要件とコンプライアンス要件に基づいて、コンテンツ除外やMCPサーバーのallowlistなど、明確なポリシーを設定してください。

継続的な監視

使用状況メトリクスと監査ログを定期的にレビューし、ライセンスの最適化と不適切な使用の検出を行います。

開発者へのサポート

トラブルシューティングガイドとベストプラクティスを共有し、開発者がCopilotを効果的に活用できるようサポートします。

エージェント機能の段階的採用

Copilot Coding AgentやCode Reviewなどの高度な機能は、チームの成熟度に応じて段階的に導入することを推奨します。

今後の展開

GitHub Copilotは急速に進化しています。パブリックプレビュー中の機能も多く、今後さらに多くの革新的な機能が追加されることが予想されます。組織としては、これらの新機能を評価し、自社の開発ワークフローに統合する準備を整えておくことが重要です。

このガイドが、GitHub Copilotの導入と運用の参考になれば幸いです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?