Was macht Reelsmith?
Videos, die in Code aus einer Spezifikation gebaut werden: Skript → Plan → Freigabe → Template-Rendering → Prüfung → Export.
Alles funktioniert kostenlos und offline; optionale Schlüssel erweitern die Funktionen. Pfade unten (scripts/, templates/,
references/) sind relativ zum Reelsmith-Ordner: neben dieser Datei oder /workspace/reelsmith/ auf einer Grok-Bot-Box.
Jeden Auftrag starten
python3 scripts/capabilities.py– zeigt an, was EIN/AUS ist (gibt niemals Schlüssel aus). Erwähne einmal, welcher kostenlose Schlüssel helfen würde (z. B. Pexels für Stock-Videos). Fordere niemals einen.- Sammle: Ziel, Zielgruppe, Plattform(en), Länge, Marke (
brand.json; erstelle eine:references/brand-kit.md), Medien, Musikpräferenz, Sprache ja/nein. Frage nur, was unklar ist. - Wähle eine Vorlage (unten) oder einen individuellen Bau.
Auftrag routing
| Auftrag | Verwenden | Lesen |
|---|---|---|
| Launch-Reel, Feature-Drop, Promo | Vorlage product-launch (musikgeführt) | templates.md, music.md |
| Event-Highlights aus Fotos | event-recap | templates.md, stock-media.md |
| Kundenstimmen / Bewertungen | testimonial | templates.md |
| Teaser, „Coming Soon“, Datum-Enthüllung (loopbar) | countdown-teaser | templates.md |
| Zahlen, Bericht-Highlight, Meilenstein | stat-callout | templates.md |
| Vortrags-/Messeschleife, animierte Präsentation | slides-presentation (--loop) | templates.md |
| Tutorial, Walkthrough, Onboarding (+ YouTube-Kapitel) | howto-tutorial | templates.md, youtube-publishing.md |
| Erzählter Produkt-Erklärer mit Untertiteln | feature-explainer (Remotion; render.sh) | remotion.md |
| Maßgeschneiderte Kinetic-Arbeit, Overlay, Alpha, GIF | HyperFrames manuell | hyperframes.md, motion-design.md |
| Diagramme/Mathe, Lottie, Benutzermaterial schneiden, transkribieren | Manim, Lottie, auto-editor, parakeet | helpers.md |
| Skript oder VO-Zeilen | 2–3 Optionen + script_lint.py | scriptwriting.md, voiceover.md |
| Untertitel (SRT/VTT/ASS, einbrennen) | captions.py | captions.md |
| Plattformspezifikationen, Sicherheitszonen, Lieferdateien | export.py, presets.json | platform-specs.md, loudness-accessibility.md |
| KI-B-Roll, Bilder, Avatare, KI-Musik (kostenpflichtig) | Fal / Higgsfield, zuerst anfragen | ai-generation.md |
Lizenzen: HyperFrames ist Apache-2.0. Remotion ist kostenlos für Einzelpersonen und Teams mit bis zu 3 Personen; Unternehmen mit 4+ benötigen
eine Lizenz (einmal nachfragen, wenn kommerziell). Musik, Stock, Schriftarten: lizenziert, quellenangabe (stock.py credit, credits.json).
Arbeitsablauf
- Skript: Schreibe 2–3 Optionen (Aufhänger in 3 s, eine Idee pro Szene, CTA am Ende) mit etwa 2,5 Wörtern/s; lint sie.
- Plan:
reelsmith.py sample TEMPLATE > content.json, ausfüllen, dannreelsmith.py render --template T --content content.json --brand brand.json --out OUT --dry-run. Zeige die Shot-Liste (Szene, Text, VO, Sekunden), Musik + Lizenz, Stimme (kostenlos oder angefragt), Seitenverhältnisse. - Freigabe (immer) vor langen Renderings und vor jeder kostenpflichtigen Generierung.
- Entwurf:
reelsmith.py render … --aspect 16x9,9x16,1x1 --music track.mp3|synth --vo auto --draft. - Prüfschleife:
review.py check VIDEO --out OUT/_review --preset P --job OUT/job.json; schau dirscenes.jpg,safe.jpg,phone.jpgan; korrigiere; sende die Vorschau; nach dem „Ja“ des Benutzers:review.py approve. - Final + Export: Rendern ohne
--draft, dannexport.py run VIDEO --preset reels,tiktok,youtube --review OUT/_review --out OUT/delivery(ohne Freigabe wird verweigert). YouTube:youtube_prep.py(lädt niemals hoch). - Liefern: Dateien anhängen mit je einer Zeile (Seitenverhältnis, Länge, LUFS), Quellenangaben, KI-Offenlegung; Neu-Schnitte anbieten.
Skripte (scripts/)
capabilities.py Funktionen ein/aus | brand.py validieren, bündeln, von-logo, von-site | reelsmith.py liste,
sample, rendere, loop, seam | script_lint.py | beats.py grid, snap, fit, synth | stock.py suche, fetch,
credit (nur API-Schlüssel, --dry-run) | captions.py baue/brenne | review.py prüfe, genehmige, status |
export.py führe aus, overlay, liste, loudnorm | youtube_prep.py | presets.json.
HyperFrames Setup und Pin: references/hyperframes.md. Kokoro benötigt HYPERFRAMES_PYTHON=<venv>/bin/python.
Regeln
- Schlüssel nur über das geheime Prompt der Plattform als Umgebungsvariablen; niemals ausgeben, loggen oder schreiben.
REELSMITH_IGNORE_KEYS=1erzwingt den kostenlosen Pfad. - Bezahlte Stimme/KI nur, wenn benannt +
--allow-paid+ Schlüssel vorhanden + der Benutzer das Angebot genehmigt hat. Eine Ablehnung ist endgültig. - Stock nur über offizielle APIs mit einem Schlüssel; niemals scrapen oder hotlinken; Quellenangaben behalten.
- Echte Zitate, Logos und Gesichter nur mit Erlaubnis; Avatare und Stimmklone benötigen Einwilligung; KI offenlegen.
- Untertitel bei allem mit Sprache; Text innerhalb der Sicherheitszonen; maximal 3 Blitze/s; -14 LUFS, maximal -1 dBTP.
- Remotion-Endfassungen:
export.py loudnorm(es normalisiert nicht). - Niemals automatisch posten oder hochladen; Dateien für den Benutzer vorbereiten.
Fehlerbehebung
OOM: --workers 2 (HyperFrames) / --concurrency=2 (Remotion). Chrome: $HF doctor / npx remotion browser ensure. Leerer HyperFrames-Frame: Timeline nicht pausiert/registriert oder falscher Asset-Pfad. Kein librosa: Beats fällt zurück auf
einen festen BPM (übergib --bpm). Kein Kokoro: espeak-ng. 401: fordere den Schlüssel erneut über das geheime Prompt an.
Den Benutzer fragen, wenn
Plan-Freigabe (immer); Skriptauswahl; Stimme auswählen; unklare Plattform, Länge, Marke oder Musik; jede kostenpflichtige Generierung (mit dem Angebot); Einwilligung für ein Gesicht oder eine Stimme; endgültige Prüfung der Freigabe; Remotion-Kopfzahl, wenn kommerziell.