段階 1:Bootstrap - 製品アイデアの構造化
BootstrapはAgent App Factoryパイプラインの最初の段階であり、あなたの曖昧な製品アイデアを整理して明確なinput/idea.mdドキュメントにする役割を担います。これは後続のPRD、UI、Techなどすべての段階の起点であり、プロジェクト全体の方向性と品質を決定します。
学習目標
- 曖昧な製品アイデアを標準テンプレートに従った
input/idea.mdドキュメントに整理できる - Bootstrap Agentの責務境界(情報収集のみ、要件の創造はしない)を理解する
- superpowers:brainstormスキルを使用して製品アイデアを深く掘り下げる方法を知る
- どの情報をBootstrap段階に含めるべきか、含めるべきでないかを判断できる
現在の課題
製品アイデアはあるが、記述が曖昧かもしれません:
- "フィットネスアプリを作りたい"(漠然としすぎ)
- "REDのようなアプリを作りたい"(差別化が不明)
- "ユーザーはより良いタスク管理ツールを必要としている"(具体的な問題が不明)
このような曖昧な記述は、後続の段階(PRD、UI、Tech)で明確な入力が不足し、最終的に生成されるアプリケーションがあなたの期待から完全に逸脱する原因となります。
いつ使用すべきか
パイプラインを開始する準備が整っており、以下の条件を満たしている場合:
- 初步的な製品アイデアがある(一文でも構いません)
- まだ要件書(PRD)を書いていない(PRDは後続の段階)
- 技術スタックやUIスタイルを決定していない(これらは後続の段階)
- 製品の範囲を制御し、オーバーデザインを回避したい(Bootstrap段階で非目標を明確にします)
🎒 開始前の準備
前提条件
Bootstrap段階を開始する前に、以下を確認してください:
- ✅ プロジェクト初期化を完了している
- ✅ 7段階パイプライン概要を理解している
- ✅ AIアシスタント(Claude Code推奨)をインストール・設定済み
- ✅ 製品アイデアを準備済み(曖昧でも構いません)
コア概念
Bootstrap段階とは?
Bootstrapはパイプライン全体の起点であり、その唯一の責務は断片的な製品アイデアを構造化されたドキュメントに整理することです。
プロダクトマネージャーではない
Bootstrap Agentはプロダクトマネージャーではありません。要件や機能を代わりに作成・設計することはありません。その役割は:
- あなたが提供した情報を収集する
- 情報を整理・組織化する
- 標準テンプレートに従って提示する
「どのような機能があるべきか」を決めるのではなく、「あなたが何を求めているか」を明確にする手助けをします。
なぜ構造化が必要か?
想像してください。シェフに「何か美味しいものを食べたい」と伝えるとします。
- ❌ 曖昧な記述:シェフは推測するしかなく、あなたが全く食べたくない料理を作るかもしれません
- ✅ 構造化された記述:「辛くて香菜を使わない川料理が好きで、ご飯に合うものを希望」
Bootstrap段階は「何か美味しいものを食べたい」を「辛くて香菜を使わない川料理」に変える作業です。
出力ドキュメント構造
Bootstrap段階はinput/idea.mdを生成し、以下のセクションを含みます:
| セクション | 内容 | 例 |
|---|---|---|
| 要約 | 製品を1-2文で概括 | "若者が日常の支出を素早く記録するためのモバイル家計簿アプリ" |
| 問題 (Problem) | ユーザーが直面するコアな課題 | "若者が月末に超支に気づくが、どこにお金を使ったか分からない" |
| ターゲットユーザー (Target User) | 具体的なユーザーペルソナ | "18-30歳の社会人1〜3年目、技術能力は中程度" |
| コアバリュー (Core Value) | なぜ価値があるか | "3秒で記帳可能で、手動照会より80%の時間を節約" |
| 仮説 (Assumptions) | 検証可能な2-4つの仮説 | "予算を管理できれば、ユーザーは2分かけてアプリを学習する意思がある" |
| 非目標 (Non‑Goals) | 明確にしないこと | "予算計画と財務アドバイスはしない" |
実践手順
ステップ1:製品アイデアの準備
パイプラインを開始する前に、製品アイデアをはっきりと考えます。完全な記述でも、単純なアイデアでも構いません。
例:
フィットネス初心者がトレーニングを記録できるフィットネスアプリを作りたい。運動種類、時間、カロリーを記録し、今週の統計も確認できるようにしたい。アイデアは荒くても構いません
一文でも構いません。Bootstrap Agentがsuperpowers:brainstormスキルを使って情報を補完します。
ステップ2:Bootstrap段階までパイプラインを起動
Factoryプロジェクトディレクトリで実行:
# パイプラインを起動(まだ起動していない場合)
factory run
# またはbootstrapから直接指定して起動
factory run bootstrapCLIが現在の状態と利用可能な段階を表示します。
ステップ3:AIアシスタントがBootstrap Agentの定義を読み取る
AIアシスタント(Claude Codeなど)は自動的にagents/bootstrap.agent.mdを読み取り、その責務と制約を理解します。
Agentの責務
Bootstrap Agentは以下のみ可能:
- 会話でユーザーが提供した製品アイデアを読み取る
input/idea.mdに書き込む
以下はできません:
- 他のファイルを読み取る
- 他のディレクトリに書き込む
- 新しい要件を作成する
ステップ4:superpowers:brainstormスキルの強制使用
これはBootstrap段階の重要なステップです。AIアシスタントは情報がすでに十分完全だと思っていても、必ず先にsuperpowers:brainstormスキルを呼び出す必要があります。
brainstormスキルの役割:
- 問題の本質を深く掘り下げる:構造化された質問によって記述の盲点を発見する
- ターゲットユーザーペルソナを明確にする:「誰に売るのか」をはっきりさせる手助けをする
- コアバリューを検証する:競合との比較によって差別化を見つける
- 暗黙の仮説を識別する:デフォルトで前提としているが未検証の仮説をリスト化する
- 製品範囲を制御する:非目標を通じて境界を明確にする
AIアシスタントが行うこと:
superpowers:brainstormスキルを呼び出す- あなたの元のアイデアを提供する
- スキルで生成された質問であなたに質問する
- 回答を収集し、アイデアを洗練させる
このステップをスキップすると拒否されます
Sisyphusスケジューラーはbrainstormスキルが使用されたかを検証します。使用されていない場合、Bootstrap Agentが生成した産物は拒否され、再実行が必要になります。
ステップ5:idea.mdの内容を確認
Bootstrap Agentが完了すると、input/idea.mdが生成されます。よく確認する必要があります:
チェックポイント ✅:
要約は明確か?
- ✅ 含む:何をするか + 誰のためにか + 何を解決するか
- ❌ 漠然としすぎ:「効率を上げるツール」
問題の記述は具体的か?
- ✅ 含む:シナリオ + 困難 + ネガティブな結果
- ❌ 空っぽ:「ユーザーエクスペリエンスが悪い」
ターゲットユーザーは明確か?
- ✅ 具体的なペルソナがある(年齢/職業/技術能力)
- ❌ 漠然としている:「すべての人」
コアバリューは定量化可能か?
- ✅ 具体的な利点がある(80%の時間を節約)
- ❌ 空っぽ:「効率を向上」
仮説は検証可能か?
- ✅ ユーザー調査で検証可能
- ❌ 主観的な判断:「ユーザーは気に入るはず」
非目標は十分か?
- ✅ 少なくとも3つの機能をリストアップしない
- ❌ 欠落または少なすぎる
ステップ6:継続、再試行、一時停止を選択
確認後、CLIがオプションを表示します:
操作を選択してください:
[1] 継続(PRD段階に進む)
[2] 再試行(idea.mdを再生成)
[3] 一時停止(後で継続)コードエディタで先に確認することを推奨
AIアシスタントで確認する前に、コードエディタでinput/idea.mdを開き、一字一句確認してください。一度PRD段階に入ると、修正コストが高くなります。
よくある落とし穴
落とし穴1:アイデアの記述が曖昧すぎる
間違った例:
フィットネスアプリを作りたい結果:Bootstrap Agentはbrainstormスキルを使って多くの質問をし、情報を補完します。
推奨:最初から明確に記述する:
フィットネス初心者がトレーニングを記録できるモバイルフィットネスアプリを作りたい。運動種類、時間、カロリーを記録し、今週の統計も確認できるようにしたい。落とし穴2:技術実装の詳細を含める
間違った例:
React Nativeで構築したい。バックエンドはExpress、データベースはPrisma...結果:Bootstrap Agentはこれらの内容を拒否します(製品アイデアのみ収集し、技術スタックはTech段階で決定されます)。
推奨:「何をするか」のみ記述し、「どのようにするか」は記述しない。
落とし穴3:ターゲットユーザーの記述が曖昧すぎる
間違った例:
フィットネスを必要とするすべての人結果:後続の段階で設計方向を明確にできません。
推奨:ペルソナを明確にする:
18-30歳のフィットネス初心者、体系的なトレーニングを始めたばかり、技術能力は中程度、簡易な記録と統計確認を希望。落とし穴4:非目標が欠落または少なすぎる
間違った例:
非目標:なし結果:後続のPRDとCode段階でオーバーデザインが発生し、技術的な複雑度が増加する可能性があります。
推奨:少なくとも3つリストアップ:
非目標:
- チーム協働とソーシャル機能(MVPは個人にフォーカス)
- 複雑なデータ分析とレポート
- サードパーティのフィットネス機器との連携落とし穴5:仮説が検証不可能
間違った例:
仮説:ユーザーは私たちのデザインを気に入るはず結果:ユーザー調査で検証できず、MVPが失敗する可能性があります。
推奨:検証可能な仮説を書く:
仮説:トレーニングを体系的に記録できれば、ユーザーは5分かけてアプリを学習する意思がある。本レッスンのまとめ
Bootstrap段階の核心は構造化です:
- 入力:あなたの曖昧な製品アイデア
- プロセス:AIアシスタントがsuperpowers:brainstormスキルを使って深く掘り下げる
- 出力:標準テンプレートに従った
input/idea.md - 検証:記述が具体的か、ユーザーが明確か、価値が定量化可能かをチェック
重要な原則
- ❌ しないこと:要件を作成しない、機能を設計しない、技術スタックを決定しない
- ✅ すること:情報を収集する、整理・組織化する、テンプレートに従って提示する
次回レッスンの予告
次回レッスンでは 段階 2:PRD - 製品要件書の生成 を学びます。
学習内容:
- idea.mdをMVPレベルのPRDに変換する方法
- PRDに含まれる内容(ユーザーストーリー、機能リスト、非機能要件)
- MVP範囲と優先順位を明確にする方法
- PRDに技術的な詳細を含めてはいけない理由
付録:ソースコード参照
クリックしてソースコードの場所を展開
更新日:2026-01-29
| 機能 | ファイルパス | 行番号 |
|---|---|---|
| Bootstrap Agent 定義 | agents/bootstrap.agent.md | 1-93 |
| Bootstrap Skill | skills/bootstrap/skill.md | 1-433 |
| パイプライン定義(Bootstrap段階) | pipeline.yaml | 8-18 |
| スケジューラー定義 | agents/orchestrator.checkpoint.md | 1-100+ |
重要な制約:
- brainstormスキルの強制使用:bootstrap.agent.md:70-71
- 技術詳細の禁止:bootstrap.agent.md:47
- 複数のアイデアの統合禁止:bootstrap.agent.md:48
- 出力ファイルは必ずinput/idea.mdに保存:bootstrap.agent.md:50
終了条件(pipeline.yaml:15-18):
- idea.mdが存在する
- idea.mdが一貫性のある製品アイデアを記述している
- Agentが
superpowers:brainstormスキルを使用して深く掘り下げている
Skillの内容フレームワーク:
- 思考フレームワーク:抽出 vs 創造、問題優先、具体化、仮説検証
- 質問テンプレート:問題、ターゲットユーザー、コアバリュー、MVP仮説、非目標について
- 情報抽出テクニック:機能から問題を逆推測、文句から要件を抽出、暗黙の仮説を識別
- 品質チェックリスト:完全性、具体性、整合性、禁止項目
- 意思決定原則:質問を優先、問題志向、具体が抽象より優先、検証可能性、範囲制御
- よくあるシナリオ処理:ユーザーが一文のみ提供、多くの機能を記述、競合を記述、矛盾するアイデア
- 例の比較:悪いidea.md vs 良いidea.md