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.
Make hand-drawn whiteboard / doodle-explainer / sketch-note animation videos (MP4) with code — marker lines that draw themselves on, a cartoon hand holding a marker that follows the pen tip…
$ npx skills add edenfunf/reelmimic --skill whiteboard -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install edenfunf/reelmimic whiteboard --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/edenfunf/reelmimic.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/whiteboard .claude/skills/whiteboard && rm -rf skills-srcUse ~/.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/
Install the "whiteboard" agent skill from https://github.com/edenfunf/reelmimic/tree/main/.claude/skills/whiteboard into .claude/skills/whiteboard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "whiteboard", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/edenfunf/reelmimic/tree/main/.claude/skills/whiteboardType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add edenfunf/reelmimic --skill whiteboard -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install edenfunf/reelmimic whiteboard --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/edenfunf/reelmimic.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/whiteboard .agents/skills/whiteboard && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "whiteboard" agent skill from https://github.com/edenfunf/reelmimic/tree/main/.claude/skills/whiteboard into .agents/skills/whiteboard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "whiteboard", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add edenfunf/reelmimic --skill whiteboard -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install edenfunf/reelmimic whiteboard --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/edenfunf/reelmimic.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/whiteboard .cursor/skills/whiteboard && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "whiteboard" agent skill from https://github.com/edenfunf/reelmimic/tree/main/.claude/skills/whiteboard into .cursor/skills/whiteboard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "whiteboard", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/edenfunf/reelmimic.git --path .claude/skills/whiteboard--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add edenfunf/reelmimic --skill whiteboard -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install edenfunf/reelmimic whiteboard --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/edenfunf/reelmimic.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/whiteboard .gemini/skills/whiteboard && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "whiteboard" agent skill from https://github.com/edenfunf/reelmimic/tree/main/.claude/skills/whiteboard into .gemini/skills/whiteboard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "whiteboard", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install edenfunf/reelmimic whiteboardInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add edenfunf/reelmimic --skill whiteboard -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/edenfunf/reelmimic.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/whiteboard .github/skills/whiteboard && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "whiteboard" agent skill from https://github.com/edenfunf/reelmimic/tree/main/.claude/skills/whiteboard into .github/skills/whiteboard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "whiteboard", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add edenfunf/reelmimic --skill whiteboard -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install edenfunf/reelmimic whiteboard --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/edenfunf/reelmimic.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/whiteboard .opencode/skills/whiteboard && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "whiteboard" agent skill from https://github.com/edenfunf/reelmimic/tree/main/.claude/skills/whiteboard into .opencode/skills/whiteboard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "whiteboard", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
whiteboardMake hand-drawn whiteboard / doodle-explainer / sketch-note animation videos (MP4) with code — marker lines that draw themselves on, a cartoon hand holding a marker that follows the pen tip…
Whiteboard is an agent skill from edenfunf/reelmimic. Make hand-drawn whiteboard / doodle-explainer / sketch-note animation videos (MP4) with code — marker lines that draw themselves on, a cartoon hand holding a marker that follows the pen tip, handwritten text (Latin + CJK) written left to right, hatching and highlighter fills, arrows/circles/callouts/icons, two doodle characters (Bo the kid, Mochi the cat), camera pans across a big board, eraser wipes and page flips. Canvas 2D rendered frame by frame in headless Chrome, encoded with ffmpeg. Use when a reference…
Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 23 other files, including scripts (for example `GUIDE.md`, `scripts/new_project.sh` and `template/package-lock.json`).
It sits in Media & Creative, covering Video production and Motion graphics. It works with FFmpeg. The repository describes itself as: Show it a video you love. Get a new video in the same style. An AI crew (Claude Code or Codex) plans, builds and reviews it with you. The licence is MIT.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 73492b0. It shows what the files ask for, not the result of running them.
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.
Ships 1 file in scripts/ (JavaScript and Shell, from the files we listed), which the agent can run.
Shell commands in SKILL.md call:
nodebashnpmFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Whiteboard loads about 1.9k tokens when it runs. Until then it costs about 188 tokens; SKILL.md has 726 words of instructions outside code blocks.
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.
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.
The full file from edenfunf/reelmimic at commit 73492b0, republished under its MIT licence (© edenfunf). 726 words, ~1,922 tokens.
.claude/skills/whiteboard/SKILL.md (or your agent's skills folder). This skill also uses 18 other files; get the full folder from GitHub.Every frame is a pure function of time t. studio.html loads src/kit.js (shared ReelMimic runtime: timeline,
timing/motion helpers, camera, render hooks), src/whiteboard.js (the look: board, marker strokes, drawOn,
handwriting, icons, hand, transitions, captions), src/cast.js (characters) and your scene files. render.mjs drives
headless Chrome for contact sheets / crops / frames and ffmpeg encodes the MP4.
Read GUIDE.md in full before designing anything — it has the look rules, the complete API with
examples, the character system and the review checklist. Look at the model sheets: docs/faces.jpg (16 expressions
× 2 characters), docs/poses.jpg (views, walk, jump, props), docs/kit.jpg (icons, strokes, fills, text) and
docs/demo-sheet.jpg (the demo).
bash .claude/skills/whiteboard/scripts/new_project.sh <project-dir> (--keep-demo keeps the demo
hooked up). Copies the template, runs npm install, checks node / ffmpeg / Chrome.src/scenes/, ending with shots([[t0, fn], ...]); add its
<script> to studio.html. Set duration in src/config.js.node render.mjs --sheet=0.5,1.5,2.5,3.5 --cols=4 --w=480 --out=out/check/a.jpg # key frames
node render.mjs --strip=3.6:4.4 --cols=6 --w=320 --out=out/check/jump.jpg # every frame of a move
node render.mjs --sheet=3.2 --crop-at=1340,640,560,560 --w=560 --out=out/check/face.jpg # detail at a world point
node render.mjs --loop=faces --sheet=0 --cols=1 --w=1920 --out=out/check/faces.jpg # model sheets (poses, kit)node render.mjs --frames --workers=4 && node render.mjs --encode --out=out/video.mp4 [--audio=...]
(or --clip for short ones). ~20–60 ms/frame single-threaded at 1920×1080.function shot(t, lt, dur) { // lt = time in this shot
wbBegin(lt, { cam: [[0, [900, 540, 1.1]], [2, [1400, 560, 1]]], bg: { kind: 'white' } }); // clock + camera + board
const box = writeOn('Save time 省時間', 300, 300, .2, 1.2, { size: 110, col: INK.blue }); // handwriting
drawOn(S.underline(box.x, box.y2 + 4, box.w, { col: INK.orange }), 1.25, 1.5); // strokes, drawn on
drawOn([...ICON.clock(600, 620, 220), ...S.arrow(760, 620, 1000, 600)], 1.6, 2.6); // icons + arrow
bo(1300, 940, 40, { face: 'happy', draw: [2.7, 3.8], hold: { R: 'coin' } }); // character, drawn on
camEnd(); eraseWipe(seg(lt, dur - .8, dur)); // transition (screen space)
}
wbCaptions([[.3, 4, '每天*省下*一小時']]); // overlay captionsS.line/path/circle/ring/arc/dot/rect/arrow/underline/wave/zigzag/spiral/bubble/box/cloud/heart/star/check/ cross/rays/sparkle/speed/fill, hatch(poly), scribble(poly) (highlighter), hilite(x,y,w,h), place(strokes, x, y, ang, scale), polyCircle, polyRect. drawOn(strokes, a, b, {hand, all, x, y, alpha}), ink(strokes).writeOn(text, x, y, a, b, {size, col, align, lh, weight}) → box; textBox() measures only.ICON.bulb/clock/coin/money/heart/check/cross/checkbox/phone/house/star/chart/gear/mail/search/target/cloud/ trophy/person(cx, cy, size, {col, key, rays}).bo(x, y, u, o), mochi(x, y, u, o) → {hand:{L,R}, head, top, strokes}; o = {face, look, view, flip, sq, dy, tilt, arm:[[ang,bend],[ang,bend]], leg, walk, hold:{L,R}, emote, draw:[a,b], hand, shirt, id, blink}.
mood(lt, [[t,'face'],...]), stroll(lt, t0, t1, x0, x1, u), kit jump(), take(). EXPR_NAMES (16), PROPS.wbBegin(lt, {cam, bg:{kind:'white'|'paper'|'grid', margin, frame:[x,y,w,h]}, drift}), board().eraseWipe(p) (screen, end of shot), pageFlip(p) (screen, start of next shot), eraseRect(x,y,w,h,a,b)
(world, erase one area), camera pans across the board (one shot with camera keys).WB.hand = false hides it, {hand:false} per call, handAt(x, y, {tool}) forces it. WB.sleeve colour.INK.black/blue/red/orange/green/purple/grey/yellow/pink/skin, highlighters HL.yellow/pink/green/blue/orange.drawOn / writeOn with the hand, never pop in. Only characters
that were already drawn may move/animate; props arrive in hands or get drawn.WB.w (9 px) everywhere; icons scale, lines don't. Black for
outlines, 1–2 accent colours per board area, highlighter for emphasis.wbCaptions (64 px card).Math.random, no state across frames; always call every drawOn of the shot every frame
(it draws nothing before a) so the hand knows what comes next. Give moving strokes a fixed key.drawOn reveals in array order but paints in z order; fills (S.fill) default to z −1 (under lines), mode:'ink'
multiplies (lines show through), mode:'cover' hides what's under.{key:'name'} or it will shimmer.
Characters and PROPS already do this.eraseWipe / pageFlip are SCREEN-space: call camEnd() first. pageFlip re-renders the previous shot's last
frame (costs one extra shot render per frame for ~0.9 s).ENGINE.setup scans every loaded script for the
characters it needs; text built at runtime from other sources → add it to window.WB_TEXT before boot.S, INK, HL, WB, PEN, ICON, PROPS, EXPR, board, ink, bo, mochi, hatch,
mood, stroll in scenes (they're the library's). Keep helpers inside the scene IIFE.© edenfunf, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 18 other files (scripts) in .claude/skills/whiteboard of edenfunf/reelmimic.
Open the folder on GitHubat commit 73492b0
Whiteboard 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Whiteboard this skilledenfunf/reelmimic | 1.7k | — | ~1.9k | Automated safety check: Pass | MIT | |
| HyperFrames Video Entry Pointheygen-com/hyperframes | 59k | 3 repos | ~5.2k | Automated safety check: Pass | Apache-2.0 | |
| Cut Silencesnateherkai/hyperframes-student-kit | 1.2k | — | ~1.2k | Automated safety check: Pass | Custom licence | |
| p5 Paint Animationheygen-com/hyperframes-community-skills | 178 | — | ~1.8k | Automated safety check: Pass | Apache-2.0 | |
| DoctorKumarSashank/motiscope | 122 | — | ~736 | Automated safety check: Notes | MIT | |
| Cut Mistakesnateherkai/hyperframes-student-kit | 1.2k | — | ~1.1k | Automated safety check: Pass | Custom licence |
heygen-com/hyperframes
Entry point for making, editing and rendering videos from HTML compositions with HyperFrames, routing each request to the right workflow.
nateherkai/hyperframes-student-kit
Agent 1 of the video editing pipeline. An agent skill from nateherkai/hyperframes-student-kit.
heygen-com/hyperframes-community-skills
Turns a text prompt, photo or short video into hand-made looking p5.js animation: self-writing handwriting, brushstroke repaints and living paintings rendered offline.
KumarSashank/motiscope
Check and configure motiscope — verify ffmpeg/ffprobe are installed and scaffold the API-key config used for optional (stubbed) asset generation.
nateherkai/hyperframes-student-kit
Agent 2 of the video editing pipeline. An agent skill from nateherkai/hyperframes-student-kit.
notivn/AIEV
Color grading video in the AI Edit Video system - delog/tonemap HDR-HLG-log footage, apply the color preset the user approved in the UI, and the visual verification workflow.
edenfunf/reelmimic
Agent Media OS, the single skill for every media need in a HyperFrames project.
edenfunf/reelmimic
Takes a reference video and a short brief, analyzes its cutting and visual style, then plans and builds a new MP4 in a matching style.
edenfunf/reelmimic
Builds Japanese TV-anime style MP4 videos in code, with cel-shaded characters, painted backgrounds and staging effects, rendered in headless Chrome and encoded with ffmpeg.
edenfunf/reelmimic
Renders premium 3D product films in headless Blender from JSON shot specs, building the product from a photo or procedurally, then finishing titles, music and cuts.
edenfunf/reelmimic
Builds children's picture-book MP4 animations drawn in crayon, colored pencil and pastel, rendered frame by frame with p5.js and encoded with ffmpeg.
edenfunf/reelmimic
Builds paper cut-out, stop-motion style MP4 videos in code, with jointed paper puppets, torn or scissor-cut edges and soft shadows, rendered frame by frame in headless Chrome.
Works with
Categories
Make hand-drawn whiteboard / doodle-explainer / sketch-note animation videos (MP4) with code — marker lines that draw themselves on, a cartoon hand holding a marker that follows the pen tip…. Whiteboard is an agent skill from edenfunf/reelmimic. Make hand-drawn whiteboard / doodle-explainer / sketch-note animation videos (MP4) with code — marker lines that draw themselves on, a cartoon hand holding a marker that follows the pen tip, handwritten text (Latin + CJK) written left to right, hatching and highlighter fills, arrows/circles/callouts/icons, two doodle characters (Bo the kid, Mochi the cat), camera pans across a big board, eraser wipes and page flips.
Whiteboard fits situations like: A reference video; brief calls for a whiteboard animation; videoScribe-style explainer; doodle / sketch-note / marker-drawing / notebook-doodle look.
Run `npx skills add edenfunf/reelmimic --skill whiteboard -a claude-code`. Or copy the skill folder (.claude/skills/whiteboard in edenfunf/reelmimic) into .claude/skills/whiteboard in your project. Claude Code loads it when a task matches its description.
Run `npx skills add edenfunf/reelmimic --skill whiteboard -a codex`. Or copy the skill folder (.claude/skills/whiteboard in edenfunf/reelmimic) into .agents/skills/whiteboard in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add edenfunf/reelmimic --skill whiteboard -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/whiteboard, .gemini/skills/whiteboard, .github/skills/whiteboard and .opencode/skills/whiteboard in your project.
Going by SKILL.md and its folder, Whiteboard needs JavaScript and a shell for the scripts in its folder and the command-line tools its instructions call (node, bash and npm). Our summary lists: Node.js; A Bash shell.
SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
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.
Whiteboard is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Whiteboard: HyperFrames Video Entry Point (heygen-com/hyperframes, 59k stars), Cut Silences (nateherkai/hyperframes-student-kit, 1.2k stars), p5 Paint Animation (heygen-com/hyperframes-community-skills, 178 stars) and Doctor (KumarSashank/motiscope, 122 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
edenfunf (a GitHub user) maintains it in edenfunf/reelmimic, which has 1,701 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on October 7, 2026.
Source: edenfunf/reelmimic on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.