Not in the top 1,000 by GitHub stars

GoldLegendW80/llm-video-maker

Turn one prompt into a finished MP4. An AI agent skill for Claude Code, Cursor, Codex & Windsurf that generates TikTok/Reels/Shorts, YouTube intros, startup hero loops & data explainers — with AI voiceover, captions, music & real assets. Deterministic HTML/GSAP render. Prompt-driven, Remotion-style.

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

skills/edit-video/SKILL.md

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → cee12add2431

No earlier version was observed for comparison.

Compare on GitHub

skills/make-video/SKILL.md

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → cee12add2431

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit cee12add24317c50f8a9f9de93749089a59d9f99

36GitHub stars
4stars in 7 days
2skills in this repository
0commits in 30 days

Heat

3.1
  • Star growth, last 7 daysNot available
  • Star growth, last 24 hoursNot available
  • Rank movement, last 7 daysNot available
  • Commits, last 30 daysNot available
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekNot available

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Oct 25, 2026Nov 3, 202636

30-day change not yet available: not enough history.

Individual skills in this repository

How it works

edit-video

When your agent uses it

Edit one chapter or section of an already-generated video without redoing the whole thing. Change the script, visuals, captions, or timing of a single scene, then re-render and re-verify - iterate on AI-generated videos, social clips, promos and explainers. Companion to make-video. Use when asked to change, fix, redo or tweak a section, scene or chapter of an existing video. Trigger - /edit-video <project-id> <chapter-id> "<instruction>".

What it loads into context

Frontmatter

104 tokens

Always available to the agent

SKILL.md

1,666 tokens

When the skill is activated

Reference documents

0 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. Input handling (security — read first)
  2. Resolve the request
  3. Invariants — what an edit must NEVER do
  4. Execute
  5. Done means

Files

  • SKILL.mdcore6,932 bytes
  • SKILL.mdcore6,932 bytes
  • SKILL.mdcore6,932 bytes
  • SKILL.mdcore6,932 bytes
Read SKILL.md

# /edit-video — chapter-scoped edit loop (v0)

**`$MAKE_VIDEO_SKILL`** = the companion `make-video` skill's directory (sibling of this one;
it bundles the pipeline scripts under `scripts/`). This skill is its editing companion —
install them together.

Input: a project id (a directory under `projects/`), a chapter id (from that project's
`storyboard.json`), and a natural-language instruction. Output: a re-rendered video where ONLY
that chapter's visuals changed, plus an updated report.

This is the editing model's executable contract: chapters are the unit of editability.
v0 re-renders the FULL video after re-composing the chapter (simple, always correct);
per-chapter render caching is the M2 upgrade.
View the complete source on GitHub

Skills included

  • edit-video
  • make-video

Repository facts

License
MIT
Created
Jun 17, 2026
Last pushed
Jun 17, 2026
Forks
6
Open issues
0
Project activity
Slowing

Before you install

Local scripts

Automated signals, not a guarantee

Checked Nov 6, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 21 notes
  • skills/edit-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/edit-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/edit-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/make-video/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 77 signals by file

skills/make-video/SKILL.md

  • Access to secretsline 31
    [Credential-related source omitted]
  • Access to secretsline 32
    [Credential-related source omitted]
  • Access to secretsline 33
    [Credential-related source omitted]
  • Network accessline 256
    3. **`capture` — recorded demonstrations.** `"type": "capture"` drives the user's real Chrome    via Playwright over any URL — including `http://localhost:*` to demo a local app — executing
  • Network accessline 257
    via Playwright over any URL — including `http://localhost:*` to demo a local app — executing

skills/make-video/schema.json

  • Network accessline 1
    {   "$schema": "https://json-schema.org/draft/2020-12/schema",
  • Network accessline 2
    "$schema": "https://json-schema.org/draft/2020-12/schema",

skills/make-video/scripts/analyze-codebase.mjs

  • Executable scriptline 1
    #!/usr/bin/env node

skills/make-video/scripts/capture-demo.mjs

  • Executable scriptline 1
    #!/usr/bin/env node
  • Network accessline 20
    //   ] } // // Works on any URL — including http://localhost:* for demonstrating a local app.
  • Network accessline 21
    // // Works on any URL — including http://localhost:* for demonstrating a local app. // The recording is SOURCE FOOTAGE: the determinism contract applies to the final
  • Network accessline 22
    // Works on any URL — including http://localhost:* for demonstrating a local app.

skills/make-video/scripts/fetch-assets.mjs

  • Executable scriptline 1
    #!/usr/bin/env node
  • Network accessline 12
    //   { "type": "video", "query": "typing on laptop", "out": "vid/typing.mp4", "orientation": "landscape", "max_s": 15 } //   { "type": "sfx",   "query": "whoosh transition", "out": "sfx/whoosh.mp3", "max_s": 4 }   // Freesound CC0 //   { "t
  • Network accessline 13
    //   { "type": "sfx",   "query": "whoosh transition", "out": "sfx/whoosh.mp3", "max_s": 4 }   // Freesound CC0 //   { "type": "web",   "url": "https://…/file.png", "out": "img/chart.png", //     "license": "CC-BY 4.0", "source": "https://…/
  • Network accessline 14
    //   { "type": "web",   "url": "https://…/file.png", "out": "img/chart.png",
  • Network accessline 15
    //     "license": "CC-BY 4.0", "source": "https://…/page" }                            // license fields REQUIRED
  • Network accessline 16
    //   { "type": "capture", "url": "https://myapp.dev", "out": "demo/tour.mp4",
  • Access to secretsline 20
    [Credential-related source omitted]
  • Access to secretsline 21
    [Credential-related source omitted]
  • Access to secretsline 22
    [Credential-related source omitted]
  • Network accessline 70
    const color = e.color ? `?color=${encodeURIComponent(e.color)}` : "";   const url = `https://api.iconify.design/${encodeURIComponent(e.set)}/${encodeURIComponent(e.name)}.svg${color}`;
  • Network accessline 71
    const url = `https://api.iconify.design/${encodeURIComponent(e.set)}/${encodeURIComponent(e.name)}.svg${color}`;
  • Network accessline 79
    const url = `https://cdn.simpleicons.org/${encodeURIComponent(e.slug)}${e.color ? "/" + encodeURIComponent(e.color.replace("#", "")) : ""}`;
  • Access to secretsline 85
    [Credential-related source omitted]
  • Network accessline 87
    [Credential-related source omitted]
  • Access to secretsline 87
    [Credential-related source omitted]
  • Network accessline 88
    [Credential-related source omitted]
  • Access to secretsline 88
    [Credential-related source omitted]
  • Network accessline 89
    const u = new URL("https://pixabay.com/api/");
  • Network accessline 107
    [Credential-related source omitted]
  • Access to secretsline 107
    [Credential-related source omitted]
  • Network accessline 108
    [Credential-related source omitted]
  • Access to secretsline 108
    [Credential-related source omitted]
  • Network accessline 109
    const u = new URL("https://api.pexels.com/v1/search");
  • Network accessline 123
    async function imagegen(e, ctx) {   if (ctx.imageGen === "openai" && ctx.env.OPENAI_API_KEY) {     const r = await fetchOk(ctx, "https://api.openai.com/v1/images/generations", {
  • Network accessline 124
    [Credential-related source omitted]
  • Access to secretsline 124
    [Credential-related source omitted]
  • Network accessline 125
    const r = await fetchOk(ctx, "https://api.openai.com/v1/images/generations", {
  • Access to secretsline 127
    [Credential-related source omitted]
  • Network accessline 146
    [Credential-related source omitted]
  • Access to secretsline 146
    [Credential-related source omitted]
  • Network accessline 147
    const u = new URL("https://api.giphy.com/v1/gifs/search");
  • Access to secretsline 148
    [Credential-related source omitted]
  • Network accessline 164
    }   if (ctx.env.TENOR_API_KEY) {     const u = new URL("https://tenor.googleapis.com/v2/search");
  • Network accessline 165
    [Credential-related source omitted]
  • Access to secretsline 165
    [Credential-related source omitted]
  • Network accessline 166
    const u = new URL("https://tenor.googleapis.com/v2/search");
  • Access to secretsline 167
    [Credential-related source omitted]
  • Access to secretsline 184
    [Credential-related source omitted]
  • Network accessline 190
    const j = await (await fetchOk(ctx, "https://api.imgflip.com/get_memes")).json();
  • Network accessline 193
    const hit = j.data.memes.find(m => m.name.toLowerCase() === want)     || j.data.memes.find(m => m.name.toLowerCase().includes(want));   if (!hit) throw new Error(`no imgflip template matching "${e.template}" — browse https://imgflip.com/mem
  • Network accessline 194
    || j.data.memes.find(m => m.name.toLowerCase().includes(want));   if (!hit) throw new Error(`no imgflip template matching "${e.template}" — browse https://imgflip.com/memetemplates`);   const buf = await fetchBuf(ctx, hit.url);
  • Network accessline 195
    if (!hit) throw new Error(`no imgflip template matching "${e.template}" — browse https://imgflip.com/memetemplates`);
  • Network accessline 196
    const buf = await fetchBuf(ctx, hit.url);   save(ctx, e.out + ".credit.json", JSON.stringify({     template: hit.name, source: `https://imgflip.com/meme/${hit.id}`, provider: "imgflip",
  • Network accessline 197
    save(ctx, e.out + ".credit.json", JSON.stringify({     template: hit.name, source: `https://imgflip.com/meme/${hit.id}`, provider: "imgflip",     license: "Meme template — rights vary by underlying image; user assumes editorial-use responsi
  • Network accessline 198
    template: hit.name, source: `https://imgflip.com/meme/${hit.id}`, provider: "imgflip",
  • Access to secretsline 206
    [Credential-related source omitted]
  • Network accessline 208
    [Credential-related source omitted]
  • Access to secretsline 208
    [Credential-related source omitted]
  • Network accessline 209
    [Credential-related source omitted]
  • Access to secretsline 209
    [Credential-related source omitted]
  • Network accessline 210
    const u = new URL("https://api.pexels.com/videos/search");
  • Network accessline 229
    [Credential-related source omitted]
  • Access to secretsline 229
    [Credential-related source omitted]
  • Network accessline 230
    [Credential-related source omitted]
  • Access to secretsline 230
    [Credential-related source omitted]
  • Network accessline 231
    const u = new URL("https://pixabay.com/api/videos/");
  • Network accessline 251
    [Credential-related source omitted]
  • Access to secretsline 251
    [Credential-related source omitted]
  • Network accessline 252
    [Credential-related source omitted]
  • Access to secretsline 252
    [Credential-related source omitted]
  • Network accessline 253
    const u = new URL("https://freesound.org/apiv2/search/text/");
  • Network accessline 285
    // Live browser demonstration (any URL, incl. http://localhost — local app demos).

skills/make-video/scripts/normalize-transcript.mjs

  • Executable scriptline 1
    #!/usr/bin/env node

skills/make-video/scripts/plan-scenes.mjs

  • Executable scriptline 1
    #!/usr/bin/env node

skills/make-video/scripts/validate-brief.mjs

  • Executable scriptline 1
    #!/usr/bin/env node

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Declared and executed: 9 facts
Signal confidence: 75 facts

and 25 more

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeCompatibleStandard SKILL.md skills/edit-video/SKILL.md.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md skills/edit-video/SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md skills/edit-video/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md skills/edit-video/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md skills/edit-video/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md skills/edit-video/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.