CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

paddle-checkout-web

Add a Paddle Checkout to a Next.js web app — overlay or inline, with event handling, customer pre-fill, and dynamic line item updates.

Quality

79%

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

Fix and improve this skill with Tessl

tessl review fix ./providers/codex/plugin/skills/checkout-web/SKILL.md

The canonical home for this skill is paddle-checkout-web in PaddleHQ/paddle-agent-skills

SKILL.md
Quality
Evals
Security

Quality

Content

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

An unusually actionable skill: executable code paths, a real verification loop, and a pitfalls section that does genuine error triage. Its weaknesses are structural and token-level — a monolithic single-file layout with no bundled references, and long generic MCP/CLI passages plus version numbers that dilute the checkout-specific core.

Suggestions

Move the generic Paddle MCP-server and Paddle CLI blockquotes into a shared reference file (e.g. references/paddle-tooling.md) and keep a one-line pointer, trimming the skill to checkout-specific uses of those tools.

Extract the events table and express-variant rules to references/ (e.g. references/checkout-events.md), keeping the two or three most common events inline in the main example.

Concentrate version-specific notes (paddle-js 1.6.x minimums, CLI v0.2.0) in one clearly labeled place so the main flow reads clean and version drift is easy to spot.

DimensionReasoningScore

Conciseness

The body is mostly tight and code-first, but the two long blockquotes on the Paddle MCP server and Paddle CLI ("Hard caps: 50 API calls per execute, 30s timeout...", "Exit code 5 is a 403...") are generic Paddle tooling guidance only partially relevant to checkout, and hardcoded version numbers ("1.6.4+", "1.6.1", "v0.2.0 or later") are time-sensitive information not placed in a deprecated section. Not 4 because these padded sections are a noticeable share of the file; not 2 because the checkout-specific core is efficient and non-padded.

3 / 5

Actionability

Fully executable throughout: a complete copy-paste overlay page, install commands ("npm install @paddle/paddle-js"), env-var setup, pre-fill and updateItems snippets, and a verification section with a real sandbox test card ("4242 4242 4242 4242"). The only caveat — an undefined PriceSection in the inline example — is minor against coverage of the common cases.

5 / 5

Workflow Clarity

Clear sequence from prerequisites to style choice to implementation to verification, with an explicit numbered "Verify the integration" checklist (confirm iframe render, successUrl landing, checkout.completed firing, dashboard transaction) and a pitfalls section that maps failure symptoms to fixes — a genuine feedback loop. No destructive or batch operations, so no cap applies.

5 / 5

Progressive Disclosure

No references/, scripts/, or assets/ files exist — the events table, express-variant rules, and both MCP/CLI blockquotes are all inlined in a single ~320-line SKILL.md. Clear section headers make it navigable (better than 2), but content that clearly belongs in one-level-deep reference files sits inline (short of 4's "most content is appropriately placed").

3 / 5

Total

16

/

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.

A specific, well-scoped description with concrete actions and strong distinctiveness, but it lacks any explicit "use when" trigger guidance, which both limits completeness and leaves natural trigger phrases unsaid. Adding a one-sentence trigger clause would lift it to the top band.

Suggestions

Add an explicit trigger clause, e.g. "Use when adding payments or a buy button to a Next.js app with Paddle, or when the user mentions Paddle checkout, overlay, or inline checkout."

Include a few natural synonyms users actually say — "payment page", "buy button", "billing" — alongside the existing Paddle-specific terms.

Optionally mention the post-checkout success redirect, since it is a covered capability currently absent from the description.

DimensionReasoningScore

Specificity

Names concrete actions — "Add a Paddle Checkout to a Next.js web app — overlay or inline, with event handling, customer pre-fill, and dynamic line item updates" — but omits capabilities the body covers (post-checkout successUrl redirect, checkout variants like express), so coverage has minor gaps rather than being comprehensive.

4 / 5

Completeness

The "what" is clear (add an overlay or inline checkout with events, pre-fill, and dynamic items), but there is no "Use when..." clause or equivalent explicit trigger guidance, which caps completeness at 3. Not 4 because "when" is only weakly implied by "Add a...", not stated.

3 / 5

Trigger Term Quality

Includes natural terms users would say ("Paddle Checkout", "Next.js", "overlay", "inline", "customer pre-fill", "line item updates") but misses common variations like "payment page", "buy button", "billing", or "Paddle.js".

4 / 5

Distinctiveness Conflict Risk

Occupies a clear niche (client-side Paddle checkout in a Next.js app) and is easily distinguishable from the sibling skills it names (webhooks, subscription-sync, sandbox-testing); minimal conflict risk.

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

PaddleHQ/paddle-agent-skills

Path

providers/codex/plugin/skills/checkout-web/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.