CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

upgrade-stripe

Guide for upgrading Stripe API versions, webhook endpoints, server-side SDKs, Stripe.js, and mobile SDKs

1.02x
Quality

75%

Does it follow best practices?

Impact

100%

1.02x

1 of 3 eval scenarios. Add 2 more for a full score.

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./providers/grok/plugin/skills/upgrade-stripe/SKILL.md

The canonical home for this skill is upgrade-stripe in stripe/ai

SKILL.md
Quality
Evals
Security

Quality

Content

67%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 delivers a genuinely actionable upgrade workflow — concrete code, a sequenced checklist, explicit webhook-cutover validation, and thoughtful handling of the stale-version fallback. Its weaknesses are pedagogical padding (semver and breaking-change taxonomies Claude already knows) and inline time-sensitive version literals. Splitting per-platform sections into reference files would improve both conciseness and structure.

Suggestions

Cut the generic explanations Claude already knows — the MAJOR.MINOR.PATCH semantic-versioning primer and the backward-compatible vs. breaking change bullet lists — keeping only Stripe-specific policy facts (monthly cadence, biannual majors).

Replace the hardcoded `2026-10-28.endive` literal in code examples with a clearly marked placeholder (e.g. `stripe.api_version = '<TARGET_API_VERSION>'`) so examples stay evergreen; the instruction to swap in the selected target already exists and makes the literals redundant.

Move the Stripe.js and Mobile SDK versioning sections into separate reference files (e.g. references/stripejs.md, references/mobile-sdks.md) linked from the checklist, slimming the main body to the decision logic and core workflow.

DimensionReasoningScore

Conciseness

The body is mostly tight, but spends tokens on concepts Claude already knows: the semantic-versioning primer ("MAJOR: Breaking API changes, MINOR: New functionality, PATCH: Bug fixes") and the backward-compatible vs. breaking change taxonomy are generic programming knowledge. It also embeds the time-sensitive version literal `2026-10-28.endive` throughout code examples rather than a placeholder — mitigated by the explicitly dated fallback note and the instruction to replace bundled versions, but still inline time-sensitive detail.

3 / 5

Actionability

Concrete, executable guidance dominates: copy-paste Python/Ruby/JavaScript client configs, a per-request override, a curl test with the `Stripe-Version` header, npm install commands, and a highly specific webhook-destination replacement procedure (inspect `snapshot_api_version`, dual signing secrets during cutover, disable the old destination). Minor gaps keep it below anchor 5: Java/Go/.NET steps are directional ("select an SDK release that targets the selected API version") with no commands, and changelog review is necessarily abstract.

4 / 5

Workflow Clarity

A numbered 9-step Upgrade Checklist provides a clear sequence with explicit checkpoints — test against the new version via `Stripe-Version`, create and test replacement destinations, accept both signing secrets during cutover — plus an error-recovery path (72-hour rollback in Workbench) and verification honesty rules ("don't claim the integration is on the latest version"). Slightly below anchor 5 because the checklist orders client-config updates (steps 3-4) before testing (step 5), and the strongly-typed SDK upgrade path lacks a concrete validate-fix-retry loop.

4 / 5

Progressive Disclosure

The single-file body is well organized into clearly headed sections (target selection, API versioning, server SDKs, Stripe.js, mobile SDKs, checklist, testing) with clearly signaled links to authoritative Stripe doc pages for deeper detail. At ~190 lines with no bundle files, sections like Stripe.js and Mobile SDK versioning could live in separate reference files, which keeps it below anchor 5's well-signaled one-level-deep reference structure.

4 / 5

Total

15

/

20

Passed

Description

70%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, Stripe-distinct, and covers the full upgrade domain (API versions, webhooks, server SDKs, Stripe.js, mobile SDKs) with natural trigger keywords. Its main weakness is the absence of an explicit 'Use when...' clause, which caps completeness and leaves activation guidance implicit. Adding trigger phrasing and synonyms would round it out.

Suggestions

Add an explicit trigger clause, e.g. "Use when the user asks to upgrade, update, or migrate their Stripe integration, API version, webhooks, or Stripe SDKs."

Include common synonyms users say — "update", "migrate", "bump" — alongside "upgrading" to broaden natural trigger coverage.

DimensionReasoningScore

Specificity

"Guide for upgrading Stripe API versions, webhook endpoints, server-side SDKs, Stripe.js, and mobile SDKs" names one concrete action applied across five specifically enumerated targets, giving comprehensive coverage of the Stripe upgrade surface. It sits between anchor 3 (1-2 actions, not comprehensive) and anchor 5 (multiple distinct action verbs) — the object coverage is comprehensive but there is only a single verb, noticeably above the midpoint.

4 / 5

Completeness

The 'what' is clear (upgrading Stripe API versions, webhook endpoints, server-side SDKs, Stripe.js, and mobile SDKs), but there is no 'Use when...' clause or equivalent explicit trigger guidance — 'when' is only weakly implied by the upgrade framing. Per the judging guideline, a missing 'Use when' clause caps completeness at 3.

3 / 5

Trigger Term Quality

Natural terms users would say are present: "upgrading", "Stripe", "API versions", "webhook endpoints", "SDKs", "Stripe.js", "mobile SDKs". Common synonyms like "update", "migrate", or "bump" are missing, keeping it below anchor 5's comprehensive synonym coverage.

4 / 5

Distinctiveness Conflict Risk

"upgrading Stripe API versions, webhook endpoints, server-side SDKs, Stripe.js, and mobile SDKs" carves out a clear niche that is exclusively Stripe-specific, with distinct triggers unlikely to fire for any non-Stripe or non-upgrade skill — matching anchor 5's clear niche with minimal conflict risk, not anchor 4's residual overlap with closely related skills.

5 / 5

Total

16

/

20

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.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

stripe/ai

Path

providers/grok/plugin/skills/upgrade-stripe/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.