gh copilot CLI セットアップ・機能比較調査まとめ
📁 docs/dev-environment/artifact/20260426_000000_gh_copilot_CLI_機能比較調査まとめ.md
作成日: 2026-04-26
関連Issue: #394
1. セットアップ手順
前提条件
gh CLI バージョン 2.88.1 以降(gh copilot サブコマンドが内蔵済み) - GitHub Copilot サブスクリプション(Free プランでは CLI 使用不可、Student/Pro 以上が必要)
実施手順
# Step 1: Copilotスコープをトークンに追加
gh auth refresh --scopes copilot
# Step 2: 動作確認(初回は自動ダウンロードが走る)
gh copilot -p "hello"
# Step 3: インタラクティブモードで起動
gh copilot
インストール先
- Copilot CLI 本体:
~/.local/share/gh/copilot/ - 設定ディレクトリ:
~/.copilot/
2. 設定ファイル構成
~/.copilot/
├── config.json # ユーザー設定(theme, model, statusLine, hooks等)
├── mcp-config.json # MCPサーバー設定(手動作成)
├── settings.json # ユーザー設定(直接編集用)
├── logs/ # ログファイル
└── session-state/ # セッション状態
リポジトリ内:
├── AGENTS.md # カスタム指示(Claude CodeのCLAUDE.mdに相当)
├── .github/
│ ├── copilot-instructions.md # プロジェクト指示(別形式)
│ └── hooks/
│ └── hooks.json # フック設定
3. Claude Code との機能比較表
| 機能 | Claude Code | gh copilot CLI | 備考 |
| プロジェクト指示 | CLAUDE.md | AGENTS.md / .github/copilot-instructions.md | ✅ 流用可(変換済み) |
| ユーザー設定 | ~/.claude/settings.json | ~/.copilot/config.json | ほぼ同等 |
| MCPサーバー | プラグイン設定 | ~/.copilot/mcp-config.json | ✅ 移植可 |
| ステータスライン | statusline.py | config.json の statusLine.command | ✅ 両対応(同じscript形式) |
| フック | settings.json → hooks | config.json の hooks / .github/hooks/*.json | ✅ 同等機能あり |
| パーミッション設定 | settings.json | --allow-tool フラグ + config.json | 設計思想が異なる |
| スキル | ~/.claude/skills/ | /skills コマンド | 要調査 |
| メモリ(会話間永続) | memory/ ディレクトリ | /resume・--name でセッション再開 | Claude Codeが優れる |
| エディタ統合 | ○(拡張機能) | /ide コマンドで接続 | 両対応 |
| アジェンティック | ○(フル) | ○(-p + --allow-all-tools) | 両対応 |
| Planモード | ○ | ○(--plan / /plan) | 両対応 |
| セッション管理 | なし(会話単位) | --resume、--name で名前付け | Copilotが優れる |
| PR操作 | gh CLI経由 | /pr、/delegate でネイティブ | Copilotが優れる |
| チーム共有 | なし | --share-gist、/delegate | Copilotが優れる |
| 並列サブエージェント | Agent tool | /fleet モード | 両対応 |
| モデル選択 | Opus/Sonnet/Haiku | Claude + GPT系(多数) | Copilotが幅広い |
| 日本語対応 | ○ | ○(確認済み) | 両対応 |
4. gh copilot CLI 主要オプション
# 基本的な使い方
gh copilot # インタラクティブモード
gh copilot -p "タスク内容" # 非インタラクティブ(単発実行)
gh copilot -p "タスク" --allow-all # 全権限付与(--yolo と同じ)
gh copilot --plan # Planモードで起動
gh copilot --model claude-sonnet-4.6 # モデル指定
# セッション管理
gh copilot --name "作業名" # セッションに名前をつける
gh copilot --resume # 直近セッションを再開
gh copilot --resume="作業名" # 名前でセッション再開
gh copilot --continue # 最新セッションを継続
# パーミッション制御
gh copilot --allow-tool='shell(git:*)' # gitコマンド全許可
gh copilot --deny-tool='shell(git push)' # git pushのみ禁止
gh copilot --allow-all-tools # ツール全許可
gh copilot --allow-all-paths # パス制限なし
# MCPサーバー
gh copilot --additional-mcp-config @mcp.json # 追加MCPサーバー設定
# セッション共有
gh copilot -p "タスク" --share # Markdownファイルに保存
gh copilot -p "タスク" --share-gist # GitHub Gistに共有
5. インタラクティブモードの主要コマンド
| コマンド | 説明 |
/model | AIモデルを切り替え |
/skills | スキル管理 |
/mcp | MCPサーバー管理 |
/ide | IDEと接続 |
/pr | PRを操作 |
/delegate | GitHubにタスクを委託してPR作成 |
/fleet | 並列サブエージェントモード |
/review | コードレビュー |
/diff | 変更差分を確認 |
/resume | セッション切り替え |
/compact | コンテキストを圧縮 |
/share | セッションをMarkdown/Gistに保存 |
/instructions | カスタム指示の確認・切替 |
/statusline | ステータスライン設定 |
6. Claude Code との使い分け推奨
| シーン | 推奨ツール | 理由 |
| 長期プロジェクト・記憶重視 | Claude Code | memoryシステムが強力 |
| PR作成・GitHub連携 | gh copilot | /delegate・/prがネイティブ |
| セッション再開・中断再開 | gh copilot | --resumeで柔軟に管理 |
| スキル・フック自動化 | Claude Code | 設定が成熟している |
| チームへの共有・報告 | gh copilot | --share-gistで即座に共有 |
| モデルの柔軟な切り替え | gh copilot | GPT/Claudeを同一UIで選択可 |
7. 今後の作業