O que storyboard faz?
Um storyboard é o plano de filmagem e o plano de edição para um vídeo. Ele está pronto quando o usuário pode lê-lo de cima a baixo, filmar cada sessão e entregar cada plano para a edição (ou para o Claude) com uma imagem clara do que aparece na tela, o que o texto diz e qual é o som.
Mantenha enxuto. Planos e sessões, nada mais. Nenhum diagrama de arco, sem transições por plano, sem kit de marca, sem checklist. Se o usuário quiser mais, ele pedirá.
Primeira execução: configuração guiada
Execute a configuração quando ~/.claude/storyboard-profile/profile.md ainda não existir, logo após
a habilidade ser instalada, ou quando o usuário pedir para configurá-la ou reaprender seu estilo. Guie-o
um passo de cada vez: diga para que serve o passo em uma frase, faça-o e
espere onde diz para perguntar. Mantenha cada mensagem curta; a maioria das pessoas fazendo isso são criadores,
não desenvolvedores.
-
Boas-vindas. Uma mensagem curta: o que a habilidade faz (roteiro entra, um quadro para cada linha sai, então o Claude constrói os gráficos a partir disso) e que a configuração leva cerca de cinco minutos. Depois diga que a primeira coisa que você precisa é ver os vídeos deles.
-
Verifique as ferramentas. Procure por Python 3, Google Chrome (ou Chromium / Edge) e
ffmpeg.yt-dlpé um bônus para links. Para qualquer coisa faltando, dê o comando de instalação para o sistema deles (por exemplobrew install ffmpegno Mac,winget install ffmpegno Windows) e ofereça-se para executá-lo. Não prossiga até que Chrome e ffmpeg funcionem. -
Pergunte sobre eles. Uma mensagem, respondida em uma linha cada: seu nome de usuário e plataformas, sobre o que é o conteúdo, quanto tempo seus vídeos geralmente duram e como eles os finalizam (uma palavra-chave de comentário, seguir, link na bio).
-
Peça os vídeos deles. Este é o passo importante, então explique o porquê: os storyboards deles devem se parecer com os vídeos deles, não com um modelo. Peça 3 a 5 vídeos publicados que melhor mostrem o estilo deles, idealmente incluindo um com gravações de tela ou gráficos se eles fizerem isso. Eles podem arrastar os arquivos para o chat (isso cola o caminho) ou colar links. Baixe links com
yt-dlpse estiver instalado; se um link não baixar, peça o arquivo. Coloque tudo em~/.claude/storyboard-profile/source/. -
Estude os vídeos. Para cada um:
- Quadros:
ffmpeg -i v1.mp4 -vf "fps=1,scale=360:-2" -q:v 4 source/v1_%03d.jpg, depois olhe para eles. - Cortes:
ffmpeg -i v1.mp4 -vf "select='gt(scene,0.1)',showinfo" -f null - 2>&1 | grep -o "pts_time:[0-9.]*"fornece os tempos de corte, então você obtém a duração média do plano. Cortes rápidos em um talking head mal mudam a imagem e passam despercebidos, então verifique a contagem em relação aos quadros de 1 fps. - Palavras: se
whisper(ou outro transcritor) estiver instalado, transcreva-o. Se não, leia as legendas embutidas nos quadros, ou peça para eles colarem o roteiro.
Escreva o que você realmente vê, não suposições: a mistura de tipos de plano (quanto é rosto vs tela vs b-roll), duração média do plano, enquadramento (médio ou close, onde eles sentam, o fundo), como os primeiros dois segundos prendem, o texto na tela (peso da fonte, caixa, cores, estilo de destaque, onde fica), o estilo da legenda, as cores principais, gráficos ou sobreposições que se repetem, hábitos de som e como o CTA termina.
- Quadros:
-
Escolha o still do rosto deles. Escolha um quadro limpo deles falando para a câmera sem legenda embutida, corte-o para 9:16 (
ffmpeg -ss <t> -i v1.mp4 -frames:v 1 -vf "crop=ih*9/16:ih,scale=540:960" face.jpg) e salve-o como~/.claude/storyboard-profile/face.jpg. Todo plano de rosto o usará daqui em diante. -
Escreva o perfil. Salve
~/.claude/storyboard-profile/profile.mdcom seções para Criador (passo 3), Planos (mistura de tipos, duração média, enquadramento), Gancho, Texto na tela, Legendas, Cores, Som, CTA e Gráficos recorrentes. Depois escreva~/.claude/storyboard-profile/theme.css, substituindo as variáveis do kit pela aparência deles::root { --ink: #111; --accent: #ff5a1f; --on-accent: #fff; --bg: #f4f1ea; --grid: rgba(0,0,0,.05); --font: "Montserrat", sans-serif; }Use uma fonte que eles tenham instalada; se a deles não estiver, escolha a mais próxima que esteja.
-
Mostre a eles e confirme. Construa um quadro de exemplo (o estilo do título deles sobre o still do rosto), renderize-o, mostre-o com um resumo de três linhas do perfil e pergunte o que está errado. Corrija até que eles digam que parece com o conteúdo deles.
-
Finalize. Diga a eles que a configuração está concluída e o que fazer a seguir: "Cole um roteiro e diga storyboard this." Eles podem reexecutar a configuração sempre que o estilo deles mudar.
Se eles preferirem pular a configuração, faça o storyboard com a aparência padrão do kit e ofereça a configuração novamente no final.
O formato
Cada plano tem:
| campo | o que contém |
|---|---|
type | face (falando para a câmera), split (tela em cima, rosto em uma caixa arredondada abaixo), screen (uma gravação de tela), graphic (construído na edição), b-roll (filmagem do mundo real) |
vo | as palavras exatas do roteiro faladas sobre este plano |
on_screen_text | texto queimado no quadro, geralmente em branco |
edit_note | uma ou duas linhas: o que está na tela, o que se move, o enquadramento |
sfx | um som, geralmente em branco |
thesis | true em exatamente um plano |
status | real (o quadro É a filmagem), stand-in (mostra a intenção), to-capture (nada ainda) |
O tempo vem do VO a 3,4 palavras por segundo. Nunca defina manualmente.
Sessões agrupam os planos por onde são filmados: label, detail (o que preparar) e
shots (números dos planos).
Passos
-
Leia o perfil e obtenha o roteiro. Leia
~/.claude/storyboard-profile/profile.mde siga-o: a duração dos planos, a mistura de tipos de plano, o estilo do texto, o CTA. Onde ele discordar dos padrões abaixo, o perfil vence. Ainda não tem perfil? Ofereça a configuração primeiro. Peça o roteiro se ele não estiver na conversa ou em um arquivo, e observe a duração alvo (a duração usual do perfil se eles não disserem). Não edite o roteiro. Se uma linha parecer errada, diga e deixe o usuário corrigi-la. -
Divida o roteiro em planos, palavra por palavra. Juntando de volta, os campos
vodevem ser iguais ao roteiro exatamente. Não reformule, corte ou adicione uma linha.- Corte onde a imagem muda, não no final das frases. Uma vírgula é um bom ponto de corte.
- Mire em 2 a 6 segundos por plano (7 a 20 palavras). Acima de cerca de 8 segundos, divida-o, a menos que uma imagem contínua realmente carregue a linha.
- O plano 1 tem o rosto do apresentador (um plano
faceousplit). Um rosto no primeiro segundo prende as pessoas. - Marque exatamente um plano
thesis: a linha que diz sobre o que é o vídeo. - Último plano: o rosto do apresentador dizendo a chamada para ação. Se houver uma palavra-chave de comentário, ela é falada e vive nas legendas, não como uma grande pílula na tela.
- Varie o tipo. Sem três planos
faceconsecutivos. Usefacepara afirmações, apartes e o CTA; usescreenpara qualquer coisa que está sendo mostrada.
-
Preencha os campos com moderação.
on_screen_text: título do plano 1, números de lista (01 SCRIPT) e no máximo um golpe de efeito. Em branco em todos os outros lugares; as legendas carregam o resto.edit_note: o que está na tela, o que se move e o enquadramento (médio ou close). Coloque dicas de privacidade aqui também: desfoque e-mails, corte caminhos de arquivo que mostrem um nome de usuário.sfx: dois ou três em todo o vídeo, apenas onde algo acontece (um ping na abertura, um impacto quando algo vai ao ar).
-
Agrupe os planos em sessões por onde são filmados, não pela ordem dos planos.
- Rosto: uma sessão para cada plano de rosto mais a metade do rosto de cada split.
- Telas: uma sessão por aplicativo ou sessão de ferramenta, usando o mesmo projeto real o tempo todo.
- Fora da mesa: apenas se um plano b-roll precisar.
detail: o que preparar (qual projeto abrir, o que manter em execução, o que limpar da tela primeiro).
-
Escreva
storyboard.jsonem uma pastastoryboard/<video-slug>/no diretório de trabalho do usuário (pergunte se há um lugar melhor):{ "title": "IA edita meus vídeos", "target_seconds": 50, "shots": [ {"type": "face", "vo": "Meus últimos dois vídeos foram todos editados pelo Claude.", "on_screen_text": "CLAUDE EDITA MEUS VÍDEOS", "edit_note": "Plano médio, título segura 4s.", "sfx": "", "thesis": false, "status": "to-capture"} ], "sittings": [ {"label": "Rosto", "detail": "Mesma camisa e luz para cada linha de rosto.", "shots": [1]} ] } -
Construa um quadro para cada plano (próxima seção) como
frames/f01.html,frames/f02.html, e assim por diante. O número é a posição do plano. -
Renderize:
python3 <pasta desta habilidade>/kit/render.py storyboard/<video-slug>Ele renderiza
frames/out/fNN.pnga 540x960 com Chrome headless, umframes/out/contact-sheet.jpgeboard.html: cada quadro ao lado de seu VO, texto, nota de edição, som e tempo, mais as sessões. Ele imprime o tempo de duração e os segundos de rosto vs tela. -
Verifique a folha de contato, depois corrija e re-renderize: texto sobre um rosto, sobreposições, texto em zonas seguras, qualquer coisa privada.
-
Relate brevemente: número de planos, tempo de duração vs a duração alvo, segundos de rosto vs tela e o que ainda precisa ser capturado. Abra
board.htmlpara o usuário.
Quadros
Use a fonte mais real que você conseguir, nesta ordem:
-
Material real. Uma captura de tela do site ou aplicativo real que o plano apresenta (Chrome headless ou Playwright, 1440 de largura para desktop, 390 para mobile), ou um still do próprio vídeo do usuário (
ffmpeg -ss <time> -i clip.mp4 -frames:v 1 still.jpg). Coloque as imagens na pastaframes/e referencie-as pelo nome do arquivo. -
Quadros construídos. Escreva o quadro como um fragmento de corpo HTML usando as classes em kit/frame-kit.css.
{{face}}em um fragmento se tornaframes/face.jpgse existir, senão o still do rosto da configuração, senão uma silhueta neutra. Otheme.cssda configuração reestiliza automaticamente cada quadro com as cores e fontes deles.classe use para .fo wrapper do quadro, sempre o elemento externo .hltítulo no topo, <em>em uma palavra-chave.lblcom.n+.tum rótulo de lista numerada ( 01 SCRIPT).facerosto em quadro inteiro (um <img src="{{face}}">).faceboxa caixa de rosto em um plano split.termum terminal Claude Code ( .pprompt,.toolchamada de ferramenta,.ok,.dim).chat+.bub+.viduma mensagem de chat do agente, opcionalmente com um vídeo .shotum cartão de captura de tela ( <div class="shot"><img src="..."></div>).tbluma tabela de dados ( .hcabeçalho,.rlinhas,.r.newuma nova linha).bigum grande golpe de efeito .roomum placeholder de b-roll com uma legenda Defina a posição vertical com um
style="top:..px"inline. Exemplo de fragmento:<div class="f"> <div class="lbl"><span class="n">01</span><span class="t">SCRIPT</span></div> <div class="term" style="top:200px"> <div class="bar"><i></i><i></i><i></i></div> <div class="p">escreva um roteiro de 45 segundos sobre ...</div> <div class="ok"> ✓ script.md</div> </div> <div class="facebox"><img src="{{face}}"></div> </div> -
Simule com dados reais quando a tela estiver atrás de um login que você não consegue acessar. Não faça login em nome do usuário. Construa a tela a partir de números reais e marque-a como stand-in.
Regras dos quadros:
- Zonas seguras: mantenha o texto fora dos 20% inferiores e dos 12% direitos (a barra de like e comentário), e mantenha os 8% superiores limpos. As posições do kit já respeitam estas.
- Estilo do título deles: siga as anotações de texto na tela do perfil (caixa, peso, como
eles destacam uma palavra). O padrão é maiúsculo pesado com uma palavra-chave em
<em>. Sobre um rosto em quadro inteiro, o kit torna o tipo branco com uma sombra suave. - Privacidade: nenhum caminho de arquivo com nome de usuário, e-mails, chaves de API ou conteúdo de
.envem nenhum quadro. Use IDs falsos em tabelas.
Usando para construir o vídeo
Assim que o storyboard for aprovado, ele é o prompt. Construa os gráficos um plano de cada vez: "Construa o plano 4 do storyboard como um gráfico em movimento 9:16: combine o quadro, o texto na tela e a nota de edição." A primeira versão nunca está certa; coloque-a na edição, compare-a com o quadro e vá e volte até que corresponda.