Communitygithub.com

Video Forge

Crea videos pulidos con código: narración, subtítulos animados, captura de pantalla, zoom, redacción, 3D y bibliotecas reutilizables. Ideal para promocionales, explicativos, demostraciones y edición.

¿Qué es Video Forge?

Video Forge es una habilidad de agente de IA que permite crear videos completos y proyectos editables utilizando código, combinando herramientas como HTML/GSAP, React, FFmpeg, grabaciones, SVG, sprites, material de archivo, audio y 3D. El usuario elige las herramientas por escena y puede conservar el motor de un proyecto existente. Los elementos visuales se crean con código o se obtienen de medios existentes, evitando modelos generativos de video/imagen o avatares parlantes. Se permiten herramientas de síntesis de narración y transcripción de voz. La habilidad sigue un "camino dorado" de cuatro pasos: preparar el entorno local, copiar y editar un storyboard JSON, validar y renderizar con `run.py`, y verificar el archivo final. Está diseñada para agentes más débiles, restringiendo las ediciones únicamente al archivo JSON del storyboard. Incluye una amplia biblioteca de componentes reutilizables (rendercomp, curvable, onda, ffmpeg, blender) y referencias detalladas para cada tipo de trabajo (animación HTML, composición React, edición de video, captura de pantalla, 3D, audio). El flujo de trabajo prioriza la reutilización sobre la codificación personalizada y enfatiza la verificación durante la producción, incluyendo la inspección de fotogramas, la comprobación de audio y la generación de una hoja de contactos. Soporta las principales plataformas de agentes (Claude Code, Cursor, Codex) y no requiere servicios externos de pago o MCP privados.

Compatible con~Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/jazzautomations/video-forge/tree/main

Preguntar en tu IA favorita

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

Documentación

¿Qué hace Video Forge?

Crea un proyecto editable y un video terminado. Usa el conjunto de herramientas en conjunto: HTML/GSAP, React, FFmpeg, grabaciones, SVG, sprites, material de archivo, audio y 3D. Elige herramientas por escena; conserva el motor de un proyecto existente. Los elementos visuales se crean con código o se obtienen de medios existentes. No sustituyas modelos generativos de video/imagen o avatares parlantes. La síntesis de narración y la transcripción de voz son herramientas de audio permitidas.

Las rutas son relativas a este directorio, donde esté instalado. Ningún MCP privado, agente/modelo en particular, directorio personal del autor o servicio de pago es requerido por esta habilidad.

Camino dorado — para un video completo, haz exactamente esto

NO explores el código, crees activos manualmente o ajustes píxeles a mano. El código posee todo el diseño, el ajuste de fuentes y los cálculos de sincronización de narración. Tú solo editas texto y parámetros en un archivo JSON pequeño. Ejecuta estos cuatro pasos en orden:

# 1. Prepara el entorno local UNA VEZ (Python local del proyecto + modelos de audio)
python3 <directorio-de-la-habilidad>/scripts/setup_environment.py --out .video-forge-tools --audio

# 2. Copia el storyboard incluido; edita SÓLO su texto/segundos/colores/componentes.
#    Reescribe todo el archivo con Write — nunca hagas ediciones quirúrgicas o de coincidencia exacta.
cp <directorio-de-la-habilidad>/assets/storyboard-production.json ./storyboard.json

# 3. Valida, luego renderiza a MP4. run.py es EL punto de entrada: selecciona el intérprete
#    preparado y las rutas de los modelos y ejecuta voz→subtítulos→escenas→sonido→renderizado→verificaciones.
python3 <directorio-de-la-habilidad>/scripts/build_project.py ./storyboard.json --check
python3 <directorio-de-la-habilidad>/scripts/run.py ./storyboard.json --out ./film
#    run.py BLOQUEA hasta que el MP4 esté listo. Si se interrumpe, reanuda el MISMO comando con
#    --resume (no empieces de nuevo). Si tu shell agota el tiempo, añade --background y consulta
#    con production_job.py status en su lugar.

# 4. Verifica el archivo real
python3 <directorio-de-la-habilidad>/scripts/verify_video.py ./film/out/final.mp4 --require-audio

Reglas para un modelo débil: el JSON del storyboard es lo ÚNICO que editas. Nunca invoques produce.py/build_project.py con python3 del sistema para el video completo; siempre pasa a través de run.py. Nunca edites un archivo fuente .tsx/.py para cambiar tamaño, diseño o texto; introdúcelo como un parámetro del storyboard en su lugar. Si un título o tarjeta se ve mal, cambia su valor JSON, no su código — la matemática del diseño es determinista y ya encaja en el fotograma.

Comienza con el contexto útil más pequeño

Lee flujo de trabajo. Infiere valores predeterminados a partir del briefing y la marca/referencia proporcionada. Pregunta solo por decisiones faltantes. Para un nuevo proyecto, guarda DESIGN.md y STORYBOARD.md: un propósito por escena, duración, renderizador, activo, movimiento de cámara y señal de audio. Coincide dimensiones/fps antes de mezclar renderizadores.

Para un promocional/tutorial completo, el valor predeterminado es la receta de producción anterior, no la antigua prueba de humo silenciosa de cuatro tipos. Lee dirección de producción y comienza desde assets/storyboard-production.json. scripts/run.py lleva el plan a través de voz, subtítulos de palabras, escenas coherentes, sonido, renderizado y verificaciones de exportación (llama a produce.py por ti usando el intérprete preparado). Si faltan dependencias de audio locales, scripts/setup_environment.py --out .video-forge-tools --audio prepara un Python local del proyecto y reporta las rutas de los modelos. Esta configuración es reutilizable en entornos de codificación; no requiere un entorno privado del autor. Consulta production-direction.md.

Para esta ruta, comienza con el briefing y el ejemplo de producción; ejecuta el validador y el productor en lugar de recorrer cada implementación o verificar cada dependencia previamente. El productor reporta las herramientas faltantes y acciones de reparación concretas. Lee su fuente solo cuando un error observado necesite diagnóstico. El modelo que lo dirige elige el mensaje y los parámetros de la escena; el código probado proporciona arte y corrección. No llames "llenó un JSON" a una prueba de producción integral.

El modo de reutilización primero es el predeterminado: busca en el catálogo, elige un componente demostrado, completa sus props declaradas, renderiza una prueba corta, luego compón. Lee model-scaffolding cuando el agente tenga dificultades o cuando construyas una evaluación. El código personalizado es apropiado cuando el catálogo realmente no encaja.

Busca código real antes de inventar movimiento

python3 <directorio-de-la-habilidad>/scripts/catalog.py 'personaje'
python3 <directorio-de-la-habilidad>/scripts/catalog.py 'subtítulo'
python3 <directorio-de-la-habilidad>/scripts/catalog.py 'terminal'

Para un briefing que se ajuste al vocabulario de título/personaje/pantalla/3D del iniciador, haz que el modelo complete assets/storyboard-example.json usando assets/storyboard.schema.json:

python3 <directorio-de-la-habilidad>/scripts/build_project.py ./storyboard.json --check
python3 <directorio-de-la-habilidad>/scripts/build_project.py ./storyboard.json --out ./mi-video

El compilador escribe el proyecto y solo las dependencias que sus escenas elegidas necesitan. Usa los valores predeterminados reales en lugar de inventar un esquema. Para un video completo, usa el camino dorado (run.py) en lugar de detenerte en este andamio silencioso básico. Prepara el habla real, alinea el guión con los tramos de ASR medidos, lleva los tiempos de los subtítulos al renderizado, masteriza la banda sonora y exporta una hoja de contactos.

Consulta catálogo de bibliotecas. Código incluido, con licencias ascendentes:

  • library/vendor/rendercomp/: 50 escenas dibujadas con código, tipografía, transiciones, gráficos y personajes SVG. Cada componente exporta valores predeterminados, FPS y duración.
  • library/vendor/curvable/: 14 escenas de video de lanzamiento parametrizadas; inspecciona las dependencias opcionales de shader/fuente/WASM antes de usar un componente.
  • library/vendor/onda/: componentes, esquemas Zod, transiciones y ayudantes de composición. Analiza los valores predeterminados a través del esquema; conserva las importaciones relativas y carga el tema/las fuentes.
  • library/vendor/ffmpeg/: ayudantes de edición Python locales ejecutables: cortes, uniones, zoom/reenfoque, pixelación/desenfoque, subtítulos animados, gradación, mezcla, silencio, exportación y QA.
  • library/vendor/blender/: ayudantes Blender sin cabeza ejecutables para inspección, ensamblaje de escenas, conversión, optimización, horneado y renderizados. Requiere Blender.

No leas cada biblioteca a la vez. UPSTREAM.json registra la procedencia y LICENCIA conserva los términos ascendentes. Su código no se prueba automáticamente por estar incluido.

Enruta según el trabajo

TrabajoLee / usa
Animación HTML, GSAP, bloques de registroHyperFrames
Composición React / lotes de datosRemotion, parámetros
Edición de material de archivo, gradación, velocidad, audio, ensamblaje finalFFmpeg
Capturar navegador/escritorio, cámara de cursor, zoom, censurargrabación de pantalla
Personajes, ilustraciones, activos 3Dpersonajes, obtención de activos
Geometría procedural, cámara, luces, materiales, rigging3D
Narración, tiempos de palabras, subtítulos animados, sonidoaudio y subtítulos, diseño de sonido
Comparación de herramientas y planes de motores mixtosenrutamiento

Para clips/stock descargados, usa canalización de medios. Para decisiones de movimiento, usa principios de movimiento. Consulta investigación para habilidades/bibliotecas estudiadas y por qué encajan. Mira bibliotecas externas (y research/libraries-catalog.json) para un mapa de enrutamiento verificado por licencia: qué es seguro incluir vs. citar para cada tipo de trabajo. El registro de HyperFrames es otra fuente de reutilización; consúltalo antes de construir un efecto. Usa --help instalado; su contrato puede diferir de la habilidad ascendente actual.

La verificación es parte de la producción

Construye el fotograma principal antes de animar. Cada fotograma debe ser accesible en orden arbitrario: sin reloj de pared, aleatoriedad sin semilla, dependencia de red en vivo o bucle de animación autónomo. HyperFrames utiliza líneas de tiempo pausadas registradas; Remotion usa fotogramas. Renderiza fotogramas representativos y míralos; inspecciona entradas, pausas, límites de corte, cambios de subtítulos y el final. Corrige recortes, texto ilegible, silencios muertos y sincronización de audio.

Cuando se te pida un video, exporta el archivo completo. Un fotograma fijo no es una finalización.

python3 <directorio-de-la-habilidad>/library/vendor/ffmpeg/scripts/probe.py final.mp4 --json
python3 <directorio-de-la-habilidad>/scripts/verify_video.py final.mp4 --require-audio
python3 <directorio-de-la-habilidad>/library/vendor/ffmpeg/scripts/look.py final.mp4 --tiles 3x2

Prueba Y decodifica la exportación final. Confirma la duración planificada, las dimensiones/fps y el audio. Inspecciona realmente la hoja de contactos. Audiciona el audio cuando la reproducción esté disponible; indica cuando solo fueron posibles las comprobaciones técnicas de audio. La redacción requiere verificar cada intervalo relevante después de las transformaciones de cámara, y censurar el audio si contiene el secreto.

Entrega el video reproducible, el proyecto editable, las comprobaciones reales y cualquier limitación de dependencia real. Conserva los originales. No publiques/cargues, gastes créditos ni instales software del sistema a menos que la solicitud lo autorice. La autorización existante sigue siendo válida.

Disciplina de modelo y evidencia

Usa planes estructurados, una lista corta pequeña, valores predeterminados de esquema y ayudantes ejecutables para reducir las decisiones que un modelo más débil debe inventar. Devuelve errores concretos al modelo y cambia la parte más pequeña que falla. Lee evaluación para pruebas emparejadas de modelo fuerte/débil. No reclames paridad con un modelo más fuerte sin medirlo. El estado de recuperación pertenece al proyecto, no a un prompt enorme.

Nuestro propio código es MIT. Los motores/activos/voces mantienen sus propias licencias. Las herramientas opcionales se instalan solo cuando es necesario. Estudia el flujo de trabajo de referencia de Katana, pero nunca asumas que los modelos alojados de Higgsfield son un renderizador de código local o que Katana de escritorio tiene una CLI.

Skills relacionados