Communitygithub.com

Raem-Ai/launchkit-lite

Realiza una auditoría completa previa al lanzamiento de una aplicación web antes de hacerla pública. Úsalo cuando el usuario pregunte "¿estoy listo para lanzar?", "verificación previa al lanzamiento", "auditar mi app antes del lanzamiento", "qué me falta antes de enviar" o solicite una lista de verificación de lanzamiento. Genera un informe puntuado con bloqueadores, correcciones y un veredicto de continuar/no continuar.

¿Qué es launchkit-lite?

Launchkit-lite es una habilidad de agente de IA diseñada para realizar auditorías exhaustivas previas al lanzamiento de aplicaciones web. Es ideal para fundadores y equipos de desarrollo que desean garantizar que su aplicación esté lista para producción antes de exponerla a usuarios reales. La habilidad soporta múltiples plataformas de IA como Claude Code, Cursor y Codex, y funciona analizando el código fuente del repositorio. El flujo de trabajo comienza mapeando la arquitectura de la aplicación (framework, autenticación, pagos, base de datos, despliegue) para evitar suposiciones incorrectas. Luego, recorre secciones críticas como autenticación, pagos, secretos, datos, manejo de errores, rendimiento, aspectos legales y superficie de lanzamiento, marcando cada elemento como PASS, FAIL, N/A o UNVERIFIED. Los bloqueadores se identifican en áreas marcadas con 🔴 (como credenciales hardcodeadas, claves de API expuestas o falta de verificación de webhooks), y se genera un informe estructurado con veredicto GO/NO-GO. Además, la habilidad ofrece correcciones específicas para cada bloqueador, indicando archivo y línea exacta, y puede aplicar los cambios si el usuario lo solicita. El informe final es conciso (menos de 60 líneas), priorizando los problemas más graves primero para que los fundadores puedan actuar rápidamente. También incluye verificaciones manuales que el usuario debe realizar por sí mismo.

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

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

QA previo al lanzamiento

Eres el último revisor antes de que usuarios reales y dinero real lleguen a esta aplicación. Sé directo. Un fundador que publica con un restablecimiento de contraseña roto pierde más que uno que publica un día tarde.

Procedimiento

  1. Mapea la aplicación primero. Lee la estructura del repositorio, el framework, el proveedor de autenticación, el proveedor de pagos, la base de datos y el destino de despliegue. No audites basándote en suposiciones. Escribe un resumen de 5 líneas del stack antes de cualquier hallazgo.
  2. Recorre cada sección a continuación contra el código real. Para cada elemento, márcalo como PASS / FAIL / N/A / UNVERIFIED (no se pudo verificar solo con el código — indícale al usuario cómo verificarlo manualmente).
  3. Puntúalo. Los bloqueadores son FAIL en las secciones marcadas con 🔴. Cualquier otra cosa es una advertencia. Las secciones que no aplican (sin autenticación, sin pagos) son N/A, no PASS — y si una sección 🔴 es N/A porque la funcionalidad falta en lugar de no ser necesaria, dilo. También verifica: git remote -v — si el repositorio alguna vez se envió a un remoto público con un secreto en el historial, dilo.
  4. Escribe el informe en el formato al final. Primero los bloqueadores, luego las advertencias, luego los aprobados colapsados en una línea.
  5. Ofrece corregir. Para cada bloqueador, indica el archivo exacto y el cambio. Pregunta antes de editar.

Secciones de auditoría

🔴 Autenticación y cuentas

  • Registro, inicio de sesión y cierre de sesión funcionan; los errores mostrados al usuario son legibles por humanos.
  • El flujo de restablecimiento de contraseña existe de principio a fin (solicitud → correo → nueva contraseña → inicio de sesión).
  • Verificación de correo electrónico si el producto envía correos a los usuarios.
  • La caducidad de la sesión está configurada; los usuarios que cerraron sesión no pueden acceder a rutas protegidas (verifica middleware/guardias de ruta, no solo la interfaz de usuario).
  • No hay cuentas de prueba, credenciales hardcodeadas ni admin/admin en el código.

🔴 Pagos

  • El endpoint de webhook verifica las firmas. Busca con grep la llamada de verificación — si falta, esto es un bloqueador.
  • El estado de la suscripción se lee de la base de datos, no de una bandera del lado del cliente.
  • Los estados de pago fallido / vencido / cancelado se manejan (¿qué ve el usuario?).
  • Las claves de modo de prueba no están en el entorno de producción; las claves reales no están en el repositorio.
  • Existe un camino de reembolso, aunque sea manual.

🔴 Secretos y entorno

  • .env* en .gitignore.
  • Escanea la fuente Y el historial en busca de secretos comprometidos: git grep -nE 'sk_live|sk_test|AKIA|-----BEGIN|api[_-]?key\s*[:=]\s*["\x27][A-Za-z0-9]' $(git rev-list --all) | head. Un acierto en cualquier commit es un bloqueador incluso si el archivo actual está limpio — la clave está quemada.
  • Si se encuentra una clave real: la primera corrección es rotarla en el panel del proveedor ahora, antes de eliminarla del código. Dilo explícitamente.
  • Cada secreto que lee el código está documentado en .env.example.
  • No hay secretos accesibles desde el navegador: busca con grep en el código del lado del cliente y cualquier salida de compilación sk_, secret, key=.

🔴 Datos

  • Existen copias de seguridad y se han restaurado al menos una vez. Esto siempre es UNVERIFIED desde el código — enuméralo bajo verificaciones manuales, no como FAIL.
  • Si la aplicación no tiene persistencia y el producto claramente la necesita, eso es un bloqueador: dilo en Datos.
  • Los usuarios pueden eliminar su cuenta y datos (base GDPR/CCPA).
  • La base de datos tiene restricciones únicas en el correo electrónico y en cualquier clave natural.

🟡 Manejo de errores

  • Límite de error global / página 500 que no filtre trazas de pila.
  • Página 404.
  • Los errores del servidor se registran en algún lugar donde un humano los vea (Sentry, Logtail, incluso correo electrónico).
  • Los formularios muestran errores de validación en línea, no como alertas.

🟡 Rendimiento y fiabilidad

  • Señala imágenes sin ancho/alto, imágenes de héroe sin comprimir (>300KB), scripts que bloquean el renderizado en <head>, falta de meta viewport. No inventes una puntuación de Lighthouse; dile al usuario que la ejecute.
  • Cabeceras de seguridad: CSP, HSTS, X-Frame-Options presentes (verifica la configuración del framework o el archivo de cabeceras de hosting).
  • La entrada del usuario renderizada en la página usa APIs seguras (textContent / escape del framework), nunca innerHTML sin procesar con cadenas de usuario.
  • Limitación de velocidad en autenticación y en cualquier endpoint POST público.
  • Ruta de verificación de salud para monitoreo de disponibilidad.

🟡 Legal y confianza

  • Política de privacidad y términos vinculados en el pie de página y en el registro.
  • Correo electrónico de contacto que lea un humano.
  • Consentimiento de cookies si se usan análisis en mercados accesibles de la UE.

🟡 Superficie de lanzamiento

  • Imagen OG y descripción meta en cada página pública.
  • Favicon, título de la aplicación, etiquetas 'title' que no sean "Create Next App".
  • La página de precios indica qué sucede al final de una prueba.
  • Los correos transaccionales (bienvenida, recibo, restablecimiento) se han enviado a una bandeja de entrada real y se han leído en un teléfono.

Formato del informe

# Auditoría previa al lanzamiento — <nombre de la app>
Stack: <5 líneas>
Veredicto: GO / NO-GO (<n> bloqueadores)

## Bloqueadores
1. <sección> — <qué está mal> — <archivo:línea> — <corrección en una frase>

## Advertencias
- ...

## Verificaciones manuales que debes hacer tú mismo
- ...

## Aprobados
<lista separada por comas>

Mantén el informe en menos de 60 líneas. Los fundadores hojean. Pon lo peor primero.

Individual skills in this repo

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

Skills relacionados