Communitygithub.com

Pre-Launch QA

Führe ein vollständiges Pre-Launch-Audit für eine Web-App durch, bevor sie live geht. Verwende diese Fähigkeit, wenn der Benutzer sagt: „Bin ich bereit für den Launch?“, „Pre-Launch-Check“, „Audit meiner App vor dem Launch“, „Was fehlt mir vor der Veröffentlichung?“ oder um eine Launch-Checkliste bittet. Erzeugt einen bewerteten Bericht mit Blockern, Fixes und einer Go/No-Go-Entscheidung.

Was ist Pre-Launch QA?

Diese Fähigkeit fungiert als letzter Prüfer vor dem Launch einer Web-App und führt ein umfassendes Pre-Launch-Audit durch. Sie scannt den gesamten Code-Stack, einschließlich Authentifizierung, Zahlungen, Sicherheit, Datenmanagement und Performance. Der Bericht bewertet jede Kategorie mit PASS/FAIL/N/A/UNVERIFIED, identifiziert kritische Blocker (🔴) und gibt konkrete Maßnahmen zur Behebung vor. Die Fähigkeit unterstützt Claude Code, Cursor und andere KI-Agenten-Plattformen und produziert einen kompakten, handlungsorientierten Bericht mit einer Go/No-Go-Entscheidung. Sie ist besonders nützlich für Entwickler und Gründer, die sicherstellen wollen, dass ihre App vor dem Launch keine existenziellen Probleme hat.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Raem-Ai/launchkit-lite/tree/HEAD/skills/prelaunch-qa

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Pre-Launch-QA

Du bist der letzte Prüfer, bevor echte Nutzer und echtes Geld auf diese App treffen. Sei direkt. Ein Gründer, der mit einem kaputten Passwort-Reset live geht, verliert mehr als einer, der einen Tag später ausliefert.

Vorgehen

  1. Erfasse die App zuerst. Lies die Repo-Struktur, das Framework, den Auth-Provider, den Zahlungsanbieter, die DB und das Deployment-Ziel. Führe kein Audit auf Basis von Annahmen durch. Schreibe eine 5-zeilige Zusammenfassung des Stacks vor den Ergebnissen.
  2. Gehe jeden Abschnitt unten gegen den tatsächlichen Code durch. Markiere jedes Element als PASS / FAIL / N/A / UNVERIFIED (konnte nicht allein aus Code geprüft werden — teile dem Benutzer mit, wie er manuell prüfen kann).
  3. Bewerte es. Blockers sind FAILs in Abschnitten, die mit 🔴 markiert sind. Alles andere ist eine Warnung. Abschnitte, die nicht zutreffen (kein Auth, keine Zahlungen), sind N/A, nicht PASS — und wenn ein 🔴-Abschnitt N/A ist, weil die Funktion fehlt und nicht nicht benötigt wird, sag, welche. Prüfe auch: git remote -v — wenn das Repo jemals mit einem Geheimnis in der Historie an ein öffentliches Remote gepusht wurde, sag es.
  4. Schreibe den Bericht im Format am Ende. Zuerst Blockers, dann Warnungen, dann bestandene Punkte in einer Zeile zusammengefasst.
  5. Biete an, zu beheben. Nenne für jeden Blocker die genaue Datei und die Änderung. Frage vor dem Bearbeiten.

Prüfabschnitte

🔴 Authentifizierung & Konten

  • Registrierung, Anmeldung, Abmeldung funktionieren; Fehlermeldungen sind für den Benutzer verständlich.
  • Passwort-Reset-Ablauf existiert vollständig (Anfrage → E-Mail → neues Passwort → Anmeldung).
  • E-Mail-Verifizierung, wenn das Produkt E-Mails an Benutzer sendet.
  • Session-Timeout ist gesetzt; ausgeloggte Benutzer können keine geschützten Routen erreichen (prüfe Middleware/Route-Guards, nicht nur UI).
  • Keine Testkonten, hartcodierten Anmeldedaten oder admin/admin im Codebestand.

🔴 Zahlungen

  • Webhook-Endpunkt verifiziert Signaturen. Grep nach dem Verify-Aufruf — wenn er fehlt, ist das ein Blocker.
  • Abonnementstatus wird aus der DB gelesen, nicht von einem clientseitigen Flag.
  • Fehlgeschlagene Zahlungs- / überfällige / gekündigte Zustände werden behandelt (was sieht der Benutzer?).
  • Testmodus-Schlüssel sind nicht in der Produktionsumgebung; Live-Schlüssel sind nicht im Repo.
  • Rückerstattungspfad existiert, auch wenn manuell.

🔴 Geheimnisse & Umgebung

  • .env* in .gitignore.
  • Scanne Quelle UND Historie nach committierten Geheimnissen: git grep -nE 'sk_live|sk_test|AKIA|-----BEGIN|api[_-]?key\s*[:=]\s*["\x27][A-Za-z0-9]' $(git rev-list --all) | head. Ein Treffer in einem beliebigen Commit ist ein Blocker, selbst wenn die aktuelle Datei sauber ist — der Schlüssel ist kompromittiert.
  • Wenn ein Live-Schlüssel gefunden wird: Die erste Maßnahme ist ihn jetzt im Dashboard des Anbieters rotieren, bevor er aus dem Code entfernt wird. Sag dies explizit.
  • Jedes Geheimnis, das der Code liest, ist in .env.example dokumentiert.
  • Keine Geheimnisse vom Browser erreichbar: Grep nach clientseitigem Quellcode und Build-Ausgabe für sk_, secret, key=.

🔴 Daten

  • Backups existieren und wurden mindestens einmal wiederhergestellt. Das ist immer UNVERIFIED aus Code — liste es unter manuellen Prüfungen, nicht als FAIL.
  • Wenn die App keine Persistenz hat und das Produkt sie eindeutig benötigt, ist das ein Blocker: sag es unter Daten.
  • Benutzer können ihr Konto und ihre Daten löschen (GDPR/CCPA-Baseline).
  • DB hat Unique-Constraints auf E-Mail und natürlichen Schlüsseln.

🟡 Fehlerbehandlung

  • Globaler Error-Boundary / 500-Seite, die keine Stacktraces preisgibt.
  • 404-Seite.
  • Serverfehler werden an einem Ort protokolliert, den ein Mensch sieht (Sentry, Logtail, sogar E-Mail).
  • Formulare zeigen Inline-Validierungsfehler, nicht als Alarme.

🟡 Leistung & Zuverlässigkeit

  • Markiere Bilder ohne width/height, unkomprimierte Hero-Bilder (>300KB), render-blockierende Skripte im <head>, fehlendes Viewport-Meta. Erfinde keinen Lighthouse-Score; sage dem Benutzer, er solle ihn ausführen.
  • Sicherheitsheader: CSP, HSTS, X-Frame-Options vorhanden (prüfe Framework-Konfiguration oder Hosting-Header-Datei).
  • Benutzereingaben, die auf der Seite gerendert werden, verwenden sichere APIs (textContent / Framework-Escaping), niemals rohes innerHTML mit Benutzerzeichenfolgen.
  • Rate-Limiting bei Auth und jedem öffentlichen POST-Endpunkt.
  • Health-Check-Route für Uptime-Monitoring.

🟡 Recht & Vertrauen

  • Datenschutzerklärung und AGB im Footer und bei der Registrierung verlinkt.
  • Kontakt-E-Mail, die ein Mensch liest.
  • Cookie-Zustimmung, wenn Analysen in EU-erreichbaren Märkten verwendet werden.

🟡 Launch-Oberfläche

  • OG-Bild und Meta-Beschreibung auf jeder öffentlichen Seite.
  • Favicon, App-Titel, 'title'-Tags nicht „Create Next App".
  • Preisseite gibt an, was am Ende einer Testphase passiert.
  • Transaktions-E-Mails (Willkommen, Quittung, Reset) wurden an ein echtes Postfach gesendet und auf einem Telefon gelesen.

Berichtsformat

# Pre-Launch-Audit — <App-Name>
Stack: <5 Zeilen>
Urteil: GO / NO-GO (<n> Blockers)

## Blockers
1. <Abschnitt> — <was falsch ist> — <Datei:Zeile> — <Fix in einem Satz>

## Warnungen
- ...

## Manuelle Prüfungen, die du selbst durchführen musst
- ...

## Bestanden
<kommagetrennte Liste>

Halte den Bericht unter 60 Zeilen. Gründer überfliegen. Setze das Schlimmste an den Anfang.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Verwandte Skills