Communitygithub.com

100x-prompt-compose

Preenche um template de geração de anúncios UGC com variáveis de produto/persona/cena.

O que é 100x-prompt-compose?

O skill `100x-prompt-compose` é um componente do ecossistema 100x, projetado para automatizar a etapa final de composição de prompts para modelos de IA generativa de imagem e vídeo. Ele pega um ID de template (ou uma descrição textual que corresponda a um dos 14 templates disponíveis) e um conjunto de variáveis (obrigatórias e opcionais) e produz um prompt final totalmente renderizado, adaptado ao modelo de destino (Veo, Seedance ou 即创), seguindo regras estritas de substituição textual. Sua principal utilidade é eliminar o trabalho manual de preencher templates complexos e garantir que o prompt gerado respeite as restrições específicas de cada modelo, como limites de duração e listas de palavras proibidas. O skill opera em três fases: recepção/validação (garantindo que todas as variáveis obrigatórias estão presentes e que as regras são seguidas), renderização (substituição literal dos placeholders) e empacotamento (adaptação ao modelo alvo). Ele é capaz de gerenciar referências visuais (locks) de produtos e personas, mas não as exige como entrada obrigatória, permitindo que usuários descrevam visualmente pela primeira vez sem depender de skills anteriores. O validador embutido (`validate.js`) verifica a integridade das referências, a ausência de palavras proibidas e a correta aplicação das regras de duração, mas não faz validação semântica do conteúdo das descrições visuais, uma limitação documentada. Suporta Claude Code, Cursor e Codex através da estrutura de arquivos SKILL.md, workflow.md e schemas JSON.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/kezd088/100x-skill-tiktok/tree/main/skills/100x-prompt-compose

Perguntar na sua IA favorita

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

Documentação

O que 100x-prompt-compose faz?

Uma frase de posicionamento

Insira um ID de template de prompt (ou uma descrição de necessidade) + variáveis e produza o prompt final renderizado palavra por palavra, empacotado de acordo com o modelo de destino (Veo/Seedance/即创). Pertence à etapa "prompt + modelo" do ecossistema 100x, conectando skills a montante (personagem/cena/palavras-chave de pesquisa) com modelos de IA generativa a jusante.

Quando acionar

O usuário diz:

  • "Me ajude a montar um prompt" / "Preencha um template para gerar um prompt" / "Qual modelo usar para este vídeo" / "Gere um prompt de vídeo" / "Selecione um template com variáveis"
  • "compose a video prompt" / "fill in this template" / "which model should I use for this" / "generate an AI video prompt"
  • Ou fornece diretamente uma descrição de produto/persona/cena, solicitando um prompt que possa ser alimentado diretamente em um modelo de geração de imagem/vídeo

Entrada

Entrada mínima (Categoria A, obrigatória): template_id (um dos 14 templates, veja templates.json) ou uma descrição da necessidade que corresponda exclusivamente a um template (categoria + cenário use_when, veja workflow.md Fase 1, Etapa 1); todas as variáveis em variables[] cujo label não contenha "(opcional)" devem ser fornecidas (não adivinhe, não invente aparências/diálogos específicos).

Complemento opcional (Categoria B, na ausência segue fluxo degradado, veja workflow.md Fase 1 Etapa 2/4): variáveis cujo label contenha "(opcional)"; seleção de model para templates de vídeo (se ausente, pergunte uma vez; se ainda sem resposta, use o padrão model_hint[0]).

Entradas opcionais de skills a montante (Categoria C, se ausente, ignore silenciosamente, não bloqueie e nunca exija que o usuário execute outra skill primeiro): existing_refs_input (IDs de bloqueio de produto/persona estabelecidos em chamadas anteriores, veja Axioma 2).

Saída

A estrutura está em schema.json: ComposedPromptBundle = template_id/category + variables_used + rendered_body (texto em chinês após interpolação literal, já incluindo realism_suffix) + reference_locks (registro de criação ou referência de bloqueios de produto/persona) + (para templates de vídeo) model + video_unit (prompt final empacotado por modelo + duração) + meta. Opcionalmente, renderize um resumo legível (nome do template/tabela de variáveis/prompt final).

Restrições principais (4 axiomas, veja axioms.md)

  1. O prompt final deve substituir literalmente o corpo do template, sem parafrasear ou encurtar — rendered_body deve ser o resultado da interpolação literal do corpo correspondente em templates.json (incluindo a expansão de placeholders [ ]), e não uma reescrita livre "desde que o significado esteja correto".
  2. As referências a números de imagens de referência devem apontar para bloqueios já declarados, não podem ser fictícias — na primeira aparição de um produto/persona, o bloqueio visual deve ser estabelecido; nas aparições subsequentes, deve-se escrever "Imagem de Referência N [Produto/Persona]", onde N deve existir no conjunto de IDs estabelecido (Limitação conhecida: o que pode ser validado aqui é apenas "se o formato está correto" e "se o ID existe realmente"; não é possível validar se a descrição do bloqueio inicial é realmente específica (se todos os elementos de aparência do produto estão presentes / se os cinco elementos de personagem — idade, etnia, gênero, vestuário, aparência — estão completos). Entradas como persona: "a person", product_lock: "a thing" passam na validação atual, pois schema.json/scripts/validate.js apenas verificam se a string não é vazia, o formato e a existência do ID, sem julgamento semântico de conteúdo. Avaliamos heurísticas como comprimento mínimo para bloquear, mas isso prejudicaria exemplos curtos legítimos dos próprios templates; portanto, não foi implementado. Isso está documentado na seção "Limites Conhecidos" do Axioma 2 em axioms.md, e ainda depende inteiramente da disciplina do chamador em seguir a regra "perguntar quando faltar, não inventar" da workflow.md Fase 1 Etapa 2.
  3. Variáveis de cena são proibidas de conter palavras de iluminação; a iluminação é controlada exclusivamente pelo sufixo — se variáveis como scene/scenes/place/rooms coincidirem com a lista fechada de palavras de iluminação, a entrada é rejeitada; palavras de clima são permitidas.
  4. Para vídeo, execute estritamente os limites de duração e listas de palavras proibidas do modelo selecionado, tolerância zero — Veo: 8,0s / Seedance: 10,0s + respectivas listas de palavras proibidas + frase final fixa; 即创: sem material de origem dedicado, apenas valida a classificação narrativa da câmera, sem validação rígida de duração/palavras proibidas (Limitação conhecida: atualmente não incluímos material axiomático dedicado para o modelo 即创, veja sources.md); Limitação conhecida (confirmada por testes com dados reais, não suposição teórica): as listas de palavras proibidas do Veo/Seedance usam correspondência léxica de limites de palavra, não distinguindo entre "professional" usado como adjetivo de IA genérico (o alvo pretendido pela lista, como "professional lighting") e "professional" usado para descrever fielmente a ocupação real de um falante (por exemplo, traduzir fielmente para o inglês a ocupação real de um interlocutor que contém essa palavra) — descrever fielmente uma identidade real também resultará em FAIL; a única solução é substituir por um sinônimo que não coincida com a lista, veja a seção "Limites Conhecidos" do Axioma 4 em axioms.md.

Fluxo de três fases

Veja workflow.md: Fase 1 (Recepção + Validação: selecionar template, garantir variáveis, verificar cena sem palavras de iluminação, [vídeo] selecionar modelo, contexto de IDs de referência) → Fase 2 (Renderização: substituição literal, expansão de colchetes, contabilização de bloqueios de referência, [vídeo] empacotamento por modelo, auto-verificação item a item) → Fase 3 (Retrabalho acionado pelo usuário: L1 variável única / L2 trocar modelo / L3 completo; Não há ramo para "falas que não sejam em inglês" — a biblioteca de templates exige rigidamente que as falas sejam em inglês americano para o TikTok nos EUA, sem exceções, veja a última linha da tabela da Fase 3 em workflow.md).

Garantia de chamada independente

Categoria A ausente (template não selecionável + variáveis obrigatórias faltando) → Pergunta fixa de recusa, não adivinhe, não invente aparências/diálogos específicos. Categoria B ausente segue fluxo degradado (variáveis opcionais tratadas conforme semântica do template; model ausente pergunta uma vez e usa o padrão). Categoria C (existing_refs_input) ausente, ignorada silenciosamente — este skill não exige que o usuário "execute primeiro IMG-01 para criar um bloqueio de produto" antes de começar; na primeira aparição, permite descrever visualmente com texto em vez de imagem de referência.

Palavras proibidas

Deixe-me / Espero / Talvez / Provavelmente / Possivelmente / Quem sabe / Vamos; tom de IA de atendimento (as an AI / I'd be happy to / feel free to); Não invente certificações de eficácia ou depoimentos de usuários que não estejam no roteiro/cópia; Não invente detalhes de aparência de produto/personagem que o usuário não forneceu para preencher variáveis; Palavras proibidas no empacotamento de vídeo Veo/Seedance estão em profiles/veo.md/profiles/seedance.md (palavras genéricas de IA como cinematográfico/deslumbrante/impecável etc. + aspas + cercas markdown, lista completa nos arquivos correspondentes, não repetida aqui para evitar dessincronização com a tabela de constantes do script).

Roteamento (recomendado, não obrigatório)

  • Se você ainda não tem material de produto/persona/cena, apenas um roteiro → Skill de personagem/cena (se existir)
  • Se você quer primeiro encontrar imagens de referência visual antes de decidir como preencher o template → Skill de palavras-chave de pesquisa (se existir)
  • Se o prompt já está pronto e você quer gerar várias variações em lote → Skill de fissão de prompt (se existir)
  • Se você quer voltar à entrada para um novo encaminhamento → Entrada geral do ecossistema 100x (se existir)

Todos os itens acima são "recomendações sob demanda após a saída", não dependências obrigatórias; se o skill correspondente ainda não estiver construído, isso não afeta o funcionamento independente deste skill.

Autoverificação de fábrica

Execute node scripts/validate.js --selftest para verificar. Axioma 1 (reconstrução do template), Axioma 2 (integridade dos bloqueios de referência) e Axioma 4 (duração específica do modelo / palavras proibidas / frase final) são critérios que cruzam arquivos/entradas/listas grandes de palavras, que schema.json (vanilla JSON Schema) não consegue expressar; quem realmente executa o julgamento é scripts/validate.js:

npm install                                                    # Instalar ajv na primeira vez
node scripts/validate.js <bundle.json> [bundle2.json ...]    # Validar saídas
node scripts/validate.js --selftest                           # Executar casos de regressão internos

Fontes

Este skill combina uma biblioteca de templates de prompt com regras de adaptação para os principais modelos (Veo / Seedance). templates.json fornece 14 grupos de templates de prompt padronizados; profiles/veo.md e profiles/seedance.md fornecem as especificações de empacotamento para os modelos de destino. O sistema de critérios inclui verificação de integridade de referências, detecção de listas fechadas de palavras e validação de duração de modelo e palavras proibidas. Decisões de design detalhadas e explicações das fontes estão em sources.md.

Individual skills in this repo

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

Habilidades Relacionadas