SkillAgentSearch skills...

seam-craft

Render-correctness doctrine for scene-to-scene seams in HyperFrames launch videos — the prerequisites that make transitions composite correctly on the master timeline.

Install / Use

npx skills add heygen-com/hyperframes --skill seam-craft

Installs into whichever agent you are using.

About this skill
📄

SKILL.md

Installable skill definition

Quality Score

90/100

Supported Platforms

Universal

Tags

Our assessment of seam-craft

seam-craft scores 90/100 on our quality scale, 140th of 1,630 Development & Engineering skills we index (top 9%).

Its SKILL.md is 4.7 KB long, split into 4 sections and no code examples: a solid amount of guidance for an agent.

With 52,778 GitHub stars, it is one of the more widely adopted skills in the catalogue.

Substance
26/30
Structure
8/20
Description
15/15
Adoption
20/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated today, so seam-craft is actively maintained.
  • It is released under the Apache-2.0 license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

seam-craft compared with similar skills

All 4 of these similar skills score higher than seam-craft; compare them before choosing.

SkillScoreStarsUpdatedFormat
seam-craft (this skill)by heygen-com9052.8ktodaySKILL.md
ai-job-searchby MadsLorentzen10043.9k3d agoCLAUDE.md
claude-howtoby luongnv8910041.7k5d agoCLAUDE.md
algorithmic-artby anthropics100177.9k2d agoSKILL.md
pptxby anthropics100177.9k2d agoSKILL.md

Frequently asked questions

How do I install seam-craft?
Run npx skills add heygen-com/hyperframes --skill seam-craft. The install tabs above show the steps for each supported agent.
Which AI agents does seam-craft work with?
It is written for Universal, as a SKILL.md file. Other agents that read the same format can often use it too.
Is seam-craft safe to use?
It is Apache-2.0-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is seam-craft still maintained?
The repository was last updated today, so seam-craft is actively maintained.

name: seam-craft description: Render-correctness doctrine for scene-to-scene seams in HyperFrames launch videos — the prerequisites that make transitions composite correctly on the master timeline. Load when assembling the master timeline / index.html, when a white flash appears at a cut or crossfade seam (especially on dark films), when reasoning about why a transition opacity dip shows through, or when verifying the render-side mechanics of how overlapping scene wrappers blend. Covers the opaque stage-ground (#root background) white-flash guard and how the injector overlaps wrappers, holds final frames, ping-pongs tracks, and stamps lint-clean template code onto the master timeline. Does NOT contain the per-transition catalog — see the transition registry for individual transition entries. metadata: internal: true

Seam Craft — render prerequisites for scene-to-scene transitions

This is the render-correctness doctrine for PLV scene-to-scene seams: the prerequisites and master-timeline mechanics that make any transition composite correctly, independent of which specific transition is chosen. The per-transition catalog (crossfade, push-slide, zoom-through, cut-the-curve, …) lives in the transition registry — this page is the doctrine that sits underneath all of them.

The transitions this doctrine governs are Tier-B-ready: pure transform / opacity / filter on the two scene clip wrappers (#el-<sid>), no injected overlay DOM, no per-scene cooperation. Overlay families (staggered blocks, blinds, light leak, grid dissolve, page burn) and shader transitions are deferred to later phases.

Stage ground prerequisite (white-flash guard)

Several templates open a window where the two wrappers' summed opacity < 1 (the cut-the-curve mid-window cut, zoom-through's 0.15 floor, plain crossfade's power-curve dip). Whatever is BEHIND the wrappers shows through during that window. If the assembled index.html #root has no opaque background, the renderer composites the dip over its default white page → a white flash at every seam, glaring on dark films (observed on two Spotify runs before the fix). The assembler must paint the stage: #root { background: var(--canvas-deep, var(--canvas, #000)) } — assemble-index.mjs now emits this; any other consumer of these templates owns the same guarantee.

How the injector applies a transition

At a break boundary between scene i (from) and scene i+1 (to), the injector:

  1. Extends #el-<from> wrapper data-duration by duration_s (holds its final frame — verified: core/src/runtime/init.ts:1393-1410 external-slot branch).
  2. Pulls #el-<to> wrapper data-start earlier by duration_s (creates the overlap window).
  3. Reassigns all clip data-track-index as a 0/1 ping-pong so the two overlapping wrappers never share a track (same-track overlap is illegal — core/src/lint/rules/composition.ts). Higher track composites on top.
  4. Stamps the gsap_template into window.__timelines["main"] at T = overlap-start.

Verified by prototype render (2026-05-31): the master-timeline wrapper tween is seeked and rendered (no double-seek with the sub-comp's own paused timeline — the runtime drives them independently), the extended wrapper holds scene i's final frame, and the higher-track incoming wrapper composites over + blends with the outgoing one.

Template placeholders

The injector substitutes these tokens in each gsap_template line:

| Token | Meaning | | ---------------------------------- | ------------------------------------------------------------------------ | | __OLD__ | "#el-<from>" — outgoing clip wrapper selector (quoted) | | __NEW__ | "#el-<to>" — incoming clip wrapper selector (quoted) | | __T__ | overlap-start time in seconds (master clock) | | __DUR__ | duration_s for this boundary | | __DX__ | horizontal travel for directional types: -1920 (LEFT) / 1920 (RIGHT) | | __DY__ | vertical travel: -1080 (UP) / 1080 (DOWN) | | __ORIGIN_OUT__ / __ORIGIN_IN__ | transformOrigin pair for squeeze |

filter / scaleX / transformOrigin are lint-clean on the master timeline (verified: core/src/lint/rules/gsap.ts has no per-property whitelist and scopes its checks to data-composition-id ranges; the x/y/scale/rotation/opacity whitelist is a scene-worker prompt rule only — it does not bind index.html).

Related Skills

View on GitHub
GitHub Stars52.8k
CategoryDevelopment
Updated15h ago
Forks4.8k

Languages

TypeScript

Trust signals

100/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

No cautions