Skip to content
Back to skills

Landing Experiment

ASecurity

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

  • 10 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added June 8, 2026
content-marketingpythongobashapi

Works with

  • api

Security analysis

A100/100

Pro scans all 4 files and shows the line behind each finding

Scanned June 8, 2026

npx -y skills add monthu56/landforge --skill landing-experiment --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Landing Experiment?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Landing Experiment
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/monthu56-landing-experiment/badge)](https://www.skillsdirectory.com/skills/monthu56-landing-experiment)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

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

# 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`](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`](reference/ab-implementation.md):
  настрой `TEST`-имя, cookie-сплит, применение варианта до paint, передачу варианта в
  Метрику (`params`) и GA4 (event/dimension), цели с меткой варианта (`data-goal`).
- Несколько вариантов (B, C…) — допустимо, но это A/B/n: нужно больше трафика; помни про MDE.

### 3. Проверить
```bash
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`).
- Залогируй:
  ```bash
  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`).

Files in this skill

  • SKILL.md6 KB
  • reference/ab-implementation.md4.4 KB
  • reference/experiment-design.md2.8 KB
  • scripts/check_experiment.py4.9 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…