convex-launch-readiness — Claude Code skill: Convex audit before
Runs four Convex audits into one readiness report with a score and an ordered fix plan. Useful when the backend is about to ship and you need to know what to fix first.
npx skills add convex/agent-skills --skill convex-launch-readiness -a claude-codeWhat convex-launch-readiness does
The skill runs four passes. convex-authz scans for authorization holes: identity taken from an argument, missing ownership checks, PII leaks. convex-reviewer looks at validators, indexes-not-filter, idioms and error handling. convex-advisor pulls live read-limit and OCC evidence, and convex-insights reads recent failures from logs. Each pass returns findings, not fixes.
Findings are then normalized into one report. Every finding gets an identity key like messages:list, the same whether the pass reported a code locus or a deployment locus, so one defect seen from two sides collapses into a single row and is not double-counted. The score starts at 100 and subtracts per confirmed finding by severity: high −15, med −5, low −1, floored at 0. The formula is printed, so you can check the number yourself. Only confirmed findings move the score; plausible ones sit in a separate candidate list.
Two passes need a deployed deployment with traffic. Without one, convex-advisor and convex-insights are marked skipped, and the report states plainly that a code-only score means the code looks ready, not that production was verified. Skipped passes are listed in the header, because a skipped pass is a coverage gap rather than a clean result. The skill fixes nothing on its own: it decides what to fix and in what order, then dispatches to the matching fixer once you accept a finding, and re-runs the affected passes to show the score delta.
What it helps with
- get one Convex report instead of reading four separate audits
- tell which backend defects block launch and which can wait
- collapse duplicates when a defect shows up in both code and deployment metrics
- get a reproducible readiness score with the formula printed
- order the fixes: data loss and authz first, then scale
Example prompts for the agent
- run launch-readiness on my Convex project and show me the report
- audit my Convex backend and give me the fix plan in priority order
- re-run the affected passes after the fixes and show the score delta
How to install convex-launch-readiness
1Skills CLI (Vercel)
npx skills add convex/agent-skills --skill convex-launch-readiness -a claude-code2Manually: put the files in place
~/.claude/skills/convex-launch-readiness/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/convex-launch-readiness/
1Skills CLI (Vercel)
npx skills add convex/agent-skills --skill convex-launch-readiness -a codex2Manually: put the files in place
.agents/skills/convex-launch-readiness/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add convex/agent-skills --skill convex-launch-readiness -a cursor2Manually: put the files in place
.cursor/skills/convex-launch-readiness/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install convex/agent-skills convex-launch-readiness2Manually: put the files in place
.github/skills/convex-launch-readiness/SKILL.md1Skills CLI (Vercel)
npx skills add convex/agent-skills --skill convex-launch-readiness -a gemini-cli2Platform CLI
gemini skills install https://github.com/convex/agent-skills --path skills/convex-launch-readinessManually: put the files in place
.devin/skills/convex-launch-readiness/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add convex/agent-skills --skill convex-launch-readiness -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about convex-launch-readiness
How do I install convex-launch-readiness in Claude?
Run npx skills add convex/agent-skills --skill convex-launch-readiness -a claude-code. The skill lands in ~/.claude/skills/convex-launch-readiness/SKILL.md.
What does convex-launch-readiness do?
It runs the convex-authz, convex-reviewer, convex-advisor and convex-insights audits, merges their findings into one scored report, and ends with an ordered fix plan. It does not apply fixes itself; it dispatches them to the fixer capabilities.
Why is the score lower without a deployment?
The convex-advisor and convex-insights passes need a deployed deployment with traffic. Without one they are marked skipped, and the report gives a code-only score.
Source text
SKILL.md · Apache-2.0
--- name: convex-launch-readiness description: "Run every Convex audit (authz, reviewer, advisor, insights) into one scored, deduped readiness report with an ordered fix plan — Lighthouse for your backend." --- <!-- GENERATED from convex-agents content/capabilities/launch-readiness.json — do not edit by hand. --> # Launch-readiness report Readiness is not one check — it's the union of the checks, deduped, ranked, and scored. This capability is pure composition over the findings bus (specs/finding.schema.json): it runs each audit capability, normalizes their outputs into one report (specs/finding-report.schema.json), computes an auditable score, and — because every finding names a fixCapability — hands the user a prioritized, actionable punch list instead of four separate reports. It fixes nothing itself; it decides WHAT to fix and in what order, then dispatches to the fixers. ## Workflow 1. GUARD + SCOPE: deploy-guard classifies the target (local-anonymous / dev / preview / prod); announce it. Detect what's assessable — is there a convex/ dir, a deployed deployment with traffic, an auth foundation? Skip passes whose preconditions aren't met and SAY which were skipped (a skipped pass is not a pass). 2. RUN THE PASSES, each emitting findings on the bus: - convex-authz — the authz scan (identity-from-arg, missing ownership, PII leak, parent-ref-on-write). Always runnable on code. - convex-reviewer — validators, indexes-not-filter, idiom, error handling. Always runnable on code. - convex-advisor — live read-limit / OCC evidence (only if a deployment with traffic exists; else record 'skipped: no traffic'). - convex-insights — recent failures from logs (only if a deployment exists). Run independent passes concurrently; each returns findings, not fixes. 3. NORMALIZE + DEDUPE: collect all findings into one report. Set each finding's `identity` field to a normalized function/table key (e.g. `messages:list`) that is the SAME whether the pass reported a code-locus or a deployment-locus for that function — so the SAME defect seen from two loci (reviewer flags a missing index at code-locus, advisor flags its read-limit symptom at deployment-locus) collapses to ONE via the bus's (class, identity) dedup and isn't double-counted in the score. Keep the higher-confidence source. Drop nothing silently; a pass that errored/was skipped is a stated coverage gap, not a clean result. 4. SCORE, auditable: start at 100; subtract per CONFIRMED finding by severity (high −15, med −5, low −1), floor at 0; print the exact formula and the per-class breakdown so the number is reproducible, not a vibe. plausible-only findings are listed as candidates but do NOT move the score (evidence-not-vibes). A deployment/traffic-less run reports a code-only score and says so. 5. REPORT: the score, then findings ranked by severity, each with its evidence, its locus, and the fixCapability + a one-line fix note. Group by 'blockers' (high) / 'should-fix' (med) / 'nice-to-have' (low). End with the ordered fix plan: which capability to run next, in what order (authz/data-loss first, then perf/scale, then idiom/observability). 6. DISPATCH on request: for each finding the user accepts, invoke its fixCapability (convex-authz, convex-reviewer's fixers, migrate-rehearse for schema changes, suggest for component swaps). After fixes, RE-RUN the affected passes and show the score delta — the readiness number is only meaningful if it moves when you fix things. 7. Never claim more coverage than was run: the report header lists which passes ran, which were skipped and why. A green score on a code-only run is 'code looks ready', not 'production-verified'. ## Rules - Compose, don't re-implement: run the existing audit capabilities and aggregate their bus findings — never re-derive an authz or perf check inline. - The score counts CONFIRMED findings only, by severity, with the formula printed; plausible findings are candidates that don't move the number. - Normalize each finding's locus to a function/table identity before dedup (map deployment functionId ↔ code file:line) so one defect seen from two loci collapses to one and isn't double-scored; keep the higher-confidence source; drop nothing silently. - Every finding carries its fixCapability; the report ends with an ORDERED fix plan (data-loss/authz first, then scale, then idiom/observability). - Re-run affected passes after fixes and show the score delta — a readiness number that doesn't move when you fix things is theater. - Never claim more than was run: header lists ran/skipped passes; a code-only run yields a code-only score, explicitly labeled. - This is a read + aggregate + dispatch pass; fixes happen in the fixer capabilities, gated by their own consent/deploy-target rules.
© convex · Apache-2.0 · convex/agent-skills