code-review について
セキュリティ、品質、パフォーマンス、保守性の観点から変更を評価するコードレビュースキルです。分析を `code-reviewer` エージェントに委任し、重要度、箇所、修正案を含む指摘を返します。
主な機能
- 01`git diff` で変更箇所を特定
- 02セキュリティとコード品質を確認
- 03性能と保守性を評価
- 04重要度別に指摘を分類
- 05箇所と修正案を提示
活用シーン
- 01マージ前の変更レビュー
- 02大規模な機能実装の評価
- 03セキュリティと保守性の問題を発見
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ yeachan-heo/ oh-my-claudecode --skill code-reviewインストール後、Claude Code で/code-reviewを入力して読み込まれたか確認します。
詳細
コードレビューのスキル
品質、セキュリティ、保守性について徹底的にコードレビューを行い、重大度を評価したフィードバックを提供します。
使用するタイミング
このスキルは、次の場合に有効になります。
- ユーザーが「このコードをレビューして」「コードレビュー」と依頼したとき
- プルリクエストをマージする前
- 大規模な機能を実装した後
- ユーザーが品質評価を求めたとき
機能
code-reviewer エージェント(Opus モデル)に委任して、詳細な分析を行います。
-
変更箇所の特定
git diffを実行して変更されたファイルを確認します- レビューの範囲(特定のファイルまたは PR 全体)を判断します
-
レビューのカテゴリ
- セキュリティ - ハードコードされたシークレット、インジェクションのリスク、XSS、CSRF
- コード品質 - 関数のサイズ、複雑さ、ネストの深さ
- パフォーマンス - アルゴリズムの効率、N+1 クエリ、キャッシュ
- ベストプラクティス - 命名、ドキュメント、エラー処理
- 保守性 - 重複、結合度、テスト容易性
-
重大度の評価
- CRITICAL - セキュリティの脆弱性(マージ前に必ず修正)
- HIGH - バグまたは重大なコードの問題(マージ前に修正することを推奨)
- MEDIUM - 軽微な問題(可能であれば修正)
- LOW - スタイルや提案(修正を検討)
-
具体的な推奨事項
- 問題ごとのファイルと行番号
- 具体的な修正案
- 該当する場合はコード例
エージェントへの委任
Task(
subagent_type="oh-my-claudecode:code-reviewer",
model="opus",
prompt="CODE REVIEW TASK
Review code changes for quality, security, and maintainability.
Scope: [git diff or specific files]
Review Checklist:
- Security vulnerabilities (OWASP Top 10)
- Code quality (complexity, duplication)
- Performance issues (N+1, inefficient algorithms)
- Best practices (naming, documentation, error handling)
- Maintainability (coupling, testability)
Output: Code review report with:
- Files reviewed count
- Issues by severity (CRITICAL, HIGH, MEDIUM, LOW)
- Specific file:line locations
- Fix recommendations
- Approval recommendation (APPROVE / REQUEST CHANGES / COMMENT)"
)
外部への相談(任意)
code-reviewer エージェントは、相互検証のために Claude Task エージェントに相談してもかまいません。
プロトコル
- まず自分自身でレビューを行う - 独立してレビューを完了します
- 検証のために相談する - Claude Task エージェントを介して指摘事項を照合します
- 批判的に評価する - 外部からの指摘を決して盲目的に採用しないでください
- 適切にフォールバックする - 委任できない場合でも、決して作業を止めないでください
相談するタイミング
- セキュリティに関わるコード変更
- 複雑なアーキテクチャパターン
- 不慣れなコードベースや言語
- 重要度の高い本番コード
相談を省略するタイミング
- 単純なリファクタリング
- 十分に理解されているパターン
- 時間が限られたレビュー
- 小規模で独立した変更
ツールの使用方法
相互検証には Task(subagent_type="oh-my-claudecode:code-reviewer", ...) を使用します。
出力形式
CODE REVIEW REPORT
==================
Files Reviewed: 8
Total Issues: 15
CRITICAL (0)
-----------
(none)
HIGH (3)
--------
1. src/api/auth.ts:42
Issue: User input not sanitized before SQL query
Risk: SQL injection vulnerability
Fix: Use parameterized queries or ORM
2. src/components/UserProfile.tsx:89
Issue: Password displayed in plain text in logs
Risk: Credential exposure
Fix: Remove password from log statements
3. src/utils/validation.ts:15
Issue: Email regex allows invalid formats
Risk: Accepts malformed emails
Fix: Use proven email validation library
MEDIUM (7)
----------
...
LOW (5)
-------
...
RECOMMENDATION: REQUEST CHANGES
Critical security issues must be addressed before merge.
レビューチェックリスト
code-reviewer エージェントは、次の項目を確認します。
セキュリティ
- シークレット(API キー、パスワード、トークン)がハードコードされていない
- すべてのユーザー入力がサニタイズされている
- SQL/NoSQL インジェクションが防止されている
- XSS が防止されている(出力がエスケープされている)
- 状態を変更する操作に CSRF 対策がある
- 認証/認可が適切に適用されている
コード品質
- 関数が 50 行未満(目安)
- 循環的複雑度が 10 未満
- 深くネストされたコードがない(4 レベル超)
- ロジックが重複していない(DRY 原則)
- 明確で説明的な命名
パフォーマンス
- N+1 クエリのパターンがない
- 該当する場合、適切なキャッシュが使用されている
- アルゴリズムが効率的(可能な場合、O(n) ではなく O(n²) を避ける)
- 不要な再レンダリングがない(React/Vue)
ベストプラクティス
- エラー処理があり、適切に実装されている
- 適切なレベルでログが記録されている
- 公開 API のドキュメントがある
- 重要な処理にテストがある
- コメントアウトされたコードがない
承認基準
APPROVE - CRITICAL または HIGH の問題がなく、軽微な改善点のみ REQUEST CHANGES - CRITICAL または HIGH の問題がある COMMENT - LOW/MEDIUM の問題のみで、ブロッキングとなる懸念がない
他のスキルとの併用
Pipeline との併用:
/pipeline review "implement user authentication"
実装ワークフローの一環としてコードレビューを行います。
Ralph との併用:
/ralph code-review then fix all issues
コードをレビューし、フィードバックを受け、承認されるまで修正します。
Ultrawork との併用:
/ultrawork review all files in src/
複数のファイルにまたがるコードレビューを並行して行います。
ベストプラクティス
- 早めにレビューする - 問題が積み重なる前に見つけます
- 頻繁にレビューする - 大規模なレビューより、小規模で頻繁なレビューが効果的です
- CRITICAL/HIGH を最優先する - セキュリティ問題やバグをすぐに修正します
- コンテキストを考慮する - 「問題」の中には、意図的なトレードオフもあります
- レビューから学ぶ - フィードバックを活用してコーディングの習慣を改善します
コメント
Markdown 対応