copilot について
`gh agent-task`とGitHubのPull Request APIを使ってGitHub Copilotのエージェントタスクを管理するスキルです。タスク作成、セッションのポーリング、レビューコメントの一括送信、ワークフロー承認を扱います。
主な機能
- 01テキストやMarkdownからエージェントタスクを作成
- 02Copilotセッションを完了までポーリング
- 03レビューコメントをまとめて送信
- 04Copilotのコミットに伴うワークフローを承認
活用シーン
- 01PRの説明からCopilotタスクを開始
- 02エージェントセッションの完了を追跡
- 03CopilotにまとめたPRフィードバックを送信
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ mlflow/ mlflow --skill copilotインストール後、Claude Code で/copilotを入力して読み込まれたか確認します。
同梱ファイルapprove.shpoll.sh
詳細
例
# Create a task with an inline description
gh agent-task create "<task description>"
# Create a task from a markdown file
gh agent-task create -F task-desc.md
作成後
セッション URL と PR URL の両方を出力します(セッション URL から /agent-sessions/... を削除します)。
例:
- セッション:https://github.com/mlflow/mlflow/pull/20905/agent-sessions/abc123
- PR:https://github.com/mlflow/mlflow/pull/20905
完了までのポーリング
Copilot が作業を開始したら、Copilot が完了するまでバックグラウンドでポーリングします。スクリプトは PR の最新セッションを自動的に見つけます。
bash .claude/skills/copilot/poll.sh "<owner>/<repo>" <pr_number>
フィードバックの送信
PR に変更が必要な場合は、すべてのフィードバックを 1 つのレビューにまとめ、各コメントに @copilot を含めて 1 回のセッションですべて対応できるようにします。
gh api repos/<owner>/<repo>/pulls/<pr_number>/reviews --input - <<'EOF'
{
"event": "COMMENT",
"comments": [
{
"path": "<file_path>",
"line": <line_number>,
"side": "RIGHT",
"body": "@copilot <comment>",
// ... more params
},
// ... more comments
]
}
EOF
フィードバックを送信すると、Copilot は新しいセッションを開始します。通常は約 10 秒以内に開始されます。新しいセッションが検出されるよう、ポーリングを開始する前に少なくとも 15 秒待ちます。
ワークフローの承認
セキュリティ上の理由から、Copilot のコミットではワークフローを実行するための承認が必要ですが、メンテナーのコミットでは不要です。PR の準備が完了したら、承認スクリプトを実行します。
bash .claude/skills/copilot/approve.sh "<owner>/<repo>" <pr_number>
コメント
Markdown 対応