個人開発でも施策が50を超えると、「次に何をやるべきか」の判断が最大のボトルネックになります。自分1人では全施策の依存関係・期待効果・実装コストを俯瞰できません。
この問題に対して、Claude Codeを「プロダクトマネージャー」として活用する対話パターンを確立しました。AIにWBSと運用データを読ませ、施策の提案・評価・優先順位付けを依頼します。ただし最終判断は必ず人間が行います。本記事では、実際の対話履歴をもとに、AIをPMとして使う具体的なパターンとその限界を記録します。
PMとしてのAIに何を求めるか
従来の課題
個人開発では、以下の役割を1人でこなす必要があります。
1開発者: コードを書く2テスター: テストを書く・実行する3PM: 何を作るか決める ← ここが最もリソースが足りない4運用者: 本番を監視するPMの仕事——施策の列挙、効果見積もり、優先順位付け、競合チェック——は、コンテキスト(WBS・運用データ・過去の判定結果)が揃っていればAIが得意とする領域です。
AIに渡すコンテキスト
1@.wbs/CURRENT.md ← 53施策のステータス・依存関係2@CLAUDE.md ← プロジェクトルール・制約3@memory/measure_workflow_details.md ← 施策ワークフローの詳細4運用ログ・過去の判定結果 ← 実績データこれらのファイルをコンテキストとして渡すことで、AIは「現在のプロジェクト全体」を把握した上で施策を提案できます。
PM対話の6ステップパターン
実際の運用から確立した、AIをPMとして使う6ステップの対話パターンを示します。
ステップ1: 現状分析を依頼
1人間: @.wbs/CURRENT.md 現在の自動化プロジェクトの運用状況を分析してください。2 特に、直近1ヶ月のパフォーマンスと未解決の課題を整理してください。AIがWBSを読み、実行中の施策数、Dry-Run中の施策、Go/No-Go判定待ちの施策を一覧化します。この段階では「何が起きているか」の事実整理だけを依頼します。
ステップ2: 課題を伝える
1人間: 月単位でパフォーマンスが低下している月があります。2 日単位でも改善が見込める施策案はありますか?課題を具体的に伝えます。「改善したい」ではなく「月単位でパフォーマンス低下」という事実を示します。AIは事実に基づいて施策を検討できますが、曖昧な要望からは曖昧な提案しか出ません。
ステップ3: 制約を明示
1人間: 制約として以下を考慮してください。2 - 初期リソースは限定的3 - 実装は2週間以内4 - 既存パイプラインへの影響は最小限5 - 新しい外部API依存の追加は避ける制約なしに提案を求めると、「機械学習モデルの再構築」のような大規模な提案が出てきます。実装期間・予算・技術的制約を事前に明示します。
ステップ4: 施策案を依頼
1人間: 高い月次パフォーマンス改善が期待できるまたはリスク軽減として効果的な施策案はありますか?2 現在のWBSの施策一覧を参考に星3以上の効果が期待できるもののみ提案してください。「星3以上のみ」というフィルタリングが重要です。制約なしだとAIは20案出してきて、人間が選べなくなります。期待効果の閾値を指定することで、AIの出力を絞り込みます。
ステップ5: 評価基準を提示
1人間: 以下の基準で各案を比較してください。2 1. 期待効果(月次パフォーマンスへの影響、定量的に)3 2. 実装難易度(日数と必要な変更範囲)4 3. リスク(既存機能への影響、パラメータ感度)5 4. 既存施策との競合AIが提案した施策を、統一された基準で横並び比較させます。
ステップ6: 採用/却下を判断
1人間: 案2を採用。WBSに追加してください。2 施策IDはOPT-35で。最終判断は必ず人間が行います。AIの提案は「選択肢の提示」であり、「決定」ではありません。
実際の対話例
例1: リスク軽減施策の提案
1人間: @.wbs/CURRENT.md 現在の本番システムにおいて2 リスク軽減として効果的な施策案を提案してください。3 制約: 実装2週間以内、既存パイプラインへの影響最小4
5AI: 現在のWBSを分析しました。リスク軽減観点で6 星3以上の効果が期待できる施策は以下の3案です。7
8 施策案1: CircuitBreaker閾値の動的調整(★★★★)9 - 効果: 急激な負荷変動時の障害を30%削減見込み10 - 実装: 3日(既存CircuitBreakerモジュールの拡張)11 - リスク: 低(閾値変更のみ、ロジック変更なし)12 - 競合: なし13
14 施策案2: メトリクス連動バッチサイズ調整(★★★★★)15 - 効果: 外部メトリクス高騰時のリスクを自動制御16 collapsed lines
16 - 実装: 1週間(外部メトリクスデータ取得 + バッチサイズ計算ロジック追加)17 - リスク: 中(パラメータチューニング必要)18 - 競合: OPT-30(バッチサイズ自動書き換え)と部分的に競合19
20 施策案3: データソース相関による同時処理制限(★★★)21 - 効果: 相関の高いデータソースの同時処理を制限し集中リスクを回避22 - 実装: 5日(相関マトリクス計算 + フィルター追加)23 - リスク: 低(既存のリクエストフィルターに追加するだけ)24 - 競合: なし25
26 推奨: 案1は低リスク・短期間で実装可能なため即座に着手可能です。27 案2は効果が最も高いですが、OPT-30との競合を解消する設計が必要です。28
29人間: 案2を採用。OPT-30との競合については、メトリクス連動の調整結果を30 OPT-30のバッチサイズ計算に入力として渡す設計にしてください。31 WBSにOPT-35として追加してください。例2: パラメータのデフォルト値の議論
1人間: 制限期間のデフォルト値はどうすべきか。2 現在は固定で30日にしているが、根拠がない。3
4AI: 制限期間のデフォルト値について、以下の観点から分析します。5
6 1. 過去データからの分析:7 - 直近6ヶ月の施策Go/No-Go判定データを見ると、8 30回の処理サイクル到達までの平均日数は22.4日9 - 標準偏差は8.7日10 - 95%の施策が38日以内に30サイクルに到達11
12 2. 提案:13 デフォルト値 = ceil(平均 + 1σ) = 32日14
15 根拠:10 collapsed lines
16 - 平均22.4日 + 標準偏差8.7日 = 31.1日 → 32日17 - これで約84%の施策がデフォルト期間内に判定可能18 - 30日(現行)と大差ないが、統計的根拠がある19
20 3. 代替案:21 - 保守的: ceil(平均 + 2σ) = 40日(95%カバー)22 - 積極的: ceil(平均) = 23日(50%カバー、早期判断)23
24人間: 32日を採用。ただし設定ファイルで変更可能にして、25 ハードコードはしないでください。例3: 月次改善の施策探索
1人間: 月単位・日単位でも改善が見込める施策案はありますか?2 現在、月間でパフォーマンスが低下する月が3割程度ある。3
4AI: 月間パフォーマンス低下率30%を改善するための施策を分析します。5
6 現在のパフォーマンス構造:7 - 好調月の平均改善率: +4.2%8 - 低調月の平均低下率: -2.8%9 - 低調月の主因: 大きなパフォーマンス低下が月初に発生するケース10
11 施策案(星3以上):12
13 1. 月初リスク低減モード(★★★★)14 - 月初5営業日はバッチサイズを50%に制限15 - 過去データでは低調月の68%が月初のパフォーマンス低下が原因8 collapsed lines
16 - 期待効果: 低調月を30% → 20%に削減17
18 2. 適応的パフォーマンス回復(★★★★★)19 - 月中に一定のパフォーマンス低下が発生したら段階的にバッチサイズ削減20 - 3段階: -3%で70%, -5%で50%, -8%で停止21 - 期待効果: 低調月の低下幅を平均40%圧縮22
23 3. ...AIがPMとして得意なこと
全施策を俯瞰した分析
50以上の施策の依存関係を人間が頭で把握するのは困難です。AIはWBSを読んで即座に「OPT-35を実装するならOPT-30との競合を解消する必要がある」と指摘できます。
1# AIが内部的に行っている分析のイメージ2def analyze_conflicts(wbs: dict, new_measure: str) -> list[str]:3 """新施策と既存施策の競合をチェック"""4 conflicts = []5 new_scope = wbs[new_measure]["affected_modules"]6 for measure_id, measure in wbs.items():7 if measure_id == new_measure:8 continue9 overlap = set(new_scope) & set(measure.get("affected_modules", []))10 if overlap:11 conflicts.append(12 f"{measure_id}: {measure['name']} "13 f"(競合モジュール: {', '.join(overlap)})"14 )15 return conflicts定量的な効果見積もり
「この施策の期待効果は月次パフォーマンス+0.3%」のような定量評価を、過去データに基づいて算出できます。人間が「感覚的に良さそう」と判断するのに対し、AIは数値で根拠を示します。
既存施策との競合チェック
1AI: 注意: 提案した施策案2(メトリクス連動バッチサイズ調整)は、2 以下の既存施策と競合する可能性があります。3
4 - OPT-30(バッチサイズ自動書き換え): バッチサイズ計算ロジックが重複5 - ADD-A2(適応的パフォーマンス回復): バッチサイズ削減の判断基準が競合6
7 解決策:8 1. メトリクス連動の結果をOPT-30の入力として統合する9 2. パフォーマンス回復モード中はメトリクス連動を無効化する優先順位を設定WBSの自動更新
施策の採用が決まれば、WBSへの登録をAIに依頼できます。
1人間: 案2を採用。OPT-35としてWBSに追加してください。2
3AI: .wbs/CURRENT.md を更新しました。4
5 追加内容:6 | OPT-35 | メトリクス連動バッチサイズ調整 | 計画中 | OPT-30 | 04-10 |7
8 依存関係: OPT-30(バッチサイズ自動書き換え)の完了後に実装開始9 Go/No-Go判定: 2026-05-15(Practice期間30日)AIがPMとして苦手なこと
運用環境の「肌感覚」
AIは過去データを分析できますが、「最近の外部環境は雰囲気が変わった」という定性的な判断ができません。例えば、上流サービスのAPI仕様変更が示唆する長期的な影響の変化は、データに現れる前に人間が感じ取ることがあります。
1× AI: 過去6ヶ月のデータでは現在の処理ルールが有効です。2 → 過去データに基づく分析は正しいが、環境変化後は通用しない可能性3
4○ 人間: 上流APIの仕様変更が予想されるので、フォールバック対応の施策を優先したい。5 → 運用環境の「空気」を読んだ判断リスク許容度の判断
「どこまでリスクを取るか」はチームの状況・リソース・メンタルに依存します。AIは「統計的に最適なリスク量」を計算できますが、「この障害が発生したとき自分が冷静に対応できるか」は判断できません。
「やめどき」の判断(サンクコスト問題)
AIは「統計的にNO-GO」とは言えますが、「この施策に3週間かけたから、もう少し粘りたい」という人間の感情を理解しません。逆に言えば、サンクコストに引きずられない判断ができるのはAIの強みでもあります。ただし、「この施策を続けることの戦略的意味」(例:技術的学習効果)を考慮する判断は人間にしかできません。
優先順位の最終決定
AIは「効果が高い順」「リスクが低い順」で並べ替えられますが、「今の自分にとって何が最も重要か」は人間の価値判断です。
1AI: 効果順: 案2 > 案1 > 案32 リスク順: 案1 > 案3 > 案23 実装速度順: 案1 > 案3 > 案24
5人間: 今月は安定性を優先したいので、リスクが最も低い案1から着手する。6 → 人間の「今の状況」に基づく判断CLAUDE.mdへのPMルール統合
AIにPMとして一貫した提案をさせるために、CLAUDE.mdに以下のルールを追加しました。
1## 施策提案ルール2- 提案時は必ず★評価(1-5)を付けること3- 既存施策との競合を確認すること4- 実装期間と期待効果の比(ROI)を明示すること5- 制約が明示されていない場合は、以下のデフォルト制約を適用:6 - 実装期間: 2週間以内7 - 既存パイプラインへの影響: 最小限8 - 新しい外部API依存: 原則追加しないこのルールにより、「★評価を忘れる」「競合チェックをスキップする」といった提案品質のばらつきを防止しています。
PM対話のアンチパターン
アンチパターン1: 制約なしの提案依頼
1× 人間: 何か良い施策はありますか?2
3○ 人間: リスク軽減として効果的な施策案を提案してください。4 制約: 実装2週間以内、星3以上の効果が期待できるもののみ。制約なしだとAIは網羅性を優先し、実装不可能な大規模案も含めて20案出してきます。
アンチパターン2: AIの提案をそのまま採用
1× AI: 案2を推奨します。2 人間: わかりました、案2で。3
4○ AI: 案2を推奨します。5 人間: 案2の前提となっている外部メトリクスデータの取得頻度は?6 リアルタイムが必要なら実装コストが上がる。AIの推奨を鵜呑みにせず、前提条件を確認します。AIが見落としている実装上の制約が見つかることがあります。
アンチパターン3: WBSに記録しない
1× 人間: いい案だね。(セッション終了)2 → 次のセッションでは提案内容が消失3
4○ 人間: 案2を採用。WBSにOPT-35として追加してください。5 → WBSに記録 = 施策の「コミット」WBSに登録しない提案は「その場限りのアイデア」で終わります。記録が施策の実行可能性を担保します。
学んだこと
1. AIは「施策の網羅的な列挙」と「定量評価」が得意。人間は「この状況でどれを優先するか」の判断が得意
AIが50施策の依存関係を把握し、競合をチェックし、定量的に効果を見積もります。人間は「今の運用環境ではリスク軽減を優先」「今月は安定性重視」といった状況判断を行います。この役割分担が最も生産的です。
2. 「星3以上のみ」のようなフィルタリング指示が効果的
AIは制約なしだと20案出してきて選べなくなります。「星3以上」「実装2週間以内」「既存パイプラインへの影響最小」のような制約を事前に示すことで、実行可能な候補に絞り込めます。フィルタリング指示の精度が、PM対話の品質を決めます。
3. WBSに記録しないと、提案は「その場限りのアイデア」で終わる
AIとの対話で出た良い施策案も、WBSに登録しなければ次のセッションで忘れ去られます。WBS登録が施策の「コミット」です。逆に、WBSに登録することで依存関係チェックやGo/No-Go判定のフローに乗り、実行まで追跡されます。
まとめ
AIをプロダクトマネージャーとして活用する上で重要なのは以下の3点です。
- 6ステップの対話パターン: 現状分析→課題提示→制約明示→施策依頼→評価基準提示→採用判断。特に「制約の明示」と「フィルタリング指示」がAIの出力品質を決定する
- AIの強みと限界の使い分け: 網羅的列挙・定量評価・競合チェックはAIに任せ、運用環境の肌感覚・リスク許容度・最終優先順位は人間が判断する
- WBS登録を「コミット」とする: 提案→採用→WBS登録→実装→Go/No-Go判定のフローを確立し、アイデアが実行まで追跡される仕組みを作る
AIは優秀なアナリストですが、最終判断を委ねてはいけません。「AIが提案し、人間が決める」この原則が、PM対話の品質を支えています。