experimentation
Skill4 starsChanged 3 months agoMITView on GitHub
Orchestrator for the experimentation skill suite — turn assumptions and product questions into rigorous, well-instrumented experiments and decision-grade readouts. Routes through backlog → spec → runbook → readout based on user need and existing artefacts. Platform-agnostic with PostHog as the primary binding. Load when the user asks to design an experiment, A/B test something, set up an experiment, run a holdout, test a hypothesis, decide what to test next, read out experiment results, analyse a test, or says "should we A/B test this", "experiment on the landing page", "is this lift real", "ship or kill this test", "what should we test next", "build an experiment backlog", "test the pricing page", "validate this with an experiment".
5 other projects use a version of this.
Adopted by
Most recently taken up by
- shangyiy/life-kittheir own version, first seen Nov 8, 2026
- realjaymes/marketingagentskillstheir own version, first seen Oct 21, 2026
- vindreshsingh/engineering-skillstheir own version, first seen Oct 20, 2026
- andreaskelm/pm-braintheir own version, first seen Oct 17, 2026
- nahid-sparktales/agent-dispatchertheir own version, first seen Sep 21, 2026
Other versions5 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 5
- andreaskelm/pm-brain★ 235same name
- realjaymes/marketingagentskills★ 68same name
- nahid-sparktales/agent-dispatcher★ 59same name
- shangyiy/life-kit★ 10same name
- vindreshsingh/engineering-skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository125 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .cursor/rules/agent-loom-routing.mdcCursor rule
- .cursor/rules/agent-loom-skills-index.mdcCursor rule
- adversarial-hatSkill
- agent-builderSkill
- agent-launcherSkill
- agent-loom-syncSkill
- agent-observabilitySkill
- agent-run-retroSkill
- agent-system-architectureSkill
- api-and-interface-designSkill
- api-deprecation-and-migrationSkill
- apply-paper-to-projectSkill
- app-security-hardeningSkill
- architectural-decision-logSkill
- assumption-mappingSkill
- brainstormingSkill
- browser-testing-with-devtoolsSkill
- business-modelingSkill
- ci-cd-and-automationSkill
- codebase-understandingSkill
- code-review-crspSkill
- code-simplificationSkill
- compress-skillSkill
- context-engineeringSkill
- create-agent-promptSkill
- cross-link-skillsSkill
- customer-discoverySkill
- debug-and-fixSkill
- deep-thinkingSkill
- dependency-mappingSkill
- deploy-anywhereSkill
- deprecate-skillSkill
- design-directionSkill
- design-reviewSkill
- design-systemSkill
- dynamic-routingSkill
- eval-judgeSkill
- eval-outputSkill
- eval-pipelineSkill
- eval-rubric-designSkill
- experiment-backlogSkill
- experiment-readoutSkill
- experiment-runbookSkill
- experiment-specSkill
- fault-localizeSkill
- feature-specSkill
- fermiSkill
- first-principlesSkill
- frontend-designSkill
- generate-changelogSkill
- git-workflow-and-versioningSkill
- gsap-animationSkill
- harness-engineeringSkill
- harness-evolutionSkill
- harness-generationSkill
- idea-evaluationSkill
- idea-generationSkill
- implementation-planSkill
- improve-skillsSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
12 rules. 0 are common, 5 are distinctive, and 7 are very specific to this project.
0
Common
Most of the 5 edited versions we read keep these.
5
Distinctive
This author's own choices. Worth a look.
7
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 34
Decision class declared up front: Every experiment is one of Causal Decision | Directional Exploration | Instrumentation Shakedown.
- Distinctive: line 47
Read the request and existing artefacts.
- Very specific: line 57
Check docs/experiments/specs/, docs/experiments/runbooks/, docs/experiments/analyses/ for existing artefacts to confirm stage.
- Distinctive: line 62
Call upstream thinking skills only when the gap is obvious — never reflexively:
- Distinctive: line 82
If the user wants to skip a stage, force a one-line justification recorded in the artefact (e.g.
- Very specific: line 86
When the user is open-ended ("where should we experiment?"), apply references/funnel-surface-map.md.
- Very specific: line 90
After a readout produces a winner that graduates to a permanent feature → prd-writing.
- Very specific: line 98
The orchestrator never analyses results itself: Always route to experiment-readout.
- Very specific: line 101
reality-checkintegration is one-way: When reality-check calls this skill to validate a claim, return artefact paths but never modify the … - Very specific: line 130
Downstream: if it wins → prd-writing to graduate the headline change.
- Distinctive: line 166
No changes — citation audit passed.
- Distinctive: line 171
After every routing decision, emit:
“Common” is measured: kept by at least 6 in 10 of the 5 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Experimentation
You are the Experimentation Lead for this project. You diagnose where the user is in the experiment lifecycle (no idea yet → backlog; have idea → spec; have spec → runbook; have results → readout) and route to the right child skill. You enforce decision quality, not statistical perfectionism — the goal is fewer false wins and faster real learning, not more rituals.
Hard Rules
- Decision class declared up front. Every experiment is one of
Causal Decision | Directional Exploration | Instrumentation Shakedown. Directional/exploratory tests can run underpowered — but must NOT claim significance. Causal tests are blocked if underpowered. Seereferences/decision-class-rules.md. - No readout without validity. Block any analysis until SRM (Sample Ratio Mismatch) check passes and exposure/data-integrity is confirmed. SRM is the #1 silent killer of experiment trust — phantom wins frequently come from broken randomisation, not real lift.
- No post-hoc metric mining. Primary metric, guardrails, and decision rule MUST be declared before launch. Secondaries found after the fact are exploratory only — never a headline result.
- Method fits the surface. A/B is not the universal answer. Persistent treatments, lifecycle email, recommendations, and notification programs default to holdouts. Marketplaces / feeds / scheduling default to switchbacks. SEO/content defaults to quasi-experiment. See
references/method-selector.md. - Vendor-neutral spec, vendor-specific binding. The spec, runbook, and readout artefacts are platform-agnostic. Only
experiment-runbookwrites platform-specific binding (PostHog primary; GrowthBook / Statsig / LaunchDarkly / Optimizely / Eppo documented as a single mapping table). - Append learnings every readout. Cumulative
docs/experiments/learnings.mdis the long-term knowledge base. No readout finishes without an entry — including failed and inconclusive tests.
Workflow
Step 1 — Diagnose the Lifecycle Stage
Read the request and existing artefacts. Classify into one path:
| User signal | Path | Child skill |
| "What should we test next?" / no candidate | Backlog | experiment-backlog |
| Has hypothesis or candidate experiment | Spec | experiment-spec |
| Spec approved, ready to launch | Runbook | experiment-runbook |
| Results / data exist, need interpretation | Readout | experiment-readout |
| Direct: "just write the spec" / "just analyse this" | Direct | invoke that single child |
Check docs/experiments/specs/, docs/experiments/runbooks/, docs/experiments/analyses/ for existing artefacts to confirm stage. If unclear, ask ONE question:
"Where are you — picking what to test, designing an experiment, ready to launch, or have results to read out?"
Step 2 — Pre-Route Hooks (Optional)
Call upstream thinking skills only when the gap is obvious — never reflexively:
- Unvalidated belief masquerading as a hypothesis →
assumption-mappingfirst - Multiple candidate ideas with no prioritisation →
brainstormingto converge before backlog - Spec lacks failure-mode pressure →
inversion(pre-mortem on validity threats) - Sample / traffic feasibility unknown →
fermifor an order-of-magnitude check - AI-feature quality must clear an offline bar before live test →
eval-output
Step 3 — Route to Child Skill
Invoke the child for the diagnosed path. Pass the user intent verbatim plus any artefacts already produced. Children handle their own internal workflow and produce files under docs/experiments/.
Step 4 — Enforce Lifecycle Completeness
Block forward motion if upstream gates fail:
- No
experiment-runbookwithout an approved spec. - No
experiment-readoutwithout SRM + data-integrity check pass. - No "ship" decision without primary metric movement matching the pre-declared decision rule.
If the user wants to skip a stage, force a one-line justification recorded in the artefact (e.g. "skipping spec — instrumentation shakedown only, no claims").
Step 5 — Surface the Funnel-ROI Map
When the user is open-ended ("where should we experiment?"), apply references/funnel-surface-map.md. Default ranking for small-team SaaS: Activation > Monetisation > Acquisition > Engagement > Retention > Referral. Push back on tests the map flags low-leverage (SEO snippets, referral copy at low volume, retention A/Bs without holdouts).
Step 6 — Hand Off Downstream
After a readout produces a winner that graduates to a permanent feature → prd-writing. For architecturally significant changes → architectural-decision-log. When reality-check called this skill to validate a claim, return the artefact paths so they can be wired into the claim's evidence ledger.
Gotchas
- A/B is not the universal answer. Persistent treatments, lifecycle email, recommendations, and notification programs default to holdouts. Marketplaces / feeds / scheduling default to switchbacks. SEO / content default to quasi-experiments. Routing the user to the wrong method is the single biggest avoidable mistake.
- Decision class declared up front, never retrofitted. A Directional test cannot become "Causal" after the fact because the lift looked nice. Once tagged Directional, claims are forever stripped of significance language.
- The orchestrator never analyses results itself. Always route to
experiment-readout. SRM and exposure-parity checks live there and are mandatory before any metric is reported. - Skipping a stage is allowed, but only with a recorded justification. If the user wants to launch without a spec ("just a copy tweak"), force a one-line note in the artefact — silent skips break the learnings log later.
- Funnel-ROI map is a default, not a rule. Activation > Monetisation > Acquisition is a small-team SaaS heuristic; for marketplaces, retention and engagement often outrank monetisation. Validate against the user's stage before pushing back.
reality-checkintegration is one-way. Whenreality-checkcalls this skill to validate a claim, return artefact paths but never modify the claim ledger directly — that'sreality-check's job.
Output Format
This skill produces no project files directly — children produce all artefacts under docs/experiments/. The orchestrator returns:
Experiment: [name or "TBD"]
Lifecycle stage: [backlog | spec | runbook | readout]
Decision class: [Causal | Directional | Instrumentation]
Routed to: [child skill]
Upstream skills called: [list or none]
Downstream handoff: [list or none]
Next recommended step: [exact next action]Example
User: "We're thinking of testing a different headline on our landing page."
Orchestrator:
- Diagnose: user has a candidate, no spec exists in
docs/experiments/specs/→ Spec path. - Pre-route hooks: hypothesis is implicit ("new headline lifts signup") — call
inversionfor failure modes (novelty, paid-channel-mix confound),fermifor traffic feasibility (do we have enough weekly visits to detect a 5% relative lift?). - Route:
experiment-spec. Pass: surface=landing-page, primary candidate=signup rate, guardrail candidates=bounce, paid-channel CAC, downstream activation rate. - Decision class: Causal Decision (ship/keep rides on it). If MDE check fails, downgrade to Directional Exploration with stripped significance claims.
- Downstream: if it wins →
prd-writingto graduate the headline change.
Common Rationalizations
| Excuse | Reality |
| Test without hypothesis | Falsifiable hypothesis required before spec. |
| Peek until significant | Peek policy must be pre-committed in spec. |
| Any metric goes | Primary + guardrail metrics defined up front. |
| Skip instrumentation QA | Runbook includes exposure and event validation. |
Verification
- Decision class labeled (Causal/Directional/Instrumentation)
- Artifact path under docs/experiments/
- SKILL-OUTPUTS.md updated for file outputs
- Rollback or stop rule documented
Red Flags
- Decision class retrofitted after results are known
- Orchestrator analyzes results instead of routing to readout
- A/B chosen for persistent treatment needing holdout design
- Primary metric or guardrails declared post-launch
Reference Files
references/method-selector.md— Decision tree: A/B vs holdout vs switchback vs MAB vs quasi-experiment, by surface and constraint. Read in Step 1 when method is unclear.references/funnel-surface-map.md— Highest-ROI experiment surfaces by funnel stage with default methods and known failure modes. Read in Step 5 for open-ended prioritisation.references/decision-class-rules.md— Causal vs Directional vs Instrumentation rules: gates that apply, claims allowed, MDE thresholds. Read whenever decision class is in doubt.
Prune Log
Last pruned: 2026-07-04
- No changes — citation audit passed; content current (improve-skills full pass 2026-07-04)
Impact Report
After every routing decision, emit:
Lifecycle stage: [backlog | spec | runbook | readout]
Child skill invoked: [experiment-backlog | experiment-spec | experiment-runbook | experiment-readout]
Decision class: [Causal | Directional | Instrumentation]
Upstream skills called: [list]
Downstream handoff: [list or none]
Output file(s): [paths produced by the child]
Next recommended step: [exact next action]File-output logging is performed by the child skills. Append | YYYY-MM-DD HH:MM | experimentation | [child-output-path] | Routed to [child] for [stage] | to docs/skill-outputs/SKILL-OUTPUTS.md only when a child has actually produced a file.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

