Reels sem rosto
Esta skill reproduz uma cadeia de produção validada em um reel real ("Esta voz não sou eu", publicado em novembro de 2026). O objetivo: um reel 1080 x 1920, 30 fps, de 60 a 120 s que prende a atenção até o final, porque tudo se transforma no lugar, no ritmo da voz.
Configurações
As configurações pessoais ficam em config.json na raiz desta skill. Se ele não existir, copie config.example.json para config.json e peça ao usuário para preencher o que está faltando (pelo menos elevenlabs_voice_id). Leia-o no início de cada execução. <skill> abaixo significa a pasta desta skill.
| Chave | Uso |
|---|---|
creator_name | Como se referir ao usuário nos relatórios |
language | Idioma padrão do reel (voz, legendas, texto na tela). Uma solicitação em outro idioma prevalece |
elevenlabs_voice_id, elevenlabs_model | A voz clonada |
whisper_model | Modelo local do whisper.cpp usado para verificações |
projects_root | Onde os projetos de reel anteriores ficam (para reutilizar node_modules) |
cta | A redação exata dos três movimentos finais, no idioma do reel |
guides_page | A página vinculada na bio do usuário, onde os guias ficam |
timezone, publish_hour, caps, telegram_env | Apenas no modo autônomo |
Regras do usuário
- Escreva de forma clara e direta. Nunca use travessões ou frases de preenchimento, na tela ou nas mensagens.
- Tipografia do idioma do reel na tela. Para português: espaços antes de
: ? !e dentro de "5 ajustes", aspas « ». - A voz nunca é cortada. Apenas a animação é editada. Sem alterações de duração, sem silêncio removido.
- Sem rosto no vídeo, exceto na capa, que usa a foto do usuário.
- A capa é sempre o primeiro quadro do vídeo, e também é entregue como um arquivo separado.
- O final sempre faz os três movimentos: inscreva-se para obter o guia, clique no link da bio, digite a palavra-chave. Na voz, nas legendas e na tela (botão INSCREVA-SE, botão LINK NA BIO, um campo onde a palavra-chave é digitada). A palavra-chave está diretamente relacionada ao guia e ao tópico, e Claude a propõe. Diga "link na bio", nunca "link na descrição": a página de guias está na bio do usuário.
- Tudo o que é dito deve ser verdade: sem números inventados, sem superlativos sem fonte, sem capturas de tela falsificadas. Uma prova vivida vence uma promessa.
- Nenhum token, senha ou chave legível na tela.
- Legenda de cada reel: no máximo 5 hashtags, sem links, em todas as redes. Sempre termina mostrando como obter o guia, por exemplo: "Os cinco prompts estão no guia, prontos para copiar e colar. Para obtê-lo: inscreva-se, vá ao link na bio e digite a palavra-chave CINCO."
- Reel sem rosto com voz clonada: declare conteúdo gerado por IA ao publicar (por exemplo, com Blotato:
isAiGenerated: trueno TikTok,containsSyntheticMedia: trueno YouTube). - Música a 0.05 abaixo da voz, nunca mais.
- Anuncie o custo das gerações pagas. Se o usuário já autorizou o Atlas Cloud ou ElevenLabs na solicitação, anuncie e continue. Caso contrário, aguarde a concordância.
- Vá até o fim sem parar, verifique seu próprio trabalho, diga claramente o que foi verificado e o que não foi. Nunca publique a menos que o usuário peça, exceto no modo autônomo.
- Máquinas pequenas (8 GB de RAM): um bundle do Remotion por vez, renders em segundo plano, arquivos intermediários limpos no final.
Etapas
Planeje tudo no início. Cada etapa tem seu guia: leia-o quando chegar à etapa.
- Localizar. Pasta do vídeo, reel de referência (arquivo ou link), tópico, imagem de capa do usuário (
cover.pngna pasta do vídeo, senão<skill>/assets/cover/cover-template.pnge avise), espaço livre em disco (df -h /). Leia osreferences/úteis e a memória do projeto. - Analisar a referência, se houver: extraia o áudio, transcreva com o Scribe, veja o vídeo quadro a quadro, escreva
_reel/reference/reel_analysis.md. Vejareferences/script.md. - Escrever o roteiro e o guia prometido:
_reel/script.md, com a verdade de cada afirmação. Vejareferences/script.md. - Criar o projeto:
zsh <skill>/scripts/new_reel.sh "<pasta do vídeo>", depois preencharemotion/reel.json. Vejareferences/editing.md. - Animatic livre:
python3 <skill>/scripts/fake_words.py, depoispython3 scripts/build_reel.py, que verificareel.json, então alguns stills. O roteiro cabe na tela? - Voz: 2 takes do ElevenLabs, timestamps das palavras do Scribe no take escolhido, processamento sem cortes. Veja
references/voice.md. - Tomada de abertura do Atlas Cloud (opcional, recomendado): imagem inicial, imagem final, Kling, retiming na voz. Veja
references/opening-shot.md. - Cenas:
src/reel/BRIEF.mdbatida por batida, depois um agente por grupo de cenas em paralelo e um agente de verificação. Vejareferences/editing.mdereferences/scene-rules.md. - Capa: título e logotipos atraentes. Veja
references/cover.md. - Verificar com stills, corrigir, depois renderizar:
zsh scripts/render_final.shem segundo plano (10 a 15 min para 90 s). - Verificar o arquivo final e escrever
exports/instagram.md. Vejareferences/checks.md. - Finalizar: README do projeto, memória do projeto, arquivos intermediários excluídos, arquivos enviados, resumo com o que resta ouvir ou decidir.
Modo autônomo
Se a solicitação vier de uma tarefa agendada, ou se o usuário pedir para processar a pasta inspiration/, siga references/autonomous-mode.md: sem perguntas, limites de custo, guia, postagens agendadas, notificação.
O que faz o reel funcionar
- Gancho em menos de 3 s, com uma prova ou promessa, legível desde o primeiro quadro após a capa.
- Um loop aberto visível: N caixas vazias numeradas, que se tornam a barra de progresso.
- N elementos da mesma forma, crescendo em dificuldade e valor, o melhor por último, anunciado por um re-gancho.
- Um único take: mesmo fundo, mesma janela. Nunca um corte seco.
- Cada aparição cai na palavra falada, nunca mais de 1,5 s sem uma mudança na tela.
- Recapitulação relâmpago, depois uma punchline que muda como o espectador vê o tópico.
- Um final feito de gestos, mostrados e não apenas ditos: o cursor se inscreve, clica no link da bio, então a palavra-chave é digitada.
- Loop: a última frase leva de volta à primeira, e o último quadro se torna o primeiro novamente.
Guias
| Leia | Quando |
|---|---|
references/script.md | Analisar uma referência, escrever o roteiro, escolher a palavra-chave e o guia |
references/voice.md | Gerar a voz, obter as palavras, processar o som sem cortes |
references/opening-shot.md | Prompts e retiming da tomada de abertura, custos |
references/editing.md | Layout do projeto, reel.json, agentes, verificar stills, renderizar |
references/scene-rules.md | Regras para dar aos agentes que escrevem as cenas |
references/cover.md | Título, logotipos, formatos, colocá-la como primeiro quadro |
references/checks.md | Verificações do arquivo final, legenda, o que resta para um humano |
references/autonomous-mode.md | Processar sozinho um arquivo da pasta inspiration/, da referência às postagens agendadas |
assets/reel-template/ é o projeto Remotion. assets/example-this-voice/ contém o reel validado completo: roteiro, análise, cenas reais, brief. É a referência de qualidade: leia seu README.md, depois pelo menos Stakes.tsx e Setting2.tsx antes de escrever cenas. assets/example-6-tools/ fornece cenas reutilizáveis para uma classificação ou lista em camadas.
Lições já pagas
- Com dois takes, o Scribe transcreveu o segundo: leia
source.urlno resultado e mantenha o take que ele realmente transcreveu. words.jsondo Scribe contém as tags ([softly]) e ":" como palavras: remova-as e mantenha a forma{"words": [...]}emscribe_words.json.- Uma frase antes de "Inscreva-se" deixou a janela vazia:
CtaGuide.tsxagora mostra "Salvar" durante esse tempo. - O som de campainha e as faíscas cobriram a palavra-chave e a punchline (voz a -1,9 dB na palavra-chave): os volumes são reduzidos no template. Ainda verifique as passagens mais apertadas.
- Whisper deriva e comete erros: os timings vêm do Scribe, o texto vem do roteiro (
build_reel.pyalinha os dois). - Um prompt do Whisper contendo "Claude" fez com que ele lesse "clone" como "Claude". Verifique sem prompt, e com timestamps:
-ntpula frases. - Um efeito sonoro em uma palavra-chave do gancho mascara a voz: coloque-o após o final da palavra (lacuna de pelo menos 7 dB, medida).
- Uma cena que para exatamente no final de sua seção corta o carimbo final: as cenas se sobrepõem (
STAGESemReel.tsx), e um carimbo é colocado desde o início da frase. - Uma janela vazia enquanto uma frase anuncia uma lista parece quebrada: coloque slots pontilhados desde o início da frase.
- Números escritos como palavras quebram as páginas de legenda:
build_reel.pymantém "5 ajustes" juntos. - Renderização por GPU faz elementos desaparecerem um quadro em cada três: sempre
GL=swangle CONCURRENCY=1(já emrender_final.sh). - Sem transformação 3D em um vídeo, sem
mixBlendMode, chaves React únicas. - chrome-headless-shell trava:
CHROME_MODE=chrome-for-testing(já nos scripts). - Refazer uma frase após a renderização: mantenha a voz validada, gere o final em uma peça e emende em uma pausa (
references/voice.md). - Na capa, um logotipo de marca reduzido a um símbolo pode ser mal interpretado: as duas barras do ElevenLabs pareciam um botão de pausa, então o nome fica escrito abaixo dele.