Communitygithub.com

hyperframes-registry

Installieren, entdecken und verdrahten von Registry-Blöcken und -Komponenten in HyperFrames-Kompositionen. Verwenden Sie dies beim Ausführen von 'hyperframes add' oder 'hyperframes catalog', beim Installieren eines einzelnen Elements oder aller Blöcke mit einem bestimmten Tag, beim Verdrahten eines installierten Elements in index.html oder beim Arbeiten mit hyperframes.json. Abdeckung: Erkennung, Installationsorte, Block-Sub-Kompositionsverdrahtung, Komponenten-Snippet-Zusammenführung und Erstellung eines neuen Blocks oder einer Komponente für den Upstream-Beitrag (Idee → Gerüst → Validierung → PR).

Was ist hyperframes-registry?

Das HyperFrames Registry-Skill ermöglicht es Entwicklern, wiederverwendbare Blöcke und Komponenten für HyperFrames-Kompositionen zu installieren, zu entdecken und zu verdrahten. Blöcke sind eigenständige Sub-Kompositionen mit eigenen Dimensionen, Dauer und Timeline, die über `data-composition-src` in eine Host-Komposition eingebunden werden. Komponenten hingegen sind Effekt-Snippets ohne eigene Dimensionen, die direkt in das HTML der Host-Komposition eingefügt werden. Das Skill bietet eine CLI-basierte Suche (`hyperframes catalog`) mit zwei Stufen: eine schnelle wörtliche Suche und eine optional lokal ausführbare semantische Suche mittels On-Device-Modell. Berichte über fehlende Moves werden über `hyperframes feedback` direkt an das Entwicklerteam gesendet. Das Skill deckt den gesamten Workflow ab – von der Installation und Konfiguration über die Verdrahtung bis hin zum Beitrag neuer Blöcke oder Komponenten per Pull-Request.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/jasonfast123/hyperframes-skills/tree/main/skills/hyperframes-registry

In Ihrer bevorzugten KI fragen

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

Dokumentation

HyperFrames Registry

Die Registry stellt wiederverwendbare Blöcke und Komponenten bereit, die über hyperframes add <name> installiert werden können.

  • Blöcke — eigenständige Sub-Kompositionen (eigene Abmessungen, Dauer, Timeline). Einbindung via data-composition-src in einer Host-Komposition.
  • Komponenten — Effekt-Snippets (keine eigenen Abmessungen). Werden direkt in das HTML der Host-Komposition eingefügt.

Kurzreferenz

hyperframes add data-chart              # Block installieren
hyperframes add grain-overlay           # Komponente installieren
hyperframes add captions                # Alle Blöcke mit dem Tag 'captions' installieren
hyperframes add shimmer-sweep --dir .   # Zielprojekt angeben
hyperframes add data-chart --json       # Maschinenlesbare Ausgabe
hyperframes add data-chart --no-clipboard  # Zwischenablage überspringen (CI/headless)

Nach der Installation gibt die CLI aus, welche Dateien geschrieben wurden, sowie ein Snippet zum Einfügen in Ihre Host-Komposition. Das Snippet ist ein Ausgangspunkt – Sie müssen beim Verdrahten von Blöcken die Attribute data-composition-id (muss mit der internen Kompositions-ID des Blocks übereinstimmen), data-start und data-track-index hinzufügen.

Der Positionswert wird zuerst als exakter Elementname aufgelöst. Wenn kein Element übereinstimmt und der Wert ein Tag ist, installiert der Befehl alle Blöcke mit diesem Tag. Registry-Abhängigkeiten werden vor dem angeforderten Element installiert. hyperframes add funktioniert nur für Blöcke und Komponenten; für Beispiele verwenden Sie stattdessen hyperframes init <dir> --example <name>.

Installationsorte

Blöcke werden standardmäßig in compositions/<name>.html installiert. Komponenten werden standardmäßig in compositions/components/<name>.html installiert.

Diese Pfade sind in hyperframes.json konfigurierbar:

{
  "registry": "https://raw.githubusercontent.com/heygen-com/hyperframes/main/registry",
  "paths": {
    "blocks": "compositions",
    "components": "compositions/components",
    "assets": "assets"
  }
}

Vollständige Details finden Sie unter install-locations.md.

Blöcke verdrahten

Blöcke sind eigenständige Kompositionen – binden Sie sie via data-composition-src in Ihre Host-index.html ein:

<div
  data-composition-id="data-chart"
  data-composition-src="compositions/data-chart.html"
  data-start="2"
  data-duration="15"
  data-track-index="1"
  data-width="1920"
  data-height="1080"
></div>

Wichtige Attribute:

  • data-composition-src — Pfad zur Block-HTML-Datei
  • data-composition-id — muss mit der internen ID des Blocks übereinstimmen
  • data-start — wann der Block in der Host-Timeline erscheint (Sekunden)
  • data-duration — wie lange der Block abgespielt wird
  • data-width / data-height — Block-Leinwandabmessungen
  • data-track-index — Ebenen-Reihenfolge (höher = weiter vorne)

Vollständige Details finden Sie unter wiring-blocks.md.

Komponenten verdrahten

Komponenten sind Snippets – fügen Sie ihr HTML in das Markup Ihrer Komposition ein, ihr CSS in den Style-Block und ihr JS in Ihr Skript (falls vorhanden):

  1. Lesen Sie die installierte Datei (z.B. compositions/components/grain-overlay.html)
  2. Kopieren Sie die HTML-Elemente in das <div data-composition-id="..."> Ihrer Komposition
  3. Kopieren Sie den <style>-Block in die Styles Ihrer Komposition
  4. Kopieren Sie etwaigen <script>-Inhalt in das Skript Ihrer Komposition (vor Ihrem Timeline-Code)
  5. Falls die Komponente eine GSAP-Timeline-Integration bereitstellt (siehe Kommentarblock im Snippet), fügen Sie diese Aufrufe zu Ihrer Timeline hinzu

Vollständige Details finden Sie unter wiring-components.md.

Erkennung

Verwenden Sie die CLI als primäres Erkennungswerkzeug. Suchen Sie nach Absicht, nicht nach Kategorien: Die Registry enthält mehr Elemente, als Sie manuell durchsuchen könnten; das Auflisten und Abgleichen von Namen oder Tags ist der langsame Weg und scheitert, sobald die Wortwahl des Autors von Ihrer abweicht.

# Den gesamten Katalog danach bewerten, was der Beat tun soll
npx hyperframes catalog --query "eine Überschrift zeilenweise enthüllen"
npx hyperframes add caption-clip-wipe

Die Suche erfolgt lokal und sendet nichts. Standardmäßig bewertet sie anhand des gemeinsamen Vokabulars mit Name, Titel und Beschreibung des Elements, findet also nur Elemente, die Ihre Wörter wiederverwenden; --on-device bewertet stattdessen nach Bedeutung, nach einem einmaligen Modell-Download. Mit --json gibt der Umschlag an, welche Stufe geantwortet hat – überprüfen Sie dies, anstatt anzunehmen, dass eine Bewertung stattgefunden hat.

Fragen Sie immer auf Englisch, unabhängig von der Sprache des Videos. Der Katalog ist auf Englisch verfasst, und beide Stufen indizieren ihn so (das On-Device-Modell ist ebenfalls nur englischsprachig). Eine Frage in einer anderen Schriftart erzeugt keine durchsuchbaren Begriffe und liefert überhaupt nichts zurück. Dies ist bei einem japanischen oder chinesischen Projekt leicht falsch zu machen, bei dem das Briefing, die Untertitel und die Erzählung alle in dieser Sprache sind und die Frage natürlicherweise folgt: Beschreiben Sie die Bewegung auf Englisch, schreiben Sie dann den On-Screen-Text in der Sprache, die das Video benötigt. Sollte eine Frage mit No searchable words in query zurückkommen, liegt dies an dieser Regel, nicht an einer fehlenden Komponente, und es lohnt sich nicht, einen Lückenbericht zu erstellen.

Die Installierbarkeit wird nach der Bewertung angewendet, nicht davor: Ein Name, den die Vektoren tragen, den diese Registry jedoch nicht ausliefern kann, wird aus den Ergebnissen entfernt und in dropped gezählt; ein dropped-Wert ungleich Null bedeutet daher, dass die beiden unterschiedliche Generationen sind. Siehe /hyperframes-cli für die Offline-Stufe, die Zustimmungsabfragen und wie ein veralteter Index aktualisiert wird.

Zum Durchsuchen oder Filtern statt Suchen:

npx hyperframes catalog
npx hyperframes catalog --type block
npx hyperframes catalog --type component
npx hyperframes catalog --type block --tag social
npx hyperframes catalog --json
npx hyperframes catalog --human-friendly

Der normale Tabellenmodus und --json listen nur Treffer auf; installieren Sie einen ausgewählten Namen mit hyperframes add <name>. --human-friendly öffnet eine interaktive Auswahl und installiert das ausgewählte Element sofort. In CI- oder Agent-Workflows bevorzugen Sie --json gefolgt von einem expliziten add.

Melden, was der Katalog nicht hat

Wenn die Suche zurückkommt und nichts darin die Aufgabe erfüllt, sagen Sie dies, bevor Sie die Bewegung von Hand erstellen:

npx hyperframes feedback --search-miss "<Ihre ausgeführte Abfrage>" --wanted "<Die benötigte Bewegung>" --tier on-device

catalog --query gibt diese Zeile für Sie vorausgefüllt aus, und --json trägt sie als report_gap – sie liegt also bereits vor, wenn Sie entscheiden, dass nichts passt.

Melden Sie immer, wenn nichts in den Ergebnissen die Aufgabe erfüllt, auf beiden Stufen. Warten Sie nicht darauf, dass die On-Device-Stufe geantwortet hat: Sie benötigt einen zugestimmten 33-MB-Download, daher läuft ein Agent auf words, es sei denn, er hat explizit zugestimmt, und sich auf on-device zu beschränken, würde fast jeden Bericht unterdrücken. Der --tier-Wert reist mit, sodass ein Vokabular-Fehltreffer von einem Bedeutungs-Fehltreffer unterscheidbar bleibt, wenn diese gelesen werden. Beschreiben Sie den gewünschten Effekt, nicht den erdachten Elementnamen: Was zurückkommt, ist eine Liste von Bewegungen, die es wert sind, gebaut zu werden, und ein Bericht, der ein nicht existierendes Element nennt, lehrt nichts. Dies ist der einzige Pfad, der eine Abfrage irgendwohin sendet, weshalb es ein separater, bewusster Befehl ist und nicht etwas, das die Suche von selbst tut. Er trägt keine Bewertung und landet nie in der Bewertungsmetrik.

Dies ist das gesamte Bedarfssignal für den Katalog. Das Überspringen führt dazu, dass die Lücke, auf die Sie gestoßen sind, stattdessen aus Installationszahlen geschätzt wird, die eine Bewegung, die niemand installieren konnte, nicht sehen können.

Wenn die CLI die konfigurierte Registry nicht erreichen kann, überprüfen Sie das Roh-Manifest als Fallback:

curl -s https://raw.githubusercontent.com/heygen-com/hyperframes/main/registry/registry.json

Eine Registry, die die CLI nicht erreichen kann, leert den Katalog NICHT für die Erkennung: Ein zuvor abgerufenes Manifest wird auch nach Ablauf des 24-Stunden-Aktualisierungsfensters weiterhin bedient, wenn die erneute Validierung fehlschlägt, sodass catalog und catalog --query weiterhin anhand der letzten Kopie auf der Festplatte auflisten und bewerten.

add benötigt dennoch das Netzwerk, selbst für ein gestern installiertes Element. Nur Manifeste werden zwischengespeichert; die eigentlichen Dateien des Elements werden bei jeder Installation abgerufen. Offline können Sie also suchen und sehen, was ein Element ist, aber die Installation schlägt beim Dateiabruf fehl. Versprechen Sie einem Benutzer keine Offline-Installation.

Jede registry-item.json enthält: Name, Typ, Titel, Beschreibung, Tags, Abmessungen (nur Blöcke), Dauer (nur Blöcke) und Dateiliste.

Details zum Filtern nach Typ und Tags finden Sie unter discovery.md.

Beitrag eines neuen Blocks oder einer neuen Komponente

Um ein NEUES Registry-Element (Untertitel-Stil, VFX-Block, Übergang, Lower Third oder eine wiederverwendbare Komponente) zu erstellen und als Upstream-PR auszuliefern – nicht um ein bestehendes zu installieren – folgen Sie dem vollständigen Workflow (Idee → Gerüst → Bauen → Validieren → Vorschau → Ausliefern) in contributing.md. Copy-Paste-Startvorlagen (Untertitel / VFX / Komponente / registry-item.json) finden Sie in templates.md.

Individual skills in this repo

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

embedded-captions

>

faceless-explainer

Turn arbitrary text — an article, notes, a topic, a brief — into a faceless explainer video: there is no site or footage to capture, so the visuals are invented per scene (typography, abstract graphics, diagrams, data-viz). Use for topic explainers, concept breakdowns, how-tos, listicles. Not a video built from a website (/product-launch-video — promo or tour). Unclear → /hyperframes.

figma

Import Figma content into a HyperFrames composition — rendered assets, brand tokens, components, storyboard sections → reconstructed motion (frames read as states, not slides) (REST/CLI), connector-assisted motion when available, and shaders from a connector or native export. Use when the user pastes a figma.com link or asks to bring a Figma design, frame, logo, brand, or animation into a video/composition.

general-video

>

hyperframes

>

hyperframes-animation

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). Also covers auditing an existing composition

hyperframes-audio

>

hyperframes-cli

>

hyperframes-core

The HyperFrames composition contract — build one renderable project. Use for composition structure, the `data-*` timing attributes, `class=

hyperframes-creative

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`.

hyperframes-keyframes

>

jasonfast123/hyperframes-skills

Import Figma content into a HyperFrames composition — rendered assets, brand tokens, components, storyboard sections → reconstructed motion (frames read as states, not slides) (REST/CLI), connector-assisted motion when available, and shaders from a connector or native export. Use when the user pastes a figma.com link or asks to bring a Figma design, frame, logo, brand, or animation into a video/composition.

media-use

Agent Media OS, the single skill for every media need in a HyperFrames project. Resolve BGM, SFX, image, icon, brand logo, voice, color grade, or LUT into a frozen local file or paste-ready block + ledger record (one verb, `resolve`); generate via TTS / music / image models when the catalog misses; produce voiceover, transcription, captions, and background removal through one shared audio engine; operate on media (cut / reframe / transform); and reuse assets across projects. Also use for vague feedback that real footage looks dark, flat, boring, should feel retro/camcorder/print/ASCII, needs privacy, or needs a media reveal.

motion-graphics

>

music-to-video

Turn a music track (an audio file, a video to pull audio from, or a track generated from a mood brief) into a beat-synced video — lyric video, slideshow, or kinetic promo. The music drives all pacing; any user-supplied images/videos are cut onto the same beat grid, and a complete video needs zero assets. Narrated pieces → the input-matched workflow (see /hyperframes). Unclear → /hyperframes.

pr-to-video

Turn a GitHub pull request (a PR URL, owner/repo#N, or

remotion-to-hyperframes

Port an existing Remotion (React) composition

slideshow

>

talking-head-recut

Package an existing talking-head / interview / podcast video with timed, designed GRAPHIC OVERLAY cards — kinetic titles, lower-thirds, data callouts, quotes, side panels, picture-in-picture — synced to the transcript, on a 16:9 / 9:16 / 4:5 canvas of your choice; the clip plays untouched underneath. Trigger on

Verwandte Skills