agentleFS
ali-demirbasali-demirbas/ab-test-playbook/skills/ab-test/SKILL.md

ab-test

Skill0 starsChanged 23 days agoMITView on GitHub

A/B test engine router. Use when the user says "abtest", "A/B test", "A/B/n", "split test", "multivariate test", "experiment", "CRO", "test öner", "hangi testi yapmalıyım", "fiyat testi", "test planımı denetle", "deney tasarla", "test fikirlerimi sırala", any /ab-test subcommand or a bare /ab-test (shows a menu), or when a request plausibly matches more than one ab-test-* skill, so the router disambiguates instead of guessing. Also use when it may not be an A/B question at all (a diagnosis, a measurement setup, a decision already made), for a delivered scenario's detailed view ("detay", "neden bu", "üç kutuyu göster"), and for results or sizing questions ("anlamlı mı", "kazandı mı", "kaç ziyaretçi lazım", "ne kadar sürmeli", "is it significant", "sample size"), which get the one-line out-of-scope answer. Routes to ab-test-suggest (ideas from the archive), ab-test-design (a new test for your page), ab-test-audit (review a plan) and ab-test-card (render a scenario).

6 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use email-sequence.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • AnthropicSkill

    email-sequence

    Design and draft multi-email sequences with full copy, timing, branching logic, exit conditions, and performance benchmarks. Use when building onboarding, lead nurture, re-engagement, win-back, or product launch flows, when you need a complete drip campaign with A/B test suggestions, or when mapping a sequence end-to-end with a flow diagram.

    Also in 3 projects that use this

The file

Files
SKILL.md

ab-test — Router

Language: Output always matches the language you write in (CLAUDE.md rule 7).

The entry point of the ab-test-playbook engine: parse the intent and route. First read ${CLAUDE_PLUGIN_ROOT}/CLAUDE.md: it is binding, and rule numbers below point there.

What "page shared" means

Defined once, here; ab-test-suggest, ab-test-design and the evals use it.

  • A page is shared when the message carries the user's own page, screen or flow as a screenshot, a URL or a concrete description ("my pricing page has three plans, the middle one is highlighted, the button under each says …"). A bare page type ("my checkout") is not one. Shared → ab-test-design; not shared (a page type, a sector, a stage, or nothing) → ab-test-suggest, which also keeps a direct /ab-test-suggest call that shares a page.
  • A screenshot is not a page when it shows something else: a results dashboard or a table of numbers is a results request (out of scope, below); a plan, brief or variant pair with a correctness question goes to ab-test-audit. Neither gets the problem question (rule 13).

Routing table

User intent / subcommandRoute toNote
bare /ab-test (no other text)answer directlyA four-line menu in the user's language, one example prompt per subcommand, nothing asked: suggest: "Suggest tests for my checkout page" · design: "Design a test for this page" + a screenshot or URL · audit: "Is this test plan set up correctly?" + the plan · card: "Turn this scenario into a card".
suggest, "test öner", "ne test edeyim" / "what should I test" with no page sharedab-test-suggestArchive picks, ranked by priority
design, "bu sayfa için test tasarla" / "design a test for this page" with a page sharedab-test-designThe verb doesn't decide: "bu ekranlara test öner" with screenshots is design
"o elediğin ekrana da test yaz" / "give me a test for the one you dropped"ab-test-designAn explicit ask (rule 9): always produced; weak → its "Daha güçlü alternatif:" line, plus one line that it was ranked below the bar. No new problem question
"detay", "neden bu", "üç kutuyu göster", "neden şunu önermedin" / "explain scenario 2", "why did you drop that one"the skill that produced itIts Detail on request: detail for that one record, re-validated and re-reviewed by scenario-critic (the card stays as it is), the three boxes and the reasons in chat. "Why not that one" gets the reason in prose, no card
"kurulum", "hedef kitle", "test planını yaz" / "setup", "audience" about a delivered designed scenarioab-test-designIts setup notes, once; no new card
An answer to a "Koşullu" questionthe skill that produced itConfirmed → the assumption is removed and the record goes through the whole pipeline again (a final card without the ribbon); contradicted → the record is rewritten or dropped, said in one line
audit, "test planımı denetle", "bu test doğru mu kurulmuş" / "is this test set up correctly" with a plan, brief or variant pairab-test-audit
"sonuçları yorumla", "anlamlı mı", "kazandı mı", "kaç ziyaretçi lazım", "ne kadar sürmeli", "A/A testi kur", "ön kayıt", "karar kuralı" / "is this significant", "did it win", "sample size", "how long should it run", "set up an A/A test", "pre-registration", "decision rule"answer directlyOne line (rule 5): "This playbook proposes, designs, audits and visualizes A/B tests. It doesn't analyze results or compute sample size, duration, significance or a winner; use your testing tool's own reporting for that." (TR: "Bu playbook A/B test önerir, tasarlar, denetler ve görselleştirir. Sonuç analizi yapmaz; örneklem, süre, anlamlılık veya kazanan hesaplamaz. Bunun için test aracınızın kendi raporunu kullanın.") With a plan in hand, offering to audit it is the turn's one question. No computation, no reading of the numbers
A plan and interim or final numbersab-test-auditThe plan is audited; the numbers aren't read, said in one line with the sentence above
"fiyat testi", "indirim gösterimini test edelim" / "price test"design if a page is shared, else suggestRule 11's regulation gate first: a changed displayed or reference price is held until the market's rule is verified; a revenue-based primary (methodology.md → KPI rules)
"şu 8 fikri önceliklendir" / "rank my test ideas" (the user's own list)answer directlyEach idea through the mechanism gate, then a tier with a one-sentence rationale (${CLAUDE_PLUGIN_ROOT}/knowledge/methodology.md → Prioritization); say which fail and why. Numeric scores asked for → the tiers plus one line that the playbook doesn't score numerically. No cards; offering design for the top idea is the one question
"multivariate test", "MVT", "test these three changes together"ab-test-designRule 4: split, one sentence why; insisted → the bundle with its warning
card, "kart yap", "görselleştir" / "make a card"ab-test-cardThrough its Delivery pipeline (both reviews)
"geçmiş testlerimi nasıl kaydederim" / "how do I log past tests"answer directly.abtest-history.md is the user's file, kept from their tool (format ${CLAUDE_PLUGIN_ROOT}/templates/abtest-history.md); the optional .abtest-backlog.md follows ${CLAUDE_PLUGIN_ROOT}/templates/abtest-backlog.md (rule 16). Show the template; don't fill it unasked

When the request isn't an A/B test

These checks come before the routing table; a trigger phrase in the same message doesn't override them.

  • Diagnosis ("checkout dönüşümüm düştü, hangi testi yapmalıyım?"): a drop without a located step is located first, with the funnel or segment breakdown; design follows once the loss point is clear.
  • Implementation or measurement ("how do I set up this event"): answer briefly, no scenario.
  • A defect (a typo, a broken or inverted state, a dead link): a fix to ship, no test needed.
  • A decision already made: one sentence on what a test would buy; don't push it.
  • Poor fit (${CLAUDE_PLUGIN_ROOT}/knowledge/methodology.md → Where this playbook works well; tiers Suitable / Conditional / Poor fit, not the priority words): a low-volume enterprise page or a months-long cycle is said plainly, with the alternatives there. A Conditional context (a regulated pre-quote form, a subscription) is still tested, with that tier's care.

Ambiguous intent

suggest versus design is never ambiguous (above). A request fitting two other rows ("can you look at my cart page": design or audit?): with a page shared, rule 13's question covers it, option (d) split in two ("no specific problem, suggest tests" / "audit my existing plan or variant"); with no page, state both readings in one line and ask which. Never the same ambiguity twice in a session.

Front door: one question

A shared page gets only rule 13's multiple-choice question, worded for the page (a form → "isn't filling out the form", a product page → "isn't adding to cart"):

  • Starts but doesn't finish (enters the flow, doesn't complete it)
  • Never starts (sees the page, doesn't take the first action)
  • Comes but low quality (volume, no quality)
  • No specific problem (look at the page, tell me)

It holds the turn, is asked once for several screens, and not again in the session; no pick → (d); after the answer, a screen with no strong candidate gets one line. Traffic, test tool and budget are never asked (rule 5); a named tool only shapes the setup notes' vocabulary. A market question for payment, shipping, price display or trust signals (rule 11) waits its turn under rule 19 and is usually answered by the domain, currency or fields.

Never do

  • Deliver anything but a complete record (rule 1), with exactly one primary KPI (rule 2), as a final card after both reviews (rule 17), never a draft.
  • Regenerate the three boxes unasked, or dump the sub-skill machinery to the user.
  • Compute, estimate or interpret a sample size, duration, significance or winner (rule 5).
  • Present an archive scenario as generated, or as a tested win (rule 8).

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.