PRにレビューコメントが付いたら呼び出す。レビュー対応、返信作成、スレッドresolveまで一貫してサポート。「レビュー対応して」「PRレビューに返信」で起動。
GitHub Pull Requestのレビューコメントに対して、適切な判断と返信を行い、スレッドをresolveするまでの一連のワークフローをサポートするスキル。
以下のコマンドは絶対に使用しないこと:
# 禁止: gh api を直接使用
gh api /repos/{owner}/{repo}/pulls/{pr_number}/comments
gh api graphql -f query="..."
gh api /repos/{owner}/{repo}/pulls/comments/{comment_id}/replies -X POST
# 代わりに: 必ず ./scripts/ 配下のスクリプトを使用する
./scripts/get-review-comments.sh owner repo 123
./scripts/reply-to-comment.sh owner repo 123 comment_id "返信内容"
理由:
このスキルでは、./scripts/ 配下の以下のスクリプトを使用する:
| スクリプト | 役割 |
|---|---|
parse-pr-url.sh |
PR URLからowner/repo/pr_numberを抽出 |
get-review-comments.sh |
レビューコメント一覧を取得 |
reply-to-comment.sh |
コメントに返信を投稿 |
get-review-threads.sh |
レビュースレッドID・状態を取得(GraphQL) |
resolve-threads.sh |
スレッドを一括resolve(GraphQL) |
PR URLからリポジトリ情報を抽出する。
# PR URLをパース
./scripts/parse-pr-url.sh "https://github.com/owner/repo/pull/123"
# Output: {"owner": "owner", "repo": "repo", "pr_number": 123}
PRのレビューコメントを取得し、内容を確認する。
# 詳細なJSON形式で取得
./scripts/get-review-comments.sh owner repo 123
# 簡潔なサマリー形式で取得
./scripts/get-review-comments.sh owner repo 123 --format=summary
各コメントについて以下を確認:
各レビューコメントについて、対応するかどうかを判断する。
以下の基準で判断:
テストカバレッジの指摘
エラーハンドリングの指摘
対応が必要なコメントについて、コードを修正してコミットする。
# 修正をコミット
git add <modified_files>
git commit -m "fix: <コミットメッセージ>
<修正内容の説明>
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
# リモートにpush
git push origin <branch_name>
すべてのレビューコメントに対して、返信を作成する。すべてのコメントに返信することが重要。
対応済みの場合:
修正しました (<commit_hash>)
<具体的な修正内容の説明>
対応しない場合:
この件は対応しません
**理由:**
- <理由1>
- <理由2>
<補足説明>
間接的に対応済みの場合:
対応済み (<commit_hash>)
コメント#X の修正で、<具体的な対応内容>。これにより<問題が解決した理由>。
# コメントに返信(コメントIDを使用)
./scripts/reply-to-comment.sh owner repo 123 <comment_id> "返信内容"
すべてのコメントに返信したら、レビュースレッドをresolve状態にする。
# スレッド情報を取得
./scripts/get-review-threads.sh owner repo 123
# 未解決のスレッドのみ取得
./scripts/get-review-threads.sh owner repo 123 --unresolved-only
# スレッドをresolve(単一)
./scripts/resolve-threads.sh "PRRT_kwDOQ8GWfs5p4t_j"
# スレッドを一括resolve(複数)
./scripts/resolve-threads.sh "PRRT_kwDOQ8GWfs5p4t_e" "PRRT_kwDOQ8GWfs5p4t_h" "PRRT_kwDOQ8GWfs5p4t_j"
詳細なスクリプト使用例は references/github-api-examples.md を参照してください。