write-a-prd について
write-a-prdは、詳細なユーザーへの聞き取りとリポジトリ調査を通じて、プロダクト要件文書を作成するスキルです。成果物は、範囲や実装・テストの判断を含むGitHub issueとしてまとめます。
主な機能
- 01リポジトリの現状を調査
- 02要件についてユーザーに詳しく聞き取り
- 03対象範囲と除外項目を定義
- 04モジュールとテスト要件を整理
- 05PRDをGitHub issueとして構成
活用シーン
- 01問題の説明からPRDを作成
- 02コードベースに照らして変更案を確認
- 03実装範囲とテスト方針を合意
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ mattpocock/ ralph-workshop-repo-001 --skill write-a-prdインストール後、Claude Code で/write-a-prdを入力して読み込まれたか確認します。
詳細
このスキルは、ユーザーが PRD の作成を希望したときに呼び出されます。以下の手順に従ってください。必要ないと判断した手順は省略してもかまいません。
-
解決したい問題と、考えられる解決策のアイデアについて、詳しく説明してもらいます。
-
リポジトリを調査し、ユーザーの主張を検証するとともに、コードベースの現状を把握します。
-
ほかの選択肢を検討したかどうかを尋ね、ほかの選択肢も提示します。
-
実装についてユーザーにヒアリングします。非常に詳細かつ徹底的に行ってください。
-
実装の正確な範囲を明確にします。この PRD で何を構築し、何を構築しないのかを決めます。
-
実装を完了するために構築または変更が必要な主要モジュールの概要をまとめます。単独でテストできる、深いモジュールを抽出できる機会を積極的に探してください。
深いモジュールとは、浅いモジュールとは対照的に、変更頻度の低いシンプルでテスト可能なインターフェースに、多くの機能をカプセル化したモジュールです。
これらのモジュールがユーザーの期待に合っているか確認してください。どのモジュールにテストを書いてほしいか、ユーザーに確認してください。
- 問題と解決策を完全に把握したら、以下のテンプレートを使って PRD を作成します。PRD は GitHub の Issue として提出します。
問題の説明
ユーザーの視点から見た、ユーザーが直面している問題です。
解決策
ユーザーの視点から見た、問題に対する解決策です。
ユーザーストーリー
長く、番号付きのユーザーストーリーのリストです。各ユーザーストーリーは次の形式にしてください。
- <利用者>として、<メリット>を得るために、<機能>を使いたい
このユーザーストーリーのリストは非常に広範なものとし、機能のあらゆる側面を網羅してください。
「仕上げ」の要件
ユーザーストーリーが完成すると、機能またはアプリケーションは動作するものの、まだ洗練されていない状態になります。作業が完了したら、仕上げの段階に進みます。
ここには、ユーザーの満足度と使い心地を最大限に高めるため、作業の最後に実施する仕上げや改良のための確認項目を記載します。
作業範囲を大きく広げるのではなく、作成した要素間の調和を保ち、エラーが適切に処理されることを確認し、使いやすく美しいものにするための項目にしてください。
実装に関する決定事項
決定した実装事項のリストです。以下を含めることができます。
- 構築または変更するモジュール
- 変更するモジュールのインターフェース
- 開発者による技術的な補足
- アーキテクチャ上の決定
- スキーマの変更
- API コントラクト
- 具体的なインタラクション
具体的なファイルパスやコードスニペットは含めないでください。すぐに古くなる可能性があります。
テストに関する決定事項
決定したテスト方針のリストです。以下を含めてください。
- 優れたテストの条件の説明(実装の詳細ではなく、外部から見た動作のみをテストする)
- テスト対象のモジュール
- テストの先行事例(コードベース内の類似したテストなど)
対象外
この PRD の対象外となる項目の説明です。
補足
機能に関するその他の補足事項です。