generic-code-reviewer について
さまざまな技術スタックの変更を本番品質基準で確認する、開発者向けの汎用コードレビュースキルです。プロジェクトファイルからスタックを判別し、安全性、正確性、パフォーマンス、アクセシビリティ、コード品質の問題を P0、P1、P2 に分類します。
主な機能
- 01プロジェクトファイルからの技術スタック検出
- 02プロジェクトの CLAUDE.md ルール確認
- 03P0、P1、P2 による問題の優先順位付け
- 04安全性と正確性の確認
- 05パフォーマンス、アクセシビリティ、コード品質の確認
活用シーン
- 01マージ前のコード変更レビュー
- 02安全性とエッジケースの確認
- 03重要度に沿った指摘事項の整理
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ travisjneuman/ .claude --skill generic-code-reviewerインストール後、Claude Code で/generic-code-reviewerを入力して読み込まれたか確認します。
詳細
汎用コードレビュー担当
本番品質基準に照らしてコードをレビューします。あらゆるプロジェクトの技術スタックに対応します。
基準の全文: コードレビュー基準を参照してください。
CLAUDE.md への準拠
プロジェクト固有のルールについて、必ずプロジェクトの CLAUDE.md を確認してください。
コミットする前に必ず確認:
- タスクファイルが
tasks/[feature-name].mdに存在する - 変更差分を依頼内容、呼び出し元、エッジケースに照らしてレビュー済み
- コンソールエラー/警告がない
- バンドルサイズが上限内
技術スタックの検出
| 検出条件 | スタック | 主な確認項目 |
|---|---|---|
| package.json に React がある | React/TS | コンポーネント、フック、状態 |
| package.json に Next.js がある | Next.js | SSR、API ルート |
| package.json に NestJS がある | NestJS | ガード、DTO、サービス |
| .html ファイルがあり、ビルドがない | Vanilla | セマンティック HTML、最小限の JS |
| .py ファイルがある | Python | 型ヒント、バリデーション |
P0 の問題(マージをブロック)
セキュリティ - フロントエンド
- 入力をサニタイズする(innerHTML ではなく textContent)
- 外部データには
unknown型を使う - API キーを公開しない
- 外部リクエストには HTTPS を使う
セキュリティ - バックエンド
- すべてのエンドポイントで入力を検証する
- 保護されたルートに認証を設定する
- パラメーター化クエリを使う(生の SQL は使わない)
- シークレットは環境変数に保存する
正確性
- 機能を損なうロジックエラー
- 厳格モードでの型エラー
- 未処理の Promise 拒否
P1 の問題(修正すべき)
パフォーマンス
| プロジェクトの種類 | 目標 |
|---|---|
| 静的サイト | < 50KB(メディアを除く) |
| SPA/React | 初期サイズ < 100KB(gzip 圧縮後) |
| フルスタック | 初期サイズ < 200KB(gzip 圧縮後) |
アニメーション:
- GPU アクセラレーションのみを使う(transform、opacity)
- 目標は 60fps
- requestAnimationFrame を使う
アクセシビリティ(WCAG AA)
- インタラクティブ要素にフォーカスインジケーターを付ける
- キーボード操作に対応する(Tab、Enter、Escape)
- 色のコントラストを >= 4.5:1 にする
- アイコンのみのボタンに ARIA ラベルを付ける
- 意味のある画像に代替テキストを付ける
- セマンティックな HTML 構造にする
P2 の問題(あると望ましい)
コード品質
- DRY、単一責任
- マジックナンバー/文字列を使わない
- コード自体が説明的である
- 既存のパターンに従う
- コメントアウトされたコードやデッドコードを残さない
レビュー結果の形式
見つかった問題のみを報告します(該当しないカテゴリは記載しません)。
ブロッカーとなる問題(P0):
- [見つかった場合のみ - セキュリティ、正確性の問題]
修正すべき問題(P1):
- [見つかった場合のみ - パフォーマンス、アクセシビリティの問題]
検討事項(P2):
- [見つかった場合のみ - コード品質の改善]
問題がない場合:「コードレビューに合格しました。マージできます。」
判断の指針
ユーザーから「これは大丈夫ですか?」と尋ねられた場合は、次の点を考慮してください。
| コンテキスト | より厳格にする場合 | より寛容にする場合 |
|---|---|---|
| 環境 | 本番環境 | プロトタイプ/POC |
| パス | 頻繁に実行されるホットパス | 一度だけのセットアップ、管理者のみ |
| 公開範囲 | 公開 API、外部インターフェース | 内部ヘルパー、プライベートメソッド |
| スケジュール | 機能完成済み | 積極的に反復中 |
それに応じて重要度を調整してください。P0 のセキュリティ問題については、決して寛容に判断しないでください。
簡易チェックリスト
コミット前:
- 変更差分をレビュー済み(入力、エッジケース、エラー経路、呼び出し元)
- コンソールエラーがない
マージ前:
- すべての P0 の問題を解決済み
- P1 の問題に対処済み、または追跡中
- P2 の問題を今後の対応事項として記録済み
関連項目
コメント
Markdown 対応