Communitygithub.com

vos launch-kit — ein Take → PH/Store/Social

vosjs-Skill: Media mit dem Release ausliefern. Ein Take → Demo, Store, PH-Galerie, Social, OG — Specs in kit.json.

Was ist Store/Social?

Launch-Video Schritt 3: fertiger Take → YouTube/Store/PH/SNS/OG. kit.json geprüft.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/vosjs/skills/tree/main/skills/launch-kit

In Ihrer bevorzugten KI fragen

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

Dokumentation

Launch Kit — das Medium mit dem Release ausliefern

Du produzierst das MEDIUM eines RELEASES, kein Video: ein Take des ausgelieferten Features wird zu jedem Asset, das das Release benötigt, komponiert, dimensioniert und pro Zielkanal verifiziert, als bearbeitbare Dokumente aufbewahrt, damit das NÄCHSTE Release ein erneutes Rendern ist, kein erneuter Dreh. Alles ist Daten; die Vorschau ist der Render; der Export ist kostenlos in jeder Auflösung bis zu 4K, ohne Wasserzeichen; die Engine ist MIT.

Das Kit wird in einem einzigen Befehl gerendert, vos deliver, aus Dokumenten, die den Geschmack tragen: jede Karte ist ein Frame eines POSTER-Dokuments (ein einfacher Take, dessen Karte dort sitzt, wo das Poster sie haben möchte, mit den Wörtern und dem Markenzeichen als Clips), jeder Schnitt spielt die Bewegung, die vos plan in sein Dokument vorgeschlagen hat (ein Eingang, eine Endkarte, Untertitel, ein Hintergrund), die Standbilder stammen aus der Geschichte, und zwei Prüfer sagen in Worten, was falsch ist. deliver komponiert nichts. Dein Urteilsvermögen fließt in drei Dateien (BRAND.md, LAUNCH.md, actions.json), eine Auswahl (welches Poster im Regal die Karten befolgen) und eine Entscheidung (welche Momente die Geschichte sind), niemals in manuelles Zuschneiden.

Einrichtung

npm i -D @vosjs/cli    # die vos CLI (Take-Pipeline inbegriffen)

ffmpeg im PATH deckt ab, was die CLI nicht ausgibt (das PH-Hover-GIF) und erlaubt vos validate --picture, den ersten und letzten Frame eines Videos zu lesen. MP4-Renderings benötigen systemeigenes Chrome (--format mp4).

1. Das Release festlegen

Fünf Fakten vor der Aufnahme:

  • Was ausgeliefert wurde — das Feature, die Versionszeichenfolge, die URL, unter der es läuft.

  • Welche Ziele — die kanalspezifische Spezifikationstabelle wird als Daten ausgeliefert: node_modules/@vosjs/cli/schema/channel-specs.json (CWS, Product Hunt, X, LinkedIn, GitHub, OG, YouTube; Größen, Anzahlen, Byte- und Dauer-Obergrenzen, die Wortrichtlinie und das sichere Rechteck pro Ziel, und jedes Bildes GENRE: screenshot ist die echte Seite, card ist ein Frame eines Poster-Dokuments; references/channel-specs.md sind dieselben Daten als Tabelle). Iteriere darüber, tippe niemals Abmessungen von Hand. Frage, an welche Kanäle dieses Release ausgeliefert wird; Standard ist der Satz des letzten Releases. Das JSON trägt ein verified-Datum; ist es älter als ein Vierteljahr, überprüfe die Kanaldokumente stichprobenartig vor dem Ausliefern.

  • Die Marke — kläre sie VOR der Erstellung von Assets und verwende niemals standardmäßig die eigene Palette eines Layouts. Die BRAND.md des Projektordners ist das Markenkit (das Frontmatter trägt die Farbrollen bgA bgB bgC ink accent, die Schriftrollen fontDisplay fontBody, logoUrl (ein reines Markenzeichen, niemals ein gekacheltes Icon), wordmark und look, die Präsentation, die der eigene Grund der Seite verlangt: plate für eine papierähnliche Seite, dark für eine dunkle, sonst gradient). Fehlt eine, bezeugt vos brand <url> sie von der Seite /design.md, /llms.txt und der Seite selbst und schreibt jede Rolle mit ihrer Herkunft; lies es, korrigiere, was eine Seite nicht sagen kann, und lege es mit vos recipe push BRAND.md --folder <slug> ab. Platziere es NEBEN dem Take (oder im übergeordneten Ordner des Takes): plan und deliver lesen es dort ohne Flag.

  • Die Wörter — LAUNCH.md neben dem Take trägt die Rollen des Releases in seinem Frontmatter, das ohne Flag gelesen wird:

    headline: "Zwei bis sechs Wörter\nüber bis zu drei Zeilen"   # die Poster und die Endkarte
    kicker: "PRODUKT  V2.1"       # fehlt = das Wortmarke plus --release
    music: upbeat                 # ein Katalog-Slug oder eine Stimmung; none = still
    entrance: tilt-in             # tilt-in | pull-out | rise | none
    endCard: on                   # die offizielle Endkarten-Vorlage; none schaltet sie aus; ein Titel, vos id oder doc.json benennt eine andere
    with: "Split cover, landscape@end"   # optional: jede Vorlage, platziert an einem Anker (@end | @start | @step:<id> | @<Sekunden>)
    captions: on                  # none schaltet die Beat-Untertitel aus
    poster: poster/landscape      # optional: das Dokument, aus dem jede Karte rendert
    poster-tile: poster/tile      # optional: eine Klasse, die allein benannt wird
    

    Eine Überschrift ist die EINE Zeile, die das Release sagt; schreibe sie mit \n über ihre Zeilen. vos plan liest die Bewegungsrollen, wenn es den Schnitt und die Bewegung des Schnitts vorschlägt, und plan --style tippt die Wörter in ein Poster; deliver liest nur die poster-Rollen, und wenn keine vorhanden ist, sucht es nach poster/<class>/doc.json neben dem Take.

  • Das Layout — ein Poster, dem die Karten folgen werden, aus einem Regal. Das offizielle Poster families-Projekt auf vos.so enthält ein Exemplar pro Seitenverhältnis-Klasse (landscape, square, portrait, tile) neben seiner POSTER.md, die sagt, wann jede Klasse die richtige ist; ein eigenes Projekt eines Erstellers hat dieselbe Form. vos folder pull poster-families listet sie mit ihren vos-IDs auf. Es gibt keinen Layout-Namen und keine --layout-Flag: das Exemplar IST das Layout, kopiert durch Daten.

Die Ziele entscheiden über den VIEWPORT, bevor etwas aufgenommen wird: Footage-Auflösung = Viewport, und ein 1280×720-Take kann ehrlicherweise kein 1920×1080-Video-Spezifikation füllen. Nimm für ein 1080p-Kit mit 1920×1080 auf, 2560×1440, wenn ein Ziel größer ist.

Wenn die Arbeit in einem vos.so-Projekt (Ordner) landet, ziehe es zuerst und lies jedes .md-Rezept darin — LAUNCH.md bindet diese Schleife so, wie CUT.md einen Schnitt bindet, und eine POSTER.md bindet die Poster. Rezepte überschreiben die Standardeinstellungen dieses Skills.

2. Quelle: ein Take des echten Produkts

Das Kit wird AUS dem Produkt hergestellt, niemals aus einem Mockup (die Store-Richtlinie stimmt dem zu: Irreführende Listing-Bilder sind ein Verstoß, der zur Entfernung führt).

Gestalte den Inhalt wie ein Set vor der Aufnahme. Die Hälfte dessen, was ein hochwertiges Launch-Bild von einem Screenshot unterscheidet, ist, was AUF dem Bildschirm zu sehen ist. Die actions.json muss das Produkt in dem Zustand hinterlassen, den ein stolzer Screenshot zeigen würde — ausgefüllte Beschriftungen, realistisch aussehende Daten, das Feature mitten in der Geschichte — bevor ein Poster oder Store-Stillbild geschnitten wird. deliver verwirft einen leeren Moment (ein Hintergrundbild, eine leere Leinwand) und sagt dies, aber es kann das Set nicht für dich einrichten.

Schreibe die Geschichte in actions.json. Gib Schritten eine id (die Momente und die Neu-Render-Schleife adressieren sie damit) und eine caption, wo ein Beat eine verdient (zwei bis acht Wörter; plan schlägt es als unteres Drittel zu diesem Schrittzeitpunkt bei den Schnitten vor, die Wörter übernehmen). Füge nach einem Klick, der navigiert, ein wait für den Ladevorgang ein: das Standbild wird am ENDE dieses Wartens gelesen, sodass der Frame die Seite zeigt, niemals den Ladekreis.

  • Neue Aufnahme: die Schleife des product-video-Skills (erkunden → actions.json → vos record --strict → doc.json optimieren). Behalte actions.json im Repository — es ist das Drehbuch für das nächste Release.
  • Das ausgelieferte Feature befindet sich hinter einem Login: kläre die Sitzung vor dem Skript, gemäß der Leiter des product-video-Skills (vollständig unter https://vos.so/llms-full.txt, „Sessions“): erstelle eine aus der Test-Authentifizierung, die das Repository bereits hat, andernfalls skripte das Formular außerhalb der Kamera, andernfalls meldet sich der Mensch einmalig an (vos session open <url> --name <app>, dann --session <app>), andernfalls nehmen sie mit der Erweiterung auf und du schneidest es. Nimm mit --storage-state <datei> auf. Ein Release zeichnet jede Version neu auf, bevorzuge daher die Sprosse, die keinen Menschen benötigt: sie ist diejenige, die beim nächsten Release noch funktioniert. Gib niemals ein Produktionspasswort ein oder akzeptiere es; halte die Statusdatei außerhalb des Takes und außerhalb von Git; nimm von einem Demo-Konto auf, denn ein Store-Listing, das echte Kundendaten zeigt, ist ein Fehler, der zur Entfernung führt.
  • Vorhandener Take: schneide ihn mit dem vos-cut-Skill. Ein gehosteter Take kommt mit vos fetch <vosId|watch-url> --out dir --media nach Hause.
  • Neue Version eines bereits gefilmten Produkts: nimm mit vos record im SELBEN Take neu auf (das Filmmaterial wird ersetzt, der Schnitt bleibt als doc.prev.json erhalten), dann vos plan take --reuse timt den Schnitt auf die neue Aufnahme neu und benennt, was nicht folgen konnte. Fange niemals von vorne an; jede Korrektur ist eine Bearbeitung von doc.json.

Ein anderswo gerenderter Bewegtgrafiken-Sequenz ist ein INPUT: sie wird als Medien-Overlay-Clip oder Hintergrund im Dokument abgelegt, niemals umgekehrt.

3. Die Poster und die Bewegung als Dokumente

Der Schnitt bewegt sich durch Daten. Ein frisches vos plan schlägt die Bewegung des Schnitts in doc.json aus den Rollen von LAUNCH.md vor: den Eingang der Karte, die ENDKARTE (die offizielle End card-Vorlage auf vos.so, platziert am Ende: die Karte zieht sich über einen einsekündigen Freeze ihres letzten Frames zurück, dann das Markenzeichen, die Überschrift Wort für Wort eintreffend, die Release-Zeile und die URL setzen sich auf dem Grund fest; ihre Clips sind mit from: endcard gestempelt), jede Vorlage, die with: an ihrem Anker nennt, einen Untertitel pro Schritt, einen Musikteppich und ein Klickgeräusch bei jedem Tastendruck, wenn der Take kein Mikrofon hat; jeder Vorschlag trägt eine stabile ID (bed, click-<n>, caption-<step>). Bei einem vorhandenen Schnitt schlägt --motion erneut vor; eine Aktualisierung tut dies nie, sodass eine gelöschte Endkarte gelöscht bleibt. Eine Vorlage ist ein einfacher Take aus einem Regal, dessen Clips stabile IDs tragen; eine Referenz ist ein Titel im offiziellen Regal ("End card", "Split cover, square"), eine vos-ID oder ein Dokument auf der Festplatte. Öffne den Take im Studio und was du siehst, ist das, was das Kit rendert.

vos plan take --motion --release v2.1

Ein Poster ist ein DOKUMENT, ein einfacher Take: die Karte platziert durch frame.inset (ein negativer Wert lässt es über den Rand laufen), geneigt durch die Ruheposition der Neigungsspur, die Wörter und das Markenzeichen als Overlay-Clips mit stabilen IDs (stage-title, stage-kicker, stage-brand, stage-mark), und ein nachfolgendes hold auf dem letzten Segment, dessen START das Standbild ist. Erstelle eines pro Seitenverhältnis-Klasse, die das Release benötigt (landscape, square, portrait, tile), jedes aus dem eigenen Filmmaterial des Takes:

cp -r take poster/landscape            # oder vos duplicate <take vosId>, dann fetch --media
vos plan poster/landscape --style <poster vosId|doc.json> --headline "…" --kicker "…"
vos frames poster/landscape --frame <rest>; vos validate poster/landscape
vos push poster/landscape --folder <project-slug> --label "poster, landscape"

plan --style <poster> kopiert das LAYOUT (die Platzierung und Präsentation der Karte, die Bühnenclips mit den Wörtern des Releases, eingefügt aus LAUNCH.md oder den Flags, den Rest geneigt, das Hold) auf den Take und behält das eigene Seitenverhältnis, die Chrome und den Schnitt des Takes bei; das Markenzeichen der Marke aus BRAND.md logoUrl wird in brand/ für stage-mark geholt, und was nicht folgen konnte, wird genannt. Verenge die Segmente auf den Moment (einen Zoom-Höhepunkt, die beruhigte Antwort nach einem Klick), sodass der Rest das Feature ist, niemals die Kälte-Eröffnung; das Produkt kann im Inneren der Karte WEITERSPIELEN bis zum Hold. Betrachte dann den Rest-Frame: ein Poster wird mit dem Auge beurteilt, bevor es gepusht wird. Ein Mensch öffnet es im Studio und zieht die Karte, tippt die Wörter an Ort und Stelle neu, verschiebt das Hold; vos pull --media bringt das zurück, und das nächste Release formuliert es mit demselben plan --style aus seinem eigenen gepushten Dokument neu.

4. Ausliefern

vos deliver take --to cws,producthunt,x,linkedin,og,github,youtube --release v2.1

Ein Durchlauf, und der Befehl entscheidet, was du früher von Hand entschieden hast:

  • Die Momente. Standbildzeiten stammen aus der GESCHICHTE: das Ende jedes Schrittes plus ein Beruhigen (das Ende des Wartens, das einem Klick folgt), dann die Zoom-Höhepunkte, dann eine Streuung. Jeder Kandidat wird einmal als die echte Seite gelesen; Leerstellen werden verworfen, zwei eines Frames werden zu einem zusammengefasst, jeder verworfene wird in skipped[] genannt. --times step:<id>[+offset] benennt einen.
  • Screenshots sind die echte Seite, randlos: das Store-Standbild und die Galerie entfernen standardmäßig den Zoom, die Neigung und die Chrome des Schnitts (--composed behält sie, und der Bilddurchlauf verweigert

Individual skills in this repo

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

vos-authoring

Author a vos animation program (VosConfigJson) from scratch or debug one — declarative configs compiling into deterministic Three.js + GSAP-dialect animations on the MIT vos engine (@vosjs/core), validated locally with compileVosConfig. Covers the schema, dialect rules, 2D overlay elements, shaders, and params/presets knobs. Use when asked to write a vos animation program, create a VosConfigJson, make a programmatic motion graphic or logo animation, or fix a config that fails to compile or lint.

vos-create

Create vos programs in the user

vosjs/product-video

Record and produce the demo video of a website, app, or feature with the vos CLI — the agent scripts the click path (actions.json), the recording auto-plans zooms, and every editing decision is data in doc.json, so fixes are edits and re-renders, never re-recordings. Renders are deterministic; export is free up to 4K with no watermark. Use when asked to make a product video, demo video, screen recording of a URL or feature, or a marketing clip, including a product behind a login (the session ladder: mint one from the project's own test auth before asking anyone), or when a feature was verified in agent-browser and that walk should become a take. A whole release's asset set (store listing, Product Hunt gallery, social cuts) is the launch-kit skill, which records through this one.

vosjs/vos-cut

Cut a screen recording (a vosso take) into the product video it was recorded for, from its evidence, with the vos CLI — read the take's digest (the moments the cursor track says mattered, each with a footage frame and a crop), narrate beats, edit doc.json by exception over the planners, verify with stills, and push an attributed version the human fine-tunes at vos.so; every edit is a data patch, so a re-cut never re-records. Use when asked to edit or cut a recording, make a product video or what's-new clip from a take, cut it like the last one, or cut a series of recordings in one style.

vosjs/vos-footage

Hand a Remotion, HyperFrames, or any video composition a clean captured clip of the real product — recorded and auto-zoomed with the vos CLI, delivered as full-bleed footage with no chrome, and always backed by an editable take on the maker's shelf, which the handoff says. Use when a composition needs real product footage, app or site b-roll, "capture our app for the video", or a screen-recorded segment to drop into another tool's timeline.

vosjs/vos-migrate

Turn an existing Loom, Screen Studio, Cap, or plain mp4/webm screen demo into an editable vosso take — re-encode the file, synthesize the take's metadata, plan, and push, so the old demo becomes a living document you re-cut instead of a file you re-record. Use when asked to "convert this Loom", "migrate our old demos", "re-edit this mp4", "make our Screen Studio recording editable", or to bring any already-recorded demo into vosso.

vos-remix

Remix a vos.so gallery program into your own — fetch its config, edit the declared knobs or code locally, validate with vos check, and push a private copy back with lineage that iterates as versions. Carries the params/Looks doctrine and the GLB 3D-showcase recipe. Use when asked to remix, customize or personalize a gallery animation, swap a 3D model into a showcase, or iterate a fetched program as versions.

Verwandte Skills