Communitygithub.com

100x-segment

Découpage d'un script voix-off TikTok/UGC (texte brut en anglais ou espagnol) en segments superposés.

Qu'est-ce que 100x-segment ?

100x-segment est un skill d'agent IA dédié au découpage de scripts voix-off bruts pour TikTok/UGC, spécifiquement en anglais ou en espagnol. Il prend un texte source (source_text) et produit trois couches de segmentation indépendantes : L1 (découpage logique en 10 modules + 7 archétypes), L2 (prédiction de l'intention des plans), et L3 (marquage des temps de respiration dans le texte). Ce skill fait partie du système 100x et se concentre sur l'étape de segmentation. Il ne nécessite aucune entrée supplémentaire (pas de vidéo, pas de brief) et refuse catégoriquement les entrées dans des langues autres que l'anglais ou l'espagnol. Il garantit que les annotations de respiration (‖ pour forte, · pour faible) ne modifient pas le texte original, en respectant des règles strictes de priorité. Le résultat peut être exporté sous forme de bundle JSON structuré (selon schema.json) ou de tableau Markdown lisible. Le skill est autonome et ne dépend d'aucun autre skill en amont, et son utilisation est recommandée avant d'appliquer d'autres skills comme 100x-persona pour associer des personnages aux segments.

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

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Que fait 100x-segment ?

Une phrase pour le positionner

Prend un texte brut de script voix-off TikTok/UGC (en anglais ou espagnol) et produit trois niveaux de découpage superposés et indépendants : L1 découpage logique (10 modules + 7 archétypes), L2 prédiction de l'intention des plans, L3 marquage des temps de respiration dans le texte. Il s'agit de l'étape « 1 découpage » du système 100x.

Quand déclencher

L'utilisateur dit :

  • « découpe-moi ce script » / « comment découper ce texte » / « où respirer ici »
  • « segment this script » / « break this voiceover into beats »
  • ou donne directement un texte brut de script voix-off en demandant « découpe-le en modules » / « marque les temps de respiration » / « comment le segmenter »

Entrée

Entrée minimale (catégorie A, obligatoire) : source_text — un texte brut de script voix-off. Ce skill n'accepte pas de fichiers vidéo ni de trames vidéo, uniquement du texte (voir workflow.md Phase 1).

Catégorie B (entrée facultative) : aucune — source_text contient déjà tous les signaux nécessaires au découpage, aucun ajout de points de vente, audience ou ton n'est requis avant de commencer (identique à 100x-persona, différent de 100x-search-query, voir workflow.md « description catégorie B »).

Plage linguistique (limite claire v1, pas de dégradation) : language est détecté automatiquement à partir de source_text, accepte uniquement l'anglais ou l'espagnol ; si la détection donne une autre langue ou un mélange anglais-espagnol impossible à déterminer, le skill refuse catégoriquement, sans deviner ni faire à la place.

Production amont optionnelle (catégorie C, absente → ignorée silencieusement, ne bloque pas, ne demande jamais à l'utilisateur d'exécuter un autre skill au préalable) : ce dépôt ne contient actuellement aucun skill produisant des profils de produit ou des sujets de contenu pouvant servir d'amont.

Sortie

Voir schema.json : source_text / language / archetype (7 archétypes A-G, simple ou composite « principal+secondaire » comme "G+E") / segments[] (chaque élément contient segment_id / module [10 énumérations] / raw_text / text_annotated [version avec marquage en ligne ‖ pour respiration forte et · pour respiration faible]) / shots[] (chaque élément contient shot_id / segment_refs[] / shot_purpose [7 énumérations standard]) / meta. Optionnellement, un tableau Markdown lisible peut également être généré.

Contraintes fondamentales (4 axiomes, voir axioms.md)

  1. segments[].module verrouillé sur 10 énumérations (11 modules moins Localisation qui traverse tout le texte) + archetype verrouillé sur 7 archétypes (simple ou composite de deux lettres différentes)
  2. Les marques de respiration sont des annotations en ligne, ajoutées uniquement — text_annotated sans ‖ / · doit correspondre mot pour mot à raw_text, aucun mot supprimé/ajouté/modifié
  3. Les critères de force des respirations sont figés (mots de liaison au début > ponctuation de fin de phrase / tiret > virgule point-virgule, limite par souffle EN 14 mots / ES 16 syllabes obligatoire), déterminés selon une priorité fixe, sans improvisation (limites connues : EN so peut être une conjonction de liaison/cause ou un adverbe de degré/emphase (so much / so many) ; la correspondance pure par mot-clé ne les distingue pas, seule l'exclusion de so much / so many les plus courants est faite, d'autres utilisations emphatiques peuvent encore être faussement classées comme conjonctions de liaison et forcer une respiration forte — ceci est un critère d'échec dur et non un simple avertissement, car le coût d'erreur est plus élevé que la règle suivante ; les mots de remplissage suivis d'une pause, les prix avant les chiffres ne sont pas marqués — ce sont des correspondances heuristiques par mot-clé, non une véritable analyse sémantique, l'ambiguïté like préposition/remplissage entraîne un certain taux de faux positifs, seulement un avertissement pas d'échec, voir axioms.md axiome 3 TODO ; le critère de ponctuation de fin de phrase utilise un dictionnaire d'abréviations fixe et non exhaustif (a.m. / p.m. / Mr. etc.) pour exclure les points d'abréviations courants, ces abréviations spécifiques ont été corrigées sur des corpus anglais réels, mais les abréviations hors dictionnaire peuvent encore être faussement interprétées comme des points de fin de phrase ; de plus, la ponctuation de fin de phrase collée au mot suivant (espace manquant) ne déclenche actuellement le marquage que pour ! / ?, tandis que . nécessite toujours un espace réel pour éviter les conflits avec les abréviations et les décimales — voir axioms.md axiome 3 TODO)
  4. shots[].shot_purpose verrouillé sur 7 énumérations standard, et doit couvrir complètement segments[] (intégrité référentielle + zéro orphelin, limite connue : ce skill ne traite que du texte, shots[] ne prédit que l'intention des plans, sans time_bucket / visual_description / camera_language / audio_plan — ces champs dépendent des images vidéo réelles, hors scope de ce skill)

Limites d'application : Le squelette 11 modules / 7 archétypes est issu du blueprint des voix-off DR de compléments alimentaires sur TikTok US, son applicabilité à d'autres structures narratives (scénarios narratifs / interviews hors DR) n'a pas été validée.

Processus en trois phases

Voir workflow.md : Phase 1 réception + validation (catégorie A + vérification linguistique, pas de catégorie B, catégorie C ignorée silencieusement) → Phase 2 (2A découpage en paragraphes → 2B prédiction d'intention des plans → 2C annotation des respirations → 2D auto-vérification S1-S8 + rendu) → Phase 3 reprise déclenchée par l'utilisateur (trois niveaux de granularité : L1 découpage paragraphe / L2 intention plan / L3 marques de respiration, correspondant directement aux trois couches de points de découpe).

Garantie d'appel indépendant

Catégorie A (source_text) manquante → question de rejet fixe, pas de supposition, pas d'acceptation de fichier vidéo en remplacement. Langue détectée hors anglais/espagnol → message de rejet fixe, pas de supposition, pas d'acheminement. Catégorie C (production amont) manquante → ignorance silencieuse, ne demande jamais à l'utilisateur d'exécuter d'abord un autre skill.

Mots interdits

« laissez-moi » / « j'espère » / « peut-être » / « probablement » / « possible » / « peut-être que » / « nous allons » ; langage de service client IA (as an AI / I'd be happy to / feel free to) ; ne pas inventer de contenu de module / effet / certification / témoignage absent du script original ; ne pas écrire de dictionnaire fixe de catégories de clients ; text_annotated interdit toute suppression ou modification des mots de raw_text (voir axiome 2).

Routage (recommandé, non obligatoire)

  • Script déjà découpé, souhaite associer des personnages/scènes à chaque segment → 100x-persona (pairings[].segment_ref peut référencer les segments[].segment_id produits par ce skill)
  • Souhaite associer des images de plan réelles / mouvements de caméra / audio (nécessite une entrée vidéo) → futur skill de storyboard en dépôt public (si déjà créé)
  • Souhaite d'abord chercher des références visuelles / mots-clés → 100x-search-query
  • Souhaite revenir à l'entrée principale pour un nouveau tri → entrée principale du système 100x (si déjà créé)

Les éléments ci-dessus sont des recommandations « après production selon les besoins », pas des dépendances préalables ; leur absence n'affecte pas le fonctionnement indépendant de ce skill.

Auto-validation en sortie

Exécuter node scripts/validate.js --selftest pour valider. Les contraintes structurelles déclarées dans schema.json (enum / pattern / additionalProperties / minItems / uniqueItems etc.) sont réellement vérifiées par ajv (vérificateur réel JSON Schema draft-07, déclaré comme devDependency dans package.json, exécuter d'abord npm install), pas par une énumération manuelle des champs. L'axiome 2 (comparaison entre champs text_annotated / raw_text), l'axiome 3 (priorité de force des respirations + limite par souffle, nécessite l'analyse du texte en fragments et le raisonnement par fragments) et l'axiome 4 (intégrité référentielle entre shots / segments + zéro orphelin + numérotation séquentielle) sont des critères que le vanilla JSON Schema ne peut pas exprimer structurellement ; ils sont implémentés manuellement dans scripts/validate.js :

npm install                                                   # première utilisation, installer ajv
node scripts/validate.js <bundle.json> [bundle2.json ...]   # valider la production
node scripts/validate.js --selftest                          # exécuter les tests de régression intégrés

Sources

Ce skill a été construit pour le cas d'usage « découpage et annotation de respiration de scripts voix-off bruts », incluant la logique des paragraphes (système de 10 modules + 7 archétypes), la prédiction d'intention des plans (7 types standard) et le système de règles de respiration en ligne (axiomes 2/3). Les spécifications de chaque critère et la conception des champs sont détaillées dans sources.md.

Individual skills in this repo

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

Skills associés