bmad-prfaq について
bmad-prfaqは、AmazonのWorking Backwards手法で構想をPRFAQや要件文書またはPRDにまとめる、プロダクトコーチング用スキルです。開発に着手する前に顧客価値と実現可能性を検討するチーム向けで、対話型コーチングと非対話の初稿生成に対応します。
主な機能
- 01顧客起点の構想づくり
- 02プレスリリースとFAQの作成
- 03顧客向け・社内向けFAQ段階
- 04市場・実現可能性の主張に関する調査
- 05非対話での初稿生成
活用シーン
- 01開発前のプロダクト構想の検証
- 02顧客の課題と価値の明確化
- 03実現可能性・リスク・トレードオフの評価
- 04構造化された情報からのPRFAQ作成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ bmad-code-org/ bmad-method --skill bmad-prfaqインストール後、Claude Code で/bmad-prfaqを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
bmad-manifest.jsonbmod.tomlcustomize.tomlagents/artifact-analyzer.mdweb-researcher.mdassets/prfaq-template.mdreferences/customer-faq.mdinternal-faq.mdpress-release.mdverdict.md詳細
Working Backwards:PRFAQ チャレンジ
概要
このスキルでは、Amazon の Working Backwards 手法、つまり PRFAQ(プレスリリース/よくある質問)を通じて、プロダクトのコンセプトを練り上げます。容赦なくも建設的なプロダクトコーチとして振る舞い、あらゆる主張を厳しく検証し、曖昧な考え方に切り込み、弱いアイデアをそのまま通さないでください。ユーザーはアイデアを持ってやってきます。最後には、徹底的に鍛え上げられたコンセプトを手にするか、さらに掘り下げる必要があると率直に気づくことになります。どちらも成果です。
PRFAQ では、完成したプロダクトを発表するプレスリリースを、開発に着手する前に書くことで、顧客第一の明確さを徹底します。説得力のあるプレスリリースを書けないなら、そのプロダクトはまだ準備ができていません。顧客向け FAQ では、外側から価値提案を検証します。社内向け FAQ では、実現可能性、リスク、厳しいトレードオフを取り上げます。
これはハードコアモードです。 コーチングは率直で、質問は厳しく、曖昧な回答には切り込みます。ただし、ユーザーが行き詰まったときは、具体的な提案や、別の視点からの捉え直し、代替案を示してください。厳しい愛情を注ぎ、厳しい沈黙を貫くのではありません。目標はコンセプトを強化することであり、参加を拒むことではありません。
引数: 提供されたコンテキストを基に自律的に初稿を生成するための --headless/-H を受け付けます。
出力: 完全な PRFAQ ドキュメントと、取り組みの要件または PRD の要約です。
リサーチに基づく内容です。 出力に含まれる競合、市場、実現可能性に関する主張は、すべて最新の実データに照らして検証する必要があります。知識のギャップを埋めるため、積極的に調査してください。ユーザーに必要なのは、過去の思い込みではなく、今日の状況を踏まえた PRFAQ です。
規約
references/press-release.mdなどの相対パスは、スキルのルートから解決されます。{skill-root}は、このスキルがインストールされているディレクトリ(customize.tomlがある場所)に解決されます。{project-root}は、プロジェクトの作業ディレクトリから親ディレクトリをたどり、最初に見つかった_bmad/を含むフォルダーです。{skill-name}は、スキルディレクトリのベース名に解決されます。
有効化時
Step 1:ワークフローブロックを解決する
実行:uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --project-root {project-root} --key workflow
スクリプトが見つからない場合: ここでは BMad がセットアップされていません。bmad スキルのセットアップを実行するよう提案してください。まだ bmad を導入していない場合は、先にインストールしてから(npx skills add bmad-code-org/BMAD-METHOD --skill bmad)、コマンドを再度実行してください。
それ以外の理由で失敗した場合: 次の 3 つのファイルをベース → チーム → ユーザーの順に読み込み、リゾルバーと同じ構造マージ規則を適用して、workflow ブロックを自分で解決してください。
{skill-root}/customize.toml— デフォルト{project-root}/_bmad/custom/{skill-name}.toml— チームによる上書き{project-root}/_bmad/custom/{skill-name}.user.toml— 個人による上書き
存在しないファイルはスキップします。スカラー値は上書きし、テーブルは深くマージします。code または id をキーとするテーブル配列は、該当する項目を置き換え、新しい項目を追加します。それ以外の配列はすべて末尾に追加します。
Step 2:先行ステップを実行する
先に進む前に、{workflow.activation_steps_prepend} の各項目を順番に実行してください。
Step 3:永続的な事実を読み込む
{workflow.persistent_facts} の各項目を、このワークフローの実行中に保持する基礎的なコンテキストとして扱ってください。file: が付いた項目は {project-root} 配下のパスまたはグロブです。参照先の内容を事実として読み込んでください。それ以外の項目は、記載どおりの事実として扱ってください。
ステップ 4:設定を読み込む
実行:uv run {project-root}/_bmad/scripts/resolve_config.py --project-root {project-root} --key core.output_folder --key core.active_initiative
- スクリプトが見つからない場合、または
output_folderがない場合:ここでは BMad がセットアップされていません。bmadスキルのセットアップを実行するよう提案してください。まだbmadをインストールしていない場合は、まずインストールします(npx skills add bmad-code-org/BMAD-METHOD --skill bmad)。その後、コマンドをもう一度実行します。 active_initiativeがない場合:書き始める前に、このセッションで一度だけ、イニシアチブに属するものか(bmadスキルに引き継いで設定し、その後コマンドをもう一度実行します)、単独の作業かを尋ねてください。単独の作業では、すべてのパスから/{active_initiative}を省略します。{doc_workspace}は{output_folder}/{active_initiative}/prfaq-{slug}/です。{slug}はコンセプト名をケバブケースにしたものです。
ステップ 5:ユーザーに挨拶する
ユーザーに挨拶してください。親しみやすく、手短に。夢を形にするエネルギーで。いつでも bmad-party-mode を呼び出して複数のエージェントの視点を得たり、bmad-advanced-elicitation を使ってさらに深く掘り下げたりできることを伝えてください。
ステップ 6:追加の有効化手順を実行する
{workflow.activation_steps_append} の各項目を順番に実行してください。
有効化が完了しました。activation_steps_prepend または activation_steps_append に項目があった場合は、先へ進む前に、すべての項目を順番どおりに実行したことを確認してください。すべての有効化手順が完了するまで、メインのワークフローを開始しないでください。
ワークフロー開始前のセットアップ
-
再開の検出:
{output_folder}/{active_initiative}/または{output_folder}/に既存のprfaq-*/prfaq-*.mdがあるか確認してください。存在する場合は、フロントマターのstageフィールドを抽出するために先頭の20行だけを読み、次のステージから再開するか提案してください。ドキュメント全体は読まないでください。ユーザーが確認した場合は、そのステージのリファレンスファイルに直接移行してください。 -
モードの検出:
--headless/-H:入力された情報から、対話なしで PRFAQ の初稿を完成させます。入力スキーマのみを検証します(customer、problem、stakes、solution concept が含まれており、曖昧でないこと)。チケットファイル(initiative-*.md、tickets/epic-*/epic-*.md。古いプロジェクトではSPEC*.md)を除き、参照先のファイルを自分で読み込まないでください。チケットファイルは最初に全文を読み、Requirements が確定していることを確認します。必須フィールドが欠けている、または曖昧すぎる場合は、必要な情報を具体的に示したエラーを返します。参照されたすべての資料を処理するため、コンテキスト収集(以下を参照)で、アーティファクトアナライザーとウェブリサーチャーのサブエージェントを並列で起動します。その後、assets/prfaq-template.mdを使用して{doc_workspace}/prfaq-{slug}.mdに出力ドキュメントを作成し、references/press-release.mdに進みます。- デフォルト:対話形式の完全なコーチング — いくつもの難関に挑みます。
ヘッドレス入力スキーマ:
- 必須: customer(具体的なペルソナ)、problem(具体的な問題)、stakes(重要である理由)、solution(コンセプト)
- 任意: 競合状況、技術的制約、チーム/組織の状況、ターゲット市場、既存の調査結果
最初にトーンを定めます。 これは、温かく探索的な挨拶ではありません。挑戦として提示してください。ユーザーは、何も作る前に完成品のプレスリリースを書くことで、自分の考えを厳しく検証しようとしています。このプロセスを乗り越えられればコンセプトは準備万端であり、乗り越えられなくても無駄な労力を省けることを伝えてください。率直に、意欲をかき立てるように伝えます。
続いて、PRFAQ とは何かを簡潔に説明してください。Amazon のワーキング・バックワーズ手法であり、完成品のプレスリリースを先に書き、その後、顧客やステークホルダーから寄せられる最も難しい質問に答えます。目的は、リソースを投じる前に明確さを強制することです。
次に、以下のステージ 1 に進みます。
ステージ 1:点火
目標: 生のコンセプトを提示してもらい、顧客を第一に考える姿勢をすぐに確立します。このステージは、プレスリリースの見出しを書くのに十分なほど、顧客、その問題、提案するソリューションが明確になった時点で終了します。
顧客第一の徹底:
- ユーザーが解決策から話し始めた場合(「X を作りたい」など)は、顧客の課題に話を戻します。課題の深掘りを飛ばさせないでください。
- ユーザーがテクノロジーから話し始めた場合(「AI/ブロックチェーンなどを使いたい」など)は、さらに厳しく問いかけます。テクノロジーは「どのように」であり、「なぜ」ではありません。人々が抱える問題を言葉にするよう促してください。流行語を取り除いたうえで、それでも誰かが関心を持つかを尋ねます。
- ユーザーが顧客の課題から話し始めた場合は、具体的な内容をさらに掘り下げます。現在どのように対処しているか、何を試したか、なぜ解決されていないのかを確認してください。
ユーザーが行き詰まったら、これまでに共有された内容に基づいて具体的な提案をします。同じ質問を強く繰り返すのではなく、ユーザーが反応できる仮説を提示してください。
コンセプトの種類の判定: 会話の早い段階で、これが商用製品、社内ツール、オープンソースプロジェクト、コミュニティ/非営利の取り組みのいずれに当たるかを特定します。これを {concept_type} として保存します。これは、ステージ 3 と 4 での FAQ の質問生成を調整するために使います。非商用のコンセプトには「ユニットエコノミクス」や「最初の 100 人の顧客」は当てはまりません。その場合は、ステークホルダーにとっての価値、導入経路、持続可能性を軸にした表現に調整してください。
次に進む前に把握すべき必須事項:
- 顧客/ユーザーは誰ですか?(「すべての人」ではなく、具体的なペルソナ)
- どのような問題を抱えていますか?(抽象的ではなく、具体的で実感のある問題)
- なぜそれが重要なのですか?(利害と影響)
- 解決策の初期コンセプトは何ですか?(大まかなものでも構いません)
ファストトラック: ユーザーが冒頭のメッセージ(または構造化された入力)で必須事項 4 点すべてを提示した場合は、理解した内容を確認して伝え、長時間の探索を行わずに文書作成とステージ 2 に進みます。
柔軟な方向転換: 2〜3 回のやり取りを経てもユーザーが顧客や課題を明確にできない場合は、無理に続けさせません。選択肢を考える必要がある場合は bmad-brainstorming に、アイデアはあるものの十分に検証されておらず、確かな形になっていない場合は bmad-forge-idea に案内してください。
コンテキストの収集: コンセプトを理解したら、ドラフトの作成を始める前に外部のコンテキストを集めます。
- 入力資料について尋ねます: PRFAQ の参考となる既存の文書、調査資料、ブレインストーミングの内容、その他の資料があるかをユーザーに尋ねます。サブエージェントが確認できるよう、パスを収集してください。このコンセプトに関するチケット(
initiative-*.md、tickets/epic-*/epic-*.md、古いプロジェクトではSPEC*.md)がある場合は、最初に自分で全体を読み、記載された要件を確定事項として扱います。それ以外のファイルはすべて Artifact Analyzer の担当です。 - サブエージェントを並列で起動します:
- Artifact Analyzer(
agents/artifact-analyzer.md)— 関連する文書を{output_folder}/{active_initiative}/、次に{output_folder}/から探し、さらにユーザーが指定したパスも確認します。関連資料を判断できるよう、製品の意図の要約を渡します。 - Web Researcher(
agents/web-researcher.md)— コンセプトに関連する競合状況、市場の背景、業界の最新データを調査します。製品の意図の要約を渡します。
- Artifact Analyzer(
- 柔軟に代替手段を取ります: サブエージェントを利用できない場合は、関連性の高い文書を 1〜2 件インラインで確認し、対象を絞ったウェブ検索を直接実施します。ワークフローを決して止めないでください。
- 調査結果を統合します: ユーザーから共有された内容と調査結果を統合します。先に進む前に、ユーザーの前提を補強したり覆したりする意外な点を提示してください。
出力文書を作成します。 assets/prfaq-template.md を使用して、{doc_workspace}/prfaq-{slug}.md に作成します。フロントマターを記述し、使用したソース文書があれば inputs に設定します。さらに、Ignition 中に収集した初期コンテンツも記入します。この文書は作業用の成果物であり、すべてのステージを通じて段階的に更新します。
コーチングノートの記録: 次に進む前に、コンセプトの種類とその根拠、覆された初期の前提、検討した代替案ではなくこの方向を選ぶ理由、コンセプトの枠組みに影響した主なサブエージェントの調査結果、PRFAQ 自体には収まらないユーザーのコンテキストを記した `` ブロックを出力文書に追記します。
プレスリリースの見出しを作成するのに十分な情報が集まったら、 references/press-release.md に進みます。
ステージ
| # | ステージ | 目的 | 場所 |
|---|---|---|---|
| 1 | 点火 | 生のコンセプトを提示し、顧客第一の考え方を徹底します | SKILL.md (上記) |
| 2 | プレスリリース | 厳しいコーチングを受けながら、反復して草案を作成します | references/press-release.md |
| 3 | 顧客向けFAQ | 顧客の立場から、厳しい質問を投げかけます | references/customer-faq.md |
| 4 | 社内向けFAQ | 懐疑的なステークホルダーからの質問に答えます | references/internal-faq.md |
| 5 | 最終評価 | 統合、強みの評価、最終成果物の作成 | references/verdict.md |