agentsclimarketplace

Landing experiment

Skill monthu56/landforge/.claude/skills/landing-experiment

Создать A/B-эксперимент на лендинге — из брифа и гипотезы сгенерировать вариант(ы) на одном URL (inline-сплит, SEO-безопасно), настроить трекинг варианта в Метрике/GA4, завести карточку эксперимента и записи в аудит-журнал, выдать чеклист запуска. Использовать, когда нужно подготовить A/B-тест, вариант под гипотезу или несколько вариантов лендинга для проверки.From its SKILL.md

Install
npx -y skills add monthu56/landforge --skill landing-experiment

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 10 stars10 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
  • runs commandsInstructs the agent to run 4 commands, including `python3 .claude/skills/landing-experiment/scripts/check_experiment.py <лендинг.html> [--experiment <id>]` and 3 more.

SKILL.md

6.0 KB, ~1.5k tokens by cl100k_base, as published. Nobody here has run it

landing-experiment — A/B-эксперименты на лендинге

Готовит A/B-тест по правилам проекта (правила A/B встроены в этот скилл): варианты живут на одном URL (inline-сплит, без клоакинга), вариант прокидывается в аналитику, всё фиксируется в аудит-журнале. Опирается на готовую A/B-инфраструктуру в index.html (AB_ACTIVE, cookie-сплит, ym(...,'params',{ab:…})).

Жёсткие правила

  1. Один URL, без клоакинга (SEO-безопасность). Роботу и людям — один контент. Control (вариант A) — в HTML; вариант B применяется JS поверх. Никаких скрытых от роботов текстов/ключей. Отдельные URL под варианты — только с canonical+noindex (не наш случай).
  2. Одна переменная за тест (иначе результат не интерпретировать).
  3. Анти-FOOC и анти-CLS: вариант фиксируется до первого paint, подмена не двигает вёрстку.
  4. Трафик-гейт: всерьёз тест запускают после аналитики и ≥100 визитов/день. Меньше — фоновый сплит без выводов или честный before/after (пометка «B/A»).
  5. Каждый шаг — в аудит-журнал (skill landing-journal).

Workflow

1. Определить эксперимент

Зафиксируй (шаблон — reference/experiment-design.md):

  • Гипотеза в форме «Если [изменение], то [метрика] вырастет, потому что […]».
  • Переменная — ровно одна. Бери из бэклога гипотез (приоритизация по ICE) или сформулируй.
  • Variant A (control) и Variant B — точное различие.
  • Primary-метрика + MDE; secondary/прокси; guardrail (что не ухудшить).
  • Сплит 50/50, cookie 30 дней; длительность ≥ целого числа недель; критерий решения.

Если гипотеза/метрика не заданы — добери через AskUserQuestion (предложи топ по ICE из §3).

2. Подготовить варианты

  • Control — существующий контент лендинга (в HTML).
  • Variant B — реализуй inline-сплитом по reference/ab-implementation.md: настрой TEST-имя, cookie-сплит, применение варианта до paint, передачу варианта в Метрику (params) и GA4 (event/dimension), цели с меткой варианта (data-goal).
  • Несколько вариантов (B, C…) — допустимо, но это A/B/n: нужно больше трафика; помни про MDE.

3. Проверить

python3 .claude/skills/landing-experiment/scripts/check_experiment.py <лендинг.html> [--experiment <id>]

Плюс прогони контракт лендинга: .claude/skills/new-landing/scripts/check_landing.py.

4. Завести карточку и записать в журнал

  • Создай experiments/<id>/experiment.md по шаблону (id вида H2-hero-narrative).
  • Залогируй:
    python3 .claude/skills/landing-journal/scripts/log_event.py \
      --event experiment_designed --landing <slug> --experiment <id> \
      --summary "<гипотеза кратко>" --details "primary=<метрика>; MDE=<..>; split=50/50"
    python3 .claude/skills/landing-journal/scripts/log_event.py \
      --event variant_added --landing <slug> --experiment <id> --summary "Variant B: <различие>"
    

5. Ветка, превью, чеклист запуска

  • Ветка exp-<id> от dev, коммит (тем же коммитом — записи журнала), пуш → превью-URL.
  • Выдай чеклист запуска: трафик-гейт (≥100 визитов/день?), выставить AB_ACTIVE=true при старте, какие цели смотреть, длительность, honest stopping (не «подглядывать»), что считается победителем (выше primary без проседания guardrail).
  • Запуск/раскат — решение человека; при запуске залогируй launched, при раскате rolled_out.

Что НЕ делает этот skill (отдельные шаги/скиллы)

  • Создание рекламных кампаний и UTM-трафик → будущий landing-ads (артефакты; API — при токенах).
  • Сбор статистики и расчёт значимости → будущий landing-stats (при токенах/бэкенде). Сейчас результаты заносятся в журнал и карточку вручную (stats_collected, decided).

What ships with it: 3 files

12.1 KB alongside SKILL.md, 1 of them executable

scripts/

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.