Herramientas y scripts de IA
Verificación de manifiesto PWA y Service Worker
Revisa manifiestos de PWA, service workers y configuraciones de Workbox: JSON del manifiesto roto, start_url fuera del scope, datos de sesión o de cuenta en caché, errores con importScripts y respondWith, carencias en el aviso de instalación y ajustes de caché y actualización arriesgados.
Qué recibes: 1 archivo · 53.05 KB · ZIP
Ver opciones de compraDescripción del producto
Una sola coma final en manifest.webmanifest y los navegadores tratan tu app como si no tuviera manifiesto: sin nombre, sin iconos, sin aviso de instalación. Una ruta de Workbox que sirve /api/account con StaleWhileRevalidate conserva los datos de la cuenta de un cliente en un ordenador compartido después de que cierre sesión, porque la Cache API ignora Cache-Control: private. Un event.respondWith() colocado después de un await lanza una excepción, y la solicitud va a la red como si el worker no existiera. Esta skill detecta esos y los demás errores de PWA que se enumeran abajo antes de publicar, y te explica cómo corregir cada uno.
Tu agente ejecuta un escáner sobre los manifiestos de tu aplicación web (manifest.json, *.webmanifest, app/manifest.ts de Next.js, el manifiesto en configuraciones de vite-plugin-pwa), los service workers (escritos a mano, Workbox, Serwist), las configuraciones runtimeCaching de Workbox (workbox-config.js, vite-plugin-pwa, next-pwa, webpack), el ngsw-config.json de Angular y las llamadas de registro del service worker. Analiza los manifiestos como JSON estricto, igual que los navegadores, lee JavaScript y TypeScript dejando de lado comentarios y cadenas, compara segmentos completos de la ruta URL (así /api/session es privada y /api/sessions, el programa de una conferencia, no lo es), entiende los matchers de Workbox que excluyen URL (if ... return false, una denylist de NavigationRoute) y conoce los valores predeterminados de vite-plugin-pwa y next-pwa. El código de service worker de las plantillas de Workbox, Create React App, vite-plugin-pwa y Serwist pasa sin hallazgos. Nunca ejecuta, compila ni sirve tu app. Devuelve BLOCK, REVIEW o NOT FLAGGED, con el archivo, la línea, el motivo y un enfoque más seguro, y cada regla enlaza la documentación de W3C, MDN, web.dev o Chrome en la que se basa. Los secretos nunca se muestran.
Qué revisa
BLOCK (corregir antes de publicar)
- W01: un manifiesto que no es JSON válido (coma final, comentario, comillas simples), no es un objeto o está guardado en UTF-16
- W02: start_url fuera del scope (incluido "/app" con scope "/app/"), o start_url o scope en localhost
- W03: rutas que responden a URL de sesión, token o cierre de sesión, o a datos de cuenta, perfil, carrito o pago, desde una copia guardada estando en línea
- W04: importScripts() por http://, o llamado dentro de un controlador de fetch, message u otro evento
- W05: event.respondWith() o el primer event.waitUntil() llamados después de un await o en un callback de then()
- W06: la misma URL dos veces en una lista de cache.addAll(), también escrita como ./index.html e index.html (la instalación falla)
REVIEW (revisar antes del lanzamiento)
- W11: manifiestos que Chromium no ofrecerá instalar (sin nombre, sin icono de 144px o más, un modo de visualización no instalable, prefer_related_applications)
- W12: ningún icono maskable, o iconos con purpose "any maskable"
- W13: manifiestos sin id
- W14: páginas o archivos .html servidos con cache-first
- W15: cachés versionadas que nunca se eliminan
- W16: skipWaiting() incondicional en un worker que precachea la app, incluido el comportamiento predeterminado de next-pwa
- W17: respuestas de API servidas con CacheFirst, CacheOnly o StaleWhileRevalidate (y dataGroups de Angular con la estrategia performance predeterminada), y URL de sesión o token guardadas para uso sin conexión
- W18: controladores de fetch que guardan todas las respuestas con cache.put()
- W19: registros de service worker cuyo scope no cubre las páginas de la app o necesita un encabezado Service-Worker-Allowed
Qué incluye
- El escáner (Python 3.9+, solo biblioteca estándar)
- Una guía de reglas con el motivo, el enfoque más seguro y el enlace a la fuente oficial para cada regla
- Un proyecto de ejemplo arriesgado y uno seguro (un sitio estático con un service worker escrito a mano y una tienda en Vite con vite-plugin-pwa), y el informe real que genera el escáner sobre el arriesgado
Limitaciones
Lee el texto de los archivos y solo sigue unos pocos datos entre archivos (manifiestos enlazados desde páginas, un encabezado Service-Worker-Allowed en configuraciones del servidor, autoUpdate de vite-plugin-pwa). No se revisan los matchers definidos en otro archivo, los service workers minificados o generados, los archivos de iconos, HTTPS ni los encabezados HTTP que envía tu servidor, y el almacenamiento en caché de URL privadas en controladores de fetch escritos a mano solo se informa como hallazgos de cache-first o de cachear todo. El modo autoUpdate de vite-plugin-pwa y la plantilla de Serwist, que eligen actualizaciones inmediatas a propósito, no se informan en W16. NOT FLAGGED no es una garantía.
Contenido
Un archivo ZIP con 20 archivos: SKILL.md, el escáner en scripts/ (7 archivos de Python), references/rules.md (cada regla con su motivo y el enfoque más seguro) y examples/ (10 archivos de ejemplo más report.md, la salida real del escáner sobre el ejemplo arriesgado).
Cómo usarlo: Es una skill para agentes: una carpeta con un archivo SKILL.md y scripts de Python que puede ejecutar un agente de programación con IA como Claude Code, Cursor o Codex CLI. Descomprímela en la carpeta de skills de tu agente (para Claude Code: ~/.claude/skills/) y pide a tu agente que revise tu proyecto. Los scripts también funcionan por sí solos con Python 3.9 o posterior, sin instalar nada. Solo leen tus archivos: sin acceso a la red, y no se envía nada a ningún sitio.
Qué recibes
1 archivo · 53.05 KB
- pwa-manifest-sw-check-1.0.0.zipZIP · 53.05 KB
Herramientas y scripts de IA
Verificación de manifiesto PWA y Service Worker
Revisa manifiestos de PWA, service workers y configuraciones de Workbox: JSON del manifiesto roto, start_url fuera del scope, datos de sesión o de cuenta en caché, errores con importScripts y respondWith, carencias en el aviso de instalación y ajustes de caché y actualización arriesgados.
Getly abrió los archivos subidos y no encontró nada que impida abrirlos. No es un análisis antivirus ni una valoración de calidad.
Etiquetas
Preguntas frecuentes
¿Tengo acceso al instante?
Sí. Es un producto digital: puedes descargarlo justo después del pago, directamente desde tu biblioteca.
¿Puedo usarlo en proyectos comerciales?
Sí. Se permite el uso comercial: úsalo en tu propio negocio y en cosas que vendas. No puedes revender ni redistribuir el archivo en sí.
¿Cuál es vuestra política de reembolso?
Puedes pedir un reembolso dentro de 30 días. Si algo no va bien, solicítalo desde tu pedido y el equipo de Getly lo revisa.
¿Qué formatos y tamaños de archivo recibiré?
Descargarás 1 archivo - ZIP - 53.05 KB en total.
¿Recibo actualizaciones gratis?
Sí: cuando el vendedor publica una versión nueva, puedes volver a descargar los archivos más recientes desde tu biblioteca sin coste extra. Mira el registro de cambios para ver las últimas actualizaciones.
Precio
$5.00



