Separates creative grammar (renderer_family) from technical engine (render_runtime) so HyperFrames can stand alongside Remotion as a first-class runtime instead of masquerading as a Remotion sub-case. Locks runtime choice at proposal stage and enforces it end-to-end: the schemas require it, video_compose routes by it, the reviewer fails closed on silent swaps, and a parametrized contract test walks every pipeline manifest to ensure each planning-stage skill explains the conversation to the user. Adds hyperframes_compose (scaffold/lint/ validate/render/doctor/add_block), a playbook -> CSS style bridge, and vendored HyperFrames Layer 3 skills from commit d291358, pinned via PROVENANCE.md for future re-sync. Final_review now records render_runtime_used and runtime_swap_detected so compose lies are catchable after the fact.
2.8 KiB
Idea Director - Hybrid Pipeline
When To Use
Use this pipeline when the project combines real source media with support visuals: interviews plus diagrams, footage plus overlays, screen recording plus branded graphics, or source-led edits with generated inserts.
Hybrid is not a catch-all. Your first job is to define what stays primary.
Runtime Selection (MANDATORY — present both runtimes)
Before locking the production plan, decide render_runtime with the user. Hybrid supports BOTH Remotion and HyperFrames; neither is an auto-default. Follow the contract in AGENT_GUIDE.md → "Present Both Composition Runtimes (HARD RULE)":
- Query
video_compose.get_info()["render_engines"]. If bothremotionandhyperframesareTrue, present both to the user with brief-specific analysis:- Remotion — fits when source footage dominates and support layers are React scene components (chart, callout, text card). Remotion composes video clips + React overlays in one pass via
<OffthreadVideo>. - HyperFrames — fits when support layers are HTML/GSAP-native (kinetic callouts, registry blocks, typographic overlays) and source footage is embedded as
<video class="clip">.
- Remotion — fits when source footage dominates and support layers are React scene components (chart, callout, text card). Remotion composes video clips + React overlays in one pass via
- Recommend one with rationale tied to the anchor medium and the shape of the support layer.
- Wait for explicit user approval.
- Log the choice in
decision_logas arender_runtime_selectiondecision with BOTH runtimes inoptions_considered.
A render_runtime_selection decision with only one runtime in options_considered when both were available is a CRITICAL reviewer finding.
Reference Inputs
docs/hybrid-video-best-practices.mdskills/creative/storytelling.mdskills/creative/video-editing.md
Process
1. Choose The Anchor Medium
Pick the storytelling anchor:
talking_headbroll_footagescreen_recordingstill_sequencenarration_led_graphics
2. Define Support Layers
Possible support layers:
- subtitles,
- diagrams,
- code visuals,
- stat cards,
- generated inserts,
- narration,
- music.
Each support layer should solve a specific problem, not just decorate the timeline.
3. Decide The Deliverable Mix
Common outputs:
- hero cut,
- vertical cutdown,
- square cutdown,
- chaptered version,
- ad variant.
4. Build The Brief
Recommended metadata keys:
anchor_mediumsource_inventorysupport_layersdeliverable_mixmissing_capabilitiesfallback_policy
5. Quality Gate
- the anchor medium is explicit,
- support layers are justified,
- the deliverable mix fits the source inventory,
- missing capabilities are surfaced early.
Common Pitfalls
- Calling everything hybrid without defining a primary medium.
- Planning support layers before understanding the source.
- Treating optional generated inserts as guaranteed.