Skip to content
Skillpedia
Testing48k · #4501

vibecode-production-qa-validator

Helps your agent check the quality of web applications. It tests important sections like SEO, speed, and security to ensure everything works well.

What it does

This is an automatic checker for websites built with Next.js. It verifies if the site is ready for launch by checking everything from the code to its appearance and security.

When to use it

  • ✓Before launching a Next.js website live.
  • ✓After making major changes to the site (design, features, security).
  • ✓When you want to ensure everything is working perfectly before a major release.

Example of what to ask your AI

“Check if my website is ready for launch.”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/vibecode-production-qa-validator/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/vibecode-production-qa-validator/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

It runs a series of tests in 13 phases, checking the code, the site's build, routes, SEO, security, and performance. If something fails, it alerts you to fix it before proceeding.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add sickn33/agentic-awesome-skills --skill vibecode-production-qa-validator

Or download just the file:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/vibecode-production-qa-validator/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

Production QA Validator

Run phases in order. Fix failures before moving to next.

When to Use

  • Use before shipping or promoting a fullstack Next.js app to production.
  • Use after large UI, SEO, auth, API, database, or dependency changes need a concrete launch-readiness pass.
  • Use when you need a compact command-driven checklist for build, route, metadata, performance, security, and cleanup checks.
export PROD_URL="https://yourdomain.com"
export QA_AUTH_HEADER=""       # optional: "Bearer eyJ..."
export PAGESPEED_API_KEY=""    # optional: for auto PageSpeed API

Consolidated Runner

qa:all() { qa:code && qa:build && qa:routes / /about /contact /privacy /terms /faq /sitemap.xml /robots.txt /api/health && qa:seo && qa:api /api/health /api/tools && qa:git && qa:smoke; }
qa:full() { qa:all && qa:auth && qa:auth:cookies && qa:lazyload && qa:heavyload && qa:vulns && qa:cleanup && qa:ux:cards && qa:ux:boundaries && qa:ux:animation && qa:database && qa:secure; }

Phase 1: Code Integrity

  • npx tsc --noEmit
  • npx eslint . --ext .js,.jsx,.ts,.tsx --max-warnings 0
  • npm test -- --runInBand --passWithNoTests
qa:code() { npx tsc --noEmit && npx eslint . --ext .js,.jsx,.ts,.tsx --max-warnings 0 && npm test -- --runInBand --passWithNoTests; }

Phase 2: Build Verification

  • npm run build succeeds
  • SEO pages show ○/● not λ
  • Build log has no errors
qa:build() { local log; log="$(mktemp "${TMPDIR:-/tmp}/qa-build.XXXXXX.log")" || return 1; set -o pipefail; npm run build 2>&1 | tee "$log"; local rc=$?; set +o pipefail; [ "$rc" -eq 0 ] && ! grep -qi "error\|failed" "$log"; local ok=$?; rm -f "$log"; return "$ok"; }
Symbol Meaning
○ Static
● SSG
λ Dynamic/serverless
⊕ Partial prerender

Phase 3: API Session & Authentication

  • Auth endpoints respond (login, session, logout)
  • Protected routes return 401/403
  • Session cookie: HttpOnly + Secure + SameSite
  • Cookie not expired, Path/Domain correct
  • No rate limiting bypass
qa:auth() {
  local F=0
  for ep in /api/auth/login /api/auth/session /api/auth/logout; do
    curl -so /dev/null -w "%{http_code}" "$PROD_URL$ep" | grep -q "200\|401" || { echo "  ✗ $ep unreachable"; ((F++)); }
  done
  curl -so /dev/null -w "%{http_code}" "$PROD_URL/api/protected" | grep -q "401\|403" || echo "  ⚠ Protected route not denying unauthenticated"
  return $F
}
qa:auth:cookies() {
  for ep in /api/auth/session /api/auth/login; do
    curl -sI "$PROD_URL$ep" | grep -i "^set-cookie:" | while IFS= read -r c; do
      echo "  $ep: $(echo "$c" | cut -d= -f1)"
      echo "$c" | grep -qi "HttpOnly" || echo "    ✗ Missing HttpOnly"
      echo "$c" | grep -qi "Secure" || echo "    ✗ Missing Secure"
      echo "$c" | grep -qi "SameSite" || echo "    ⚠ Missing SameSite"
    done
  done
}

Phase 4: Route Regression

  • Core pages, sitemap, robots.txt all 200
  • URLs use kebab-case, no duplicate slugs
  • robots.txt allows indexing
  • Sitemap XML valid, all URLs resolve 200
qa:routes() { local F=0; for p; do local C=$(curl -so /dev/null -w "%{http_code}" "$PROD_URL$p"); echo "$C $p"; [ "$C" = "200" ] || ((F++)); done; return $F; }
qa:robots() { curl -s "$PROD_URL/robots.txt" | grep -qi "Disallow: /$" && echo "  ✗ Blocks all crawlers" || echo "  ✓ OK"; }
qa:sitemap() { curl -s "$PROD_URL/sitemap.xml" | python3 -c "import sys,xml.etree.ElementTree as ET; ET.parse(sys.stdin); print('✓ Valid XML')"; }

Phase 5: SEO — Tags, Images, Favicon, Slugs

  • <title> 30–60 chars, unique per page
  • <meta name="description"> in raw HTML
  • og:title matches <title>, og:url matches canonical
  • og:image ≥ 1200×630px, absolute URL, loads 200
  • twitter:card = summary_large_image
  • Canonical self-referencing, no duplicates
  • /favicon.ico 200, apple-touch-icon present
  • hreflang tags if multilingual
  • JSON-LD structured data present
  • Slugs: kebab-case, < 80 chars, no stop words
qa:seo() {
  local H=$(curl -s "$PROD_URL"); local F=0
  for t in "og:title" "og:description" "og:image" "twitter:card" "canonical" "description"; do echo "$H" | grep -qi "$t" || { echo "  ✗ $t"; ((F++)); }; done
  echo "$H" | grep -qi "<title>" || { echo "  ✗ <title>"; ((F++)); }

…
FAQ

What are 'phases'?

They are verification steps. The checker goes through each phase in order and only moves to the next if the current one passes. If a phase fails, you need to fix the issue before continuing.

Do I need to know how to code to use it?

No. You only need to know how to run basic terminal commands, like the examples shown. The checker does the technical work for you.

What kinds of problems does it find?

It finds code issues, build errors, broken links, SEO failures (like missing titles or descriptions), security vulnerabilities, slowness, and user experience problems.

Details

Original description by the author

13-phase production QA for fullstack Next.js apps: build verification, SEO tags, OG images, favicon, route regression, API auth, page speed, lazy load, vulnerability scan, UI/UX cards, error boundaries, database, secure rendering, and cleanup.

repo: sickn33/agentic-awesome-skills

Popularity

GitHub stars
48k
Ranking position
#4501
License
MIT
Updated
10/15/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills