Explicativo (estilo Vox) → HyperFrames
Un explicativo de ~60 s son N bloques × 10 s (60 s = 6 bloques). La línea de narración del bloque k se reproduce sobre la imagen del bloque k. Herramientas: .claude/skills/explainer/tools/ ($T). Guía de estilo: references/styles.md. Ejemplo trabajado con fuentes: examples/explainer-eiffel/.
Cómo debe sentirse
Como usar una aplicación bien hecha, no como hablar con un terminal:
- Una etapa por mensaje, luego parar y esperar. Un título de etapa en negrita con un emoji adecuado.
- Configuraciones y opciones como tablas; divisores
---entre secciones; líneas cortas, espacio para respirar. - Sin cháchara interna: nunca narrar escrituras de archivos, verificaciones de herramientas, cálculos de tiempo. Hablar solo donde el usuario actúa o algo falta.
- Cualquier cosa destinada a ser pegada va en un bloque de código que contenga solo el prompt; las etiquetas y notas quedan fuera.
Etapa 0 — Verificaciones silenciosas (nunca se narran)
setup/doctor.sh --quiet. Si videos/ tiene proyectos de explicativos (un pack.json dentro), abrir con "¡Bienvenido de nuevo! ¿Un video nuevo o continuar con <último>?" en lugar de la Etapa 1.
Etapa 1 — Bienvenida 🎬
Una breve bienvenida, una tabla de 5 filas sobre cómo funciona (idea → aspecto → voz → escenas → corte final), luego hacer una pregunta: ¿De qué debería tratar el video? Cualquier idea aproximada está bien, o find one para los mejores temas de esta semana. Parar.
Etapa 2 — Tema y configuración ⚙️
find one→ buscar en web lo actual; ofrecer los 3 principales, cada uno con un gancho de una línea (una pregunta de por qué/cómo + un número sorprendente + por qué se verá bien). Omitir tragedias y chismes. El usuario elige; nunca elegir por ellos.- De lo contrario, afinar la idea en un ángulo de una línea: una pregunta cuya respuesta sea sorprendente.
Luego una tabla de configuración con valores predeterminados; go acepta todo:
| Configuración | Predeterminado | Opciones |
|---|---|---|
| Aspecto | collage | collage (collage editorial audaz) · diorama (documental de papel sepia) |
| Imágenes | code | code (libre, construido en HyperFrames) · ai (Higgsfield o cualquier generador) · mixed |
| Duración | 60 s | 30 s – 10 min, en bloques de 10 s |
| Relación de aspecto | 16:9 | 16:9 · 9:16 · ambas |
Parar.
Etapa 3 — Investigación y guion (silenciosa)
Crear videos/<slug>/. Investigar cada afirmación: búsqueda web, verificar cada número contra dos fuentes independientes, guardar las URLs. Si las fuentes discrepan, usar la cifra segura o descartarla. Una línea verdadera vaga es mejor que una falsa precisa, así que nunca inventar un número, una cita o una predicción.
Escribir una línea de narración por bloque, números deletreados, lenguaje llano:
- Voces Kokoro: 22–26 palabras por línea. Voces edge-tts: 18–20 palabras. El paso de voz corrige la desviación de todos modos.
- Estructura: apertura en frío (el hecho más sorprendente, sin saludo) → implicaciones → evidencia (una idea por bloque, cada una concreta: un número, fecha o lugar, en escalada) → el giro → resolución con un remate que haga eco del bloque 1.
- Tono: inquisitivo, exacto, ligeramente ingenioso. Explica; nunca vende.
- Diseño entre bloques: un objeto héroe recurrente que vuelve y cambia (la torre, el contenedor, la moneda); una pregunta planteada al principio, respondida al final; un momento de revelación por el que se recuerde el video.
Para cada bloque también elegir una llamada (el número o hecho de dos palabras en pantalla, ≤ 9 caracteres, p. ej. +15 cm, 2.5M, 7 yrs) y un visual. En modo código, el kind visual es uno de silueta estilo tower (adaptar el SVG), dots, bars, lean, calendar o stat. Escribir pack.json (formato abajo). No mostrar nada aún.
Etapa 4 — Voz 🎙
| Voz | Sonido | Motor |
|---|---|---|
am_michael | Hombre EU, tranquilo documental | Kokoro (offline, predeterminado) |
bm_george | Hombre británico, mesurado | Kokoro |
af_heart | Mujer EU, cálida y clara | Kokoro |
en-US-ChristopherNeural / en-GB-RyanNeural / en-US-JennyNeural | Voces neuronales Microsoft | edge-tts (gratuito, online) |
samples → vocalizar bloque 1 en cada una de las tres voces Kokoro y enviar los archivos. Parar.
Etapa 5 — El brief 📋 (compuerta)
Un mensaje:
- una tabla con ángulo, hilo conductor, aspecto, imágenes, duración/bloques, relación de aspecto y voz
- el guion, como
Bloque 1 … N - la lista de fuentes
Final: "¿Todo bien? ¿O cambiar algo?" Repetir hasta que se apruebe. El usuario puede reescribir cualquier línea.
Etapa 6 — Imágenes
Modo code: saltar a la Etapa 8. Cada bloque se convierte en una escena de collage: un campo de color, grano de papel, la llamada contando hacia arriba, un círculo de marcador dibujándose y el visual.
Modo ai / mixed:
- Clave de estilo 🎨: ofrecer 3 variantes nombradas en una oración cada una (mismo sistema visual, diferente paleta o composición, desde
references/styles.md). Al elegir, dar el prompt de imagen pegable. Higgsfield:nano_banana_pro, relación de aspecto = la del video. Cotizar el costo y esperar un sí antes de generar. Una imagen fija el aspecto; se adjunta a cada escena. - Escenas 🎬: un mensaje por bloque (o todos a la vez si se pide). Cada uno recibe su línea de narración como contexto y un prompt pegable construido a partir de la plantilla en
references/styles.md: ESTILO / ESCENA / MOVIMIENTO / AUDIO / EVITAR. Tabla de configuración: imagen de referencia = la clave de estilo, 10 s, 720p+, sonido ambiental activado, guardar comoblockNN.mp4. Higgsfield directamente:kling3_0pro imagen-a-video con la clave de estilo. Cotizar el total (bloques × créditos) primero. O el usuario ejecuta los prompts en cualquier generador que prefiera (Veo, Kling, Runway…). - Los clips llegan a casa 📥: el usuario coloca los archivos en
videos/<slug>/clips/. Renombrar variantes obvias en silencio (Block 1.mp4→block01.mp4); preguntar solo cuando el emparejamiento sea realmente ambiguo. Un bloque sin clip recurre automáticamente a una escena de código.
Etapa 7 — Verificar clips (silenciosa)
Extraer un fotograma de cada clip y observarlo. Fuera de estilo o fotorrealista: ajustar las líneas ESTILO y EVITAR y regenerar solo ese bloque. Dos fallos idénticos significan reescribir el prompt, no solo la semilla. Texto legible dentro de clips de IA es un fallo en collage (el texto vive en nuestras llamadas y subtítulos).
Etapa 8 — Voz y corte (silencioso)
~/.local/share/hf-kokoro/bin/python $T/voice.py videos/<slug> # o --engine edge --voice en-GB-RyanNeural
Cada toma debe durar entre 7.5 y 9.7 s. La herramienta lista los infractores: reescribir esas líneas (más cortas o más largas), volver a vocalizar con --only 3,5 y repetir hasta que todas encajen. Nunca estirar el tiempo.
.venv/bin/python $T/build.py videos/<slug> [--aspect 9:16] # index.html + assets/mix.wav
cd videos/<slug> && npx --yes [email protected] lint && npx --yes [email protected] render -o raw.mp4
ffmpeg -y -i raw.mp4 -af loudnorm=I=-14:TP=-1:LRA=11 -c:v copy -c:a aac -b:a 192k "../../out/<Título> (16x9).mp4"
lint advierte sobre estructura anidada y pistas densas. Esas se refieren a la vista de línea de tiempo del Estudio, no al renderizado, así que ignorarlas. Los errores deben corregirse. Capturar un fotograma por bloque (snapshot . --at 2.5,12.5,…) y observar: los números caben en una línea, el círculo de marcador rodea el número, los subtítulos no cubren la imagen.
Etapa 9 — Entrega ✅
Enviar el MP4. Luego una pequeña tabla: tema, duración y relación de aspecto, aspecto y voz, fuentes (enlaces). Ofrecer: la otra relación de aspecto, un cambio en cualquier bloque o un video nuevo.
pack.json
{ "title": "…", "angle": "…", "through_line": "…", "look": "collage", "aspect": "16:9",
"voice": { "engine": "kokoro", "name": "am_michael" },
"blocks": [ { "line": "…", "callout": { "big": "+15 cm", "label": "más alto en los días más calurosos" },
"visual": { "kind": "bars", "values": [10, 30, 60, 100], "highlight": 3 },
"prompt": "(modo ai) prompt de escena completo" } ],
"sources": [ "Editorial — título: https://…" ] }
También escribir un pack.md legible (resumen, guion, prompts, fuentes). Es el registro del proyecto.
Reglas
- Datos: dos fuentes por número; las fuentes se entregan con cada video. No inventar cifras, citas o predicciones.
- Generación paga solo después de cotizar modelo × cantidad × créditos y obtener un sí (PLAYBOOK #1).
- No generar rostros de personas reales en primer plano; usar planos medios, siluetas o barras de censura, lo que también evita rechazos por moderación.
- El aspecto Vox es un homenaje. Nunca usar el logotipo, nombre o marca de Vox en el video.