Reels sin rostro
Esta habilidad reproduce una cadena de producción validada en un reel real ("Esta voz no soy yo", publicado en noviembre de 2026). El objetivo: un reel de 1080 × 1920, 30 fps, de 60 a 120 s que mantenga la atención hasta el final, porque todo se transforma en su sitio, al ritmo de la voz.
Ajustes
Los ajustes personales están en config.json en la raíz de esta habilidad. Si no existe, copia config.example.json a config.json y pide al usuario que complete lo que falta (al menos elevenlabs_voice_id). Léelo al inicio de cada ejecución. <skill> abajo se refiere a la carpeta de esta habilidad.
| Clave | Uso |
|---|---|
creator_name | Cómo referirse al usuario en los informes |
language | Idioma predeterminado del reel (voz, subtítulos, texto en pantalla). Una solicitud en otro idioma tiene prioridad |
elevenlabs_voice_id, elevenlabs_model | La voz clonada |
whisper_model | Modelo whisper.cpp local usado para comprobaciones |
projects_root | Dónde residen los proyectos de reel anteriores (para reutilizar node_modules) |
cta | La redacción exacta de los tres movimientos de cierre, en el idioma del reel |
guides_page | La página enlazada en la biografía del usuario, donde viven las guías |
timezone, publish_hour, caps, telegram_env | Solo para modo autónomo |
Reglas del usuario
- Escribe de forma clara y directa. Nunca uses guiones largos ni frases de relleno, ni en pantalla ni en mensajes.
- Tipografía del idioma del reel en pantalla. Para francés: espacios de no separación antes de
: ? !y dentro de "5 réglages", comillas « ». - La voz nunca se corta. Solo se edita la animación. Sin cambios de duración, sin silencios eliminados.
- Sin rostro en el video, excepto en la portada, que usa la foto del usuario.
- La portada es siempre el primer fotograma del video, y también se entrega como archivo separado.
- El final siempre realiza los tres movimientos: suscríbete para obtener la guía, haz clic en el enlace de la biografía, escribe la palabra clave. En la voz, en los subtítulos y en pantalla (botón SUSCRIBIRSE, botón ENLACE EN BIO, un campo donde se escribe la palabra clave). La palabra clave está directamente relacionada con la guía y el tema, y Claude la propone. Di "enlace en la biografía", nunca "enlace en la descripción": la página de guías está en la biografía del usuario.
- Todo lo dicho debe ser verdad: sin números inventados, sin superlativos sin fuente, sin capturas de pantalla falsificadas. Una prueba vivida vale más que una promesa.
- Ningún token, contraseña o clave legible en pantalla.
- Subtítulo de cada reel: 5 hashtags como máximo, sin enlaces, en todas las redes. Siempre termina mostrando cómo obtener la guía, por ejemplo: "Los cinco prompts están en la guía, listos para copiar y pegar. Para obtenerla: suscríbete, ve al enlace en la biografía y escribe la palabra clave CINCO."
- Reel sin rostro con voz clonada: declara el contenido generado por IA al publicar (por ejemplo con Blotato:
isAiGenerated: trueen TikTok,containsSyntheticMedia: trueen YouTube). - Música a 0.05 por debajo de la voz, nunca más.
- Anuncia el coste de las generaciones de pago. Si el usuario ya autorizó Atlas Cloud o ElevenLabs en la solicitud, anuncia y continúa. De lo contrario, espera su acuerdo.
- Llega hasta el final sin parar, verifica tu propio trabajo, di claramente qué se verificó y qué no. Nunca publiques a menos que el usuario lo pida, excepto en modo autónomo.
- Máquinas pequeñas (8 GB de RAM): un bundle de Remotion a la vez, renderizados en segundo plano, archivos intermedios limpiados al final.
Pasos
Planifica todo al inicio. Cada paso tiene su guía: léela cuando llegues al paso.
- Localizar. Carpeta de video, reel de referencia (archivo o enlace), tema, imagen de portada del usuario (
cover.pngen la carpeta de video, si no,<skill>/assets/cover/cover-template.pngy dilo), espacio libre en disco (df -h /). Lee lasreferences/útiles y la memoria del proyecto. - Analizar la referencia, si la hay: extraer el audio, transcribirlo con Scribe, examinar el video fotograma a fotograma, escribir
_reel/reference/reel_analysis.md. Consultareferences/script.md. - Escribir el guion y la guía prometida:
_reel/script.md, con la verdad de cada afirmación. Consultareferences/script.md. - Crear el proyecto:
zsh <skill>/scripts/new_reel.sh "<carpeta de video>", luego completarremotion/reel.json. Consultareferences/editing.md. - Animática libre:
python3 <skill>/scripts/fake_words.py, luegopython3 scripts/build_reel.py, que verificareel.json, luego algunos fotogramas fijos. ¿Cabe el guion en pantalla? - Voz: 2 tomas de ElevenLabs, marcas de tiempo de palabras de Scribe sobre la toma elegida, procesamiento sin cortes. Consulta
references/voice.md. - Toma de apertura de Atlas Cloud (opcional, recomendada): imagen de inicio, imagen final, Kling, reajuste al ritmo de la voz. Consulta
references/opening-shot.md. - Escenas:
src/reel/BRIEF.mdgolpe a golpe, luego un agente por grupo de escenas en paralelo y un agente de verificación. Consultareferences/editing.mdyreferences/scene-rules.md. - Portada: título y logotipos que inciten al clic. Consulta
references/cover.md. - Verificar con fotogramas fijos, corregir, luego renderizar:
zsh scripts/render_final.shen segundo plano (10 a 15 min para 90 s). - Verificar el archivo final y escribir
exports/instagram.md. Consultareferences/checks.md. - Finalizar: README del proyecto, memoria del proyecto, archivos intermedios eliminados, archivos enviados, resumen con lo que queda por escuchar o decidir.
Modo autónomo
Si la solicitud proviene de una tarea programada, o si el usuario pide procesar la carpeta inspiration/, sigue references/autonomous-mode.md: sin preguntas, límites de coste, guía, publicaciones programadas, notificación.
Qué hace que el reel funcione
- Gancho en menos de 3 s, con una prueba o una promesa, legible desde el primer fotograma después de la portada.
- Un bucle abierto visible: N casillas numeradas vacías, que se convierten en la barra de progreso.
- N elementos de la misma forma, que crecen en dificultad y valor, el mejor al final, anunciado por un reenganche.
- Una sola toma: mismo fondo, misma ventana. Nunca un corte brusco.
- Cada aparición aterriza en la palabra hablada, nunca más de 1.5 s sin un cambio en pantalla.
- Resumen rápido, luego una frase contundente que cambia la forma en que el espectador ve el tema.
- Un final hecho de gestos, mostrados y no solo dichos: el cursor se suscribe, hace clic en el enlace de la biografía, luego se escribe la palabra clave.
- Bucle: la última frase lleva de vuelta a la primera, y el último fotograma se convierte en el primero otra vez.
Guías
| Lectura | Cuándo |
|---|---|
references/script.md | Analizar una referencia, escribir el guion, elegir la palabra clave y la guía |
references/voice.md | Generar la voz, obtener las palabras, procesar el sonido sin cortes |
references/opening-shot.md | Prompts y reajuste de la toma de apertura, costes |
references/editing.md | Diseño del proyecto, reel.json, agentes, verificar fotogramas fijos, renderizar |
references/scene-rules.md | Reglas para dar a los agentes que escriben las escenas |
references/cover.md | Título, logotipos, formatos, colocarla como primer fotograma |
references/checks.md | Comprobaciones del archivo final, subtítulo, qué queda para un humano |
references/autonomous-mode.md | Procesar un archivo de la carpeta inspiration/ solo, desde la referencia hasta las publicaciones programadas |
assets/reel-template/ es el proyecto de Remotion. assets/example-this-voice/ contiene el reel validado completo: guion, análisis, escenas reales, brief. Es la referencia de calidad: lee su README.md, luego al menos Stakes.tsx y Setting2.tsx antes de escribir escenas. assets/example-6-tools/ proporciona escenas reutilizables para una clasificación o una lista por niveles.
Lecciones ya pagadas
- Con dos tomas, Scribe transcribió la segunda: lee
source.urlen el resultado y conserva la toma que realmente transcribió. words.jsonde Scribe contiene las etiquetas ([softly]) y ":" como palabras: elimínalas, y conserva la forma{"words": [...]}enscribe_words.json.- Una frase antes de "Suscribirse" dejó la ventana vacía:
CtaGuide.tsxahora muestra "Guardar" durante ese tiempo. - El sonido de campana y las chispas cubrieron la palabra clave y la frase contundente (voz a -1.9 dB en la palabra clave): los volúmenes se reducen en la plantilla. Aun así, revisa los pasajes más ajustados.
- Whisper se desvía y comete errores: los tiempos provienen de Scribe, el texto proviene del guion (
build_reel.pyalinea ambos). - Un prompt de Whisper que contenía "Claude" hizo que leyera "clone" como "Claude". Verifica sin prompt, y con marcas de tiempo:
-ntomite frases. - Un efecto de sonido en una palabra clave del gancho enmascara la voz: colócalo después del final de la palabra (margen de al menos 7 dB, medido).
- Una escena que termina exactamente al final de su sección corta el sello final: las escenas se superponen (
STAGESenReel.tsx), y se coloca un sello desde el inicio de la frase. - Una ventana vacía mientras una frase anuncia una lista parece rota: coloca ranuras con puntos desde el inicio de la frase.
- Los números escritos como palabras rompen las páginas de subtítulos:
build_reel.pymantiene "5 ajustes" junto. - El renderizado con GPU hace que los elementos desaparezcan un fotograma de cada tres: siempre
GL=swangle CONCURRENCY=1(ya está enrender_final.sh). - Sin transformación 3D en un video, sin
mixBlendMode, claves React únicas. - chrome-headless-shell se cuelga:
CHROME_MODE=chrome-for-testing(ya está en los scripts). - Rehacer una frase después del renderizado: conserva la voz validada, genera el final de una vez y empálmalo en una pausa (
references/voice.md). - En la portada, un logotipo de marca reducido a un símbolo puede malinterpretarse: las dos barras de ElevenLabs parecían un botón de pausa, por lo que el nombre se mantiene escrito debajo.