Was macht 100x-segment?
Einleitung
Gib einen reinen Text eines TikTok/UGC-Voiceover-Skripts (Englisch oder Spanisch) ein und erhalte eine dreistufige, überlagerte Segmentierung: L1 Absatzlogik (10 Module + 7 Archetypen), L2 Vorhersage des Shot-Zwecks, L3 Inline-Atempausen-Markierung. Dies ist der Schritt "Segmentierung" innerhalb der 100x-Suite.
Wann auslösen
Der Benutzer sagt:
- "Hilf mir beim Segmentieren" / "Wie segmentiere ich dieses Skript?" / "Zerlege diesen Werbetext in Abschnitte" / "Wo soll ich hier Atempausen machen?"
- "segment this script" / "break this voiceover into beats"
- Oder übergibt direkt einen rohen Werbetext und verlangt "nach Modulen aufteilen" / "Atempausen markieren" / "Wie schneide ich das?"
Eingabe
Minimaleingabe (Kategorie A, zwingend erforderlich): source_text – ein reiner Text eines Werbeskripts. Dieser Skill akzeptiert keine Videodateien/-frames, sondern nur Text (siehe workflow.md Phase 1).
Kategorie B (optionale Eingabe): Keine – source_text enthält bereits alle notwendigen Signale für die Segmentierung; es sind keine zusätzlichen Angaben zu Verkaufsargumenten, Zielgruppe oder Tonfall erforderlich (strukturell identisch mit 100x-persona, anders als 100x-search-query, siehe workflow.md "Kategorie B Beschreibung").
Sprachbereich (v1 klare Grenze, keine Herabstufung): language wird automatisch aus source_text ermittelt; nur Englisch oder Spanisch werden akzeptiert. Bei anderen Sprachen oder gemischten Texten ohne erkennbare Hauptsprache wird die Anfrage direkt abgelehnt, ohne zu raten oder zu ersetzen.
Optionale Upstream-Ausgaben (Kategorie C, Fehlen wird ignoriert, blockiert nicht und fordert den Benutzer nicht auf, vorher andere Skills auszuführen): Derzeit gibt es keine Skill-Ausgaben aus diesem Repository, die als Upstream dienen könnten.
Ausgabe
Die Struktur ist in schema.json definiert: source_text/language/archetype (7 Archetypen A-G, einzeln oder kombiniert wie "G+E")/segments[] (jeweils mit segment_id/module[10 Enumerationen]/raw_text/text_annotated[Version mit Inline-Markierungen ‖ für starke und · für schwache Atempausen])/shots[] (jeweils mit shot_id/segment_refs[]/shot_purpose[7 Enumerationen, standardisiert])/meta. Optional kann eine menschenlesbare Markdown-Tabelle der Segmente gerendert werden.
Kernbeschränkungen (4 Axiome, siehe axioms.md)
segments[].moduleist auf 10 Enumerationen festgelegt (11 Module abzüglich des durchgängigen "Localization") +archetypeist auf 7 Archetypen festgelegt (einzeln oder kombiniert aus zwei verschiedenen Buchstaben)- Atempausen sind Inline-Markierungen, sie werden nur hinzugefügt, nie entfernt –
text_annotatedmuss nach Entfernung von‖/·zeichenweise mitraw_textidentisch sein; keine Wörter dürfen gelöscht, hinzugefügt oder geändert werden - Die Stärke der Atempausen ist festgelegt (Wendepunkt-Konnektor > Satzzeichen/Gedankenstrich > Komma/Semikolon; bei einer Obergrenze von 14 Wörtern auf Englisch / 16 Silben auf Spanisch wird ein harter Bruch erzwungen). Die Entscheidung folgt einer festen Priorität, ohne Spielraum (bekannte Einschränkung: EN
sohat sowohl die Bedeutung "Wendepunkt/Kausal-Konnektor" als auch "Adverb/Verstärker" (so much/so many). Die reine Schlüsselwortsuche kann dies nicht unterscheiden; nur die häufigste Kombinationso much/so manywird ausgeschlossen, andere Verstärker-Verwendungen können fälschlicherweise als Wendepunkt-Konnektor erkannt und mit einer starken Atempause belegt werden – dies ist ein hartes Fail-Kriterium, kein weiches Warning. Der Fehler wiegt schwerer als der untenstehende. Keine Markierung von Atempausen nach Füllwörtern und vor Preisangaben; diese basieren auf heuristischer Schlüsselwortsuche, nicht auf echter Semantik. Die Ambiguität vonlike(Präposition/Füllwort) führt zu einer gewissen Falsch-Positiv-Rate, dies wird nur als Warning, nicht als Fail gewertet (sieheaxioms.mdAxiom 3 TODO). Satzzeichen-Kriterium: Verwendung eines festen, nicht erschöpfenden Abkürzungswörterbuchs (a.m./p.m./Mr.etc.), um häufige Abkürzungspunkte auszuschließen. Dies wurde an echten englischen Texten verifiziert, aber Abkürzungen außerhalb des Wörterbuchs werden weiterhin fälschlicherweise als Satzende erkannt. Außerdem: Null-Leerzeichen-Verklebung von Satzzeichen mit dem nächsten Wort (fehlendes Leerzeichen) führt derzeit nur bei!/?zur Erkennung einer fehlenden Atempause; bei.wird aus Gründen der Vermeidung von Konflikten mit Abkürzungen und Dezimalpunkten weiterhin ein echtes Leerzeichen vorausgesetzt. Null-Leerzeichen-Verklebung bei.löst daher aktuell kein Kriterium aus – alles sieheaxioms.mdAxiom 3 TODO) shots[].shot_purposeist auf 7 standardisierte Enumerationen festgelegt und muss vollständig allesegments[]abdecken (referenzielle Integrität + keine Waisen). Bekannte Einschränkung: Dieser Skill arbeitet mit Texteingabe,shots[]sagt nur den Shot-Zweck voraus, enthält keinetime_bucket/visual_description/camera_language/audio_plan– diese Felder hängen vom tatsächlichen Videomaterial ab und liegen außerhalb des Skill-Bereichs.
Anwendungsbereich: Das 11-Modul/7-Archetyp-Gerüst ist aus dem TikTok US DR-Health-Voiceover-Muster abgeleitet. Die Anwendbarkeit auf andere Textstrukturen (storybasierte/Interview-basierte Skripte, die nicht dem DR-Privatverkaufsmodell folgen) wurde nicht validiert.
Dreistufiger Workflow
Siehe workflow.md: Phase 1 Empfang + Validierung (Kategorie A + Sprachbereichsvalidierung, keine Kategorie B, Kategorie C wird ignoriert) → Phase 2 (2A Absatzsegmentierung → 2B Vorhersage des Shot-Zwecks → 2C Atempausen-Markierung → 2D Selbstprüfung S1-S8 + Rendering) → Phase 3 Benutzerinitiierte Nacharbeit (drei Granularitätsebenen L1 Absatz/L2 Shot/L3 Atempause, direkt korrespondierend mit den drei Segmentierungsebenen).
Garantie für eigenständigen Aufruf
Fehlt Kategorie A (source_text) → feste Ablehnungsnachfrage, kein Raten, kein Ersatz durch Videodateien. Sprachprüfung ergibt nicht Englisch oder Spanisch → feste Ablehnungsnachfrage, kein Raten, kein Routing. Fehlt Kategorie C (Upstream-Ausgaben) → wird ignoriert, der Benutzer wird niemals aufgefordert, vorher andere Skills auszuführen.
Verbotene Wörter
Lass mich / ich hoffe / vielleicht / wahrscheinlich / möglicherweise / eventuell / lass uns; KI-Support-Ton (as an AI / I'd be happy to / feel free to); Keine Erfindung von Modulinhalten/Effekten/Zertifizierungen/Testimonials, die nicht im ursprünglichen Skripttext stehen; Kein fest codiertes Kundenprodukt-Wörterbuch; text_annotated darf keine Wörter aus raw_text löschen oder ändern (siehe Axiom 2).
Routing (empfohlen, nicht zwingend)
- Bereits segmentiert, möchte jedem Segment eine Person/Szene zuweisen →
100x-persona(pairings[].segment_refkann diesegment_idaus diesem Skill übernehmen) - Möchte die segmentierten Abschnitte mit echten Kameraeinstellungen/Kamerabewegungen/Audio kombinieren (benötigt Video) → zukünftiger Storyboard-Skill (sobald existent)
- Möchte zuerst visuelle Referenzen/Suchbegriffe finden →
100x-search-query - Möchte zum Haupteingang der 100x-Suite zurückkehren → 100x-System-Haupteingang (sobald existent)
Alle oben genannten sind "nach Bedarf empfohlene Folgeschritte", keine Voraussetzungen. Wenn die entsprechenden Skills noch nicht erstellt sind, beeinträchtigt dies die eigenständige Arbeit dieses Skills nicht.
Werkseitige Selbstprüfung
Führe node scripts/validate.js --selftest aus, um zu validieren. Die strukturellen Einschränkungen in schema.json (enum/pattern/additionalProperties/minItems/uniqueItems etc.) werden tatsächlich von ajv (echter JSON Schema draft-07 Validator, deklariert als devDependency in package.json, zuerst npm install ausführen) in scripts/validate.js ausgeführt, nicht durch manuelle Feldaufzählung. Axiom 2 (Vergleich von text_annotated/raw_text), Axiom 3 (Priorität der Atempausen-Stärke + Wort/Silben-Obergrenze, erfordert Parsing des Strings in Segmente und schrittweise Inferenz) und Axiom 4 (Referenzintegrität zwischen shots/segments + keine Waisen + fortlaufende Nummerierung) sind vier Arten von Kriterien, die in reinem JSON Schema nicht ausgedrückt werden können und durch handgeschriebenen Code in scripts/validate.js ergänzt werden:
npm install # Beim ersten Mal ajv installieren
node scripts/validate.js <bundle.json> [bundle2.json ...] # Ausgabe validieren
node scripts/validate.js --selftest # Integrierte Regressionstests ausführen
Quellen
Dieser Skill wurde für das Szenario "Segmentierung und Atempausen-Markierung von reinen Voiceover-Texten" entwickelt und umfasst Absatzlogik (10 Module + 7 Archetyp-System), Vorhersage des Shot-Zwecks (7 standardisierte Zwecke) und ein Regelwerk für Inline-Atempausen (Axiome 2/3). Die Spezifikationen der einzelnen Kriterien und Felddesigns sind in sources.md detailliert beschrieben.