CommunityProductivity & Collaborationgithub.com

getpaidskills/launch-checklist

Pre-launch audit for a website or SaaS - checks SEO tags (title, description, canonical, lang, Open Graph), robots.txt, sitemap.xml, favicon and apple-touch-icon, real 404 status, HTTPS redirect, legal pages (privacy, terms, refund), image alt text, page weight and response time, plus a payment self-check (webhook signature, raw body, idempotency, refunds, secrets, success-page grants), then lists the problems and fixes them in the codebase. Ships a no-dependency crawler script (audit_site.py) that produces a pass/warn/fail report. Use when the user says they are about to launch, ship, go live, submit to Product Hunt or AI directories, or asks "is my site ready", "SEO check", "why is my site not indexed", or wants a launch checklist, or asks whether their payment or webhook setup is safe.

What is launch-checklist?

launch-checklist is a Claude Code agent skill that pre-launch audit for a website or SaaS - checks SEO tags (title, description, canonical, lang, Open Graph), robots.txt, sitemap.xml, favicon and apple-touch-icon, real 404 status, HTTPS redirect, legal pages (privacy, terms, refund), image alt text, page weight and response time, plus a payment self-check (webhook signature, raw body, idempotency, refunds, secrets, success-page grants), then lists the problems and fixes them in the codebase. Ships a no-dependency crawler script (audit_site.py) that produces a pass/warn/fail report. Use when the user says they are about to launch, ship, go live, submit to Product Hunt or AI directories, or asks "is my site ready", "SEO check", "why is my site not indexed", or wants a launch checklist, or asks whether their payment or webhook setup is safe.

Works with~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/getpaidskills/skills/tree/HEAD/skills/launch-checklist

Installed? Explore more Productivity & Collaboration skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

Ask in your favorite AI

Open a new chat with this agent skill pre-loaded.

Documentation

What does launch-checklist do?

Run the automated audit, fix what fails in the code, re-run until clean, then walk through the manual items the script cannot see. Report to the user what you changed and what still needs them.

Step 1 — Run the audit

Against the production URL if it exists, otherwise a local production build (npm run build && npm start, not the dev server — dev servers add scripts and skip caching):

python3 scripts/audit_site.py https://example.com            # text report
python3 scripts/audit_site.py http://localhost:3000 --max-pages 30 --json > audit.json

What it checks (details in references/checks.md):

  • Per page: <title> (10–60 chars), meta description (50–160), exactly one <h1>, <html lang>, viewport, canonical (absolute, same host), og:title/description/image, twitter:card, <img> without alt, HTML size, response time, noindex on pages you probably want indexed, duplicate titles/descriptions across pages.
  • Site: /robots.txt exists and does not Disallow: / everything, references a sitemap; /sitemap.xml (or the one named in robots) parses and its URLs return 200 on the same host; favicon reachable; apple-touch-icon; a random URL returns 404 (not 200 or a redirect to home); http→https redirect (for https sites); links to privacy policy / terms (and refund policy if the site sells something); /llms.txt presence (informational only).

Exit code 1 when any FAIL. Pages crawled: start URL + same-host links, up to --max-pages (default 20).

Step 2 — Fix in the codebase

Detect the framework and use the matching recipe. For Next.js App Router, references/fixes-nextjs.md has drop-in robots.ts, sitemap.ts, not-found.tsx, metadata, icon conventions. Generic HTML/other frameworks: references/fixes-generic.md.

Rules:

  • Fix the root cause (shared layout / metadata helper), not page by page, when the issue repeats.
  • Never add noindex or block crawlers without asking.
  • Missing legal pages: generate them with the legal-pages skill if installed; otherwise tell the user — do not invent legal text inline.
  • Missing OG images: use the og-image-kit skill if installed.

Step 3 — Re-run until no FAIL

Re-run the same command. WARN items: fix the cheap ones, list the rest for the user.

Step 4 — Manual items (script cannot verify)

Go through references/manual-checklist.md with the user — analytics installed, error tracking, transactional email deliverability (SPF/DKIM/DMARC), payment flow tested end-to-end with a real small payment, backups, uptime monitor, Search Console / Bing Webmaster verification and sitemap submission, status of the domain's renewal. Mark each as done / not applicable / user to do.

Step 4b — Payment self-check (if the site takes money)

python3 scripts/payment_check.py --src . --provider creem          # code scan
python3 scripts/payment_check.py --url http://localhost:3000        # probes a running build
python3 scripts/payment_check.py --url http://localhost:3000 --secret "$CREEM_WEBHOOK_SECRET"  # test-mode secret only

FAILs: webhook accepts unsigned or forged requests, parses JSON before verifying, no dedupe on event id, success page grants access, payment secrets in NEXT_PUBLIC_* or committed, webhook redirects or sits behind a bot challenge. Fix them, re-run, then do the manual card tests in references/payment-checks.md (success card, decline card, refund, dashboard resend, cancel). Never pass a live webhook secret. scripts/test_payment_check.py is the script's own test. Test, spec and fixture files (*.test.ts, *.spec.tsx, test_*.py, anything under tests/, e2e/, __tests__/, fixtures/) are not judged as handlers or success pages, because they post unsigned requests and insert rows on purpose; they are still scanned for committed live keys. The report says how many were skipped (INFO test files).

Report format

Launch audit for <url> — <date>
FAIL fixed: …   (file:line changed)
WARN fixed: …
Still open (needs you): …
Manual checklist: x/y done

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

getpaidskills/agents-md-starter

Creates or upgrades a repository's AGENTS.md (read by Codex, Cursor, and other agents) and a CLAUDE.md that imports it, so Claude Code, Codex, Cursor and Gemini CLI share one set of project rules. Scans the repo to detect languages, package manager, real build/test/lint commands, framework, directory layout and existing rule files (.cursorrules, .cursor/rules, CLAUDE.md, copilot-instructions), then writes a concise, verified rules file. Use when the user asks to set up AGENTS.md or CLAUDE.md, "project rules", "make Claude Code and Codex follow the same conventions", onboard an agent to a repo, or migrate .cursorrules.

getpaidskills/directory-launch-kit

Prepares a product for submission to launch platforms and directories (Product Hunt, Show HN, BetaList, Uneed, Fazier, SaaSHub, TinyLaunch, AI tool directories, agent-skill marketplaces, Reddit, V2EX and more) without submitting anything itself. Picks only the directories the product fits, writes the copy for each form within its field limits from one product.json, resizes screenshots to each platform's sizes (Product Hunt 1270x760 gallery and 240x240 thumbnail, 1200x630 OG), builds a tracker CSV, re-checks prices and rules on the live pages, and later verifies which listings went live and whether their backlinks are follow or nofollow. Use when the user asks where to launch, how to submit to Product Hunt or AI directories, wants launch copy, a directory list, backlinks, or a launch tracker.

getpaidskills/legal-pages

Drafts a Privacy Policy, Terms of Service and Refund Policy for a SaaS, digital product or website from a short questionnaire, adapted to the payment provider (Creem, Paddle, Lemon Squeezy as Merchant of Record, or Stripe/direct) and to where users are (EU/UK GDPR, California CCPA/CPRA, China PIPL notes), then renders them as Markdown, HTML or Next.js pages and links them in the footer. Output is a starting template, NOT legal advice - the user must review it and have it checked by a qualified lawyer. Use when the user needs privacy policy, terms, refund policy, legal pages, or a payment provider (Paddle/Creem/Lemon Squeezy/Stripe) review asks for them.

getpaidskills/og-image-kit

Generates Open Graph / Twitter (X) share images for every page of a website and wires up the og:* and twitter:* meta tags, then verifies the social preview. Supports Next.js App Router (opengraph-image.tsx with next/og ImageResponse), Astro (build-time PNGs via satori + resvg) and any static site (Pillow script). Use when the user asks for OG images, social share cards, link previews, "my link looks bad on X/Slack/LinkedIn/WeChat", twitter:card, or before launching a site.

Related Skills