website-to-video

作者: heygen-com

捕获一个通用网站/URL,并将其转化为HyperFrames视频(网站导览、展示或基于网站自身视觉素材的社交短片)。使用无头Chrome截图+品牌素材。适用于通用意图——作品集/博客/落地页展示或基于网站的社交短片。不适用于:产品/SaaS发布或推广(即使有URL,请使用/product-launch-video);无网站的主题讲解(请使用/faceless-explainer);GitHub PR(请使用/pr-to-video);为现有视频添加字幕(请使用...

npx skills add https://github.com/heygen-com/hyperframes --skill website-to-video

Website to HyperFrames

Capture a website, then produce a professional video from it.

Confirm the route before Step 0. This skill makes a video of / from a general site. If the user is really marketing / launching / promoting a product (even from this URL, even "promo for our site") → /product-launch-video. A topic explainer with no site/faceless-explainer; a GitHub PR/pr-to-video; re-cutting / recoloring / reordering an existing video file → out of scope. Routed here on a vague "make a video", or unsure launch-vs-general-site? Read /hyperframes first (full routing table + § What HyperFrames cannot do).

Users say things like:

  • "Turn this website into a 15-second social clip for Instagram"
  • "Make a 30-second site tour / showcase from https://..."
  • "Capture our homepage and build a video from its own visuals"

The workflow has 7 steps. Each produces an artifact that gates the next. By default it's collaborative — gates marked 💬 stop and ask the user. If the user signals autonomous mode ("decide for me", "surprise me"), 💬 user-preference gates are skipped; see step-2-brief.md for how that propagates.

Autonomous mode is NOT "skip all gates." Auto mode covers user-preference questions (TTS provider, voice, color emphasis, beat count, music yes/no, captions yes/no — where the agent decides on the user's behalf). It does NOT cover quality-verification gates. The following remain non-skippable in auto mode:

  • Asset Audit (Step 3) — viewing contact sheets and justifying USE/SKIP for each asset
  • Per-beat HTML read (Step 5) — structured evidence block per beat
  • DoD checklist (Step 6) — including animation-map, per-warning WCAG verification, audio/motion playback
  • Honest disclosure section (Step 6) — "What I did NOT verify" must appear in your final summary

If you find yourself reasoning "auto mode says bias toward action, so I'll skip X" — and X is a verification gate, not a preference question — that reasoning is wrong. Bias toward action applies to deciding what to build, not to deciding whether to verify.


Step 0: Capture & Understand the Brand

Read: references/step-0-capture.md

Capture the site, then read the extracted data to understand the brand and product — what it does, who it's for, what voice it speaks in, what mood it lives in. The captured assets are a brand toolkit for later, not the building blocks the video is made from.

Gate: Site summary printed — strategy-first (what the product does, who it's for, brand voice) before the asset / color / font inventory.


Step 1: Brand Identity

Read: references/step-1-design.md

Write DESIGN.md — a brand cheat sheet covering the visual identity: colors, typography, component styles, layout principles. Use design-styles.json for exact computed values.

Speed option: For fast-pacing videos (billboard-per-beat), DESIGN.md can be a 50-line summary of colors + fonts + do's/don'ts — not a 300-line document. The sub-agent prompt in Step 5 pastes brand values directly, so DESIGN.md depth only matters for complex compositions.

Gate: DESIGN.md exists (any length) with at minimum: color palette, font choices, and do's/don'ts.


Step 2: Strategy & Messaging

Read: references/step-2-brief.md, references/capabilities.md (scan the Table of Contents — deep-dive sections only as needed)

Align with the user on what the video must communicate before talking visuals or assets. Parse the user's prompt — they probably already gave you the video type and style. Ask only what's missing: the ONE thing this video must say, the narrative arc, and the audience.

Gate: Video type, duration, format, and — critically — the message and narrative arc are locked. Without those, Step 3 can't write a concept-first storyboard.


Step 3: Storyboard + Script 💬

Read: references/step-3-storyboard.md

Write the storyboard concept-first: message → narrative arc → beats that serve the arc → techniques per beat → brand accents pass at the end. Then write the narration script to match. Present both to the user with a beat-by-beat summary. Iterate until they approve.

Gate: STORYBOARD.md + SCRIPT.md exist AND the user has approved the plan.


Step 4: VO, Timing + Captions 💬

Read: references/step-4-vo.md

If Step 2 said no narration — ask about background music, then skip to Step 5. Otherwise: ask the user which TTS provider (HeyGen TTS, ElevenLabs, or Kokoro), generate audio, transcribe, map timestamps to beats. Then ask about captions.

Gate: Either (a) no narration was requested and storyboard has manual beat timings, or (b) narration.wav + transcript.json exist and beat timings updated with real durations.


Step 5: Build Compositions

Read: The hyperframes skill (load it — every rule matters) Read: references/step-5-build.md

Build index.html and compositions following the architecture and pacing chosen in the storyboard (Step 3). Sub-agents run hyperframes lint and hyperframes snapshot on each beat before reporting back.

Gate: Every compositions/beat-N.html has been read top-to-bottom by the main agent against DESIGN.md and STORYBOARD.md. The per-beat checklist lives in step-5-build.md.


Step 6: Validate & Deliver

Read: references/step-6-validate.md

Lint, validate, take snapshots scaled to video length (formula: max(beats × 3, ceil(duration_seconds / 2))), and review each one. Fix issues before delivering. Deliver the localhost Studio project URL — only render to MP4 on explicit user request. Surface that Studio URL only at handoff — it is the final, stable preview; the build-phase snapshots are headless, so do not pop a preview mid-build.

Deliver something you're proud of. Before handing off, ask yourself: would I post this on social media with my name on it? If not, fix what's wrong.

Gate: npx hyperframes lint and npx hyperframes validate pass with zero errors, and the final response includes the active Studio project URL.


Quick Reference

Video Types

Typical constraints by video type — use as a starting point, not a formula. Beat count should follow from the content and the narration, not from a target range.

TypeTypical durationDuration driverNarration
Social ad (IG/TikTok)10–15sPlatform limitOptional
Product demo30–60sScript lengthFull narration
Feature announcement15–30sFeature complexityFull narration
Brand reel20–45sMusic trackOptional, music focus
Launch teaser10–20sHook energyMinimal

Beat count is not in this table intentionally — it should come from the storyboard, not from "social ad = 3-4 beats." A social ad for a complex product might need 5 well-timed beats. A brand reel with one strong visual thesis might need 3.

Format

  • Landscape: 1920x1080 (default)
  • Portrait: 1080x1920 (Instagram Stories, TikTok)
  • Square: 1080x1080 (Instagram feed)

Reference Files

FileWhen to read
step-0-capture.mdStep 0 — capture, understand the brand and product, write strategy-first site summary
step-1-design.mdStep 1 — write DESIGN.md brand cheat sheet (5 sections, 250-350 lines; 50-line fast-path for billboard-style social ads)
step-2-brief.mdStep 2 — align on message, narrative arc, audience with user
capabilities.mdSteps 2 & 5 — full inventory of what HyperFrames can do (24 sections). Scan the TOC during the brief, deep-dive specific sections during build
step-3-storyboard.mdStep 3 — storyboard + script (combined) with user review gate
step-4-vo.mdStep 4 — TTS provider choice, generation, timing
step-5-build.mdStep 5 — build index.html + compositions
step-6-validate.mdStep 6 — lint, validate, snapshots (scaled to video length), preview
techniques.mdSteps 3 & 5 — 13 primitive animation techniques with code patterns (adapt, don't copy-paste)
html-in-canvas-patterns.mdStep 5 — complete code patterns for HTML-in-Canvas effects (lives in the hyperframes skill)

来自 heygen-com 的更多技能

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.
developmenttestingapi
hyperframes-animation
heygen-com
HyperFrames的所有动画知识——原子运动规则、多阶段场景蓝图、场景过渡、更广泛的动态设计技术,以及七种运行时适配器(默认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、语音/供应商选择、音乐情绪提示、字幕/副标题/歌词/卡拉OK/逐词样式。
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
对于任何制作、创建、生成、编辑、动画化或渲染视频、动画、动态图形、解说视频、标题卡、叠加层、带字幕视频、产品宣传片、网站视频、公关或更新日志视频、数据蒙太奇、动态海报或HyperFrames HTML合成的请求,请从此处开始。当用户希望HyperFrames创作或渲染完成的MP4/网络视频、选择工作流程,或在产品发布视频、无脸解说视频、网站转视频等之间路由时,请在其他视频或动画技能之前使用此功能。
creativevideomedia