CtrlK
BlogDocsLog inGet started
Tessl Logo

upgrade-stripe

Guide for upgrading Stripe API versions and SDKs

62

1.16x
Quality

43%

Does it follow best practices?

Impact

91%

1.16x

Average score across 3 eval scenarios

SecuritybySnyk

Risky

Do not use without reviewing

Optimize this skill with Tessl

npx tessl skill review --optimize ./providers/claude/plugin/skills/upgrade-stripe/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

22%

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 too terse and reads more like a document title than a skill description. It lacks concrete actions, explicit trigger conditions, and natural keyword variations that would help Claude reliably select this skill from a large pool. The Stripe-specific domain provides some distinctiveness, but the description needs significant expansion.

Suggestions

Add a 'Use when...' clause with explicit triggers, e.g., 'Use when the user asks about upgrading Stripe API versions, migrating between Stripe SDK versions, handling Stripe deprecation warnings, or resolving breaking changes after a Stripe update.'

List specific concrete actions such as 'Updates Stripe SDK dependencies, resolves breaking API changes, migrates deprecated parameters and endpoints, updates webhook signature verification code.'

Include natural keyword variations users might say: 'Stripe migration', 'stripe-python', 'stripe-node', 'stripe-ruby', 'API changelog', 'Stripe deprecation', 'breaking changes'.

DimensionReasoningScore

Specificity

The description only names a domain ('Stripe API versions and SDKs') and a single vague action ('upgrading'). It does not list concrete actions like 'update webhook endpoints, migrate deprecated parameters, resolve breaking changes'.

1 / 3

Completeness

The description weakly addresses 'what' (upgrading Stripe API versions/SDKs) but completely lacks any 'when' clause or explicit trigger guidance. Per the rubric, a missing 'Use when...' clause caps completeness at 2, and the 'what' is also weak, so this scores a 1.

1 / 3

Trigger Term Quality

It includes some relevant keywords like 'Stripe', 'API versions', and 'SDKs' that users might naturally mention, but misses common variations like 'Stripe migration', 'stripe-python', 'stripe-node', 'breaking changes', 'deprecation', or version numbers.

2 / 3

Distinctiveness Conflict Risk

The mention of 'Stripe API versions' provides some specificity that distinguishes it from generic coding or API skills, but it could overlap with broader Stripe integration skills or general API migration guides.

2 / 3

Total

6

/

12

Passed

Implementation

64%

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

This is a solid reference skill with good actionable code examples across multiple languages and a useful upgrade checklist. Its main weaknesses are some verbosity in explaining concepts Claude already understands (semantic versioning, backward-compatible change definitions) and a lack of explicit validation/feedback loops in the upgrade workflow. The content would benefit from trimming explanatory sections and adding verification checkpoints.

Suggestions

Remove or drastically shorten the 'Types of Changes' and 'Semantic Versioning' explanations — Claude already knows these concepts. Replace with a one-liner like 'Review the changelog for breaking changes between versions.'

Add explicit validation checkpoints to the upgrade checklist, e.g., 'Run your test suite after step 4; if failures occur, check the changelog for the specific breaking change and fix before proceeding.'

Consider splitting mobile SDK and Stripe.js versioning details into separate referenced files to reduce the main skill's token footprint and improve progressive disclosure.

DimensionReasoningScore

Conciseness

The skill includes some unnecessary explanations Claude already knows (e.g., explaining what backward-compatible vs breaking changes are, explaining semantic versioning MAJOR.MINOR.PATCH). The types of changes section and mobile SDK versioning details add bulk without much actionable value. However, the code examples and checklist are reasonably tight.

2 / 3

Actionability

The skill provides concrete, executable code examples across multiple languages (Python, Ruby, JavaScript, bash curl), specific script tags for Stripe.js, package manager commands, and a detailed upgrade checklist. The guidance is copy-paste ready and covers real integration scenarios.

3 / 3

Workflow Clarity

The upgrade checklist provides a clear sequence of steps, and the testing section shows how to validate against a new version before committing. However, there are no explicit validation checkpoints or feedback loops (e.g., 'if tests fail, do X'), and no verification step after the upgrade is complete to confirm everything works correctly.

2 / 3

Progressive Disclosure

The skill references external Stripe docs (changelog, upgrades guide, SDK versioning pages) which is good, but all content is inline in a single file with no bundle files. The mobile SDK versioning and Stripe.js sections could be split out. The references to external Stripe docs are well-signaled but the overall document is somewhat monolithic for its length.

2 / 3

Total

9

/

12

Passed

Validation

100%

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

Validation11 / 11 Passed

Validation for skill structure

No warnings or errors.

Repository
stripe/ai
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.