Communitygithub.com

100x-segment

Divide um roteiro de locução TikTok/UGC (texto simples em inglês ou espanhol) em três camadas independentes e sobrepostas.

O que é 100x-segment?

O skill **100x-segment** processa um roteiro de locução TikTok/UGC em texto puro (inglês ou espanhol) e o divide em três camadas analíticas independentes: L1 – segmentação lógica em parágrafos (10 módulos + 7 arquétipos), L2 – previsão do propósito de cada take (7 enumerações padrão), e L3 – marcação inline de pausas respiratórias (fortes `‖` e fracas `・`). Ele é parte do ecossistema 100x, responsável pela etapa de "segmentação". O skill aceita apenas texto bruto como entrada (categoria A obrigatória), detecta automaticamente o idioma e rejeita qualquer entrada que não seja exclusivamente inglês ou espanhol. Não depende de skills upstream; a saída inclui `source_text`, `language`, `archetype`, `segments[]` (com `module`, `raw_text`, `text_annotated`) e `shots[]` (com `segment_refs` e `shot_purpose`). Quatro axiomas garantem consistência: módulos e arquétipos seguem enumerações fixas; `text_annotated` preserva exatamente as palavras do `raw_text` (apenas adiciona marcadores de pausa); a prioridade das pausas é determinada por regras estritas (conjunções adversativas > pontuação final > travessão > vírgula/ponto e vírgula, com limite de 14 palavras EN / 16 sílabas ES); e `shots[]` cobre completamente todos os `segments[]`. O skill é otimizado para roteiros de DR de suplementos no mercado americano do TikTok, sem validação para outros gêneros.

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

Perguntar na sua IA favorita

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

Documentação

O que 100x-segment faz?

Uma frase de posicionamento

Insira um roteiro de locução TikTok/UGC em texto puro (inglês ou espanhol) e obtenha uma segmentação em três camadas independentes e sobrepostas: L1 – lógica de parágrafos (10 módulos + 7 arquétipos), L2 – previsão do propósito de cada take, L3 – marcação inline de pausas respiratórias. Faz parte da etapa "1 – Segmentação" do ecossistema 100x.

Quando acionar

O usuário diz:

  • "Segmenta isso pra mim" / "Como segmentar este roteiro" / "Divide este texto de locução" / "Onde preciso respirar aqui"
  • "segment this script" / "break this voiceover into beats"
  • Ou fornece diretamente um texto puro de roteiro de locução, pedindo "divide em módulos" / "marca as pausas" / "como devo cortar isto"

Entrada

Entrada mínima (categoria A, obrigatória): source_text – um texto puro de roteiro/script de locução. Este skill NÃO aceita arquivos de vídeo/frames de vídeo, apenas texto (consulte workflow.md Fase 1).

Categoria B (entrada opcional): Nenhuma – o source_text já contém todos os sinais necessários para a segmentação, não sendo necessário fornecer pontos de venda, público-alvo ou tom para começar (estrutura igual a 100x-persona, diferente de 100x-search-query; veja "Explicação da Categoria B" em workflow.md).

Escopo de idiomas (limite claro na v1, não degradação): language é detectado automaticamente a partir do source_text; aceita apenas inglês ou espanhol. Se detectar outro idioma ou mistura indecifrável, rejeita diretamente, sem adivinhar ou fazer substituto.

Saída upstream opcional (categoria C, ausente -> ignorada silenciosamente, não bloqueia e jamais exige que o usuário execute outro skill primeiro): Atualmente não há skills upstream neste repositório que produzam perfis de produto ou temas de conteúdo.

Saída

Veja a estrutura em schema.json: source_text / language / archetype (7 arquétipos A-G, único ou composto "principal+auxiliar" como "G+E") / segments[] (cada item contém segment_id / module [10 enumerações] / raw_text / text_annotated [versão com marcação inline de pausas fortes ‖ e fracas ・]) / shots[] (cada item contém shot_id / segment_refs[] / shot_purpose [7 enumerações padrão]) / meta. Opcionalmente, renderiza uma tabela de parágrafos legível em Markdown.

Restrições principais (4 axiomas; detalhes em axioms.md)

  1. segments[].module fixo em 10 enumerações (11 módulos excluindo Localização que atravessa o texto todo) + archetype fixo em 7 formatos de arquétipo (único ou composto "principal+auxiliar" com duas letras diferentes)
  2. As pausas são marcadores inline, apenas adicionados – text_annotated sem ‖/・ deve ser idêntico ao raw_text caractere por caractere: não pode deletar, adicionar ou modificar palavras
  3. A prioridade de força das pausas está fixada (conjunção adversativa no início > pontuação final/travessão > vírgula/ponto e vírgula, com limite de 14 palavras EN / 16 sílabas ES para quebra obrigatória), decidida por regras fixas de prioridade, sem margem para interpretação (limitação conhecida: EN so pode ser tanto "conjunção adversativa/causal" quanto "advérbio de intensidade/ênfase" (so much/so many); a correspondência pura por palavra-chave não diferencia, apenas excluiu a combinação mais comum so much/so many; outros usos enfáticos ainda podem ser erroneamente tratados como conjunção adversativa, exigindo pausa forte – isso é critério de falha grave, não aviso leve; o custo do erro é maior que o abaixo. As regras de não marcar pausa após palavras de preenchimento ou antes de números de preço são heurísticas por palavra-chave, não análise semântica real, e a ambiguidade de like (preposição vs. palavra de preenchimento) causará certa taxa de falsos positivos, tratada apenas como aviso, não falha; veja TODO do axioma 3 em axioms.md. O critério de pontuação final usa um dicionário fixo e não exaustivo de abreviações (a.m./p.m./Mr. etc.) para excluir pontos finais de abreviações comuns; já foi verificado em textos reais em inglês que essas abreviações específicas estão corrigidas, mas abreviações fora do dicionário ainda podem ser interpretadas erroneamente como fim de frase. Além disso, pontuação final grudada na próxima palavra sem espaço (espaço ausente) atualmente só para !/? é considerada pausa ausente; para ., devido ao risco de conflito com abreviações e ponto decimal, ainda exige espaço real – . grudado sem espaço não aciona o critério; veja TODO do axioma 3 em axioms.md)
  4. shots[].shot_purpose fixo em 7 enumerações padrão, e deve cobrir completamente todos os segments[] (integridade referencial + zero órfãos; limitação conhecida: este skill processa apenas texto, shots[] prevê apenas o propósito do take, sem time_bucket/visual_description/camera_language/audio_plan – esses campos dependem do conteúdo visual real do vídeo, fora do escopo deste skill)

Escopo de aplicação: O esqueleto de 11 módulos / 7 arquétipos foi extraído do blueprint de roteiros de locução DR de suplementos no TikTok americano. A aplicabilidade a outras estruturas de roteiro (narrativos, entrevistas, etc., que não sejam DR para vendas diretas ao consumidor) não foi validada.

Fluxo de três fases

Veja workflow.md: Fase 1 – recepção + validação (categoria A + validação de idioma; sem categoria B; categoria C ignorada silenciosamente) → Fase 2 (2A – segmentação de parágrafos → 2B – previsão de propósito dos takes → 2C – marcação de pausas → 2D – auto-verificação S1–S8 + renderização) → Fase 3 – retrabalho acionado pelo usuário (três níveis de granularidade: L1 – parágrafos, L2 – takes, L3 – pausas, correspondendo diretamente aos três tipos de pontos de corte).

Garantia de chamada independente

Categoria A (source_text) ausente → mensagem de recusa fixa, perguntando, sem adivinhar, sem aceitar arquivo de vídeo como substituto. Idioma fora do escopo inglês/espanhol → mensagem de recusa fixa, sem adivinhar, sem rotear. Categoria C (saída upstream) ausente → ignorada silenciosamente, nunca exige que o usuário execute primeiro outro skill.

Palavras proibidas

Deixe-me / Espero / Talvez / Provavelmente / Possivelmente / Vamos; tom de atendente de IA (as an AI / I'd be happy to / feel free to); não inventar conteúdo/efeitos/certificações/depoimentos que não estejam no texto original do roteiro; não escrever dicionários fixos de categorias de clientes; text_annotated não pode deletar ou modificar nenhuma palavra do raw_text (veja axioma 2).

Roteamento (recomendação, não dependência forte)

  • Já segmentado e quer atribuir personagens/cenas a cada segmento → 100x-persona (pairings[].segment_ref pode referenciar os segments[].segment_id gerados por este skill)
  • Quer combinar os segmentos com takes visuais reais, movimentos de câmera, áudio (requer entrada de vídeo) → skill de storyboard futuro disponível publicamente (se já criado)
  • Quer primeiro imagens de referência visual / palavras-chave de busca → 100x-search-query
  • Quer voltar à entrada e fazer novo triagem → entrada geral do ecossistema 100x (se já criada)

Todas as recomendações acima são "pós-produção, sob demanda", não pré-requisitos; o skill correspondente, mesmo que ainda não construído, não afeta o funcionamento independente deste skill.

Auto-verificação de fábrica

Execute node scripts/validate.js --selftest para verificar. As restrições estruturais declaradas em schema.json (enum/pattern/additionalProperties/minItems/uniqueItems etc.) são executadas pelo ajv (validador real JSON Schema draft-07, devDependency declarado em package.json; execute npm install antes) em scripts/validate.js, não são enumerações manuais. Os axiomas 2 (comparação entre campos text_annotated/raw_text), 3 (prioridade de força das pausas + limite por respiração, exigindo análise string por string) e 4 (integridade referencial entre arrays shots/segments + zero órfãos + numeração sequencial) são critérios que o JSON Schema puro não consegue expressar; são complementados por código personalizado em scripts/validate.js:

npm install                                                   # instalar ajv na primeira execução
node scripts/validate.js <bundle.json> [bundle2.json ...]   # validar saída
node scripts/validate.js --selftest                          # executar testes de regressão internos

Fontes

Este skill foi construído para o cenário de "segmentação de roteiro de locução em texto puro e marcação de pausas", incluindo lógica de parágrafos (sistema de 10 módulos + 7 arquétipos), previsão de propósito de takes (7 tipos padrão) e sistema de regras de pausas inline (axiomas 2/3). As especificações de critérios e design de campos estão detalhadas em sources.md.

Individual skills in this repo

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

Habilidades Relacionadas