CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

rc-price-changes

Use this skill when rolling out subscription price changes on Android with RevenueCat. Covers price decreases, opt out versus opt in increases, the in app notice required for opt out increases, RevenueCat's price increase consent webhooks, and the dashboard and Play Console configuration involved.

Quality

83%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

75%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured, information-dense skill that teaches genuinely non-obvious domain mechanics (opt-out certification, legacy cohorts, consent webhooks) with executable Kotlin and precise console/API specifics. The main gaps are mild cross-phase repetition, a thin webhook-handling step, and no error-recovery guidance.

Suggestions

De-duplicate the opt-out in-app notice requirement (stated in Phase 1, the Phase 2 table, and Step 6) and the legacy-cohort behavior (Phase 2 and Step 3) by stating each once and cross-referencing, freeing tokens in Phase 1.

Add a minimal CANCELLATION webhook handling example (event fields to check, e.g. cancel_reason PRICE_INCREASE) to Step 5 so the decline path is as actionable as the client steps.

Include an error-recovery note for the main failure modes, e.g. what to check if the new price does not appear in the RevenueCat dashboard or if RTDNs are not connected, turning Step 2's one-time confirmation into a validate-then-proceed checkpoint.

DimensionReasoningScore

Conciseness

The body is dense with non-obvious domain facts (opt-out notice periods, legacy price cohorts, exact webhook events, certification requirements) and avoids explaining concepts Claude already knows. Minor repetition — the opt-out in-app notice requirement appears in Phase 1, the Phase 2 table, and Step 6, and the legacy-cohort point repeats in Phase 2 and Step 3 — keeps it below lean/efficient.

4 / 5

Actionability

Mostly executable: exact console navigation ("base plan menu > View legacy price points"), a real API identifier ("monetization.subscriptions.basePlans.migratePrices"), exact webhook names, and two copy-paste Kotlin snippets. Gaps: Step 5 ("Handle declines via webhook, if you care") offers no concrete webhook-handling example, and Step 6's banner/Targeting-rule options are named without implementation detail.

4 / 5

Workflow Clarity

A clear Understand→Plan→Execute sequence with a routing table, pre-execution checklist ("Questions to answer before executing"), and an explicit verification checkpoint ("Confirm the updated product price appears on the product in the RevenueCat dashboard after Google propagates it"). No error-recovery feedback loops (e.g., what to do if RTDNs are not connected or the price never propagates), so it does not reach 5; checkpoints are explicit rather than implicit, so it clears 3.

4 / 5

Progressive Disclosure

Good structure: phased headers, numbered steps, a comparison table, and a single clearly-signaled external reference ("[Full chapter](https://www.revenuecat.com/guides/revenuecat-android-sdk/price-changes)"). No bundle files exist and the ~84-line body is appropriately self-contained for a single-topic skill, but it exceeds the under-50-lines simple-skill case and offers no one-level-deep internal reference structure, so it stays at good-structure rather than clear-overview-with-references.

4 / 5

Total

16

/

20

Passed

Description

87%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description with an explicit use-when trigger, concrete capability enumeration, and natural domain keywords in third-person voice. The only softness is that capabilities are listed as covered topics rather than performed actions, and a few natural phrasings (e.g., "raise price", "price increase") are missing.

DimensionReasoningScore

Specificity

The description enumerates several concrete capabilities — "price decreases, opt out versus opt in increases, the in app notice required for opt out increases, RevenueCat's price increase consent webhooks, and the dashboard and Play Console configuration" — going beyond 1-2 actions, though it is phrased as topic coverage and "the dashboard and Play Console configuration involved" is slightly generic, keeping it below the comprehensive 5.

4 / 5

Completeness

Both parts are explicit: the trigger clause "Use this skill when rolling out subscription price changes on Android with RevenueCat" answers when with a concrete trigger phrase, and the "Covers..." sentence concretely enumerates what the skill handles. This matches the anchor for clearly and explicitly answering both what and when.

5 / 5

Trigger Term Quality

Good natural keyword coverage: "price changes", "Android", "RevenueCat", "opt out versus opt in increases", "consent webhooks", "Play Console" — terms a user with this need would naturally say. A few common variations like "raise price" or "price increase" are only weakly present ("price increase consent webhooks"), so it falls short of the comprehensive synonym coverage of a 5.

4 / 5

Distinctiveness Conflict Risk

The niche is unambiguous — Android subscription price changes mediated by RevenueCat with named consent webhooks — so it is clearly distinguishable from generic subscription, pricing, or iOS skills and unlikely to trigger the wrong skill. It states "Android" and "RevenueCat" explicitly, which cleanly separates it from adjacent skills.

5 / 5

Total

18

/

20

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

Total

14

/

16

Passed

Repository

RevenueCat/ai-toolkit

Path

revenuecat-play-billing/skills/rc-price-changes/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.