Install
1
Run in your terminal$
npx claudepluginhub hiragram/claude-code-plugins --plugin code-reviewTool Access
This skill uses the workspace's default tool permissions.
Supporting Assets
View in Repositoryreferences/code-quality.mdreferences/documentation.mdreferences/performance.mdreferences/security.mdreferences/test-coverage.mdSkill Content
PR Review スキル
GitHub Pull Requestを5つの専門エージェントで並列レビューし、インラインコメントで指摘を投稿します。
概要
このスキルは以下の5つの観点でPRをレビューします:
- コード品質 - クリーンコード、命名規則、エラーハンドリング
- パフォーマンス - アルゴリズム複雑度、メモリ管理、N+1問題
- テストカバレッジ - テストの有無、エッジケース、境界値テスト
- ドキュメント正確性 - コメントとコードの整合性、API文書
- セキュリティ - OWASP Top 10、入力検証、認証認可
各観点は独立したサブエージェントが担当し、並列実行されます。
使い方
/review-pr [owner/repo] [pr-number]
例
/review-pr anthropics/claude-code 123
GitHub Actions環境での使用
GitHub Actions環境では、引数を省略すると環境変数から自動取得します:
GITHUB_REPOSITORY→ owner/repoPR_NUMBERまたはGITHUB_EVENT_PATHから → pr-number
実行フロー
┌─────────────────────────────────────────────────────────────┐
│ /review-pr 実行 │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 1. プロジェクトルール読み込み (CLAUDE.md) │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 2. PR情報取得 (gh pr view, gh pr diff) │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 3. 5つのサブエージェントを並列起動 │
│ │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ code-quality│ │ performance │ │test-coverage│ │
│ │ -reviewer │ │ -reviewer │ │ -reviewer │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ │
│ ┌─────────────────────┐ ┌─────────────────────┐ │
│ │ documentation- │ │ security-code- │ │
│ │ accuracy-reviewer │ │ reviewer │ │
│ └─────────────────────┘ └─────────────────────┘ │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 4. 各エージェントがインラインコメントを投稿 │
│ (mcp__github_inline_comment__create_inline_comment) │
└─────────────────────────────────────────────────────────────┘
実行手順
Step 1: 情報収集
まず、必要な情報を収集します。
-
プロジェクトルールの読み込み
- CLAUDE.mdがあれば読み込み、プロジェクト固有のルールを把握
-
PR情報の取得
gh pr view [pr-number] --repo [owner/repo] --json title,body,additions,deletions,changedFiles gh pr diff [pr-number] --repo [owner/repo] -
引数の解析
$ARGUMENTSを解析して owner/repo と pr-number を取得- または環境変数
GITHUB_REPOSITORY、PR_NUMBERから取得
-
既存レビューコメントの取得(レビュー対応追跡用)
gh api repos/{owner}/{repo}/pulls/{pr-number}/comments- すべてのレビューコメント(Claude + 人間)を取得
in_reply_to_idが null のコメント = スレッドの親コメント
Step 2: サブエージェントの並列実行
以下の5つのエージェントを同時に(単一メッセージで複数のTaskツール呼び出し)起動します:
| エージェント | 役割 |
|---|---|
code-quality-reviewer | コード品質・可読性・エラーハンドリング |
performance-reviewer | パフォーマンス・メモリ管理・アルゴリズム |
test-coverage-reviewer | テストカバレッジ・テスト品質 |
documentation-accuracy-reviewer | ドキュメント・コメントの正確性 |
security-code-reviewer | セキュリティ脆弱性・認証認可 |
各エージェントには以下を渡します:
- PR diff(変更差分)
- プロジェクトルール(CLAUDE.mdの内容、あれば)
- owner/repo と pr-number
Step 3: レビュー完了の確認
全エージェントが完了したら、レビュー結果をサマリーとしてまとめます。
Step 4: 既存レビューコメントの対応状況確認(レビュー対応追跡)
Step 1で取得した既存レビューコメントがある場合、各コメントの対応状況を確認し、フォローアップコメントを投稿します。
┌─────────────────────────────────────────────────────────────┐
│ 1. 親コメントのフィルタリング │
│ - in_reply_to_id が null のコメントを抽出 │
│ - すでにフォローアップ済み(返信がある)ものは除外可能 │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 2. 各コメントの対応状況を確認 │
│ - コメントの path(ファイル名)と line(行番号)を取得 │
│ - 現在のコードと指摘内容を比較 │
│ - 指摘が修正されているか判定 │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 3. フォローアップコメントを投稿 │
│ - 元のコメントへの返信として投稿 │
│ - gh api で POST /repos/{owner}/{repo}/pulls/{pr}/comments│
│ body に { "body": "...", "in_reply_to": コメントID } │
└─────────────────────────────────────────────────────────────┘
フォローアップコメントの形式
対応済みの場合:
## ✅ 対応確認
この指摘は修正されています。
- **修正内容**: [具体的な修正の説明]
---
_🤖 Claude Code Review - follow-up check_
追加対応が必要な場合:
## ⚠️ 追加対応が必要
この指摘はまだ完全には対応されていません。
- **現状**: [現在のコード状態]
- **残課題**: [まだ対応が必要な点]
---
_🤖 Claude Code Review - follow-up check_
確認不能な場合(ファイル削除等):
## ℹ️ 確認不能
対象のコードが削除または移動されたため、対応状況を確認できません。
---
_🤖 Claude Code Review - follow-up check_
インラインコメントの形式
各エージェントは以下の形式でインラインコメントを投稿します:
## 🔍 [レビュー観点名]
**問題**: [問題の説明]
**影響**: [潜在的な影響]
**提案**:
```suggestion
[修正コード]
🤖 Claude Code Review - [agent-name]
## 注意事項
- **注目すべき問題のみ指摘**: 軽微な問題や好みの問題は指摘しません
- **具体的な改善案**: 可能な限り `suggestion` ブロックで修正コードを提供
- **プロジェクトルール尊重**: CLAUDE.mdで定義されたルールに従います
- **GitHub Actions環境が必要**: `github_inline_comment` MCPはGitHub Actions環境で自動提供されます
## インラインコメントの位置ルール
**重要**: コメントは原則として**追加行(+)側**に付けてください。
| diffの状態 | コメント位置 |
|-----------|-------------|
| 追加行のみ(+) | その追加行にコメント |
| 変更(-と+のペア) | **追加行(+)側**にコメント |
| 削除のみ(-) | 削除行にコメント(これのみ許可) |
```diff
例:
- const oldValue = "foo"; ← 削除のみの場合はここにコメント可
+ const newValue = "bar"; ← 通常はここにコメント(変更の場合も追加側)
+ function newFunction() { ← 新規追加はここにコメント
+ return "hello";
+ }
理由: 削除側にコメントすると、コードが存在しない状態への指摘になり、修正すべき箇所が不明確になります。追加側にコメントすることで、「このコードをこう直してください」という明確な指示になります。
関連ドキュメント
各レビュー観点の詳細は以下を参照:
Similar Skills
Stats
Parent Repo Stars1
Parent Repo Forks0
Last CommitJan 26, 2026