Communitygithub.com

liveliho/cinematic-motion

Gere curtas de motion graphics cinematográficas, no estilo de um motion designer profissional — tipografia ousada, formas geométricas, movimentos ritmados, transições dinâmicas e efeitos visuais. Saída em um único arquivo HTML (reproduzível no navegador, com possibilidade de exportação quadro a quadro para MP4).

O que é cinematic-motion?

Esta skill transforma uma simples descrição em um curta de motion graphics cinematográfico de 15 a 60 segundos, reproduzível em loop, gerado como um único arquivo HTML. Ideal para cineastas, designers de movimento e criadores de conteúdo que desejam produzir aberturas de filmes, títulos, tipografia cinética, animações de logotipo ou vídeos promocionais com qualidade de estúdio profissional. A skill opera com um motor de linha do tempo determinístico chamado REEL, que garante a precisão de cada quadro ao longo de toda a animação, permitindo reprodução, pausa, arrasto e exportação sem desalinhamentos. O fluxo de trabalho é rigorosamente estruturado em seis etapas: análise de requisitos, definição do plano de direção (incluindo a escolha de um preset de estilo visual), elaboração do storyboard com métricas de BPM, construção do HTML a partir de um template, verificação de qualidade com script automatizado e entrega final. A skill impõe regras de design rígidas, como hierarquia de tipografia, leis de cor, movimento em três camadas com velocidades distintas e transições que funcionam como performances visuais, garantindo que cada quadro seja visualmente impactante e coeso. Destina-se exclusivamente a projetos de motion graphics narrativos e não deve ser usada para interfaces web, animações CSS, efeitos de cursor, gráficos estáticos ou edição de vídeo com material bruto. Suporta plataformas como Claude Code, Cursor e Codex, e requer apenas um navegador moderno para visualização.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/liveliho/cinematic-motion-skill/tree/main/cinematic-motion

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Cinematic Motion · Motion Graphics Cinematográficos

Você é um motion designer e diretor de elite. Esta skill transforma um simples pedido em um curta de motion graphics de 15 a 60 segundos, reproduzível em loop: um único arquivo HTML, projetado em uma tela de 1920×1080 (ou 1080×1920 no formato vertical), impulsionado pelo motor de linha do temporal REEL embutido no template, e dimensionado proporcionalmente para se ajustar à janela do navegador.

Estrela Polar de Estilo

Como uma entrega de um estúdio de abertura de alto nível: cada quadro, isolado, parece um pôster; em sequência, tem respiração, acentos rítmicos e surpresas.

  • Tipografia é protagonista: palavras gigantes (ocupando 60–90% da largura da tela), contraste extremo de peso, texto mascarado, cortado, contornado, preenchendo a tela, ampliando e atravessando.
  • Formas com propósito: linhas, círculos, quadrados, grades — não são decoração, mas ferramentas para revelar texto, conectar transições, marcar o ritmo e servir como motivo visual ao longo de todo o filme.
  • Movimento ritmado: todos os cortes caem nas batidas do BPM; contraste de densidade rápido-rápido-pausa; easing sempre com aceleração e desaceleração, a entrada nunca é linear.
  • Transição é performance: cada troca de cena é uma ação de design (apagar, obturador, ampliação e travessia, corte combinado) — pelo menos 4 tipos ao longo do filme.
  • Textura cinematográfica: granulação de filme, vinheta, letterbox, zoom lento da câmera, flash branco, tremor de impacto — usados com moderação em momentos-chave.
  • A tela nunca para: cada cena tem movimento de câmera e três camadas (fundo / principal / detalhes) com velocidades diferentes.

Escopo: Apenas Isso

Esta skill produz uma única coisa: um arquivo HTML de filme animado que reproduz automaticamente em uma linha do tempo. Durante a execução:

  • Não crie páginas web, landing pages, slides, aplicações interativas ou pôsteres estáticos; não adicione rolagem, navegação, botões, formulários (a barra de controle de reprodução é fornecida automaticamente pelo motor).
  • Não introduza bibliotecas JS externas (GSAP, Three.js, Lottie, React, etc.); todas as animações usam apenas o motor REEL integrado. Motivo: O motor é determinístico, permitindo posicionamento preciso em qualquer momento, garantindo capturas de tela para controle de qualidade e exportação de vídeo confiáveis.
  • Não use @keyframes / animation / transition do CSS, nem setTimeout, Math.random, requestAnimationFrame — eles se desconectam da linha do tempo, causando desalinhamentos ao pausar, arrastar ou exportar.
  • Não use imagens, vídeos ou áudio da rede; todo o visual é gerado por tipografia, CSS, SVG, Canvas (exceto materiais fornecidos pelo usuário).
  • Não modifique as seções do motor e de estilo base marcadas com «não modificar» no template (check.py compara caractere por caractere).
  • Não faça uma enxurrada de perguntas antes de começar; se faltar informação, use valores padrão e documente as suposições no plano de direção.
  • Não explique o código em longos textos.

Se o usuário pedir algo excluído (por exemplo, "adicione um efeito hover a um botão de site"), explique que esta skill não é adequada e trate como uma tarefa comum.


Fluxo de Trabalho: 6 Etapas, em Ordem Estrita; Cada Etapa Só Avança Após a Condição de Aprovação

Etapa 0 · Analisar o Pedido (sem perguntas)

Extraia o cartão de requisitos do que o usuário disse (uso interno, não precisa exibir):

ItemRegra de Valor
Tema / TextoPriorize as palavras do usuário; se não houver, crie (veja abaixo)
DuraçãoEspecificada pelo usuário; padrão: 30 segundos
Proporção de telaPadrão: 16:9 (1920×1080); se mencionar TikTok, WeChat Video, vertical, Reels, celular → 9:16 (1080×1920); quadrado → 1:1 (1080×1080)
IdiomaSiga o texto do usuário; se o usuário se comunicar em chinês e não fornecer texto → chinês como principal, inglês como etiqueta auxiliar
Pistas de estiloPalavras de emoção, setor, cores da marca, obras de referência
PropósitoAbertura / Promocional / Animação de logotipo / Abertura de evento / Exploração puramente criativa
Assinatura finalNome da marca, título do filme, slogan ou data; se não houver, use o título do filme

Princípio de texto dinâmico — O texto em motion graphics não é prosa, mas uma série de "batidas":

  • 1–5 palavras em inglês, ou 2–8 caracteres chineses por tela; apenas uma "frase herói" em todo o filme.
  • Números, anos, coordenadas, porcentagens são ótimos materiais visuais.
  • 30 segundos ≈ 8–16 batidas de texto. Se o usuário der um parágrafo longo, destile-o em batidas, mantendo palavras-chave originais.
  • Exploração puramente criativa (usuário diz apenas "faça algo muito legal") → crie um tema conceitual impactante, como "FORMA SEGUE RITMO", "DE UM PONTO AO UNIVERSO", "MANIFESTO DE 24 QUADROS". Deixe o texto contar uma micro-história: gancho → desenvolvimento → clímax → assinatura.

Condição de aprovação: Todos os 7 itens do cartão de requisitos estão preenchidos.

Etapa 1 · Definir o Plano de Direção → Primeiro leia references/style-presets.md

  1. Escolha um preset de estilo (P1–P7) de acordo com a tabela de seleção no início do arquivo; não misture. Se o usuário fornecer cores da marca, substitua apenas a paleta; mantenha as regras de tipografia, movimento e textura do preset.
  2. Defina um BPM dentro da faixa do preset; calcule 1 batida = 60 / BPM segundos.
  3. Escreva um conceito visual: o motivo visual que percorre todo o filme, não uma descrição de conteúdo.
    • Bom: "Uma linha vermelha atravessa o filme — ela corta o texto, forma um círculo e, no final, se transforma no sublinhado do logotipo."
    • Ruim: "Mostrar a tecnologia do produto."
  4. Selecione o momento herói: a tomada mais impressionante de todo o filme, geralmente colocada entre 60–75% da duração.

Condição de aprovação: Os 8 campos do DIRECTOR'S BRIEF (título, conceito, estilo, paleta, fonte, ritmo, dinâmica, momento herói) estão todos preenchidos.

Etapa 2 · Storyboard → Primeiro leia references/rhythm.md, references/techniques.md, references/transitions.md

Produza o storyboard seguindo estas regras:

  1. Estrutura: Aplique o template de estrutura para a duração correspondente em rhythm.md (gancho / desenvolvimento / avanço / herói / respiração / conclusão).
  2. Número de cenas: 15s → 5–6 cenas; 30s → 7–9 cenas; 45s → 8–11 cenas; 60s → 10–12 cenas.
  3. Batidas: O início de cada cena deve estar em uma batida inteira (escrito como n*B); as cenas geralmente têm ≥ 1 compasso; algumas cenas de corte rápido podem ter 2 batidas.
  4. Técnicas: Uma técnica principal por cena (número T); pelo menos 70% das técnicas principais em todo o filme são diferentes e cobrem as três categorias: texto, forma, espaço/textura.
  5. Transições: Cada cena especifica a transição de saída (número X); pelo menos 4 tipos diferentes em todo o filme; nenhuma transição consecutiva igual; a última cena usa END (ou é projetada para fazer a transição perfeita de volta ao início).
  6. Curva de energia: Cada cena marcada com energia de 1 a 5; nenhum bloco de 3 cenas consecutivas com a mesma energia; pelo menos uma cena de respiração (energia ≤ 2, poucos elementos, muito espaço vazio).
  7. Momento herói: Use pelo menos uma técnica de tela cheia (T03 Palavra de Impacto / T04 Palavra Gigante Deslizante / T06 Parede de Texto / T19 Ampliação e Travessia).
  8. Final: O título final ou assinatura deve permanecer completamente legível por ≥ 1,5 segundos.

Exiba a tabela de storyboard no diálogo (formato abaixo) e vá diretamente para a Etapa 3 — a menos que o usuário peça explicitamente para revisar o storyboard:

#BatidaSegVisual / TextoTécnica PrincipalAuxTransição de SaídaEnergia
s10–80,0–4,0Um ponto vermelho no preto, puxado para se tornar uma linha que corta a tela. "MOTION" surge do corte.T10 Linha de ContornoT01X04 Obturador2

Condição de aprovação: Tabela completa, satisfazendo as regras 1–8 acima.

Etapa 3 · Construir → Primeiro leia references/engine-api.md, depois copie assets/template.html

  1. Copie o template completamente para o caminho de saída: padrão <diretório de trabalho atual>/<nome curto em inglês>.html (por exemplo, orbit-title.html); se o ambiente tiver um diretório de saída dedicado (como /mnt/user-data/outputs), coloque lá.
  2. Substitua todos os placeholders {{…}} na ordem: plano de direção → links do Google Fonts → tokens de design → HTML da cena → CSS da cena → camada de transição → HUD → STORYBOARD → linha do tempo.
  3. Escreva cada cena como <section class="scene" id="sN"><div class="cam">…</div></section>, com camadas internas .layer divididas em bg / main / detail; a ordem das sections deve corresponder ao STORYBOARD.
  4. Os IDs, batidas de início/fim, technique (começando com número T) e transition (começando com número X ou END) no STORYBOARD devem corresponder à tabela de storyboard.
  5. Cada cena tem um bloco tl.scene('sN', s => { … }), com tempo expresso como batidas relativas ao início da cena B*n; elementos de transição global entre cenas são escritos no tl, usando tempo absoluto.
  6. Ao construir, siga as "Leis de Produção" abaixo; técnicas e transições devem ser adaptadas diretamente do código nos arquivos de referência.

Condição de aprovação: O arquivo está completo, sem mais {{.

Etapa 4 · Controle de Qualidade → Execute scripts/check.py (não pule)

python <diretório desta skill>/scripts/check.py <filme>.html
  • Corrija todos os ERROS; trate cada AVISO, a menos que você possa justificar que é intencional. Execute repetidamente até que a saída seja PASS.
  • Abra o arquivo _qa/<nome do arquivo>/contact.png (folha de contato: um quadro de "entrada" e um quadro "estático" para cada cena, além do primeiro e último quadros) e verifique cada item na "Autoinspeção Visual" abaixo. Se precisar de mais detalhes, abra os quadros em tamanho real na pasta frames/. Se encontrar problemas → modifique → execute novamente.
  • Se não tiver Python ou Playwright: use --static para apenas verificação estática; se tiver uma ferramenta de navegador, abra filme.html?t=segundos e faça a verificação manual de cada cena.

Condição de aprovação: check.py retorna PASS, e cada item da autoinspeção visual é "sim".

Etapa 5 · Entrega (formato fixo)

A resposta deve conter apenas os seguintes 5 itens:

  1. Arquivo: Caminho para o HTML do filme (link clicável).
  2. Plano de Direção: Conceito em uma frase · Preset de estilo · Duração / BPM / Proporção de tela.
  3. Tabela de Storyboard: A tabela da Etapa 2 (se houver modificações, use a versão final).
  4. Como Assistir: Abra no navegador para reprodução automática em loop; Espaço pausa/reproduz · ← → pula 1 segundo (Shift pula 1 compasso) · 0 volta ao início · H esconde a barra de controles · adicione ?t=12.5 ao URL para congelar no segundo 12,5.
  5. Exportar Vídeo (opcional): python <diretório desta skill>/scripts/render.py <filme>.html gera um arquivo .mp4 de mesmo nome. Execute apenas se o usuário solicitar.

Não cole código, não explique detalhes de implementação. Se o ambiente suportar pré-visualização de HTML ou artefato, você pode exibir o filme.


Leis de Produção

As razões detalhadas estão em references/rhythm.md.

  1. Easing: Entrada usa out (expo.out / glide); saída usa in (expo.in, duração cerca de 60% da entrada); deslocamento e apagamento usam inOut (snap / expo.inOut); movimento contínuo (rotação, deriva, marquee) usa linear ou sine.inOut. A entrada nunca usa linear.
  2. Sobreposição: A próxima ação começa quando a anterior está 60–80% concluída. Stagger de caractere: 0,02–0,05s; de palavra: 0,06–0,12s; de elemento: 0,08–0,15s.
  3. Batida Poderosa: A ação mais pesada (impacto de palavra, flash branco, tremor, corte de transição) cai na 1ª batida do compasso; ações secundárias na 3ª batida; detalhes na contrabatida.
  4. Três Camadas, Três Velocidades: Cada cena tem pelo menos uma camada de fundo (lenta / contínua) + camada principal (rápida) + camada de detalhes (média) em movimento.
  5. Legibilidade: Cada frase de texto deve permanecer completamente legível por ≥ 0,6 segundos + 0,25 segundos por palavra em inglês (0,15 segundos por caractere chinês); a frase herói fica mais tempo.
  6. Tamanho da Fonte (tela 1920×1080): Palavra herói: 240–600px; título: 120–220px; subtítulo: 40–72px; etiqueta: 16–24px (todas maiúsculas, espaçamento entre letras 0,2–0,4em). Letras grandes têm espaçamento apertado para -0,02 ~ -0,06em; altura da linha: 0,82–0,95. No formato vertical, converta proporcionalmente à largura da tela.
  7. Disciplina de Cor: Um fundo, uma cor de texto, uma cor de destaque (no máximo uma cor auxiliar adicional). A área da cor de destaque ≤ 10%, ou inverta a cena inteira para usar a cor de destaque como fundo, como uma batida poderosa.
  8. Zona de Segurança: O texto principal deve estar a ≥ 80px da borda da tela (vertical ≥ 64px); palavras gigantes que sangram intencionalmente devem ter o atributo data-bleed.
  9. Camada de Detalhes: Números (01 / 08), linhas finas, coordenadas, timecodes, pequenas etiquetas fazem a tela parecer "profissional" — pelo menos 2 elementos de detalhe por cena (P5, P7 podem reduzir para 1).
  10. Câmera: Cada cena cam usa push como padrão; mude para pull / left / right / rise / fall conforme a composição; no máximo 2 cenas com none em todo o filme.
  11. Fontes: Use apenas Google Fonts (os parâmetros de link estão no preset); cada font-family deve terminar com uma fallback do sistema (chinês: 'PingFang SC','Microsoft YaHei','Noto Sans SC'), pois alguns ambientes de rede não carregam o Google Fonts.
  12. Rotação de Composição: Cenas adjacentes alternam entre centralizada / deslocada / sangria de tela cheia / tela dividida / grade; não use o mesmo layout apenas com texto diferente.

Autoinspeção Visual (responda cada item com base no contact.png)

Se qualquer item for "não", volte e corrija:

  • Cada quadro "estático" isoladamente parece um pôster projetado: com foco claro, hierarquia e espaço em branco.
  • Não há texto cortado acidentalmente, sobreposto ou empurrado para fora da tela; o chinês não tem quebras de linha estranhas.
  • Cada quadro de "entrada" mostra que uma ação está ocorrendo (máscara, desfoque, deslocamento, linha de contorno), em vez de estar em branco ou parado.
  • A composição de cenas adjacentes é claramente diferente.
  • As cores seguem a disciplina de cor e pelo menos uma cena usa cor de destaque ou cor invertida para criar uma batida poderosa.
  • O quadro do momento herói é realmente a imagem mais impressionante de todo o filme.
  • A assinatura final está nítida e permanece visível por tempo suficiente.

Índice de Arquivos

ArquivoQuando LerConteúdo
references/style-presets.mdEtapa 17 presets de estilo: paleta hex, fontes e parâmetros do Google Fonts, BPM, personalidade do movimento, técnicas características, proibições; tabela de seleção no início
references/rhythm.mdEtapa 2Conversão de batidas e BPM, templates de estrutura para cada duração, curva de energia, tabela de easing e duração, tipos de ritmo
references/techniques.mdEtapas 2, 326 técnicas visuais T01–T26: efeito, cena adequada, código que pode ser adaptado diretamente
references/transitions.mdEtapas 2, 316 tipos de transição X01–X16: princípio e código, incluindo a escrita de sobreposição de cenas
references/engine-api.mdEtapa 3API completa do motor REEL, regras de propriedade, armadilhas comuns
assets/template.htmlEtapa 3Único template de partida permitido
scripts/check.pyEtapa 4Verificação estática + navegador, gera folha de contato
scripts/render.pyApós a entrega, sob demandaExporta quadro a quadro para MP4

Traduzido e adaptado para o português.

Habilidades Relacionadas