mcpField
C
code-review

code-review

github.com/laurigatesテスト・品質5961 回インストール今日更新
リポジトリ

code-review について

code-reviewは、agents-plugin:reviewに分析を委任するエンドツーエンドのコードレビュー用スキルです。品質、セキュリティ、性能、テストを確認し、指摘を再検証して重要度と確信度で整理します。

主な機能

  1. 01品質、セキュリティ、性能、設計を確認
  2. 02テストカバレッジの不足を確認
  3. 03agents-plugin:reviewに分析を委任
  4. 04指摘と発生条件を再検証
  5. 05重要度と確信度でレポートを整理
  6. 06大規模コードの並列レビューに対応

活用シーン

  1. 01ディレクトリやPull Requestの差分をレビュー
  2. 02セキュリティや性能の問題を発見
  3. 03不足しているテストケースを特定
  4. 04修正事項と手動対応を整理

インストール

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

$npx skills add https://github.com/laurigates/claude-plugins --skill code-review

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

同梱ファイルscripts/tests/test-code-review-rubric-depth.sh

詳細

このスキルを使う場面

このスキルを使う場面…代わりに別のものを使う場面…
品質、セキュリティ、パフォーマンス、テストを対象に、エンドツーエンドのレビューを実施する場合手動のセキュリティ/正確性チェックリストを確認する場合 → code-review-checklist
エージェントに分析を委任して、ディレクトリまたは PR の差分を監査する場合コードの臭いを特定する場合 → code-antipatterns
不足しているテストケースや弱いアサーションを見つける場合テストコードの品質だけを監査する場合 → code-test-quality
統合レビュー報告書を作成する場合レビューで問題が見つかった後にリファクタリングする場合 → code-refactor

コンテキスト

  • レビュー対象のパス:$1(指定がない場合は現在のディレクトリ)

パラメーター

  • $1:レビュー対象のパス(指定がない場合は現在のディレクトリ)

タスク

このタスクを agents-plugin:review エージェントに委任してください。

Agent ツールで subagent_type: agents-plugin:review を指定し、包括的なコードレビューを実施します。

まず、Glob ツールを使ってレビュー対象のソースファイルを検索します。

  • ソースファイルには **/*.py、**/*.js、**/*.ts、**/*.go、**/*.rs を使用します
  • テストファイルには **/*test* パターンを使用します

次に、見つかったファイルをエージェントに渡します。

コードレビューエージェントは、次の作業を行います。

  1. コード品質を分析する:

    • 命名規則と読みやすさ
    • コード構造と保守性
    • SOLID 原則への準拠
  2. セキュリティを評価する:

    • 入力検証の脆弱性
    • 認証および認可の問題
    • シークレットや機密データの露出
  3. パフォーマンスを評価する:

    • ボトルネックと非効率な処理
    • メモリ使用パターン
    • 最適化の機会
  4. アーキテクチャをレビューする:

    • デザインパターンの使用状況
    • コンポーネント間の結合度
    • 依存関係の管理
  5. テストカバレッジの不足を確認する:

    • 不足しているテストケース
    • カバーされていないエッジケース
    • 必要な統合テスト
  6. 適切かつ安全な場合は修正を適用する

  7. 各候補の指摘を再検証する(誤検知を除外するためのゲート。報告前に実施): 手順 1~5 で得られた候補の指摘ごとに、該当箇所のコードを再読し、記載された file:line で、現在のソースコードに照らして指摘内容が実際に成り立つことを確認します。 記憶や想定に基づく形ではなく、現状のコードを確認してください。再読によって裏付けられた 指摘のみを残し、それ以外は除外します。以下の「再検証パス」を参照してください。

  8. 残った各指摘を以下の基準で評価する:

    • 「重大度の基準」を使って 重大度(Critical/High/Medium/Low)を割り当てます。
    • 「確信度の尺度」を使って 確信度(High/Medium/Low)を割り当て、報告基準を下回る指摘は除外するか、明示的に注記します。
  9. 以下を含む報告書を作成する:

    • 重大度の高い順に並べた、残存する指摘。それぞれに severity、confidence、検証済みの file:line を記載します
    • 発見・修正した問題の概要
    • 残っている手動対応事項
    • 改善の提案

エージェントには、次の情報を提供します。

  • コンテキストに記載されたレビュー対象のパス
  • プロジェクトの種類(言語/フレームワーク)
  • 指定された重点確認事項

エージェントは、以下の分野に精通しています。

  • 複数言語にわたるコード分析(Python、TypeScript、Go、Rust)
  • 正確な診断のための LSP 連携
  • セキュリティ脆弱性のパターン(OWASP)
  • パフォーマンス分析と最適化

重大度の基準

残った各指摘を、以下の基準に照らして評価します。報告書では 重大度の高い順に並べてください。

重大度基準
Critical悪用可能なセキュリティホール、データの損失/破損、または一般的な操作でのクラッシュ。リリースを阻止する問題であり、マージ前に必ず修正します。
High現実的な入力で誤動作する実際の正確性バグ、深刻なパフォーマンスの低下(N+1、無制限の増加)、または既知の悪用手段はないものの認証/検証に不備がある問題。マージ前に修正します。
Mediumエッジケースでのバグ、エラー処理の不足、重要な動作に関するテスト不足、または近いうちに問題になる保守性の課題。修正するか、フォローアップとして記録します。
Low動作への影響がない、スタイル、命名、軽微な読みやすさの問題、または些細な指摘。対応は任意です。

信頼度の尺度

各指摘に信頼度を割り当て、レポートに含めるかどうかを判断します。目の前のコードから不具合を実証できない指摘は推測であり、推測はレビューへの信頼を損ないます。

信頼度意味報告ルール
高引用したコードから不具合を証明できます。入力と誤った結果を具体的に示せます。報告します。
中不具合の可能性は高いものの、十分に確認できなかったコンテキストに左右されます。確認が必要であることを明記して報告します。
低推測にすぎず、読んだコードに根拠のない勘です。取り上げないか、「Xを確認してください」という一行のメモに格下げします。不具合として提示してはいけません。

報告の基準は中です。信頼度が高または中の指摘は報告し、信頼度が低い推測は指摘として提示しないでください。

再検証パス

レポート作成の前に、候補となる指摘をすべて実際のコードに照らして再確認します。最初に読んだ内容を信頼するのではなく、機械的に誤検出を排除します。

  1. Read で指摘の file:line を再度開き、引用したコードが指摘の主張どおりであることを確認します(行番号はずれることがあり、前提は変わる可能性があります)。
  2. 指摘している障害が実際に発生し得ることを確認します。それを引き起こす具体的な入力または状態を示してください。示せない場合、信頼度は低です。
  3. 両方の確認を通過した指摘だけを残します。報告する指摘にはすべて、検証済みの file:line、重大度、信頼度を記載する必要があります。

エージェントチーム(任意)

大規模なコードベースを包括的にレビューする場合は、専門のレビューチームメイトを並行して起動できます。

チームメイト担当分野メリット
セキュリティレビュアーOWASP、シークレット、認証の欠陥品質レビューを妨げることなく、詳細なセキュリティ分析を行います
パフォーマンスレビュアーN+1 クエリ、アルゴリズムの計算量、リソースリークパフォーマンスに特化したレビューを並行して行います
正確性レビュアーロジックエラー、エッジケース、型安全性機能の正確性を並行してレビューします

これは任意です。標準的なレビューであれば、エージェントチームを使わなくてもこのスキルを利用できます。

関連する設定スキル

  • セキュリティスキャンが設定されていない場合 → /configure:security
  • リンティングが設定されていない場合 → /configure:linting
  • テストカバレッジが追跡されていない場合 → /configure:coverage

コメント