CtrlK
BlogDocsLog inGet started
Tessl Logo

rc-one-time-products

Use this skill when selling one time products on Android with RevenueCat. Covers fetching offerings, running awaitPurchase on a non subscription package, and relying on the SDK to acknowledge or consume automatically.

71

Quality

88%

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

88%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.

The body is actionable, well-sequenced with validation checkpoints, and token-efficient. The only nit is light repetition of the SDK-owns-acknowledgement guidance.

Suggestions

Consolidate the "do not call acknowledgePurchase/consumeAsync yourself" note so it appears once (e.g. in Phase 1) rather than restating it in Phase 3.

Consider a short 'Prerequisites' note confirming Purchases.configure and the offering/package dashboard setup are required before Phase 3 code runs, to tighten the Prepare→Execute handoff.

DimensionReasoningScore

Conciseness

Lean body that avoids explaining concepts Claude already knows; minor repetition of the "do not call acknowledgePurchase or consumeAsync" guidance across Phase 1 and Phase 3 could be consolidated.

4 / 5

Actionability

Provides copy-paste-ready Kotlin covering offerings fetch, awaitPurchase via PurchaseParams.Builder, CustomerInfo entitlement/transaction reads, and a full PurchasesTransactionException error-handling block.

5 / 5

Workflow Clarity

Five sequenced phases with explicit validation in Phase 5 ("Do not grant access from optimistic local state"), a feedback loop via UpdatedCustomerInfoListener for pending payments, and an outcome-to-action checklist table.

5 / 5

Progressive Disclosure

Well-organized sections with a single clearly-signaled one-level reference link; no bundle files exist, so all content is appropriately inline with only minor organization gaps.

4 / 5

Total

18

/

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.

The description is specific, trigger-explicit, and well-scoped to a distinct niche. It would benefit only from a few additional natural synonyms (e.g. consumable, in-app purchase).

DimensionReasoningScore

Specificity

Names the domain and several concrete actions ("fetching offerings", "running awaitPurchase on a non subscription package", "relying on the SDK to acknowledge or consume automatically"), with only minor coverage gaps around edge-case handling.

4 / 5

Completeness

Explicitly answers both: the "what" ("Covers fetching offerings, running awaitPurchase...") and the "when" ("Use this skill when selling one time products on Android with RevenueCat") with a concrete trigger clause.

5 / 5

Trigger Term Quality

Includes natural terms a user would say ("one time products", "Android", "RevenueCat", "awaitPurchase") but omits common synonyms such as "in-app purchase", "consumable", or "non-consumable".

4 / 5

Distinctiveness Conflict Risk

Targets a clear niche (one-time products on Android via RevenueCat) with distinct triggers and minimal overlap risk against other 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
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.