모든 스킬

hyperframes (heygen-com/hyperframes)

HyperFrames로 기획 영상, 설명 영상, 차트, 자막 등 다양한 영상을 만들고 편집하고 애니메이션을 넣어 렌더링합니다.

HyperFrames 스킬: 스킬 없이와 영상 품질은 같지만 토큰을 1.9배 사용하고 프로젝트 구조는 더 편집하기 쉽습니다

상황에 따라주의

Codex CLI · gpt-6-astra

19.9 / 30

스킬 없이 대비 향상폭: -0.01 · 상황에 따라 · 18회 실행

상황에 따라: 총점 19.9/30이 22점 미만, 향상폭 -0.01가 +1.0 미만. 추천이 되려면 총점 22/30, 출력 품질 3.5, 향상폭 +1.0이 필요합니다.

SOTA

통과

Codex로 테스트

커버 대상 Codex, Claude Code

Codex CLI 0.166 (SOTA 티어): 채점된 실행 18회. 여기서 통과하면 티어 규칙에 따라 Claude Code도 커버되지만, 두 번째 티어에 대해서는 아무것도 말해주지 않습니다.

점수

각 차원은 0~5점이며 여섯 차원을 더하면 30점 만점의 총점이 됩니다. 모든 차원에서 5가 가장 좋습니다. 비용 5는 저렴하고 빠름, 설치 5는 쉬움을 뜻합니다.

트리거 신뢰도
5.0
스킬 없이 대비 향상폭
2.0
출력 품질
4.9
토큰 및 시간 비용
2.0
설치 및 이식성
3.0
안전성
3.0

보안 리뷰

주의

정적 스캔: CRITICAL 27 / HIGH 26 / MEDIUM 88. 수동 검토: 실행 안전(네트워크가 차단된 샌드박스). 스캔이 깨끗하다고 해서 스킬이 안전하다는 증거는 아닙니다.

설치

npx skills@latest add heygen-com/hyperframes --skill hyperframes

출처

고정 커밋: af0d68d612ebd9c419f27d9ebc8068512667bae4

테스트일: 2026-11-02

테스트한 과제

  • 15초 제품 티저 — 이 HyperFrames 프로젝트(index.html 루트 컴포지션, GSAP 타임라인, npx hyperframes render로 렌더링)에서 월간 김 스낵 구독 서비스 Tidepool의 15초 1920x1080 30fps 제품 티저를 만드세요. 화면 필수 텍스트: 이름 'Tidepool',…
  • 20초 애니메이션 막대 차트 설명 영상 — 이 HyperFrames 프로젝트(index.html 루트 컴포지션, GSAP 타임라인, npx hyperframes render로 렌더링)에서 20초 1920x1080 30fps 애니메이션 설명 영상을 만드세요: 월별 매출 막대 차트(8월 $42k, 9월 $58k, 10월 $71k). 제목 'Revenue, last 3 months…
  • 30초 세로형 자막 숏폼 — 이 HyperFrames 프로젝트(index.html 루트 컴포지션, GSAP 타임라인, npx hyperframes render로 렌더링)에서 30초 세로형 1080x1920 30fps 소셜 숏폼을 번인 자막과 함께 만드세요. 자막은 순서대로 각각 약 5초 동안 화면에 표시되며 시작 시점은…

장점

  • 스킬 이름을 언급하지 않았는데도 적용되었습니다. 스킬 사용군 실행 6/6회에서 스킬 파일을 읽었습니다.
  • 스킬 사용 시 높은 절대 품질: 4.89/5.

단점

  • 스킬 없이 대비 측정 가능한 향상 없음(-0.01, 노이즈 범위 안).
  • 한 문장 프롬프트는 4.91점, 스킬 사용은 4.89점(-0.01).
  • 스킬 없이보다 토큰을 1.95배 사용합니다.
  • 대조군이 이미 4.9점이라 천장 효과가 있어, 이 테스트로는 향상폭을 보여줄 수 없습니다.
  • 테스트 참고: 스킬의 안내 문구만 채점했습니다. hyperframes CLI 루프(check, preview, render)는 샌드박스에서 사용할 수 없었습니다. CLI는 우리가 감사하거나 실행하지 않은 별도 npm 패키지이며, 비활성화하지 않으면 사용 텔레메트리를 전송합니다. 자매 스킬인 hyperframes-core와 hyperframes-animation은 더 오래된 커밋 207c8a4에서, 이 스킬은 af0d68d에서 테스트했습니다.
  • 과제·그룹당 n=2이며, 약 1점 미만의 차이는 노이즈입니다.

리뷰

Codex CLI 0.166 (gpt-6-astra, low reasoning)을 Mac 테스트 머신에서 실행했고, 실행마다 새 임시 프로젝트와 임시 HOME/TMPDIR/캐시를 사용했습니다. 스킬 설치(스킬 사용군), 미설치(대조군), 미설치 상태에서 스킬의 핵심 요구사항만 한 문장으로 압축해 프롬프트에 덧붙인 경우(한 문장 프롬프트군)로 나눴으며, 과제·그룹당 2회씩 실행했습니다. 네트워크는 끄고 /tmp 쓰기는 차단했습니다. 프롬프트에는 스킬 이름을 언급하지 않았습니다(아래에 적은 경우 제외). 환경: 프로젝트 템플릿(GSAP script 태그와 컴포지션 메타데이터가 있는 index.html)은 모든 그룹에서 동일합니다. 샌드박스에는 네트워크도 HyperFrames CLI도 없어서 어떤 그룹도 check, snapshot, render를 실행하지 못했고 소스만 작성했습니다. 이후 별도의 오프라인 머신에서 HyperFrames 0.8.226(드래프트 품질)을 고정해 모든 프로젝트를 렌더링했습니다. 이 테스트는 스킬의 CLI 루프가 아니라 스킬의 텍스트를 검증합니다.

3개 그룹 비교

그룹평균 점수 (0-5)실행당 토큰
스킬 없음4.9128k
한 문장 프롬프트4.91150k
스킬 사용4.89249k

Codex CLI에서 18회 실행해 측정했고, LLM 심사 없이 규칙 기반 검사로 채점했습니다. 총점 19.9 / 30, 판정 상황에 따라.

참고: 스킬의 안내 텍스트만 평가했습니다. hyperframes CLI 루프(check, preview, render)는 샌드박스에서 사용할 수 없었습니다. CLI는 저희가 감사하거나 실행하지 않은 별도 npm 패키지이며, 비활성화하지 않으면 사용량 텔레메트리를 전송합니다. 자매 스킬 hyperframes-core와 hyperframes-animation은 이전 커밋 207c8a4에서, 이 스킬은 af0d68d에서 테스트했습니다.

판정: 상황에 따라 다름 (19.9 / 30). 출처: heygen-com/hyperframes, skills/hyperframes, 커밋 af0d68d에 고정. 설치: npx skills@latest add heygen-com/hyperframes --skill hyperframes. 라이선스: Apache-2.0.

어떤 스킬인가

heygen-com/hyperframes의 hyperframes 스킬(Apache-2.0)입니다. 1,100단어의 SKILL.md와 약 25개의 참고 파일, 몇 개의 도우미 스크립트로 구성되며, HTML로 영상을 만들고 일시정지된 GSAP 타임라인을 프레임 단위로 탐색해 MP4로 렌더링합니다. 12개 규칙의 렌더 계약(모든 시간 지정 요소는 class="clip"에 data-start/data-duration을 가짐, 일시정지된 타임라인 하나를 window.__timelines에 등록, 비결정적 요소 금지), 편집 가능한 구조(서브 컴포지션마다 장면 하나), npx hyperframes CLI(check, snapshot, preview, render)를 중심으로 한 작업 루프를 정의합니다.

테스트 방법

Codex CLI 0.166(gpt-6-astra, 낮은 추론)을 Mac 테스트 머신에서 실행했고, 실행마다 새 임시 프로젝트와 임시 HOME/TMPDIR/캐시를 사용했습니다. 스킬을 설치한 경우(스킬 사용군), 설치하지 않은 경우(대조군), 스킬의 핵심 요구사항을 한 문장으로 압축해 프롬프트 끝에 붙인 경우(한 문장 프롬프트군)로 나눴고, 작업마다 각 군 2회씩 실행했습니다. 네트워크는 끄고 /tmp 쓰기는 차단했습니다. 프롬프트에는 스킬 이름을 전혀 언급하지 않았습니다(아래에 적은 표현은 예외).

환경: 프로젝트 템플릿(GSAP 스크립트 태그가 있는 index.html, 컴포지션 메타데이터)은 모든 군이 같습니다. 샌드박스에는 네트워크도 HyperFrames CLI도 없어서 어느 군도 check, snapshot, render를 실행할 수 없었고 소스만 작성했습니다. 그다음 고정된 HyperFrames 0.8.226(드래프트 품질)이 있는 별도의 오프라인 머신에서 모든 프로젝트를 렌더링했습니다. 이는 스킬의 CLI 루프가 아니라 스킬의 텍스트를 테스트한 것입니다.

  1. 15초 제품 티저 — 이 HyperFrames 프로젝트(index.html 루트 컴포지션, GSAP 타임라인, npx hyperframes render로 렌더링)에서 월간 김 스낵 구독 서비스 Tidepool의 15초, 1920x1080, 30 fps 제품 티저를 만드세요. 화면에 필수 텍스트: 이름 'Tidepool',…
  2. 20초 애니메이션 막대 차트 설명 영상 — 이 HyperFrames 프로젝트(index.html 루트 컴포지션, GSAP 타임라인, npx hyperframes render로 렌더링)에서 20초, 1920x1080, 30 fps 애니메이션 설명 영상을 만드세요. 월별 매출 막대 차트(Aug $42k, Sep $58k, Oct $71k). 제목 'Revenue, last 3 months…
  3. 30초 세로 자막 숏폼 — 이 HyperFrames 프로젝트(index.html 루트 컴포지션, GSAP 타임라인, npx hyperframes render로 렌더링)에서 30초 세로형 1080x1920, 30 fps 소셜 숏폼을 자막을 영상에 구워 넣어 만드세요. 자막은 순서대로, 각각 약 5초 동안 화면에…

채점은 프로그램 방식(숨은 테스트, 심어 둔 문제 탐지, 제약 조건 검사, 해당되는 경우 렌더링+OCR)으로 실행당 0~5점입니다. 점수를 결정한 LLM 심사자는 없습니다.

결과

세 번째 군에 전달한 한 문장 프롬프트: "HyperFrames HTML 컴포지션으로 만드세요. data-composition-id/data-width/data-height/data-duration이 있는 루트, 모든 시간 지정 요소에 class="clip"과 초 단위 data-start, data-duration 부여, 일시정지된 GSAP 타임라인 하나를 window.__timelines["<composition-id>"]로 등록, 비결정적 요소 금지(Date.now(), 시드 없는 Math.random(), 타이머, 네트워크, repeat:-1 없음)."

작업대조군 점수한 문장 프롬프트스킬 사용대조군 토큰한 문장 프롬프트 토큰스킬 사용 토큰스킬 읽음
t1-teaser5.05.04.97140k173k364k2/2
t2-chart4.714.724.71125k116k184k2/2
t3-vertical5.05.05.0117k158k197k2/2

평균 점수: 스킬 없이 4.9, 스킬 사용 시 4.89(델타 -0.01). 실행당 토큰: 128k 대 249k(1.95배), 시간 154초 대 208초. 한 문장 프롬프트군: 4.91(한 문장 프롬프트 대비 스킬의 이득: -0.01, 스킬 없는 경우 대비 한 문장 프롬프트의 이득: +0.0). 한 문장 프롬프트는 실행당 150k 토큰을 쓰므로, 스킬은 한 문장 프롬프트의 1.67배 비용입니다.

실제로 있었던 일

  • 영상 품질은 같았습니다. 18개 프로젝트 모두 첫 시도에 올바른 크기, 길이, 프레임 레이트로 렌더링됐고, 필요한 텍스트(이름, 태그라인, $14 / box, 마무리 문구, 자막)는 있어야 할 모든 실행에서 OCR로 화면에서 확인됐습니다. 평균 점수는 스킬 없이 4.90, 규칙을 한 줄로만 준 경우 4.91, 스킬 사용 시 4.89였습니다. 세 군 모두에서 잃은 점수는 막대 차트 설명 영상이 오래 정지해 있는 부분(모션이 있는 프레임 15〜23%)에서만 나왔습니다.
  • 한 줄 버전이 스킬만큼 잘했습니다. 대조군 에이전트에 계약을 한 문장으로 주자(clip 클래스, data-start/data-duration, 일시정지된 타임라인 하나, 비결정적 코드 금지) 같은 점수와 같은 모습이 나왔습니다. 세 군 모두의 티저, 차트, 세로 숏폼 콘택트 시트를 보고 품질 순위를 매길 수 없었습니다.
  • 스킬은 매번 읽히지만(스킬 사용군 6/6 실행) 영상의 모습이 아니라 프로젝트를 만드는 방식을 바꿉니다. 스킬 사용 6회 실행 모두 '편집 가능하게 유지' 섹션의 요구대로 영상을 서브 컴포지션(compositions/*.html, 장면당 하나)으로 나눴고, 스킬 없는 12회 실행 중 0회가 그렇게 했습니다. 시간 지정 요소를 clip으로 표시한 정도는 스킬이 아니라 군에 따라 달랐습니다. 스킬 없는 실행은 프로젝트당 0〜6개, 스킬 실행은 1〜9개, 한 문장 프롬프트 실행은 3〜25개를 썼습니다. 나중에 사람이 HyperFrames Studio에서 프로젝트를 열어 볼 때 중요한 부분이 바로 이것인데, 여기서는 채점하지 않습니다.
  • 비용이 많이 듭니다. 실행당 249k 토큰으로 스킬 없는 128k(1.94배), 한 문장 프롬프트 150k(1.66배)보다 많고, 명령은 실행당 15회 대 8회, 시간은 약 35% 더 걸립니다. 에이전트가 SKILL.md와 여러 참고 파일을 먼저 읽고, 자율 모드에서는 아무도 요청하지 않은 SPEC.md, REVIEW.md, README까지 작성합니다(실행당 4.7개 파일 대 1개).
  • 스킬의 일부는 실행할 수 없었습니다. SKILL.md의 루프는 check, snapshot, review, render 순인데, CLI가 없으니 에이전트는 손으로 쓴 REVIEW.md 파일로 대체했습니다. CLI가 동작하는 환경에서는 결과가 다를 수 있고, 여기서 첫 시도 프로젝트에 없던 오류를 잡아낼 수도 있습니다.

항목별 점수

항목점수이유
1_output_quality4.89

스킬 사용 시 평균 4.89/5점(프로그램 검사, 작업별 표 참조).

2_lift_vs_no_skill1.99

스킬 없이 4.90점 대비 -0.01점(작업당 n=2, 약 1점 미만의 차이는 노이즈).

3_trigger5.0스킬 사용군 6/6 실행에서 스킬 파일이 읽힘.
4_instructions_portability3

npx hyperframes CLI와 형제 스킬(/hyperframes-cli, /media-use, /registry)에 의존합니다. 참조하는 파일 두 개(SPEC.md, REVIEW.md)는 배포되는 것이 아니라 에이전트가 만드는 것입니다. 네트워크가 없으면 루프를 실행할 수 없습니다.

5_efficiency2

토큰 1.95배(실행당 249k 대 128k), 시간 1.35배(208초 대 154초).

6_safety_hygiene3

텍스트와 스크립트 검토: .env/process.env 문서 관련 적중만 있었고, 사용자 본인의 키가 필요한 선택적 Gemini 호출이 하나 있습니다. 다만 CLI를 런타임에 npx로 가져오며 비활성화하지 않으면 텔레메트리를 보내고, 에이전트가 SPEC/REVIEW/README 파일을 추가로 남겼습니다.

이 테스트의 한계

  • 샌드박스에서 CLI 루프(check, snapshot, preview, render)를 쓸 수 없었으므로 스킬의 지침만 채점했습니다. 스킬 자체의 전제는 CLI가 루프를 닫아 준다는 것입니다.
  • 작업 세 가지: 제품 티저, 막대 3개 차트, 세로 자막 숏폼이며 모두 코드로 그렸습니다. 푸티지, 오디오, 지도, 레지스트리 블록, HeyGen 기반 미디어 기능은 테스트하지 않았습니다.
  • Linux 머신에서 드래프트 품질로 렌더링했고, 모션 검사는 조잡한 프레임 차이 임계값이며 같은 차트 작업이 모든 군에서 점수를 잃습니다.
  • 구조 수치(서브 컴포지션, clip 요소)는 소스 파일을 읽어 센 것으로 0〜30점에는 포함되지 않습니다.
  • 라이선스는 Apache-2.0이지만, 스킬이 의존하는 CLI는 별도의 npm 패키지로 우리가 감사하거나 테스트 컴퓨터에서 실행하지 않았습니다. 이 CLI는 비활성화하지 않으면 사용 텔레메트리를 보냅니다.
  • 작업·군당 n = 2: 약 1점 미만의 차이는 노이즈입니다.
  • 규칙 기반 채점은 검사가 볼 수 있는 것만 측정합니다. 취향이나 결과가 최선인지는 판단할 수 없습니다.

보안

security.md를 참조하세요. 스캔: CRITICAL 27 / HIGH 26 / MEDIUM 88. 판정: 실행해도 안전(네트워크 비활성 샌드박스). 깨끗한 스캔 결과가 스킬의 안전성을 증명하지는 않습니다.

결론

이 샌드박스에서 일회성 코드 제작 영상을 만들 때 스킬은 영상을 더 좋게 만들지 못했고 토큰은 약 두 배로 들었습니다. 계약을 한 문장으로 준 것이 같은 역할을 했습니다. 스킬의 가치는 나중에 HyperFrames Studio에서 계속 편집할 사람을 위한 프로젝트 구조(서브 컴포지션마다 장면, 표시된 clip)와 우리가 실행할 수 없었던 CLI 루프에 있습니다. HyperFrames를 정기적으로 쓴다면 설치하고, 빠르게 버릴 렌더링에는 건너뛰세요.

트랜스크립트

실행 로그: hyperframes (Codex CLI, network off, per-run temp HOME/TMPDIR, one row per graded run.)
열: 작업, 그룹-회차, 점수(0-5), 토큰, 초, 통과한 검사, 에이전트가 연 스킬 파일.

t1-teaser control-1: 점수 5.0, 토큰 158742, 초 258.0, 검사 5/5, 연 파일 없음
t1-teaser control-2: 점수 5.0, 토큰 122491, 초 163.4, 검사 5/5, 연 파일 없음
t1-teaser oneliner-1: 점수 5.0, 토큰 194827, 초 274.5, 검사 5/5, 연 파일 없음
t1-teaser oneliner-2: 점수 5.0, 토큰 151350, 초 215.4, 검사 5/5, 연 파일 없음
t1-teaser treatment-1: 점수 4.94, 토큰 359882, 초 360.9, 검사 5/5, 연 파일 hyperframes
t1-teaser treatment-2: 점수 5.0, 토큰 370088, 초 251.3, 검사 5/5, 연 파일 hyperframes
t2-chart control-1: 점수 4.73, 토큰 159545, 초 126.0, 검사 4/5, 연 파일 없음
t2-chart control-2: 점수 4.69, 토큰 91764, 초 107.4, 검사 4/5, 연 파일 없음
t2-chart oneliner-1: 점수 4.74, 토큰 118117, 초 146.0, 검사 4/5, 연 파일 없음

18회 실행, 아티팩트 21개

샘플 출력

SOTA · With the skill: compositions/arrival.html (t1-teaser, run 1, Codex)

<template> <style>*{box-sizing:border-box}#root{position:absolute;inset:0;font-family:Arial,Helvetica,sans-serif;color:#173E32}.stage,.artboard{position:absolute;inset:0;width:1920px;height:1080px;overflow:hidden}.artboard{background:#F5F0DF}h1,h2,p{margin:0}.eyebrow{font-size:24px;font-weight:700;letter-spacing:4px;text-transform:uppercase}.rule{height:2px;background:currentColor;opacity:.3}.pouch{position:absolute;width:470px;height:650px}.pouch svg{width:100%;height:100%}.wipe{position:absolute;z-index:20}.serial{position:absolute;left:192px;top:930px;font-size:22px;letter-spacing:3px}.wordmark{font-weight:900;letter-spacing:-8px}.chip{position:absolute;width:400px;height:472px}.chip svg{width:100%;height:100%} </style> <div id="root" data-composition-id="arrival" data-width="1920" data-height="1080" data-duration="5"> <div id="arrival-stage" class="clip stage" data-start="0" data-duration="5" data-track-index="0" data-track-kind="graphics"><div class="artboard"> <svg id="arrival-rings" width="1920" height="1080" style="position:absolute" aria-hidden="true"><g fill="none" stroke="#173E32" stroke-width="2" opacity=".16"><ellipse cx="1450" cy="530" rx="335" ry="335"/><ellipse cx="1450" cy="530" rx="445" ry="445"/><ellipse cx="1450" cy="530" rx="560" ry="560"/></g></svg> <div id="arrival-kicker" class="eyebrow" style="position:absolute;left:192px;top:202px">Meet your monthly ocean fix</div> <div style="position:absolute;left:192px;top:299px;overflow:hidden;width:1000px;height:220px"><h1 id="arrival-title" class="wordmark" data-var-text="brand" style="font-size:192px;line-height:1.1">Tidepool</h1></div> <p id="arrival-copy" data-var-text="tagline" style="position:absolute;left:194px;top:555px;width:820px;font-size:48px;line-height:1.25;letter-spacing:-1px">Crisp seaweed snacks, delivered monthly</p> <div id="arrival-rule" class="rule" style="position:absolute;left:194px;top:750px;width:710px"></div> <p id="arrival-note" style="position:absolute;left:194px;top:785px;font-size:24px;letter-spacing:2px">FROM THE SEA. TO YOUR SNACK DRAWER.</p> <div id="arrival-pouch" class="pouch" style="left:1190px;top:201px"><svg viewBox="0 0 470 650" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Illustrated Tidepool seaweed snack pouch"><defs><linearGradient id="a-foil" x1="0" x2="1"><stop stop-color="#BACA99"/><stop offset=".12" stop-color="#E3E8BC"/><stop offset=".7" stop-color="#D7DFAE"/><stop offset="1" stop-color="#AABA8C"/></linearGradient><pattern id="a-seal" width="8" height="8" patternUnits="userSpaceOnUse"><path d="M0 0V8" stroke="#173E32" opacity=".2" stroke-width="2"/></pattern></defs><path d="M40 15Q235 0 430 15L420 68Q436 350 445 605Q235 640 25 605L48 68Z" fill="url(#a-foil)" stroke="#173E32" stroke-width="3"/><path d="M40 15Q235 0 430 15L425 50H44Z" fill="url(#a-seal)"/><path d="M30 580Q235 600 441 580L445 605Q235 640 25 605Z" fill="url(#a-seal)"/><path d="M48 68H420" stroke="#173E32" stroke-width="3" opacity=".4"/><path d="M64 82L47 565M405 80L423 564" stroke="#FFFBE2" stroke-width="4" opacity=".6"/><text x="235" y="157" text-anchor="middle" fill="#173E32" font-family="Arial, sans-serif" font-size="71" font-weight="900" letter-spacin [... excerpt: first 3200 of 5490 characters]

Pro 보기