mcpField
R
review-swarm

review-swarm

github.com/dimillianテスト・品質4.0k762 回インストール30 週間前に更新
リポジトリ

review-swarm について

コード差分を4つの読み取り専用サブエージェントで並行レビューする、レビュー専用スキルです。メインエージェントが重要な指摘を選別して優先順位を付け、ファイルを変更せずに対応方針を示します。

主な機能

  1. 014分野の並列読み取り専用レビュー
  2. 02差分の範囲と意図の確認
  3. 03影響のある指摘の選別
  4. 04重大度と確度による優先順位付け
  5. 05実行可能な次の対応の提案

活用シーン

  1. 01マージ前の変更レビュー
  2. 02差分のセキュリティ・プライバシー確認
  3. 03回帰や互換性の懸念の評価

インストール

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

$npx skills add https://github.com/dimillian/skills --skill review-swarm

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

同梱ファイルagents/openai.yaml

詳細

レビュースウォーム

4 つの読み取り専用サブエージェントで差分を並行してレビューし、その後、メインエージェントが重要な問題だけを選別し、順序を整えて要約します。このスキルはレビュー専用です。サブエージェントはファイルを編集せず、メインエージェントもこのワークフローでは修正を適用しません。

ステップ 1:範囲と意図を特定する

次の順で範囲を優先します。

  1. ユーザーが明示的に指定したファイルまたはパス
  2. 現在の Git 変更
  3. ユーザーがレビューを依頼した、明示的なブランチ、コミット、または PR の差分
  4. ユーザーがレビューを依頼していて、より明確な差分がない場合に限り、最近変更された追跡対象ファイル

レビュー範囲が明確でない場合は、作業を止め、その旨を簡潔に伝えます。

Git の変更を使う場合は、正しい範囲を対象とする最小の差分コマンドを選びます。

  • ステージされていない作業:git diff
  • ステージ済みの作業:git diff --cached
  • ステージ済みとステージされていない作業が混在:両方をレビュー
  • 明示的なブランチまたはコミットの比較:ユーザーが指定した内容をそのまま使用

レビュー担当者を起動する前に、変更対象に最も近いローカルの指示と、対象領域に関連するプロジェクトドキュメントを読みます。例:

  • AGENTS.md
  • リポジトリのワークフロードキュメント
  • 変更対象モジュールのアーキテクチャまたは契約に関するドキュメント

レビュー担当者に渡す簡潔な意図パケットを作成します。

  1. 変更する意図のある動作
  2. 変更せず維持するべき動作
  3. 互換性、ロールアウト、セキュリティ、移行に関する期待など、明示または推測される制約

ユーザーが意図を明確に示していない場合は、差分から推測し、その推測が不完全な可能性があることを伝えます。

ステップ 2:読み取り専用レビュー担当者 4 つを並行して起動する

範囲が並行レビューに十分な大きさであれば、サブエージェントを 4 つ起動します。ごく小さな差分やファイル 1 つだけの場合は、ローカルでレビューしてもかまいません。

各サブエージェントには、次の指示を与えます。

  • 同じ範囲と同じ意図パケットを渡す
  • サブエージェントが読み取り専用であることを明示する
  • ファイルの編集、apply_patch の実行、変更のステージング、コミット、その他の状態を変更する操作を許可しない
  • 簡潔な指摘のみを求める
  • ファイルと行またはシンボル、問題点、重要な理由、推奨する次の対応、確信度を含めるよう求める
  • 具体的な影響のない些細な指摘、スタイルの好み、推測に基づく懸念は避けるよう伝える
  • 指摘はメインエージェントにのみ返すよう伝える

次の 4 つのレビュー役割を使用します。

サブエージェント 1:意図とリグレッションのレビュー

差分が意図された動作変更に沿っているか、意図しない動作の逸脱を引き起こしていないかをレビューします。

次を確認します。

  1. 明示された範囲外での意図しない動作変更
  2. 壊れたエッジケースやフォールバック経路
  3. 呼び出し元と呼び出し先の間の契約のずれ
  4. 併せて変更すべき関連フローの更新漏れ

このサブエージェントは読み取り専用です。ファイルの編集、パッチの適用、その他のワークスペースの変更を行ってはなりません。

推奨するサブエージェントの役割:reviewer

サブエージェント 2:セキュリティとプライバシーのレビュー

セキュリティのリグレッション、プライバシー上のリスク、信頼境界の誤りがないか、差分をレビューします。

次を確認します。

  1. 認証または認可チェックの欠落や弱体化
  2. 安全でない入力処理、インジェクションのリスク、検証の不備
  3. シークレット、トークン、機密データの露出
  4. リスクのあるデフォルト設定、権限の拡大、未検証データへの信頼

このサブエージェントは読み取り専用です。ファイルの編集、パッチの適用、その他のワークスペースの変更を行ってはなりません。

推奨するサブエージェントの役割:reviewer

サブエージェント 3:パフォーマンスと信頼性のレビュー

新たなコスト、脆弱性、運用上のリスクが生じていないか、差分をレビューします。

次を確認します。

  1. 作業の重複、冗長な I/O、不要な再計算
  2. 起動時、レンダリング時、リクエスト時など、ホットパスで追加された処理
  3. リーク、クリーンアップ漏れ、リトライの集中、サブスクリプションのずれ
  4. 変更を不安定にする順序、競合、障害処理の問題

このサブエージェントは読み取り専用です。ファイルの編集、パッチの適用、その他のワークスペースの変更を行ってはなりません。

推奨するサブエージェントの役割:reviewer

サブエージェント 4: コントラクトとカバレッジのレビュー

互換性のギャップと不足しているセーフティネットについて diff をレビューします。

以下を確認してください:

  1. API、スキーマ、型、設定、またはフィーチャーフラグの不一致
  2. マイグレーションまたは後方互換性の影響
  3. 変更された動作に対するテストの不足または弱さ
  4. リグレッションの検出を難しくする、ログ、メトリクス、アサーション、またはエラーパスの不足

このサブエージェントは読み取り専用です。ファイルの編集、パッチの適用、その他のワークスペースの変更を行ってはなりません。

推奨されるサブエージェントの役割: reviewer

正確性、セキュリティ、プライバシー、信頼性、互換性、または変更への信頼に実質的に影響する問題のみを報告してください。些細な指摘を見逃すほうが、ユーザーを価値の低いノイズで埋め尽くすよりもましです。

ステップ 3: 指摘の集約とフィルタリング

統合はメインエージェントが担当します。サブエージェントの出力は最終出力ではなく、生のレビュー入力として扱ってください。

4 人のレビュアー全員の指摘をマージし、積極的にフィルタリングします:

  • 重複を除外する
  • 根拠が弱い、または推測にすぎない主張を除外する
  • 表明された意図と矛盾する問題を除外する
  • 実際のバグやメンテナンスリスクを覆い隠していない限り、軽微なスタイルや可読性に関するコメントを除外する

残った指摘を次の形に正規化します:

  1. ファイルと行、または最も近いシンボル
  2. カテゴリ: リグレッション、セキュリティ、信頼性、またはコントラクト
  3. 重大度: 高、中、または低
  4. なぜ重要か
  5. 推奨される修正またはフォローアップ
  6. 確信度: 高、中、または低

レビュアーが正しい可能性はあるものの意図が不明確な場合は、指摘ではなく未解決の質問に変換してください。

ステップ 4: 出力の並べ替え

指摘を次の順序で提示します:

  1. 重大度が高く、確信度が高い問題
  2. マージ前に修正する価値がおそらくある、重大度が中程度の問題
  3. 後回しにできる、重大度が低い問題またはフォローアップ

レビューは簡潔に保ってください。指摘は実行可能で、証拠に基づいているべきです。

実質的な問題がない場合は、フィードバックをでっち上げるのではなく、その旨を直接述べてください。

ステップ 5: 明確な進め方の推奨

指摘の後に、ユーザーに短い進め方を示します:

  • マージ前に修正すべきもの
  • 時間があれば改善すべきもの
  • そのままにしておいて問題ないもの

役立つ場合は、進め方を次のようにグループ化します:

  • fix now
  • fix soon
  • optional follow-up

このスキルの一環として修正を実装しないでください。出力は読み取り専用のレビューと、優先順位付けされた推奨事項です。

コメント