Chuletas de comandos Unix y lenguajes de programación, disponibles en el navegador, con curl, un cliente CLI y plugins para editores.
charmbracelet/vhs
CLI en Go que graba sesiones de terminal en GIF, video o salida ASCII a partir de archivos .tape con instrucciones, para demos y pruebas de integración.
- Estrellas
- 21,265
- Forks
- 493
- Issues abiertos
- 177
- Último commit
- hace 4 días
¿Qué es?
VHS trata las grabaciones de terminal como código. Escribes un archivo .tape con una lista de comandos como Type, Enter, Sleep y Wait; VHS los reproduce en una terminal virtual y renderiza el resultado como GIF, MP4, WebM, secuencia de PNG o archivo de referencia de texto/ASCII. La configuración permite elegir la familia y el tamaño de fuente, las dimensiones de la ventana o el número de columnas y filas, los temas, el relleno, los márgenes, las barras de la ventana y la velocidad de reproducción.
Como la entrada es texto y la salida es determinista, puedes volver a ejecutar la misma cinta cada vez que cambie una CLI para mantener las demos actualizadas. Las salidas de texto se pueden guardar en git y comparar para usarlas como archivos de referencia en pruebas de integración. VHS también incluye un subcomando record que genera una cinta a partir de una sesión en vivo, un comando publish para compartir GIF y un modo opcional de servidor SSH para ejecutar cintas en un host remoto.
VHS requiere que ttyd y ffmpeg estén instalados y disponibles en PATH. Se puede instalar mediante Homebrew, Scoop, Nix, Docker, Go y paquetes para Linux.
Funciones clave
- 01Guioniza sesiones de terminal con un lenguaje de comandos .tape sencillo.
- 02Genera GIF, MP4, WebM, secuencias de fotogramas PNG y archivos de texto/ASCII.
- 03Permite personalizar la fuente, el tamaño de la ventana, los temas, el relleno, los márgenes y las barras de la ventana.
- 04Graba un archivo de cinta a partir de una sesión de terminal en vivo.
- 05Genera archivos de referencia ASCII para comparar en pruebas de integración.
- 06Funciona como servidor SSH para ejecutar cintas en un host remoto.
Casos de uso
- Mantener actualizados los GIF de demostración del README regenerándolos en CI.
- Probar una CLI en pruebas de integración comparando la salida de texto con archivos de referencia.
- Crear grabaciones de pantalla reproducibles de flujos de trabajo en la terminal para documentación o tutoriales.
Inicio rápido
- 1
Instala ttyd y ffmpeg, que VHS necesita en PATH
- 2
Instala VHS con Homebrew en macOS o Linux
brew install vhs - 3
Crea un nuevo archivo tape
vhs new demo.tape - 4
Genera el GIF a partir del archivo tape
vhs demo.tape
Antes de usarlo
- Es necesario instalar ttyd y ffmpeg por separado y tenerlos disponibles en PATH.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es vhs?
- CLI en Go que graba sesiones de terminal en GIF, video o salida ASCII a partir de archivos .tape con instrucciones, para demos y pruebas de integración. VHS trata las grabaciones de terminal como código. Escribes un archivo .tape con una lista de comandos como Type, Enter, Sleep y Wait; VHS los reproduce en una terminal virtual y renderiza el resultado como GIF, MP4, WebM, secuencia de PNG o archivo de referencia de texto/ASCII. La configuración permite elegir la familia y el tamaño de fuente, las dimensiones de la ventana o el número de columnas y filas, los temas, el relleno, los márgenes, las barras de la ventana y la velocidad de reproducción.
- ¿vhs es gratuito? ¿Qué licencia tiene?
- vhs es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿vhs sigue mantenido?
- Mantenimiento activo. El último commit de vhs fue el 2 nov 2026.
- ¿Para qué puedo usar vhs?
- Mantener actualizados los GIF de demostración del README regenerándolos en CI. Probar una CLI en pruebas de integración comparando la salida de texto con archivos de referencia. Crear grabaciones de pantalla reproducibles de flujos de trabajo en la terminal para documentación o tutoriales.
- ¿Cómo se instala vhs?
- Instala ttyd y ffmpeg, que VHS necesita en PATH Instala VHS con Homebrew en macOS o Linux: brew install vhs Crea un nuevo archivo tape: vhs new demo.tape Genera el GIF a partir del archivo tape: vhs demo.tape
- ¿Dónde consigo vhs?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/charmbracelet/vhs
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Biblioteca de Go para imprimir tablas, listas, barras de progreso y texto con estilo en la terminal, con amplias opciones de personalización.
Mapa estelar para terminal escrito en C que muestra en tiempo real las posiciones de estrellas, planetas, constelaciones y la Luna mediante arte ASCII.
Herramienta de línea de comandos para grabar, transmitir en directo y reproducir sesiones de terminal como archivos asciicast ligeros, en lugar de videos.
Biblioteca de C++ basada en headers para crear interfaces de usuario de terminal con un estilo funcional y basado en componentes, sin dependencias externas.
Salvapantallas de terminal escrito en Go que se inicia cuando la shell queda inactiva y muestra escenas animadas como constelaciones, lluvia y partículas.