Communitygithub.com

MatheusEdson/RepoSkillLaxtro

Use quando o usuário deseja um motion graphic curto, focado em design, onde o movimento é a mensagem: tipografia cinética, contagem de números/estatísticas, gráficos/visualização de dados, logotipos, barras de nome, chamadas, sobreposições sociais, manchetes animadas, pôsteres em movimento ou destaques de páginas capturadas. Geralmente com menos de 10s e até ~30s, sem narração, voz ou ação ao vivo. Pode renderizar para MP4 ou sobreposição transparente. Não é para peças mais longas, com múltiplas cenas, narradas ou de apresentação de marca (use general-video), vídeos narrados de site (website-to-video), explicadores de tópicos (faceless-explainer), promoções de produto (product-launch-video), vídeos de RP (pr-to-video) ou legendas em vídeos existentes (embedded-captions). Quando não tiver certeza se é uma peça curta focada em movimento ou uma peça mais longa/narrada, veja /hyperframes.

O que é RepoSkillLaxtro?

Esta skill é especializada na criação de motion graphics curtos e focados em design, onde o movimento é o principal meio de comunicação. Ideal para peças como tipografia cinética, animações de estatísticas, gráficos de dados, animações de logotipos, barras de nome e sobreposições sociais, com duração geralmente inferior a 10 segundos (até ~30s) e sem narração ou locução. A skill segue uma abordagem 'asset-first', decidindo a estratégia de ativos e buscando material real antes de projetar o plano de cena. O processo é dividido em fases: inicialização, planejamento (com decisão de necessidade de pesquisa), captura de ativos (se necessário), design, construção com reuso de blocos do catálogo, renderização e verificação. A skill oferece suporte a categorias de formulário (sem pesquisa) e categorias orientadas por pesquisa (que buscam conteúdo na web, notícias, tweets ou imagens). O fluxo é altamente estruturado, com artefatos bem definidos e a opção de continuar de diferentes estados, garantindo eficiência e consistência na produção de motion graphics de alta qualidade.

Funciona com~Claude Code~Codex CLI✓Cursor✓Gemini CLI
npx skills add https://github.com/MatheusEdson/RepoSkillLaxtro/tree/HEAD/skills/HyperFrames/motion-graphics

Perguntar na sua IA favorita

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

Documentação

motion-graphics — entrada de despacho

Confirme a rota antes da Etapa 0. Esta skill cria um motion graphic curto, focado em design e sem narração (a mensagem é o movimento; ~abaixo de 10s, sem voz). Uma peça mais longa, com várias cenas ou narrada → /general-video; um vídeo narrado de um site → /website-to-video; um explicador de tópico → /faceless-explainer; uma promoção de produto → /product-launch-video; legendas em vídeo existente → /embedded-captions. Fora do escopo: dados ao vivo / em tempo de renderização, ou filmagens que não podem ser capturadas. Não tem certeza se é focado em movimento ou narrado? Leia /hyperframes primeiro.

Um motion graphic curto focado em design. Asset-first: decida a estratégia de ativos e obtenha material real antes de projetar a cena, depois projete a cena em torno do que você tem e, em seguida, componha reutilizando as capacidades do catálogo. Todos os artefatos vão para PROJECT_DIR = videos/<nome-do-projeto>/ (criado na Etapa 0); todos os caminhos abaixo são relativos a ele.

FaseExecuçãoArtefato primárioFluxo detalhado
initBashhyperframes.jsonEtapa 0
plansubagente — decidir pesquisa? + classificar + estratégia de ativosshot-plan.json (rascunho: categoria, consultas asset_needs, briefing)agents/director.md (Parte 1)
fonte ◇Bash — resolver para uso de mídia (pule se asset_needs estiver vazio)assets/ + assets/index.mdphases/source/guide.md
designsubagente — projetar cena em torno dos ativos resolvidosshot-plan.json (final: bloco(s) + layout + movimento + posições)agents/director.md (Parte 2)
buildsubagente — composição com reuso primeirocompositions/index.htmlagents/builder.md
renderBash — hyperframes render (MP4, ou --format webm/mov para sobreposição)renders/video.mp4Etapa 5
verificarBash — lint / inspect -> subagente de reparo em caso de falha(correções no local)agents/finalize.md

◇ fonte é executado apenas quando a categoria escolhida declara ativos. Categorias puramente de código/texto (ex.: kinetic-type, a maioria de charts/stat) têm asset_needs: [] e pulam direto do plano para o design.

Categorias — divididas pela decisão de pesquisa

A primeira decisão do plan é: isso precisa de uma pesquisa? Essa bifurcação divide as categorias em dois grupos; em seguida, a categoria específica é escolhida — para as orientadas por pesquisa, pelo tipo de conteúdo que a pesquisa retorna. Cada categoria é um categories/<id>/module.md (suas regras de planejamento + construção); o vocabulário de movimento compartilhado vive em references/motion-vocabulary.md (→ regras/blueprints hyperframes-animation + blocos de registro).

Categorias de formulário — sem pesquisa; o usuário fornece o conteúdo:

CategoriaIntençãoBaseia-se em
kinetic-typelinha / citação / título impactante, texto com movimento primeiroblocos caption-* + regras de animação
statnúmero herói único / contagem regressiva + anelapple-money-count / rules/{counting-dynamic-scale, stat-bars-and-fills}
chartsgráfico de barras / linhas / pizza / corrida / % a partir de dadosbloco data-chart
logo-revealanimação de logotipo / trava de marca (logotipo do usuário)logo-outro / rules/svg-path-draw
lower-thirdsbarras de nome / título, chamadas, sobreposições sociaiscaption-* + blocos de sobreposição do registro

Categorias orientadas por pesquisa — pesquise primeiro, depois anime por tipo de conteúdo (o caminho RWA):

Conteúdo retornadoCategoriaAnimação
página web / linkwebpageanimação de página / interface do usuário (rolagem, revelação, cursor, chamadas)
artigo de notícianewsrevelação de manchete + cartão de fonte + chamadas de fatos-chave
tweettweetcartão de tweet animado
imagem / entidadeasset-fusiona geometria do ativo se torna o gráfico (fusão diegética RWA)

Ordem de construção: um de cada vez, priorizando cobertura (rascunho é aceitável). kinetic-type portado do protótipo; o restante segue.

Pré-requisitos

macOS Apple Silicon ou Linux x64. Ferramentas de sistema: brew install node ffmpeg. npx hyperframes doctor uma vez. Renderização GPU macOS: export PRODUCER_BROWSER_GPU_MODE=hardware.

Chaves opcionais (fallbacks locais se não definidas) — necessárias apenas por categorias que obtêm/geram ativos via uso de mídia:

ChaveUsado paraFallback
GEMINI_API_KEY / GOOGLE_API_KEYgeração de imagem (resolução de uso de mídia)pular geração / apenas pesquisa
(asset_scout / provedores de pesquisa)pesquisa de ativos reais para webpage/news/tweet + asset-fusioncategoria degrada para sem ativos

Fluxo

Etapa 0 — Inicializar

cwd é a raiz do espaço de trabalho do agente; escreva todos os artefatos sob PROJECT_DIR = videos/<nome-do-projeto>/. <nome-do-projeto>: use o diretório que o usuário forneceu, caso contrário, um nome curto em kebab-case a partir da intenção (<assunto>-motion). Não o nome base do espaço de trabalho ou um timestamp.

Apenas quando $PROJECT_DIR/hyperframes.json estiver ausente:

PROJECT_DIR="${MOTION_GRAPHICS_DIR:-videos/<nome-do-projeto>}"
mkdir -p "$(dirname "$PROJECT_DIR")"
npx hyperframes init "$PROJECT_DIR" --non-interactive --skip-skills --example=blank

Restrições: nunca hyperframes init na raiz do espaço de trabalho; nunca aninhe outro hyperframes/ dentro de PROJECT_DIR; todo comando Bash (mestre + subagentes) é um subshell (cd "$PROJECT_DIR" && ...) — nunca cd simples.

Etapa 1 — Planejar (subagente: Diretor Parte 1)

Despache um subagente. prompt = agents/director.md completo + ## Contexto de despacho (SKILL_DIR / PROJECT_DIR / a solicitação do usuário / Schema: <SKILL_DIR>/references/shot-plan-ir.md). Ele deve:

  1. Decidir: isso precisa de uma pesquisa? (a primeira bifurcação)
    • Não → escolha uma categoria de formulário (kinetic-type / stat / charts / logo-reveal / lower-thirds); o conteúdo é fornecido pelo usuário; asset_needs: [].
    • Sim → emita um plano de pesquisa dentro de asset_needs[] (notícia / web / tweet / imagem; consultas de dois polos). A categoria orientada por pesquisa específica (webpage / news / tweet / asset-fusion) é confirmada pelo tipo de conteúdo retornado na Etapa 2 e finalizada na Etapa 3.
  2. Escreva um rascunho de shot-plan.json (envelope + categoria de formulário escolhida ou intenção de pesquisa + asset_needs + um parágrafo de briefing da cena). Schema: references/shot-plan-ir.md.

Validação: [ -s "$PROJECT_DIR/shot-plan.json" ] && echo ok || echo missing.

Etapa 2 — Fonte ◇ (Bash: uso de mídia, condicional)

Se shot-plan.json.asset_needs não estiver vazio, resolva os ativos (pesquisar / gerar / buscar → caminhos locais congelados do projeto + registro). Veja phases/source/guide.md (envolve media-use resolve; as categorias orientadas por pesquisa usam a pesquisa de notícia/web/tweet/imagem). Se asset_needs estiver vazio, pule para a Etapa 3.

# ilustrativo — veja phases/source/guide.md
(cd "$PROJECT_DIR" && node <SKILL_DIR>/phases/source/resolve.mjs --plan ./shot-plan.json --out ./assets)

Degrade graciosamente: se uma pesquisa/provedor estiver indisponível, a categoria retrocede para sem ativos (anote em context.log).

Etapa 3 — Projetar (subagente: Diretor Parte 2)

Despache um subagente (prompt = agents/director.md Parte 2 + contexto de despacho incluindo o assets/index.md resolvido se a Etapa 2 foi executada + catalog-map.md). Ele projeta a cena em torno dos ativos disponíveis: escolha o(s) bloco(s) do catálogo + as regras/blueprints hyperframes-animation, o layout, o movimento, as batidas e (para asset-fusion) as element_positions + paleta de conta-gotas. Finaliza shot-plan.json (content.block + content.customize + conteúdo por categoria).

Etapa 4 — Construir (subagente: Construtor, reuso primeiro)

Despache um subagente. prompt = agents/builder.md completo + contexto de despacho (shot-plan.json, catalog-map.md, module.md da categoria, references/motion-vocabulary.md, references/builder-contract.md). Reuso primeiro: npx hyperframes add <block> + personalize no local; escreva manualmente apenas as lacunas + a capacidade de fusão de ativos. Saída compositions/index.html honrando o contrato HF (timeline GSAP pausada em window.__timelines, class="clip" + ids estáveis, tl.seek(0), determinístico).

Etapa 5 — Renderizar (Bash)

(cd "$PROJECT_DIR" && npx hyperframes render . -q draft -o ./renders/video.mp4)
# variante de sobreposição transparente: --format webm  (ou mov)

Etapa 6 — Verificar (Bash → subagente de reparo em caso de falha)

(cd "$PROJECT_DIR" && npx hyperframes lint . && npx hyperframes inspect .)

exit 0 → concluído. Em erros de lint/inspect, despache o subagente de reparo (agents/finalize.md: snapshot QA + uma passagem de correção no local + re-renderização). Nunca mude uma duração fixa no reparo.

Relatório + pré-visualização opcional

Relate a saída final (renders/video.mp4, ou a variante de sobreposição .webm / .mov) + duração. Não abra uma pré-visualização durante a execução. Ofereça uma apenas mediante solicitação, iniciada após a renderização para que sirva o arquivo final:

(cd "$PROJECT_DIR" && npx hyperframes preview)   # Interface Studio; ou `npx hyperframes play` para um link compartilhável

Flags vivem na skill hyperframes-cli (references/preview-render.md).

Tabela de retomada

EstadoContinuar de
sem shot-plan.jsonEtapa 1 (planejar)
shot-plan.json tem asset_needs, sem assets/Etapa 2 (fonte)
shot-plan.json final, sem compositions/index.htmlEtapa 3/4 (projetar+construir)
compositions/index.html existe, sem renders/video.mp4Etapa 5 (renderizar) + Etapa 6
renders/video.mp4 existeRelatório + parar

Notas de design (mantenedores — a execução não lê isto)

  • Justificativa Asset-first: a obtenção de fontes é carregada no início e informa o design da cena (fluxo RWA: analisar → pesquisar → revisar → compor). As categorias orientadas por pesquisa (webpage/news/tweet) e asset-fusion dependem da pesquisa de uso de mídia (notícia/web/tweet/imagem), que é a linhagem RWA documentada do uso de mídia.
  • Reuso primeiro: o análogo intra-ecossistema de templates gerados por LLM é "compor blocos de catálogo + regras hyperframes-animation". A timeline GSAP pausada do HF é análoga ao useCurrentFrame do Remotion.
  • Contrato do módulo de categoria: um categories/<id>/module.md (planejamento + construção), compartilhando references/motion-vocabulary.md (+ avaliação opcional). Adicionar uma categoria = soltar a pasta + registrar sua linha de classificação em agents/director.md + sua linha em catalog-map.md; o pipeline de fases permanece intocado.
  • Estrutura de diretório:
    videos/<nome-do-projeto>/
      hyperframes.json  context.log
      shot-plan.json            # o IR (saída do Diretor)
      assets/  assets/index.md  # saída do uso de mídia (se fonte obtida)
      compositions/index.html   # saída do Construtor
      renders/video.mp4
    
  • Registro: no roteador hyperframes — adicione a intenção "motion graphic curto focado em design" + descrição do Workflow; recorte os gatilhos de motion-graphics de /general-video; adicione arestas reversas de NÃO-USAR. Veja motion-graphics-genre.md §5-7.

Habilidades Relacionadas