编程

Code Review

试用

コードレビューを実施する際に使用。プルリクエストのレビュー、コード品質チェック、 セキュリティ検査、パフォーマンス分析を行う。「レビューして」「コードをチェック」 「品質を確認」などの指示で起動。

它能做什么

このスキルは、以下のガイドライン()に基づいた体系的なコードレビューを提供します:

技能文档

Code Review Skill

Purpose

このスキルは、以下のガイドライン(~/.claude/CLAUDE.md)に基づいた体系的なコードレビューを提供します:

  • コード品質の向上
  • セキュリティ脆弱性の検出
  • パフォーマンス問題の特定
  • 保守性の評価
  • ベストプラクティスの適用

When to Use

以下の場合にこのスキルを使用:

  • プルリクエストのレビュー依頼時
  • 「コードをレビューして」という明示的な指示
  • コード品質チェックの要求
  • セキュリティレビューの必要時
  • リファクタリング前の評価

Instructions

1. Check CI/CD Status

プルリクエストの場合、最初にCI/CDステータスをチェックする:

# GitHubのPR番号が明示されている場合
gh pr view  --json statusCheckRollup

# または、現在のブランチのPRを確認
gh pr status
gh pr checks

CI/CDチェックの結果に応じた対応:

  • すべてパス: 通常のコードレビューに進む
  • 失敗あり:
    • 自分が作成したPR: 失敗原因を分析し、修正を実施
    • 他人のPRレビュー: 失敗内容を確認し、レビューコメントに含める

CI失敗時の詳細確認:

# 失敗したチェックの詳細を確認
gh pr checks 

# ログの取得(GitHub Actionsの場合)
gh run view  --log-failed

2. Confirm Review Scope

レビュー対象を明確にする:

# 変更ファイルの確認
git status
git diff --name-only

# PRの場合は差分を確認
gh pr diff 

# または特定のファイルが指定されている場合はそれを対象とする

3. Understand Context

レビュー前に以下を確認:

  • プロジェクトの種類(プロトタイプ/MVP/本番)
  • 関連する既存コード
  • テストの存在
  • ドキュメント

4. Handle CI Failures

自分のPRでCI失敗の場合:

  1. 失敗の原因を特定:

    • テスト失敗: どのテストがなぜ失敗したか
    • ビルドエラー: コンパイルエラー、型エラー等
    • Linter/Formatter: コーディングスタイル違反
    • セキュリティスキャン: 脆弱性検出
  2. 修正を実施:

    • エラーログを読み、根本原因を修正
    • 関連するテストケースも更新
    • ローカルで同じチェックを実行して検証
  3. 再プッシュ:

    git add .
    git commit -m "fix: resolve CI failures"
    git push
    

他人のPRレビューでCI失敗の場合:

レビューコメントの冒頭に以下を追加:

## ⚠️ CI/CD Status

### 失敗しているチェック
- [チェック名1]: [失敗理由の要約]
- [チェック名2]: [失敗理由の要約]

### 修正が必要なアクション
1. [具体的な修正内容]
2. [具体的な修正内容]

詳細は以下のコードレビューを参照してください。

---

5. Conduct Systematic Review

以下の観点でコードを評価(詳細はreference.md参照):

A. コード品質

  • 可読性(変数名、関数名の適切性)
  • DRY原則の遵守
  • 適切な抽象化レベル
  • コメントの質(「なぜ」を説明)

B. エラーハンドリング

  • エラーケースの適切な処理
  • エラーの抑制ではなく根本原因の解決
  • 明確なエラーメッセージ
  • 外部API呼び出しの失敗処理

C. セキュリティ

  • 認証情報のハードコード確認
  • 入力検証の実装
  • OWASP Top 10の脆弱性チェック
  • 最小権限の原則

D. テスト

  • テストカバレッジ
  • エッジケースのテスト
  • テストの独立性
  • テストの可読性

E. パフォーマンス

  • N+1問題
  • 不要なループや計算
  • キャッシング戦略
  • リソースリーク

F. 保守性

  • 適切なモジュール分割
  • 依存関係の明確性
  • 技術的負債の記録
  • 一貫したコーディングスタイル

6. Provide Feedback

レビュー結果を以下の形式で提供:

## コードレビュー結果

### ⚠️ CI/CD Status (該当する場合)
[CI失敗情報をここに記載]

### 🔴 Critical Issues (即座に修正が必要)
- [具体的な問題と場所]
- [修正案]

### 🟡 Warnings (修正を推奨)
- [改善提案]
- [理由]

### 🟢 Good Practices (良い点)
- [評価できる実装]

### 💡 Suggestions (任意の改善案)
- [より良い実装の提案]

### 📝 Notes
- [その他の気づき]

7. Constructive Communication

  • 個人ではなくコードに焦点を当てる
  • 問題だけでなく、良い点も指摘
  • 具体的な改善案を提示
  • 「なぜ」その変更が必要かを説明

Key Principles

  1. プロジェクトコンテキストを考慮: プロトタイプと本番環境では異なる基準を適用
  2. 優先順位付け: Critical > Warning > Suggestion の順で重要度を明示
  3. 実用性: 完璧を求めすぎず、適切なバランスを取る
  4. 学習機会: レビューを教育の機会として活用

Reference Documents

  • 詳細なレビュー基準
  • レビュー実例

Dependencies

  • Git (変更差分の確認用)
  • GitHub CLI (gh) - PR情報とCI/CDステータスの取得用
  • プロジェクト固有のlinter/formatter(存在する場合)

CI/CD Integration

このスキルは以下のCI/CDシステムに対応:

  • GitHub Actions
  • CircleCI (GitHub統合経由)
  • その他GitHub Checksに統合されているCI/CD

注意: PRのCI/CDステータス確認にはghコマンドが必要です。インストール方法:

# macOS
brew install gh

# 認証
gh auth login

相关技能

执行 Git 操作(提交、分支、合并、变基、冲突解决与恢复)时强制套用安全规则。

作者 Iván532 次安装31 星标

在本地磁盘以分类纯 Markdown 文件保存需要长期留存的事实,与智能体内置记忆并存。

作者 Iván555 次安装18 星标

诊断生产力系统反复失效的根因,给出最小干预——容量测算、瓶颈定位、可靠的本地记录。

作者 Iván854 次安装69 星标

把自然语言描述转为结构化 JSON,并由 mcp-diagram-generator MCP 服务生成 Draw.io、Mermaid 或 Excalidraw 图表文件。

作者 nssa.io1.0k 次安装47 星标

用自然语言读、起草、创建和更新 Jira 工单。

作者 Jonathan Rhyne310 次安装16 星标

通过托管的 OAuth GraphQL 接口查询与管理 Linear 的 issue、项目、团队、周期、标签和评论。

作者 byungkyu518 次安装18 星标

terrycarter1985 的更多技能

浏览全部技能

为中国小学三到六年级英语书面作业打分,并给出符合年龄的鼓励式反馈。

作者 terrycarter198517 次安装

Analyze stocks and cryptocurrencies using Yahoo Finance data. Supports portfolio management (create, add, remove assets), crypto analysis (Top 20 by market c...

作者 terrycarter198524 次安装

Control whole-house music scenes combining Spotify playback with Airfoil speaker routing. Quick presets for morning, party, chill modes.

作者 terrycarter198519 次安装

Generate reusable, policy-aligned customer service replies for e-commerce aftersales scenarios. Use when support staff need fast, compliant Chinese responses...

作者 terrycarter198518 次安装

Control whole-house music scenes combining Spotify playback with Airfoil speaker routing. Quick presets for morning, party, chill modes.

作者 terrycarter198516 次安装

Comprehensive developer cheatsheets and quick references for Git, Docker, Kubernetes, jq, curl, and common Linux commands. Use when needing quick lookups for...

作者 terrycarter198516 次安装