Video-Generierung
Dieses Skill ist dafür zuständig, formelle Projektinhalte in ausführbare KI-Generierungseingaben umzuwandeln. Langfristige Quellen bleiben video/script/, video/materials/ und video/shots/; einmalige Generierungspakete sind lediglich ein Derivat, um die externe Generierung für den Benutzer zu erleichtern.
Bevor du endgültig entscheidest, wie viel Inhalt auf einmal generiert werden soll und welche Generierungsmethode verwendet wird, lies references/planning/GENERATION-STRATEGY.md. Wenn eine große Menge an Material / Shots in einem Batch generiert werden muss, lies zusätzlich references/planning/BATCHING.md: Validiere zuerst die Basis mit risikoreichen repräsentativen Stichproben, und erweitere die aktuell möglichen parallelen Batches erst, wenn die Ergebnisse stabil sind, ohne eine feste Batch-Größe vorzugeben. Wenn bereits vorhandene Videos im Wesentlichen korrekt sind und nur eine kontinuierliche Verlängerung oder generative lokale Änderung benötigt wird, lies stattdessen references/transform/EDIT-EXTEND.md und beurteile zuerst, ob eine deterministische Nachbearbeitung oder ein neuer Shot besser geeignet wäre.
1. Generierungsobjekte identifizieren
Generierungsobjekte können sein:
- Übergreifend in mehreren Shots wiederverwendbare Bildmaterialien wie Charaktere, Szenen, Requisiten, Produkte usw.;
- Das Video eines bestimmten Shots;
- Für einen bestimmten Shot exklusive: erstes Bild, letztes Bild, Storyboard-Skizzen / Keyframes, ergänzende Bilder oder Sounds;
- Langfristige Sprachreferenzen für einen Charakter oder ein projektweites Musik-/Voiceover-Konzept.
Lade zuerst die formell zugehörigen Inhalte: Verwende für wiederverwendbare Materialien die Definitionen aus video-materials und für Shot-Videos die SHOT.md aus video-shot. Rekonstruiere langfristige Fakten nicht aus einem einmaligen Paket oder alten Chatverläufen.
2. Langfristige Prompts schreiben
Bevor du universelle Video-Prompts für Shots erstellst, lies references/prompting/VIDEO-PROMPT.md. Wenn das aktuelle Projekt bereits den entsprechenden Modell-Adapter installiert hat, kompiliert der Adapter die universelle Shot-Absicht in den endgültigen, ausführbaren Prompt für dieses Modell. Alle Modell-Adapter halten sich einheitlich an references/prompting/MODEL-ADAPTER-CONTRACT.md und definieren klar den Einstiegspunkt / das Modell / den Modus, die aktuelle offizielle Fähigkeitsüberprüfung, die Eingabe-Mapping, die Ausführungseinstellungen und unbekannte Punkte. Wenn für denselben Shot mehrere Modelle parallel getestet werden müssen, lies zusätzlich references/prompting/MODEL-COMPARISON.md und behalte dieselbe SHOT.md und eine fortlaufende Nummerierung der Generierungsergebnisse bei; dupliziere das Shot-Verzeichnis nicht pro Modell.
Prompts für wiederverwendbare Materialien werden im entsprechenden video/materials/-Verzeichnis gespeichert; Shot-Prompts werden im entsprechenden Shot-Verzeichnis mit wenigen, klaren Versionen wie prompt_v01.md, prompt_v02.md usw. abgelegt.
Prompts kompilieren nur die Informationen, die das aktuell generierende Modell wirklich benötigt. Die internen Shot-/Material-Definitionen können umfassender sein als der endgültige Modell-Prompt; die Modellfähigkeiten, Felder, Dauer und Referenz-Eingabelimits werden durch das aktuell geladene Modell-Adapter-Skill oder die offiziellen Dokumentationen bestimmt und nicht in diesem Skill fest codiert. Die Abgrenzung von Ausführungseinstellungen wie Modell / Einstiegspunkt, Dauer, Seitenverhältnis, Ein-/Ausschalten von Sounds zu den langfristigen Projektdaten erfolgt gemäß references/prompting/EXECUTION-PARAMETERS.md.
Wenn keine zuverlässigen modellspezifischen Regeln existieren, bleibe bei allgemeinen, klaren und verifizierbaren Bild- und Aktionsbeschreibungen. Teile dem Benutzer mit, dass derzeit universelle Prompts verwendet werden, und erfinde keine spezifischen Modellfähigkeiten.
3. Referenzmaterial auswählen
Verwende die minimal suffiziente Referenzmenge. Jede Referenz sollte die Frage beantworten können: "Was stabilisiert sie?" – Charakteridentität, Kleidung, Szene, Produktstruktur, Aktion, Kameraführung oder einen anderen spezifischen Zweck.
Stopfe keine irrelevanten Referenzen in dieselbe Generierung, um Identitätskonflikte, Stilverunreinigung oder Abweichungen der Produktstruktur zu vermeiden.
4. Einmalige Generierungspakete erstellen
Vor der formellen Paketierung lies references/planning/GENERATION-PACK.md und führe die Batch-Erstellung nach Abhängigkeiten von Bild-/Audio-/Video-Paketen, Rückgabedateinamen, minimalen Referenzmengen sowie Regeln für Rückimport und Löschung durch. Wenn das Paket direkt an den Benutzer übergeben werden soll, verwende references/planning/PACK-TEMPLATES.md, um eigenständige Aufgabendateien zu generieren. Für die Initialisierung von Packs im Projekt, das Kopieren formeller Dateien, das Verzeichnis returns, die Statusüberprüfung, das Zippen und die sichere Bereinigung sollte das zu diesem Skill gehörige Skript scripts/generation_pack.py bevorzugt wiederverwendet werden; schreibe nicht für jedes Projekt temporäre Verpackungsskripte neu. Dieses CLI kümmert sich nur um den Dateilebenszyklus und entscheidet nicht über Prompts, Referenzverantwortlichkeiten oder Review-Schlussfolgerungen.
Erstelle unter .tmp/ im Projekt ein beschreibendes Verzeichnis. Das Paket bleibt standardmäßig einfach:
.tmp/<generation-pack>/
├── README.md
├── <prompt files>
└── materials/
Kopiere nur die für diese Generierung benötigten Prompts und Referenzmaterialien. Die README sollte mindestens Folgendes klar beschreiben:
- Ziel dieser Generierung;
- Empfohlene Generierungsreihenfolge (falls es Abhängigkeiten gibt);
- Welche Referenzen für welchen Teil verwendet werden;
- Rückgabedateinamen;
- Vom Benutzer besonders zu prüfende harte Einschränkungen.
Verwende beim Rückerhalt von Bildmaterial den entsprechenden langfristigen Dateinamen. Für Shot-Videos frage vor der Rückgabebenennung mit generation_pack.py next-take den nächsten unbenutzten, monoton steigenden takeNN für den entsprechenden Shot ab. Rate nicht manuell die Nummer und fange nicht wieder mit take01 an, nur weil das Modell gewechselt wurde.
5. Ergebnisse rückimportieren
Nachdem der Benutzer die Generierungsergebnisse zurückgebracht hat, überprüfe zuerst die Dateizuordnung und lege dann die formellen Ergebnisse in den entsprechenden Zielverzeichnissen ab:
- Wiederverwendbare Materialien →
video/materials/<category>/; - Shot-Ergebnisse →
video/shots/<shot-id>/; - Shot-exklusive Sounds/Bilder → dasselbe Shot-Verzeichnis.
Erst nachdem video-review eine bestimmte Rückgabedatei eindeutig akzeptiert hat, verwende generation_pack.py archive --confirm-reviewed, um sie an die formelle Zielposition zu kopieren; dieser Vorgang behält die Originaldatei im Verzeichnis returns/ bei, gibt SHA-256 zurück und überschreibt keine vorhandenen formellen Dateien. Lösche das einmalige Generierungspaket erst mit cleanup, nachdem alle formellen Archivierungen abgeschlossen sind und bestätigt wurde, dass das temporäre Paket keine exklusiven Informationen mehr enthält.
6. Iterationsdisziplin
Bei einem Generierungsfehler beurteile zuerst, ob das Problem von
- den langfristigen Material-/Identitätsdefinitionen;
- der
SHOT.mdselbst; - der Formulierung des Prompts;
- der Zufälligkeit der Modellausführung;
- oder einem Fehler, der deterministisch in der Nachbearbeitung behoben werden kann,
herrührt.
Ein erneuter Versuch sollte priorisiert immer nur eine Hauptvariable ändern. Ersetze nicht das Lokalisieren des Problems durch ständig längere Prompts.
Abschlusskriterien
Das vom Benutzer erhaltene Paket kann die aktuell anstehende Generierungsaufgabe direkt ausführen; die Rückgabedateinamen sind klar; das formelle Projekt bleibt die einzige langfristige Quelle; nach der Archivierung der Ergebnisse kann das temporäre Paket sicher gelöscht werden.