Geração de Vídeo
Esta Skill é responsável por transformar o conteúdo formal do projeto em entradas executáveis para geração com IA. As fontes de longo prazo continuam sendo video/script/, video/materials/ e video/shots/; os pacotes de geração são apenas derivações para facilitar a geração externa pelo usuário.
Antes de decidir quanto conteúdo uma geração cobre e qual método de geração usar, leia references/planning/GENERATION-STRATEGY.md. Se for necessário gerar uma grande quantidade de materiais / takes em lote, leia também references/planning/BATCHING.md: primeiro valide o baseline com amostras representativas de alto risco e, só depois de estabilizado, expanda os lotes paralelos atuais; não defina um tamanho fixo de lote. Se o vídeo já estiver basicamente correto e precisar de extensão contínua ou modificação local generativa, leia references/transform/EDIT-EXTEND.md e avalie se não seria mais adequado usar pós-produção determinística ou criar um novo take.
1. Identificar Objetos de Geração
Os objetos de geração podem ser:
- Materiais de imagem (personagens, cenários, adereços, produtos) reutilizáveis entre takes;
- O vídeo de um take específico;
- Primeiro quadro, último quadro, storyboard / keyframe, imagens complementares ou áudio exclusivos de um take;
- Referência de voz de longo prazo para um personagem, ou rascunho de trilha sonora / narração para o filme inteiro.
Carregue primeiro o conteúdo formal de origem: para materiais reutilizáveis use a definição de video-materials; para vídeos de take use o SHOT.md de video-shot. Não reconstrua fatos de longo prazo a partir de pacotes temporários ou registros de conversas antigas.
2. Escrever Prompts de Longo Prazo
Antes de escrever prompts de vídeo genéricos para um take, leia references/prompting/VIDEO-PROMPT.md; se o projeto atual já tiver um adaptador de modelo instalado, esse adaptador compilará a intenção genérica do take no prompt final de execução específico para aquele modelo. Todos os adaptadores de modelo obedecem uniformemente ao references/prompting/MODEL-ADAPTER-CONTRACT.md, definindo explicitamente a entrada / modelo / modo, a verificação de capacidade oficial atual, o mapeamento de entrada, as configurações de execução e itens desconhecidos. Se for necessário testar vários modelos em paralelo para o mesmo take, leia references/prompting/MODEL-COMPARISON.md, mantendo o mesmo SHOT.md e numeração contínua dos resultados de geração, sem duplicar diretórios de takes por modelo.
Os prompts para materiais reutilizáveis são salvos no diretório video/materials/ correspondente; os prompts de take são salvos no diretório do take, usando nomes como prompt_v01.md, prompt_v02.md (versões explícitas em número reduzido).
Os prompts devem conter apenas as informações que o modelo de geração atual realmente precisa. As definições internas de take / material podem ser mais completas que o prompt final do modelo; a capacidade do modelo, campos, duração e limites de entrada de referência são determinados pela Skill adaptadora do modelo atualmente carregada ou pela documentação oficial, e não são fixados nesta Skill. Os parâmetros de execução (modelo / ponto de entrada, duração, proporção, ativação/desativação de áudio) e os limites com o registro de projeto de longo prazo seguem references/prompting/EXECUTION-PARAMETERS.md.
Se não houver regras específicas confiáveis para o modelo, mantenha descrições de cena e ação genéricas, claras e verificáveis, e informe ao usuário que prompts genéricos estão sendo usados, sem fingir capacidades específicas do modelo.
3. Selecionar Materiais de Referência
Use o conjunto mínimo suficiente de referências. Cada referência deve responder à pergunta "pelo que ela é responsável por estabilizar": identidade do personagem, vestuário, cenário, estrutura do produto, ação, cinematografia ou outro papel específico.
Não coloque referências irrelevantes na mesma geração para evitar competição de identidade, poluição de estilo ou desvio na estrutura do produto.
4. Organizar Pacotes de Geração
Antes de empacotar formalmente, leia references/planning/GENERATION-PACK.md e execute de acordo com as dependências de pacotes de imagem / áudio / vídeo, nomenclatura de retorno, conjunto mínimo de referências, diretrizes de importação e exclusão; quando for necessário entregar diretamente ao usuário, use references/planning/PACK-TEMPLATES.md para gerar arquivos de tarefa autocontidos. Para inicialização de pacotes no projeto, cópia de arquivos formais, diretórios returns, verificação de status, zip e limpeza segura, priorize a reutilização do script scripts/generation_pack.py nativo desta Skill; não crie scripts de empacotamento temporários para cada projeto; este CLI lida apenas com o ciclo de vida dos arquivos, não com decisões sobre Prompt, responsabilidade de referência ou conclusão de revisão.
Crie um diretório descritivo em .tmp/ do projeto. O pacote mantém uma estrutura simples por padrão:
.tmp/<generation-pack>/
├── README.md
├── <prompt files>
└── materials/
Copie apenas os prompts e materiais de referência necessários para esta geração. O README deve conter pelo menos:
- O objetivo desta geração;
- A ordem de geração recomendada (se houver dependências);
- Quais referências cada item usa;
- O nome do arquivo de retorno;
- Restrições rígidas que o usuário precisa verificar especialmente.
Ao retornar materiais de imagem, use o nome de arquivo de longo prazo correspondente; antes de nomear o retorno de um take de vídeo, use generation_pack.py next-take para consultar o próximo takeNN monotonicamente crescente não utilizado para aquele take, não tente adivinhar o número manualmente nem reiniciar em take01 por trocar de modelo.
5. Importar e Arquivar Resultados
Após o usuário trazer os resultados da geração, primeiro verifique a correspondência dos arquivos e depois coloque os resultados formais nos diretórios de origem correspondentes:
- Materiais reutilizáveis →
video/materials/<category>/; - Resultados de take →
video/shots/<shot-id>/; - Áudio / imagem exclusivos de um take → mesmo diretório do take.
Somente depois que video-review tiver aceitado explicitamente um arquivo de retorno, use generation_pack.py archive --confirm-reviewed para copiá-lo para o local de origem formal; esta ação mantém o arquivo original em returns/ e retorna o SHA-256, sem sobrescrever arquivos formais existentes. Após concluir todo o arquivamento formal e confirmar que o pacote temporário não contém mais informações exclusivas, use cleanup para excluir o pacote de geração.
6. Disciplina de Iteração
Quando a geração falhar, diagnostique primeiro a origem do problema:
- Definição do material / identidade de longo prazo;
- O próprio
SHOT.md; - Expressão do prompt;
- Aleatoriedade da execução do modelo;
- Defeitos que podem ser corrigidos deterministicamente na pós-produção.
A cada tentativa, priorize alterar apenas uma variável principal. Não substitua a localização do problema por prompts cada vez mais longos.
Critérios de Conclusão
O pacote entregue ao usuário deve ser executável diretamente para a tarefa de geração atual; os nomes dos arquivos de retorno devem estar claros; o projeto formal continua sendo a única fonte de longo prazo; após o arquivamento dos resultados, o pacote temporário pode ser excluído com segurança.