Communitygithub.com

Vídeo explicativo: do material bruto ao YouTube agendado

Uma skill maestro de YouTube para Claude Code que roda todo o pipeline com aprovação em cada etapa: paper edit, punch-ins, reels, capas, textos animados, thumbnail e título, e depois agenda os reels e o vídeo longo pelo Metricool.

O que é Vídeo explicativo: do material bruto ao YouTube agendado?

Receita Vídeo explicativo, passo 3 (publicar e distribuir), de beachyphotoandfilm-arch/video-skills. Digite /youtube ou entregue o material bruto. Há um arquivo de estado por vídeo, então dá para parar em qualquer ponto e continuar depois. Etapas: paper edit no DaVinci Resolve cortando takes errados e silêncios, enquadramentos punch-in, reels verticais com gancho e legendas, uma capa exclusiva por reel, reels agendados no Instagram, TikTok e YouTube Shorts via Metricool, textos animados sincronizados com a sua fala, thumbnails 1920x1080 com ideias de título e, por fim, o upload agendado no YouTube. Nunca roda duas etapas sem o seu sim. Requer macOS, Resolve, ffmpeg e whisper.cpp.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/beachyphotoandfilm-arch/video-skills/tree/HEAD/skills/youtube

Perguntar na sua IA favorita

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

Documentação

Condutor do YouTube

Um comando em vez de vários skills para lembrar. Você gravou as filmagens; isso conduz tudo até os ativos publicados, parando para um 'sim' em cada portão.

Configuração: preencha estes campos

espaço reservadoo que é
<YOUR_FOOTAGE_DRIVE>Onde as filmagens brutas estão, por exemplo, /Volumes/<nome do drive>
<YOUR_VIDEO_LIBRARY>Onde os arquivos finalizados são mantidos, ex., ~/Videos/Finalizados
<YOUR_LUT>O LUT aplicado a cada clipe, ex., MyCamera_Log_to_Rec709.cube (ou nenhum se você usar um perfil padrão)
<YOUR_TIMEZONE>, <YOUR_POST_TIME>Horário de agendamento padrão (veja schedule-social)

Nunca execute duas etapas sem aprovação entre elas. Cada etapa precisa do gosto do criador, e uma etapa 1 errada estraga tudo que vem depois.

Estado

Um arquivo por vídeo: drafts/videos/<slug>.json.

{"slug":"meu-video","title":"título do meu vídeo",
 "footage":"<YOUR_FOOTAGE_DRIVE>/filmagens do meu vídeo",
 "work":"/tmp/.../paperedit",
 "project":"Meu Vídeo - Paper Edit",
 "stages":{"paper-edit":{"status":"approved","at":"YYYY-MM-DD","note":"v2, 10:16"},
           "punch-ins":{"status":"approved","at":"YYYY-MM-DD"},
           "reels":{"status":"approved","at":"YYYY-MM-DD"},
           "covers":{"status":"todo"},
           "schedule-reels":{"status":"todo"},
           "overlays":{"status":"pending"},
           "thumbnail":{"status":"todo"},
           "schedule-youtube":{"status":"todo"}}}

Status: todo → running → review (aguardando o criador) → approved | skipped.

Ao "continuar o vídeo ": leia o arquivo de estado, informe onde está em uma linha e retome na primeira etapa que não estiver approved ou skipped. Em um novo vídeo: crie o arquivo de estado primeiro, depois comece na etapa 1.

Mantenha o diretório de trabalho estável entre as etapas. Transcrições, segments-v2.json e cuts.json são reutilizados por todas as etapas posteriores, então não os espalhe.

As etapas

#etapaskillcriador aprovasaída
1Edição de papelpaper-edita lista de cortes, depois a timelinePaper Edit v1 + v2 (apertado) em um novo projeto do Resolve
2Close-upspaper-edit passo 9o plano de enquadramentoPaper Edit v3 (punch-ins)
3Reelsvideo-reelso gancho de cada reeltimelines verticais, finalizado: filmagens V1, cartão de gancho V2, legendas V3
3bCapas de reelsreel-coversa prova em grade, cada mancheteuma capa única 1080x1920 por reel no seu estilo de capa, comprovada em visualização de grade com o ícone do reel
4Agendar reelsschedule-socialcada legenda e horárioIG + TikTok + Shorts no calendário do Metricool, diariamente a partir de amanhã, cada post carregando sua capa
5Sobreposiçõesvideo-overlaysa lista de clipes antes da renderizaçãoclipes .mov transparentes + FCPXML
6Miniatura + títulovideo-thumbnailsqual variantePNGs 1920x1080 + uma prova em tamanho de telefone + títulos
7Agendar YouTubeschedule-socialo título, miniatura e descriçãoo vídeo longo no calendário do Metricool

Reels vêm antes das sobreposições propositalmente. Eles não precisam das animações e precisam das mãos do criador (corte, renderização) antes de postar. Colocá-los cedo significa que eles estão sendo publicados enquanto as sobreposições ainda estão sendo renderizadas. Sobreposições são a etapa mais lenta e a que menos se espera.

Gravações de eventos ao vivo ou áudio separado (um lapela ou gravador em uma pasta audio/ ao lado dos clipes): execute lapel-sync antes da edição de papel ou reels. Isso torna o áudio do lapela o áudio do clipe que todas as etapas posteriores leem.

Carregue o skill da etapa antes de executá-lo. Este arquivo é a ordem de execução e os portões; cada skill contém o 'como fazer' real.

Portões: o que mostrar e o que perguntar

  1. Edição de papel. Mostre a duração bruta, v1, v2, contagem de cortes e os cortes notáveis com motivos. Pergunte: "Tem algo aqui que você queira manter?" Após o criador revisar: "O corte está fechado?" Nada a jusante pode começar até que esteja, porque sobreposições e reels estão ancorados nos tempos das palavras.
  2. Close-ups. Construa v3 a partir do v2 cortado do criador (segments-locked.json), depois copie a correção de cor do v2 para v3 sem ser solicitado (passo 9 da edição de papel). Se o vídeo fala sobre um projeto real, pergunte se há fotos e coloque-as na V2 como cartões de fundo branco (passo 11 da edição de papel). Mostre a contagem de mudanças, aproximadamente uma a cada 20-40s, e a lista de linhas que recebem um close-up. Pergunte: "Elas caem nos momentos certos?"
  3. Reels. Se o vídeo tem um CTA com palavra-chave de comentário, grave um clipe de CTA do reel separado ("Comente PALAVRA-CHAVE abaixo e eu enviarei..."). Se o arquivo de estado tem reel_cta, termine cada reel desse vídeo com esse clipe (pontos de entrada/saída no cta.json vinculado, obtidos de silencedetect, porque o whisper pode desviar até 2s em clipes curtos). A palavra-chave do comentário também vai na legenda. Mostre cada reel como linha de gancho + o que vem depois, mais a redação do cartão de gancho de texto. Pergunte: "Esses ganchos param a rolagem?" Menos e melhores batidas é melhor. Em seguida, passe a bola: o criador corta e renderiza. Legendas e cartões de gancho já estão na timeline. Inicie as sobreposições enquanto isso acontece. Ninguém precisa ficar ocioso. 3b. Capas de reels. Não pule esta etapa por padrão. Assim que os ganchos dos reels forem aprovados, diga "A seguir: capas para esses reels" e inicie reel-covers. Não precisa das renderizações, apenas dos ganchos e da transcrição, então faça isso durante o corte. Mostre _grid-phone.png (com o ícone do reel desenhado) mais cada manchete. Pergunte: "Essas capas param a rolagem?" Itere até aprovação, depois registre-as. Se o criador disser para pular, marque como skipped e diga que os reels sairão com um quadro automático.
  4. Agendar reels. Acionado por "agendar os reels" assim que as renderizações estiverem prontas. Mostre cada legenda e cada slot, cada um ao lado de sua capa aprovada. Pergunte: "Pode agendar estes?" Se covers não estiver approved ou skipped, pare e execute a etapa 3b primeiro.
  5. Sobreposições. O estilo padrão da casa é texto na cena ao lado ou atrás da cabeça do apresentador, nunca sobre o rosto (veja video-overlays). Mostre a lista de clipes proposta com timecodes e dicas antes de renderizar (a renderização leva ~10s de tempo real por segundo de sobreposição). Pergunte: "Algum desses você cortaria, e algum momento que eu perdi?"
  6. Miniatura + título. Mostre a folha de prova em tamanho de telefone, não as renderizações em tamanho real, além de 4-6 títulos com contagens de caracteres. Pergunte: "Qual deles, e você quer palavras diferentes?"
  7. Agendar YouTube. Depois que as sobreposições estiverem na timeline e o vídeo final for exportado. Mostre o título, a miniatura escolhida e a descrição completa. Pergunte: "Pode agendar isso?"

Regras de agendamento, ambas as etapas 4 e 7:

Regra de slot padrão: comece no dia seguinte ao de hoje, um post por dia às <YOUR_POST_TIME> <YOUR_TIMEZONE>, e pule qualquer dia que já tenha conteúdo (rascunhos contam). Obtenha getScheduledPosts antes de escolher os slots; nunca agende dois posts no mesmo dia.

Legendas saem limpas. Texto finalizado sempre, sem texto "TESTE DE RASCUNHO". Marque testes com draft: true + autoPublish: false e entregue o link do planejador.

Regras de ordem de execução

  • Corte antes dos gráficos, sempre. Os tempos das sobreposições estão ancorados nas palavras faladas; qualquer novo corte desloca todas elas. Se o corte mudar após a etapa 5, regere o FCPXML (segundos), mas não re-renderize os clipes.
  • Reels vêm das filmagens brutas, nunca do corte com sobreposições. As animações são feitas para o YouTube, e é por isso que os reels podem ser executados antes das sobreposições.
  • Duas entregas, e elas se sobrepõem. Após a etapa 3, o criador está cortando reels; após a etapa 6, eles estão colocando sobreposições na timeline e exportando. Ambos são lentos para eles e livres para você, então coloque o trabalho da próxima etapa na fila em vez de esperar.
  • O LUT vai em tudo (<YOUR_LUT>). Se a câmera grava em perfil log, os quadros sem correção parecem cinzentos, incluindo as imagens das miniaturas.
  • Qualquer coisa que toque no Resolve: execute bash .claude/skills/paper-edit/scripts/ensure_resolve.sh primeiro. Ele abre o Resolve se estiver fechado e espera pela API, então não peça ao usuário para abri-lo. Ainda precisa de External scripting: Local e um novo projeto para que o trabalho existente nunca esteja em risco. Nomeie-o <Vídeo> - YYYY-MM-DD para que o mais recente seja óbvio; dois projetos com o mesmo nome causam confusão sobre qual é o atual.
  • Arquivos finalizados vão para <YOUR_VIDEO_LIBRARY>/<Vídeo> YYYY-MM-DD/, arquivos de trabalho permanecem em ~/Movies/<video>-*. Duas renderizações de cada vídeo: uma passagem de entrega e um mestre de arquivo de 60 Mbps, mais as timelines .drt/.drp. Veja schedule-social para o layout. O criador nunca deve ter que procurar em ~/Movies por algo publicável, e nada é gravado solto na Área de Trabalho.
  • A exportação 4K do vídeo longo (opcional): duplique YouTube Final como YouTube Final 4K, defina a timeline dessa cópia para 3840x2160 (useCustomSettings 1 + timelineResolutionWidth/Height) e renderize H.264 em VideoQuality 40000 em <Video>/YouTube/. O zoom e os close-ups sobrevivem à mudança de resolução, e os clipes de sobreposição 1080 são dimensionados de forma limpa. Inicie a renderização e retorne; nunca espere dentro de execute_resolve_code. Um vídeo de 6:30 pode levar cerca de uma hora em 4K com sobreposições na cena, e a chamada MCP morre após 30 minutos, o que também bloqueia todas as chamadas posteriores até o fim da renderização. Em vez disso, observe o arquivo do bash: o MP4 só se torna legível (ffprobe bem-sucedido) depois que o Resolve termina. Um projeto renderiza por vez, então inicie a renderização do próximo vídeo após o arquivo anterior ser gerado. Cerca de 1,9 GB a cada 6,5 minutos.
  • Publicar é a única etapa irreversível. Tudo antes dela pode ser reconstruído em minutos; um post que sai não pode ser despublicado daqui. Trate os portões nas etapas 4 e 7 como os estritos.

Tempo e custo

etapatempo realnotas
Edição de papel~2 min de transcrição + tempo de leituraa única etapa com custo real de pensamento, ~5k tokens
Close-upssegundos
Reels~1 minlegendas incluídas
Sobreposições~10 min de renderização de corte limpo, depois ~15-20s por 1s de sobreposiçãoo estilo na cena mascara cada quadro: ~48 clipes podem levar ~1 hr; precisa do drive de filmagens montado; execute durante o corte do reel
Miniatura~1 min4-6 variantes
Agendamento~2 minsalto de upload + gravações no Metricool

Relacionados

  • paper-edit, lapel-sync, video-overlays, video-reels, reel-covers, video-thumbnails, schedule-social
  • Opcional: uma referência de títulos (regras de comprimento e CTR) e um plano de tópicos de vídeo, se você os mantiver

Individual skills in this repo

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

beachyphotoandfilm-arch/video-skills

Sync camera footage to a separate lapel or field-recorder track (e.g. Tascam DR-10L and similar) and lay it up in DaVinci Resolve. Stitches the recorder's split files, finds each clip's exact place in the audio by matching words then waveforms, cuts one lapel slice per clip so every later skill works unchanged, checks for clipping, and builds a synced timeline in a new Resolve project. Trigger on "sync the lapel", "sync my audio", "line up the recorder", "I used a lav", or any shoot with a separate audio folder (live talks, events, workshops). Run it before paper-edit or video-reels.

beachyphotoandfilm-arch/video-skills

Turn raw talking-head footage into an assembled rough cut inside DaVinci Resolve. Pulls the clips off your footage drive, transcribes them locally, removes failed takes, restarts, asides and dead air, then creates a new Resolve project with two paper-edit timelines ready for your fine trim. Trigger on "paper edit", "cut my raw footage", "make a rough cut", "clean up this video", or when the user points at a folder of raw camera files for a YouTube video.

beachyphotoandfilm-arch/video-skills

Design a unique Instagram cover for each reel in your house style. Reads what the reel is about, writes a short hook headline, picks one of your own photos from a tagged photo library, lays it out like your existing covers, and proofs it in grid view at phone size. Renders locally, never with AI image generation. Can be called by a scheduling skill before reels are scheduled. Trigger on "make covers", "reel covers", "cover photo for this reel", "design the IG covers".

beachyphotoandfilm-arch/video-skills

Render finished reels out of DaVinci Resolve, write captions in the creator's voice, attach a custom Instagram cover from reel-covers, and schedule them to Instagram, TikTok and YouTube Shorts through Metricool. Handles the Drive upload hop, collision checks against the existing calendar, and cleanup. Trigger on "schedule the reels", "post these", "put these on the calendar", or after reels are approved.

beachyphotoandfilm-arch/video-skills

Build animated brand overlays (motion graphics) for a talking-head video, timed to the speaker's exact words, plus a DaVinci Resolve import file. House style is in-scene type (text beside and behind the speaker's head) plus diagrams. Transcribes the rough cut locally, picks the moments, renders transparent .mov clips, and writes an FCPXML that drops every clip onto the timeline already in position. Trigger on "make animations for this video", "add overlays/motion graphics", "animate this", "b-roll graphics for my YouTube video", or when the user shares a rough cut and asks for graphics.

beachyphotoandfilm-arch/video-skills

Cut vertical Instagram reels out of a long-form talking-head video, hook first. Picks the strongest standalone moments from the transcript, opens each reel on its punchiest line, builds vertical timelines in DaVinci Resolve framed on the speaker's face with the LUT applied, and finishes them: a hook (a held text card, or a word-by-word "build" hook with punch-in) and burned-look captions on V3; this-or-that reels get product graphics and a comment-keyword CTA card. You trim and render, nothing to import. Trigger on "make reels", "clip this for Instagram", "cut some verticals", or after a YouTube video is cut.

beachyphotoandfilm-arch/video-skills

Design YouTube thumbnails and titles for a talking-head video. Pulls graded full-res frames out of the raw footage, renders brand-styled variants in two proven layouts, and proofs them at phone size where the click actually gets decided. Trigger on "make thumbnails", "thumbnail for this video", "title and thumbnail", or after a video is cut.

Habilidades Relacionadas