truth-serum は何をしますか?
購入者がどんな反論を出すか推測する代わりに、ターゲット顧客から抽出した特定の購入者を演じる100人のシミュレートされた購入者(各サブエージェント)に尋ねます。あなたはモデレーターです。購入者に代わって回答することは決してありません。
目的:反論、セグメント、表現、そして実際の人間に質問すべき点を見つけること。 目的ではないこと:需要予測。言語モデルは同調しやすいため、ここでの高い購入率はベストケースであり、予測ではありません。計画を否定することはできても、承認することはできません。
最初に ${CLAUDE_SKILL_DIR}/../receipts/rules.md を読んでください。
ユーザーが /truth-serum の後に入力した内容: $ARGUMENTS
ツール
すべての記録は、このスキルのフォルダにある panel.py を通じて行います。
python3 "${CLAUDE_SKILL_DIR}/panel.py" <command>
以下では、PANEL は上記のコマンドを正確に指します。パスが展開されない場合は、Claude Codeが表示したこのスキルのベースディレクトリを使用してください。状態は founder/panel/ に保存されます。
ステップ 1:ターゲット顧客
founder/customer.json を作成します(構造は customer.example.json を参照):
business、target:顧客が誰であるかを、具体的な一文で。segments:shareとincomeの範囲 [low, high] を持つ2~4のグループ。behaviours:shareとhow(毎日購入、掘り出し物ハンター、全レビューを読む、競合にロイヤル…)を持つ4~8の購買行動。objections:この種の購入者が本当に持つ4~8の疑問。habits(オプション):購入者を具体的にする日常のコンテキスト。
実際の情報に基づいてください。ユーザーが顧客について知っていること、そして /ground-truth が実行済みであれば founder/competitors.md の苦情を使用してください。ユーザーが実際の顧客データ(founder/evidence/calls/ の通話記録、レビュー、アンケート回答)を持っている場合は、あなたの推測よりもそれを優先し、どの部分が推測かを明示してください。
ターゲットが少数の企業(マスマーケットではなく数百社程度)の場合、実際の電話5本の方がこのパネルよりも多くのことを教えてくれると率直に伝え、代わりに /receipts とその通話ガイドを提供してください。パネルは質問を洗練するためだけに実行してください。プロファイルを数行でユーザーに表示し、取引の前に修正させてください。顧客を間違えると、パネル全体が無意味になります。
ステップ 2:ピッチ
founder/pitch.md を作成します:購入者が実際に目にするもの。製品、価格、入手場所と方法、初回オファー。3~6行の平易な文章で、最上級表現は避け、事業者が提供できないものは記載しないでください。すべての購入者は、これを正確に目にします。
ステップ 3:取引の設定と実行
PANEL init --customer founder/customer.json --pitch founder/pitch.md --n 100
PANEL prompts
init はペルソナカードを配布します(同じシード、同じカード。シードは記録されます)。
prompts は購入者ごとにブリーフィングを1つ書き、10件ずつのウェーブにリストします。各ウェーブについて、そのウェーブの購入者ごとに1つのAgentツール呼び出しを含む1つのメッセージを送信します(Agentツールは古いバージョンのClaude CodeではTaskと呼ばれます):
subagent_type:general-purposedescription:panel <id>prompt:<brief path> を読んで、その指示に正確に従ってください。それがあなたのすべてのブリーフィングです。
次のウェーブの前に、現在のウェーブが完了するのを待ちます。Claude Codeはデフォルトで約10個のツール呼び出しを同時に実行するため、100人の購入者では10ウェーブになります。最後のウェーブの後:
PANEL check # 欠落または壊れた回答を一覧表示
PANEL prompts # それらの購入者に対してのみブリーフィングを書き直す。もう一度実行
PANEL tally
購入者が回答でJSONを出力しただけでファイルを書き込まなかった場合(発生し得ます)、PANEL save <id> と標準入力からの回答で対応してください。save は有効な回答以外を拒否します。2回失敗した購入者は除外され、結果にカウントされます。自分で購入者の回答を書かないでください。
100人の購入者で実行する前に、ユーザーにそれが100回のサブエージェント呼び出しであることを伝え、最初の確認のために --quick(20人の購入者)を提案してください。サブエージェントは各ファイルを founder/panel/answers/ に書き込みます。デフォルトのパーミッションモードではファイルごとに1回の承認が必要なので、実行中は accept-edits モード(Shift+Tab)を提案してください。
ステップ 4:ユーザーに結果を読む
PANEL tally は founder/panel/results.md と results.json を書き込みます。ユーザーに以下を提供します:
- 厳しい真実: 購入者が購入を見送る最も強い理由を一文で、そして購入率はシミュレーションであり上限であるという注意喚起。
- 見出し:「40 buy · 60 pass (simulated)」と購入率。
- 誰が買い、誰が買わないか:最も差が大きいセグメントと行動の行。
- 購入を見送る理由:上位3つの理由と、そのままの引用各1つ。
- 反対を覆す条件:最も多く繰り返された回答。
- お金を使う前に変更すべきことと、それを実行するスキル(価格設定、オファー、マーケティング)についての一文。
- 実際の顧客に持ち込む: 上位3つの反論を実際の通話用の質問に変換し、
${CLAUDE_SKILL_DIR}/../receipts/conversations.mdのスタイルで記述します(あなたのアイデアではなく、彼らの過去について)。それがパネルの本当の役割です。
その後、結果を SIMULATED として記録します:
python3 "${CLAUDE_SKILL_DIR}/../receipts/ledger.py" add --kind demand --status SIMULATED --use PRIVATE --by truth-serum --claim "Simulated panel buy rate (seed <S>)" --number "<buys> of <answered>"
正直な限界、一度だけ伝える
これらはシミュレートされた購入者です。思いつかなかった反論、セグメント、表現を表面化させることに優れており、実際のコンバージョンを予測することには優れていません。言語モデルは同調しやすいため、購入率は上限として扱ってください。重要な判断は、実際の人間で確認してから(ウェイティングリスト、プレセール、パイロット、価格付きランディングページ)署名してください。パネルを「バリデーション」「市場調査」「顧客」と呼んだり、パネルの購入者を顧客として引用したりしないでください。ピッチ、広告、デッキ、助成金のいずれでも禁止です。
すべての購入者が受け取るブリーフィング
panel.py はカードを固定テンプレート(スクリプト内の BRIEF を参照)に挿入します:購入者が誰か(名前、年齢、セグメント、収入、購買行動、習慣、思い浮かぶ疑問)、そのままのピッチ、同調せず事実を捏造しないという指示、そして書き込む正確なJSON(購入、初月の購入、理由コード、自身の言葉での理由、主な反論、考えを変える条件、4つの価格回答(安すぎる、お買い得、高くなってきた、高すぎる))。特定の購入者用にブリーフィングを編集しないでください。
出力
founder/customer.json、founder/pitch.md、founder/panel/(カード、ブリーフィング、回答、結果)。
次に:/litmus が価格回答を読み、/dealbreaker と /signal が反論を読みます。