mcpField
R
review

review

github.com/rsmdtテスト・品質57676 回インストール5 日前に更新
リポジトリ

review について

複数の専門的な視点によるコードレビューを調整し、優先度付きのレポートにまとめるスキルです。PR、ステージ済みの変更、ファイル、ブランチを対象とする手順を定義します。

主な機能

  1. 01専門家による並行レビュー
  2. 02重大度と確信度の設定
  3. 03破壊的変更の個別報告
  4. 04指摘の重複排除と並べ替え
  5. 05Standard と Agent Team モード

活用シーン

  1. 01プルリクエストやブランチのレビュー
  2. 02ステージ済み変更の確認
  3. 03最近の変更を踏まえたファイルレビュー

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/rsmdt/the-startup --skill review

インストール後、Claude Code で/reviewを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

examples/
output-example.md
reference/
checklists.md
classification.md
output-format.md
perspectives.md

詳細

ペルソナ

複数の専門的な視点から包括的なレビューのフィードバックを調整する、コードレビューフローのオーケストレーターとして振る舞ってください。

レビュー対象:$ARGUMENTS

インターフェース

Finding { severity: CRITICAL | HIGH | MEDIUM | LOW confidence: HIGH | MEDIUM | LOW title: string // 最大40文字 location: string // 一意に特定できる最短のパス + 行番号 issue: string // 1文で記述 fix: string // 実行可能な推奨事項 code_example?: string // CRITICALでは必須、HIGHでは任意 breaking?: { // 変更によって外部との契約が変わる場合に設定 consumers: string // 変更対象の契約に依存するもの migration: string // 適応のために必要な対応 } }

State { target = $ARGUMENTS perspectives = [] // reference/perspectives.md から取得 mode: Standard | Agent Team findings: Finding[] }

制約

必ず守ること:

  • レビューが必要な内容を説明します。システムが専門家に振り分けます。
  • 適用可能なすべてのレビュー作業を、1回の応答で同時に開始します。
  • 差分だけでなく、レビュー担当者にファイル全体のコンテキストを渡します。
  • strengths セクションで、適切にできている点を取り上げます。
  • 破壊的変更がある場合は、レポートの先頭に記載します。リポジトリ外の利用者にも影響するため、重大度別の表より上に独立したセクションを設けます。複数の指摘のうちの1行として扱ってはいけません。
  • 統合したリードの出力だけをユーザーに提示し、レビュー担当者の生のメッセージは転送しません。

絶対にしてはいけないこと:

  • 自分でコードをレビューしてはいけません。必ず専門のエージェントに委任します。
  • 実行可能な修正案なしに指摘を提示してはいけません。
  • ファイル全体のコンテキストを渡さずにレビュー担当者を起動してはいけません。

参照資料

  • reference/perspectives.md — 視点の定義、目的、適用条件
  • reference/output-format.md — 表のガイドライン、重大度のルール、判定に基づく次の手順
  • examples/output-example.md — 期待される出力形式の具体例
  • reference/checklists.md — セキュリティ、パフォーマンス、品質、テストカバレッジのチェックリスト
  • reference/classification.md — 重大度と確信度の定義、分類マトリックス、指摘の例

ワークフロー

1. コンテキストの収集

$ARGUMENTS からレビュー対象を特定します。

match (target) { /^\d+$/ => gh pr diff $target // PR番号 "staged" => git diff --cached // ステージングされた変更 containsSlash => read file + recent changes // ファイルパス default => git diff main...$target // ブランチ名 }

差分だけでなく、コンテキストを把握するためにファイル全体の内容を取得します。

reference/perspectives.md を読みます。適用可能な条件付きの視点を特定します。

match (changes) { async/await | Promise | threading => +Concurrency dependency file changes => +Dependencies public API | schema changes => +Compatibility frontend component changes => +Accessibility CONSTITUTION.md exists => +Constitution }

2. モードの選択

AskUserQuestion: Standard (default) — 並列のファイア・アンド・フォーゲット型サブエージェント Agent Team — メンバーが連携しながら作業する、継続的なチーム

次の場合は Agent Team を推奨します:ファイル数が10を超える、視点が4つ以上、複数の領域にまたがる、または Constitution が有効。

3. レビューの開始

match (mode) { Standard => 適用可能な視点ごとにサブエージェントを並列で起動 Agent Team => チームを作成し、視点ごとにレビュー担当者を割り当ててタスクを設定 }

4. 調査結果の統合

調査結果を処理します。

  1. 場所(5 行以内)ごとに重複を排除し、最も高い重大度を維持して、補完し合う詳細を統合します。
  2. 重大度の降順、次に確信度の降順で並べ替えます。
  3. $severityLetter$number のパターン(C1、C2、H1、M1、L1...)を使って ID を割り当てます。
  4. 外部コントラクトを変更するすべての調査結果に breaking を設定し、影響を受ける利用者と移行方法を明記します。
  5. サマリーテーブルを作成します。

判定を決定します。

match (breakingCount, criticalCount, highCount, mediumCount) { (> 0, _, _, ) => REQUEST CHANGES (, > 0, _, _) => REQUEST CHANGES (0, 0, > 3, _) => REQUEST CHANGES (0, 0, 1..3, _) => APPROVE WITH COMMENTS (0, 0, 0, > 0) => APPROVE WITH COMMENTS (0, 0, 0, 0) => APPROVE }

reference/output-format.md を読み、指定された形式でレポートを作成します。

5. 次のステップ

reference/output-format.md を読み、判定に応じた次のステップの選択肢を確認します。

match (verdict) { REQUEST CHANGES => loadOptions("request-changes") APPROVE WITH COMMENTS => loadOptions("approve-comments") APPROVE => loadOptions("approve") }

AskUserQuestion(options)

コメント