CtrlK
BlogDocsLog inGet started
Tessl Logo

rc-cancellations-pauses-winback

Use this skill when surfacing cancellation, pause, and winback state on Android with RevenueCat. Covers reading unsubscribeDetectedAt, billingIssuesDetectedAt, pause state via periodType, managementURL for deep link, and pause resume date lookup via the REST API.

68

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, mostly actionable skill body that sequences work into phases and closes with a verification checklist. It is held back from top marks by a duplicated pitfall reminder, a thin pause-detection snippet, and the absence of an explicit fix-retry loop.

Suggestions

De-duplicate the managementURL pitfall: state the 'do not call Uri.parse(url.toString())' rule once, either in Phase 2 rules or Phase 3 prose, not both.

Expand the pause-detection snippet to a complete, runnable check (e.g. resolving entitlement, reading isActive, and surfacing the REST-fetched resume date) so the example matches the depth of the cancellation example.

Add a short fix-retry note in Phase 4 Verify: when a check fails, point back to the specific Prepare/Execute step to revisit, closing the feedback loop.

DimensionReasoningScore

Conciseness

The phased body is lean and mostly assumes competence, explaining only RevenueCat-specific behavior Claude would not know, but the managementURL 'do not Uri.parse' pitfall is stated twice (Phase 2 rules and Phase 3 prose), a minor trim opportunity.

4 / 5

Actionability

Kotlin snippets and the curl call are concrete and mostly copy-paste ready, but the pause-detection snippet is illustrative rather than complete and the resubscribe sections are descriptive with no executable code, leaving minor gaps.

4 / 5

Workflow Clarity

Scope/Prepare/Execute/Verify phases give a clear sequence and the Phase 4 Verify table is an explicit checklist, but there is no fix-and-retry feedback loop tying verification failures back to remediation.

4 / 5

Progressive Disclosure

Content is organized into well-signaled phase sections with a single one-level-deep external reference (the full chapter link), appropriately self-contained for this scope, though there are no bundle files to further split detail into.

4 / 5

Total

16

/

20

Passed

Description

92%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, specific description with an explicit use-when trigger and a concrete enumeration of capabilities rooted in named RevenueCat fields. The only soft spot is that natural-language trigger terms share space with API jargon that users would not typically say.

DimensionReasoningScore

Specificity

Lists five concrete actions tied to named fields/endpoints ('reading unsubscribeDetectedAt, billingIssuesDetectedAt, pause state via periodType, managementURL for deep link, and pause resume date lookup via the REST API'), giving comprehensive coverage of the skill's surface.

5 / 5

Completeness

An explicit 'Use this skill when surfacing...' clause answers 'when', and 'Covers reading...' enumerates the concrete 'what', both with concrete trigger phrases.

5 / 5

Trigger Term Quality

Natural terms a subscription developer would say are present ('cancellation, pause, and winback', 'Android', 'RevenueCat'), but the list is interleaved with API field names (unsubscribeDetectedAt, periodType) that are jargon rather than natural user speech, leaving a few synonymous phrasings uncovered.

4 / 5

Distinctiveness Conflict Risk

The RevenueCat + Android + subscription-state niche is narrow and distinctive; the trigger language would not plausibly fire for an unrelated skill.

5 / 5

Total

19

/

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.