agentsclimarketplace

Landing experiment

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

Static landing-page generation system built on Claude Code skills — SEO, A/B testing, analytics, deploy and change-audit built in.

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.

One thing 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.

What its author says it does

Copied from the file, not written here

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

SKILL.md

6.0 KB, 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).

Keep looking

Skills are one crate of 328,083. 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.