CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

convex-billing

Add Stripe billing/payments to the Convex app via @convex-dev/stripe (checkout + webhook + gating).

Quality

82%

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

86%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 content is a tightly written, fully executable recipe with complete code, exact commands, and a clearly sequenced workflow including an install-verification checkpoint. Minor deductions come from slight duplication between the Rules and Workflow sections, an inline version pin, and the absence of error-recovery or webhook-test verification steps.

DimensionReasoningScore

Conciseness

The body is lean and assumes Claude's competence (no explanation of what Stripe or webhooks are), but the Rules section duplicates steps 3-4 ("it handles webhook signature verification internally via registerRoutes", "Stripe keys live in Convex env") and pins a time-sensitive version "@convex-dev/stripe@^0.1.4" outside any deprecation section — minor trimming opportunities keep it below anchor 5.

4 / 5

Actionability

Fully executable, copy-paste-ready guidance: complete code for convex.config.ts, http.ts, and billing.ts (including auth checks and arg/return validators), the exact commands `npm install @convex-dev/stripe` and `npx convex dev --once`, and specific webhook events to subscribe to — covering the common subscription-checkout + gating case completely.

5 / 5

Workflow Clarity

The 7-step sequence is clearly ordered with an explicit checkpoint ("Verify output shows `✔ Installed component stripe.`"), but there is no error-recovery feedback loop and no verification that the webhook endpoint actually receives events — minor validation gaps characteristic of anchor 4 rather than 5.

4 / 5

Progressive Disclosure

No bundle files exist and none are needed: this is a single-purpose integration recipe where all content (including the code blocks) appropriately lives inline, organized under clear Workflow and Rules sections with nothing that should be split into separate files.

5 / 5

Total

18

/

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 concise, specific, and clearly scoped to a distinct niche (Stripe billing on Convex via a named component), with good natural trigger keywords. Its main weakness is the absence of an explicit "Use when..." trigger clause, which caps completeness and leaves activation guidance implicit.

Suggestions

Add an explicit trigger clause, e.g. "Use when adding Stripe payments, subscription checkout, or paywall gating to a Convex app."

Include common user phrasings such as "subscriptions", "paywall", or "pricing plans" alongside "billing/payments" to broaden natural trigger coverage.

DimensionReasoningScore

Specificity

"checkout + webhook + gating" names three concrete actions plus the exact package "@convex-dev/stripe", matching the several-specific-actions anchor; not 5 because capabilities like subscription-state storage and customer creation are only implied by "billing/payments" rather than explicitly stated.

4 / 5

Completeness

The "what" is clear ("Add Stripe billing/payments to the Convex app via @convex-dev/stripe (checkout + webhook + gating)") but there is no "Use when..." clause or equivalent explicit trigger guidance, which caps completeness at 3; the "when" is only weakly implied by the keywords.

3 / 5

Trigger Term Quality

Natural terms users would say are present ("Stripe", "billing", "payments", "checkout", "webhook"), giving good coverage; not 5 because common phrasings such as "subscriptions", "paywall", or "pricing" are missing.

4 / 5

Distinctiveness Conflict Risk

The combination of "Stripe billing/payments", "the Convex app", and the named "@convex-dev/stripe" package carves out a clear niche with distinct triggers and minimal conflict risk with other skills; no broader or overlapping framing appears.

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

FacundoLucci/autonomous-buyer

Path

.agents/skills/convex-billing/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.