Agent skill

Plotbeat Data Videos

by Unclecheng-li in Unclecheng-li/AI_Animation

Turns a local CSV or JSON file, or data fetched from an approved source, into an editable data-visualization video by adapting HyperFrames templates.

MITAuto-check passedMedia & Creative

Install Plotbeat Data Videos

skills CLI
$ npx skills add Unclecheng-li/AI_Animation --skill plotbeat -a claude-code

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

GitHub CLI
$ gh skill install Unclecheng-li/AI_Animation plotbeat --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/Unclecheng-li/AI_Animation.git skills-src && mkdir -p .claude/skills && cp -r skills-src/'skills/ui2v-motions/01_动效库/itelmn/single-line-story' .claude/skills/plotbeat && 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
plotbeat
GitHub stars
1.4k
Token cost
~2.6k tokens
SKILL.md length
1,193 words
Files
142
Skills in repo
12
Repo updated
First seen
Licence
MIT

At a glance

Turns a local CSV or JSON file, or data fetched from an approved source, into an editable data-visualization video by adapting HyperFrames templates.

  • Works in 4 steps: Resolve and read the installed… → If it is unavailable, stop and ask the… → Do not approximate the missing skill… → …
  • Turning a CSV of yearly figures into an animated line-chart video
  • SKILL.md covers Require HyperFrames, Preserve the product boundary, Acquire the dataset and Route the request, plus 3 more sections
  • Calls npx, node and npm

What it does

Plotbeat adapts native HyperFrames templates and selectable visual-style presets to build a chart video from your own numbers, such as a line-chart story or a multi-series ranking. The agent has to find and read the installed `hyperframes` skill before doing anything else. If it is missing, the agent stops and asks you to run `npx skills add heygen-com/hyperframes --all` instead of improvising.

Data arrives as a local `.csv` or `.json` file, or the agent fetches it during preparation from a source, URL or API you name. It is compiled into a frozen local `generated/data.js`, so nothing is downloaded while the video plays. Each scene uses one paused, seek-safe timeline, with no `requestAnimationFrame`, timers or random clocks. The bundled music stays a separate audio element that the GSAP timeline fades, and the bundled track covers presets up to 56 seconds. The output remains an editable HyperFrames HTML project, not a standalone renderer.

When your agent uses it

  • Turning a CSV of yearly figures into an animated line-chart video
  • Building a ranking animation across several data series
  • Making a data-driven motion graphic from the output of a public API
  • Creating a reusable data-video template inside a HyperFrames project

Example prompts

  • “Make a line-chart story video from ./data/sales-by-year.csv using the standard preset.”
  • “Pull the latest inflation figures from the official statistics site and animate them as a ranking video.”
  • “Add a new reusable multi-series template to my HyperFrames project.”

Requirements

  • The `hyperframes` AI skill, installed with `npx skills add heygen-com/hyperframes --all`
  • A local CSV or JSON file, or a data source you approve

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Resolve and read the installed hyperframes AI skill.
  2. If it is unavailable, stop and ask the user to install it with
  3. Do not approximate the missing skill from general knowledge, use Plotbeat as a standalone generator, or continue with only the HyperFrames…
  4. After the dependency is installed, resume through the hyperframes skill, then use Plotbeat for the data-video template workflow.

What it can do on your machine

Read from SKILL.md and the folder at commit d9c521f. 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

    Shell commands in SKILL.md call:

    • npx
    • node
    • npm

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

  • Network

    No URLs in SKILL.md. Its commands use npx and npm, which can reach the network depending on how they are called.

    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

Plotbeat Data Videos loads about 2.6k tokens when it runs. Until then it costs about 128 tokens; SKILL.md has 1,193 words of instructions outside code blocks.

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

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); files beside SKILL.md are not scanned.

SKILL.md

The full file from Unclecheng-li/AI_Animation at commit d9c521f, republished under its MIT licence (© Unclecheng-li). 1,193 words, ~2,607 tokens.

Download SKILL.mdSave it as .claude/skills/plotbeat/SKILL.md (or your agent's skills folder). This skill also uses 141 other files; get the full folder from GitHub.
name
plotbeat
description
Build deterministic, editable data-visualization videos from local CSV/JSON or data fetched from a user-approved URL, API, or public source by adapting native HyperFrames templates and selectable visual-style presets. Requires the HyperFrames AI skill. Use when a user wants a line-chart story, multi-series ranking, animated chart, data-driven motion graphic, or a new reusable data-video template in HyperFrames. This is a HyperFrames templating workflow, not a standalone video generator or renderer.

Plotbeat

Turn user-supplied data into a local HyperFrames composition. Start from a proven template, compile the data before playback, then use HyperFrames for timing, preview, validation, and rendering.

Require HyperFrames

Treat this as a fail-closed dependency gate. Before acquiring data, listing templates, scaffolding, editing, previewing, validating, or rendering:

  1. Resolve and read the installed hyperframes AI skill.

  2. If it is unavailable, stop and ask the user to install it with:

    bash
    npx skills add heygen-com/hyperframes --all
  3. Do not approximate the missing skill from general knowledge, use Plotbeat as a standalone generator, or continue with only the HyperFrames npm CLI.

  4. After the dependency is installed, resume through the hyperframes skill, then use Plotbeat for the data-video template workflow.

Preserve the product boundary

  • Treat HyperFrames as the composition and rendering engine.
  • Start through the main hyperframes skill and load its hyperframes-core, hyperframes-animation, and hyperframes-cli guidance as required.
  • Do not add a competing render loop, video encoder, scene scheduler, or standalone animation runtime.
  • Keep the output editable as an ordinary HyperFrames HTML project.
  • Use one paused, seek-safe timeline per scene. Derive visual state from timeline progress.
  • Keep the bundled music as a separate local <audio> element. Let HyperFrames own playback and use the registered GSAP timeline for volume fades; never call play(), pause(), or set currentTime yourself.
  • The bundled master covers the quick, standard, and deliberate presets (up to 56 seconds). For a longer exact duration, resolve or ingest a longer local BGM asset before previewing.
  • Compile CSV or JSON into a frozen local generated/data.js. Do not fetch live data during playback.
  • Do not use requestAnimationFrame, timers, D3 transitions, or nondeterministic randomness as playback clocks.

Acquire the dataset

  • Accept either a local .csv/.json file or a request to retrieve data from a named source, URL, public API, or authorized connector.
  • When retrieval is requested, fetch during preparation with the available connector, browser, API, or CLI. Do not make the user manually download a file when the agent can obtain it safely.
  • Prefer first-party and authoritative sources. Clarify the metric, entities or geography, date range, and frequency only when ambiguity would materially change the story.
  • Save the retrieved rows locally as CSV or JSON before scaffolding. Preserve the source URL or API name, query or filters, retrieval date, and material transformations; pass a concise citation through --source.
  • Never invent missing observations or silently join incompatible series. State any interpolation, aggregation, filtering, or carry-forward policy.
  • Fetch authenticated or private data only through access the user has authorized. Never expose credentials in the composition.

Route the request

List the packaged catalog, then choose the closest starting template:

bash
node {skill-dir}/scripts/scaffold.mjs --list
  • single-line-story: one time series in the supplied reference style: near-black canvas, neon trace and area glow, zero-anchored expanding Y domain, upper-right value/change/date readout, endpoint label, and a dimmed final lockup.
  • multi-line-rank: synchronized series in the supplied reference style: thin luminous paths, numbered endpoint badges, a live rank/multiplier/value rail, and a centered final ranking table.
  • bar-race: long-form multi-series data becomes ranked horizontal bars with continuous overtakes, a rescaling axis, a current-period readout, and absolute or leader-indexed variants.
  • stacked-area-story: long-form multi-series data becomes a contribution story with continuously revealed layers, a live total, and absolute or 100% stack variants.
  • scatter-journey: dated X/Y positions become connected entity trails or size-aware bubble trails with live coordinates.
  • animated-map: latitude/longitude rows become a pulsing location map or animated connection-flow story.
  • kpi-dashboard: metric rows become staged target cards or a radial performance board.
  • milestone-timeline: dated events become a continuous playhead timeline or chapter-card story.
  • New template: start from the nearest template, keep the same data compiler/runtime boundary, and follow references/template-authoring.md.

Read references/data-contract.md before mapping a new dataset. Read references/quality-gates.md before presenting or rendering. Read references/visual-styles.md before selecting or customizing the visual direction.

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

Build a composition

  1. Acquire the requested data or inspect the supplied file, then identify its columns, date grain, missing values, number of series, source, and desired unit.

  2. Obtain the visual style and pacing before scaffolding. If the user supplies JSON copied from the Plotbeat style builder, treat that as an explicit custom visual direction: validate its documented fields, choose the nearest preset only as the scaffold base, then apply the supplied tokens and composition choices in the copied project. Do not replace the supplied JSON with the base preset. If style or pacing is otherwise missing, ask one short grouped question: “Should the visual direction be dark or light, which preset character fits the story, and should it feel quick (~18s), standard (~30s), deliberate (~45s), or use an exact duration?” Offer the installed presets from --list-styles; map the answer to its --style <id> flag and pacing to --pace quick, --pace standard, --pace deliberate, or --duration <seconds>. When a user asks the agent to decide, choose from the data context using the style reference and state the choice.

  3. Normalize dates and numbers. Ask only when another choice changes the story materially; otherwise choose safe column defaults and state them.

  4. Scaffold a template:

    bash
    node {skill-dir}/scripts/scaffold.mjs \
      --template single-line-story \
      --input /absolute/path/to/data.csv \
      --output /absolute/path/to/composition \
      --date date --value value \
      --title "What if Revenue kept compounding?" \
      --accent-text "Revenue" --unit "USD" \
      --style paper-cut --pace quick

    For long-form multi-series data, add --series series and select multi-line-rank. For wide data such as date,North,South, pass --series-columns North,South instead.

    Select bar-race for ranking changes or stacked-area-story for contribution-to-total stories. Add --bar-mode leader-index to normalize the current leader to 100, or --stack-mode percent for a 100% stacked composition. Scatter, map, KPI, and milestone inputs use the documented contracts and the --scatter-mode, --map-mode, --kpi-mode, and --timeline-mode variant flags.

  5. Edit the copied index.html, frame.md, and metadata in the output project. Preserve local script paths and HyperFrames timing attributes.

  6. Run the compiler again after changing column mappings, story copy, or pacing:

    bash
    node scripts/prepare-data.mjs \
      --template single-line-story \
      --input data/input.csv \
      --output generated/data.js \
      --composition index.html \
      --date date --value value \
      --title "What if Conversion kept compounding?" \
      --accent-text "Conversion" --unit "%" \
      --style studio-blueprint --pace standard --duration 24 --path-style linear

    --duration overrides only the pace preset's length; the selected pace still supplies suitable opening, finale, and closing proportions unless explicit timing flags override them. Recompiling with a different --style changes the design system and default chart palette without changing the data, template, or timing.

  7. Validate from the composition directory:

    bash
    npm test
    npx hyperframes check --snapshots --samples 12
    npx hyperframes preview
  8. Inspect the closed first frame, multiple opening-transition frames, early growth, middle, rank-crossing/extreme, pre-finale, staggered finale, finale hold, and closed last frame. Confirm that each line grows continuously from the left without snapping to the right edge, the live date chip follows the endpoint, axes expand from zero for positive datasets, endpoint values match the compiled rows, rank rows glide rather than jump, the finale begins only after the full chart is visible, neither transition produces a one-frame flash, and the music fades cleanly at both ends without overpowering the chart. Obtain preview approval before npx hyperframes render.

Extend the template set

When the existing templates do not fit, add a new native HyperFrames template rather than branching into a new generator. Define its manifest, data shape, deterministic state model, example data, preview frames, and quality checks. Reuse assets/runtime/plotbeat-data.js for interpolation and formatting where practical.

Keep template-specific visual decisions in the composition and generic math in the runtime. A template is ready only when arbitrary forward and backward seeks produce the same frame and HyperFrames checks pass without unexplained suppressions.

Resources

  • scripts/scaffold.mjs: copies a complete template and compiles the selected dataset.
  • scripts/prepare-data.mjs: compiles CSV/JSON to frozen local JavaScript.
  • assets/templates/: native HyperFrames composition starters.
  • assets/catalog/templates.json: machine-readable catalog used for template discovery.
  • assets/runtime/: shared deterministic chart-state helpers and visual-style tokens.
  • assets/samples/: generic sample datasets for smoke tests.

© Unclecheng-li, 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 141 other files in skills/ui2v-motions/01_动效库/itelmn/single-line-story of Unclecheng-li/AI_Animation.

  • SKILL.md
  • AGENTS.md
  • ARCHITECTURE.md
  • AnalyticsEvents.tsx
  • BRIEF.md
  • CONTRIBUTING.md
  • CopyButton.tsx
  • ECOSYSTEM.md
  • LazyVideo.tsx
  • MotionSection.tsx
  • OFL-space-grotesk.txt
  • PlotbeatMark.tsx
  • ProfilePopover.tsx
  • README.de.md
  • README.es.md
  • README.fr.md
  • README.ja.md
  • README.ko.md
  • README.md
  • README.pt-BR.md
  • README.zh-CN.md
  • … and 121 more

Open the folder on GitHubat commit d9c521f

Compare with similar skills

Plotbeat Data Videos 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.

Plotbeat Data Videos compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Plotbeat Data Videos this skillUnclecheng-li/AI_Animation1.4k—~2.6kAutomated safety check: PassMIT
HyperFrames Animationheygen-com/hyperframes58k3 repos~2.1kAutomated safety check: PassApache-2.0
Figma to HyperFramesheygen-com/hyperframes58k3 repos~4.5kAutomated safety check: NotesApache-2.0
Talking Head Recutheygen-com/hyperframes58k3 repos~16kAutomated safety check: PassApache-2.0
Code Slice Hero Blockheygen-com/hyperframes58k1 repos~1.2kAutomated safety check: PassApache-2.0
Cuboid Carouselheygen-com/hyperframes58k1 repos~1.8kAutomated safety check: PassApache-2.0

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.

    58k GitHub starsUsed in 3 repos~2.1k tokens
    Media & CreativeAuto-check passed
  • 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.

    58k GitHub starsUsed in 3 repos~4.5k tokens
    Media & CreativeAuto-check: notes
  • Talking Head Recut

    heygen-com/hyperframes

    Lays timed graphic cards such as lower-thirds, data callouts and quotes over an existing talking-head video, synced to the transcript.

    58k GitHub starsUsed in 3 repos~16k tokens
    Media & CreativeAuto-check passed
  • Code Slice Hero Block

    heygen-com/hyperframes

    A HyperFrames video block in which a grid of square tiles flips cell by cell under a sweeping depth field to reveal a rear headline, rendered at 1920×1080 for 8 seconds.

    58k GitHub starsUsed in 1 repo~1.2k tokens
    Media & CreativeAuto-check passed
  • Cuboid Carousel

    heygen-com/hyperframes

    HyperFrames video block where bevelled 3D cuboids carrying card content fly in as a group, rotate in a staggered wave, hold on a hero card and exit.

    58k GitHub starsUsed in 1 repo~1.8k tokens
    Media & CreativeAuto-check passed
  • Orbit Card

    heygen-com/hyperframes

    HyperFrames block with one feature card that circles a dot sphere, driven by camera and card motion exported from an approved Blender rig.

    58k GitHub starsUsed in 1 repo~887 tokens
    Media & CreativeAuto-check passed

More from Unclecheng-li/AI_Animation

All 12 skills in this repo
  • Archify Diagram Builder

    Unclecheng-li/AI_Animation

    Builds validated architecture, workflow, sequence, data-flow and lifecycle diagrams as standalone interactive HTML from a small JSON spec, with optional motion and image export.

    1.4k GitHub starsUsed in 2 repos~4.1k tokens
    Auto-check passed
  • Video Shot Demo Pages

    Unclecheng-li/AI_Animation

    Produces one self-contained HTML animation page per video shot, sharing a cinematic player base but giving each page its own visual style, sound cues and characters.

    1.4k GitHub stars~617 tokensUpdated 2 days ago
    Auto-check passed
  • Card Theater

    Unclecheng-li/AI_Animation

    Generates a single-file HTML presentation that pairs a narrated sidebar with a 3D card carousel, for walking through protocols, product features or step-by-step processes.

    1.4k GitHub stars~877 tokensUpdated 2 days ago
    Auto-check passed
  • Phone UI Demo Animations

    Unclecheng-li/AI_Animation

    Turns a product, lesson or script into a cinematic web animation staged inside a realistic phone interface, with lock screens, chats, settings and a virtual-clock player.

    1.4k GitHub stars~703 tokensUpdated 2 days ago
    Auto-check passed
  • Stacked Data Cards Animation

    Unclecheng-li/AI_Animation

    Generates a single-file HTML animation in which white argument cards pop up in turn, older ones stack to the left and data widgets animate in, timed to a voiceover.

    1.4k GitHub stars~1.1k tokensUpdated 2 days ago
    Auto-check passed
  • Swiss Shot Demos

    Unclecheng-li/AI_Animation

    制作"瑞士国际主义风格(Swiss Style)+ 图表驱动"的视频分镜演示动画——纸灰底/炭黑墨/发丝线/唯一强调橙的编辑部级排版,每页用匹配内容的可视化图表(时间线/循环环/流程链/对照表/点阵计数/热力矩阵…)代替文字堆砌,一镜一 HTML,电影化播放器全屏录屏即成片。只要用户提到:瑞士风格演示页、Swiss Style…

    1.4k GitHub stars~793 tokensUpdated 2 days ago
    Auto-check passed

Works with

Questions about Plotbeat Data Videos

What does Plotbeat Data Videos do?

Turns a local CSV or JSON file, or data fetched from an approved source, into an editable data-visualization video by adapting HyperFrames templates. Plotbeat adapts native HyperFrames templates and selectable visual-style presets to build a chart video from your own numbers, such as a line-chart story or a multi-series ranking. The agent has to find and read the installed `hyperframes` skill before doing anything else.

When should I use Plotbeat Data Videos?

Plotbeat Data Videos fits situations like: turning a CSV of yearly figures into an animated line-chart video; building a ranking animation across several data series; making a data-driven motion graphic from the output of a public API; creating a reusable data-video template inside a HyperFrames project.

How do I install Plotbeat Data Videos in Claude Code?

Run `npx skills add Unclecheng-li/AI_Animation --skill plotbeat -a claude-code`. Or copy the skill folder (skills/ui2v-motions/01_动效库/itelmn/single-line-story in Unclecheng-li/AI_Animation) into .claude/skills/plotbeat in your project. Claude Code loads it when a task matches its description.

How do I install Plotbeat Data Videos in Codex?

Run `npx skills add Unclecheng-li/AI_Animation --skill plotbeat -a codex`. Or copy the skill folder (skills/ui2v-motions/01_动效库/itelmn/single-line-story in Unclecheng-li/AI_Animation) into .agents/skills/plotbeat in your project. Codex loads it when a task matches its description.

Can I use Plotbeat Data Videos 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 Unclecheng-li/AI_Animation --skill plotbeat -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/plotbeat, .gemini/skills/plotbeat, .github/skills/plotbeat and .opencode/skills/plotbeat in your project.

What does Plotbeat Data Videos need to run?

Going by SKILL.md and its folder, Plotbeat Data Videos needs the command-line tools its instructions call (npx, node and npm). Our summary lists: The `hyperframes` AI skill, installed with `npx skills add heygen-com/hyperframes --all`; A local CSV or JSON file, or a data source you approve.

Does Plotbeat Data Videos access the network?

SKILL.md contains no URLs. Its commands use npx and npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Plotbeat Data Videos 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. Review the folder before installing.

What licence does Plotbeat Data Videos use?

Plotbeat Data Videos 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 Plotbeat Data Videos use?

About 2.6k tokens (SKILL.md is roughly 10k 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 Plotbeat Data Videos?

Skills that share tags, products or a category with Plotbeat Data Videos: HyperFrames Animation (heygen-com/hyperframes, 58k stars), Figma to HyperFrames (heygen-com/hyperframes, 58k stars), Talking Head Recut (heygen-com/hyperframes, 58k stars) and Code Slice Hero Block (heygen-com/hyperframes, 58k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Plotbeat Data Videos?

Unclecheng-li (a GitHub user) maintains it in Unclecheng-li/AI_Animation, which has 1,450 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on October 5, 2026.

Source: Unclecheng-li/AI_Animation on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.