⚙️ La skill por dentro
Abre la tapa del motor. Aquí ves las 5 fases que transforman el material bruto en el reel —desde el corte determinista hasta el revisor en bucle— y las compuertas, scripts y reglas de determinismo que garantizan que cada etapa quede limpia y sea repetible.
Las cinco cajas azules son las fases, en orden. La flecha cian discontinua que vuelve atrás es el bucle de calidad: el revisor (Fase 5) la rechaza, el motor la corrige y vuelve a ejecutarla hasta que pase.
Mapa de la ruta
Contenido detallado
⚙️ Las 5 fases del motor
El camino que recorre el motor desde el material bruto hasta el reel — cinco fases, cada una con su control de calidad.
El motor detecta los fragmentos de voz mediante la energía del audio (silencedetect) y elimina silencios, pausas, repeticiones y errores, conservando siempre la última toma de cada frase.
Es la base: un corte predecible y siempre igual para la misma entrada; nada de "suposiciones" sobre el timing.
silencedetect, isla de voz, última toma, determinismo.
El motor revisa los fotogramas (mediante /watch), entiende el contenido y propone el opening, el tipo de B-roll y el ritmo — creando un plan de montaje (beat sheet).
Es lo que hace que el tratamiento se adapte AL video, en vez de aplicar siempre el mismo molde.
/watch, tratamiento, beat sheet, opening.
Hyperframes crea las animaciones y Firecrawl trae capturas reales de sitios/repos. El cold open es obligatorio y ningún fragmento pasa más de 4s sin un impacto visual.
Son las fases que le dan el "nivel pro": ritmo, credibilidad de lo real y un gancho desde el inicio.
Hyperframes, Firecrawl, cold open, regla de los 4s.
Efectos de sonido sutiles (whoosh, ching) entran bajo la voz; por defecto, sin música. Se renderiza el archivo y un control de calidad automático detecta vacíos y superposiciones, y regenera lo que falle.
Un SFX bien colocado «produce» el corte; el QC evita entregar un render con un desfase de sincronización.
SFX, render, QC, regeneración.
Un subagente con contexto limpio ve el render (vía /watch) y da un veredicto PASS o FAIL. Si da FAIL, el motor corrige y repite el ciclo hasta que pase.
Es la última barrera antes de entregar: nada sale sin que una revisión independiente lo apruebe.
Revisor, subagente, PASS/FAIL, bucle.
El revisor es un subagente que no vio cómo se montó el video. Juzga solo el resultado, sin el sesgo de quien lo construyó.
Quien lo arma tiende a "no ver" sus propios errores; una mirada fresca detecta lo que el agente principal pasó por alto.
Contexto limpio, sesgo del autor, verificación independiente.
Tres ideas conectan la ruta: la barrera estricta (verificación bloqueante), el beat sheet (plan de ritmo) y el ciclo de calidad (repetir hasta aprobar).
Con este vocabulario entiendes por qué el motor es confiable, no solo «listo».
Regla estricta, beat sheet, ciclo de calidad.
🔧 Compuertas, scripts y determinismo
Los scripts y las reglas que hacen determinista cada fase: misma entrada, misma salida, siempre.
El corte usa los límites exactos del silencio en el audio, no los timestamps de Whisper (que tienen un jitter de ±0,2–0,3s). El script islands.py encuentra los islotes de voz.
Cortar con Whisper deja restos de silencio y medias palabras; cortar por energía es preciso.
silencedetect, jitter, isla, islands.py.
islands.py propone qué conservar (KEEP/DROP), cut.py arma el corte y verify-cut.py comprueba que quedó limpio: sale con exit 0 cuando pasa.
Es una cadena con una verificación al final: no animas nada antes de que pase el corte.
KEEP/DROP, exit 0, compuerta estricta.
Un lint estático de la línea de tiempo de Hyperframes: si pasan más de 4s sin un beat visual, marca un error y no permite renderizar.
La regla de los 4s deja de ser una intención y se convierte en una verificación automática del ritmo.
Lint, beat visual, --max-gap, compuerta de ritmo.
Genera «beats» de subtítulos de 2–3 palabras, sincronizados con la voz, con una palabra clave (que pasas en --keywords) pintada con tu color de acento.
Los subtítulos breves y con énfasis propio evitan el «look de IA» de los subtítulos genéricos.
Beat de subtítulos, keyword, área segura.
make-sfx.sh sintetiza la paleta de efectos (whoosh, boom, ding…) sin descargar nada; mix-sfx.py superpone cada efecto en el momento justo, debajo de la voz, con limitador.
Los SFX sintetizados son ligeros, libres de derechos y siempre iguales: encajan en el pipeline determinista.
Paleta de SFX, eventos, ducking, limitador.
Las animaciones no usan Math.random() ni Date.now(); nada de repeticiones infinitas (se calculan las repeticiones finitas); las timelines quedan en estado paused y registradas.
Solo así el mismo proyecto renderiza el mismo frame cada vez: condición para que el lint y el QC sean confiables.
Determinismo, repeat finito, paused, reproducibilidad.