Lock a picture edit to a music edit: scene boundaries on downbeats and drops, plus irregular camera-punch hits from bass re-entries and vocal hooks (<stemhits.json, schema music-hits/1) with a…

MITAuto-check passedMedia & Creative

Install Beat Sync Video

skills CLI
$ npx skills add BlackBeltTechnology/pi-agent-dashboard --skill beat-sync-video -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install BlackBeltTechnology/pi-agent-dashboard beat-sync-video --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/BlackBeltTechnology/pi-agent-dashboard.git skills-src && mkdir -p .claude/skills && cp -r skills-src/packages/music-production/.pi/skills/beat-sync-video .claude/skills/beat-sync-video && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
beat-sync-video
GitHub stars
315
Token cost
~1k tokens
SKILL.md length
471 words
Files
2 (incl. scripts)
Skills in repo
70
Repo updated
First seen
Licence
MIT

At a glance

Lock a picture edit to a music edit: scene boundaries on downbeats and drops, plus irregular camera-punch hits from bass re-entries and vocal hooks (<stemhits.json, schema music-hits/1) with a…

  • Works in 5 steps: Lock the scene grid → Pick the hits → Punch recipe → …
  • Tasks that involve Motion graphics
  • SKILL.md covers 1. Lock the scene grid, 2. Pick the hits, 3. Punch recipe and 4. HyperFrames adapter, plus 1 more section
  • Runs Python scripts from its folder; calls python

What it does

Beat Sync Video is an agent skill from BlackBeltTechnology/pi-agent-dashboard. Lock a picture edit to a music edit: scene boundaries on downbeats and drops, plus irregular camera-punch hits from bass re-entries and vocal hooks (<stemhits.json, schema music-hits/1) with a HyperFrames adapter recipe. Use on "sync the video to the beat", "add camera punches on the drops", "cut on the music", "make the edit hit the drop".

Its SKILL.md is about 1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/pick_hits.py`).

It sits in Media & Creative, covering Motion graphics. It works with HeyGen. The repository describes itself as: Real-time web dashboard for pi coding-agent sessions. Multi-session view, live chat mirroring, integrated terminal, diff viewer, pi-flows execution, and mobile-first remote… The licence is MIT.

When your agent uses it

  • Tasks that involve Motion graphics

Example prompts

  • “sync the video to the beat”
  • “add camera punches on the drops”
  • “cut on the music”
  • “/beat-sync-video”

Requirements

  • Python 3

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Lock the scene grid
  2. Pick the hits
  3. Punch recipe
  4. HyperFrames adapter
  5. Verification

What it can do on your machine

Read from SKILL.md and the folder at commit 7a2d171. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Beat Sync Video loads about 1k tokens when it runs. Until then it costs about 90 tokens; SKILL.md has 471 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~90
When it runs · the whole SKILL.md, loaded when a task matches
~1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from BlackBeltTechnology/pi-agent-dashboard at commit 7a2d171, republished under its MIT licence (© BlackBeltTechnology). 471 words, ~1,009 tokens.

Download SKILL.mdSave it as .claude/skills/beat-sync-video/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
beat-sync-video
description
Lock a picture edit to a music edit: scene boundaries on downbeats and drops, plus irregular camera-punch hits from bass re-entries and vocal hooks (<stem>_hits.json, schema music-hits/1) with a HyperFrames adapter recipe. Use on "sync the video to the beat", "add camera punches on the drops", "cut on the music", "make the edit hit the drop".

beat-sync-video

Input: an approved music-edit/1 from music-edit-to-length. Output: <stem>_hits.json and a picture edit whose scenes sit on the music grid. Scripts run in the quick-tier venv (.venv-music); PKG=<this skill dir>/../../...

1. Lock the scene grid

  • The composition's root duration = music duration (duration of _edit.json).
  • Scene starts come from downbeats_video — every scene boundary is a downbeat.
  • Put a scene boundary on each confirmed drop (the drop-aligned boundary): the new scene starts exactly on the drop's video time.
  • To land that boundary, compress or stretch the scene before the drop (trim or speed-ramp its shots, drop a shot, or hold the last one) so that it ends exactly on the drop downbeat. Never shift the drop to fit the picture.

2. Pick the hits

bash
.venv-music/bin/python "$PKG/.pi/skills/beat-sync-video/scripts/pick_hits.py" music/track_edit90_edit.json \
    [--min-gap 1.5] [--hook-db -30] [--density 7]
  • Structural hits: downbeats with the largest 30–150 Hz jump on the edited audio. One within ±1 downbeat of a confirmed drop (confidence ≥ 0.5) becomes big, snapped to the drop; the rest are mid.
  • Hook hits (needs a vocals stem from the deep tier): bars where the vocals bar-RMS crosses --hook-db from below. Without stems the script says hook detection was skipped.
  • Spacing is irregular by construction: a minimum gap (bars), about one hit per --density seconds, and a mechanical every-N-bars grid is thinned until ≤ 70 % of intervals are identical.
  • Hand-placed hits: add {"t": …, "tier": "big", "source": "manual", "why": "…"} to _hits.json. Manual hits are never thinned and survive every re-run.

music-hits/1: schema, edit (relative path), hits[] {t, tier: big|mid, source: structural|hook|manual, why} sorted by video time, recipe {big, mid}.

3. Punch recipe

TierScaleyxRotationSettleEasing
big1.12−48 px±36 px0.8°0.6 sexpo.out
mid1.07−28 px±18 px0.4°0.45 sexpo.out

Read the values from recipe{} in _hits.json — never duplicate the constants in a generator. Alternate the horizontal jolt direction per hit (+x, −x, +x …).

Show full SKILL.md (181 more words)Show less

4. HyperFrames adapter

  • Wrap each scene's content in a .cam wrapper INSIDE each sub-composition (<div class="cam" id="s6-cam">…</div> in compositions/s6.html). Root-level transforms do not reach sub-composition content, so a punch on the root host does nothing.
  • One seek-safe tween per hit, from the recipe values back to identity, at the scene-local time hit.t − scene.start:
    js
    tl.fromTo("#s6-cam", {scale:1.12, y:-48, x:36, rotation:0.8},
              {scale:1, y:0, x:0, rotation:0, duration:0.6, ease:"expo.out", immediateRender:false}, 0.000);
    immediateRender:false keeps earlier frames untouched when HyperFrames seeks.
  • Put data-layout-allow-overflow on zoomed shots so the scaled content is not clipped by the layout checker.
  • Generate the adapter code from _hits.json; never hand-edit generated HTML.

5. Verification

  • Snapshot pair per tier: snapshot the hit frame and a settled frame (t + settle + 0.1 s), measure the scale and vertical offset between them (they must match the recipe within a few px).
  • Edge-bleed check: at peak displacement no frame edge may show the background — inspect all four edges of the hit snapshot; raise the shot's zoom or lower the punch if one does.
  • Watch the drop and one mid hit in the preview before the final render.

© BlackBeltTechnology, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (scripts) in packages/music-production/.pi/skills/beat-sync-video of BlackBeltTechnology/pi-agent-dashboard.

  • SKILL.md
  • scripts/pick_hits.py

Open the folder on GitHubat commit 7a2d171

Compare with similar skills

Beat Sync Video next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Beat Sync Video compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Beat Sync Video this skillBlackBeltTechnology/pi-agent-dashboard315—~1kAutomated safety check: PassMIT
HyperFrames Animationheygen-com/hyperframes60k3 repos~2.1kAutomated safety check: PassApache-2.0
Faceless Explainer Videoheygen-com/hyperframes60k3 repos~7.7kAutomated safety check: NotesApache-2.0
Figma to HyperFramesheygen-com/hyperframes60k3 repos~4.5kAutomated safety check: NotesApache-2.0
HyperFrames Video Entry Pointheygen-com/hyperframes60k3 repos~5.2kAutomated safety check: PassApache-2.0
Media Useedenfunf/reelmimic1.9k1 repos~2kAutomated safety check: PassMIT

Similar skills

  • HyperFrames Animation

    heygen-com/hyperframes

    Collects motion rules, scene blueprints, transitions and runtime adapters for HyperFrames video compositions, with GSAP as the default animation runtime.

    60k GitHub starsUsed in 3 repos~2.1k tokens
    Media & CreativeAuto-check passed
  • Faceless Explainer Video

    heygen-com/hyperframes

    Turns an article, notes or a topic brief into an explainer video whose visuals are invented per scene, built frame by frame in HyperFrames with no footage.

    60k GitHub starsUsed in 3 repos~7.7k tokens
    Media & CreativeAuto-check: notes
  • Figma to HyperFrames

    heygen-com/hyperframes

    Imports Figma assets, brand tokens, components and motion into a HyperFrames video composition, using the Figma REST API with a connector or native export for shaders.

    60k GitHub starsUsed in 3 repos~4.5k tokens
    Media & CreativeAuto-check: notes
  • HyperFrames Video Entry Point

    heygen-com/hyperframes

    Entry point for making, editing and rendering videos from HTML compositions with HyperFrames, routing each request to the right workflow.

    60k GitHub starsUsed in 3 repos~5.2k tokens
    Media & CreativeAuto-check passed
  • Media Use

    edenfunf/reelmimic

    Agent Media OS, the single skill for every media need in a HyperFrames project.

    1.9k GitHub starsUsed in 1 repo~2k tokens
    Media & CreativeAuto-check passed
  • Hyperframes

    boraoztunc/skills

    Create video compositions, animations, title cards, overlays, captions, voiceovers, audio-reactive visuals, and scene transitions in HyperFrames HTML.

    398 GitHub starsUsed in 9 repos~7.6k tokens
    Media & CreativeAuto-check passed

More from BlackBeltTechnology/pi-agent-dashboard

All 70 skills in this repo
  • Browser

    BlackBeltTechnology/pi-agent-dashboard

    Browser automation via the agent-browser CLI. An agent skill from BlackBeltTechnology/pi-agent-dashboard.

    315 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • CI Troubleshoot

    BlackBeltTechnology/pi-agent-dashboard

    Diagnose failed GitHub Actions runs for pi-agent-dashboard: the 11-file workflow taxonomy, affected-test selection, the release pipeline, known failure modes, and how to read gh run logs and…

    315 GitHub stars~3.5k tokensUpdated today
    Auto-check passed
  • Debug Dashboard

    BlackBeltTechnology/pi-agent-dashboard

    Diagnose problems in the running pi-agent-dashboard system: server.log, /api/health, bridge WebSocket connectivity, vitest triage, known-issue FAQ entries.

    315 GitHub stars~1.6k tokensUpdated today
    Auto-check passed
  • Implement

    BlackBeltTechnology/pi-agent-dashboard

    Disciplined implementation in pi-agent-dashboard: the rebuild matrix (extension→reload, server→restart, client→build+restart, openspec-apply→full rebuild) plus the project's code discipline rules.

    315 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Pi Dashboard

    BlackBeltTechnology/pi-agent-dashboard

    Monitor and control the pi-dashboard server. An agent skill from BlackBeltTechnology/pi-agent-dashboard.

    315 GitHub stars~2.2k tokensUpdated today
    Auto-check passed
  • Session To Guideline

    BlackBeltTechnology/pi-agent-dashboard

    Turn a pi session into a Markdown "how-we-did-it" collaboration guideline: reads the session's JSONL transcript and synthesizes a reusable playbook of which prompts worked, what had to be steered…

    315 GitHub stars~3.2k tokensUpdated today
    Auto-check passed

Works with

Questions about Beat Sync Video

What does Beat Sync Video do?

Lock a picture edit to a music edit: scene boundaries on downbeats and drops, plus irregular camera-punch hits from bass re-entries and vocal hooks (<stemhits.json, schema music-hits/1) with a…. Beat Sync Video is an agent skill from BlackBeltTechnology/pi-agent-dashboard.json, schema music-hits/1) with a HyperFrames adapter recipe.

When should I use Beat Sync Video?

Beat Sync Video fits situations like: tasks that involve Motion graphics.

How do I install Beat Sync Video in Claude Code?

Run `npx skills add BlackBeltTechnology/pi-agent-dashboard --skill beat-sync-video -a claude-code`. Or copy the skill folder (packages/music-production/.pi/skills/beat-sync-video in BlackBeltTechnology/pi-agent-dashboard) into .claude/skills/beat-sync-video in your project. Claude Code loads it when a task matches its description.

How do I install Beat Sync Video in Codex?

Run `npx skills add BlackBeltTechnology/pi-agent-dashboard --skill beat-sync-video -a codex`. Or copy the skill folder (packages/music-production/.pi/skills/beat-sync-video in BlackBeltTechnology/pi-agent-dashboard) into .agents/skills/beat-sync-video in your project. Codex loads it when a task matches its description.

Can I use Beat Sync Video in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add BlackBeltTechnology/pi-agent-dashboard --skill beat-sync-video -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/beat-sync-video, .gemini/skills/beat-sync-video, .github/skills/beat-sync-video and .opencode/skills/beat-sync-video in your project.

What does Beat Sync Video need to run?

Going by SKILL.md and its folder, Beat Sync Video needs Python for the scripts in its folder and the command-line tools its instructions call (python). Our summary lists: Python 3.

Does Beat Sync Video access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Beat Sync Video safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Beat Sync Video use?

Beat Sync Video is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Beat Sync Video use?

About 1k tokens (SKILL.md is roughly 4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Beat Sync Video?

Skills that share tags, products or a category with Beat Sync Video: HyperFrames Animation (heygen-com/hyperframes, 60k stars), Faceless Explainer Video (heygen-com/hyperframes, 60k stars), Figma to HyperFrames (heygen-com/hyperframes, 60k stars) and HyperFrames Video Entry Point (heygen-com/hyperframes, 60k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Beat Sync Video?

BlackBeltTechnology (a GitHub organization) maintains it in BlackBeltTechnology/pi-agent-dashboard, which has 315 GitHub stars. The repository holds 70 skills in this directory. The repository was last updated on October 10, 2026.

Source: BlackBeltTechnology/pi-agent-dashboard on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.