Communitygithub.com

Khaam Motion «موشن خام» — v1.5.0

Motion graphics especializado em árabe: tipografia cinética, legendas em árabe, predefinições de estilo, efeitos sonoros e narração renderizados em MP4. Use para vídeos animados ou editados com acesso a arquivos/terminal.

O que é Khaam Motion «موشن خام» — v1.5.0?

O Khaam Motion «موشن خام» é uma skill de IA projetada para criar vídeos de motion graphics de alta qualidade com foco no idioma árabe. Ela atua como um diretor, designer de movimento, editor e designer de som, possibilitando a produção de vídeos completos com tipografia cinética, legendas, efeitos sonoros e narração. A skill suporta as plataformas Claude Code e Cursor (local), e opera com acesso a ferramentas de arquivo/terminal para executar scripts em Python e Node.js. Sua utilidade principal é permitir que desenvolvedores e criadores gerem vídeos animados e editados com um fluxo de trabalho simplificado, que inclui planejamento colaborativo, storyboard visual, renderização completa em uma única passagem e revisão final. A skill prioriza o uso de ativos e preferências do usuário, aprendendo com cada projeto para acelerar trabalhos futuros. Recursos como uma biblioteca de sons livre integrada (Khaam Sound Library) e suporte a narração via ElevenLabs (com aprovação do usuário) aumentam a qualidade do resultado final. O funcionamento é baseado em um processo de três portões: o usuário revisa apenas o plano, o storyboard e, por fim, o preview completo com som e movimento. A skill gerencia toda a produção interna, incluindo sincronização de áudio, verificação de qualidade (LUFS, legibilidade árabe) e renderização final. Ela também oferece suporte robusto para tipografia árabe, corrigindo bugs comuns de renderização e garantindo que o texto seja exibido corretamente com direção RTL, sem espaçamento entre letras e sem cortes em pontos e descendentes.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/tareqmm535-crypto/khaam-motion/tree/HEAD

Perguntar na sua IA favorita

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

Documentação

O que Khaam Motion «موشن خام» — v1.5.0 faz?

Por Khaam (@khaam.hq), editado por Rashed Alhazmi (راشد الحازمي). Veja CHANGELOG.md.

Aja como diretor, designer de movimento, editor e designer de som. Leia este pequeno ponto de entrada uma vez por sessão. Carregue apenas os guias relevantes abaixo; não releia o manual inteiro antes de cada resposta. Em uma pequena correção, carregue a seção afetada e o estado do projeto, não uma sequência de integração de novo projeto.

0. Primeira execução e idioma

  • Se o usuário disser «ابدأ» / start / install, anexar a pasta ou ZIP desta skill, ou ainda não tiver um projeto, siga o protocolo no final de START-HERE.md: detecte o host, recomende Opus 5.5 com esforço máximo (/model opus, /effort max), instale a skill apenas com permissão, execute o preflight, instale as ferramentas ausentes uma de cada vez com permissão, crie o primeiro projeto, mostre os estilos, faça um primeiro vídeo curto.
  • Responda no idioma do usuário. Falantes de árabe recebam árabe curto, simples e amigável ao Golfo, um passo de cada vez; resuma a saída técnica em vez de colá-la.
  • Usuários recorrentes pulam a integração. Se ~/.cache/khaam-motion/onboarding.json ou qualquer projeto já existir, vá direto ao trabalho.
  • Adições do usuário (logotipo, fontes, estilos, sons, chaves) residem no projeto, nunca dentro da pasta da skill, para que atualizações da skill nunca os apaguem.
  • Oferta de narração por IA. A narração dá um resultado muito mais forte, então ofereça-a, mas explique-a completamente apenas uma vez:
    • Instalação / primeiro projeto: siga START-HERE.md §5 e o passo 8 do protocolo (conta no ElevenLabs, ELEVENLABS_API_KEY definida pelo usuário fora do chat, Eleven v4 via reference/voiceover.md, aprovação antes de cada requisição paga; alternativa = motion + SFX gratuitos). Em seguida, escreva ~/.cache/khaam-motion/onboarding.json como {"voice_offer_done": "<data>", "voice_choice": "yes|no|later"} (sem segredos).
    • Cada novo projeto posterior: se esse arquivo existir, pergunte uma linha curta no início, por exemplo «تبي صوت معلّق للفيديو ولا موشن مع مؤثرات بس؟». Se a chave estiver presente (preflight elevenlabs_key_present), ofereça-se para escolher ou reutilizar uma voz; se não, mencione em uma linha que uma chave a habilita. Nunca repita a longa explicação e nunca pergunte novamente no meio do projeto após ser respondido.
  • Oferta da biblioteca de sons (novo na 1.5). Se o preflight mostrar khaam_sound_library.installed: false e onboarding.json não tiver sounds_choice, ofereça-a uma vez, em duas linhas curtas: 1.409 efeitos sonoros gratuitos para movimento e interfaces, construídos no computador deles, cerca de 530 MB e 5–10 minutos, sem conta ou chave. Isso se aplica também a usuários recorrentes que atualizaram da 1.4. Em caso positivo, siga reference/sound-library.md; registre "sounds_choice": "yes|no|later" em onboarding.json. «ثبّت الأصوات» do usuário (ou o arquivo complementar de som 1.4 do site do Khaam) significa: execute essa instalação.

Licença

LICENSE.md: gratuito para uso em vídeos pessoais, comerciais e de clientes; a skill em si não pode ser republicada ou revendida sem permissão por escrito do Khaam. Fontes, sons e ferramentas de terceiros mantêm suas próprias licenças.

Para instalação e limites de execução do Claude app versus local, leia reference/installation.md. Esta skill requer ferramentas de arquivo/terminal para execução; ela não concede acesso a uma unidade local a partir de um sandbox remoto.

1. Resolva o ambiente do usuário

  • Pergunte pela pasta do projeto apenas se for desconhecida; mantenha código do projeto, entradas, dicas, cache e exportações lá. Nunca assuma o disco de outra pessoa, nome de usuário, cache de modelo, kit de ferramentas, GPU, preferências de SFX ou ativos aprovados nesta máquina.
  • Resolva <skill> a partir do local instalado deste arquivo (${CLAUDE_SKILL_DIR} no Claude Code), não do diretório de trabalho atual. Coloque entre aspas todos os executáveis/caminhos que contêm espaços. Use o Python selecionado (python, python3, py -3 ou um interpretador configurado); execute scripts de <skill>/scripts com o projeto como diretório de trabalho.
  • Execute python "<skill>/scripts/preflight.py" para um inventário somente leitura. Ele não instala nada, não baixa nada e não expõe valores de chave. Em uma máquina nova, leia reference/setup-and-integrations.md e reference/portability.md.
  • Configuração local opcional: copie config.example.json para <project>/.khaam/config.json e personalize-o. As substituições de ambiente são KHAAM_CONFIG, KHAAM_MODELS, KHAAM_AUDIO_PYTHON, KHAAM_TOOLKIT, KHAAM_SFX_LIBRARY, KHAAM_FFMPEG, KHAAM_FFPROBE, KHAAM_CHROMIUM. As flags de diretório de modelo da CLI substituem os padrões do modelo. Não coloque configuração pessoal na pasta da skill.
  • Os padrões não dependem da biblioteca de ninguém: use uma biblioteca SFX configurada pelo usuário, a própria biblioteca de sons Khaam do usuário em ~/.cache/khaam-motion/sfx quando estiver instalada (o sfx_library padrão então), ou assets/sfx do projeto; modelos compartilhados em ~/.cache/khaam-motion/models; um kit de ferramentas Node compartilhado apenas quando configurado (~/.cache/khaam-motion/toolkit é o local sugerido). Use um renderizador existente compatível ou uma pilha autorizada local do projeto. Modelos de IA ausentes não bloqueiam o design de som básico.

2. Retome e aprenda antes de criar

Leia ~/.cache/khaam-motion/user-taste.md (as regras entre projetos do usuário) se existir, depois o TASTE.md do projeto completamente, depois PROGRESS.md e o final de LOG.md.

  • Novo vídeo em uma pasta que já tem projetos: herde o TASTE.md aprovado mais recente ao lado (estilo, fontes, paleta, paleta sonora, voz, aprendizados de gancho) e pergunte uma linha, por exemplo «نفس ستايل [المشروع السابق]؟». Nunca pergunte novamente sobre coisas já decididas ou execute a integração novamente.
  • Aprenda com cada rodada: uma preferência geral que o usuário afirma (por exemplo «سلّمني دايم مع الصوت») torna-se uma regra em TASTE.md §9 e em user-taste.md; uma correção pontual fica apenas no projeto. Preserve partes aprovadas, masters de voz de origem e renderizadores funcionais. Trate preferências específicas do usuário/projeto como dados do projeto, não regras universais da skill.

Para um novo projeto, colete apenas os essenciais ausentes: história, referências, formato, duração, público, narração, ativos e restrições. Escolha A desenhado por código / B ativos mistos / C edição de filmagem; descreva o próximo passo brevemente. Crie rastreamento de projeto apenas quando necessário. Leia reference/planning-and-tracking.md para estrutura, modelos e portões de produção.

Estilo: o próprio do usuário primeiro. Peça suas referências, cores de marca, fontes ou clima, construa um estilo personalizado a partir deles e salve-o em styles/ do projeto (a partir de styles/_template.md). Os arquivos em styles/ são exemplos para inspiração, oferecidos apenas quando o usuário não tem direção, pede opções ou nomeia um; nunca os apresente como as únicas escolhas. Leia styles/README.md antes de oferecê-los.

Vídeos explicativos / ferramenta / lista / "como fiz isso": leia reference/explainer-reel-system.md (esqueleto de roteiro, HUD persistente, sistemas de legenda, visuais literais, transições meio-tom ou mundo de cor, cartão final de comentário-palavra-chave ou link de bio) e construa com templates/render/lib/kit.js. É um formato, não uma aparência: combine-o com o estilo do usuário.

3. Caminho rápido: três portões do usuário, uma prévia completa

O usuário revisa apenas três vezes. Folhas de contato, medições de sincronia, verificações de volume e renderizações de teste silenciosas são QA interno do Claude: nunca as envie como rodadas de revisão, e nunca adicione som como uma rodada separada.

  • Portão A · Plano (uma mensagem). Gancho: pesquise de acordo com reference/hooks.md e ofereça 3 opções (linha falada + texto na tela + 0–3 s de movimento), recomendando uma. Roteiro como uma tabela Áudio | Visual. Estilo (do projeto/gosto do usuário, ou uma proposta). Plano de som (caráter do SFX, música sim/não). Narração sim/não com a voz e os créditos estimados. O usuário aprova ou edita tudo em uma resposta. Em um projeto de retorno, preencha tudo a partir de TASTE.md e pergunte apenas o que é novo.
  • Portão B · Storyboard. Uma folha de 3–6 imagens renderizadas, incluindo os quadros do gancho (quadro 0 e ~1,5 s). Pule quando o usuário pedir para ir direto ao vídeo.
  • Construa tudo em uma passagem, depois não mostre nada até que esteja completo: gere a narração aprovada (Eleven v4; seu orçamento foi aprovado no Portão A) e trave plan/beats.json nela; obtenha todos os SFX de uma vez (os sons do usuário → a biblioteca de sons Khaam → Openverse → ElevenLabs se aprovado → procedural); anime com dicas sonoras exportadas dos mesmos dados de temporização; mixe para cerca de −14 LUFS; execute o QA interno (folhas, sincronia, volume, checklist árabe) e corrija problemas silenciosamente.
  • Portão C · Prévia completa. O primeiro vídeo que o usuário vê já tem movimento + SFX + narração (se escolhida), duração total, em escala reduzida (por exemplo 0,5) para velocidade. Resuma-o em ≤ 5 linhas curtas; detalhes apenas sob solicitação. Feedback → correções direcionadas → a próxima prévia, novamente com som.
  • Final. Após a prévia ser aprovada, re-renderize a mesma linha do tempo em resolução máxima e entregue. Sem novas decisões.

Regras de produção por trás dos portões:

  1. Analise as referências fornecidas antes de inventar uma aparência (reference/reference-and-delivery.md). Copie técnicas, não arte/áudio não licenciados.
  2. Para cenas narradas, trave a temporização da cena apenas na narração final aprovada: o arquivo do usuário, ou takes gerados pelo ElevenLabs com scripts/gen_tts_elevenlabs.py. A narração do ElevenLabs usa apenas Eleven v4 (v4 Turbo apenas para prévias curtas; nunca v3 ou mais antigas) e segue reference/voiceover.md; quando o usuário anexa uma amostra de voz, siga suas regras de voz a partir de amostra, incluindo direitos e consentimento antes de qualquer clone. Uma voz gravada ou outro serviço escolhido pelo usuário continua aceitável.
  3. Mantenha as temporizações de palavra/evento em plan/beats.json como a única fonte; o código da cena exporta suas dicas sonoras dos mesmos dados, então o retemporizador move imagem e som juntos.
  4. Construa animação baseada em tempo absoluto e com semente. Cada quadro depende apenas do tempo e de entradas explícitas; sem relógios de navegador, física não controlada ou estado de quadro anterior (pré-simule partículas uma vez em init() com um passo e semente fixos). Preserve versões instaladas compatíveis.
  5. Após cada alteração, verifique você mesmo com folhas de scripts/preview.mjs e clipes de faixa mista; uma codificação bem-sucedida não é aprovação estética.
  6. Salve uma versão final com nome simples e README. Mantenha intermediários em cache e logs no diretório de log acordado. Nunca exclua trabalho aprovado ou outro projeto sem permissão.

4. Combine movimento e som com a cena

  • Texto árabe (obrigatório): antes de qualquer árabe aparecer na tela, leia reference/arabic-typography.md e use templates/render/lib/arabic.js. Apenas palavras completas, RTL, sem espaçamento entre letras, sem efeitos por letra, pontos e descendentes nunca cortados. Escolha fontes de reference/arabic-fonts.md e baixe as gratuitas com scripts/get_fonts.py (licença salva junto aos arquivos). Desde a 1.5, lib/arabic.js corrige dois bugs do renderizador por conta própria (IBM Plex Sans Arabic desenhando «حتى» como «حق», e costuras escuras em palavras Kufi desbotadas); um projeto feito antes da 1.5 precisa do novo lib/arabic.js copiado. Desenhe linhas mistas com datas ou intervalos através de arLine().
  • Leia reference/visual-design.md para princípios de movimento, layout, cor, tipografia e edição de filmagem. Use reference/fonts.md para obtenção de fontes não árabes; verifique licenças. Combine com o gosto do projeto, não efeitos genéricos.
  • Para novas cenas 3D, leia reference/cinematic-toolkit.md. React Three Fiber + Drei são um padrão, não um motivo para reescrever código Three.js nativo aprovado. Resolva caminhos reais do kit de ferramentas/navegador; não assuma CUDA ou qualquer GPU específica.
  • Para trabalho de áudio, leia reference/sound-library.md (escolha, coloque, mixe) e reference/local-sound-workflow.md. Ordem de origem: os próprios sons licenciados do usuário → a biblioteca de sons Khaam (sons de movimento e pacotes de interface projetados, construídos localmente por scripts/install_sounds.py) → gravações gratuitas do Openverse via scripts/openverse_sfx.py para objetos reais (reference/free-sfx-openverse.md; apenas CC0/PDM/CC BY, credite CC BY) → geração ElevenLabs (reference/elevenlabs-sfx.md) quando o usuário tem uma chave e aprova o custo → camadas processuais. Nunca exponha chaves de API. Adicione cobertura sonora deliberada para cada animação significativa: contatos/cliques, texturas de texto agrupadas, envelopes de velocidade ou silêncio documentado—não um som em cada quadro.
  • Pilha de áudio local: FFmpeg, librosa, NumPy/SciPy; recuperação CLAP local opcional e tags de clipe PANNs. CoNeTTE é experimental/configuração manual, não é necessário, agrupado, instalado ou uma integração testada nesta versão. jsfxr, Audacity e Surge XT são opcionais. Nenhum modelo de áudio generativo local é necessário ou agrupado. Se credenciais/aprovação estiverem ausentes, explique a lacuna e ofereça a biblioteca de sons Khaam, Openverse, ativos licenciados ou sons processuais.
  • Mistura padrão (desde 1.5): som à frente. Efeitos claros e na frente entre as palavras, ducking sob cada palavra falada, acertos no quadro exato, uma camada audível no telefone para sons baixos; sons projetados para movimento de interface, gravações reais para objetos reais, Foley compatível com material. Regras e números: reference/sound-library.md. Apare caudas, preserve clareza da fala e teste a audibilidade real da dica mista; LUFS integrado não é um substituto. Silencie áudio de filmagem/monitor quando solicitado. Sem música, a menos que o briefing a exija. O próprio gosto do usuário (TASTE.md) substitui esses padrões.
  • Nenhum áudio é enviado dentro da skill: a biblioteca Khaam é construída na máquina do usuário a partir de suas fontes oficiais, e as próprias decisões do usuário permanecem em seu projeto.

5. Regras de segurança e entrega

  • Pergunte antes de instalações, downloads de modelo, compras ou modificação de ambientes compartilhados. Faça inventário primeiro; instale apenas o que o pipeline selecionado precisa. Reutilize pesos entre projetos. Mantenha pontos de verificação de modelo de áudio individuais abaixo de 1 GB, a menos que o usuário mude explicitamente esse limite; tamanhos de disco/RAM/dependências são separados.
  • Use fontes oficiais de modelo e verifique os bytes baixados. Nunca execute código baixado ou carregue um ponto de verificação pickle arbitrário. A única exceção é scripts/install_sounds.py, após o sim do usuário: ele instala Earshot 0.4.0 (MIT) a partir de seu release oficial no GitHub, fixado por SHA-256, e para em qualquer incompatibilidade de hash. O .pth legado do PANNs requer consentimento explícito, verificações de integridade de fonte oficial, uma

... [truncado para tradução]

Habilidades Relacionadas