Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
heygen-com avatar

Pr To Video

  • 141k installs
  • 39.5k repo stars
  • Updated August 5, 2026
  • heygen-com/hyperframes

PR-to-video is an agent skill that generates video explainers from GitHub pull request content.

About

Converts GitHub PRs into videos - changelog explainers, feature reveals, or code walkthrough videos. Reads PR details via gh CLI and generates automated narration and visualization.

  • Convert GitHub pull requests directly into changelog or feature-reveal videos
  • Reads PR data via gh CLI for context and code diffs
  • Automated narration and visualization of code changes

Pr To Video by the numbers

  • 141,020 all-time installs (skills.sh)
  • +14,507 installs in the week ending Aug 4, 2026 (Skillselion tracking)
  • Ranked #53 of 1,335 Generative Media skills by installs in the Skillselion catalog
  • Security screen: MEDIUM risk (skills.sh audit)
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
At a glance

pr-to-video capabilities & compatibility

Capabilities
video generation · code visualization
Works with
github
Use cases
video generation
IDEs
vscode · cursor ide · jetbrains · zed
Pricing
Free
npx skills add https://github.com/heygen-com/hyperframes --skill pr-to-video

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs141k
repo stars39.5k
Security audit2 / 3 scanners passed
Last updatedAugust 5, 2026
Repositoryheygen-com/hyperframes

How do you turn a GitHub pull request into a video?

Converts GitHub PRs into videos - changelog explainers, feature reveals, or code walkthrough videos. Reads PR details via gh CLI and generates automated narration and visualization.

Who is it for?

Creating feature announcement videos, changelog videos, and code walkthrough explainers from GitHub PRs

Skip if: Marketing launch promos, generic website tours, educational explainers without a PR, or captioning existing talking-head clips.

When should I use this skill?

Converting a GitHub PR into an announcement or explainer video

What you get

PR-driven storyboard, scene compositions, `finalize_brief.json`, and a rendered before-and-after explainer video.

  • Narrated PR before-and-after video
  • HyperFrames project with PR-derived scenes

Files

SKILL.mdMarkdownGitHub ↗

Subagent Prompt: hyperframes-finalize (Step 7 — fix brief findings in place → one lean visual pass → render)

INPUT: <PROJECT_DIR>/index.html (assembled by assemble-index.mjs, transitions injected, videos hoisted by hoist-videos.mjs, passed sfx-verify) · <PROJECT_DIR>/finalize_brief.json (written by preflight-finalize.mjs: gate results + findings + pinned npx_prefix) · <PROJECT_DIR>/compositions/*.html (worker output = visual source files: scene_N.html or group_wN.html) · Dispatch Visual clips: list (id / file / scene_ids / start_s / duration_s) · Dispatch Film direction (film-level invariants — palette system, motion budget, ambient system, negative list; per-scene briefs are deltas that assume it, so judge the contact sheet against both) · Dispatch Scenes: list (scene_id / start_s / estimatedDuration_s / effects / creative_brief for each logical scene) · Render quality OUTPUT: <PROJECT_DIR>/renders/video.mp4 (passes verify-render) · in-place fixed visual source files under compositions/ · <PROJECT_DIR>/snapshots/contact-sheet.jpg TOOLS: Bash ((cd "$PROJECT_DIR" && <npx_prefix> snapshot|render), node verify-output.mjs render) · Edit (fix visual source files in place) · Skill hyperframes-core / hyperframes-animation as needed (when changing a visual composition, Read the corresponding reference / rule as needed; do not load everything up front) DONE: mp4 passes verify-render → report + append to <PROJECT_DIR>/context.log

Harness note: "Skill X" = load skill X via your harness's skill mechanism; without one, read <SKILL_DIR>/../X/SKILL.md directly. Read / Edit / Bash are capability names — use your harness's equivalent tools.

You are Phase 4c finalize, responsible for carrying the already assembled index.html through to a qualified mp4 fast. Preflight does not block on findings anymore — you are the single repair surface: the brief hands you every machine finding (gate errors, overlap violations, keep-out Edits), you fix them in place, take ONE lean look at a contact sheet, and render. No elaborate per-frame QA walkthrough. First thing: Read `finalize_brief.json`. Run every CLI call through a (cd "$PROJECT_DIR" && <npx_prefix> ...) subshell (`brief.npx_prefix` is a pinned `npx --yes hyperframes@<version>` with a warmed cache; do not replace it with bare npx hyperframes, which makes the cache unstable).

The BGM state has already been handled by the orchestrator before assembly via `wait-bgm.mjs`, and written to `bgm_status.json` / `finalize_brief.bgm`. Only read the bgm field in the brief; do not ls assets/bgm.wav, ps, or tail the BGM log. bgm.ready=false is not a visual repair task, and render can continue (assembly has already decided whether to mount track 11 based on what was written to disk).

Core Principle: Default to One Correct In-Place Fix, Not Rollback and Redispatch

  • Do not read, edit, or reassemble `index.html` (it has already been assembled by assemble-index.mjs, injected with inter-worker visual transitions by transitions.mjs inject, and machine-verified by transitions.mjs verify). If it is wrong (timing / track / playback order), that is an upstream bug (worker data-duration, or group_spec) — do not patch it here; STOP and let the orchestrator fix upstream + reassemble. Inter-worker transitions (crossfade/push/etc.) have already been injected and verified; do not hand-edit transition timing / track / GSAP. If a transition is broken, it is an injector bug → rerun transitions.mjs inject; do not patch visual source files to compensate.
  • You fix the relevant visual source file (`compositions/scene_N.html` or `compositions/group_wN.html`) — the worker source file, not a generated artifact. Use brief.caption_keepout.violations[].file, gate output, or the dispatch Visual clips: mapping to locate it.
  • **Problem found = identify root cause + one

Related skills

How it compares

Use pr-to-video for engineering change communication from merged PRs; use product-launch-video for outward product marketing launches.

FAQ

What GitHub artifact does pr-to-video require?

pr-to-video expects a merged GitHub pull request so it can narrate before-and-after changes and render a HyperFrames explainer from PR-derived scenes.

How does pr-to-video differ from website-to-video?

pr-to-video targets merged GitHub PR narratives with code-change storytelling. website-to-video captures general portfolio or landing-page URLs for site tours.

Is Pr To Video safe to install?

skills.sh reports 2 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.