Skip to content

Commit bcce7a3

Browse files
authored
feat(sdk-compatibility): Add SDK Compatibility SKILL. (#33)
1 parent c7e5d46 commit bcce7a3

1 file changed

Lines changed: 51 additions & 0 deletions

File tree

  • revenuecat/skills/revenuecat-sdk-compatibility
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
---
2+
name: revenuecat-sdk-compatibility
3+
description: Check whether an SDK version supports a RevenueCat feature, whether an SDK upgrade is required, why an SDK-gated feature is not working, or how much of a project's recent subscriber base is on incompatible SDK versions. Use for questions about RevenueCat SDK compatibility, feature gates, minimum SDK versions, SDK adoption, upgrade impact, and rollout risk.
4+
---
5+
6+
# RevenueCat SDK compatibility
7+
8+
Use the RevenueCat MCP server for all tool calls here.
9+
10+
## Check feature compatibility
11+
12+
Call `list-sdk-feature-gates` before making any SDK compatibility claim. Find the gate that matches
13+
the user's feature and use its minimum version for each relevant RevenueCat SDK.
14+
15+
- If the relevant feature gate cannot be identified, say so and explain which gates looked close
16+
instead of guessing. Consult the docs linked in the tool output to disambiguate.
17+
- When more than one gate could apply, prefer the most specific gate. For example:
18+
- Existing-customer experiment enrollment: `experiment-existing-customer-enrollment`
19+
- Experiment exposure status or reporting: `experiment-exposure-tracking`
20+
- New-customer experiment enrollment: `experiment-new-customer-enrollment`
21+
- If multiple gates jointly matter, evaluate and name each one.
22+
23+
## Analyze SDK adoption
24+
25+
Call `list-sdk-versions` to assess upgrade impact or rollout risk from SDK versions observed in the
26+
project. Each row describes subscribers seen in the last 30 days and includes:
27+
28+
- `sdk_type`: RevenueCat SDK family.
29+
- `sdk_version`: underlying native SDK version for native rows, or the native SDK bundled under a
30+
wrapper in `platform_flavor` rows.
31+
- `sortable_sdk_version`: normalized value for ordering `sdk_version`.
32+
- `platform`: native platform, such as `ios` or `android`, when grouped by platform or platform
33+
flavor.
34+
- `platform_flavor` and `platform_flavor_version`: wrapper SDK family and version, such as
35+
`react-native` `10.0.1`, when grouped by platform flavor.
36+
- `subscribers_last_30days` and `pct_of_subscribers`: recent project usage counts and shares.
37+
38+
Choose the grouping that matches the question:
39+
40+
- Use `sdk_type` for a high-level inventory by RevenueCat SDK family.
41+
- Use `platform` to compare native iOS and Android adoption.
42+
- Use `platform_flavor` for React Native, Flutter, Capacitor, Unity, Kotlin Multiplatform, and other
43+
wrappers where both the wrapper version and bundled native SDK versions matter.
44+
45+
To compute upgrade impact, filter to the relevant SDK family, compare observed versions with the
46+
feature gate's `min_version`, and sum `subscribers_last_30days` and `pct_of_subscribers` for rows
47+
below the requirement. State that these figures represent subscribers observed in the last 30 days,
48+
not the all-time install base.
49+
50+
Use `jq` for quick filtering or a code execution tool for version comparisons, grouping, and
51+
subscriber-share calculations when the output is too large to analyze reliably by inspection.

0 commit comments

Comments
 (0)