AgentSkillsCN

code-reviewer

具备代码评审的能力。对已完成实现的代码在质量、性能、安全性及可读性等方面进行检查。如有需要修改之处,调用实现技能进行修正;若无修改点,则在控制台输出最终报告。使用时机:(1) 实现完成后进行评审,(2) 进行拉取请求评审,(3) 开展安全审计,(4) 执行性能审计。

SKILL.md
--- frontmatter
name: code-reviewer
description: コードレビューを行うスキル。実装完了したコードの品質、パフォーマンス、セキュリティ、可読性をチェックする。修正点があればimplementationスキルを呼び出し、修正点がなければ最終報告をコンソールに出力する。使用タイミング:(1) 実装完了後のレビュー、(2) プルリクエストレビュー、(3) セキュリティ監査、(4) パフォーマンス監査。

Code Reviewer Skill

コードレビューを行うスキル。

ワークフロー

1. レビュー準備

レビュー対象を確認:

  • 実装されたファイル一覧
  • 変更差分
  • 関連するテストケース
  • インターフェース設計書

2. レビュー観点

2.1 コード品質

チェック項目確認内容
命名意図が明確か、規約に準拠しているか
構造適切な抽象化、モジュール分割
重複DRY原則違反がないか
複雑度サイクロマティック複雑度が適切か
SOLIDSOLID原則に準拠しているか

2.2 パフォーマンス

チェック項目確認内容
アルゴリズム時間/空間計算量は適切か
N+1問題クエリの非効率がないか
メモリリークリソース解放漏れがないか
キャッシュ適切にキャッシュされているか
非同期処理ブロッキングがないか

2.3 セキュリティ

チェック項目確認内容
入力検証全入力が検証されているか
SQLインジェクションパラメータ化クエリを使用しているか
XSS出力がエスケープされているか
認証/認可適切にチェックされているか
機密情報ログや例外に漏洩がないか
依存関係既知の脆弱性がないか

2.4 可読性

チェック項目確認内容
コメント必要十分なコメントがあるか
フォーマットコードスタイルが統一されているか
関数サイズ適切な長さか(20行目安)
ネスト深すぎないか(3レベル以内)
マジックナンバー定数化されているか

2.5 テスト品質

チェック項目確認内容
カバレッジ目標値を達成しているか
エッジケース境界値がテストされているか
異常系エラーケースがテストされているか
可読性テストの意図が明確か
独立性テスト間に依存がないか

3. レビュー実行

各観点でコードを精査し、指摘事項を分類:

yaml
review_result:
  reviewer: "code-reviewer skill"
  reviewed_at: "YYYY-MM-DD HH:MM:SS"
  
  summary:
    total_issues: 5
    critical: 1
    major: 2
    minor: 2
    
  issues:
    - id: "REV-001"
      severity: "critical|major|minor|info"
      category: "quality|performance|security|readability|test"
      file: "src/services/user_service.py"
      line: 42
      title: "指摘タイトル"
      description: "詳細説明"
      suggestion: "修正案"
      reference: "参考リンクや規約"

4. 判定基準

承認条件

  • Critical: 0件
  • Major: 0件
  • Minor: 任意(ドキュメント化して承認可)

差し戻し条件

  • Critical または Major が1件以上

5. 結果出力

修正点がある場合

implementation スキルを呼び出し:

yaml
# implementation スキルへの引き継ぎ情報
review_feedback:
  status: "requires_changes"
  
  issues:
    - id: "REV-001"
      severity: "major"
      category: "security"
      file: "src/services/user_service.py"
      line: 42
      description: "SQLインジェクションの脆弱性"
      suggestion: "パラメータ化クエリを使用"
      
  requested_actions:
    - "REV-001を修正"
    - "修正後、再度テスト実行"
    - "再レビュー依頼"

修正点がない場合

最終報告をコンソールに出力:

code
========================================
         CODE REVIEW COMPLETED
========================================

Project: [プロジェクト名]
Reviewed: [レビュー日時]

SUMMARY
-------
✅ Code Quality:    PASSED
✅ Performance:     PASSED
✅ Security:        PASSED
✅ Readability:     PASSED
✅ Test Coverage:   PASSED (85%)

STATISTICS
----------
Files Reviewed:     12
Lines of Code:      1,234
Test Cases:         45
Coverage:           85%

NOTES
-----
- [特記事項があれば記載]

STATUS: APPROVED ✅
========================================

レビューチェックリスト

必須チェック

  • 全テストがパス
  • カバレッジ目標達成
  • セキュリティチェック完了
  • ドキュメント/コメント確認
  • コードスタイル準拠

推奨チェック

  • パフォーマンステスト
  • 負荷テスト
  • アクセシビリティ確認(UI)

スキル連携

スキル呼び出しタイミング
implementation修正点がある場合

完了条件

以下を満たしたらレビュー完了:

  1. Critical/Major指摘が0件
  2. 全テストがパス
  3. カバレッジ目標達成
  4. ドキュメント整備完了