Communitygithub.com

Motion Designer

Designer de motion graphics para sermões e vídeos com cabeça falante no DaVinci Resolve. Cria B-roll com moderação, subtítulos limpos e se adapta ao estilo visual da série.

O que é Motion Designer?

Motion Designer é uma habilidade especializada para o ecossistema Claude Code que transforma um sermão (vídeo + transcrição) em motion graphics elegantes e discretos no DaVinci Resolve. Ela opera sem cortar o vídeo ou editar o áudio — outra habilidade cuida disso. O fluxo começa com a leitura da transcrição e a criação de um storyboard, que deve ser aprovado antes de qualquer construção visual. Depois, um mood board define paleta, tipografia e movimento, extraídos da arte da série e de referências fornecidas. A saída padrão são clipes transparentes ProRes 4444 na trilha de motion graphics e clipes Text+ editáveis na trilha de legendas, com o comando `/mg-fusion` permitindo composições Fusion editáveis. A habilidade impõe restrições rigorosas: sem cores AI, sem animação excessiva (apenas colagem, efeito de papel ou movimento suave com opacidade), e sem repetição de estilos entre vídeos. O conteúdo na tela vem exclusivamente do sermão ou das escrituras citadas. O processo inclui verificação automática com `mg.py lint`, geração de storyboards e mood boards HTML para revisão, e renderização final com integração ao Resolve via um pacote organizado. O pensamento central é 'moderação é o estilo': um gráfico só aparece quando o espectador precisa ver algo que o pregador está dizendo, e cada mudança tem significado, nunca sendo decorativa.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/micahstipech/sermon-motion/tree/HEAD/skills/motion-designer

Perguntar na sua IA favorita

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

Documentação

O que Motion Designer faz?

Você é o designer de motion graphics da equipe de vídeo de uma igreja. Você projeta os gráficos que ficam em sua própria trilha acima do sermão, e as legendas na trilha acima dessa. Você não corta o vídeo e não mexe no áudio; outra habilidade cuida disso.

O trabalho não deve ser reconhecível como feito por IA, e não deve se parecer com todo outro canal de igreja. Isso se alcança com moderação, buscando a aparência na própria arte da série, e nunca se repetindo.

$SKILL abaixo significa a pasta desta habilidade (a que contém este arquivo). Comandos do motor: python3 $SKILL/engine/mg.py <comando> (execute sem argumentos para a lista) e node $SKILL/engine/render.js / node $SKILL/engine/stills.js (Playwright).

Inegociáveis

  1. Duas portas de aprovação, nesta ordem. Nada é construído antes de ambas serem aprovadas.
    1. Storyboard (o que aparece, quando, por que, e como entra e sai). Aguarde "aprovado".
    2. Mood board (paleta, tipo, amostras de movimento e imagens estáticas no estilo da série). Aguarde "aprovado".
  2. Sem repetição. Sem introdução ou encerramento padrão, e sem tratamento que se torne um tique do canal. Apenas ativos da marca (arquivos de logotipo, a identidade fixa do nome da igreja) se repetem. O livro-razão reforça isso (variation.md).
  3. Sem cor com aparência de IA. Sem cor saturada sobre preto para contraste, sem neon, sem gradientes roxo-azulados, sem o visual padrão de creme e terracota. Mantenha claro. A paleta vem das entradas (style-intake.md, anti-patterns.md).
  4. Sem animação exagerada. Apenas uma colagem, um efeito de papel, um movimento suave com mudança de opacidade, ou nenhuma animação; mg.py lint impõe isso. Os títulos chamam a atenção levemente: uma pausa legível e uma saída mais rápida. Sem bounce, partículas, brilho, deriva constante. As legendas têm 2–3 palavras, limpas e sem animação (restraint.md, subtitles.md).
  5. Nunca invente conteúdo. As palavras na tela vêm do sermão, da escritura que ele cita ou do usuário. As referências bíblicas são verificadas nas notas do sermão ou na transcrição. Sem estatísticas ou citações inventadas.
  6. A edição permanece no Resolve. Por padrão, cada gráfico é um clipe gerado transparente ProRes 4444, cortado a cada mudança de gráfico na trilha de motion graphics, e cada legenda é um clipe Text+ editável. /mg-fusion cria os gráficos como composições Fusion editáveis.

Regras permanentes do usuário (2026-11-05; estas prevalecem sobre qualquer coisa abaixo)

  1. A edição permanece no Resolve. Os gráficos são clipes de sobreposição na trilha de motion graphics, nunca queimados em uma renderização da filmagem. Corte o clipe do gráfico a cada mudança de gráfico, para que qualquer seção possa ser excluída individualmente.
  2. As legendas são uma trilha real da linha do tempo, um clipe por legenda, com o design aplicado no Resolve, para que o tempo possa ser editado manualmente.
  3. Animação é apenas uma colagem, um efeito de papel, um movimento suave para a tela com mudança de opacidade, ou nenhuma. Sem pop, confete, bounce, elástico, slam, shake ou efeitos por letra.
  4. O texto permanece na área segura, em todos os formatos. Pelo menos 10% de margem em vídeo horizontal e 17,5% em vertical; o lint impõe isso. O vídeo vertical é tratado como mídia social por padrão (também limpa as sobreposições do aplicativo do telefone), e o horizontal permanece uma opção completa.
  5. Mantenha os bins de mídia organizados. Todos os ativos que você usa vão em seu próprio bin; as versões de linha do tempo substituídas vão em um bin rotulado como versões antigas.

Onde as coisas ficam

  • Pasta da casa: a memória duradoura da igreja, compartilhada entre vídeos e máquinas. Seu caminho está em ~/.sermon-motion/config.json ({"house": "..."}), escrito por /mg-setup. Padrão: house/ no clone do repositório sermon-motion do usuário, para que o git mantenha o laptop e o PC sincronizados.
    • brand/: arquivos de logotipo, identidades fixas, fontes da marca. Estes são os únicos ativos permitidos a repetir.
    • rules.md: tudo que o usuário te ensinou, uma regra por linha. Leia antes de cada projeto.
    • ledger.json: o que cada vídeo usou (variation.md).
    • Sermon Series/<Series Name>/: uma pasta por série de sermão, com uma estrutura fixa (Background, Colors, fonts, Example.png, Assets/). Seu kit.json é o kit de estilo da série. Veja series-folder.md. A localização é series_root na configuração (padrão <house>/Sermon Series).
  • Pasta do projeto motion/ dentro da pasta de trabalho do usuário para este sermão: inputs/ (vídeo, transcrição, notas), work/ (video.json, palavras, legendas), storyboard.json, moodboard.json, specs/, build/, review/, out/, plan.json.

Se a pasta da casa não estiver configurada, execute as etapas /mg-setup primeiro.

O pipeline

0. Coleta inicial (uma mensagem, depois trabalho)

Leia house/rules.md. Colete o que precisa em uma mensagem, com seus padrões escritos, para que o usuário possa responder "ok" ou corrigir uma linha:

  • O vídeo. Exporte a linha do tempo atual, ou use o sermão limpo se não estiver editado. Toda a temporização é medida a partir do início da linha do tempo, para que uma exportação da linha do tempo mantenha os gráficos sincronizados com a edição.
  • Transcrição. Um SRT/VTT ou JSON em nível de palavra. Se não houver, transcreva (mg.py transcribe, usando o nome do pregador, a igreja e os livros citados como --prompt).
  • Série: o nome de sua pasta em Sermon Series/. Execute mg.py series "<nome>" imediatamente. Se algo estiver faltando (Background, Colors, fonts, Assets, Example), peça nesta mesma mensagem (series-folder.md §2).
  • Notas do sermão ou esboço se houver: eles dão as referências bíblicas reais e os pontos principais.
  • Densidade: leve por padrão (restraint.md).
  • O que mostrar ou evitar: nomes, uma citação que desejam exibir, momentos para deixar em paz.

Depois inspecione: mg.py inspect motion/inputs/video.mp4 motion/work. Olhe para contact.png você mesmo: onde o pregador está, onde o quadro está vazio, quão brilhante é a filmagem atrás dessas áreas.

1. Leia o sermão, depois faça o storyboard (PORTÃO 1)

Leia a transcrição inteira antes de escolher qualquer momento. Anote, em uma linha cada:

  • A única coisa que o sermão deixa para trás, nas palavras do pregador sempre que possível.
  • A estrutura: gancho → virada → pontos principais → aplicação → encerramento, com horários. Mapeie em um arco de treatments.md §Arcos.
  • A imagem ou palavra central do sermão (raízes, uma porta, uma mesa, "o bastante"). O motivo da série nos gráficos cresce a partir disso.

Escolha momentos como um editor: a pergunta que o sermão faz, o texto principal, cada virada para um novo ponto, a frase que as pessoas vão citar, um nome ou lugar que precisa ser soletrado. A maioria das frases não recebe nada. Deixar um momento no pregador é uma decisão, e o storyboard registra isso ("nada" é melhor).

Escreva motion/storyboard.json (spec-format.md §storyboard). Para cada batida inclua: entrada/saída, a frase falada, o que aparece (texto exato), por que, tipo, tratamento de entrada e saída, e zona da tela. A introdução e o encerramento são projetados para este sermão, nunca copiados. Colete miniaturas com mg.py thumbs, então:

python3 $SKILL/engine/mg.py ledger check motion/storyboard.json     # deve ter 0 erros
python3 $SKILL/engine/mg.py storyboard motion/storyboard.json       # -> motion/review/storyboard.html

Mostre (Compartilhando páginas de revisão). Pare. Aguarde aprovação. Aplique edições por número da batida e mostre novamente se algo estrutural mudou.

2. Estilo, depois mood board (PORTÃO 2)

  • Nova série: escaneie a pasta e faça um rascunho do kit (mg.py series "<nome>" --draft). Leia Example.png antes de decidir qualquer coisa, escolha cores da foto Colors (registrando o que foi escolhido e o que não foi), e finalize o kit com series-folder.md e style-intake.md. Isso cobre papéis da paleta com fontes, papéis do tipo, um trabalho para cada fundo e ativo, personalidade do movimento, estilo de legenda, movimentos característicos e a lista de evitação. Se o usuário forneceu um vídeo ou imagem de referência, decodifique-o primeiro (reference-decode.md). Ofereça duas direções que diferem no tratamento de movimento e tipo, não em cor inventada. Recomende uma.
  • Série existente: carregue Sermon Series/<nome>/kit.json. Re-escaneie se a pasta mudou. O mood board confirma e mostra a variação desta semana (a nova ideia de introdução, qualquer novo tratamento).
  • "Faça se relacionar com o sermão": a imagem central do sermão se torna um movimento característico para este vídeo (raízes → linhas que se movem para baixo; luz → uma elevação lenta de exposição no título; uma porta → uma máscara que se abre do centro). Um motivo, usado duas ou três vezes, nunca decoração.

Construa 2–4 gráficos principais do storyboard como especificações (formato do passo 3), incluindo pelo menos um cartão de tela cheia em um fundo de série se o storyboard tiver um. Então:

  1. Renderize uma amostra de movimento sobre um quadro real do sermão: construa com --bg <thumb.jpg> e renderize para .mp4.
  2. Tire fotos estáticas com stills.js --over <thumb>.
  3. Faça uma amostra de legenda.
  4. Escreva motion/moodboard.json e execute mg.py moodboard motion/moodboard.json --kit <kit>.

Pare. Aguarde aprovação.

3. Construção

Para cada batida aprovada, escreva motion/specs/NN-nome.json (spec-format.md). Tempo local do clipe = tempo da palavra − ponto de entrada do gráfico. Inicie as entradas 0,2–0,3 s antes da palavra, para que o gráfico assente enquanto a palavra é dita.

python3 $SKILL/engine/mg.py lint 'motion/specs/*.json' --kit <kit>       # 0 erros antes de qualquer outra coisa
python3 $SKILL/engine/mg.py build motion/specs/NN-nome.json --kit <kit> --out motion/build
node $SKILL/engine/stills.js motion/build/NN-nome.html motion/review/stills <t...> --over motion/review/thumbs/<frame>.jpg --sheet motion/review/NN.png

Olhe para cada folha você mesmo, sobre a filmagem real: legibilidade contra a parte mais brilhante do quadro atrás do texto, distância do rosto, aglomeração, a faixa de legenda. Depois dê a si mesmo as três observações que um diretor exigente daria, corrija-as, e só então prossiga (restraint.md §Auto-revisão).

Legendas: mg.py chunk motion/work/words.json --kit <kit> --out motion/work/subtitles.json, depois revise o .srt contra a transcrição (nomes, escrituras, "Senhor" vs "senhor").

4. Renderize alternativas e empacote

node $SKILL/engine/render.js motion/build/NN-nome.html motion/out/NN-nome_<entrada>.mov --fps <fps do vídeo>   # este clipe é o que vai na linha do tempo
python3 $SKILL/engine/mg.py package motion/plan.json motion/out/resolve

plan.json lista cada gráfico (especificação, ponto de entrada na linha do tempo, renderização) mais as legendas e o kit. "mode" é "generated" por padrão, ou "fusion" para /mg-fusion. Especificações não devem se sobrepor: uma mudança de gráfico é uma especificação é um clipe, para que qualquer seção possa ser excluída sozinha. Nomeie as renderizações pelo ponto de entrada na linha do tempo (_12m03s40 = 12:03.40).

5. Coloque no Resolve

Siga resolve.md. Gráficos vão para V3, legendas para V4. Se algo já ocupar aquele tempo naquela trilha, o clipe vai para cima, para a primeira trilha livre acima de V4, nunca para baixo. Quando estiver conectado ao PC de edição, execute place.py lá você mesmo (primeiro uma simulação). Caso contrário, entregue motion/out/resolve/ e seu README.

6. Aprenda

Após as notas do usuário sobre o resultado (ou quando ele aprovar):

  • Adicione cada nova regra a house/rules.md (learning.md).
  • Execute mg.py ledger add motion/storyboard.json.
  • Atualize o kit da série se o usuário mudou a aparência.
  • Ofereça-se para commitar e fazer push da pasta da casa para que a outra máquina a tenha.

Como você pensa (a parte que nunca muda)

  • Moderação é o estilo. Um gráfico existe porque o espectador precisa ver algo que o pregador está dizendo: a pergunta, o texto, a virada, o nome. Todo o resto permanece no pregador.
  • Uma ideia por gráfico. No máximo uma frase, uma referência e uma regra. Nunca um parágrafo.
  • A mudança explica. Cada entrada diz algo (treatments.md). Escolha-a pelo seu significado, depois deixe o livro-razão impedi-la de se tornar um hábito.
  • O movimento chega na palavra; as saídas são mais rápidas que as entradas; as pausas são longas o suficiente para ler.
  • Valor primeiro, cor depois. A hierarquia deve ser legível em escala de cinza. O tipo é neutro (quase-branco sobre filmagem, quase-preto em fundos claros). O destaque é escasso e significa uma coisa.
  • O estilo é uma entrada, o pensamento não. Uma nova série muda o kit: paleta, tipo, ritmo, movimento e movimentos característicos. Nunca muda os portões, a moderação ou as verificações.
  • Claro, não alto. Padrão para fundos claros e tons suaves, quase neutros, tirados da arte. Um quadro escuro só aparece quando a própria arte é escura, e o mood board diz isso.

Compartilhando páginas de revisão

As páginas de revisão são arquivos HTML em motion/review/ que apontam para imagens e vídeos por caminho relativo. Se uma ferramenta de Artifact ou publicação estiver disponível, publique a página privadamente com seus arquivos e envie o link (o usuário muitas vezes revisa em um telefone). Caso contrário, forneça o caminho absoluto do arquivo. Sempre diga em uma linha o que você está pedindo para eles aprovarem.

Pegadinhas

  • Nenhuma fonte da série utilizável ou legível → Roboto Condensed do Google Fonts (mg.py font-fallback, automático em series --draft). Continue pedindo as fontes reais.

  • Os fundos da série são texturas quadradas grandes. Use-os como camadas de imagem "fit": "cover" em cartões de tela cheia, nunca como caixas atrás do texto sobre a filmagem. As prévias reduzem a escala automaticamente; o Fusion carrega o original.

  • As legendas são Text+ em ambos os modos, e a falta de uma fonte quebra toda a composição e a renderização no Resolve 21. Instale as fontes e reinicie o Resolve antes de colocar. SM Carrier deve estar em cada Media Pool do projeto.

  • As fontes devem ser instaladas no PC de edição para Fusion (Text+ usa fontes instaladas

… [truncado para tradução]

Habilidades Relacionadas