mcpField
P
plan-first-development

plan-first-development

github.com/oakossエージェントワークフロー2097 回インストール10 週間前に更新
リポジトリ

plan-first-development について

plan-first-developmentは、開発者やエージェント向けの計画手法スキルです。大規模な作業では実装前の計画レビュー、タスク分解、セッション管理を重視し、簡単な変更には過剰な計画を避けるよう促します。

主な機能

  1. 01複数回のレビューによる計画改善
  2. 02複数モデルの計画案の統合
  3. 03依存関係のあるタスクとフェーズへの分割
  4. 04SESSION.mdによる進捗管理
  5. 05作業の複雑さに応じた計画深度の調整

活用シーン

  1. 01実装前の新規プロジェクト計画
  2. 02大規模機能のフェーズ分割
  3. 03チェックポイントからの複数セッション開発再開
  4. 04同じコードベースに取り組むエージェントの調整

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/oakoss/agent-skills --skill plan-first-development

インストール後、Claude Code で/plan-first-developmentを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
decision-tracking.md
document-templates.md
phase-planning.md
planning-process.md
review-workflows.md
session-management.md

詳細

計画

概要

実装を始める前に、時間の80%以上を計画に費やす、計画優先の開発手法です。計画のトークンは実装のトークンより安価であり、モデルは広大なコードベースよりも、コンテキストウィンドウに収まる詳細な計画について、より適切に推論できます。

使用する場面: 新しいプロジェクトの開始、大規模な機能の追加、複雑な作業のフェーズ分割、コンテキストがクリアされた後の作業再開、複数セッションにわたる実装の管理、同じコードベースで作業する複数のエージェントの連携。

使用しない場面: 迅速なバグ修正、1ファイルだけの変更、要件が不明な探索的プロトタイピング、変更内容が明らかな簡単なリファクタリング。

クイックリファレンス

計画フェーズ説明
1. 初期計画目標、意図、ワークフロー、技術スタックを記述する
2. 反復的な改善提案が出尽くすまで4~5回レビューする
3. 複数モデルの統合競合する計画を作成し、最善の要素を組み合わせる
4. タスクへの変換依存関係を整理した独立して実行できるタスク
5. タスクの仕上げ6回以上、モデル間でレビューする
フェーズの種類範囲最大ファイル数所要時間
インフラ足場の構築、ビルド設定、デプロイ3-51-3 hours
データベースマイグレーション、スキーマ、シードデータ2-42-4 hours
APIルート、ミドルウェア、バリデーション3-63-6 hours
UIコンポーネント、フォーム、状態、スタイル4-84-8 hours
統合サードパーティサービス、Webhook2-43-5 hours
テストE2Eテスト、統合テストさまざま3-6 hours
パターン目的主なポイント
計画と構築の使い分け複雑さの指標に基づく判断ツリー計画の深さをタスクの複雑さに合わせる
リスク評価発生確率 × 影響度のマトリックス高リスク項目を優先する
セッションのライフサイクルアクション
開始SESSION.md を読み、「Next Action」を確認して続行する
作業実装、検証、デバッグを繰り返す
チェックポイント定められた形式で Git にコミットし、SESSION.md のハッシュを更新する
終了SESSION.md を更新し、Git にチェックポイントを作成して、具体的な「Next Action」を設定する
再開SESSION.md と計画ドキュメントを読み、「Next Action」から続行する
ドキュメント生成するタイミング
実装フェーズ常に生成する――すべてのプロジェクトの中核となる計画ドキュメント
セッションの追跡常に生成する――進捗を確認するためのナビゲーションハブ
データベーススキーマテーブルが3つ以上ある場合
API エンドポイントエンドポイントが5つ以上ある場合
アーキテクチャ概要複数のサービスがある場合、またはシステム境界が複雑な場合
重要なワークフロー複雑なセットアップ手順や、順序に依存するワークフロー
良い計画優れた計画
構築するものを説明するなぜそれを構築するのかを説明する
機能を列挙するユーザーのワークフローと操作を詳しく説明する
技術スタックに言及するトレードオフを踏まえて技術選定の理由を説明する
タスクがある依存関係と根拠を示したタスクがある
約500行改善後は約3,500行以上

よくある間違い

間違い正しいパターン
計画が完了する前に実装を始める時間の80%以上を計画に費やし、コードを書く前にすべての改善ラウンドを終える
「API 作業を続ける」のように曖昧な次のアクションを書く具体的に記述する:「src/routes/tasks.ts:47 で PATCH /api/tasks/:id を実装する」
セッション管理ドキュメントが200行を超える完了したフェーズは要約にまとめ、詳細は計画ドキュメントを参照する
10個以上のファイルを含むフェーズを作成する5~8個のファイルからなるサブフェーズに自動分割し、1回の2~4時間のセッションに収まるようにする
1回だけの計画レビュー提案が出尽くすまで4~5回繰り返し、新たな視点を得るために複数モデルを組み合わせる
セッションドキュメントにコードをコピーするコードを貼り付ける代わりに、ファイルパスと行番号を参照する
セッションドキュメントに計画ドキュメントの内容を重複して記載するアンカーで該当セクションにリンクする。セッションドキュメントはナビゲーションハブとして使う
フェーズに検証基準がないすべてのフェーズに、具体的でテスト可能な終了基準(ステータスコード、ユーザーフロー、制約)を設ける
計画を作成する前にスケルトン優先でコーディングする段階的なスケルトン優先のコーディングより、徹底した計画を1つ作成するほうがよい
不慣れな技術を試作せずに計画する不慣れなフレームワークでは、まずスパイクを実施してから計画を作成する
単純なタスクを過剰に計画する複雑さに応じて計画の深さを調整し、些細な作業では省略する
前提条件を早い段階で検証しない最もリスクの高い前提条件について、まずスパイクを実施する

委任

  • アーキテクチャの決定に向けて既存のコードベースを調査する:計画を立てる前に、Explore エージェントを使ってファイル構成、パターン、依存関係を調査します
  • 検証を伴うフェーズの実装を実行する:Task エージェントを使って個々のフェーズを実装し、検証基準を実行して、チェックポイントのコミットを作成します
  • アーキテクチャを設計し、フェーズに分解する:Plan エージェントを使って、依存関係の順序とゲート基準を含む実装フェーズを作成します

参考資料

コメント