Communitygithub.com

stedra-animatic

Erstellt einen animierten Erklärfilm, ein Demovideo oder einen Kurzfilm mit Erzählung und Musik aus einer einzelnen Eingabeaufforderung. Der Benutzer führt Regie, Claude baut.

Was ist stedra-animatic?

Der Skill 'stedra-animatic' verwandelt eine einzelne Eingabeaufforderung in einen vollständigen Animatic-Entwurf mit Bild, Untertiteln, Sprachaufnahme (Kokoro), temporärem Soundtrack und Soundeffekten, der live in Chrome mit Motion Canvas abgespielt wird. Dieser erste Entwurf ist in etwa 15 Minuten fertig. Danach folgt eine iterative Verfeinerung: pro Durchlauf wird eine Schicht (Skript, echte Stimme, finale Musik, Feinschliff) verbessert. Der gesamte Workflow basiert auf einem zentralen Ereignisplan (`events.json`), der durch erzwungene Ausrichtung entsteht. Änderungen an der Tonspur ziehen automatisch das gesamte Timing von Bild und Musik nach. Der Skill ist für Claude Code, Cursor und Codex konzipiert und setzt voraus, dass der Benutzer Regie führt (Entscheidungen trifft, seine Stimme aufnimmt, Feedback gibt), während die KI die technische Umsetzung übernimmt. Die Architektur ist streng: eine globale Uhr, Szenen als reine Funktionen der Zeit, und alle Musik-/Soundeffekte werden an benannte Ereignisse gebunden, nicht an absolute Zeitangaben.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/stedra-demoscene/claude-animator/tree/HEAD/plugins/stedra-animatic/skills/stedra-animatic

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht stedra-animatic?

Du baust einen erzählten, vertonten, animierten Film mit dem Benutzer. Der Benutzer führt Regie. Du baust. Der Workflow stammt aus einem echten Projekt: ein 11-minütiger Film, etwa 109 Commits in 3 Tagen, jeder Beat von einem Menschen dirigiert. Es war nicht "Einmal prompten, Kaffee trinken". Der erste Entwurf ist jetzt schnell. Das Fertigstellen nicht.

Phase 0: Erwartungen setzen (immer, erste Antwort)

Sage dem Benutzer in unter 10 Zeilen:

  • Die erste Eingabeaufforderung liefert dir einen vollständigen Animatic in etwa 15 Minuten: jede Schicht in Entwurfsqualität vorhanden (Bild, Untertitel, Rohstimme, temporärer Soundtrack, Soundeffekte), live in Chrome abgespielt.
  • Das Fertigstellen dauert Tage kontrollierten Iterierens, nicht einen Nachmittag. Ein 3-5-minütiger Film bedeutet Dutzende Runden mit dem Skript, Neuaufnahmen der Stimme, Musikanmerkungen und Feinschliff. Der Animatic ist die Startlinie.
  • Sie tun, was nur ein Mensch kann: entscheiden (Geschichte, Geschmack, was wahr ist), ihre eigene Stimme aufnehmen (sie klingt am besten, die Rohstimme ist ein Platzhalter), und ansehen und anhören und Feedback geben. Du kannst nicht in Echtzeit hören oder sehen. Du arbeitest mit Pegeln, Spektren, Einsätzen und abgetasteten Frames, gut für das Timing, unzuverlässig für den Geschmack.
  • Quick-Win-Modus: eine animierte Szene oder ein Diagramm, etwa 30 Minuten, ohne Audio. Siehe references/workflow.md.

Gib an, welchen Modus du aus der Eingabeaufforderung annimmst (eine Szene oder ein Diagramm bedeutet Quick Win, ein erzählter Film bedeutet Animatic). Fahre fort. Der Benutzer korrigiert dich, wenn es falsch ist.

Die Vorschau-Regel (hart)

Vorschau bedeutet live in Chrome. Niemals ein Encoding. Für eine Vorschau musst du:

  1. den Motion Canvas Editor starten (npm start in film/) im Hintergrund, oder ihn laufen lassen,
  2. dem Benutzer die URL geben (normalerweise http://localhost:9000) und sie in Chrome öffnen, wenn möglich,
  3. die gemischte Audiospur im Editor geladen haben, sodass Bild und Ton zusammen abgespielt werden,
  4. dich auf Hot Reload bei Dateiänderungen verlassen. Starte den Editor nicht für Bearbeitungen neu.

Encode nur (a) eine Überprüfungsrolle, die der Benutzer anfordert, und (b) das Finale. Rendere niemals eine MP4 "um etwas zu überprüfen", und bitte den Benutzer niemals, einen Render zu öffnen, um Arbeit zu überprüfen. Wenn der Editor nicht läuft, starte ihn. Wenn du Audio geändert hast, sage ihnen, sie sollen neu laden (Audio wird einmal geladen).

Phase 0b: Bootstrap (nur Werkzeuge, pro Durchlauf verschoben)

Suche nach animator.config.json im Projektstamm. Wenn vorhanden, lies es, führe die Prüfung erneut aus, fahre fort. Andernfalls:

  1. Führe die Umgebungsprüfung aus: scripts/check_env.sh (macOS, Linux) oder scripts/check_env.ps1 (Windows, powershell -NoProfile -ExecutionPolicy Bypass -File <Pfad>, auch von Git Bash). Ein Werkzeug zählt nur, wenn es läuft, nicht wenn es im PATH ist (unter Windows ist python oft ein Store-Stub). Speicher, Kerne und Festplatte stammen aus dem Bericht. Frage den Benutzer nicht.
  2. Zeige einen Ein-Bildschirm-Plan mit Größen an und warte auf ein Ja. Bootstrap betrifft nur Werkzeuge. Keine kreativen Fragen.
  3. Installiere gemäß references/setup.md (brew / apt / winget, Python über uv in einem projektlokalen venv). Suche jeweils aktuelle URLs und Lizenzen in diesem Moment. Modelliere oder sample niemals Models oder Samples in das Repo.
  4. Führe einen Smoke-Test durch, schreibe animator.config.json (Werkzeugpfade, Verzeichnisse), committe.

Was der Animatic braucht (installiere dies zuerst): Node, Motion Canvas, ffmpeg, uv mit Python (numpy, scipy, soundfile), Kokoro (Rohstimme), einen Forced-Aligner. Verschoben auf spätere Durchläufe: FluidSynth, die Sample-Bibliothek, Chatterbox, alles für die endgültige Partitur. Ein kleiner Download ist in Ordnung. Große warten, bis der Benutzer den Durchlauf erreicht, der sie benötigt.

Die Architektur (weiche nicht davon ab)

script.md -> voice (scratch, then real) -> forced alignment -> events.json -> Motion Canvas scenes (picture)
                                                    |
                                                    +--> temp score + SFX (synth), later MIDI + samples -> mix.wav
                                                                  mix.wav is loaded in the editor and in the final mux
  • events.json ist die einzige Quelle für Zeiten. Bild, Musik und SFX lesen daraus. Keine handgemessenen Offsets.
  • Eine Szene ist eine reine Funktion der Zeit. Gleiche Eingaben, gleicher Frame. Kein Date.now(), keine ungesäte Zufälligkeit.
  • Eine globale Uhr. Der gesamte Film ist eine Zeitachse in Sekunden. Eine Partitur darauf.
  • Verankere an der Geschichte, nicht an der Uhr. Musikphrasen und Beats heften sich an benannte Ereignisse, niemals an Taktnummern oder absolute Sekunden.
  • Das Austauschen der Stimme ändert das Timing von allem. Ersetze Rohaufnahmen durch echte, generiere events.json neu, und Bild und Musik bewegen sich ohne manuelle Bearbeitungen. Dies ist der Abnahmetest der Pipeline.

Phasen

Details in references/workflow.md. Der Animatic ist ein schneller Durchlauf über jede Schicht. Die Upgrades sind der langsame Teil, eine Schicht nach der anderen, jede mit einem Benutzer-Gate und einem Commit.

#DurchlaufAusgabeZeit
AAnimatic: Kurzbeschreibung + Annahmen, Skript, Roh-VO (Kokoro), Ausrichtung, events.json, Szenenentwürfe mit Untertiteln, temporärem Soundtrack und SFX, mix.wav, live in Chromeein kompletter Film-Entwurf~15 Min
U1Skript: Vorlesen, >>> Notizen, Umschreibungen, erneutes Ausführen der Pipelineendgültiges SkriptStunden
U2Stimme: der Benutzer wählt (a) eigene Aufnahme oder (b) Chatterbox (optional geklont von der eigenen Stimme, mit Einwilligung), gleichwertig. Auswählen, bearbeiten, neu ausrichten, Ereignisse neu generierenendgültige VO, alles neu getaktetStunden
U3Partitur: MIDI aus Ereignissen, gerendert mit einer Sample-Bibliothek, gemischtechte MusikStunden
U4Feinschliff: Bilddetails, Filmmaterial, SFX, Untertitel aus, Timing-Anpassungender FilmTage
FFinale: Bildsequenz- oder Videoexport, ffmpeg-Muxout/film_1080p60.mp4Minuten

Hüpfe nicht voraus. Upgrade eine Schicht pro Runde, zeige sie live, hole Feedback ab, committe.

Regeln, die du immer befolgst

Zusammenarbeit mit dem Benutzer

  • Arbeite wie ein Team, das das Briefing eines Regisseurs entgegennimmt. Die erste Eingabeaufforderung ist das Briefing. Triff Annahmen, baue den gesamten Animatic auf einmal und liste die Annahmen oben in brief.md auf (Länge, Ton, Stimme, Musik, Plattform, was nachgeahmt wird), damit der Benutzer sie korrigieren kann. Kein vorheriges Interview. Frage nur, wenn etwas wirklich blockiert (kein Thema, kein Publikum, widersprüchliche Ziele), und dann eine Frage.
  • Stelle eine kurze Frage vor einem Umweg, nicht danach. Wenn sie sagen, dass etwas fehlt oder falsch ist, frage zuerst, was sich geändert hat, seit es richtig war (eine Neuaufnahme, ein Schnitt, ein neues Timing), bevor du etwas Neues hinzufügst.
  • Behaupre niemals, etwas gehört oder gesehen zu haben. Sage, was du gemessen hast, und bitte sie, zuzusehen und zuzuhören.
  • Notizen leben in der Datei: Der Benutzer schreibt >>> note Zeilen in script.md. Arbeite jede entweder in das Skript oder eine Regieanweisung ein, lösche den Marker, sage, was du getan hast.
  • Sage ihnen, dass die Rohstimme ein Platzhalter ist und ihre eigene Aufnahme am besten klingen wird.

Skript und Stimme (references/voice.md)

  • Gesprochenes Deutsch: kurz, konkret, prägnant. Keine KI-Signale: "leise", "nahtlos", "eintauchen", "Gewebe", "Zeugnis", "Es ist nicht X, es ist Y", gestapelte Drillinge.
  • Jede Zeile hat eine ID und ist eine eigene Aufnahme. Nimm einfach auf, korrigiere den Pegel in der Postproduktion.
  • Rohstimme: Kokoro, kostenlos und offline. Niemals Betriebssystem-Stimmen (say, SAPI, espeak). Vermeide nicht-kommerzielle Gewichte. Die Ausrichtung läuft auch auf der Roh-Audio, sodass events.json vom ersten Animatic an existiert.

Bild (references/motion-canvas.md)

  • Standard 1920x1080, 60 fps. Kein 4K, es sei denn, es wird verlangt.
  • Speicherwächter. Kein shadowBlur, keine großen Unschärfe-Ebenen, die jeden Frame neu gezeichnet werden, keine Tausenden von einzeln gefilterten Formen. Vortäuschen von Leuchten mit einigen wenigen breiten, niedrig-alpha Strichen oder einem gecachten Sprite. Führe einen Watchdog-Test für eine schwere Szene durch (RSS-Limit), bevor der Benutzer sie öffnet. Ein schwerer Prozess nach dem anderen. Baue niemals Audio oder Ereignisse neu auf, während ein Render läuft.
  • Wenn eine Szene auf eine Leinwand zeichnet, stelle den Zustand wieder her (save/restore, setze globalAlpha zurück) in jedem Helfer. Ein durchgesickertes Alpha verursacht Flimmern.
  • Eine Produktdemo im Film ist ein Requisit: skriptet, aufgenommen oder vorgetäuschte UI, niemals live.

Musik (references/music.md), Standardwerte, die der Benutzer überstimmen kann; sie gelten auch für die temporäre Partitur

  • Fester Pegel unter der Stimme, kein Ducken, etwa 10 dB unter der Sprache. Schichten fügen Farbe hinzu, keine Lautstärke.
  • Kein Arpeggio oder rhythmischer Füllstoff unter Erzählung. Pads, Sub, ein Thema, Swells, Riser, Stille.
  • Schnitte zur Stille sind trocken, vor dem Hall, sodass der Raum ausklingt.
  • Temporäre Partitur und SFX werden in Python auf der events.json-Uhr synthetisiert, mit null großen Downloads. Die Sample-Bibliothek wartet auf U3.

Prozess

  • Windows: Lies zuerst den Windows-Abschnitt von references/setup.md. Zitiere Pfade, halte generierte Shell-Skripte LF, halte den Projektpfad kurz.
  • Kleine Commits, einer pro überprüfter Runde. Stage explizite Pfade. Committe keine Rohaufnahmen, Modelle, Samples, node_modules oder Render. Biete eine .gitignore an.
  • Überprüfungsrollen: nur wenn der Benutzer danach fragt. Encode nur die geänderten Abschnitte mit 2 s Kontext, bei 720p30, mit Audio.
  • Build-Wächter: Weigere dich, das Finale zusammenzusetzen, wenn der Mix geändert wurde, nachdem seine Frames exportiert wurden, und weigere dich zu bauen, während ein Render läuft. Erzwinge im Code (Lockfile, Hash neben dem Export), nicht durch Versprechen.
  • Cache teure Schritte (Ausrichtung, Synthese, Stems) mit einem Schlüssel aus dem Eingabe-Hash.

Wenn etwas schief geht

Lies zuerst references/lessons.md. Bekannte Fallstricke: De-Clicker, die Plosive verschlucken, ein veralteter Mix, der aus dem Browser-Cache geliefert wird, zwei Tabs auf einem Mikrofon, ein End-of-Line-Kommentar, der eine schließende Klammer verschluckt, räumliche Audio-Kopfhörer, die einen Stereomix mono klingen lassen.

Dateien

  • references/workflow.md: der Animatic und jeder Upgrade-Durchlauf, Tore, der Quick Win
  • references/events-schema.md: das events.json-Format und die Regeln
  • references/motion-canvas.md: Projekteinrichtung, von Ereignissen gesteuerte Szenen, Vorschau, Export, Performance-Wächter
  • references/music.md: temporäre Partitur und SFX-Synthese, MIDI auf einer Uhr, Samples, Mix
  • references/voice.md: Skript-Stimmregeln, Roh-TTS, Aufnahme, Auswahlen, Bearbeitungen
  • references/lessons.md: destillierte Retrospektive
  • references/setup.md: Bootstrap, Standardwerte mit Installationsbefehlen, animator.config.json
  • scripts/check_env.sh, scripts/check_env.ps1: kompakter Werkzeugbericht (idempotent, schreibgeschützt)
  • templates/: events.example.json, Motion Canvas events.ts und Szenen-Skelett

Verwandte Skills