Communitygithub.com

Drama2557/4RealDigital-Video-Studio

HyperFrames 컴포지션 계약서 — 하나의 렌더링 가능한 프로젝트를 구축합니다. 컴포지션 구조, `data-*` 타이밍 속성, `class="clip"`, 트랙, 서브 컴포지션, 변수, 프레임워크 소유 미디어 재생, 결정론적 렌더링 규칙 및 유효성 검사에 사용합니다. 또한 Tailwind 프로젝트와 STORYBOARD.md / SCRIPT.md 계획 형식을 다룹니다. 컴포지션 HTML을 작성하기 전에 읽으십시오.

4RealDigital-Video-Studio란 무엇인가요?

이 스킬은 HyperFrames 비디오 렌더링 엔진을 위한 완전한 컴포지션 계약서입니다. 개발자는 HTML을 사용하여 비디오 컴포지션을 구축할 수 있으며, DOM 요소에 `data-*` 속성을 추가하여 타이밍과 레이아웃을 선언하고, 프레임워크가 재생 및 탐색을 제어합니다. 단일 HTML 파일의 독립형 컴포지션과 `<template>` 태그로 감싸 재사용 가능한 서브 컴포지션 등 두 가지 루트 형식을 지원하며, 각 프로젝트는 정확히 하나의 일시 중지된 GSAP 타임라인(`window.__timelines["<id>"]`)을 등록합니다. 이 스킬은 전체 구축 가이드, 참조 파일 목록, 필수 규칙(예: 결정론적 렌더링, `class="clip"` 가시성, 고유 ID 요구사항), lint 및 스냅샷 명령을 포함한 유효성 검사 프로세스를 다룹니다. Cursor, Codex, Claude Code와 같은 AI 에이전트는 이 문서를 참조하여 정확한 하이퍼프레임스 프로젝트를 생성, 편집 및 검증할 수 있습니다. 이는 `/hyperframes` 도메인의 하위 스킬 중 하나입니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Drama2557/4RealDigital-Video-Studio/tree/HEAD/.agents/skills/hyperframes-core

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

HyperFrames 코어

HyperFrames는 HTML에서 비디오를 렌더링합니다. 컴포지션은 data-* 속성으로 타이밍을 선언하고, 애니메이션 런타임이 탐색 가능하며, 미디어 재생이 프레임워크에 의해 소유되는 DOM을 가진 HTML 파일입니다.

이 스킬은 기술 계약서입니다 — 하나의 하이퍼프레임스 프로젝트를 구축하는 방법입니다. 아래 본문은 구축 가이드입니다. 주제별 세부 정보는 references/ (다음 인덱스 참조)에 있으며, 필요 시 읽으십시오. 다른 문제는 형제 도메인 스킬인 hyperframes-animation, hyperframes-creative, media-use, hyperframes-cli, hyperframes-registry에 있습니다. /hyperframes의 기능 맵이 각각의 범위를 설명합니다.

참조

파일읽을 목적
references/minimal-composition.md가장 작은 렌더링 가능한 컴포지션 스켈레톤부터 시작하려면
references/composition-patterns.md모놀리식 vs 모듈식 선택; 모듈식 index.html 구조화; 서브 컴포지션 아키타입 선택
references/data-attributes.md모든 data-* (루트 / 클립 / 서브 컴포지션 호스트 / 레거시 별칭) 조회; class="clip" 사용
references/tracks-and-clips.mddata-track-index 선택, 동일 트랙 중복 / z-인덱스 처리, 다른 클립에 상대적인 클립 타이밍 설정
references/sub-compositions.md서브 컴포지션 연결 (호스트 속성, <template>, 인스턴스별 변수) 및 내부 애니메이션
references/variables-and-media.md변수 선언; <video>/<audio> 배치, 볼륨 설정, 트리밍
references/determinism-rules.md탐색 가능한 타임라인 구축; 결정론 금지 사항; 애니메이션 가능 속성 허용 목록; 레이아웃 / 텍스트 맞춤
references/full-screen-motion.md공유 배경으로 전체 프레임 모션 작성
references/storyboard-format.mdSTORYBOARD.md 계획 작성 (+ 구문 분석된 매니페스트)
references/review-loop.md라이브 보드에서 계획 → 스케치 → 구축 검토 패스 실행 — 모든 스토리보드 계획 워크플로우에서 공유됨
references/production-loop.md승인된 계획을 완성된 비디오로 전환 — 스테이지 종속성 (오디오, 프레임, 조립, 전환, 자막, 확인, 전달) 자유 형식 구축이 직접 따름
references/brief-contract.md브리프의 기본 규칙 — 모드 유도 (협업 / 자율), 공유 필드 레지스트리, 질문 불변 사항 (질문 자체는 /hyperframes → 의도 레이어에 있음)
references/brief-format.mdBRIEF.md 작성 — 워크플로우의 설정이 작성하고 이후 모든 단계가 읽는 확인된 의도 문서
references/script-format.md선택적 SCRIPT.md 잠긴 내레이션 작성
references/subagent-dispatch.md하위 에이전트 디스패치 동사 (병렬 팬아웃 / 백그라운드 / 대기)를 하네스에 매핑
references/frame-worker-core.md공유 프레임 워커 역할 계약 — 각 내러티브 워크플로우의 패킷 빌더가 해당 워크플로우의 sub-agents/frame-worker.md 델타 앞에 추가함
references/tailwind.mdTailwind v4 프로젝트에서 작업 (init --tailwind; 런타임 계약은 Studio의 v3와 다름)

애니메이션 런타임 세부 사항 (GSAP API, Lottie, Three.js 등)은 hyperframes-animation → adapters/<runtime>.md로 이동하십시오.

컴포지션 구축

두 가지 루트 형식 (교체 불가)

  • 독립형 (최상위 index.html) — 루트 <div data-composition-id="…">가 <body>에 직접 위치하며, <template> 래퍼 없음 (래핑하면 모든 콘텐츠가 숨겨지고 렌더링이 깨짐).
  • 서브 컴포지션 (data-composition-src를 통해 로드됨) — 루트 반드시 <template>으로 래핑되어야 함.

⚠ 전송 규칙: 런타임은 <template> 콘텐츠만 복제합니다. <head> 스타일/스크립트를 포함한 외부 모든 것은 폐기됩니다. <style>/<script>를 템플릿 내부에 배치하십시오. ⚠ 호스트 ID 규칙: 호스트 슬롯의 data-composition-id는 내부 템플릿의 data-composition-id 및 window.__timelines["<id>"] 키와 정확히 일치해야 합니다. -mount/-slot/-host 접미사는 사용하지 마십시오.

파일 모양, 호스트 연결 및 사전 렌더링 체크리스트 → references/sub-compositions.md.

루트는 크기가 지정되어야 함 (무음 레이아웃 버그)

독립형 루트는 명시적인 크기가 지정된 상자 (px 단위의 width/height)가 필요하며, height:100% 요소까지의 모든 상위 요소는 해결된 높이가 있어야 합니다. 그렇지 않으면 flex/100% 자식이 ~0으로 축소되고 콘텐츠가 왼쪽 상단 모서리에 쌓입니다. 자동화된 게이트만으로 이를 잡을 수 있다고 믿지 마십시오. 스냅샷을 검사하십시오. 스켈레톤 → references/minimal-composition.md.

하나의 일시 중지된 타임라인

각 컴포지션은 window.__timelines["<id>"] (키 = 루트 data-composition-id)에 정확히 하나의 gsap.timeline({ paused: true })를 등록하며, 페이지 로드 시 동기적으로 구축됩니다. 렌더링 기간 = 루트 data-duration이며, 타임라인 길이가 아닙니다. 수동으로 서브 타임라인을 호스트에 중첩하지 마십시오. 전체 계약 (비 GSAP 런타임 포함) → references/determinism-rules.md + hyperframes-animation/adapters/.

첫 번째 패스 린트 함정 (보장된 첫 번째 빌드 실패)

lint가 잡아내는 두 가지 규칙이지만, 사후에만 잡힙니다. 처음부터 올바르게 작성하십시오:

  • 루트 컴포지션 요소는 data-start="0"을 반드시 포함해야 합니다. (data-composition-id/data-width/data-height와 함께). 생략하면 lint가 root_composition_missing_data_start 오류를 발생시킵니다.
  • CSS 초기 transform을 동일한 속성에 대한 GSAP 트윈과 절대 짝지어 사용하지 마십시오. CSS 값과 트윈의 시작이 충돌하여 lint가 gsap_css_transform_conflict로 거부합니다. CSS transform: translateX(-40px) 대신 gsap.fromTo(el, { x: -40 }, { x: 0 })을 사용하여 트윈 내부에서 초기 상태를 설정하십시오.

불가침 규칙 (자동화 게이트가 놓칠 수 있는 무음 버그)

여기에 표시됨. 전체 근거는 연결된 참조에 있음. 위반하지 마십시오:

  • 렌더링 시간 시계 / 시드되지 않은 Math.random / 네트워크 / 입력 상태 없음; repeat: -1 없음 (유한 횟수 사용). → determinism-rules.md
  • 시각적 속성 허용 목록만 애니메이션; display 또는 원시 visibility는 절대 트윈하지 마십시오. GSAP autoAlpha 및 길이가 0인 타임라인 경계 설정만이 가시성 예외이며, 클립 요소가 아니거나 클립 내부의 래퍼에서만 가능합니다. 프레임워크만이 .clip 가시성을 제어합니다. 페이지 로드 시 나중 장면 클립에 gsap.set을 사용하지 마십시오. → determinism-rules.md
  • 본문 텍스트에 <br> 없음; 변환된 요소는 블록 수준 + 크기 지정되어야 함; 펄스 절대 장식 요소는 피크 여유 공간이 필요함. → determinism-rules.md
  • <video>/<audio>는 모든 중첩 깊이에서 작동합니다 (서브 컴포지션 <template> 또는 래퍼 내부 포함). 프레임워크는 재생을 소유하고 미디어가 있는 곳이면 어디든지 탐색/디코딩합니다. 유일한 주의 사항은 타임라인에 관한 것으로, 배치가 아닙니다: 서브 컴포지션 타임라인은 호스트 루트 요소를 애니메이션할 수 없습니다. → variables-and-media.md
  • 모든 id는 조립된 페이지 전체에서 고유해야 합니다. 서브 컴포지션 내에서는 id 앞에 컴포지션 id를 붙이십시오 (#<id>-hero). 중복된 <video>/<img> id는 빈 렌더링을 초래합니다 — 프로듀서가 getElementById로 프레임을 삽입하고, 크로스 파일 중복은 lint를 통과합니다. → composition-patterns.md
  • 전체 화면 장면 채우기는 전체 여백 자식 (position:absolute; inset:0)에 적용되며, 컴포지션 루트 자체에는 절대 적용하지 마십시오. 프로듀서의 프레임 합성이 루트 요소 자체의 background를 생략할 수 있습니다 (프레임이 검은색으로 렌더링됨). 미리보기/snapshot에서는 올바르게 표시되더라도 그렇습니다. → composition-patterns.md

기존 컴포지션 편집

  • 먼저 파일을 읽으십시오. 관련 없는 타이밍, 트랙, ID, 변수, 미디어 경로를 유지하십시오.
  • 기존 컴포지션 ID 및 타임라인 키와 일치시키십시오.
  • 클립 추가: 겹치지 않는 data-track-index를 선택하거나 의도적으로 주변 타이밍을 조정하십시오.
  • 모든 컴포지션 요소의 data-hidden 속성은 미리보기와 렌더링 모두에서 요소를 숨기며, 시간 창을 무시합니다. 이는 비파괴적/가역적이며 Studio의 타임라인 눈 아이콘으로 전환됩니다.
  • 서브 컴포지션 추가: 호스트를 연결하기 전에 내부 data-composition-id를 확인하십시오.

유효성 검사

명령어 세부 사항은 hyperframes-cli 사용

  • npx hyperframes check 통과 (린트, 런타임, 레이아웃, 모션 및 대비에서 0개의 발견 사항)
  • 서브 컴포지션이 있는 프로젝트: npx hyperframes snapshot --at <중간점> 및 각 프레임을 육안으로 확인
  • 검토를 위해 npx hyperframes preview (사용자는 Studio의 타임라인에서 무엇이든 편집 가능)
  • 사용자가 승인한 후에만 npx hyperframes render

Individual skills in this repo

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

Drama2557/4RealDigital-Video-Studio

Overlay doctrine for the embedded-captions workflow — the caption MODEL (drop / rail / embed) and the rule that captions are an OVERLAY composited on top of the film, never a reserved bottom band you shift content up to avoid. Load when adding captions/subtitles to a talking-head or launch video, when deciding whether a phrase should be dropped, ride the verbatim rail, or be promoted to a scarce embedded climax, when laying out a composition that will carry captions (do NOT reserve a keep-out band), or when centering a composition on the true frame center under captions. Quotes the rail+embed model from embedded-captions and constraint #13 (captions overlay, keep-out band retired) from the product-launch-video scene agent. Applies ON TOP of embedded-captions.

Drama2557/4RealDigital-Video-Studio

Turn a weekly changelog .md into a finished branded changelog video (square 1080, ~45-60s, Annie VO, animated brand background, mock-UI visualizations, lowkey captions). Use when the user provides a changelog/digest markdown and wants the weekly video, or says "changelog video". Self-contained — fonts, background, lexicon, and scripts ship in this skill.

Drama2557/4RealDigital-Video-Studio

The technique catalog: five velocity-matched SEAMS (zoom-through, INVERSE zoom-through, cut-the-curve, waterfall cut, rack-focus blur-cut) plus the two in-scene techniques — waterfall ENTRY (staggered arrival cascades for title cards / segment openers) and the nudge curve (slow-fast-slow three-phase group slides). Covers partial-travel (~12% of frame) velocity matching via mirrored power4 eases, the Z scale-sign rule, size-scaled blur (10px text / 18-20px full-frame), word-by-word staggered cuts, cascade pacing by element weight, and the 10/65/25 slide ratio. Read before authoring any transition, text-beat handoff, kinetic text entry, or group reposition. [depth, zoom, inverse-zoom, scale-sign, mirrored-zoom, rack-focus, pacing, velocity, cut-the-curve, waterfall, stagger, cascade, kinetic-text, title-card, segment-opener, nudge, slide, easing, group-motion, z-depth, motion-graphics, cinematic, transition, blur, directional-continuity]

Drama2557/4RealDigital-Video-Studio

Add captions or subtitles to an existing single-subject talking-head video without editing the footage. Use for plain verbatim captions, cinematic captions embedded behind the subject, VFX captions, “炸/特效/酷炫字幕,” or a named identity from the 35-style catalog. Route by visual identity, not by backend engine. The quiet `anchor` rail is the default; embed every word only when the user explicitly wants a fully cinematic treatment. The workflow runs locally end to end, including transcription and subject matting; split multi-shot footage before applying it.

Drama2557/4RealDigital-Video-Studio

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.

Drama2557/4RealDigital-Video-Studio

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.

Drama2557/4RealDigital-Video-Studio

Author or edit a custom HyperFrames composition when no specialized workflow fits, or when BRIEF.md sets flow: companion. Use for longer or multi-scene pieces, brand and sizzle reels, montages, static loops, static title cards, footage remixes, and freeform builds. Use motion-graphics instead for a short unnarrated motion-first unit, including an animated title. Route fresh creation through hyperframes before using this skill.

Drama2557/4RealDigital-Video-Studio

Use the HyperFrames CLI development loop: init, add, catalog, capture, lint, check, snapshot, compare, grade-compare, preview, play, present, beats, keyframes, single or batch render, publish, cloud, cloudrun, feedback, lambda, doctor, browser, info, upgrade, skills, compositions, docs, benchmark, telemetry, transcribe, auth, tts, and remove-background. Also use when diagnosing build or render failures. validate, inspect, and layout are deprecated aliases; use check. Covers local, HeyGen-hosted cloud, AWS Lambda, and Google Cloud Run rendering.

Drama2557/4RealDigital-Video-Studio

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

Drama2557/4RealDigital-Video-Studio

Install, discover, and wire registry blocks and components into HyperFrames compositions. Use when running hyperframes add or hyperframes catalog, installing one item or every block matching a tag, wiring an installed item into index.html, or working with hyperframes.json. Covers discovery, install locations, block sub-composition wiring, component snippet merging, and authoring a new block or component to contribute upstream (idea → scaffold → validate → PR).

Drama2557/4RealDigital-Video-Studio

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.

Drama2557/4RealDigital-Video-Studio

GATEWAY — load FIRST before composing any HyperFrames animation or video. The high-level motion law that makes a multi-scene video feel like ONE continuous camera move instead of a stack of independently-animated slides. Covers the vector law (how you exit determines how you enter, incl. the Z scale-sign rule), the film's current, carrier elements, causal motion, the Seam Gate (build-gate enforcement), the ban on idle wobble (motion must PERFORM, not breathe), stillness-before-climax, and the sustained-motion routes. Routes to the low-level technique skills (cut-the-curve — the full catalog incl. waterfall entry + nudge curve, oversized-cursor, seam-craft). These rules SUPERSEDE generic / upstream motion guidance. [continuity, direction, vector, momentum, seam, transition, ease, performance, idle-motion, narrative-motion, film-grammar]

Drama2557/4RealDigital-Video-Studio

A short, design-led motion graphic where motion is the message — kinetic typography, stat count-up, chart/data-viz hit, logo sting / brand lockup, lower-third / callout / social overlay, animated map (highlight regions, connect places, zoom to a location), animated tweet / news-article / headline, webpage / UI animation (scroll, cursor, callouts), or fusing a real image's geometry into a chart. Usually under 10s (up to ~30s), no narration or live-action subject; renders to MP4 or transparent overlay. Longer / narrated / multi-scene → /general-video. Unclear → /hyperframes.

Drama2557/4RealDigital-Video-Studio

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.

Drama2557/4RealDigital-Video-Studio

House-style oversized macOS cursor technique for HyperFrames launch videos. Load whenever a scene involves cursors or a pointer-led action, when kicking off a UI scene, when igniting a morph/transition/typing run with a click, or when a scene reads as static, dead, or stale and needs a cheap high-yield source of motion to carry the viewer's eye and segment them out of the stale state. Covers cursor size/look (incl. brand-motif cursors), the off-screen entry law, tip-targeting and the click tap, click-ignites-the-next-beat, and exit / cross-scene handoff.

Drama2557/4RealDigital-Video-Studio

Turn a GitHub pull request (a PR URL, owner/repo#N, or 'this PR' in a checked-out repo) into a code-change explainer video — changelog, feature reveal, fix, or refactor walkthrough built from the diff, commits, and files: the input is a code change, not a website. Not a product promo (/product-launch-video) or a no-PR topic explainer (/faceless-explainer). Unclear → /hyperframes.

Drama2557/4RealDigital-Video-Studio

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.

Drama2557/4RealDigital-Video-Studio

Author a HyperFrames slideshow — a presentation, pitch deck, or interactive deck with discrete slides, fragment reveals, branching, hotspot navigation, and built-in presenter mode with speaker notes; also converts an existing page into a deck. Output is a navigable deck, not a rendered MP4. If the user didn't explicitly ask for a slideshow, confirm before authoring. Unclear → /hyperframes.

Drama2557/4RealDigital-Video-Studio

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 "graphic overlays", "on-screen graphics", "package / dress up my video". Not plain subtitles (/embedded-captions). Unclear → /hyperframes.

Drama2557/4RealDigital-Video-Studio

Agent skill / project related to launch or product demo video: Drama2557/4RealDigital-Video-Studio

관련 스킬