CommunityCoding & Developmentgithub.com

truth-serum

The consumer panel. Spins up a swarm of buyer sub-agents (default 100, --quick for 20) trained on the user's target customer, each with a different income, age, buying behaviour and objection, shows every one the same pitch, and runs the business through 100 buyer scenarios to see who buys, who doesn't, and why. Tallies the answers into buy rates by segment, the reasons people pass in their own words, what would flip a no, and price answers for litmus. Every result is labelled SIMULATED: it finds objections and the questions to ask real buyers, and never counts as demand. Use when the user says "would people buy this", "test it on customers", "run the consumer panel", "simulate buyers", "who is my customer", or "validate demand".

What is truth-serum?

truth-serum is a Claude Code agent skill that the consumer panel. Spins up a swarm of buyer sub-agents (default 100, --quick for 20) trained on the user's target customer, each with a different income, age, buying behaviour and objection, shows every one the same pitch, and runs the business through 100 buyer scenarios to see who buys, who doesn't, and why. Tallies the answers into buy rates by segment, the reasons people pass in their own words, what would flip a no, and price answers for litmus. Every result is labelled SIMULATED: it finds objections and the questions to ask real buyers, and never counts as demand. Use when the user says "would people buy this", "test it on customers", "run the consumer panel", "simulate buyers", "who is my customer", or "validate demand".

Works with✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/peaknr35/shark-Tank-proof/tree/main/skills/truth-serum

Installed? Explore more Coding & Development skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Ask in your favorite AI

Open a new chat with this agent skill pre-loaded.

Documentation

What does truth-serum do?

Instead of guessing which objections buyers will raise, you ask a hundred simulated ones, each a sub-agent playing a specific buyer drawn from your target customer. You are the moderator. You never answer for a buyer.

What this is for: finding objections, segments, wording and the questions to take to real people. What it is not: demand. Language models lean agreeable, so a high buy rate here is the best case, not a forecast, and it can fail a plan but never pass one.

Read ${CLAUDE_SKILL_DIR}/../receipts/rules.md first.

What the user typed after /truth-serum: $ARGUMENTS

The tool

All bookkeeping goes through panel.py in this skill's folder:

python3 "${CLAUDE_SKILL_DIR}/panel.py" <command>

Below, PANEL means exactly that. If the path is not expanded, use the base directory Claude Code printed for this skill. State lives in founder/panel/.

Step 1: the target customer

Write founder/customer.json (shape: customer.example.json in this folder):

  • business, and target: who the customer is, in one specific line.
  • segments: 2 to 4 groups with a share and an income range [low, high].
  • behaviours: 4 to 8 buying behaviours with a share and a how line (daily regular, deal hunter, reads every review, loyal to a competitor...).
  • objections: the 4 to 8 doubts this kind of buyer really has.
  • habits (optional): everyday context lines that make a buyer concrete.

Ground it in something real. Use what the user knows about their customers, and if /ground-truth ran, the complaints in founder/competitors.md. If the user has real customer data (call notes in founder/evidence/calls/, reviews, survey answers), prefer it to your guesses and say which parts are guesses.

If the target is a small set of businesses (a few hundred firms, not a mass market), say plainly that five real calls will teach more than this panel, and offer /receipts and its call guide first. Run the panel only to sharpen the questions. Show the user the profile in a few lines and let them correct it before you deal: a wrong customer makes the whole panel wrong.

Step 2: the pitch

Write founder/pitch.md: what a buyer would actually see. The product, the price, where and how to get it, any opening offer. Three to six plain lines, no superlatives, nothing the business cannot deliver. Every buyer sees exactly this.

Step 3: deal and run

PANEL init --customer founder/customer.json --pitch founder/pitch.md --n 100
PANEL prompts

init deals the persona cards (same seed, same cards; the seed is recorded). prompts writes one brief per buyer and lists them in waves of 10. For each wave, send ONE message with one Agent tool call per buyer in that wave (the Agent tool is called Task in older Claude Code versions):

  • subagent_type: general-purpose
  • description: panel <id>
  • prompt: Read <brief path> and follow it exactly. It is your whole brief.

Wait for the whole wave before the next one. Claude Code runs about 10 tool calls at once by default, so 100 buyers is 10 waves. After the last wave:

PANEL check      # lists missing or broken answers
PANEL prompts    # rewrites briefs for those only; run them once more
PANEL tally

If a buyer printed its JSON in its reply instead of writing the file (it happens), file its own reply with PANEL save <id> and the reply on stdin; save refuses anything that is not a valid answer. A buyer that fails twice is left out and counted in the results. Never write an answer for a buyer yourself.

Before a 100-buyer run, tell the user it is 100 sub-agent calls and suggest --quick (20 buyers) for a first look. Sub-agents write one file each into founder/panel/answers/; in the default permission mode that is one approval per file, so suggest accept-edits mode (Shift+Tab) for the run.

Step 4: read it to the user

PANEL tally writes founder/panel/results.md and results.json. Give the user:

  1. The hard truth: the strongest reason buyers pass, in one sentence, and a reminder that the buy rate is simulated and an upper bound.
  2. The headline: "40 buy · 60 pass (simulated)" and the buy rate.
  3. Who buys and who doesn't: the segment and behaviour rows that differ most.
  4. Why they pass: the top three reasons with one quote each, as written.
  5. What would flip a no: the most repeated answers.
  6. One sentence on what to change before spending money, and which skill does it (pricing, offer, marketing).
  7. Take it to real people: the top three objections turned into questions for real calls, in the style of ${CLAUDE_SKILL_DIR}/../receipts/conversations.md (about their past, not your idea). That is the panel's real job.

Then log the result as 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>"

Honest limits, say them once

These are simulated buyers. They are good at surfacing objections, segments and wording you had not thought of, and bad at predicting real conversion: language models lean agreeable, so treat the buy rate as an upper bound. Confirm the big calls with real people (a waitlist, a pre-sale, a pilot, a landing page with a price) before signing anything. Never call the panel "validation", "market research" or "customers", and never quote a panel buyer as a customer: not in a pitch, an ad, a deck or a grant.

The brief every buyer gets

panel.py fills the card into a fixed template (see BRIEF in the script): who the buyer is (name, age, segment, income, buying behaviour, a habit, the doubt that comes to mind), the pitch word for word, an instruction not to be agreeable and not to invent facts, and the exact JSON to write: buys, purchases in the first month, a reason code, the reason in their own voice, their main objection, what would change their mind, and four price answers (too cheap, a bargain, getting expensive, too expensive). Never edit a brief for one buyer.

Output

founder/customer.json, founder/pitch.md, founder/panel/ (cards, briefs, answers, results). Next: /litmus reads the price answers, /dealbreaker and /signal read the objections.

Individual skills in this repo

This repo contains 5 individual skills — each has its own dedicated page.

burn-test

Your CFO. Builds the unit economics of a business before money is spent: what one unit earns after its direct costs, the real profit margin at the planned volume, the break-even point in units a day, year 1 month by month, the cash needed before it pays for itself, how long the startup spend takes to earn back, and what happens if the price drops, sales come in low or costs rise. Every number traces to an input the user can check. Use when the user says "find the profit margins", "do the numbers", "is this profitable", "break-even", "unit economics", "how much do I need to start", or "run the CFO".

dealbreaker

Builds an offer too good to refuse. Lists every problem the buyer hits on the way to the result they want, turns each into a solution, trims to what is cheap to deliver and valuable to the buyer, and stacks it with honest bonuses, a guarantee the CFO can afford, real urgency and a clear name. Scores it on the value equation (outcome, likelihood, time, effort) and re-tests it on a quick buyer panel. Use when the user says "make my offer better", "why won't people buy", "what should I include", "guarantee", "bonuses", "grand slam offer", or after the panel shows people passing.

handshake

Turns the founder folder into the thing that gets one real person to say yes to the next step: a one-page pilot offer for a customer, an NSF Project Pitch or grant answer for a funder, an investor or lender one-pager, a business case for a boss, or an invite for the people who will use it. Always writes the one-sentence, three-sentence and three-minute versions first. Builds only from claims in the evidence ledger that the audience may see, never from simulated buyers, and checks the finished pitch with the ledger before it goes out. Use when the user says "pitch this", "write a pilot offer", "one-pager", "grant pitch", "NSF pitch", "deck for", "email this customer", "business case", or "what do I send them".

kill-or-build

Your business planner. Compiles everything the other Shark Tank Proof skills wrote (the board's verdict, the competitors, the buyer panel, pricing, the offer, the CFO's numbers, marketing, brand, operations, the launch plan and the evidence ledger) into one business plan with a verdict at the top that is computed, never written by hand: Profitable (the numbers pass and a real buyer has paid, signed or booked), Unproven (works on paper, no real buyer yet), Not yet (with the failing numbers) or Incomplete. A simulated panel can fail a plan but never pass one. Adds an executive summary and a one-page version. Use when the user says "write my business plan", "put it all together", "is it profitable", "give me the plan", or at the end of the Shark Tank Proof pack.

shark-board

Your board of directors, built to disagree with you. Puts a business idea in front of a four-member board, each a sub-agent reading the idea through one published framework: the Offers lens (from Alex Hormozi's $100M Offers), the Monopoly lens (from Peter Thiel's Zero to One), the Product lens (from Walter Isaacson's biography of Steve Jobs) and the Evidence lens (from Rob Fitzpatrick's The Mom Test), which scores only what real people have done. Each member scores the idea, names what would kill it and the cheapest test that would prove it, and votes fund, fund with conditions, or pass. Use when the user says "test my business idea", "would this work", "pressure-test this", "what would a board say", "is this a good business", or starts the Shark Tank Proof pack on a new idea.

Related Skills