.claude/skills/developing-review/SKILL.md
開発成果物のマルチパースペクティブレビューを実施。XP エージェント(プログラマー、テスター、アーキテクト、テクニカルライター、ユーザー代表)を並列起動し、コード品質・テスト品質・設計整合性・ドキュメント品質・利用者視点からフィードバックを収集・統合する。「コードレビューして」「PR をレビューして」「実装をチェックして」「テストコードをレビューして」「この変更をレビューしてほしい」「コードの品質を確認して」といった場面で発動する。開発成果物に対するレビュー依頼があれば積極的に使用すること。
npx skillsauth add k2works/getting-started-algorithm developing-reviewInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
開発フェーズの成果物(プロダクションコード、テストコード、PR、リファクタリング結果など)を複数の XP エージェントで並列レビューし、多角的なフィードバックを統合する。
コードレビューは単なるバグ発見の手段ではない。設計の妥当性、テストの十分性、将来の変更容易性、ドキュメントとの整合性、そして実際のユーザーにとっての価値を同時に検証することで、「変更を楽に安全にできて役に立つソフトウェア」を維持する。
| エージェント | 視点 | 着眼点 |
|:---|:---|:---|
| xp-programmer | コード品質 | SOLID 原則、DRY、命名、可読性、TDD サイクルの遵守、シンプルな設計 |
| xp-tester | テスト品質 | テストカバレッジ、境界値、エッジケース、テストの信頼性、テストピラミッドのバランス |
| xp-architect | 設計整合性 | アーキテクチャとの整合、依存関係の方向、変更容易性、技術的負債の蓄積 |
| xp-technical-writer | ドキュメント品質 | API ドキュメント、コメントの適切さ、README の更新必要性、機能の理解しやすさ |
| xp-user-representative | 利用者視点 | 実装された機能がユーザーの期待に合っているか、業務フローとの整合、使い勝手 |
ユーザーのリクエストに応じてレビュー範囲を決定する。
| リクエスト | レビュー範囲 |
|:---|:---|
| 「PR をレビュー」 | git diff で変更差分を取得 |
| 「このファイルをレビュー」 | 指定ファイルの全体 |
| 「最近の変更をレビュー」 | git log + git diff で直近の変更を取得 |
| 「実装をレビュー」 | 指定された機能に関連するファイル群 |
レビュー対象のコードを特定し、変更内容を把握する。
git diff でベースブランチとの差分を取得Agent ツールを使い、5 つのエージェントを 同一メッセージで並列起動 する。各エージェントには以下を指示する。
あなたは {エージェント名} です。
.claude/agents/{エージェント名}.md の定義に従ってレビューしてください。
## レビュー対象
{変更差分 / ファイル内容}
## 関連コンテキスト
{関連する設計ドキュメント、テストファイル、ユーザーストーリー}
## レビュー観点
{エージェント固有の着眼点}
## 出力形式
以下の形式でフィードバックを返してください:
### 評価サマリー
(1-2 文で全体評価)
### 良い点
- (具体的に)
### 改善提案
- 【重要度: 高/中/低】(ファイル:行番号)(具体的な改善提案と理由)
### 懸念事項
- (潜在的なバグ、セキュリティリスク、パフォーマンス問題など)
### スコープ外の発見
- (レビュー対象外だが報告すべき問題)
Agent ツールが利用できない環境では、5 つの視点を逐次的にシミュレートする。各エージェントの定義ファイル(.claude/agents/{エージェント名}.md)を読み、その視点でレビューを順次実施する。出力形式は同一のテンプレートに従う。
全エージェントのフィードバックを受け取った後、以下の形式で統合レポートを作成する。
## コードレビュー結果
### レビュー対象
- {ファイル名 / PR 番号}
### 総合評価
(全エージェントの評価を統合した 2-3 文の評価)
### 改善提案(重要度順)
#### 高(マージ前に対応すべき)
| # | 提案 | 箇所 | 指摘元 | 理由 |
|---|------|------|--------|------|
#### 中(対応推奨)
| # | 提案 | 箇所 | 指摘元 | 理由 |
|---|------|------|--------|------|
#### 低(改善の余地あり)
| # | 提案 | 箇所 | 指摘元 | 理由 |
|---|------|------|--------|------|
### 矛盾事項
複数エージェントの指摘が相反する場合、ここに記載する。
| # | 視点 A | 視点 B | 論点 | 推奨判断 |
|---|--------|--------|------|----------|
### エージェント別フィードバック詳細
<details>
<summary>xp-programmer(高: N / 中: N / 低: N)</summary>
(フィードバック全文)
</details>
<details>
<summary>xp-tester(高: N / 中: N / 低: N)</summary>
(フィードバック全文)
</details>
<details>
<summary>xp-architect(高: N / 中: N / 低: N)</summary>
(フィードバック全文)
</details>
<details>
<summary>xp-technical-writer(高: N / 中: N / 低: N)</summary>
(フィードバック全文)
</details>
<details>
<summary>xp-user-representative(高: N / 中: N / 低: N)</summary>
(フィードバック全文)
</details>
重要度「高」の指摘は具体的な修正コードを提案する。修正を適用するかはユーザーの判断に委ねる。
統合レポートを docs/review/{対象名}_review_{YYYYMMDD}.md に保存する。過去のレビュー結果と比較できるようにし、改善のトレーサビリティを確保する。
以下をすべて満たした場合にレビュー完了とする。
orchestrating-development — 開発フェーズの全体ワークフローdeveloping-backend — バックエンド TDD 開発developing-frontend — フロントエンド TDD 開発git-commit — レビュー結果の保存後のコミットtools
イテレーション計画と上流設計ドキュメント群(ユーザーストーリー、ドメインモデル、データモデル、UI 設計)との整合性を検証する。「イテレーション計画を検証したい」「計画の整合性をチェックして」「イテレーション計画を作成した」「計画と設計ドキュメントの不整合を確認したい」といった場面で発動する。planning-releases でイテレーション計画を作成した直後にも積極的に使用すること。計画作成後に必ず本検証を実施することで、開発着手前にドキュメント間の不整合を検知・修正できる。
tools
プロジェクトの開発進捗を多角的に分析しレポートを生成。イテレーション達成度、技術実装状況、品質メトリクスを確認し、計画ドキュメントを自動更新する。「進捗を確認したい」「プロジェクトの状態を知りたい」「イテレーションの達成度を分析したい」「進捗ドキュメントを更新したい」といった場面で発動する。定期的な進捗可視化により、遅延や品質低下を早期に発見しプロジェクトの透明性を確保する。
testing
リリース計画を GitHub Project・Issue・Milestone に反映し一元管理。初回の一括同期から差異検出・自動同期まで対応する。「GitHub Project に同期したい」「Issue を作成したい」「計画と GitHub の差異を確認したい」「Milestone を設定したい」といった場面で発動する。計画ドキュメントを Single Source of Truth とし GitHub に自動反映することで、二重管理の手間と不整合を排除する。
development
テスト駆動開発から始めるプログラミング入門」の対話式チュートリアル。FizzBuzz を題材に TDD の Red-Green-Refactor サイクルを 14 言語で体験する。「TDD を練習したい」「FizzBuzz で TDD を学びたい」「テスト駆動開発の入門をしたい」「Java で TDD を体験したい」「Python で TDD を始めたい」「プログラミング入門チュートリアルをやりたい」「getting-start-tdd をやりたい」「TDD のハンズオンがしたい」「Red-Green-Refactor を体験したい」といった場面で発動する。TDD チュートリアルやプログラミング入門の要望があれば積極的に使用すること。