hyperframes-cli

作成者: heygen-com

HyperFrames CLI dev loop — `npx hyperframes` for scaffolding (init), validation (lint, inspect), preview, render, and environment troubleshooting (doctor, browser, info, upgrade). Use when running any of these commands or troubleshooting the HyperFrames build/render environment. For asset preprocessing commands (`tts`, `transcribe`, `remove-background`), invoke the `hyperframes-media` skill instead.

npx skills add https://github.com/heygen-com/hyperframes --skill hyperframes-cli

HyperFrames CLI

Run commands as npx hyperframes ... unless project instructions provide a wrapper. Obey the wrapper when present. The CLI requires Node.js 22 or newer and FFmpeg.

Development loop

  1. Scaffold: npx hyperframes init <project> or capture a site. In non-TTY mode, pass --non-interactive --example=<name>.
  2. Author: write the composition using /hyperframes-core.
  3. Get fast feedback while editing: run npx hyperframes lint after the first HTML pass and after structural changes.
  4. Run the final gate: run npx hyperframes check; it reruns lint before opening the browser. Do not prepend a redundant standalone lint invocation. Add --snapshots for annotated overview frames and finding crops.
  5. Inspect sub-compositions: when index.html mounts data-composition-src, capture midpoint snapshots and inspect each mounted scene.
  6. Open the final Studio preview: run npx hyperframes preview, hand the timeline project URL to the user, and ask whether to revise or render.
  7. Render only after approval: use draft quality for iteration and high quality for delivery.
  8. Verify the output: confirm the file exists, is non-empty, and has a plausible duration.
# Fast iteration check; repeat while authoring as needed.
npx hyperframes lint

# Required final gate; includes lint.
npx hyperframes check
npx hyperframes preview
npx hyperframes render --quality high --output out.mp4
test -s out.mp4
ffprobe -v error -show_format out.mp4

check runs lint first, then uses one browser session and one seek pass to audit runtime errors, failed requests, layout, *.motion.json assertions, and WCAG contrast. Persistent findings gate the exit code; transient entrance or exit findings are informational. Use --strict to gate warnings. validate, inspect, and layout remain aliases for compatibility but must not appear in new instructions or scripts.

Two different preview surfaces

Do not confuse these states:

SurfaceWhen it may openPurpose
Storyboard boardBefore composition checks, only when storyboard: yesReview plan cards and wireframe sketches. Open ?view=storyboard#project/<name>.
Final composition previewAfter check passesReview the assembled timeline before render. Open #project/<name>.

The early board is not approval of the final video. Rendering always requires the final approval defined by hyperframes-core/references/review-loop.md.

Sub-composition smoke test

Static audits cannot catch every mount failure. When the project uses sub-compositions, capture at least one visible midpoint for each host slot:

npx hyperframes snapshot --at <t1>,<t2>,<t3>

Treat tiny unstyled content, canvas-sized icons, missing hero elements, or timeline-registration timeouts as render-blocking mount defects. See hyperframes-core/references/sub-compositions.md for the corresponding fixes.

Agent conventions

  • Prefer --json for agent and CI calls. Server-mode render, preview, and play do not provide ordinary JSON output; preview --selection --json and preview --context --json are query-mode exceptions.

  • doctor --json always exits zero. Gate on its payload:

    npx hyperframes doctor --json | jq -e '.ok' >/dev/null
    
  • Non-TTY mode is automatic. init requires --example there; use --non-interactive to force deterministic behavior on a TTY.

  • Use one HYPERFRAMES_RUN_ID for all commands in the same verification loop.

  • Use --strict, --strict-all, and --strict-variables when the corresponding warnings, variables, or CI conditions must gate the render.

  • JSON paths redact the home directory as $HOME; do not try to reverse the redaction.

  • When a hosted cloud project approaches or exceeds the 200 MB upload limit, use cloud render --dry-run --json and follow the .hyperframesignore investigation in references/cloud.md. Never ignore an asset merely because it is large.

  • Never render merely because checks pass. Pause at the final preview and wait for approval.

Studio-directed edits

When the user refers to “this element” or the current selection, query Studio instead of guessing:

npx hyperframes preview --context --json --context-fields selection

Use selection.target.hfId when available, otherwise its selector and source file. If the result reports no-selection, ask the user to click the element and rerun. Request only the context slices you need; use --context-detail full only for computed styles or editable text metadata. Full behavior and failure codes live in references/preview-render.md.

Render choices

NeedCommand
Fast local iterationnpx hyperframes render --quality draft
Final local deliverynpx hyperframes render --quality high --output out.mp4
Reproducible container rendernpx hyperframes render --docker --strict --output out.mp4
Local variable-driven batch rendernpx hyperframes render --batch rows.json --output "renders/{name}.mp4"
HeyGen-hosted zero-infrastructure rendernpx hyperframes cloud render
Self-managed distributed AWS rendernpx hyperframes lambda render <project> --width 1920 --height 1080 --wait
Self-managed distributed GCP rendernpx hyperframes cloudrun render <project> --width 1920 --height 1080 --wait

Skill attribution is automatic — the examples above need no --skill. A project scaffolded by a workflow (hyperframes init --skill=<workflow>) records its owning skill in hyperframes.json, and every later render inherits it on anonymous telemetry: re-renders, npm run render, and --batch alike. Pass --skill=<slug> explicitly only to stamp a project that was not created through a workflow (its first render then persists it).

Use cloud rendering when the user wants hosted rendering without local Chrome, FFmpeg, or AWS. Use Lambda only when AWS ownership is a requirement. Use Cloud Run only when GCP ownership is a requirement. Read the matching reference before running any cloud path.

After verifying a successful render, send one feedback report unless telemetry is disabled or the user opted out:

npx hyperframes feedback --rating <0-10> --comment "<specific result or friction>"

Keep clean-run feedback concise. For any bug or friction, capture a reproduction packet before submitting; do not send only a symptom summary. Include the rerunnable command (relative to the project directory — feedback is submitted to a public channel, so do not paste absolute paths, home-directory prefixes, or user/machine identifiers), expected versus actual behavior, exact error (also strip absolute paths from stack traces — keep basename + line, drop the leading directory), whether output completed/fell back/failed, workaround, and repro-project status. For a rating ≤ 7 that describes a visual defect (black frame, flicker, corrupt output, wrong frame, blank output, other visual anomaly), also include a COMPOSITION_STRUCTURE: block — a privacy-preserving structural anatomy (element census + attribute presence + timeline shape) so maintainers can pattern-match against known bug families without the composition ZIP. Agents auto-fill this via the composition-census helper; the human user does not fill it by hand. If the issue did not reproduce again, say so and still include the last failing command and logs. Use --file-issue only with consent: it publishes a minimal reproduction to a public URL. The required packet format and privacy warning live in references/preview-render.md.

Read the matching reference before running a command

The following references and owning skills are mandatory command contracts, not optional background reading. Before running a command in the table, read its matching row.

NeedReference
init, capture, skillsreferences/init-and-scaffold.md
lint, check, motion sidecars, snapshotreferences/lint-validate-inspect.md
compare, grade-compare, variable-driven render --batchreferences/compare-and-batch.md
beats for an existing project's Studio beat gridreferences/beats.md
preview, play, render, publish, Studio context, feedbackreferences/preview-render.md
doctor, browser managementreferences/doctor-browser.md
auth, HeyGen-hosted cloud rendering, and template variablesreferences/cloud.md
AWS Lambda deployment and renderingreferences/lambda.md
Google Cloud Run deployment and renderingreferences/cloudrun.md
info, upgrade, compositions, docs, benchmark, telemetry, media preprocessingreferences/upgrade-info-misc.md

For composition variables, also read /hyperframes-corereferences/variables-and-media.md. For hyperframes add and hyperframes catalog, use /hyperframes-registry. Before hyperframes present, read /slideshow; before hyperframes keyframes, read /hyperframes-keyframes. For TTS, transcription, captions, or background removal choices, use /media-use.

The specialized commands are deliberately documented by their owning workflows:

npx hyperframes present <project-dir> --port 3004 --no-open
npx hyperframes beats <project-dir> --json
npx hyperframes keyframes <project-dir> --json

present serves a navigable deck with presenter and audience synchronization. beats is the standalone Studio beat-grid utility defined in references/beats.md. keyframes surfaces seek-safe animation and motion-path diagnostics.

heygen-comのその他のスキル

hyperframes-animation
heygen-com
HyperFramesのアニメーション知識全般 — アトミックモーションルール、マルチフェーズシーンブループリント、シーン遷移、広範なモーションデザイン技法、および7つのランタイムアダプター(GSAPデフォルト、Lottie、Three.js、Anime.js、CSSキーフレーム、Web Animations API、TypeGPU)。あらゆるモーションやアニメーションタスクに使用:2~4のルールを選んで構成するか、ブループリントを読み込むか、ランタイム固有のAPI(例:GSAPイージング/Lottieプレイヤー/Three.jsミキサー)を参照。HyperFramesネイティブ:単一の一時停止タイムライン、シークセーフ、...
creativedevelopmentdesign
hyperframes-core
heygen-com
HyperFrames HTML構成契約。構成構造、データ属性、クリップ、トラック、サブ構成、変数、メディア再生、決定論的レンダリングルール、および最小限のレンダリング可能なプロジェクトの検証に使用します。
developmentmediacreative
hyperframes-media
heygen-com
HyperFramesコンポジション向けのアセット前処理 — マルチプロバイダーTTS(HeyGen / ElevenLabs / Kokoroローカル)、マルチプロバイダーBGM(Google Lyria / ローカルMusicGen)、Whisper文字起こし、背景除去、キャプション作成。npx hyperframes tts、bgm、transcribe、remove-background、voice/provider選択、music-moodプロンプト、captions / subtitles / lyrics / karaoke / per-word stylingに使用。
mediaaudiovideo
hyperframes-registry
heygen-com
HyperFrames構成にレジストリブロックとコンポーネントをインストールして配線します。hyperframes addの実行時、ブロックやコンポーネントのインストール時、インストールしたアイテムをindex.htmlに配線する時、またはhyperframes.jsonを操作する時に使用します。addコマンド、インストール場所、ブロックサブ構成の配線、コンポーネントスニペットのマージ、レジストリ検出、そして新しいブロックやコンポーネントを作成して上流に貢献する方法(アイデア→スキャフォールド→検証→PR)をカバーします。
developmentapicode-review
general-video
heygen-com
カスタムHyperFrames HTMLビデオ合成オーサリングにおいて、専門的なワークフローが適合しない場合のフォールバックとして使用します。長尺またはマルチシーンの作品、ブランド/サイズルリール、モンタージュ、タイトルカード、モーションポスター(任意の長さ)、スタティックループ、および任意の長さやフォーマットの自由形式の合成をカバーします。製品プロモーション(product-launch-video)、一般的なウェブサイトからビデオへのキャプチャ(website-to-video)、トピック解説(faceless-explainer)、GitHub PRビデオ(pr-to-video)、既存映像のキャプション付けなどには使用しません。
videocreativemedia
motion-graphics
heygen-com
ユーザーが短く、デザイン主導のモーショングラフィックを求める場合に使用します。モーションそのものがメッセージとなるもの:キネティックタイポグラフィ、統計や数字のカウントアップ、チャート/データビジュアライゼーションの演出、ロゴスティング、ブランドロックアップ、ローワーサード、コールアウト、ソーシャルオーバーレイ、アニメーション付き見出し/ツイート/ニュースアイテム、モーションポスター、または素早いページキャプチャのハイライト。通常10秒未満、最大約30秒で、ナレーションの流れやボイスオーバー、実写の被写体はありません。MP4または透明オーバーレイでレンダリング可能。長尺、複数シーン、ナレーション付き、ブランドリールなどの作品には使用しません。
creativevideodesign
hyperframes-read-first
heygen-com
動画、アニメーション、モーショングラフィック、解説動画、タイトルカード、オーバーレイ、字幕付き動画、商品プロモーション、ウェブサイト動画、PR・チェンジログ動画、データモンタージュ、モーションポスター、またはHyperFrames HTMLコンポジションの作成、生成、編集、アニメーション化、レンダリングを依頼する場合は、ここから始めてください。ユーザーがHyperFramesに完成したMP4/ウェブ動画の作成やレンダリング、ワークフローの選択、またはプロダクトローンチ動画、顔出しなし解説動画、ウェブサイトから動画への変換などのルーティングを希望する場合、他の動画・アニメーションスキルよりも先に使用してください。
creativevideomedia
hyperframes-creative
heygen-com
HyperFramesビデオの非アニメーション・クリエイティブディレクション。デザインスペック(frame.md / design.md)の処理、パレット、タイポグラフィ、ナレーション、ビートプランニング、オーディオリアクティブビジュアル、コンポジションパターン、ブランド/スタイルの決定に使用。アトミックモー
creativedesignvideo