Website-Launch-Video
Antworte in der Sprache des Benutzers. Video-Text auf Englisch, sofern nicht anders gewünscht.
Ausgabe: <Brand>_launch.mp4 im Arbeitsverzeichnis (1920×1080, 30fps, H.264 + AAC).
Kosten: Keine Generierungsgutschriften. Rufe niemals generate_video / generate_audio für diesen Workflow auf – alles wird mit Code in der Higgsfield-Sandbox gerendert.
Voraussetzungen
- Higgsfield MCP-Connector (bietet
sandbox_exec,media_upload,media_confirm,get_workflow_instructions). - Ein Browser-Tool (eingebauter Browser oder Claude in Chrome), um die Website zu lesen.
Abzufragende Eingaben (nur fragen, wenn fehlend)
- Website-URL (erforderlich).
- Optional: Coupon / Rabatt, ob es sich um das eigene Produkt des Benutzers oder eine bezahlte Werbung handelt (Werbung → daran erinnern, beim Posten
#adhinzuzufügen), Musikstil, vertikales 9:16-Format.
Schritt 1 – Website auslesen
- Navigiere zur URL, führe dann JS
document.body.innerTextaus (warte ~2s für SPAs). Sammle: H1, Unterüberschrift, 4-6 Feature-Überschriften, Preise, Angebots-/Coupon-Text, Garantie-/Vertrauenszeile, CTA-Beschriftung. - Screenshot und 2-3 Mal scrollen, um den visuellen Stil zu sehen (Karten, Pills, Eyebrows, Buttons, Akzent-Wortfarben).
- Ermittele berechnete Stile:
fontFamily,color,backgroundColor,letterSpacing,fontWeightvon body/h1/h2/button, plus eine Häufigkeitszählung aller Hintergrund- und Textfarben. - Wenn die Seite ohne CSS gerendert wird (CSS blockiert), hole das CSS stattdessen in der Sandbox:
curl -sL -A "Mozilla/5.0" URL -o index.html; grep -o '/_next/static/[^"]*\.css' index.html(oder jedes<link rel=stylesheet>), curl sie inall.css, danngrep -oE -- '--(background|foreground|brand|primary|accent|muted|border|card|surface|ink)[a-z-]*:[^;}]*' all.css | sort -uundgrep -o 'font-family:[^;}]*' all.css | sort -u. - Logo:
<img>im Header (z. B./logo.png) oder/android-chrome-512x512.png//apple-touch-icon.png. Partnerlogos als SVG →convert -background none -density 1200 x.svg -resize 400x400 x.png.
Schritt 2 – Design-Token
Bilde die Website auf die Vorlagen-Token ab: BG, INK (Überschrift), MUTED (grauer Text), BRAND (Akzent), BRAND_SOFT (Akzent-Tönung für Chips), PANEL (grauer Kartenhintergrund), WHITE (Karte). Dunkle Website → dunkles BG, helles INK, kein weicher Schatten. Spiegele die Muster der Website: zweizeilige Überschriften mit Akzent in Zeile 2, falls die Website das macht, Eyebrow-/Label-Chips, Pill-Buttons mit Pfeil, graues Panel mit weißen Karten.
Schritt 3 – Schriftarten
Statische TTF pro Gewicht von Fontsource (beliebige Google-Schriftart):
curl -sf -o font-800.ttf https://cdn.jsdelivr.net/fontsource/fonts/<font-slug>@latest/latin-800-normal.ttf (Slug = Kleinbuchstaben, Leerzeichen→Bindestriche, z. B. bricolage-grotesque, urbanist). Verwende via typography={{fontAssetId: handle.id}} nach await p.add("font-800.ttf"). Das lateinische Subset enthält keine → ✓ ★-Glyphen – verwende stattdessen icon("arrow-right") usw. Eingebaute Schriftfamilien (Inter, DM Sans, Montserrat…) können higgsedit fonts add . Inter:400 Inter:700 + fontFamily nutzen.
Schritt 4 – Video skripten
Lade den Higgsfield-Workflow video-editing einmal pro Sitzung (get_workflow_instructions {workflow:"video-editing"}) vor Higgsedit-Arbeiten.
Starte von reference/template.jsx. Standardstruktur, ~25s:
| # | Szene | Zeit | Inhalt |
|---|---|---|---|
| 1 | Hook | 0-3.3 | Der Schmerz in 2 Zeilen, Eyebrow "Für " |
| 2 | Meet | 3.3-7 | Logo + Marke, Website-H1, Unterüberschrift, CTA-Button-Pop |
| 3-6 | Features | ~3,7s pro Stück | Eyebrow = Website-Abschnittsbezeichnung, Überschrift = eigene Feature-Überschrift der Website, eine native UI-Mock (Stat-Karten mit Zählern, Zeilen mit Tags, Heatmap-Raster, Warteschlangenliste, Bewertungskarte, Tages-Pills…) |
| 7 | CTA | letzte ~4,3s | Logo + Domain, Preis-/Angebotskarte, Coupon-Pill + Button, Garantiezeile |
Regeln:
- Verwende die echten Texte und Zahlenbeispiele der Website. Teile dem Benutzer mit, welche Demo-Werte illustrativ sind. Erfinde niemals Benutzerzahlen oder Testimonials.
- Baue UI nativ nach (Frames/Text/Icons). Verwende keine niedrig aufgelösten Website-Screenshots oder KI-generierte UI.
- Behalte die Startzeiten der Szenen bei – die Musik benötigt sie (
cuts= Start von Szenen 2..7).
Schritt 5 – Sandbox-Build & Vorschau
Sandbox-Fakten: Dateien verschwinden beim Zurücksetzen (Assets erneut herunterladen, falls cd fehlschlägt); ein Befehl ≤ 16.000 Zeichen (Upload-URLs in Dateien in einem separaten Aufruf vom langen cat > edit.jsx-Heredoc speichern); lange Renderings → background:true, dann abfragen.
media_uploadder Ausgaben im Voraus (ein Vorschaubildsheet.pngund die finale.mp4) und speichere jedeupload_urlin einer.txt-Datei in der Sandbox. Presigned-URLs sind einmal verwendbar: Ein zweites PUT gibt 412 zurück – eine neue anfordern.- Build + Kontaktblatt + Upload in einem Aufruf:
higgsedit build edit.jsx 2>&1 | grep -iE "error|missing"; higgsedit sheet . --times <Mitte jeder Szene + CTA-Ende> --cols 3 --out renders/sheet.png; curl -s -o /dev/null -w "%{http_code}" -X PUT -H "Content-Type: image/png" --upload-file renders/sheet.png "$(cat sheet_url.txt)" media_confirm, lade die zurückgegebene öffentliche URL lokal herunter und betrachte sie. Behebe Layout-Probleme vor dem finalen Rendering.
Higgsedit-Fallstricke:
paddingist eine Zahl oder{left,right,top,bottom}, niemals ein Array.- Token
motion={{by:"word"|"character"}}bei zentriertem Text führt zu Umbrüchen (Text springt von links). Verwendeanimate={pop}für zentrierten Text; Token-Motion nur für linksbündigen "Tipp"-Text. - Ein Timeline-
targetmuss ein unmittelbar benannter Child-Frame sein, nicht self – animiere self mitanimate-Keyframes (delayPop). - Zähler:
layout="none"-Frame mit fester Größe und einem statischen Text; keine Tausendertrennzeichen. animateist immer ein Array; Frame-motionist ein Objekt.
Schritt 6 – Rendern
higgsedit render . --out renders/promo.mp4 --quality final (≈1 Min. für 25s).
Schritt 7 – Musik (jedes Mal anders)
scripts/music.py = Numpy-prozedurale Musik, lizenzfrei. Stile: pop (120 BPM, hell), lofi (82 BPM, entspannt jazzig), synthwave (105 BPM, Retro), house (124 BPM, Offbeat), cinematic (90 BPM, episch), marimba (110 BPM, freundlich). Jeder Track: ein Whoosh vor jedem Cut, ein Impact beim CTA, 1,6s Ausblendung.
Wähle den Stil – wiederhole niemals die letzten zwei:
- Lese
music-history.login diesem Skill-Ordner (erzeuge ihn, falls fehlend). - Passe die Stimmung an: Dev/AI/Tech → Synthwave oder House; Creator/Writing/Productivity → Lofi oder Marimba; große/Premium-Launches → Cinematic; Consumer/Spaß → Pop. Überspringe Stile, die in den letzten 2 Einträgen verwendet wurden, es sei denn, der Benutzer fragt nach einem.
- Zufälliger
--seed→ zufällige Tonart und Progression, sodass selbst der gleiche Stil anders klingt. - Hänge
YYYY-MM-DD <Site> <Stil> seed=<n>anmusic-history.logan.
music.py in die Sandbox bekommen (erster Durchlauf): media_upload mit Dateiname music.py → von der lokalen Maschine curl -X PUT -H "Content-Type: application/octet-stream" --data-binary @scripts/music.py '<upload_url>' → media_confirm type:file → speichere die zurückgegebene öffentliche URL in music_url.txt in diesem Skill-Ordner. Spätere Durchläufe: curl -sf -o music.py "$(cat music_url.txt)" in der Sandbox (erneut hochladen, falls 404 oder music.py geändert).
Mux:
python3 music.py --style <Stil> --duration <Video-Sekunden> --cuts <c2,c3,...,c7> --seed <n> --out music.wav
ffmpeg -y -v error -i renders/promo.mp4 -i music.wav -filter:a "loudnorm=I=-15:TP=-1.5:LRA=11" -c:v copy -c:a aac -b:a 192k -map 0:v -map 1:a -shortest final.mp4
Dauer: ffprobe -v error -show_entries format=duration -of csv=p=0 renders/promo.mp4.
Schritt 8 – Ausliefern
Lade final.mp4 (frische URL) hoch → media_confirm type:video → lade es lokal als <Brand>_launch.mp4 herunter → übergebe die Datei dem Benutzer. Berichte: was der Website entspricht (Hintergrund/Farben/Schrift/Logo), die Szenenliste, den Musikstil, welche Werte illustrativ sind. Biete eine 9:16-Version oder einen anderen Musikstil an.
9:16-Variante
size: "1080x1920", W=1080 / H=1920, Reihen vertikal stapeln (Karten in einer Spalte), Überschriftgrößen ×0,75, gleiche Timings und Musik.