zudo-paper

GitHub Copilot CLIをClaude Codeのサブエージェントとして使う

Author: Takazudo | 作成: 2026/04/14

概要

GitHub CopilotをClaude Codeのサブエージェントとして組み込んだ。Copilot CLIを -p フラグでノンインタラクティブに呼び出し、コードレビュー・リサーチ・セカンドオピニオンといったタスクを委任する構成にした。導入自体は簡単で、既存のワークフローにも足しやすい。そのまとめ。

GitHub Copilotとは

GitHub CopilotはGitHubが提供するAIコーディングアシスタント。VS CodeやJetBrainsなどのエディタ統合が有名だが、CLIツールとしても提供されている。

以前は gh copilot というGitHub CLI拡張の形だったが、2025年10月に非推奨になり、現在はスタンドアロンの copilot コマンドに移行している。2026年2月にGA(一般公開)となった。

インストール方法:

# Shell script
curl -fsSL https://gh.io/copilot-install | bash

# Homebrew
brew install copilot-cli

# npm
npm install -g @github/copilot

CLIは対話的なチャットモードだけでなく、-p フラグでワンショットのプロンプト実行ができる。これがサブエージェントとして使う上での基盤になる。

Premium Requestの仕組み

GitHub Copilotには「Premium Request」という課金単位がある。Copilot Chat、エージェントモード、コードレビュー、CLI操作などでプロンプトを送るたびに消費される。

モデルごとの消費倍率

全てのモデルが同じコストではなく、モデルごとに倍率(multiplier)が設定されている。有料プランの場合、一部のモデルは倍率0(つまり無料)で使える。

モデル有料プラン倍率備考
GPT-4.10(無料)含まれるモデル
GPT-4o0(無料)含まれるモデル
GPT-5 mini0(無料)含まれるモデル
Claude Haiku 4.50.33軽量で安い
Claude Sonnet 4 / 4.5 / 4.61標準的な消費
Gemini 2.5 Pro1標準的な消費
Claude Opus 4.5 / 4.63高コスト

倍率0のモデル(GPT-4.1、GPT-4o、GPT-5 mini)はPremium Requestを消費しない。つまり月間の枠を気にせず使える。

プランごとの月間枠

プラン月額Premium Request/月
Copilot Free$050
Copilot Pro$10300
Copilot Pro+$391,500
Copilot Business$19/ユーザー300/ユーザー
Copilot Enterprise$39/ユーザー1,000/ユーザー

枠は毎月1日UTC 00:00にリセットされる。繰り越しはない。有料プランでは超過分を1リクエスト$0.04で購入する設定も可能。

他のAIエージェントからの呼び出し方

Copilot CLIをスクリプトや他のAIエージェントから呼び出すには、-p フラグを使う。

基本的なコマンド

copilot -p "プロンプトをここに" -s

-p はプロンプトを渡してノンインタラクティブに実行するフラグ。-s は統計情報などを省いてエージェントの応答のみを出力する。

スクリプティング向けのフラグ

フラグ説明
-p "prompt"プロンプトを渡してワンショット実行
-sエージェント応答のみを出力
--no-ask-userユーザーへの確認を無効化(自律実行用)
--model MODEL使用するモデルを指定
--allow-all-tools全ツールを確認なしで許可
--deny-tool='TOOL'特定ツールを禁止(allowより優先)

自分の場合、Claude Codeのスキルから呼び出す際は以下のような形になる:

copilot \
  -p "$FULL_PROMPT" \
  -s \
  --no-ask-user \
  --model claude-opus-4.6 \
  --deny-tool='write' \
  --allow-all-tools \
  > "$OUTPUT_FILE" \
  2>"$STDERR_FILE"

--deny-tool='write' で書き込み系ツールを禁止し、--allow-all-tools でそれ以外は全て許可する。読み取りやWeb検索は自由にやらせるが、ファイルの変更はさせないという方針。

パイプ入力

標準入力からのパイプも対応している:

echo "このコードをレビューして" | copilot -s

レートリミットとAPIエラーへの対処

Premium Request枠を使い切った場合

有料プランでPremium Requestの月間枠を使い切ると、自動的にGPT-4.1にフォールバックする。GPT-4.1は倍率0のモデルなので、枠がなくても引き続き使える。Free版の場合は月間リセットまで待つか、有料プランへのアップグレードが必要になる。

短期的なレートリミット

月間枠とは別に、短期的なレートリミットもある。短時間に大量のリクエストを送ると一時的にブロックされる。具体的な閾値は公開されていないが、少し待てば解除される。

自分のワークフローでの対処

Claude Codeのスキルから呼び出す場合、Copilotが落ちたりレートリミットに引っかかったりするケースは想定しておく必要がある。自分は以下のような対処をしている。

レートリミットのトラッカーを用意した:

# 実行前のチェック
RATE_CHECK=$(node $HOME/.claude/scripts/gco-rate-limit.js check 2>&1)
RATE_EXIT=$?
# exit 0 = OK、exit 1 = レートリミット中

出力のチェック:

# 実行後、出力ファイルにレートリミットのメッセージが含まれていないか確認
node $HOME/.claude/scripts/gco-rate-limit.js check-output \
  "$OUTPUT_FILE" "$STDERR_FILE"

レートリミットが検出されたら、ロックアウトファイルを書き込んで一定時間(デフォルト60分)Copilotの呼び出しをスキップする。再試行して同じエラーを繰り返すのを防ぐ仕組み。

ワークフローへの組み込み: 自分の場合

自分はClaude Codeのスキル(カスタムコマンド)を大量に作っていて、開発ワークフローの大半を自動化している。Copilotの組み込みもスキルの形で行った。

作ったスキル

スキル用途
/gco汎用。Copilotに読み取り専用でタスクを委任
/gco-reviewコードレビュー。PRのdiffをCopilotに渡してレビューさせる
/gco-researchWebリサーチ。CopilotのWeb検索機能を使って調査
/gco-2ndセカンドオピニオン。実装プランをCopilotに見せてフィードバックをもらう

共通の設計方針

全スキルに共通する方針は以下の通り。

読み取り専用の原則として、--deny-tool='write' に加えて、プロンプトの先頭に読み取り専用の指示を入れている:

RO_PREAMBLE="You are operating in read-only mode. Your role is research and review only.
Rules:
- Never create, edit, or delete files
- Never run commands that modify the system
- You may run read-only commands: cat, ls, grep, git log, git diff, etc.
- You may search the web for research
- Provide analysis, suggestions, and findings as text output only"

--deny-tool='write' はツールレベルのハードブロックで、プロンプトの指示はソフトな制約。二重に防御している。

タイムアウトは15分。timeout コマンド(Linux)または gtimeout(macOS)で実装。

サイレントフォールバックとして、Copilotが失敗した場合はClaude Codeのサブエージェントにフォールバックする。ユーザーにはCopilotが失敗したことを報告しない。何が裏で動いているかを気にせず、結果だけを受け取れるようにしている。

導入のハードルは低い

自分のワークフロー自体は相当に複雑だが、Copilotの組み込み自体はシンプルだった。やっていることは結局:

  1. copilot -p "..." -s --no-ask-user --deny-tool='write' --allow-all-tools でワンショット実行
  2. 出力をファイルにキャプチャ
  3. Claude Code側で結果を読んで統合

これだけ。スキルのSKILL.mdにCopilotを呼ぶシェルコマンドを書いて、タイムアウトとフォールバックを足すだけで動く。同じことはOpenAI Codex CLIでもやっていて(別記事参照)、構造は共通。

まとめ

自分はもともとPremium RequestをGitHub上のCopilot PRレビュー機能に使っていた。ただ、AIエージェントが急速に発達した今、PRの画面上でレビューを待つのは遅すぎる。適切なコンテキストを渡してローカルで実行したほうが良い結果が得られる。

Claude CodeやCodex CLIのようなローカルのAIエージェントからCopilot CLIを呼び出す方がPremium Requestの使い道としては効率的だろうと考えている。この記事を書くにあたっても、Premium Requestの仕様やCLIの正確なフラグ情報を /gco-research で調べた。Copilot自身に自分のことを調べさせるという構図になっている。