kage: clona webs y guárdalas sin JavaScript para leerlas offline

Fuentes: kage: clone any website into a script-free offline mirror

kage (影, "sombra") es una herramienta de línea de comandos que clona un sitio web completo en una carpeta local navegable sin conexión y sin ejecutar una sola línea de JavaScript. Para ello utiliza un navegador headless real (Chrome o Chromium), espera a que la página termine de renderizarse, captura el DOM ya settled, elimina todos los scripts y descarga localmente hojas de estilo, imágenes y fuentes. El resultado: archivos .html estáticos que se pueden abrir directamente desde el disco, sin rastreo, sin llamadas de red y sin dependencias.

El flujo básico consiste en kage clone <url> para crear el espejo en $HOME/data/kage/<host>/, y kage serve para previsualizarlo en un servidor HTTP local en http://127.0.0.1:8800. La herramienta respeta robots.txt, parte de sitemap.xml, rastrea en anchura, y permite limitar la profundidad, el número de páginas, un prefijo de ruta, subdominios o exclusiones. La clonación es idempotente: cada página se identifica por su archivo, y puede interrumpirse con Ctrl-C retomando después.

Para distribuir el espejo existen dos formatos. El primero es un archivo ZIM, estándar abierto comprimido con zstd y utilizado por el ecosistema Kiwix (Wikipedia offline, Stack Overflow, Project Gutenberg), legible desde kage open, kiwix-serve o las apps de Kiwix en escritorio y móvil. El segundo es un ejecutable único (--format binary) que lleva el archivo ZIM embebido y se sirve a sí mismo sin requerir kage ni lector externo. La operación de empaquetado es determinista, lo que permite calcular y cachear checksums de forma fiable. Se distribuye como binarios precompilados, paquetes .deb/.rpm/.apk o imagen de contenedor con Chromium incluido.