Communitygithub.com

EvoFlow - Produkt-Launch zu HyperFrames

Verwandle eine Produkt- oder Marketing-URL, ein eingefügtes Skript oder ein kurzes Briefing in ein Produkt-Launch-Video – inklusive SaaS-Werbung, Feature-Enthüllungen, App-Launches, Unternehmensvideos und Produktmarketing-Clips.

Was ist EvoFlow - Produkt-Launch zu HyperFrames?

EvoFlow ist ein KI-Agenten-Skill, der Produkt-Launch-Videos generiert, indem er eine schrittweise Pipeline orchestriert: vom Briefing über Asset-Erfassung, visuelles Design, Storyboarding, Audio-Generierung bis hin zum finalen Rendering in HyperFrames. Er unterstützt Claude Code, Cursor, Codex und andere CLI-basierte KI-Agenten. Der Skill klassifiziert die Eingabe (URL, Skript, oder nur eine Marke), extrahiert Design-Tokens (Farben, Schriftarten) und wendet eine von mehreren mitgelieferten visuellen Vorlagen („Presets“) an, die automatisch an die Marke angepasst werden. Jeder Frame wird als zeitcodierte Sequenz von Szenen geschrieben, sodass die visuelle Entwicklung über die gesamte Dauer des Voiceovers erfolgt – ohne Einfrieren am Anfang. Der Skill delegiert die Frame-Erstellung an Unter-Agenten, nutzt die HeyGen-Medienbibliothek für Musik und Bilder und erzeugt abschließend eine MP4-Datei mit Übergängen und optionalen Untertiteln.

Funktioniert mit~Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/EvovexAI/EvoFlow/tree/HEAD/skills/public/product-launch-video

In Ihrer bevorzugten KI fragen

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

Dokumentation

media-use: Bevor Audio/Bilder beschafft werden, rufe /media-use auf, um BGM/SFX/Bilder aus dem HeyGen-Katalog zu beziehen. Führe zuerst --adopt aus, um vorhandene Assets zu registrieren. Siehe /media-use-Skill.

Produkt-Launch zu HyperFrames

Nutze diesen Skill, um ein Produkt zu erfassen, seine Marke zu verstehen, ein Launch-Video zu planen und es Frame für Frame in HyperFrames zu bauen.

Bestätige den Pfad vor Schritt 0. Du bist der Orchestrator. Führe jeden Schritt aus, überprüfe sein Tor, und fahre erst dann mit dem nächsten Schritt fort. Dieser Skill ist für ein Produkt, das vermarktet, gelauncht, beworben oder enthüllt wird, einschließlich Anfragen wie „Werbung für unsere Seite“, wenn der Zweck werblich ist. Leite andere Absichten woanders hin: eine allgemeine Nicht-Launch-Website-Tour -> /general-video; eine thematische Erklärung ohne Produkt -> /faceless-explainer; ein GitHub-PR -> /pr-to-video; Untertitel auf vorhandenem Material -> /embedded-captions; eine kurze, unkommentierte Motion-Grafik -> /motion-graphics. Wenn der Benutzer nur „ein Video erstellen“ sagt oder der Pfad unsicher ist, lies zuerst /hyperframes.

Du bist der Orchestrator. Arbeite in videos/<projekt>/. Führe die Schritte der Reihe nach aus und passiere jedes Tor, bevor du fortfährst. Benutzergesteuerte Schritte sind Schritt 0, Schritt 3 und Schritt 6. Führe jeden Schritt selbst aus, außer Schritt 5, wo du einen Unter-Agenten pro Frame entsendest. Lege hier keine Design- oder Bewegungsregeln fest; diese befinden sich im Frame-Worker-Unter-Agenten, in den lokalen ../hyperframes-animation/rules/ + ../hyperframes-animation/blueprints/ und in hyperframes-creative.

Workflow: Schritt 0 Einrichtung -> hyperframes.json; Schritt 1 Erfassung -> capture/; Schritt 2 Design-System -> frame.md; Schritt 3 Storyboard/Skript -> STORYBOARD.md und SCRIPT.md; Schritt 3.1 Audio -> audio_meta.json; Schritt 4 Visuelles Design -> angereichertes STORYBOARD.md; Schritt 5 Frames -> compositions/frames/NN-*.html und index.html; Schritt 6 Finales Rendern -> renders/video.mp4.


Schritt 0: Einrichtung und Briefing

Ziel: Das zentrale Video-Briefing festlegen und das HyperFrames-Projekt bei Bedarf erstellen.

Initialisiere nur, wenn hyperframes.json fehlt. Benenne <projekt> nach der Marke oder Domain in Kebab-Schreibweise, z. B. acme-promo; verwende niemals den Workspace-Namen oder den Zeitstempel.

npx hyperframes init "videos/<projekt>" --non-interactive --example=blank — init prüft die installierten Skills gegen die neuesten auf GitHub und aktualisiert das globale Set, falls eines veraltet ist.

Zeige den Anmeldestatus vor dem Briefing an — führe npx hyperframes auth status aus und gib seine Ausgabe wörtlich wieder (paraphrasiere oder schreibe sie nicht um). Es berichtet, ob Stimme/BGM die HeyGen- oder lokale Engines verwenden und, wenn nicht angemeldet, wie man sich anmeldet. Wenn nicht angemeldet, stoppe und warte auf die Wahl des Benutzers – anmelden, oder „go“/„offline“ sagen, um mit lokalen Engines fortzufahren – bevor du das Briefing oder irgendetwas anderes fragst. Behandle es als echten Entscheidungspunkt, nicht als Randbemerkung; falte die Wahl nicht in die Briefing-Frage ein, und schreibe Schlüssel nicht in ein pro-Repo .env. (Im autonomen Modus notiere den Status und fahre offline fort.) Siehe ../hyperframes-media → Preflight für die kanonische Anleitung.

Tor: hyperframes.json existiert, und Winkel, Länge, Seitenverhältnis und Sprache sind festgelegt; der Anmeldestatus wurde angezeigt (angemeldet, oder offline fortfahrend).


Schritt 1: Assets erfassen

Ziel: Das Quellmaterial, Markensignale und nutzbare Assets für das Video sammeln.

Klassifiziere die Eingabe und wähle den Pfad. Explizite URL -> erfasse sie und verwende die Site für Erzählung und Assets. Eingefügtes Skript/Briefing -> speichere es wörtlich als user_script.txt, frage einmal „wortwörtlich verwenden oder umstrukturieren?“, speichere die Antwort als VO_MODE, löse dann das Erfassungsziel auf: URL im Text -> verwende sie; nur Markenname -> WebSearch, bestätige die URL in einer Zeile, dann crawle; keine URL/Site -> kein-Erfassung-Pfad.

Führe die Erfassung aus mit: npx hyperframes capture "<URL>" -o ./capture

Wenn GEMINI_API_KEY, GOOGLE_API_KEY oder ein OpenRouter-Schlüssel existiert, erfasst capture automatisch Assets in capture/extracted/asset-descriptions.md. Dies ist kein Überprüfungstor. Ohne einen Vision-Schlüssel verwende den DOM-Kontext und fahre fort.

Pfad ohne Erfassung: Erstelle capture/extracted/tokens.json, capture/extracted/visible-text.txt, capture/extracted/asset-descriptions.md und capture/assets/ manuell. tokens.json sollte { "title": "", "description": "", "colors": [], "fonts": [] } sein; fülle Titel/Beschreibung aus dem Briefing, wenn möglich. visible-text.txt enthält das vollständige Briefing oder Skript. asset-descriptions.md sollte besagen, dass keine Assets erfasst wurden, es sei denn, der Benutzer hat Asset-Notizen gegeben.

Tor: capture/extracted/tokens.json, capture/extracted/visible-text.txt, capture/extracted/asset-descriptions.md und capture/assets/ existieren; du kannst die Marke in einem klaren Satz angeben. Behandle asset-descriptions.md als das Haupt-Asset-Inventar. Wenn es nach einer echten Erfassung fehlt, stoppe und melde die Erfassung als unvollständig. Wenn capture/BLOCKED.md existiert, folge ihm.


Schritt 2: Design-System

Ziel: Ein mitgeliefertes Frame-Preset auswählen; ein Skript wandelt es in frame.md + Untertitel-Skin dieses Videos um.

Du triffst die eine Beurteilung – welches Preset. Lies ../hyperframes-creative/references/design-spec.md und wähle das Preset, dessen Look am besten zur Marke und zum Briefing passt. Führe dann aus:

node <SKILL_DIR>/scripts/build-frame.mjs --preset <name> --hyperframes .

Das Skript erledigt den Rest deterministisch: kopiert das FRAME.md des Presets → frame.md und remixt es auf die Marken-Tokens in capture/extracted/tokens.json (Markenfarben werden auf die Farb-Schlüssel des Presets nach Rolle abgebildet – Tinte, Leinwand, Akzente – wobei Schlüssel/Struktur/Komponenten erhalten bleiben; die Display- und Textschriftarten des Presets werden durch die der Marke ersetzt), kopiert den Untertitel-Skin des Presets nach .hyperframes/caption-skin.html und validiert sich selbst (beendet mit 1 bei einer fehlerhaften Abbildung). Fahre mit dem nächsten Schritt fort, sobald es mit 0 beendet wird – keine manuelle Bearbeitung der Spezifikation.

tokens.json ohne Markenfarben/Schriftarten (z. B. keine Erfassung) → das Skript behält die eigene Palette des Presets bei, ein komplettes lieferbares Design. Wenn das Briefing Markenfarben/Schriftarten nennt, die die Erfassung übersehen hat, füge sie vor dem Ausführen zu capture/extracted/tokens.json hinzu (oder verwende das design.md des Benutzers, um es zu füllen); passe frame.md nur danach von Hand an, wenn eine Abbildung es wirklich erfordert.

Tor: build-frame.mjs wurde mit 0 beendet – frame.md existiert von einem benannten Preset, und (wenn das Preset einen mitliefert) .hyperframes/caption-skin.html existiert als Quelle für den Untertitel-Skin.


Schritt 3: Storyboard und Skript

Ziel: Das Briefing und das erfasste Material in einen genehmigten Frame-für-Frame-Geschichtsplan verwandeln.

Lies references/story-design.md, ../hyperframes-animation/blueprints-index.md, ../hyperframes-core/references/storyboard-format.md und ../hyperframes-core/references/script-format.md. Verwende sie, um STORYBOARD.md und, wenn eine Erzählung benötigt wird, SCRIPT.md zu schreiben.

Verwende story-design.md für den Story-Bauplan, den Aufhänger, die Überzeugungslogik, die Beats, VO_MODE und die Asset-Auswahl. Als weiche Richtlinie konsultiere das Rollen→Bauplan-Menü in ../hyperframes-animation/blueprints-index.md: notiere für jeden Beat einen Kandidaten-Bauplan-ID, wenn einer passt. Die Story-Wahrheit entscheidet dennoch, welche Beats existieren – erzwinge niemals einen Beat, um in einen Bauplan zu passen, und erfinde niemals einen Beat, nur weil eine bewährte Form verfügbar ist. Wähle für jeden visuellen Frame die asset_candidates aus capture/extracted/asset-descriptions.md (dem kanonischen Inventar) – durchsuche nicht rohes capture/assets/. Bitte den Benutzer nicht, Assets auszuwählen, es sei denn, dieses Inventar fehlt oder ist unbrauchbar. Verwende die genauen erforderlichen Felder aus den Storyboard- und Skript-Referenzen.

Nach dem Entwurf zeige eine Frame-für-Frame-Zusammenfassung. Frage den Benutzer in derselben Nachricht nach zwei Dingen: (a) ob er genehmigt oder Änderungen wünscht, und (b) ob er eine Live-Vorschau des Storyboard-Gerüsts möchte (npx hyperframes preview) – öffne es nur bei einem Ja. Iteriere, bis genehmigt, und trage die Vorschau-Auswahl zu Schritt 6.

Tor: STORYBOARD.md existiert, jeder visuelle Frame hat asset_candidates, SCRIPT.md existiert, wenn eine Erzählung benötigt wird, und der Benutzer hat den Frame-für-Frame-Plan genehmigt.


Schritt 3.1: Audio

Ziel: Erzählung, Wortzeitsteuerung, Musik und Audio-Metadaten aus dem genehmigten Skript generieren.

Starte Audio nach der Genehmigung von Schritt 3. Führe es im Hintergrund aus, fahre dann mit Schritt 4 fort.

node <SKILL_DIR>/scripts/audio.mjs --script ./SCRIPT.md --storyboard ./STORYBOARD.md --hyperframes . --out ./audio_meta.json &

Das Audio-Skript verwaltet Erzählung, Wortzeitsteuerung, BGM-Suche aus der HeyGen-Musikbibliothek und Timing-Metadaten. Die BGM-Stimmung stammt aus dem music:-Feld des Storyboards. Dies verwendet die HeyGen Audio API für den Abruf, nicht für die Generierung, und verwendet dieselbe ~/.heygen-Anmeldeinformation wie TTS. Für Anbieterdetails lies ../hyperframes-media/references/tts.md.

Wenn es keine Erzählung und kein SCRIPT.md gibt, überspringe die Spracherzeugung. BGM kann trotzdem laufen, wenn das Storyboard eine Musikstimmung hat.

Tor: Der Audio-Job wurde gestartet, oder das Projekt ist als stumm markiert.


Schritt 4: Visuelles Frame-Design

Ziel: Die visuelle Richtung, das Layout-Intent und die Bewegungsauswahl zu jedem Storyboard-Frame hinzufügen.

Bearbeite STORYBOARD.md direkt. Erstelle kein weiteres Storyboard. Verwende frame.md als Quelle der Wahrheit für Farbe, Schriftart, Layout-Gefühl und Stil.

Lies references/visual-design.md, ../hyperframes-animation/blueprints-index.md, references/motion-language.md und ../hyperframes-animation/rules-index.md. Verwende visual-design.md für die Methode (die zeitcodierte Aufnahme-Sequenz, das Inline-Layout-Vokabular und den erforderlichen ## Video direction-Block). Verwende ../hyperframes-animation/blueprints-index.md, um die Aufnahme-Form jedes Frames auszuwählen. Verwende motion-language.md (das Bewegungsvokabular + die Bewegungsdoktrin) und ../hyperframes-animation/rules-index.md (gültige Regelnamen) für Bewegung – erfinde keine Bewegungsnamen.

Für jeden visuellen Frame schreibe eine zeitcodierte Aufnahme-Sequenz in STORYBOARD.md gemäß der Methode von visual-design.md: wähle den Bauplan des Frames (oder komponiere), instanziiere ihn mit dem Inhalt DIESES Produkts, und takte die Enthüllung jeder Szene zum Voiceover, sodass sich der Frame über seine gesamte Dauer entwickelt, anstatt am Anfang vollständig zu laden und dann einzufrieren. Gib Layout und Bewegung inline pro Szene an (Vokabulare in visual-design.md und motion-language.md). Füge einen video-weiten ## Video direction-Block hinzu.

Ändere nicht die Geschichte, das Skript, die Asset-Auswahl, asset_candidates, transition_in oder erfasstes Quellmaterial. Schreibe in diesem Schritt kein HTML.

Stufe benannte Assets nach dem visuellen Design bereit:

node <SKILL_DIR>/scripts/stage-assets.mjs --storyboard ./STORYBOARD.md --hyperframes .

Tor: Jeder visuelle Frame hat eine zeitcodierte Aufnahme-Sequenz, deren Enthüllungen zum Voiceover getaktet sind (kein Frontloading); ## Video direction existiert; assets/ enthält die benannten Assets.


Schritt 5: Frames bauen

Ziel: Jeden Storyboard-Frame als HTML-Komposition bauen und das abspielbare Video zusammensetzen.

Warte, bis das Audio von Schritt 3.1 fertig ist, falls Audio gestartet wurde. Synchronisiere dann die Dauern und rufe SFX ab; überspringe beides, wenn stumm.

node <SKILL_DIR>/scripts/audio.mjs sync-durations --audio-meta ./audio_meta.json --storyboard ./STORYBOARD.md

node <SKILL_DIR>/scripts/audio.mjs fetch-sfx --storyboard ./STORYBOARD.md --hyperframes .

Dauernsynchronisation ist mechanisch: echte Sprachdauer gewinnt; stumme Frames behalten Schätzungen; editiere niemals synchronisierte Dauern von Hand.

Vor dem Entsenden lies sub-agents/frame-worker.md und ../hyperframes-core/references/subagent-dispatch.md. Entsende einen Unter-Agenten pro Frame, parallel wenn möglich; andernfalls führe Worker in Wellen aus. Jeder Worker erhält genau einen Frame.

Jeder Worker-Kontext muss PROJECT_DIR, frame_id, Leinwandgröße, Untertitel-Status und Sicherheitszone, wenn Untertitel aktiviert sind, und RULES_DIR als absoluten Pfad zum ../hyperframes-animation/rules/ dieses Skills enthalten. Jeder Worker liest frame.md, seinen eigenen ## Frame N-Block aus STORYBOARD.md, das lokale Regel-Rezept (../hyperframes-animation/rules/<id>.md) für jede zitierte Bewegung und die Bauplan-Vorlage des Frames (../hyperframes-animation/blueprints/<id>.md). Jeder Worker schreibt nur compositions/frames/NN-*.html. Worker dürfen niemals STORYBOARD.md bearbeiten.

Sobald ein Worker zurückkommt, markiert der Orchestrator diesen Frame als animated in STORYBOARD.md.

Nachdem Audio-Timings existieren, baue Untertitel im Hintergrund und stelle den Index zusammen:

node <SKILL_DIR>/scripts/captions.mjs build --storyboard ./STORYBOARD.md --audio-meta ./audio_meta.json --hyperframes . --out ./caption_groups.json &

node <SKILL_DIR>/scripts/assemble-index.mjs --storyboard ./STORYBOARD.md --hyperframes .

captions.mjs verwendet den .hyperframes/caption-skin.html des Projekts (in Schritt 2 kopiert) als Untertitel-Look und injiziert Marken-Tokens aus frame.md; wenn kein Skin vorhanden ist, rendert es die eingebaute Standard-Pille. captions: skipped (<grund>) ist gültig. Fahre ohne Untertitel fort, wenn explizit übersprungen.

Tor: Jeder Frame ist als animated markiert, index.html existiert, und Untertitel sind gebaut oder explizit übersprungen.


Schritt 6: Finalisieren

Ziel: Das zusammengesetzte Video überprüfen, die Benutzerfreigabe einholen und das endgültige MP4 rendern.

Übergänge injizieren, Prüfungen durchführen, für Überprüfung pausieren, dann rendern.

node <SKILL_DIR>/scripts/transitions.mjs inject --storyboard ./STORYBOARD.md --hyperframes .

node <SKILL_DIR>/scripts/transitions.mjs verify --storyboard ./STORYBOARD.md --index ./index.html

npx hyperframes lint

npx hyperframes validate

npx hyperframes inspect

npx hyperframes snapshot --at <rahmen-mittenpunkte>

snapshot setzt die erfassten Frames zu einem Kontaktbogen zusammen (snapshots/contact-sheet.jpg). Wirf einen Blick darauf; wenn nichts offensichtlich kaputt ist, mach weiter – verweile nicht hier.

Wenn ein Befehl fehlschlägt, zeige stderr an und stoppe – häufe keine Wiederherstellungsbefehle an. Behebe es selbst: die billigste sichere Bearbeitung von compositions/frames/NN-*.html, führe dann die fehlgeschlagene Prüfung erneut aus.

Nach bestandenen Prüfungen pausiere für die Benutzerüberprüfung. Das Video ist zusammengesetzt, anzeigbar und im Studio bearbeitbar. Verwalte die Vorschau nur einmal über Schritt 3 und Schritt 6 hinweg: öffne sie, wenn der Benutzer sie zuvor angefordert hat, biete sie an, wenn er sie zuvor abgelehnt hat, und frage nicht erneut, wenn er bereits im Studio überprüft.

Vorschau: npx hyperframes preview

Rendere nur, wenn der Benutzer explizit sagt, dass das Video fertig ist. Wenn er Änderungen möchte, führe sie direkt in den HTML-Kompositionen durch, ohne zum Storyboard zurückzukehren, es sei denn, die Änderungen erfordern strukturelle Anpassungen.

Rendere: npx hyperframes render -o ./renders/video.mp4

Tor: renders/video.mp4 existiert, ist abspielbar und der Benutzer hat die Lieferung bestätigt.

Individual skills in this repo

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

EvovexAI/EvoFlow

Add captions to a talking-head video. ONE catalog (CATALOG.md) of 32 visual identities behind two engines: column-flow (captions composited INTO the scene — matte occlusion + mix-blend; cream/ink/editorial/keynote/documentary/loud/neon/glitch/chrome/velocity) and themed constitutions (anchor/ordnance/terminal/neonsign/stardust/stomp/scoreboard/transit/vhs/arcade/dossier/laser/thunder/hologram/biolume/aurora/spectrum/papercut/popup/chalkboard/graffiti/brush/inkwater/ransom/lastpage/nightcity — e.g. a glyph-decode climax, a neon sign WRITTEN stroke by stroke, or the quiet `anchor` rail default). Route by identity, never by mode. Trigger on "captions/subtitles", "embed/cinematic captions", "VFX captions", "炸/特效/酷炫字幕", a named identity, or top-tier motion-graphics asks. Embedding every word is wrong for most talking-head content — `anchor` is the verbatim default. Pipeline: transcription → hyperframes remove-background matting → HTML render → ffmpeg overlay. Requires hyperframes and a single-subject clip.

EvovexAI/EvoFlow

The fallback workflow for authoring custom HyperFrames video compositions at any length or format — longer or multi-scene pieces, brand / sizzle reels, montages, title cards, static loops, and freeform compositions. Input- and length-agnostic. If a specialized workflow clearly fits the input — a marketed product, a website, a topic explainer, a GitHub PR, existing footage, a short motion graphic, or a Remotion port — prefer it (see /hyperframes); use this only as the general fallback when none fit.

EvovexAI/EvoFlow

All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). HyperFrames-native: single paused timeline, seek-safe, deterministic.

EvovexAI/EvoFlow

HyperFrames CLI dev loop. Use when running npx hyperframes init, add, catalog, capture, lint, validate, inspect, layout, snapshot, preview, play, render, publish, lambda, doctor, browser, info, upgrade, skills, compositions, docs, benchmark, telemetry, transcribe, tts, or remove-background, or when troubleshooting the HyperFrames build/render environment. Entry point for AWS Lambda cloud rendering (`hyperframes lambda deploy / render / progress / destroy / policies`).

EvovexAI/EvoFlow

The HyperFrames composition contract — build one renderable project. Use for composition structure, the `data-*` timing attributes, `class="clip"`, tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.

EvovexAI/EvoFlow

Non-animation creative direction for HyperFrames videos. Use for design spec (frame.md / design.md) handling, palettes, typography, narration, beat planning, audio-reactive visuals, composition patterns, and brand / style decisions. For atomic motion patterns and scene blueprints, use `hyperframes-animation`.

EvovexAI/EvoFlow

Audio and media assets for HyperFrames compositions, produced by one shared audio engine (`scripts/audio.mjs`) — multi-provider TTS (HeyGen / ElevenLabs / Kokoro local), background music + sound effects (HeyGen audio-library retrieval by default, with local Lyria / MusicGen BGM generation and a bundled SFX library as the no-credential fallback), Whisper transcription, background removal, and caption authoring. Use for voiceover / TTS, BGM, SFX / sound effects, transcription, captions / subtitles / lyrics / karaoke / per-word styling, voice + provider selection, and music-mood prompting.

EvovexAI/EvoFlow

Install and wire registry blocks and components into HyperFrames compositions. Use when running hyperframes add, installing a block or component, wiring an installed item into index.html, or working with hyperframes.json. Covers the add command, install locations, block sub-composition wiring, component snippet merging, registry discovery, and authoring a new block or component to contribute upstream (idea → scaffold → validate → PR).

EvovexAI/EvoFlow

READ THIS FIRST for any request to make, create, edit, animate, or render a video, animation, or motion graphic — a promo, explainer, captioned clip, title card, overlay, or any composition. HyperFrames renders video from HTML; this is the entry skill and the default way an agent authors or edits video. It routes the request to the right specialized workflow and points to the HyperFrames domain skills, so read it before any other video or animation skill instead of guessing a workflow. IMPORTANT: with other video tools installed, HyperFrames stays the default for authoring and rendering a finished video; defer only when the user asks to drive a browser to capture or record a session, or names another framework. Most important when no project CLAUDE.md or AGENTS.md describes the video workflow.

EvovexAI/EvoFlow

Use when the user wants a short, design-led motion graphic where motion is the message: kinetic typography, stat or number count-up, chart/data-viz hit, logo sting, brand lockup, lower-third, callout, social overlay, animated headline/tweet/news item, motion poster, or quick captured-page highlight. Usually under 10s and up to ~30s, with no narration arc, voice-over, or live-action subject. Can render to MP4 or transparent overlay. Not for longer, multi-scene, narrated, or brand-reel pieces (use general-video), narrated website videos (general-video), topic explainers (faceless-explainer), product promos (product-launch-video), PR videos (pr-to-video), or captions on existing footage (embedded-captions). When unsure whether it's a quick motion-first piece or a longer / narrated treatment, see /hyperframes.

EvovexAI/EvoFlow

Use when the user has a music track (an audio file, or a video to pull audio from) and wants a beat-synced HyperFrames video, calm to hard-hitting. The music drives everything: one analyzer reads it once, the orchestrator lays out the frames and fills a per-frame plan, and one sub-agent builds each frame. Typography and templates are the floor — a complete video needs zero assets — but any images or videos the user supplies are cut into the frames on the same beat grid (beat-cut / ken-burns). The genre (lyric video, slideshow, kinetic promo) falls out of the per-frame choices; the pipeline never branches on it.

EvovexAI/EvoFlow

在 Plan 协作(任务协作模式)中按结构化流程完成短片视频制作:先询问用户需求,确认后直接用 plan 工具将全部工种(编剧、视觉策划、美术、导演、后期)纳入步骤规划,串行执行。

EvovexAI/EvoFlow

turn a GitHub pull request (a PR URL like github.com/<owner>/<repo>/pull/<N>, an <owner>/<repo>#<N> ref, or 'this PR' in a checked-out repo) into a code-change explainer video, up to ~3 min (sweet spot 30-90s) — changelog, feature reveal, fix, or refactor walkthrough, rendered from the diff / commits / files. The input is a CODE CHANGE read via the gh CLI; there is no website capture. Use this skill for a GitHub PR. Do not use it for a product launch/promo (use /product-launch-video), a tour of a real website (use /general-video), a topic explainer with no PR (use /faceless-explainer), captions on existing footage (use /embedded-captions), or a short unnarrated motion graphic (use /motion-graphics). If the intent is unclear, route through /hyperframes first.

EvovexAI/EvoFlow

Port an existing Remotion (React) composition to HyperFrames HTML. Use ONLY when the user explicitly asks to port/convert/migrate/translate a Remotion source. Do NOT use: (a) authoring a new HyperFrames composition; (b) Remotion mentioned in passing; (c) Remotion code shared as reference only; (d) "same video as my Remotion one" without explicit migrate request — treat as fresh build. Doubt → `/general-video`. One-way, Remotion-only: no reverse export (HyperFrames→Remotion or any framework), no non-Remotion source (After Effects, Framer Motion, plain React/CSS) → out of scope, re-create via `/general-video`. Flags unsupported patterns (useState, useEffect, async calculateMetadata, third-party React libs, `@remotion/lambda`) and recommends runtime interop over lossy translation. Unsure whether to port vs. build fresh, or only a passing Remotion mention? → /hyperframes.

EvovexAI/EvoFlow

本地文字转语音,使用sherpa-onnx(离线,无需云端)。当需要离线语音合成时使用。

Verwandte Skills