| description |
|---|
GitHub PRをレビューしてマージ判定を行う |
$ARGUMENTS
指定されたGitHub PRをレビューし、マージ可否を判定してください。
引数からPR番号またはURLを解析し、以下のコマンドでPR情報を取得:
# PR詳細
gh pr view <PR番号> --json title,body,state,author,additions,deletions,files,headRefName,baseRefName
# 差分
gh pr diff <PR番号>
# CI状況
gh pr checks <PR番号>以下の観点でコードをレビューしてください:
- 意図した変更が正しく実装されているか
- 破壊的変更がないか
- エッジケースの考慮
- CLAUDE.mdのルールに準拠しているか
- 未使用コード・デッドコードがないか
- 適切なエラーハンドリング
- SQLインジェクション、XSSなどの脆弱性
- 機密情報の露出
- 認証・認可の問題
- テストが追加・更新されているか
- 既存テストへの影響
- CIがパスしているか
- 失敗しているチェックがある場合、コードの問題か外部要因かを判断
以下の形式で出力してください:
## PR #<番号> Review: <タイトル>
### 概要
<PRの変更内容を簡潔に説明>
---
### 良い点
<箇条書きで記載>
---
### 懸念点・確認事項
<重要度と共に記載>
---
### 軽微な指摘
<あれば記載>
---
### CI状況
| チェック | 状態 | 備考 |
|----------|------|------|
| Build | pass/fail | |
| Tests | pass/fail | |
| Lint | pass/fail | |
| その他 | pass/fail | |
---
### 結論
<総評>最後に以下の形式でスコアを出力:
## マージ判定: **XX点**
### 内訳
| 項目 | 点数 | 理由 |
|------|------|------|
| コード品質 | /20 | |
| 破壊的変更リスク | /20 | |
| テスト | /20 | |
| 意図の明確さ | /20 | |
| レビュー容易性 | /20 | |
### 結論
<マージ可否の判断と理由。CI状況も考慮すること>- 80-100点: マージOK
- 60-79点: 軽微な修正後マージ可
- 0-59点: 要修正
スコアが80点以上の場合、AskUserQuestionツールを使って次のアクションを確認してください:
質問: "このPRをどうしますか?"
選択肢:
- Approve + マージする (推奨)
- Approveのみ
- 何もしない
以下のコマンドを実行:
gh pr review <PR番号> --approve --body "LGTM
<変更内容への感謝を1行で簡潔に>"以下のコマンドを実行:
gh pr merge <PR番号> --squash --delete-branchレビューで懸念点や改善提案がある場合、AskUserQuestionツールを使ってコメントパターンを提示してください。
以下の3パターンを生成し、ユーザーに選択させる:
- 簡潔版: 要点のみを1-2文で伝える
- 詳細版: 背景・理由・具体例を含めて丁寧に説明
- 提案付き版: 具体的な改善案やコード例を含める
質問: "PRにどのコメントを投稿しますか?"
選択肢:
- パターン1: <簡潔版の要約>
- パターン2: <詳細版の要約>
- パターン3: <提案付き版の要約>
- コメントしない
ユーザーが選択したパターンに基づいて、以下のコマンドでコメントを投稿:
gh pr comment <PR番号> --body "<選択されたコメント内容>"