Agent skill
review-changes
コミット前の変更をレビュー。差分を分析し、問題点・改善点・リスクを指摘。トリガー: /review-changes, 変更レビュー, コミット前チェック, diffレビュー
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/review-changes
SKILL.md
変更レビュースキル
コミット前の変更を自動レビューし、問題点・改善点・リスクを指摘します。
レビュー観点
1. コード品質
- 不要なデバッグコード (console.log, print, debugger)
- ハードコードされた値 (URL, 認証情報, マジックナンバー)
- 未使用のimport/変数
- コメントアウトされたコード
- TODO/FIXME の新規追加
2. セキュリティ
- 機密情報の漏洩 (APIキー, パスワード, トークン)
- SQLインジェクション/XSSの可能性
- 危険な関数の使用 (eval, exec)
- 権限チェックの欠如
3. パフォーマンス
- N+1 クエリの可能性
- 不必要なループ/再計算
- 大きなオブジェクトのコピー
- メモリリークの可能性
4. 保守性
- 関数が長すぎる (50行以上)
- ネストが深すぎる (4階層以上)
- 命名が不明確
- 重複コード
5. テスト
- テストが追加/更新されているか
- テストカバレッジの低下
- エッジケースのテスト漏れ
実行フロー
# 1. 変更差分を取得
git diff --staged # ステージングされた変更
git diff # 未ステージの変更
# 2. 変更ファイル一覧
git diff --name-only
# 3. 各ファイルを分析
# 4. レポート生成
出力形式
## 変更レビューレポート
### 概要
- **変更ファイル**: N files
- **追加行**: +XXX
- **削除行**: -XXX
- **影響範囲**: src/api/, tests/
---
### 検出された問題
#### 🔴 要修正 (ブロッカー)
| ファイル | 行 | 問題 | 説明 |
|---------|-----|------|------|
| src/api.ts | 45 | 機密情報 | APIキーがハードコード |
| src/db.ts | 78 | SQLi | ユーザー入力が直接クエリに |
#### 🟡 推奨修正
| ファイル | 行 | 問題 | 説明 |
|---------|-----|------|------|
| src/util.ts | 12 | デバッグコード | console.log が残存 |
| src/handler.ts | 34 | 長い関数 | 78行 (推奨: 50行以下) |
#### 🟢 情報
| ファイル | 行 | 内容 |
|---------|-----|------|
| src/types.ts | 5 | 新しいTODO追加 |
---
### 良い点
- ✅ エラーハンドリングが適切に追加されている
- ✅ 型定義が明確
- ✅ テストが追加されている
---
### 推奨アクション
1. **[必須]** src/api.ts:45 のAPIキーを環境変数に移動
2. **[必須]** src/db.ts:78 でプリペアドステートメントを使用
3. **[推奨]** src/util.ts:12 のconsole.logを削除
4. **[推奨]** src/handler.ts の関数を分割
---
### コミット判定
❌ **コミット非推奨** - 要修正項目があります
または
✅ **コミット可能** - 重大な問題はありません
使用方法
# ステージング済みの変更をレビュー
/review-changes
# 特定ファイルのみレビュー
/review-changes src/api.ts
# 未ステージの変更も含めてレビュー
/review-changes --all
自動検出パターン
機密情報 (正規表現)
# APIキー
(api[_-]?key|apikey)\s*[:=]\s*['"][^'"]+['"]
# パスワード
(password|passwd|pwd)\s*[:=]\s*['"][^'"]+['"]
# トークン
(token|secret|auth)\s*[:=]\s*['"][^'"]+['"]
# AWS認証情報
AKIA[0-9A-Z]{16}
デバッグコード
console\.(log|debug|info|warn|error)\(
print\(
debugger;
binding\.pry
import pdb
注意事項
- 大量の変更 (500行以上) は概要のみのレビューに切り替え
- バイナリファイル、ロックファイルはスキップ
- 自動生成ファイル (*.min.js, dist/) はスキップ
- レビュー結果は参考情報であり、最終判断は人間が行う
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?