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

revenuecat-paywall — скилл для Claude Code

Внедряет нативный экран оплаты из панели RevenueCat через RevenueCatUI в приложения на iOS, Android, KMP, Flutter и React Native.

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

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

Скилл настраивает показ пейволла, созданного в панели управления RevenueCat, с помощью библиотеки RevenueCatUI. Агент определяет платформу по файлам проекта вроде pubspec.yaml, package.json, Gradle или Xcode. После этого он добавляет нужный модуль: purchases_ui_flutter, react-native-purchases-ui, purchases-kmp-ui или нативные библиотеки для iOS и Android.

Инструмент реализует типовые сценарии: модальное окно при первом запуске, блокировку платного экрана или показ по клику на кнопку в настройках. Сама библиотека управляет проведением платежа. Поэтому вызывать Purchases.purchase() вручную не нужно: достаточно слушать событие закрытия или успешной транзакции.

Без предварительной инициализации Purchases.configure() экран не загрузится. Если в панели RevenueCat к предложению не прикреплён макет пейволла, SDK отобразит стандартный резервный шаблон вместо вашего оформления.

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

  • подключить готовый пейволл из дашборда RevenueCat через RevenueCatUI
  • заблокировать доступ к экрану до проверки прав подписки
  • настроить модальный показ пейволла при первом запуске приложения
  • добавить кнопку закрытия экрана оплаты в модальном режиме

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

  • Покажи пейволл RevenueCat перед переходом на экран аналитики
  • Интегрируй RevenueCatUI и закрой пейволлом платные функции приложения
  • Добавь вызов presentPaywallIfNeeded при старте на Flutter

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

1Через Skills CLI (Vercel)

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

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

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

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

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

Вопросы о revenuecat-paywall

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

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

Для каких платформ подходит revenuecat-paywall?

Скилл работает с проектами на iOS, Android, Kotlin Multiplatform, Flutter и React Native. Он определяет стек по корневым манифестам сборки и подключает соответствующий пакет RevenueCatUI.

Можно ли сверстать произвольный интерфейс пейволла этим скиллом?

Нет, он предназначен только для готовых шаблонов из панели RevenueCat. Для полностью кастомного UI вызывают метод Purchases.getOfferings() напрямую.

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

SKILL.md · MIT
---
name: revenuecat-paywall
description: Display a RevenueCat paywall inside an app using the RevenueCatUI SDK. Use when the user asks to add a paywall, show a RevenueCat paywall, present PaywallView, integrate RevenueCatUI, gate a premium screen with a paywall, launch PaywallActivity, call presentPaywall or presentPaywallIfNeeded, or show the dashboard configured paywall UI on iOS, Android, Kotlin Multiplatform, Flutter, or React Native. To create, edit, evaluate, or audit the dashboard paywall itself, use revenuecat-paywall-design.
---

# revenuecat-paywall: display a RevenueCat paywall

Use this skill when the user wants to show a paywall that is built and configured in the RevenueCat dashboard, using the native RevenueCatUI components. This skill does not cover building a custom paywall from scratch. For that, use `revenuecat-purchase-flow` and `Purchases.getOfferings(…)` directly. If the user has not chosen between the two, see `integrate-revenuecat`, Section 5c. To create, edit, evaluate, or audit the dashboard paywall, use `revenuecat-paywall-design`.

Prerequisite: `integrate-revenuecat` has already run. `Purchases.configure(…)` must succeed before a paywall can load.

## 1. Detect the platform

Inspect the working directory and pick the **first** match, from top to bottom:

1. **React Native**: `package.json` has a `react-native-purchases` entry, or `react-native` as a dependency. `react-native-purchases-ui` is the paywall package. Read `platforms/react-native.md`. If `expo` is also a dependency, note it as an Expo project.
2. **Flutter**: `pubspec.yaml` exists at the project root. The paywall package is `purchases_ui_flutter`. Read `platforms/flutter.md`.
3. **Kotlin Multiplatform**: `build.gradle.kts` contains a `kotlin { … }` multiplatform source sets block, or depends on `com.revenuecat.purchases:purchases-kmp*`. The paywall module is `purchases-kmp-ui`. Read `platforms/kmp.md`.
4. **Android (native)**: `build.gradle(.kts)` applies `com.android.application` (and is not KMP). The paywall dependency is `com.revenuecat.purchases:purchases-ui`. Read `platforms/android.md`.
5. **iOS (native)**: `Package.swift`, `*.xcodeproj`, `*.xcworkspace`, or `Podfile` at the project root. The paywall product is `RevenueCatUI`. Read `platforms/ios.md`.

If several match (e.g. an `ios/` folder inside a Flutter project), pick the **outermost** project, the one that owns the build. If still ambiguous, ask the user which platform they want to configure.

## 2. Shared concepts (all platforms)

- **Paywalls require an Offering with a paywall attached in the RevenueCat dashboard.** The SDK pulls offerings via `getOfferings()`. If no offering has a paywall configured, RevenueCatUI falls back to a default paywall layout, which is not what you want in production.
- **Offering vs. entitlement.** Users purchase a product through a package in an offering. Access is granted via an entitlement (typically `"premium"` or `"pro"`). Gate premium features on the entitlement, not on the offering.
- **Three presentation patterns**:
  - (a) First launch modal for users without the entitlement, typically driven by a "present if needed" helper that checks the entitlement and only shows the paywall when missing.
  - (b) Gated premium screen. The user taps a premium feature and the paywall opens before the screen loads.
  - (c) Conditional present on a CTA tap, such as an "Upgrade" button in settings.
- **RevenueCatUI owns the purchase flow.** Do not call `Purchases.purchase(…)` manually alongside a RevenueCatUI paywall. The paywall calls it internally. Listen for the dismiss or purchase completed callback to react in app code.
- **Close button is opt in on most platforms.** Pass `displayCloseButton = true` (iOS / Flutter / RN) or `setShouldDisplayDismissButton(true)` (Android / KMP) when the paywall is presented modally and the user needs a way out. Skip it when presenting behind a sheet with its own grabber, or when wrapping the paywall in a navigation controller.
- **If the user has chosen a fully custom UI**, do not use this skill. Call `Purchases.getOfferings()` and render your own components. RevenueCatUI is only for dashboard templated paywalls.

## 3. Implementation

Read the platform file that matches detection:

- `platforms/ios.md`
- `platforms/android.md`
- `platforms/kmp.md`
- `platforms/flutter.md`
- `platforms/react-native.md`

Each platform file is self contained: install command, exact snippet to present the paywall, and the callback shape you listen to.

## 4. Verify

Do not claim the integration is complete until:

1. The project **builds** on the target platform.
2. The app launches, the code path that presents the paywall runs, and the paywall UI renders with the template configured in the dashboard (not the default fallback layout).
3. Tapping a package and completing a sandbox purchase dismisses the paywall and fires the purchase completed callback (or, for imperative APIs, resolves with a `PURCHASED` result).
4. Closing the paywall without purchasing fires the dismiss / cancelled callback.

If the paywall shows the default fallback layout instead of your template, the offering does not have a paywall attached in the dashboard. Fix this in the dashboard, then retry.

© 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 400установок swiftui-pro Paul Hudson Проверяет SwiftUI-код на устаревшие API, ошибки в структуре и проблемы доступности. Пригодится для ревью и доработки проектов на SwiftUI. CX Codex +1 35 200установок orca-emulator stablyai Управляет iOS Simulator внутри Orca с живым экраном устройства. Пригодится для тапов, жестов, поворота экрана и сбора доказательств работы iOS-приложения. CX Codex +1 5 800установок

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

integrate-revenuecat Скилл проводит интеграцию RevenueCat целиком: заводит проект и приложение в дашборде, выдаёт публичный API-ключ и настраивает Purchases SDK в приложении. CX Codex +1 1 000установок revenuecat-purchase-flow Скилл для ИИ-агента, который пишет логику покупки подписки и восстановления покупок на RevenueCat. Пригодится, когда за кастомным пейволлом нужен рабочий purchase и кнопка Restore. CX Codex +1 978установок revenuecat-testing-setup Настраивает тестовую среду для покупок RevenueCat: Test Store, StoreKit, sandbox, внутреннее тестирование Google Play. CX Codex +1 886установок create-revenuecat-project Скилл пошагово разворачивает проект в RevenueCat: создаёт приложения, товары, уровни доступа и пакеты. Пригодится при настройке монетизации в мобильных или веб-проектах. CX Codex +1 867установок revenuecat-troubleshoot Скилл находит причины ошибок в интеграции RevenueCat на iOS, Android, Flutter и React Native. Проверяет ключи, конфигурацию в панели управления и логи SDK. CX Codex +1 862установок revenuecat-entitlements-gate Скилл проверяет активные entitlements в RevenueCat и решает, показывать ли платную функцию. Пригодится, когда нужно спрятать фичу за подпиской. CX Codex +1 831установок revenuecat-status Собирает отчёт по проекту RevenueCat: приложения, продукты, entitlements, offerings и вебхуки. Пригодится, когда нужно быстро понять, что настроено. CX Codex +1 825установок revenuecat-identify-user Связывает пользователей приложения с подписчиками RevenueCat: вызывает logIn и logOut в нужный момент авторизации. CX Codex +1 788установок

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

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