mcpField
R
review

review

github.com/iankikuテスト・品質1842 回インストール13 週間前に更新
リポジトリ

review について

review は、本番環境に投入する変更を確認する開発者向けのコードレビュー用スキルです。セキュリティ、データ整合性、性能、競合状態、エラー処理を点検し、深刻度と修正案を添えて指摘を示します。

主な機能

  1. 01信頼境界とセキュリティの確認
  2. 02データ整合性のレビュー
  3. 03性能とクエリの点検
  4. 04競合状態の分析
  5. 05深刻度別の指摘と修正案

活用シーン

  1. 01本番投入前のコード差分レビュー
  2. 02データ処理とエラー経路のリスク確認
  3. 03変更に潜むセキュリティと並行処理の問題発見

インストール

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

$npx skills add https://github.com/iankiku/forwward-teams --skill review

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

詳細

レビュー — 疑い深いコードレビュー

テストを通過するバグを見つけます。攻撃者のように考え、デバッガーのように推論します。

心構え

本番環境で実行されるコードをレビューしています。次のことを前提にしてください。

  • すべての入力は悪意のあるものです
  • すべての非同期処理で競合が発生する可能性があります
  • すべてのクエリは、規模が大きくなると遅くなる可能性があります
  • すべてのエラーパスはいずれ実行されます

レビューチェックリスト

1. 信頼境界
  • スタックのスキーマ/バリデーションツールを使って、境界でユーザー入力を検証している
  • ビジネスロジックの実行前に認証を確認している
  • クライアントからアクセス可能なコードにシークレットが含まれていない
  • API レスポンスから内部情報が漏れていない
2. データの整合性
  • 複数テーブルへの書き込みをトランザクションで囲んでいる
  • 必要に応じて楽観的同時実行制御またはロックを使用している
  • 一部の処理に失敗しても孤立レコードが残らない
  • カスケード削除が意図したものである
3. パフォーマンス
  • N+1 クエリがない(DB 呼び出しを伴うループを確認する)
  • リストエンドポイントでページネーションを使用している
  • WHERE/JOIN で使用するカラムにインデックスがある
  • メモリ上で配列やオブジェクトが際限なく増えない
4. 競合状態
  • 同じリソースへの同時リクエストを処理できる
  • 確認してから実行するパターンでアトミック操作を使用している
  • 共有する可変状態を同期している
  • 重要な変更処理に冪等性キーを使用している
5. エラー処理
  • 適切なレベルでエラーを捕捉している(握りつぶしていない)
  • ユーザー向けエラーが役立つ内容であり、内部のスタックトレースを表示していない
  • 再試行ロジックにバックオフと最大試行回数を設定している
  • 一部の処理に失敗しても状態が破損しない
6. セキュリティ(OWASP Top 10)
  • インジェクション攻撃がない(パラメーター化クエリ、プリペアドステートメント、ORM の保護機能を使用し、SQL やシェルコマンドに文字列を連結しない)
  • XSS がない(出力エンコーディング、CSP ヘッダー)
  • CSRF がない(状態を変更するリクエストにトークンを使用)
  • 安全でない直接オブジェクト参照がない
  • 認証エンドポイントにレート制限がある

レビュー方法

  1. 差分を読む — 何が、なぜ変更されたのかを理解します
  2. データフローを追う — 入力から出力まで、データの流れをたどります
  3. エッジケースを確認する — null、空の配列、同時リクエスト、大きな入力を確認します
  4. 前提を疑う — あらゆる段階で「これが失敗したらどうなるか?」と問いかけます
  5. テストがあることを確認する — 正常系と失敗パターンの両方を確認します

出力形式

見つかった問題ごとに:

[SEVERITY] file:line — Description
  Why: Explanation of the risk
  Fix: Suggested change

重大度:CRITICAL(必ず修正)、HIGH(修正すべき)、MEDIUM(検討する)、LOW(軽微)

コメント