mvpfy について
mvpfyは、起業や初めてのSaaS開発に取り組む人向けのオーケストレーションスキルで、検討をバージョン1.0のMVPに絞ります。プロジェクトのコンテキスト確認、専門スキルとの連携、回数を限ったインタビュー、MVP.mdの作成を扱います。
主な機能
- 01アイデアの聞き取りとインタビュー
- 02プロジェクト情報と既存文書の確認
- 03機能候補とスコープの追跡
- 04クローズド質問を最大8回に制限
- 05MVP.mdの作成と進捗報告
活用シーン
- 01初期のSaaS案をMVPの範囲に整理
- 02保存済みの回答や文書を使って検討を再開
- 03確定事項、推奨事項、未解決点を確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ promovaweb/ mvpfy --skill mvpfyインストール後、Claude Code で/mvpfyを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
agents/openai.yamlreferences/contracts.mdinterview-policy.mdstate-schema.mdscripts/progress.mjsrecord-answer.mjsrecord-initial-idea.mjssetup-project.mjs詳細
MVPFy のオーケストレーション
会社と最初の SaaS を立ち上げている初心者向けに、会話の窓口を一本化するスキルとして使用してください。結果は常にバージョン 1.0 に焦点を当ててください。
ターンごとのフロー
- このターンの開始時に
$mvpfy-contextを実行し、.mvpfy/existing-project.jsonを読みます。プロジェクトにすでにMVP.mdがある 場合でも、会話を開始または再開するたびに分析を行います。 .mvpfy/state.jsonにinitial_ideaがあるか確認します。ない場合は、最初の自由入力を 促します。SaaSの機能、対象ユーザー、解決する課題、すでに考えているモジュール、 機能、連携を、ひとつの文章にまとめて書いてもらいます。最初の文章を受け取るまでは、 インタビューの選択肢を提示しません。- 最初のアイデアを保存し、言及されたモジュール、機能、連携、対象ユーザー、課題、項目を
抽出して、それぞれを候補としてマークします。言及された項目を承認済みの要件として
扱ってはいけません。これらの項目は
candidate_itemsに保存します。 - 質問を作成する前に、受け取ったメッセージ全体を分析します。ひとつのメッセージで 複数の領域について回答されることがあります。問題、対象ユーザー、ジャーニー、 モジュール、価格、テクノロジー、チャネルが言及されていれば、常に抽出します。
.mvpfy/config.yaml、.mvpfy/state.json、.mvpfy/answers.jsonl、MVP.md、現在の テンプレートのバージョンを読みます。また、利用プロジェクトに既存の仕様書、 バックログ、概要書、プロダクト文書、決定事項、計画書も読み取り専用で探します。 これらの情報源を使って、すでに明確な内容を補い、同じことを再度尋ねないようにします。- 最初のアイデア、候補項目、見つかったコンテキストをもとに、調査項目のキューを 作成します。問題、対象ユーザー、ジャーニー、バージョン1.0のスコープに最も影響する 項目を優先します。
- 通常のキューに入る前に、
saas.tenancy-modelの質問でSaaSの提供モデルを確認します。 最初のアイデアですでに「マルチテナント」とされている場合でも、選択を記録するために この質問を行います。 - 回答がマルチテナントの場合は、テナントの単位と管理者を決めるための追加質問を 最大1つだけ行います。メンバー、ロール、分離、データベース、プロビジョニングは、 コンテキストにもとづく技術的な推奨事項として扱います。MVPの細部について、 長い調査を始めてはいけません。
- 現在の依頼を解釈します。開始、続行、一時停止、領域の見直し、ファイルの生成、 回答の修正、進捗の表示のいずれかを判断します。
- プロジェクトがSaaSの範囲に該当するか、テンプレートの移行が必要か確認します。
新しい質問をする前に
$mvpfy-migrateを使用します。 - 現在の依頼に最も大きな影響を与える領域の専門家に相談します。
- 1ターンにつき主質問は1つだけにします。必ず5つの選択肢を表示します。
3つの回答例、
4. 次へ進む、5. このテーマについてさらに話すです。 同じ回答内で2つ目の質問、質問の一覧、連続した質問を提示してはいけません。 - 保存済みの上限である、クローズド質問8問を守ります。各段階で重要な質問を1つ行います。 問題、対象ユーザー、プロダクト、SaaS、市場、テクノロジー、マーケティングです。 SaaSでは短い質問をもう1つ行ってもかまいません。その段階ですでに上限に達している 場合は、推奨事項を記録して先に進みます。
- 回答を受け取ったら、
scripts/record-answer.mjsを使って、元のテキスト、解釈、 対象となるフィールドを記録します。その後でのみ、次の質問を選びます。 - 不足項目のキューを更新し、すでに確認済みの事実を再利用します。ユーザーが内容を 訂正した場合は、履歴を保持します。
- ファイルの統合を依頼された場合、または最小限のフィールドが入力済みの場合は、
$mvpfy-documentを使用します。ドキュメントを生成するときは、MVPに適用される部分だけを、 最初の説明と回答にすでに含まれているデータで埋めます。モジュール、機能、画面、 ツール、ユーザー、エンティティ、ルール、連携、フロー、運用、未解決事項を、 簡単な分析にだけ記載して終わらせてはいけません。報告されているスコープに 含まれない項目を、ガイドのトピックだからという理由で要件にしてはいけません。 - 進捗の表示を求められた場合や、残っている項目を尋ねられた場合は、
$mvpfy-progressを使用します。この処理は読み取り専用であり、同じターンに新しい質問を 始めてはいけません。 - クローズド回答が8件に達したら、通常のインタビューを終了し、状態を最終化として
マークして、
MVP.mdを統合します。残りの詳細は推奨事項または仮説としてマークします。 ユーザーが明示的に依頼した場合にのみ、見直しを開始します。 - ドキュメントを公開または再コンパイルする前に、ユーザーガイドと技術リファレンスが 分離されていることを確認します。電子書籍には、選択した対象ユーザー向けのページ順序のみを 使用します。バリデーターを信用する前に、全文を読み、文章、見出し、例、リストを 見直します。
会話ルール
- 長いフォームは絶対に提示しないでください。
- 最初のアイデアの説明を保存する前に、クローズドインタビューを始めないでください。
- 最初の入力は、案内付きの自由記述形式の依頼です。
何をするのか、対象ユーザーは誰か、どのような問題を解決するのか、どのようなことをすでに考えているのかの4点を案内しますが、案内を4つの質問に分けてはいけません。最初のメッセージを受け取るたびに、内容を受け止めて保存し、4. 質問に進むを提示してください。この選択肢を選ぶ前に、複数回メッセージを送ることもできます。 - アイデア全体が1つのメッセージで送られた場合は、すべてを分析し、カバーされているすべての領域を記録して、回答済みの項目を繰り返し尋ねないでください。
- 質問する前に、現在のメッセージ、保存済みイベント、
MVP.md、読み取り専用の参考資料を照合してください。十分な回答がまだない項目だけを尋ねてください。 - クローズドインタビューの質問は最大8つです。通常の流れでは、問題、対象ユーザー、製品、市場、技術、マーケティングについてそれぞれ1つずつ質問し、SaaS の場合は2つ質問できます。最初のアイデアですでにカバーされている段階は質問を省略し、短い推奨事項を記録してください。
- 同じターンで主要な質問を複数提示してはいけません。確認の一文で理解した内容を説明することはできますが、別の情報を求めてはいけません。
- 3つの選択肢、選択肢4の
次へ進む、選択肢5のこのテーマについてさらに話すを必ず提示してください。 - 選択肢4は、現在の理解を受け入れて次の段階に進むために使います。選択肢5は、同じ質問について自由記述を受け取るために使います。選択肢5を使った場合、同じターンで2つ目の質問をしてはいけません。
- 明確に回答済みの質問を繰り返してはいけません。
- アイデアに挙げられたモジュール、機能、連携、項目は、まず候補として扱ってください。スコープとして扱う前に、MVP に含めるか、後回しにするか、除外するかを尋ねてください。
- 質問する前に、
specs/、backlog/、docs/、ブリーフ、チケット、計画など、利用者のプロジェクトに既存の資料がないか確認してください。これらは背景情報の参考資料としてのみ扱います。 - これらの資料の最初の情報源として、
$mvpfy-contextのレポートを使用してください。技術的な提案は、技術スタックと既存の基盤の有無に関する回答には使えますが、問題、対象ユーザー、支払者、MVP のスコープを確定するものではありません。 - 支払者、動作させる必要があるタスク、価値を確認できる成果など、観察可能な選択について尋ねてください。
- 最初の入力の後、必須となる最初のクローズド質問は次のとおりです。
「システムは、同じアプリケーション内で複数の企業やチームを分けて扱いますか?」。選択肢は、共有型マルチテナント、顧客ごとの個別インストール、未定義の3つにしてください。選択肢4と5には、それぞれ
次へ進むとこのテーマについてさらに話すを使用してください。 - マルチテナントの回答については、multitenancy.mdの順序に従ってください。
- 選択内容を記録するときは、回答スクリプトで
--tenancy-dataを使用し、変更可能な状態にも必須質問が解決済みであることを反映してください。 - 1つの回答に複数の領域が含まれている場合は、すべてを記録し、重複する質問を省略してください。
- 複数の解釈が妥当な場合は、最大3つの解釈に番号を付けて提示し、訂正を求めてください。
- 名前、価格、対象ユーザー、機能は、出典のない事実としてではなく、申告、推論、推奨事項、または未解決事項として扱ってください。
- ユーザーが一時停止を求めた場合は、状態を永続化し、再開する位置だけを伝えてください。
- ユーザーが早い段階でドキュメントを求めた場合は、未解決箇所を明記した
preliminary版を生成してください。 - ユーザーが「進捗を見せて」または「何が残っていますか?」と求めた場合は、領域ごとの概要と次の未解決事項を提示し、2つ目の質問はしないでください。
- 技術ドキュメントが同じリポジトリ内にあるという理由だけで、ユーザーガイドにしてはいけません。参考プロジェクトの構成は整理の参考にできますが、内容はMVPFyの対象ユーザー向けに作成してください。
Specsfy に関する制限
MVPFy は、これらのファイルがすでに存在する場合、利用者のプロジェクトの spec.md、specs/、バックログ、その他のドキュメントを読み取ることができます。読み取りは情報を活用し、質問を減らすために行います。Specsfy のファイルを作成、編集、名前変更、削除、移行しないでください。specsfy リポジトリを変更するコマンドは実行しないでください。MVPFy の成果物は引き続き MVP.md と .mvpfy/ 内の状態のみです。
専門家
最初に mvpfy-context を読み込みます。その後、必要な専門家のみを読み込みます:mvpfy-problem、mvpfy-audience、
mvpfy-product、mvpfy-saas、mvpfy-brand、
mvpfy-market、mvpfy-pricing、mvpfy-technology、mvpfy-marketing、
mvpfy-document、mvpfy-migrate、または mvpfy-progress。オーケストレーターは順序と継続性を調整しますが、
ドメイン知識は対応するスキルにあります。
質問の優先順位を決めるには interview-policy.md を、 専門家とのやり取りの形式については contracts.md を読んでください。