mcpField
C
code-review-checklist

code-review-checklist

github.com/laurigatesテスト・品質5945 回インストール2 日前に更新
リポジトリ

code-review-checklist について

code-review-checklistは、セキュリティ、正確性、パフォーマンス、品質、スタイルの順に手動レビューを進めるスキルです。一貫したチェックリストで小規模な変更を確認するレビュアー向けです。

主な機能

  1. 01優先順位付きのレビュー項目
  2. 02セキュリティと認証情報の確認
  3. 03ロジックと境界条件の確認
  4. 04パフォーマンスとリソースの確認
  5. 05レビュー結果のテンプレート

活用シーン

  1. 01小規模なPull Requestのレビュー
  2. 02差分に含まれる認証情報の確認
  3. 03エラー処理と境界条件の検証
  4. 04クエリとリソース効率の評価

インストール

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

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

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

詳細

コードレビューのチェックリスト

コード変更をレビューするための体系的なアプローチです。

このスキルを使うタイミング

次のような場合にこのスキルを使います…次のような場合は別のものを使います…
優先順位順に並んだ手動レビュー用チェックリストを確認するレビュー全体を委任して実施する → code-review
ハードコードされたシークレット、インジェクション、または N+1 クエリのパターンを探すアンチパターンを重点的にスキャンする → code-antipatterns
PR の差分でエラー処理とエッジケースを検証する握りつぶされたエラーを直接調査する → code-hidden-failures --track errors
小規模な変更に決定論的なチェックリストを適用するチェックリストで問題が見つかった後にリファクタリングする → code-refactor

レビューの優先順位

  1. セキュリティ(重大) - 脆弱性、シークレット、インジェクション
  2. 正確性(高) - ロジックエラー、破壊的変更
  3. パフォーマンス(中) - 非効率、リソースリーク
  4. 品質(中) - 保守性、読みやすさ
  5. スタイル(低) - フォーマット、命名(自動化することを推奨)

セキュリティのチェックリスト

シークレットと認証情報
  • API キー、パスワード、トークンがハードコードされていない
  • ログやエラーメッセージに認証情報が含まれていない
  • シークレットが環境変数またはボールトから読み込まれている
インジェクションの脆弱性
  • SQL クエリでパラメーター化されたステートメントを使用している
  • HTML 出力の前にユーザー入力がサニタイズされている(XSS)
  • シェルコマンドにユーザー入力が含まれていない(コマンドインジェクション)
  • ファイルパスが検証されている(パストラバーサル)
認証と認可
  • 保護されたすべてのエンドポイントで認証チェックを行っている
  • 適切にセッションを処理している
  • パスワードを安全に処理している(平文ではなくハッシュ化)
データの露出
  • 機密データがログに記録されていない
  • API レスポンスから内部情報が漏れていない
  • エラーメッセージからシステム情報が露出していない

正確性のチェックリスト

ロジック
  • エッジケース(null、空、境界値)に対応している
  • エラー条件を適切に処理している
  • 非同期処理を適切に await している
  • 競合状態を考慮している
破壊的変更
  • API コントラクトを維持している
  • データベースのマイグレーションを元に戻せる
  • リスクの高い変更にフィーチャーフラグを設けている
テスト
  • 新しいコードにテストがある
  • 正常系だけでなく、エラー経路もテストでカバーしている
  • 既存のテストが引き続き成功する

パフォーマンスのチェックリスト

効率性
  • N+1 クエリがない
  • 適切なデータ構造を使用している
  • 不要なループや反復処理がない
  • コストの高い処理でキャッシュを検討している
リソース
  • データベース接続をクローズまたはプールしている
  • ファイルハンドルをクローズしている
  • メモリーリークがない(イベントリスナーの削除など)
スケール
  • 現実的なデータ量でも動作する
  • 大量の結果セットにページネーションを使用している
  • 外部呼び出しにタイムアウトを設定している

品質のチェックリスト

読みやすさ
  • 明確で説明的な名前を使用している
  • 関数が単一の処理を行っている
  • 過度に複雑な条件分岐がない
  • コメントで「何を」ではなく「なぜ」を説明している
保守性
  • DRY(コピー&ペーストによる重複がない)
  • 適切な抽象化を行っている
  • 依存関係に妥当性がある
  • 不要なコードがない
一貫性
  • プロジェクトのパターンに従っている
  • 既存のコードスタイルに合っている
  • 定着したユーティリティやヘルパーを使用している

レビューの出力形式

## Review: [PR Title]

**Risk Level**: LOW | MEDIUM | HIGH | CRITICAL

### Critical Issues
1. [Category] Description (file:line)
   - Impact: What could go wrong
   - Fix: Specific recommendation

### Suggestions
1. [Category] Description (file:line)
   - Why: Reasoning
   - Consider: Alternative approach

### Positive Notes
- [Recognition of good patterns]

クイックチェック

手早くレビューする場合は、最低限次の点を確認します。

  1. シークレットや認証情報が含まれていないか?
  2. SQL インジェクションやコマンドインジェクションがないか?
  3. エラーケースに対応しているか?
  4. 新しいコードに対するテストがあるか?

コメント