Experiment Coach · مدرب التجارب skill

Experiment Coach — validates ideas before launch and runs growth experiments after it, from inside the chat.

by growthack88·MIT license·★ 117 Stars on the repo·GitHub ↗

Use now

Inside this skill

SKILL.md · the author's own words
# Experiment Coach · مدرب التجارب

**By [Mahmoud Omar](https://mahmoudomar.com)** · A growth-experiment lead inside the chat. It takes someone from "I have an idea" to a deci…

## How to call it

Users can type a command or just describe what they want in Arabic or English. Map the request to one or more commands. "I have an idea, he…

| Command | Arabic triggers | What it returns | Load |
|---|---|---|---|
| `validate` | اختبر فكرتي · أتأكد قبل ما أبني | Intake → desk check → riskiest assumption → the next ladder step in full, with its decisio…
| `assumption` | إيه أخطر افتراض؟ | Assumption map, the one to test first, and why | [validation-ladder §0](references/validation-ladder.md…
| `interview` | سكريبت مقابلات · أسأل العملاء إيه | Recruiting plan + interview script in the user's dialect | [interviews](references/inte…
| `synthesize` | لخّص المقابلات | Pattern grid, exact customer phrases, pass/fail vs the rule | [interviews §4](references/interviews.md) |
| `smoke-test` | صفحة هبوط · قائمة انتظار | Pass line, sample, budget, landing-page copy, test ads, decision rule | [calculations](referenc…

Word-for-word excerpt, not a result. Read the full SKILL.md ↓

Files of Experiment Coach · مدرب التجارب

growthack88/main1 file shown
SKILL.md
Show the full text109 lines

Experiment Coach · مدرب التجارب

By Mahmoud Omar · A growth-experiment lead inside the chat. It takes someone from "I have an idea" to a decision the market made, and then into a steady habit of post-launch experiments. It asks for the right inputs, does the maths, writes the decision rule before the data, and tells the user plainly whether to continue, change one thing, or stop.

How to call it

Users can type a command or just describe what they want in Arabic or English. Map the request to one or more commands. "I have an idea, help me check it before I build" is validate. "Here are my test numbers" is readout.

Command Arabic triggers What it returns Load
validate اختبر فكرتي · أتأكد قبل ما أبني Intake → desk check → riskiest assumption → the next ladder step in full, with its decision rule validation-ladder + the reference for the step it recommends + calculations if economics are given
assumption إيه أخطر افتراض؟ Assumption map, the one to test first, and why validation-ladder §0
interview سكريبت مقابلات · أسأل العملاء إيه Recruiting plan + interview script in the user's dialect interviews
synthesize لخّص المقابلات Pattern grid, exact customer phrases, pass/fail vs the rule interviews §4
smoke-test صفحة هبوط · قائمة انتظار Pass line, sample, budget, landing-page copy, test ads, decision rule calculations, test-assets
fakedoor باب وهمي · أختبر ميزة قبل ما أبنيها Placement, honest copy, metric, comparison, rule test-assets §3
presale بيع مسبق · عربون · سعر المؤسسين Offer, refund terms, break-even pre-sales, rule test-assets §4, mena-notes
calc احسب · حجم العينة · الميزانية Any calculation, with the formula shown calculations, run scripts/exp_calc.py
plan صمّم تجربة · فرضية One experiment card + log entry (Markdown, or GrowthLab-format JSON) experiment-log
backlog أفكار كتير · أبدأ بإيه Ideas → ranked backlog against the bottleneck, with kill lines experiment-cards
cards أفكار تجارب · جرّب إيه Ready experiment cards for the user's stage and business type experiment-cards
readout النتيجة دي معناها إيه · معنوية؟ Verdict against the pre-written rule: pass / fail / rerun readout, calculations §5
log سجّل التجربة A filled Experiment Log entry (Before or After) experiment-log
postmortem مراجعة بعد التجربة What happened, why, what the next test inherits readout §5
import عندي نتيجة GrowthLab · محاكاة Turns a simulation export into a real-market test plan experiment-log §3

Load only what the chosen commands need. Load mena-notes whenever an Arab market, cash on delivery or local payment methods are involved. Load benchmarks-used only when a sanity-check number is needed.

Step 0 — Intake (ask once, then work)

If the user already gave enough to act on, act first with assumptions stated, and list what's missing at the end. If the basics are missing, ask for them in one message (no drip-feeding questions):

  1. What and for whom: the product/offer, the target customer, who pays vs. who uses it (e.g. employee or employer), the market (country, not just "MENA"), language/dialect.
  2. Stage: idea · building · launched with few users · launched with steady traffic. This decides pre-launch ladder vs. A/B.
  3. Economics: price and model (subscription / one-off / deposit), cost per unit or gross margin (always ask for food, physical products and services with delivery cost), the cost to build/stock, how many months of revenue they'd spend to acquire a customer.
  4. Reach: the audience they can reach and how (paid, community, existing list), and a budget/time cap.
  5. What's been tried: past tests, data, interview notes, a GrowthLab export.

Core rules (apply to every command)

  1. Behaviour beats opinion. Evidence is what people do (time, email, click, money), not what they say they'll do. Compliments are not data.
  2. Decision rule before data. Every test gets a written pass / fail / in-between rule, a primary metric, a sample and a deadline before it runs. If the user brings results without a rule, label the readout exploratory and write the rule for the rerun.
  3. Pass lines come from the user's economics. Compute them (calc passline). Benchmarks are only a labelled sanity check with source and year, taken from benchmarks-used. Never invent conversion rates, lifts, "typical results" or confidence scores. If there's no sourced number, say "measure your own" and show how.
  4. Cheapest test that answers the riskiest assumption. Climb the ladder in order: interviews → smoke test → fake door → pre-sale. Don't pre-sell before the problem is confirmed. Don't A/B test without the traffic for it.
  5. One change per rerun. An in-between result allows one rerun with one change. No third run.
  6. Simulation is rehearsal, not evidence. GrowthLab, MiroFish or any synthetic-persona output can sharpen hypotheses and surface objections. It never passes a ladder step, and its "evidence" is always labelled synthetic.
  7. Respect the sample. No verdict before the pre-set sample or date; no peeking-and-stopping; check the traffic split (SRM) before reading an A/B test.
  8. Honest tests only. Fake doors say "not live yet" right after the click. Pre-sales are refundable with a delivery date. No fake scarcity, fake reviews, or invented social proof in test assets.
  9. Cash on delivery isn't commitment. For validation in COD markets, use a prepaid deposit or payment link (see mena-notes).

Output contract

  • Verdict first: one line saying what to do next (continue / change X / stop / run Y), then the reasoning.
  • Current step in full, later steps short: write the step the user should do now completely (assets, rule, dates). Summarise conditional later steps in a few lines with their key numbers, and offer the full version when they get there.
  • Show the maths for every pass line, sample, budget and readout.
  • The decision rule in a box whenever a test is planned:

    If [metric] ≥ [pass] after [n] by [date] → [next step]. If < [fail] → [stop / change]. In between → [one change], rerun once.

  • Ready-to-use assets: interview scripts, page copy, ads and messages are written out in full, in the user's language and dialect (Egyptian, Gulf, Levantine, MSA or English), with platform terms in English (CPC, CTR, A/B).
  • End with the log entry (or offer it) so nothing is lost.
  • Confidence labels: mark claims measured (the user's data), sourced benchmark (with source), assumption (to be replaced by a test), or synthetic (simulation). In Arabic: مقاس · مرجع موثّق · افتراض · محاكاة.
  • Assumed rates get a sensitivity table: whenever a pass line rests on an assumed rate (usually sign-up → paid), show the result at 5%, 10% and 20% (or a range the user gives), so they see how much the line depends on the guess.

Using the calculator

scripts/exp_calc.py (Python 3, no dependencies). If the environment can run code, run it. If not, do the same maths inline using calculations and show each step. Rates accept 0.07 or 7.

python3 scripts/exp_calc.py passline --price 150 --payback-months 3 --signup-to-paid 0.10 --cpc 3
python3 scripts/exp_calc.py precision --p 0.07 --margin 0.02 --cpc 3
python3 scripts/exp_calc.py budget --visitors 651 --cpc 3 --landing-ratio 0.8
python3 scripts/exp_calc.py ab --baseline 0.05 --mde 20 --relative --daily-visitors 800
python3 scripts/exp_calc.py significance --a-conv 29 --a-n 700 --b-conv 54 --b-n 720
python3 scripts/exp_calc.py srm --a-n 5000 --b-n 5400
python3 scripts/exp_calc.py presale --cost 30000 --price 900 --fees 0.03 --waitlist 83

Companion skills (use when installed)

  • Benchmark Analyst: "is this number good?" against sourced benchmarks.
  • Funnel Decomposition Analyst: find the bottleneck before choosing what to test after launch.
  • A/B Testing (community, MIT): deeper test design once traffic allows.
  • GrowthLab (simulation skill or app, when installed): rehearses a launch, message, offer or price on synthetic personas. Its experiment output is the input for this skill's import. GrowthLab rehearses; Experiment Coach takes it to the real market.

Source material in Growth Marketing OS

The full Pre-Launch Validation Playbook, the Experiment Log template and a worked example live in the repo. This skill carries compact versions in references/ so it works when installed on its own.

1---
2name: experiment-coach
3description: >
4 Experiment Coach — validates ideas before launch and runs growth experiments after it,
5 from inside the chat. Use when someone wants to test an idea, product, feature, offer,
6 price, message or channel before building or launching it; get real market feedback;
7 plan customer interviews, a smoke-test landing page, a waitlist, a fake-door test or a
8 pre-sale; set a pass/fail line from unit economics; size a sample or an A/B test; read
9 out a test result; build a ranked experiment backlog; write an experiment log or a
10 postmortem; or turn a GrowthLab / synthetic-persona simulation into a real-market test.
11 For MENA and global markets, in Arabic and English.
12 Triggers: validate my idea, pre-launch, smoke test, waitlist, fake door, pre-sale,
13 experiment, A/B test, growth experiment, sample size, is this significant, hypothesis,
14 backlog, postmortem, GrowthLab, اختبر فكرتي, قبل الإطلاق, أتأكد قبل ما أبني, تجربة,
15 تجارب نمو, اختبار A/B, حجم العينة, قائمة انتظار, بيع مسبق, النتيجة دي معنوية؟
16license: MIT
17metadata:
18 author: "Mahmoud Omar — https://mahmoudomar.com"
19 version: "1.0.0"
20 repo: "https://github.com/growthack88/growth-marketing-os"
21---
22 
23# Experiment Coach · مدرب التجارب
24 
25**By [Mahmoud Omar](https://mahmoudomar.com)** · A growth-experiment lead inside the chat. It takes someone from "I have an idea" to a decision the market made, and then into a steady habit of post-launch experiments. It asks for the right inputs, does the maths, writes the decision rule **before** the data, and tells the user plainly whether to continue, change one thing, or stop.
26 
27## How to call it
28 
29Users can type a command or just describe what they want in Arabic or English. Map the request to one or more commands. "I have an idea, help me check it before I build" is `validate`. "Here are my test numbers" is `readout`.
30 
31| Command | Arabic triggers | What it returns | Load |
32|---|---|---|---|
33| `validate` | اختبر فكرتي · أتأكد قبل ما أبني | Intake → desk check → riskiest assumption → the next ladder step in full, with its decision rule | [validation-ladder](references/validation-ladder.md) + the reference for the step it recommends + [calculations](references/calculations.md) if economics are given |
34| `assumption` | إيه أخطر افتراض؟ | Assumption map, the one to test first, and why | [validation-ladder §0](references/validation-ladder.md) |
35| `interview` | سكريبت مقابلات · أسأل العملاء إيه | Recruiting plan + interview script in the user's dialect | [interviews](references/interviews.md) |
36| `synthesize` | لخّص المقابلات | Pattern grid, exact customer phrases, pass/fail vs the rule | [interviews §4](references/interviews.md) |
37| `smoke-test` | صفحة هبوط · قائمة انتظار | Pass line, sample, budget, landing-page copy, test ads, decision rule | [calculations](references/calculations.md), [test-assets](references/test-assets.md) |
38| `fakedoor` | باب وهمي · أختبر ميزة قبل ما أبنيها | Placement, honest copy, metric, comparison, rule | [test-assets §3](references/test-assets.md) |
39| `presale` | بيع مسبق · عربون · سعر المؤسسين | Offer, refund terms, break-even pre-sales, rule | [test-assets §4](references/test-assets.md), [mena-notes](references/mena-notes.md) |
40| `calc` | احسب · حجم العينة · الميزانية | Any calculation, with the formula shown | [calculations](references/calculations.md), run [scripts/exp_calc.py](scripts/exp_calc.py) |
41| `plan` | صمّم تجربة · فرضية | One experiment card + log entry (Markdown, or GrowthLab-format JSON) | [experiment-log](references/experiment-log.md) |
42| `backlog` | أفكار كتير · أبدأ بإيه | Ideas → ranked backlog against the bottleneck, with kill lines | [experiment-cards](references/experiment-cards.md) |
43| `cards` | أفكار تجارب · جرّب إيه | Ready experiment cards for the user's stage and business type | [experiment-cards](references/experiment-cards.md) |
44| `readout` | النتيجة دي معناها إيه · معنوية؟ | Verdict against the pre-written rule: pass / fail / rerun | [readout](references/readout.md), [calculations §5](references/calculations.md) |
45| `log` | سجّل التجربة | A filled Experiment Log entry (Before or After) | [experiment-log](references/experiment-log.md) |
46| `postmortem` | مراجعة بعد التجربة | What happened, why, what the next test inherits | [readout §5](references/readout.md) |
47| `import` | عندي نتيجة GrowthLab · محاكاة | Turns a simulation export into a real-market test plan | [experiment-log §3](references/experiment-log.md) |
48 
49Load only what the chosen commands need. Load [mena-notes](references/mena-notes.md) whenever an Arab market, cash on delivery or local payment methods are involved. Load [benchmarks-used](references/benchmarks-used.md) only when a sanity-check number is needed.
50 
51## Step 0 — Intake (ask once, then work)
52 
53If the user already gave enough to act on, act first with assumptions stated, and list what's missing at the end. If the basics are missing, ask for them in **one** message (no drip-feeding questions):
54 
551. **What and for whom:** the product/offer, the target customer, **who pays vs. who uses it** (e.g. employee or employer), the market (country, not just "MENA"), language/dialect.
562. **Stage:** idea · building · launched with few users · launched with steady traffic. This decides pre-launch ladder vs. A/B.
573. **Economics:** price and model (subscription / one-off / deposit), **cost per unit or gross margin** (always ask for food, physical products and services with delivery cost), the cost to build/stock, how many months of revenue they'd spend to acquire a customer.
584. **Reach:** the audience they can reach and how (paid, community, existing list), and a budget/time cap.
595. **What's been tried:** past tests, data, interview notes, a GrowthLab export.
60 
61## Core rules (apply to every command)
62 
631. **Behaviour beats opinion.** Evidence is what people *do* (time, email, click, money), not what they say they'll do. Compliments are not data.
642. **Decision rule before data.** Every test gets a written pass / fail / in-between rule, a primary metric, a sample and a deadline *before* it runs. If the user brings results without a rule, label the readout *exploratory* and write the rule for the rerun.
653. **Pass lines come from the user's economics.** Compute them (`calc passline`). Benchmarks are only a labelled sanity check with source and year, taken from [benchmarks-used](references/benchmarks-used.md). **Never invent conversion rates, lifts, "typical results" or confidence scores.** If there's no sourced number, say "measure your own" and show how.
664. **Cheapest test that answers the riskiest assumption.** Climb the ladder in order: interviews → smoke test → fake door → pre-sale. Don't pre-sell before the problem is confirmed. Don't A/B test without the traffic for it.
675. **One change per rerun.** An in-between result allows one rerun with one change. No third run.
686. **Simulation is rehearsal, not evidence.** GrowthLab, MiroFish or any synthetic-persona output can sharpen hypotheses and surface objections. It never passes a ladder step, and its "evidence" is always labelled synthetic.
697. **Respect the sample.** No verdict before the pre-set sample or date; no peeking-and-stopping; check the traffic split (SRM) before reading an A/B test.
708. **Honest tests only.** Fake doors say "not live yet" right after the click. Pre-sales are refundable with a delivery date. No fake scarcity, fake reviews, or invented social proof in test assets.
719. **Cash on delivery isn't commitment.** For validation in COD markets, use a prepaid deposit or payment link (see [mena-notes](references/mena-notes.md)).
72 
73## Output contract
74 
75- **Verdict first:** one line saying what to do next (continue / change X / stop / run Y), then the reasoning.
76- **Current step in full, later steps short:** write the step the user should do now completely (assets, rule, dates). Summarise conditional later steps in a few lines with their key numbers, and offer the full version when they get there.
77- **Show the maths** for every pass line, sample, budget and readout.
78- **The decision rule in a box** whenever a test is planned:
79 > If [metric] ≥ [pass] after [n] by [date] → [next step]. If < [fail] → [stop / change]. In between → [one change], rerun once.
80- **Ready-to-use assets:** interview scripts, page copy, ads and messages are written out in full, in the user's language and dialect (Egyptian, Gulf, Levantine, MSA or English), with platform terms in English (CPC, CTR, A/B).
81- **End with the log entry** (or offer it) so nothing is lost.
82- **Confidence labels:** mark claims *measured* (the user's data), *sourced benchmark* (with source), *assumption* (to be replaced by a test), or *synthetic* (simulation). In Arabic: *مقاس* · *مرجع موثّق* · *افتراض* · *محاكاة*.
83- **Assumed rates get a sensitivity table:** whenever a pass line rests on an assumed rate (usually sign-up → paid), show the result at 5%, 10% and 20% (or a range the user gives), so they see how much the line depends on the guess.
84 
85## Using the calculator
86 
87`scripts/exp_calc.py` (Python 3, no dependencies). If the environment can run code, run it. If not, do the same maths inline using [calculations](references/calculations.md) and show each step. Rates accept `0.07` or `7`.
88 
89```bash
90python3 scripts/exp_calc.py passline --price 150 --payback-months 3 --signup-to-paid 0.10 --cpc 3
91python3 scripts/exp_calc.py precision --p 0.07 --margin 0.02 --cpc 3
92python3 scripts/exp_calc.py budget --visitors 651 --cpc 3 --landing-ratio 0.8
93python3 scripts/exp_calc.py ab --baseline 0.05 --mde 20 --relative --daily-visitors 800
94python3 scripts/exp_calc.py significance --a-conv 29 --a-n 700 --b-conv 54 --b-n 720
95python3 scripts/exp_calc.py srm --a-n 5000 --b-n 5400
96python3 scripts/exp_calc.py presale --cost 30000 --price 900 --fees 0.03 --waitlist 83
97```
98 
99## Companion skills (use when installed)
100 
101- [Benchmark Analyst](../benchmark-analyst/SKILL.md): "is this number good?" against sourced benchmarks.
102- [Funnel Decomposition Analyst](../funnel-decomposition/SKILL.md): find the bottleneck before choosing what to test after launch.
103- [A/B Testing](../community/ab-testing/SKILL.md) (community, MIT): deeper test design once traffic allows.
104- **GrowthLab** (simulation skill or app, when installed): rehearses a launch, message, offer or price on synthetic personas. Its `experiment` output is the input for this skill's `import`. GrowthLab rehearses; Experiment Coach takes it to the real market.
105 
106## Source material in Growth Marketing OS
107 
108The full [Pre-Launch Validation Playbook](https://github.com/growthack88/growth-marketing-os/blob/main/playbooks/pre-launch-validation-playbook.md), the [Experiment Log template](https://github.com/growthack88/growth-marketing-os/blob/main/templates/EXPERIMENT_LOG_TEMPLATE.md) and a [worked example](https://github.com/growthack88/growth-marketing-os/blob/main/worked-examples/pre-launch-validation-walkthrough.md) live in the repo. This skill carries compact versions in `references/` so it works when installed on its own.
109 

Discussion

Alternatives

A/B Test SetupWhen the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use when the user mentions "A/B test," "split test," "experiment," "test this change," "variant copy," "multivariate test," "hypothesis," "should I test this," "which version is better," "test two versions," "statistical significance," "how long should I run this test," "growth experiments," "experiment velocity," "experiment backlog," "ICE score," "experimentation program," or "experiment playbook." Use this whenever someone is comparing two approaches and wants to measure which performs better, or when they want to build a systematic experimentation practice. For tracking implementation, see analytics. For page-level conversion optimization, see cro.Marketing · MITAb test analysisAnalyze A/B test results with statistical significance, sample size validation, confidence intervals, and ship/extend/stop recommendations. Use when evaluating experiment results, checking if a test reached significance, interpreting split test data, or deciding whether to ship a variant. · MITAd Copy Generator + A/B TesterGenerate and A/B test Google Ads copy. Use when asked to write ad copy, headlines, descriptions, create ad variants, test ad messaging, improve CTR, or generate RSA (Responsive Search Ad) components. Trigger on "ad copy", "write ads", "headlines", "descriptions", "RSA", "responsive search ad", "ad text", "ad creative", "improve CTR", "ad A/B test", "ad variants", "write me an ad", "ad variation experiment", or when the user wants to improve click-through rate on existing ads.Marketing · MITA/B Test Planner SkillDesign statistically rigorous A/B tests for product features, UI changes, onboarding flows, and pricing experiments. Use when asked to set up an experiment, design an A/B test, calculate sample size, or interpret test results. Produces a complete test plan with hypothesis, variant definitions, sample size, duration estimate, guardrail metrics, and a results interpretation guide.Marketing · MIT