Communitygithub.com

JaviMaligno/agilabs-video-studio

Transforme um artigo de blog publicado em um curto vídeo explicativo vertical narrado e animado (30-60 s, 1080x1920) com a marca AGILabs, renderizado localmente com Remotion.

O que é agilabs-video-studio?

Esta skill (JaviMaligno/agilabs-video-studio) orquestra todo o pipeline de transformação de um artigo de blog em um vídeo explicativo vertical animado e narrado, no formato curto (30-60 segundos, 1080x1920), com a identidade visual da AGILabs. Utiliza o Remotion para renderização local e depende de três skills auxiliares: `explainer-script` para roteirização, `explainer-animation` para a linha do tempo e componentes visuais, e `narration` para síntese de voz (TTS com Cartesia e fallback Kokoro) e qualidade de áudio. O fluxo de trabalho é rigoroso: inicia com a seleção do artigo, seguida pela escrita do roteiro (com verificação de fatos), uma pausa para aprovação do roteiro, criação da pasta do projeto a partir de um template, construção da linha do tempo, linting, verificação de fatos documentada, narração, inspeção visual de frames estáticos, renderização final e entrega. É indicada para uso em plataformas como Claude Code, Cursor e Codex, sempre que for solicitado criar um vídeo, reel, short ou explainer a partir de um artigo ou post de blog, ou para re-renderizar um vídeo já existente que tenha sido criado com essa skill (pasta contendo video.config.mjs e src/timeline.ts).

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/JaviMaligno/agilabs-video-studio/tree/HEAD/skills/article-video

Perguntar na sua IA favorita

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

Documentação

Vídeo de artigo

Orquestra todo o caminho de um artigo até um MP4 finalizado. As outras skills detêm os detalhes; carregue-as na etapa em que forem necessárias:

  • explainer-script: escrever o roteiro e escolher um visual por cena.
  • explainer-animation: o catálogo de componentes, a linha do tempo, componentes sob medida, imagens estáticas.
  • narration: TTS (Cartesia, fallback Kokoro), pronúncia, QA de áudio.

O projeto Remotion vive na pasta template/ do plugin (${CLAUDE_PLUGIN_ROOT}/template quando instalado como plugin; ao lado de skills/ no repositório do plugin).

Inegociáveis

  • Verificação de fatos. Cada número e cada afirmação, na tela ou falada, é rastreada até uma frase do artigo. Mantenha a tabela em factcheck.md (afirmação, onde aparece, a frase do artigo citada). Os números são exibidos exatamente como o artigo os escreve: mesmo arredondamento, mesmas unidades, mesmo "14/20" em vez de "70%". Uma divergência é corrigida na linha do tempo, nunca no artigo. A verificação de fatos cobre a narração e os números e afirmações mostrados na tela, nada mais. Os visuais são escolhidos pelo impacto, não como uma reprodução literal do experimento: uma cena ilustrativa (dados reais reproduzidos livremente, marcadores colocados para clareza, um mecanismo estilizado) é aceitável, porque o rigor está no artigo e em seu repositório.
  • Voz. A narração fala como o artigo é escrito: primeira pessoa ("Eu executei...", "Eu descobri..."), com afirmações não mais fortes que as do artigo. Se o artigo usa linguagem cautelosa ("nesta configuração", "nestas 20 execuções"), o roteiro também usa. Nenhum wording mais contundente que a fonte.
  • Marca. Apenas AGILabs: o selo AGILabs e javieraguilar.ai. Nenhum nome pessoal em lugar nenhum, nem nos cards, no pôster, nas legendas ou nos metadados do arquivo.
  • Portão de aprovação. Nada é construído antes de o roteiro ser aprovado.

Fluxo de trabalho

  1. Escolha o artigo. Use o que for nomeado. Se nenhum for nomeado, leia os artigos publicados e proponha 2-3 candidatos, cada um com seu título, uma frase de gancho, o número-chave (citado) e uma ideia visual. Dê preferência a artigos com um experimento, um número claro e um mecanismo que possa ser desenhado. Deixe a pessoa escolher.

  2. Escreva o roteiro com explainer-script: as falas da narração (EN, ES opcional), uma ideia visual por cena mapeada a um componente da biblioteca ou marcada como "sob medida", e a frase de origem para cada número.

  3. PARE para aprovação. Mostre o roteiro e aguarde. Aplique edições e mostre novamente se solicitado.

  4. Crie a pasta do vídeo. Copie o template sem seus arquivos gerados:

    • dentro do repositório do plugin: examples/<slug-do-artigo>/;
    • a partir de qualquer outro repositório: ./video/<slug-do-artigo>/.
    rsync -a --exclude node_modules --exclude out --exclude public/audio --exclude public/music \
      --exclude .env "${CLAUDE_PLUGIN_ROOT}/template/" "video/<slug-do-artigo>/"
    cd "video/<slug-do-artigo>" && npm ci
    

    Salve o roteiro aprovado como script.md nessa pasta.

  5. Construa a linha do tempo com explainer-animation: defina src/settings.ts (articleTitle, voices, subtitles, targetSeconds, poster) e escreva src/timeline.ts a partir do roteiro. Adicione componentes sob medida se o roteiro os sinalizou, cada um com seu teste frameState.

  6. Lint: npm run lint. Corrija cada achado (duração, velocidade da legenda, componente desconhecido). Execute npm test também quando um componente foi adicionado ou alterado.

  7. Verificação de fatos contra o artigo e escreva factcheck.md (veja acima).

  8. Narre: npm run tts, depois npm run audio-qa (veja narration). Ouça qualquer coisa que ele sinalizar. Execute npm run lint novamente: os comprimentos reais das falas substituem as estimativas.

  9. Imagens estáticas, e observe-as. Renderize uma imagem estática por cena mais uma a cada ~3 s e leia cada PNG. Verifique a marca, as áreas seguras, nada estourando, números iguais ao artigo, e legendas combinando com a batida na tela. Uma compilação limpa não é prova de que um quadro parece correto.

  10. Renderize: npm run render (vertical EN). -- --es para a versão em espanhol, -- --landscape para 1920x1080. Em seguida, execute npm run audio-qa novamente para medir a mixagem (-16 LUFS integrado).

  11. Entregue: npm run deliver escreve o PNG do pôster, o SRT e out/manifest.json. Olhe o pôster. Entregue o caminho do MP4 e o pôster; a publicação é uma etapa separada.

Re-renderizando um vídeo existente

Abra sua pasta, execute npm ci se node_modules estiver faltando, altere src/timeline.ts ou as configurações, depois repita a partir da etapa 6. O TTS apenas regrava as falas cujo texto foi alterado.

Para onde as coisas vão

  • Código fonte (linha do tempo, configurações, componentes sob medida, script.md, factcheck.md) é versionado.
  • out/, public/audio/, public/music/, node_modules/ e todos os .mp4/.wav não são.
  • .env contém a chave do TTS e nunca é versionado ou impresso.

Individual skills in this repo

This repo contains 3 individual skills — each has its own dedicated page.

Habilidades Relacionadas