mcpField
G
github-copilot

github-copilot

github.com/okou-aiその他81103 回インストール1 週間前に更新
リポジトリ

github-copilot について

GitHub Copilot Business/Enterprise の組織管理者向けに、GitHub API を使ったシート管理と利用状況の確認を支援するスキルです。組織・チーム単位の照会や、ユーザー・チームへのシート割り当てに対応します。

主な機能

  1. 01組織のCopilot請求情報とシート数の確認
  2. 02シート一覧とユーザーの活動日の取得
  3. 03個別ユーザーのシート詳細の照会
  4. 04ユーザーやチームへのシート割り当てと削除
  5. 05組織およびチームの利用指標の確認

活用シーン

  1. 01組織内のCopilotシートと活動状況の把握
  2. 02新メンバーやチームへのシート割り当て
  3. 03不要になったシートの削除
  4. 04組織別・チーム別のCopilot利用状況の確認

インストール

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

$npx skills add https://github.com/okou-ai/okou-skills --skill github-copilot

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

詳細

トラブルシューティング

リクエストに失敗した場合は、okou doctor check-connector --env-name GITHUB_TOKEN または okou doctor check-connector --url https://api.github.com/orgs/your-org/copilot/billing --method GET を実行してください。

使用方法

以下の例はすべて、GITHUB_TOKEN が設定されていることを前提としています。

ベース URL:https://api.github.com

必須ヘッダー:

  • Authorization: Bearer ${GITHUB_TOKEN}
  • Accept: application/vnd.github+json
  • X-GitHub-Api-Version: 2022-11-28
1. Copilot の請求情報を取得する

組織のシートの内訳と設定を取得します。your-org-name を組織名に置き換えてください。

curl -s -X GET "https://api.github.com/orgs/your-org-name/copilot/billing" --header "Authorization: Bearer $GITHUB_TOKEN" --header "Accept: application/vnd.github+json" --header "X-GitHub-Api-Version: 2022-11-28"

レスポンス:

{
  "seat_breakdown": {
  "total": 12,
  "added_this_cycle": 2,
  "pending_cancellation": 0,
  "pending_invitation": 1,
  "active_this_cycle": 12,
  "inactive_this_cycle": 0
  },
  "seat_management_setting": "assign_selected",
  "public_code_suggestions": "block"
}
2. Copilot のすべてのシート割り当てを一覧表示する

Copilot のシートを割り当てられているすべてのユーザーを取得します。your-org-name を組織名に置き換えてください。

curl -s -X GET "https://api.github.com/orgs/your-org-name/copilot/billing/seats?per_page=50" --header "Authorization: Bearer $GITHUB_TOKEN" --header "Accept: application/vnd.github+json" --header "X-GitHub-Api-Version: 2022-11-28" | jq '.seats[] | {login: .assignee.login, last_activity: .last_activity_at}'
3. ユーザーの Copilot シート詳細を取得する

特定のユーザーの Copilot シート情報を取得します。your-org-name を組織名に、username を対象のユーザー名に置き換えてください。

curl -s -X GET "https://api.github.com/orgs/your-org-name/members/username/copilot" --header "Authorization: Bearer $GITHUB_TOKEN" --header "Accept: application/vnd.github+json" --header "X-GitHub-Api-Version: 2022-11-28"
4. Copilot サブスクリプションにユーザーを追加する

特定のユーザーに Copilot シートを割り当てます。your-org-name を組織名に置き換えてください。

/tmp/github_copilot_request.json に書き込みます。

{
  "selected_usernames": ["user1", "user2"]
}

次に、以下を実行します。

curl -s -X POST "https://api.github.com/orgs/your-org-name/copilot/billing/selected_users" --header "Authorization: Bearer $GITHUB_TOKEN" --header "Accept: application/vnd.github+json" --header "X-GitHub-Api-Version: 2022-11-28" --header "Content-Type: application/json" -d @/tmp/github_copilot_request.json

レスポンス:

{
  "seats_created": 2
}
5. Copilot サブスクリプションからユーザーを削除する

特定のユーザーの Copilot シートを削除します。your-org-name を組織名に置き換えてください。

/tmp/github_copilot_request.json に書き込みます。

{
  "selected_usernames": ["user1", "user2"]
}

次に、以下を実行します。

curl -s -X DELETE "https://api.github.com/orgs/your-org-name/copilot/billing/selected_users" --header "Authorization: Bearer $GITHUB_TOKEN" --header "Accept: application/vnd.github+json" --header "X-GitHub-Api-Version: 2022-11-28" --header "Content-Type: application/json" -d @/tmp/github_copilot_request.json

レスポンス:

{
  "seats_cancelled": 2
}
6. Copilot サブスクリプションにチームを追加する

チーム全体に Copilot を割り当てます。your-org-name を組織名に置き換えてください。

/tmp/github_copilot_request.json に書き込みます。

{
  "selected_teams": ["engineering", "design"]
}

次に、以下を実行します。

curl -s -X POST "https://api.github.com/orgs/your-org-name/copilot/billing/selected_teams" --header "Authorization: Bearer $GITHUB_TOKEN" --header "Accept: application/vnd.github+json" --header "X-GitHub-Api-Version: 2022-11-28" --header "Content-Type: application/json" -d @/tmp/github_copilot_request.json
7. Copilot サブスクリプションからチームを削除する

チームから Copilot を削除します。your-org-name を組織名に置き換えてください。

/tmp/github_copilot_request.json に書き込みます。

{
  "selected_teams": ["engineering"]
}

次に、以下を実行します。

curl -s -X DELETE "https://api.github.com/orgs/your-org-name/copilot/billing/selected_teams" --header "Authorization: Bearer $GITHUB_TOKEN" --header "Accept: application/vnd.github+json" --header "X-GitHub-Api-Version: 2022-11-28" --header "Content-Type: application/json" -d @/tmp/github_copilot_request.json
8. 組織の Copilot 使用状況メトリクスを取得する

使用状況の統計情報を取得します(アクティブユーザーが 5 人以上必要です)。your-org-name を組織名に置き換えてください。

curl -s -X GET "https://api.github.com/orgs/your-org-name/copilot/metrics?per_page=7" --header "Authorization: Bearer $GITHUB_TOKEN" --header "Accept: application/vnd.github+json" --header "X-GitHub-Api-Version: 2022-11-28" | jq '.[] | {date, total_active_users, total_engaged_users}'

レスポンス:

{
  "date": "2024-06-24",
  "total_active_users": 24,
  "total_engaged_users": 20
}
9. チームの Copilot メトリクスを取得する

チーム固有の使用状況メトリクスを取得します。your-org-name を組織名に、team-name を対象のチーム名に置き換えてください。

curl -s -X GET "https://api.github.com/orgs/your-org-name/team/team-name/copilot/metrics" --header "Authorization: Bearer $GITHUB_TOKEN" --header "Accept: application/vnd.github+json" --header "X-GitHub-Api-Version: 2022-11-28"

メトリクスのデータ構造

メトリクスのレスポンスには、以下が含まれます。

フィールド説明
total_active_usersCopilot を使用したユーザー
total_engaged_users提案を受け入れたユーザー
copilot_ide_code_completions言語/エディター別のコード補完統計
copilot_ide_chatIDE チャットの使用状況統計
copilot_dotcom_chatGitHub.com チャットの使用状況
copilot_dotcom_pull_requestsPR サマリーの使用状況

ガイドライン

  1. Copilot Business/Enterprise が必要です:無料プランのユーザーはこの API を使用できません
  2. メトリクスには 5 人以上のユーザーが必要です:使用状況メトリクスは、アクティブな Copilot ユーザーが 5 人以上の場合にのみ利用できます
  3. データの保持期間:メトリクスは最大 100 日間利用できます
  4. レート制限:標準の GitHub API レート制限が適用されます
  5. API はプレビュー段階です:一部のエンドポイントは変更される場合があります

コメント