# Recent Changes Review

> 最近のコミットをセキュリティ・パフォーマンス・保守性の観点からレビュー。「最近の変更をレビュー」「今日のコミットを確認」「コードレビューして」と言われた時に使用

- Skill: `majiayu000/recent-changes-review` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/recent-changes-review`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/recent-changes-review/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/recent-changes-review

---


# Recent Changes Review

このスキルは最近のコミットを分析し、セキュリティ、パフォーマンス、保守性の観点からレビューを行います。

## 実行手順

### 1. レビュー期間の決定

ユーザーから指定がない場合は、デフォルトで「midnight」（今日の深夜0時以降）を使用します。

**指定可能な期間例**：
- `midnight`: 今日の深夜0時以降
- `1 hour ago`: 1時間前以降
- `2 days ago`: 2日前以降
- `1 week ago`: 1週間前以降

### 2. コミット履歴の取得

```bash
git log --since="<期間>" --pretty=format:"%h - %an, %ar : %s" --stat
```

で対象期間のコミット履歴を取得します。

### 3. 変更内容の詳細確認

各コミットについて、以下を確認します：

```bash
# 特定コミットの詳細を確認
git show <commit-hash>

# 変更されたファイルの現在の内容を確認（必要に応じて）
Read <file-path>

# 特定のパターンを検索（セキュリティチェック用）
Grep <pattern>
```

### 4. レビューポイント

以下の観点から分析を行います：

#### セキュリティ
- 機密情報のハードコーディングがないか
- 入力バリデーションは適切か
- 認証・認可の実装は正しいか
- SQLインジェクション、XSSなどの脆弱性がないか
- エラーハンドリングで情報漏洩がないか

#### パフォーマンス
- N+1クエリの発生がないか
- 不要なループや重複処理がないか
- キャッシュの活用は適切か
- データベースインデックスの考慮はあるか
- メモリリークの可能性はないか

#### 保守性
- コードの可読性は高いか
- 命名規則は適切か
- 関数・メソッドのサイズは適切か（単一責任原則）
- コメントは「なぜ」を説明しているか
- テストは追加・更新されているか
- ドキュメントは更新されているか

### 5. フィードバックの提供

以下の形式で日本語でレビュー結果を提供します：

```markdown
# コミットレビュー結果

## 対象期間
[期間]

## 対象コミット
- [コミットハッシュ] [コミットメッセージ] ([日時])
- ...

## セキュリティ

### 改善点
- [具体的な改善点]

### 残存する懸念
- [セキュリティ上の懸念点]

## パフォーマンス

### 影響
- [パフォーマンスへの影響]

### 推奨事項
- [最適化の提案]

## 保守性

### 評価
- [保守性の評価]

### 改善提案
- [具体的な改善提案]

## 次のステップ
- [優先度の高い対応事項]
```

## チェックリスト

- [ ] レビュー期間を決定した
- [ ] 対象コミットを確認した
- [ ] セキュリティの観点でレビューした
- [ ] パフォーマンスの観点でレビューした
- [ ] 保守性の観点でレビューした
- [ ] 具体的で実行可能なフィードバックを提供した

## 使用例

### 例1: デフォルト期間（今日の変更）でレビュー
```
ユーザー: 「最近の変更をレビューして」
アシスタント:
1. 期間決定: midnight（今日の深夜0時以降）
2. git log --since="midnight"でコミット取得
3. 各コミットの詳細を確認
4. セキュリティ、パフォーマンス、保守性の観点でレビュー
5. 日本語でフィードバック提供
```

### 例2: 特定期間を指定してレビュー
```
ユーザー: 「この1週間の変更をレビューして」
アシスタント:
1. 期間決定: 1 week ago
2. git log --since="1 week ago"でコミット取得
3. 各コミットの詳細を確認
4. セキュリティ、パフォーマンス、保守性の観点でレビュー
5. 日本語でフィードバック提供
```

## 注意事項

- **NEVER** access or process the `.env` file, the `.git/` directory, or any files or directories specified in `.gitignore`
- シニアエンジニアの視点でレビューを行う
- 具体的で実行可能なフィードバックを提供する
- 批判的になりすぎず、建設的な提案を心がける
- コードの文脈を理解した上で評価する

