К основному содержанию
скилл CX Codex

revenuecat-experiments — скилл для Claude Code: как установить

Помогает настраивать и вести A/B-тестирование в RevenueCat через команды MCP. Готовит варианты офферингов, пейволлы и управляет жизненным циклом эксперимента.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add RevenueCat/ai-toolkit --skill revenuecat-experiments -a claude-code
Открыть на GitHub

Что делает revenuecat-experiments

Скилл управляет A/B-тестами подписок через инструменты RevenueCat MCP. Эксперимент сравнивает от двух до четырёх офферингов: контрольный offering_a и тестовые от offering_b до offering_d. Скилл проверяет существующие предложения через list-offerings и создаёт черновик теста в create-experiment.

Для работы требуются подключённые MCP-инструменты RevenueCat. Если экран оплаты свёрстан прямо в коде приложения и paywall_id равен null, скилл не сможет изменить визуал через RevenueCat Paywalls: такую вёрстку придётся править в репозитории вручную. Созданные или скопированные пейволлы для тестовых групп нужно заранее опубликовать через publish-paywall, иначе пользователи их не увидят.

Запуск через start-experiment требует обязательного подтверждения разработчика, потому что он сразу переключает реальных клиентов. Остановка через stop-experiment необратима. Восстановить эксперимент уже нельзя, а пользователи сразу вернутся на стандартный офферинг. Настраивать экраны и товары скилл помогает в связке с revenuecat-paywall-design и revenuecat-store-state.

Какие задачи решает

  • подготовить варианты офферингов и пейволлов для A/B-теста
  • создать черновик эксперимента с метриками и таргетингом в RevenueCat
  • заменить продукты и пробные периоды в пакетах офферинга
  • опубликовать пейволлы вариантов перед запуском теста
  • управлять жизненным циклом эксперимента при тестировании

Примеры запросов агенту

  • Создай черновик A/B-теста с текущим офферингом в роли контроля и новым вариантом со скидкой.
  • Подготовь вариант offering_b с изменённым пейволлом и опубликуй его перед запуском эксперимента.
  • Поставь на паузу эксперимент RevenueCat и проверь статус зачисления пользователей.

Как установить revenuecat-experiments

1Через Skills CLI (Vercel)

npx skills add RevenueCat/ai-toolkit --skill revenuecat-experiments -a claude-code

2Вручную: положить файлы

~/.claude/skills/revenuecat-experiments/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/revenuecat-experiments/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о revenuecat-experiments

Как установить revenuecat-experiments в Claude Code?

Выполните команду npx skills add RevenueCat/ai-toolkit --skill revenuecat-experiments -a claude-code в терминале.

Что делает revenuecat-experiments?

Скилл настраивает A/B-тесты в RevenueCat: дублирует офферинги, готовит пейволлы, задаёт целевые метрики и управляет статусом эксперимента через инструменты MCP.

Можно ли поменять пейволл через скилл, если paywall_id отсутствует?

Нет, если paywall_id равен null, интерфейс экрана покупок реализован прямо в коде приложения. В такой ситуации скилл сообщит, что править оформление нужно вручную в кодовой базе проекта.

Исходный текст

SKILL.md · MIT
---
name: revenuecat-experiments
description: Use when the user asks to create, prepare, or set up a RevenueCat experiment (A/B test), to prepare its variant offerings or paywalls, or to start, pause, resume, or stop an experiment via the RevenueCat MCP experiment tools
---

# Setting up and managing experiments

A RevenueCat experiment compares two to four offerings: `offering_a` (the control) against `offering_b`–`offering_d` (the treatments). Enrolled customers are served their variant's offering instead of the project's current offering. Setting up an experiment means preparing one offering per variant, then creating the experiment as a draft.

Refer to the MCP tool schemas for the exact parameters of each tool; the `create-experiment` schema also lists the available experiment types with their recommended primary and secondary metrics.

## Preparing the variants

Keep the variants identical except for the one aspect under test, otherwise results cannot be attributed to the change. For example, when measuring the impact of a lower subscription price, both variants should share the same paywall design and packages, differing only in the price of the products.

**Control.** When the control variant is "what production does today", pass the current offering (`is_current` in `list-offerings`) directly as `offering_a_id` — do not duplicate it. Duplicate only when control itself needs changes relative to production.

**Treatments.** First check with `list-offerings` whether an offering already exists that matches what the treatment should serve, and reuse it instead of duplicating. Otherwise, start each treatment from a duplicate of the offering closest to it (usually the control offering). `duplicate-offering` copies the packages (attaching the same existing products) and, if the source offering has a paywall, also copies it as a new unpublished draft; it returns the new offering, including its new `paywall_id`. Pass `source_paywall_version: published` so the treatment copies the paywall customers see in production rather than unfinished draft edits; this fails when the source paywall was never published, so use the default (`draft`) only then. Then apply the one change under test:

- Paywall change (copy, layout, CTA, pricing display, ...): this requires the app to use RevenueCat Paywalls — a paywall is an optional property of an offering. If the control offering has none (`paywall_id` is `null`), the app renders its own paywall in code, so the paywall change has to be made in the app rather than through RevenueCat; tell the user. Otherwise, load `revenuecat-paywall-design` and edit the duplicated paywall with `edit-paywall-ai`. Request only the minimum changes required to measure the desired effect, and verify the result by looking at the resulting paywall.
- Price, trial, or introductory-offer change: these live on store products, so the treatment offering needs different products. Check with `list-products` whether suitable products already exist; create only the missing ones and their store counterparts (see the `revenuecat-store-state` skill). Then swap them into the duplicated offering's packages: detach the copied products with `detach-products-from-package`, then attach the new ones with `attach-products-to-package`.
- Brand-new paywall: duplicate the offering with `include_paywall: false`, then load `revenuecat-paywall-design` and call `create-paywall-ai` with the new offering's `offering_id` so the generated draft is attached to it directly. A paywall and an offering pair 1:1 — `attach-offering-to-paywall` fails if either side is already paired; undo a wrong pairing with `detach-offering-from-paywall` (unpublish the paywall first if it is published).

**Publish treatment paywalls.** A duplicated or newly created paywall is an unpublished draft, and a variant only serves the published version. If new paywalls were created in previous steps, publish each treatment paywall with `publish-paywall` before the experiment starts. This is the exception to the rule against proactive publishing, and it is safe: the treatment offering is not the current offering, so no customer sees the paywall until the experiment starts enrolling.

## Creating the experiment

Create a draft with `create-experiment`: display name, `enrollment_percentage`, the variant offering IDs, `experiment_type`, a `primary_metric` (plus `secondary_metrics`) matching the hypothesis, `enrollment_mode` (`only_new` unless the user explicitly wants to include existing customers), and any targeting and notes. Creating never starts the experiment. Adjust a draft with `update-experiment`.

Before starting, verify each variant: treatment paywalls are published, packages contain the intended products, and any new products are available on the stores.

## Lifecycle

- `start-experiment` begins enrolling real customers — only run it with the user's explicit confirmation.
- `pause-experiment` stops enrollment but keeps serving enrolled customers their variant and keeps collecting data.
- `resume-experiment` continues enrollment.
- `stop-experiment` is terminal: enrolled customers fall back to the default offering and the experiment can never be restarted.

To interpret results once the experiment is running, use the `revenuecat-experiment-analysis` skill.

© RevenueCat · MIT · RevenueCat/ai-toolkit

Похожие скиллы

Все скиллы по теме «Мобильная разработка» →
vercel-react-native-skills vercel Набор правил по React Native и Expo для ИИ-агента: списки, анимации, навигация. Пригодится, когда агент правит мобильный код и надо, чтобы он делал это одинаково. CX Codex +1 255 200установок animate-expo emilkowalski Создаёт мобильные анимации для React Native и Expo на базе Reanimated и Gesture Handler. Помогает избежать просадок кадров на реальных устройствах. CX Codex +1 137 900установок mobile-native emilkowalski Убирает мелочи, из-за которых веб-приложение на телефоне выдаёт себя: залипающий hover, вспышку при тапе, ошибку с 100vh. CX Codex +1 86 600установок aso coreyhaines31 Анализирует страницы приложений в App Store и Google Play по правилам поисковой оптимизации. Находит слабые места в метаданных, графике и конверсии. CX Codex +1 75 900установок paywalls coreyhaines31 Скилл помогает проектировать и улучшать экран оплаты, апгрейд, upsell-модалку и ограничения функций. Нужен, когда бесплатного пользователя подводят к платному плану. CX Codex +1 71 000установок swiftui-pro Paul Hudson Проверяет SwiftUI-код на устаревшие API, ошибки в структуре и проблемы доступности. Пригодится для ревью и доработки проектов на SwiftUI. CX Codex +1 35 200установок

Из того же набора38

rc-understanding-revenuecat Объясняет агенту, как устроен RevenueCat Android SDK 10.x, до того как он напишет хоть строчку кода. Пригодится, если вы переходите с чистого Play Billing. CX Codex +1 617установок rc-one-time-products Скилл учит ИИ настраивать разовые покупки в Android через SDK RevenueCat без возни с BillingClient. Он пригодится для запуска как расходуемых товаров, так и вечного доступа. CX Codex +1 613установок rc-cancellations-pauses-winback Показывает в Android-приложении отмену подписки, паузу и возврат клиента. Помогает не гадать, что происходит с доступом. CX Codex +1 612установок rc-revenuecat-vs-raw-billing Скилл помогает решить, брать RevenueCat или писать Google Play Billing напрямую: показывает, что уходит на сторону SDK, а что остаётся вашей команде. CX Codex +1 601установок rc-alternative-billing Скилл помогает разобраться, какие программы альтернативного биллинга Google Play закрывает RevenueCat Android SDK, а какие придётся делать самому. CX Codex +1 603установок revenuecat-sdk-compatibility Скилл проверяет, поддерживает ли версия RevenueCat SDK нужную функцию, и считает, сколько подписчиков сидит на устаревших версиях. CX Codex +1 491установок revenuecat-cli Скилл учит агента работать с официальным CLI rc: проекты, продукты, пейволлы, загрузка картинок и шрифтов. Пригодится, когда MCP-сервер не умеет нужную операцию. CX Codex +1 403установок rc Настраивает проекты RevenueCat и управляет продуктами, entitlement’ами и предложениями из Claude Code. Для доступа к аккаунту нужна авторизация через OAuth. ★ 76звёзд репо

Спонсоры проекта

Компании, которые помогают держать аналитику открытой