Communitygithub.com

vos-remix

Remixe ein vos.so-Galerieprogramm in dein eigenes: Lade die Konfiguration herunter, bearbeite die deklarierten Knöpfe oder den Code lokal, validiere mit vos check und pushe eine private Kopie mit Abstammung, die als Versionen iteriert. Enthält die Params/Looks-Doktrin und das GLB-3D-Showcase-Rezept. Verwende es, wenn du gebeten wirst, eine Galerieanimation zu remixen, anzupassen oder zu personalisieren, ein 3D-Modell in ein Showcase auszutauschen oder ein heruntergeladenes Programm als Versionen zu iterieren.

Was ist vos-remix?

Der vos-remix Skill ermöglicht es, ein beliebiges vos.so-Galerievideo zu remixen, indem man dessen Programmkonfiguration lokal bearbeitet und als privates Vos auf dem eigenen Konto mit vollständiger Abstammung veröffentlicht. Entwickler können mit einem Fetch-Edit-Push-Workflow arbeiten: Sie laden die Konfiguration herunter, passen Knöpfe oder JavaScript-Funktionen an, validieren mit `vos check` und rendern Vorschaubilder, bevor sie die Änderungen als neue Version pushen. Der Skill unterstützt sowohl API-Schlüssel als auch zeitlich begrenzte Remix-Grants, und bietet sogar eine anspruchslose Push-Methode ohne Authentifizierung für schnelle Iterationen. Besonders nützlich ist der Skill für die Anpassung von 3D-Showcases mit GLB-Modellen, das Feintuning von Parametern und Looks, sowie die kollaborative Bearbeitung, bei der Studio-Änderungen des Nutzers respektiert und Konflikte erkannt werden – mit einer klaren Quote von max. 50 Voses/24h bei dauerhaften Schlüsseln.

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

In Ihrer bevorzugten KI fragen

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

Dokumentation

Ein vos-Programm remixen

Jedes Video auf vos.so/gallery ist ein Programm: Eingaben + eine deterministische Funktion → Video. Remixen bedeutet, die JSON-Konfiguration des Programms zu bearbeiten und das Ergebnis als privates vos auf dem Benutzerkonto mit Abstammung zurückzupushen. Du bearbeitest lokal; die Plattform validiert, kompiliert und rendert eine Vorschau.

Einrichtung

npm i -D @vosjs/cli   # der Fetch/Check/Push/Pull-Zyklus

Für diesen Zyklus wird kein Browser benötigt (das Rendern von Vorschauen erfolgt auf der Plattform). Alles funktioniert auch als einfaches HTTP, falls die CLI nicht verfügbar ist: references/remix-contract.md dokumentiert jeden Endpunkt.

Anmeldedaten (niemals ausgeben)

Zwei Formen, beide verwendet als Authorization: Bearer:

  1. Remix-Grant (vos_rg_…) – wenn die Eingabeaufforderung des Benutzers einen enthält, verwende ihn. 24h Gültigkeit, gebunden an EIN Quell-vos, max. 5 Pushes.
  2. Dauerhafter Schlüssel (vos_sk_…) – Auflösungsreihenfolge vor dem Nachfragen: VOS_API_KEY-Umgebungsvariable, dann die erste Zeile von ~/.config/vos/credentials. Menschen erstellen Schlüssel unter https://vos.so/app/api.
  3. Keine Anmeldedaten – der beanspruchbare Push (nur Programme):
    vos push my-remix.json --claimable --title "My remix"
    # → claim: https://vos.so/claim/…   expires: <72h ab jetzt>
    
    # Keine CLI oder eine ältere? Das Gleiche über einfaches HTTP:
    curl -s -X POST https://vos.so/api/claim \
      -H 'content-type: application/json' \
      -d '{"title": "My remix", "config": <das VosConfigJson>}'
    # → { "claimUrl": "https://vos.so/claim/…", "expiresAt": "…" }
    
    Übergib claimUrl dem Benutzer und niemandem sonst – es ist der einzige Verweis und die einzige Berechtigung. Der Link hält 72 Stunden; nicht beanspruchte Arbeit wird danach gelöscht (bewusste Bereinigung, kein Datenverlust – erneut pushen, falls es abläuft). Das Beanspruchen verschiebt das vos in die Bibliothek des Benutzers und startet seine gehostete Vorschau; die Iteration nach dem Anspruch verwendet seinen Schlüssel (der Zyklus unten). Grenzen: Konfiguration ≤200KB, 5 Pushes pro Tag pro Netzwerk.

Die CLI löst Grants und Schlüssel automatisch auf (export VOS_API_KEY=…). Keine Form kann veröffentlichen: Gepushte Voses bleiben privat, bis ein Mensch sie auf vos.so veröffentlicht.

Der Zyklus

  1. Holen des Quellprogramms (öffentliche Programme benötigen keine Authentifizierung):

    vos fetch https://vos.so/vos/<id>        # oder die bloße ID
    # → <slug>/config.json (Parameter erhalten) + <slug>/vos.json (Nachverfolgung)
    
  2. Bearbeiten von config.json lokal. Die Funktionsfelder (setup, createContent, createTimeline, onFrame) sind JavaScript als Zeichenketten – keine TypeScript-Syntax, keine ${}-Template-Interpolation. Ändere 1–2 Achsen entschlossen (Palette, Bewegungsgrammatik, Dichte) – niemals eine 10%-Anpassungskopie. Wenn das Programm params deklariert, bevorzuge das Nachjustieren oder Erweitern dieser Knöpfe gegenüber einem Eingriff in die Funktionszeichenketten.

  3. Deklarieren von Knöpfen und Looks – die Steueroberfläche des Remixes. 2–4 zweckbenannte Parameter plus 2–3 Voreinstellungen. Dies ist ein Handwerk mit Regeln: references/params-knobs.md.

  4. Überprüfen lokal vor dem Pushen:

    vos check <slug>/config.json     # migrieren → Schema → Syntax → kompilieren → Lints
    vos still <slug>/config.json probe.webp --time 2   # AUSFÜHREN – Kompilierung prüfen
                                     # aber das Modul niemals ausführen; ein Laufzeit-
                                     # Fehler (ein TDZ gegen die eigenen Deklarationen
                                     # der Funktion) wird allein beim Check unsichtbar
                                     # übertragen. Rendere nach jeder Code-Änderung,
                                     # vor jedem Push ein Standbild.
    

    Behebe jeden Fehler; behandle Determinismus-Warnungen ernst (eine Konfiguration, die pro Durchlauf anders rendert, ist per Definition defekt).

  5. Pushen als privates vos mit Abstammung (die CLI liest vos.json neben der Konfiguration für die remixOfId-Gutschrift):

    vos push <slug>/config.json --title "Aurora Ribbons – Dämmerung"
    # → Privates vos <id> erstellt
    #   watch:  https://vos.so/vos/<id>
    #   studio: https://vos.so/studio?vos=<id>
    
  6. Iterieren – weitere Bearbeitungen werden zu Versionen desselben vos:

    vos push <slug>/config.json --vos <id> --note "kühlere Palette, langsamerer Drift"
    

    Das Verzeichnis VERFOLGT sein vos durch vos.json, sodass die Basisversion automatisch mitgeführt wird: Wenn der Mensch seit deinem letzten Push im Studio bearbeitet hat, wird der Push MIT deren eingegebenem Änderungsprotokoll abgelehnt. --note ist deine Übergabezeile – sie wird vom Menschen zuerst gelesen; --label benennt die Version.

  7. Ziehen vor jeder Bearbeitungsrunde – der Mensch könnte nachjustiert haben:

    vos pull <slug>          # was sich seit deiner Basis geändert hat, dann synchronisieren
    

    Gibt jede Version mit Quellenangabe aus (v3 (studio · wärmer): Knopf hue 0,2→0,35 plus deren Notizen), synchronisiert config.json auf den neuesten Stand (deine vorherige Kopie wird als config.backup.json aufbewahrt) und setzt die Basis neu. Vom Menschen bearbeitete Knoten sind geschützt: Ein Push, der sie berührt, wird abgelehnt, es sei denn, du übergibst --override <id> – tue das NUR, wenn die Anweisung des Benutzers ausdrücklich diesen Knoten betrifft. Ihre Drehungen an deinen Knöpfen sind Präferenzdaten: lies das Änderungsprotokoll, bevor du entscheidest, was als Nächstes zu tun ist.

  8. Gib BEIDE Links zurück – die Beobachtungsseite (Vorschau, Knöpfe, Code) und das Studio (https://vos.so/studio?vos=<id>), wo der Benutzer deine Knöpfe live nachjustieren kann. Das Veröffentlichen ist seine Handlung, auf vos.so.

Regeln, die Pushes ehrlich halten

  • Privat ist der Vertrag. Versuche niemals visibility: "public" – es wird auf privat gesetzt, und das Veröffentlichen per Schlüssel wird bewusst abgelehnt.
  • Kontingentbewusst: Dauerhafte Schlüssel erstellen ≤50 Voses/24h; Grants pushen ≤5. Iteriere Versionen auf einem vos anstatt viele Voses zu erstellen.
  • Server-Rendering-Einschränkungen (die Vorschau-Flotte verwendet Software-GL): kein THREE.DoubleSide bei Transmissionsmaterialien, keine dispersion, und jedes abgerufene Asset muss eine absolute https-URL sein, die die Flotte erreichen kann.
  • Jeder Knopf muss wirken. Ein Parameter, den der Code nie liest, ist schlimmer als kein Parameter – siehe den Ehrlichkeitsabschnitt von references/params-knobs.md.
  • 3D-Modell-Austausch (GLB in ein Showcase-Programm): references/3d-recipe.md.
  • Vollständige Endpunkt-Referenz, Kontingente und Fehlertabelle: references/remix-contract.md.

Individual skills in this repo

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

launch-kit

Ship the media with the release — one take of the real product becomes YouTube demo, Chrome Web Store screenshots/tiles, Product Hunt gallery, social cuts, and OG cards; verified kit.json manifest.

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.

Verwandte Skills