コードベース包括的レビュー。6観点(perf/sec/test/arch/cq/docs)を並列サブエージェントで実行し、優先度付きissueファイルをメモリディレクトリに生成。
コードベース全体を6つの観点から並列でレビューし、発見した問題点を優先度付きのissueファイルとして記録する。
本スキルの起動は、それ自体が「6観点の並列委譲によるレビュー」の実行依頼である。
/codebase-review を実行した場合| 観点 | 略語 | 説明 |
|---|---|---|
| Performance | perf | N+1、不要な再レンダリング、重い処理等 |
| Security | sec | 脆弱性、認証・認可、入力検証等 |
| Test | test | テストカバレッジ、テストケース不足 |
| Architecture | arch | 責務分割、依存関係、設計パターン |
| Code Quality | cq | 命名、一貫性、可読性、不要コード |
| Documentation | docs | ドキュメント不足、内容の陳腐化 |
| 優先度 | 略称 | 説明 | 対応期限 |
|---|---|---|---|
| critical | crit | 即座に対応必須(本番障害、重大脆弱性) | 即時 |
| major | maj | 早期対応推奨(バグ、セキュリティリスク) | 次リリースまで |
| minor | min | 改善推奨(設計改善、技術的負債) | 計画的に対応 |
| trivial | triv | 余裕があれば対応(軽微な改善) | 任意 |
※ アルファベット順でソートすると正しい優先度順になる
# PJ CLAUDE.mdのMEMORY_DIRを確認(未定義なら.local/)
# システムプロンプトのToday's dateから日付を取得(例示をコピーしない)
mkdir -p ${MEMORY_DIR}/memory/YYMMDD_codebase-review
mkdir -p ${MEMORY_DIR}/issues
05_log.mdを初期化
PJのCLAUDE.mdとcontext/を確認し、アーキテクチャルールを把握
コードベース構造の把握
# ディレクトリ構造を取得
find . -type d -not -path '*/node_modules/*' -not -path '*/.git/*' | head -100
# 主要ファイルタイプの分布を確認
find . -type f \( -name "*.ts" -o -name "*.tsx" -o -name "*.py" -o -name "*.md" \) \
-not -path '*/node_modules/*' | wc -l
各観点の担当は issue ファイルと観点サマリを自分で書くため、herdr pane へ委譲する。経路の選択・モデルの選択・起動と結果の回収・失敗時の調査は @context/herdr-delegation.md が真実源(本スキルには複写しない)。Herdr 外の環境では同ファイルのフォールバック規定に従い、Claude Code では subagent_type=general-purpose で代替する(Exploreはファイル書き込み不可でissueファイルを作成できないため)。並列機構が無い環境(Codex 等)では、6観点を同一テンプレートで逐次実行して代替する。
指示書の組み立て(観点ごとに1ファイル):
references/subagent-prompts.md をReadし、指示書テンプレート(タスク1〜5)を取得するreferences/review-aspects.md をReadし、各観点の詳細指示・優先度基準を取得する## あなたの担当観点 に該当観点の内容を挿入し、{...} を実値で埋めて、6観点分の指示書を <メモリディレクトリ>/task-<観点略語>.md に書き出すreferences/subagent-prompts.md の絶対パス(成果物の形式を委譲先に読ませるため)起動(6並列):
--kind claude を全観点に使う(外部CLIレビューは担当の内部でタスク3として呼ばれるため、pane 側で kind を分けない)--out には観点サマリ <メモリディレクトリ>/aspect-<観点略語>.md を指定する(issue は0件になり得るので、完了判定に使えるのは観点サマリだけ)タスク1〜5はすべて必須。--skip-multimodel が明示指定されない限りタスク3(agent cli並行レビュー)を省略しない(マルチモデル検証を欠くと検出の信頼度が下がるため)。観点別の詳細指示のみを渡すのは不十分で、テンプレート全体を渡すこと。
委譲先の完了後:
ls -la ${MEMORY_DIR}/memory/YYMMDD_codebase-review/aspect-*.md
観点サマリが無い観点は未完了として扱う(結果JSONの status と pane を確認する。失敗時の調査手順は @context/herdr-delegation.md)。
ls -la ${MEMORY_DIR}/issues/
観点サマリの件数と実際のissueファイル数を突き合わせる(食い違いは書き漏れか、観点間の重複を統合した痕跡のどちらか。どちらかを確認してからサマリーに反映する)
マルチモデル検証の統計を集計(各issueファイルから)
サマリーファイルを作成
# コードベースレビュー サマリー
## 実行日時
YYYY-MM-DD HH:MM
## 統計
| 優先度 | 件数 |
|--------|------|
| critical | X |
| major | X |
| minor | X |
| trivial | X |
| **合計** | **X** |
| 観点 | crit | maj | min | triv | 計 |
|------|------|-----|-----|------|-----|
| perf | X | X | X | X | X |
| sec | X | X | X | X | X |
| test | X | X | X | X | X |
| arch | X | X | X | X | X |
| cq | X | X | X | X | X |
| docs | X | X | X | X | X |
## マルチモデル検証結果
- 両者一致(高信頼度): X件
- Claude Codeのみ検出: X件
- agent cliのみ検出 → 採用: X件
- 優先度差異あり: X件
## Critical Issues(要即時対応)
...
## Major Issues(要早期対応)
...
## 推奨対応順序
...
サマリーを提示し、以下を確認:
${MEMORY_DIR}/
├── memory/
│ └── YYMMDD_codebase-review/
│ ├── 05_log.md # 作業ログ
│ ├── task-<観点略語>.md # 観点ごとの指示書(leadが生成)
│ ├── aspect-<観点略語>.md # 観点サマリ(委譲先が生成。issue 0件でも必ず1つ)
│ └── summary.md # レビューサマリー
└── issues/ # issueファイル(マルチモデル検証済み)
├── critical-*.md # 各issueにマルチモデル検証結果を含む
├── major-*.md # アルファベット順で優先度順にソート
├── minor-*.md
└── trivial-*.md
/codebase-review [options]
--scope <path> 対象ディレクトリを限定(例: src/server)
--focus <観点> 特定の観点のみ実行(例: sec,perf)
--priority <level> 指定優先度以上のみ報告(例: major)
--github issueをGitHubに登録
--skip-multimodel agent cli並行レビューをスキップ(Claude Codeのみ)
6観点の進捗は、委譲の結果ファイルと 05_log.md の委譲記録で追う(起動時刻・成果物パス・完了の有無を観点ごとに1行)。
--skip-multimodel が明示指定されない限り実行する(マルチモデル検証を欠くと検出の信頼度が下がるため)