Communitygithub.com

motionproof

Motion-Graphics-Filme (Reels, Shorts, Launch-Videos, Produkt-Promos, Brand-Stings, Kinetic Type, animierte Anzeigen) direkt, erstellen und prüfen, sodass sie wie von einem Menschen designt wirken und messbare Checks bestehen.

Was ist motionproof?

motionproof ist eine KI-Agenten-Fertigkeit für die Erstellung und Qualitätssicherung von Motion-Graphics-Filmen. Sie unterstützt die Plattformen Claude Code, Cursor und Codex und bietet einen strengen, messbasierten Workflow, der sicherstellt, dass jeder Film eine klare, von der Marke besessene Idee vermittelt und niemals eine Wiederholung früherer Arbeiten darstellt. Der Agent übernimmt die Rolle des Regisseurs, Designers und Prüfers: Er erstellt Storyboards, baut die schwierigste Szene zuerst, rendert Zwischenstände und führt automatisierte Skripte aus, die Lesbarkeit, Kontrast, Plattform-Sicherheitszonen, Lesezeit, tote Luft, Endungen, Blitze und Lautstärke messen. Die Ausgabe erfolgt in HTML, HyperFrames oder Remotion; die Ergebnisse werden in einer `NOTE.md` dokumentiert und in einer `motion-ledger.jsonl`-Datei festgehalten, um zukünftige Wiederholungen zu vermeiden. Der Workflow umfasst acht Schritte: Maschinencheck, Briefing, Ideenfindung, Ledger-Prüfung, Storyboard, Bau der schwierigsten Szene, Draft-Rendering mit Checks, Sound-Mastering und finale Prüfung mit Ledger-Eintrag. Das Skill legt großen Wert auf messbare Qualitätsgates – ein FAIL wird behoben, nie diskutiert; ein WARN wird untersucht und entweder behoben oder in der `NOTE.md` erklärt. Besonderes Augenmerk liegt auf der Lesbarkeit auf Handys: Text muss groß genug, kontrastreich, innerhalb der Plattform-Sicherheitszonen und ausreichend lange auf dem Bildschirm sein. Die Anzahl der Blitze ist auf maximal drei pro Sekunde begrenzt, und die Fertigstellung eines Films erfordert, dass alle Gates von Skripten bestätigt und nicht nur subjektiv als „gut“ bezeichnet werden.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/producoestiagopaulino-source/motionproof/tree/HEAD

In Ihrer bevorzugten KI fragen

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

Dokumentation

Was macht motionproof?

Du bist der Regisseur, der Designer und die Person, die die Arbeit prüft. Du entscheidest, was der Film den Betrachter glauben macht, du baust ihn und dann misst du ihn, wie es ein Fremder tun würde. Eine Zahl aus einem Skript hat Vorrang vor deinem Eindruck des Renders. SKILL bezieht sich im Folgenden auf den Ordner, der diese Datei enthält.

Befehle sind für jede Shell geschrieben. Unter Windows verwende python (oder py -3) wo python steht; Pfade mit Leerzeichen in Anführungszeichen. PowerShell hat kein &&: führe einen Befehl pro Zeile aus.

Die fünf Regeln

  1. Eine Idee, die der Marke gehört. Decke das Logo ab: Wenn ein Wettbewerber denselben Film zeigen könnte, fang von vorne an. Die Idee stammt aus dem eigenen Material der Marke (ihrem Produkt, ihrer Geste, ihrer Aufgabe, ihrem Ort), niemals aus der ersten Assoziation ihres Namens.
  2. Jeder Beat kauft einen Glauben. Schreibe „nach diesem Beat glaubt der Betrachter ___“ für jeden Beat. Wenn du die Lücke nicht füllen kannst, streiche den Beat. Zeige, was passiert, dann sag es, sag es niemals nur.
  3. Nie denselben Film zweimal. Bevor du storyboardest, führe das Ledger aus. Ein wiederholter Track, ein wiederholtes Konzept oder ein wiederholter Exit, oder die Hälfte der Achsen eines kürzlichen Films, wird abgelehnt.
  4. Gemessen, dann bewertet. Führe die Skripte aus; zitiere ihre Zahlen in der NOTE.md. Alles, was ein Skript messen kann, ist ein Gate. Was es nicht messen kann, schaust du an und sagst, dass du es angeschaut hast.
  5. Lesbar auf einem Handy. Text groß genug, kontrastreich genug, innerhalb des sicheren Bereichs der Plattform, lange genug auf dem Bildschirm zum Lesen. Hochformat ist die Vorgabe für soziale Medien, kein nachträglicher Einfall.

Workflow

0. Maschinencheck (10 s)

node "SKILL/scripts/doctor.mjs"

Stoppt bei fehlendem ffmpeg, Node < 22 oder weniger als 20 GB frei. Ein Browser (Chrome oder Edge) wird nur für HTML-Filme benötigt.

1. Briefing

Schreibe in vier Zeilen: wer zusieht, wo (Plattform und Seitenverhältnis), was sie danach tun sollen, was sie fühlen sollen. Dann die eine wahre Sache, für die der Film da ist: ein echtes Feature, ein echtes Ergebnis, ein echter Moment. Gehe von Annahmen aus, anstatt anzuhalten, um Routinefragen zu stellen; frage nur, wenn das Briefing wirklich mehrdeutig ist (welche Marke, welche Plattform, welches Angebot).

2. Drei Ideen, dann eine

Schreibe drei Ideen verschiedener Art (siehe references/direction.md: Dokumentation einer Aufgabe, eine einzelne gehaltene Einstellung, ein Countdown, ein Diagramm, das sich aufbaut, die Reise eines Objekts, ein Vorher/Nachher-Match-Cut und mehr). Führe den Logo-Abdecken-Test bei jeder durch. Wähle eine aus und schreibe in einer Zeile, warum.

3. Ledger

python "SKILL/scripts/ledger.py" suggest --brand "<Marke>"
python "SKILL/scripts/ledger.py" check --brand "<Marke>" --concept <x> --opening <x> --transition <x> --camera <x> --type <x> --palette <x> --texture <x> --track <x> --exit <x>

Exit 1 bedeutet, dass die Kombination einen kürzlichen oder abgelehnten Film wiederholt: Ändere die Achsen, die es nennt. Das Ledger befindet sich im Projekt (motion-ledger.jsonl oder $MOTIONPROOF_LEDGER). Falls das Projekt bereits eine eigene Bibliothek vergangener Filme führt, lies diese ebenfalls.

4. Storyboard (STORYBOARD.md)

Format und Safe-Zone-Voreinstellung (references/formats.md), der Grund/Licht/Textur jedes Akts, der Heldenmoment (der Frame, der einen Screenshot wert ist), und die Beat-Tabelle: Zeit in Frames, Rolle (Hook, Turn, Proof, Close), was der Betrachter danach glaubt, was sich bewegt, Ein- und Ausgangskurve (references/motion-catalog.md), wie es zum nächsten Beat überleitet, und der On-Screen-Text mit seiner minimalen Lesezeit (0,5 s + Zeichen / 17). Wenn der Text eines Beats nicht in seine Zeit passt, kürze Wörter, nicht die Zeit.

5. Baue den schwersten Beat zuerst

Wähle den Adapter (references/adapters.md):

  • Reines HTML: Kopiere templates/film.html und templates/kit.js in den Filmordner.
  • HyperFrames: Behalte seine Komposition bei; die Skripte steuern window.__timelines.
  • Remotion: Kopiere adapters/remotion/ in src/; verwende ease(), dur(), safeBox(), readingFrames(), <SafeGuide/>.

Baue den Heldenmoment und seinen schwierigsten Übergang, rendere Standbilder und schaue sie an, bevor du den Rest baust:

node "SKILL/scripts/render.mjs" film/index.html --still 0.5,2.2,4.0 --out film/stills      (HTML / HyperFrames)
npx remotion still <Comp> film/stills/f60.png --frame=60                                  (Remotion)

6. Entwurf-Rendering und Checks

node "SKILL/scripts/render.mjs" film/index.html film/draft.mp4 --scale 0.5
node "SKILL/scripts/probe.mjs" film/index.html --zones reels
python "SKILL/scripts/review.py" film/draft.mp4 --zones reels --expect <Sekunden> --exit-required

probe.mjs liest das Live-DOM (HTML und HyperFrames): L1 Größe, L2 Kontrast, L3 Sicherheitszone, L4 abgeschnittener Text, L5 Lesezeit; es warnt auch vor dem Slide-Deck-Look (W3 Kicker über Headline, W4 Slide-Layout, W5 getippte Headline, W6 Fortschrittsbalken, W7 Stock-UI-Karte). Füge --strict-style hinzu, wenn das Briefing nach Kino verlangt, nicht nach Interface; ein Muster, das die Idee ist, erhält data-allow-<Name> oder data-ui und eine Zeile in der NOTE.md (Tabelle in references/review.md). review.py liest die Pixel jedes MP4 (auch Remotion und bearbeitete Dateien): R1 Render, R2 tote Luft, R3 Ende, R4 Blitze, R5 Sicherheitszonen-Pixel, R6 Ton. Öffne sheet.jpg aus dem Review-Ordner: Die roten Bänder sind die Plattformränder. Beschreibe jeden Sheet-Frame in einem Satz (was auf dem Bildschirm zu sehen ist, wohin das Auge geht), bevor du etwas beurteilst.

Behebe in dieser Reihenfolge: unwahr oder kaputt; die Idee; die Übergänge zwischen den Beats; Hierarchie und Maßstab; Timing; Oberfläche; Ton. Ein FAIL wird behoben, niemals diskutiert. Ein WARN wird untersucht und entweder behoben oder in der NOTE.md erklärt.

7. Ton

Musik auf dem Raster: python "SKILL/scripts/beats.py" grid --bpm <bpm> --fps 30 --duration <s> liefert Beat-Frames für Schnitte und Hits. Falls ein Sound-Tool in der Umgebung verfügbar ist (eine Soundeffekt-Bibliothek, ein Audio-Analyse-Tool), verwende es, um Hits auszuwählen und zu platzieren. Stille vor dem großen Hit; ziehe die Musik beim Lesen herunter. Dann:

python "SKILL/scripts/master.py" film/final-raw.mp4 film/final.mp4 --target reels --fade 1.0

8. Finaler Check, Notiz, Ledger

python "SKILL/scripts/review.py" film/final.mp4 --zones reels --target reels --expect <s> --expect-audio --exit-required --fade-required
python "SKILL/scripts/beats.py" check --bpm <bpm> --report film/final-review/report.json
python "SKILL/scripts/ledger.py" add --brand "<Marke>" --film <Name> <die gleichen Achsen wie in Schritt 3>

Schreibe NOTE.md: die Idee und warum; jeder Beat und was er kauft; was real und was illustrativ ist; die Gate-Zeilen, kopiert aus probe.mjs und review.py; die Ein-Satz-Frame-Beschreibungen; was du noch verbessern würdest. Schreibe niemals, dass der Film gut ist: Schreibe, was du geprüft hast. Wenn der Betrachter reagiert, zeichne es auf: ledger.py verdict --film <Name> --verdict approved|rejected --note "<seine Worte>". Eine abgelehnte Kombination wird für jeden zukünftigen Film blockiert.

Niemals ausliefern

  • Einen Film, den niemand angesehen hat, oder Gates, die ohne die Skriptzeilen behauptet werden.
  • Text unter dem Interface der Plattform, abgeschnitten vom Bildrand, kleiner als 3,1 % der kurzen Seite, mit einem Kontrast unter 4,5:1 oder weg, bevor er gelesen werden kann.
  • Mehr als drei Blitze in einer Sekunde.
  • Einen fertigen Frame, der über die End-Halte-Grenze hinaus gehalten wird; ein eingefrorenes Bild in der Mitte; ein Ende, das einfach stoppt (verwende eine Ausgangsbewegung und einen Tonfade).
  • Denselben Track, dasselbe Konzept oder denselben Exit wie der letzte Film der Marke.
  • Seiten-Chrome als Dekoration: Eckenetiketten, Zähler „01 / 04“, Zeitcodes, Fortschrittsbalken. Nur erlaubt, wenn es die Idee selbst ist (ein Kontrollraum, ein Countdown): dann markiere es mit data-diegetic (oder data-ui für einen echten Produktbildschirm) und sage warum in der NOTE.md.
  • Erfundene Zahlen, Testimonials oder Interfaces, die als real dargestellt werden.

Dateien

PfadWas
references/direction.mdBriefing, Ideenarten, Beats und was sie kaufen, Übergänge, portugiesische Kopierhinweise
references/motion-catalog.mdKurven, Dauern, Staffelungen, Halte, wie man wählt
references/formats.mdSeitenverhältnisse, Sicherheitszonen, Schriftgrößen pro Format
references/sound.mdMusikraster, Hits, Lautstärkeziele, Fades
references/review.mdJedes Gate, seine Nummer, was es nicht sehen kann
references/adapters.mdHTML-, HyperFrames- und Remotion-Verträge
data/*.jsonZonen, Lautstärkeziele, Motion-Tokens, Ledger-Vokabular (bearbeite diese, nicht die Skripte)
scripts/doctor, render, probe, review, master, beats, ledger
templates/film.html und die abhängigkeitsfreie kit.js-Laufzeit
adapters/Remotion-Hilfsmittel und die HyperFrames-Notizen

Verwandte Skills