Communitygithub.com

cig13zs/hf-kit

Camada HyperFrames com 16 estilos do YouTube medidos, 13 blocos de animação, predefinições de mixagem de som, SFX e bases de humor CC0, gerador de legendas, esqueleto de projeto, portal de licenças para filmagens do YouTube Creative Commons e verificador de renderização que mede um corte em relação às faixas de referência. Use para um vídeo HyperFrames que deve seguir um estilo medido (explicativo, documentário, Shorts facts e assim por diante), ou quando um briefing nomear um. Leia após a habilidade `hyperframes`.

O que é hf-kit?

Este skill é uma extensão para HyperFrames 0.8.77, projetada para criar vídeos no YouTube com estilos medidos e baseados em pesquisa. Ele fornece 16 estilos derivados da análise de 48 vídeos em 16 nichos, incluindo faixas de referência para cortes por minuto, duração do shot, palavras por minuto, LRA, e silêncios, além de alvos mestre de loudness (-14 LUFS, -1 dBTP). O skill inclui ferramentas de scaffolding para projetos, 13 blocos de animação reutilizáveis (como pill-label, chapter-card, number-card, progress-badge, etc.), um gerador de legendas com suporte a formatos como cards, karaokê e speaker, e predefinições de mixagem de som com efeitos SFX CC0 e bases de humor geradas deterministicamente. Ele também possui um verificador de licenças para vídeos do YouTube que garante o uso apenas de conteúdo Creative Commons, evitando violações de direitos autorais, e um verificador de renderização que compara o vídeo final com as faixas de estilo. O skill é útil para desenvolvedores e criadores de conteúdo que desejam produzir vídeos consistentes com práticas comprovadas de engajamento, suportando plataformas como HyperFrames e Python, e requer leitura prévia do skill `hyperframes`.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/cig13zs/hf-kit/tree/HEAD/skills/hf-kit

Perguntar na sua IA favorita

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

Documentação

O que hf-kit faz?

Uma camada sobre HyperFrames 0.8.77. Tudo nele remonta a pesquisa medida: 48 vídeos do YouTube em 16 nichos, com os números em research/. Caminhos abaixo são relativos à raiz do repositório. Leia SPEC.md para os contratos, e siga as regras de composição hyperframes-core.

hyperframes abaixo significa npx [email protected] ou uma instalação local de 0.8.77. Ferramentas Python precisam de Python 3.10+ com numpy e Pillow, além de ffmpeg no PATH.

Fluxo de trabalho

  1. Escolha o estilo. styles/README.md mapeia nicho → id do estilo → blocos, legendas e predefinições de mixagem. O JSON do estilo contém as faixas medidas (cortes/min por segmento, duração do shot, wpm, LRA, silêncios) e o alvo mestre (-14 LUFS, -1 dBTP).

  2. Estruture. python tools/scaffold.py <dir> --format 16:9|9:16 --duration S --style <id> [--blocks a,b]. Ele escreve index.html com os tokens do estilo, fixa hyperframes.json no registro v0.8.77 e copia os blocos para compositions/. Recusa sobrescrever um diretório não vazio.

  3. Blocos. Catálogo em blocks/README.md: pill-label, chapter-card, number-card (limpo ou money), progress-badge, question-card, doc-highlight, film-gate, world-camera, ui-window, tier-board, face-banner-stack (com layout topic-top para uma caixa de tópico arredondada 16:9), zoom-through, blur-swap. Cada um é uma subcomposição com data-composition-variables; passe valores com data-variable-values. examples/<block>/ tem uma demonstração funcional de cada um. Estilize cada bloco com #root simples e seletores descendentes simples. Nunca o composto #root[data-composition-id=...]: ele passa no lint e renderiza em branco.

  4. Legendas. python tools/captions.py words.json --variant cards|karaoke|speaker|keyword|punch --format 9:16 --out compositions/captions.html. A entrada é [{text,start,end,speaker?,class?}] ou JSON de hyperframes transcribe.

  5. Som. sound/MIX.md tem 10 predefinições copiáveis do hyperframes-audio (voz primeiro plana, pausa na virada, silêncio na linha mais pesada, mergulho antes de um clipe, e assim por diante), cada uma nomeando sua linha de origem. sound/sfx/ tem 11 efeitos gerados e sound/SFX.md mapeia eventos para arquivos e níveis. As 7 bases de humor não são commitadas: python sound/gen_bed.py renderiza todas em sound/beds/ a -20 LUFS, e python sound/gen_bed.py --mood <nome> --seconds N --out bed.wav renderiza qualquer duração. Ambos os geradores são determinísticos e a saída é CC0.

  6. Filmagens ou música de fundo do YouTube. python tools/bg_source.py <url> [--download --out assets/ --audio].

    • ACEITAR (exit 0) apenas quando yt-dlp relatar uma licença Creative Commons. Imprime uma linha de crédito para a descrição. Downloads de vídeo precisam de pelo menos --min-height (padrão 1080); --audio não tem piso de altura.
    • REVISAR (exit 3) quando um upload com licença padrão alegar reuso em seu título ou descrição. Um título "sem direitos autorais" é a palavra do uploader. Verifique se o uploader é o criador original e guarde uma captura de tela dos termos.
    • RECUSAR (exit 2) caso contrário.

    Cada decisão é anexada a sources/provenance.jsonl (--log para alterar o caminho). O Content ID ainda pode reivindicar um reupload Creative Commons do trabalho de outra pessoa, então prefira o canal original. Mantenha downloads no assets/ do projeto, nunca em um repositório público.

  7. Verifique antes de renderizar. hyperframes lint <dir> e hyperframes check <dir>; depois hyperframes snapshot <dir> --frames 6 e olhe para a folha de contato. Passar no lint não é uma aprovação visual.

  8. Renderize e meça. hyperframes render <dir> --output out.mp4, depois python tools/check.py out.mp4 --style <id>. Ele imprime cada medida contra a faixa do estilo mais a linha de loudness mestre. É um conselho: uma falha diz que o corte se desviou da referência, e sua própria análise decide se isso importa.

O que a pesquisa diz (versão resumida)

  • Em todos os 16 nichos, a taxa de corte e a loudness não separaram valores atípicos de seus controles. Uma pessoa em risco, o risco declarado nos primeiros segundos, prova na tela e uma resposta mantida sim (hipóteses; veja research/TECHNIQUES.md, "O que não separou valores atípicos de controles").
  • Contagens de cortes secos são pisos. Tempo é não confiável sob narração. O áudio não foi ouvido: as descobertas de som vêm de números R128, espectros e tags de legendas.

Onde as coisas estão

NecessidadeCaminho
Contratos e regrasSPEC.md
Estilos e suas faixas medidasstyles/README.md, styles/<id>.json
Catálogo de blocos e demonstraçõesblocks/README.md, examples/<block>/
Predefinições de mixagem e mapa SFXsound/MIX.md, sound/SFX.md
Biblioteca de técnicas, tabela de humorresearch/TECHNIQUES.md
Folhas de DNA de nicho com listas de rouboresearch/niches/<niche>.md
Um cartão e um arquivo de dados por vídeoresearch/cards/<niche>/<id>.md, research/data/<id>.json
Capítulos de conhecimento (música e humor, design de som, VFX e movimento)research/knowledge/

Habilidades Relacionadas