| name | implementation-plan |
| description | 実装計画(Plan)ファイルを作成する。TDD・コミット分割・テストケース一覧・工数見積もりを含む再現性の高い Plan を生成する。機能追加・バグ修正・リファクタリング等の実装計画策定時に使用。トリガー: 「Planを作って」「計画を立てて」「実装計画を」 |
Implementation Plan スキル
あらゆるテックスタックで使える、再現性の高い実装 Plan ファイルを作成する。
前提
Plan 作成前に以下が揃っていること。揃っていなければユーザーに確認:
- 対象スコープ: 何を実装するか
- コードベース理解: 既存の該当ファイル・パターンを把握済み
- 技術スタック: 言語・フレームワーク・テストフレームワークが判明
- 制約条件: 既存規約・アーキテクチャ制約が判明(
AGENTS.md や CLAUDE.md 等から読み取り)
Plan ファイルの配置先
docs/plan/plan-<topic>.md
(実装済みのPlanは、docs/plan/archived/に移動)
Plan ファイルの必須構造(12 セクション)
以下をこの順序で含めること。セクションの省略は禁止。
1. ヘッダー
# Plan: <タイトル>
<1-2文で何を実装するか>
> **Note**: 以下の具体的なコード例・API 設計・構成(How)はあくまで参考である。実装時によりよい設計方針があれば積極的に採用すること。
Note は必ず含める。How に固執しないことを宣言する。
2. 設計方針
3-5 個の箇条書き。参考にした外部実装・既存パターンがあれば明記。技術的な意思決定(なぜこのアプローチか)を含める。
3. Plan スコープ
WT作成 → 実装(TDD) → コミット(意味ごとに分離) → PR作成
Worktree を使用しない場合は WT作成 を省略。
4. 対象一覧
テーブル形式で何を対象にするかを一覧化。
5-N. Step(TDD サイクル)
各 Step は 必ず 以下の構成:
## Step N: <モジュール名> (TDD)
### RED: テスト先行
| テストケース | 内容 |
|---|---|
| `test_name` | <検証内容> |
### GREEN: 実装
<概要。コード例は参考レベル>
### コミット
`<type>: <description>`
テストを最後にまとめる Step は禁止。 各 Step が独立して RED → GREEN → コミットを完結する。
テストケースの網羅性は references/test-coverage.md を参照。
動作確認 Step
- 全テスト通過コマンド
- Lint / フォーマット / 型チェック
PR 作成 Step
変更ファイル一覧
テーブル形式。**新規** / 変更 を明記。
コミット分割
Conventional Commits 形式。1 コミット = 1 論理的変更。対象ファイルを併記。
テストケース一覧
- 全テストケースに 連番 を振る
- モジュールごとにグループ化
- グループ名に件数
(X) を記載
- セクションヘッダーに
全 N 件 を記載
工数見積もり
Step ごとに 行数 で見積もる。テストコードも含む。合計行数を明記。
テンプレート
assets/plan-template.md に空のテンプレートがある。docs/ 配下にコピーして使用。
よくある落とし穴
| 落とし穴 | 対策 |
|---|
| テストが最後にまとまっている | 各 Step に RED → GREEN を組み込む |
| エッジケースのテスト不足 | 空・null・大文字小文字・境界値を必ず含める |
| コードが詳細すぎる | 参考レベルにとどめ実装者に判断を委ねる |
| Step 間の依存が不明 | 依存する Step に「前提: Step N」を明記 |
| 工数見積もりが抽象的 | 行数で具体的に見積もる |