CtrlK
BlogDocsLog inGet started
Tessl Logo

pr-review-analysis

Analyze PR review comments from a GitHub PR URL. Fetch review comments, verify each finding against the actual codebase, assess validity (correct/incorrect/partial), present a structured summary with recommended actions, and optionally reply to each comment on GitHub. Use when given a PR review URL or when asked to check/analyze PR feedback.

75

Quality

93%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

PR Review Analysis

GitHub PR のレビューコメントを取得・分析し、各指摘の妥当性を検証してレポートを出力する。

Workflow

Step 1: レビューコメントの取得

  1. ユーザーから PR の URL またはリポジトリ情報と PR 番号を受け取る
  2. gh api を使ってレビューコメントを取得する:
    gh api repos/{owner}/{repo}/pulls/{number}/reviews
    gh api repos/{owner}/{repo}/pulls/{number}/comments
  3. コメントの一覧をパースし、指摘内容・対象ファイル・行番号を整理する

Step 2: 各指摘の検証

各レビューコメントについて:

  1. 該当コードの確認: 指摘が参照するファイルと行を Read ツールで読む
  2. 指摘内容の分析: レビューアの主張が技術的に正しいか検証する
  3. 妥当性の判定:
    • 正当 (Valid): 指摘が正しく、修正が必要
    • 不当 (Invalid): 指摘が誤っている、または該当しない
    • ⚠️ 部分的に正当 (Partial): 指摘の一部は正しいが、完全には当てはまらない

Step 3: 影響範囲の確認

指摘が参照するパターン(バグ、アンチパターン等)が他のファイルにも存在するか Grep ツールで確認する。 同一パターンが複数箇所にある場合、それらも報告に含める。

Step 4: レポート出力

以下の形式でまとめを出力する:

## PR Review Analysis: #{PR番号}

### Summary
- Total comments: {件数}
- Valid: {件数} | Partial: {件数} | Invalid: {件数}

### Details

| # | File | Severity | Validity | Summary | Action |
|---|------|----------|----------|---------|--------|
| 1 | path/to/file.ts:L42 | Major | ✅ Valid | 説明 | 修正必要 |
| 2 | path/to/file.ts:L100 | Minor | ⚠️ Partial | 説明 | 検討 |

### Detailed Analysis

#### Comment 1: [タイトル]
- **File**: `path/to/file.ts:L42`
- **Reviewer's point**: 指摘内容の要約
- **Verification**: 検証結果の説明
- **Verdict**: ✅ Valid
- **Recommended action**: 具体的な修正方針
- **Same pattern found in**: (該当する場合) 他のファイルパス

...

Step 5: レビューコメントへの返信

レポート出力後、修正対応が完了している場合はレビューコメントへの返信を提案する。

  1. ユーザー確認: 「コメントに返信しますか?」と確認する。ユーザーが承認した場合のみ返信を実行する
  2. 返信内容の生成: 各コメントの Verdict に応じた返信を生成する:
    • ✅ Valid: 修正コミットハッシュを含めて「Fixed in {hash}」形式で返信
    • ⚠️ Partial: 対応した部分と対応しない理由を簡潔に説明
    • ❌ Invalid: 該当しない理由を技術的に説明(例: 自動生成ファイルのため直接編集不可)
  3. 返信の実行: gh api で各コメントに返信する:
    gh api repos/{owner}/{repo}/pulls/{number}/comments \
      -f body='{返信内容}' \
      -F in_reply_to={comment_id}
  4. Outside-diff コメントの対応: インラインコメントとして返信できない指摘(outside-diff)は、関連するインラインコメントのスレッドにまとめて返信する

Notes

  • Bot によるレビュー(CodeRabbit, GitHub Actions 等)と人間のレビューの両方に対応する
  • レビューコメントに対する返信スレッドも考慮する
  • 指摘の severity(重大度)はレビューコメントのラベルまたは内容から推定する
  • 日本語で出力する(コード・パス等の技術用語は原文のまま)
Repository
breaking-brake/cc-wf-studio
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.