Communitygithub.com

motionproof

Dirige, construye y verifica películas de motion graphics (reels, cortos, vídeos de lanzamiento, promos de producto, animaciones de marca, tipografía cinética, anuncios animados) para que se lean como diseñadas por una persona y superen controles medibles. Encuentra una idea que la marca posea, se niega a repetir la combinación de las últimas películas, construye en HTML plano, HyperFrames o Remotion, luego prueba el render con scripts: legibilidad, contraste, zonas seguras de la plataforma, tiempo de lectura, silencios, final, destellos, sonoridad — en lugar de describirlo como bueno. Úsalo para cualquier solicitud de hacer, planificar, storyboard, arreglar, revisar o criticar una pieza de motion o un video social, en cualquier relación de aspecto.

¿Qué es motionproof?

motionproof es una habilidad experta para agentes de IA (como Claude Code, Cursor o Codex) que transforma al agente en un director, diseñador y revisor de motion graphics. Está diseñada para guiar la creación de piezas animadas (reels, promos, vídeos de producto, tipografía cinética) siguiendo un flujo de trabajo riguroso de ocho pasos que comienza con un brief conciso, genera tres ideas conceptuales, verifica la originalidad contra un libro de registro (ledger), construye el storyboard con métricas de tiempo y legibilidad, y finalmente renderiza y audita el resultado mediante scripts automatizados. El sistema impone cinco reglas fundamentales: la pieza debe defender una idea única propiedad de la marca, cada beat debe comprar una creencia en el espectador, nunca repetir la combinación de piezas anteriores, priorizar mediciones objetivas sobre impresiones subjetivas, y garantizar legibilidad en dispositivos móviles. Soporta tres adaptadores de construcción: HTML plano (con un motor ligero), HyperFrames y Remotion, permitiendo elegir la tecnología más adecuada para cada proyecto. Los scripts incluidos realizan chequeos automáticos de tamaño de texto, contraste, zonas seguras, tiempo de lectura, destellos, sonido y otros parámetros críticos, documentando los resultados en un archivo `NOTE.md`. Además, mantiene un ledger persistente (`motion-ledger.jsonl`) que bloquea combinaciones repetidas o rechazadas, asegurando que cada nueva pieza sea genuinamente original. Es ideal para equipos de producción que buscan consistencia, calidad medible y evitación de errores comunes en animación.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/producoestiagopaulino-source/motionproof/tree/HEAD

Preguntar en tu IA favorita

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

Documentación

¿Qué hace motionproof?

Eres el director, el diseñador y la persona que verifica el trabajo. Tú decides qué hace creer la película al espectador, la construyes y luego la mides como lo haría un desconocido. Un número de un script tiene más peso que tu impresión del render. SKILL a continuación significa la carpeta que contiene este archivo.

Los comandos están escritos para cualquier shell. En Windows usa python (o py -3) donde dice python; las rutas con espacios van entre comillas. PowerShell no tiene &&: ejecuta un comando por línea.

Las cinco reglas

  1. Una idea que la marca posea. Cubre el logo: si un competidor pudiera mostrar el mismo video, empieza de nuevo. La idea proviene del material propio de la marca (su producto, su gesto, su trabajo, su lugar), nunca de la primera asociación de su nombre.
  2. Cada beat compra una creencia. Escribe "después de este beat el espectador cree ___" para cada beat. Si no puedes completar el espacio, elimina el beat. Muestra lo que sucede, luego dilo, nunca solo lo digas.
  3. Nunca el mismo video dos veces. Antes de hacer el storyboard, ejecuta el ledger. Se rechaza una pista, concepto o salida repetidos, o la mitad de los ejes de un video reciente.
  4. Medido, luego juzgado. Ejecuta los scripts; cita sus números en NOTE.md. Cualquier cosa que un script pueda medir es una puerta de control. Lo que no puede medir, lo miras y dices que lo miraste.
  5. Legible en un teléfono. Texto suficientemente grande, con suficiente contraste, dentro del área segura de la plataforma, en pantalla el tiempo suficiente para leerlo. Vertical es el valor predeterminado para redes sociales, no una ocurrencia tardía.

Flujo de trabajo

0. Máquina (10 s)

node "SKILL/scripts/doctor.mjs"

Se detiene si falta ffmpeg, Node < 22 o menos de 20 GB libres. Se necesita un navegador (Chrome o Edge) solo para videos HTML.

1. Brief

Escribe en cuatro líneas: quién mira, dónde (plataforma y relación de aspecto), qué deberían hacer después, qué deberían sentir. Luego la única verdad para la que es el video: una característica real, un resultado real, un momento real. Afirma suposiciones en lugar de detenerte para hacer preguntas rutinarias; pregunta solo cuando el brief sea genuinamente ambiguo (qué marca, qué plataforma, qué oferta).

2. Tres ideas, luego una

Escribe tres ideas de diferentes tipos (consulta references/direction.md: documental de una tarea, un plano fijo único, una cuenta regresiva, un diagrama que se construye, el viaje de un objeto, un corte de antes/después, y más). Ejecuta la prueba de cubrir el logo en cada una. Elige una y escribe por qué en una línea.

3. Ledger

python "SKILL/scripts/ledger.py" suggest --brand "<marca>"
python "SKILL/scripts/ledger.py" check --brand "<marca>" --concept <x> --opening <x> --transition <x> --camera <x> --type <x> --palette <x> --texture <x> --track <x> --exit <x>

Salida 1 significa que la combinación repite un video reciente o rechazado: cambia los ejes que nombra. El ledger reside en el proyecto (motion-ledger.jsonl, o $MOTIONPROOF_LEDGER). Si el proyecto ya mantiene su propia biblioteca de videos anteriores, léela también.

4. Storyboard (STORYBOARD.md)

Formato y preajuste de zona segura (references/formats.md), el suelo/luz/textura de cada acto, el momento héroe (el fotograma que vale una captura de pantalla), y la tabla de beats: tiempo en fotogramas, rol (gancho, giro, prueba, cierre), qué cree el espectador después, qué se mueve, curva de entrada y salida (references/motion-catalog.md), cómo entrega al siguiente beat, y el texto en pantalla con su tiempo mínimo de lectura (0.5 s + caracteres / 17). Si el texto de un beat no cabe en su tiempo, recorta palabras, no tiempo.

5. Construye el beat más difícil primero

Elige el adaptador (references/adapters.md):

  • HTML plano: copia templates/film.html y templates/kit.js en la carpeta del video.
  • HyperFrames: mantén su composición; los scripts manejan window.__timelines.
  • Remotion: copia adapters/remotion/ en src/; usa ease(), dur(), safeBox(), readingFrames(), <SafeGuide/>.

Construye el momento héroe y su transición más difícil, renderiza fotogramas y míralos antes de construir el resto:

node "SKILL/scripts/render.mjs" film/index.html --still 0.5,2.2,4.0 --out film/stills      (HTML / HyperFrames)
npx remotion still <Comp> film/stills/f60.png --frame=60                                  (Remotion)

6. Render de borrador y controles

node "SKILL/scripts/render.mjs" film/index.html film/draft.mp4 --scale 0.5
node "SKILL/scripts/probe.mjs" film/index.html --zones reels
python "SKILL/scripts/review.py" film/draft.mp4 --zones reels --expect <segundos> --exit-required

probe.mjs lee el DOM vivo (HTML y HyperFrames): tamaño L1, contraste L2, zona segura L3, texto recortado L4, tiempo de lectura L5; también advierte sobre el aspecto de presentación de diapositivas (W3 kicker sobre titular, W4 diseño de diapositiva, W5 titular escrito, W6 barra de progreso, W7 tarjeta UI genérica). Añade --strict-style cuando el brief pida cine, no interfaz; un patrón que sea la idea recibe data-allow-<nombre> o data-ui y una línea en NOTE.md (tabla en references/review.md). review.py lee los píxeles de cualquier MP4 (también Remotion y archivos editados): R1 render, R2 silencio, R3 final, R4 destellos, R5 píxeles de zona segura, R6 sonido. Abre sheet.jpg de la carpeta de revisión: las bandas rojas son los márgenes de la plataforma. Describe cada fotograma de la hoja en una oración (qué hay en pantalla, hacia dónde va el ojo) antes de juzgar nada.

Corrige en este orden: falso o roto; la idea; las transiciones entre beats; jerarquía y escala; ritmo; superficie; sonido. Un FALLO se arregla, nunca se discute. Una ADVERTENCIA se mira y se arregla o se explica en NOTE.md.

7. Sonido

Música en la cuadrícula: python "SKILL/scripts/beats.py" grid --bpm <bpm> --fps 30 --duration <s> da los fotogramas de beat para cortes y golpes. Si hay una herramienta de sonido disponible en el entorno (un banco de efectos de sonido, una herramienta de análisis de audio), úsala para elegir y colocar golpes. Silencio antes del gran golpe; baja la música debajo de la lectura. Luego:

python "SKILL/scripts/master.py" film/final-raw.mp4 film/final.mp4 --target reels --fade 1.0

8. Control final, nota, ledger

python "SKILL/scripts/review.py" film/final.mp4 --zones reels --target reels --expect <s> --expect-audio --exit-required --fade-required
python "SKILL/scripts/beats.py" check --bpm <bpm> --report film/final-review/report.json
python "SKILL/scripts/ledger.py" add --brand "<marca>" --film <nombre> <los mismos ejes que en el paso 3>

Escribe NOTE.md: la idea y por qué; cada beat y qué compra; qué es real y qué es ilustrativo; las líneas de control copiadas de probe.mjs y review.py; las descripciones de fotograma en una oración; qué mejorarías aún. Nunca escribas que el video es bueno: escribe lo que revisaste. Cuando el espectador reaccione, regístralo: ledger.py verdict --film <nombre> --verdict approved|rejected --note "<sus palabras>". Una combinación rechazada queda bloqueada para todo video futuro.

Nunca enviar

  • Un video que nadie miró, o con controles reclamados sin las líneas del script.
  • Texto debajo de la interfaz de la plataforma, cortado por el borde del fotograma, más pequeño que el 3.1 % del lado corto, con contraste inferior a 4.5:1, o que desaparece antes de poder leerse.
  • Más de tres destellos en cualquier segundo.
  • Un fotograma terminado mantenido más allá del límite de retención final; una imagen congelada en medio; un final que simplemente se detiene (usa un movimiento de salida y un fundido de sonido).
  • La misma pista, concepto o salida que el último video de la marca.
  • Decoración de interfaz de página: etiquetas de esquina, contadores "01 / 04", códigos de tiempo, barras de progreso. Permitido solo cuando es la idea en sí misma (una sala de control, una cuenta regresiva): entonces márcalo data-diegetic (o data-ui para una pantalla de producto real) y di por qué en NOTE.md.
  • Números, testimonios o interfaces inventados mostrados como reales.

Archivos

rutaqué es
references/direction.mdbrief, tipos de idea, beats y qué compran, transiciones, notas de copy en portugués
references/motion-catalog.mdcurvas, duraciones, escalonamientos, pausas, cómo elegir
references/formats.mdrelaciones de aspecto, zonas seguras, tamaños de tipo por formato
references/sound.mdcuadrícula de música, golpes, objetivos de sonoridad, fundidos
references/review.mdcada puerta de control, su número, lo que no puede ver
references/adapters.mdcontratos HTML, HyperFrames y Remotion
data/*.jsonzonas, objetivos de sonoridad, tokens de movimiento, vocabulario del ledger (edita estos, no los scripts)
scripts/doctor, render, probe, review, master, beats, ledger
templates/film.html y el runtime kit.js sin dependencias
adapters/ayudas de Remotion y notas de HyperFrames

Skills relacionados