Agent skill

Video Merge GPU

by godot-fun in godot-fun/gai

Merges multiple videos from a folder (sorted by filename) into one clip with a random xfade transition (0.5s) between each pair; freeze-pads so total duration equals the sum of sources.

MITAuto-check passedMedia & Creative

Install Video Merge GPU

skills CLI
$ npx skills add godot-fun/gai --skill video-merge-gpu -a claude-code

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

GitHub CLI
$ gh skill install godot-fun/gai video-merge-gpu --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/godot-fun/gai.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/video-merge-gpu .claude/skills/video-merge-gpu && 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
video-merge-gpu
GitHub stars
183
Token cost
~1k tokens
SKILL.md length
375 words
Files
2
Skills in repo
36
Repo updated
First seen
Licence
MIT

At a glance

Merges multiple videos from a folder (sorted by filename) into one clip with a random xfade transition (0.5s) between each pair; freeze-pads so total duration equals the sum of sources.

  • Works in 8 steps: Use the bundled script — do not… → Transition duration is fixed at 0.5s —… → Every clip except the first must be… → …
  • The user wants video-merge-gpu
  • SKILL.md covers Rules, Quick Start, Output Spec (fixed) and Transition Pool (random per cut), plus 3 more sections
  • Calls python

What it does

Video Merge GPU is an agent skill from godot-fun/gai. Merges multiple videos from a folder (sorted by filename) into one clip with a random xfade transition (0.5s) between each pair; freeze-pads so total duration equals the sum of sources. Encodes with GPU HEVC only (NVENC / AMF / QSV — no CPU libx265 fallback). Exports 3840×2160 60fps H.265 Main10 40Mbps + AAC 320kbps. Use when the user wants video-merge-gpu, GPU video merge, NVENC merge, hevcnvenc concat, GPU concat, GPU video merge, or batch stitch clips with xfade on GPU.

Its SKILL.md is about 1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `reference.md`).

It sits in Media & Creative. It works with FFmpeg and Python. The repository describes itself as: A lightweight AI agent and skill workflow framework built with Godot. The licence is MIT.

When your agent uses it

  • The user wants video-merge-gpu
  • GPU video merge
  • Hevcnvenc concat
  • Batch stitch clips with xfade on GPU

Example prompts

  • “Use the video-merge-gpu skill to merge multiple videos from a folder (sorted by filename) into one clip with a random xfade transition (0.5s)…”
  • “/video-merge-gpu”

Requirements

  • Python 3

Workflow steps

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

  1. Use the bundled script — do not hand-write ffmpeg xfade chains.
  2. Transition duration is fixed at 0.5s — no duration override flag.
  3. Every clip except the first must be longer than 0.5s (incoming side of xfade).
  4. Single file in the folder → re-encode to the output spec with no transition.
  5. Many clips (4K10) auto-chunk (max 8 inputs per filtergraph) to avoid OOM; transitions stay correct across chunk boundaries.
  6. No CPU fallback. Missing GPU HEVC Main10 → report the probe failure; suggest video-merge only if the user accepts CPU.
  7. Missing Python/FFmpeg → populate .dependency/ per skill-dependency-manager, retry.
  8. FFmpeg filter / encoder details: reference.md

What it can do on your machine

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

    • 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

Video Merge GPU loads about 1k tokens when it runs. Until then it costs about 124 tokens; SKILL.md has 375 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~124
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); files beside SKILL.md are not scanned.

SKILL.md

The full file from godot-fun/gai at commit 6394686, republished under its MIT licence (© godot-fun). 375 words, ~1,006 tokens.

Download SKILL.mdSave it as .claude/skills/video-merge-gpu/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
video-merge-gpu
description
Merges multiple videos from a folder (sorted by filename) into one clip with a random xfade transition (0.5s) between each pair; freeze-pads so total duration equals the sum of sources. Encodes with GPU HEVC only (NVENC / AMF / QSV — no CPU libx265 fallback). Exports 3840×2160 60fps H.265 Main10 40Mbps + AAC 320kbps. Use when the user wants video-merge-gpu, GPU video merge, NVENC merge, hevc_nvenc concat, GPU concat, GPU video merge, or batch stitch clips with xfade on GPU.
disable-model-invocation
true

Video Merge GPU

Same merge as video-merge: concatenate every video in a folder (filename sort) into one high-quality MP4, random FFmpeg xfade (0.5s) + matching acrossfade, freeze-pad so output length equals the sum of source durations.

GPU encode only. Probe hevc_nvenc → hevc_amf → hevc_qsv (HEVC Main10). If none work, fail — do not fall back to libx265. Use video-merge when CPU encode is wanted.

xfade / scale / pad still run on CPU; only the H.265 encode is hardware.

Rules

When this skill applies, read and follow skill-dependency-manager — run scripts as documented, install missing tools into .dependency/.

  • Run merge.py through .dependency/python/python.exe. Never use host python / ffmpeg.
  • Never overwrite sources. Outputs go under video-merge-gpu/.
  • Use the bundled script — do not hand-write equivalent FFmpeg commands.
  • Folder input only — pass --folder with a directory of clips (top-level files; no recurse).

Quick Start

bash
.dependency/python/python .ai/video-merge-gpu/merge.py --folder path/to/clips

Example:

assets/shots/
  01.mp4
  02.mp4
  03.mp4
→ assets/shots/video-merge-gpu/shots.mp4

Output Spec (fixed)

SettingValue
Resolution3840×2160 (scale + letterbox pad)
Frame rate60 fps
VideoH.265 Main10 (GPU: hevc_nvenc / hevc_amf / hevc_qsv, p010le) @ 40 Mbps
AudioAAC 320 kbps, 48 kHz stereo
Transition0.5 s, random from the pool below (freeze-pad; duration preserved)
Container.mp4 (hvc1 tag)

Transition Pool (random per cut)

fade · dissolve · wipeleft · wiperight · wipeup · wipedown · slideleft · slideright · circlecrop · pixelize · distance · radial · smoothleft · smoothright · circleopen · circleclose · diagtl · diagtr · hblur · zoomin

Each cut independently samples one transition. Printed in the run log.

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

Common Flags

--folder · -o / --output

bash
.dependency/python/python .ai/video-merge-gpu/merge.py --folder clips
.dependency/python/python .ai/video-merge-gpu/merge.py --folder clips -o out/final.mp4

Never overwrite source files. Input must be a folder (--folder), not a single video file. Only top-level videos in the folder (no recurse). Supported: .mp4, .mkv, .mov, .avi, .webm, .wmv, .flv, .m4v, .mpeg, .mpg, .ts, .mts, .m2ts, .3gp, .ogv.

Agent Notes

  1. Use the bundled script — do not hand-write ffmpeg xfade chains.
  2. Transition duration is fixed at 0.5s — no duration override flag.
  3. Every clip except the first must be longer than 0.5s (incoming side of xfade).
  4. Single file in the folder → re-encode to the output spec with no transition.
  5. Many clips (4K10) auto-chunk (max 8 inputs per filtergraph) to avoid OOM; transitions stay correct across chunk boundaries.
  6. No CPU fallback. Missing GPU HEVC Main10 → report the probe failure; suggest video-merge only if the user accepts CPU.
  7. Missing Python/FFmpeg → populate .dependency/ per skill-dependency-manager, retry.
  8. FFmpeg filter / encoder details: reference.md

Tests

From repo root:

bash
.dependency/python/python .ai/video-merge-gpu/test_merge.py

Manual CLI examples: cli/video-merge-gpu.md

© godot-fun, 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 in .agents/skills/video-merge-gpu of godot-fun/gai.

  • SKILL.md
  • reference.md

Open the folder on GitHubat commit 6394686

Compare with similar skills

Video Merge GPU 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.

Video Merge GPU compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Video Merge GPU this skillgodot-fun/gai183—~1kAutomated safety check: PassMIT
Vox DirectorAlisa0808/vox-director2.2k—~5.6kAutomated safety check: PassMIT
Youtube Clipperop7418/Youtube-clipper-skill2.2k—~1.6kAutomated safety check: NotesMIT
Gbro Collage Brollpyang5166/gbro-collage-broll1.3k—~2.6kAutomated safety check: NotesMIT
Ffmpeg Skillkajisho5/ffmpeg-skill1.9k—~7.4kAutomated safety check: PassMIT
Claude Real VideoHUANGCHIHHUNGLeo/claude-real-video2.2k—~639Automated safety check: PassMIT

Similar skills

  • Vox Director

    Alisa0808/vox-director

    Turn ONE topic into a finished Vox-style paper-collage explainer / ad video, end to end on the Atlas Cloud API + local ffmpeg — script, collage keyframes, motion, voice-over, music, captions, all…

    2.2k GitHub stars~5.6k tokensUpdated 5 days ago
    Media & CreativeAuto-check passed
  • Youtube Clipper

    op7418/Youtube-clipper-skill

    YouTube 视频智能剪辑工具。下载视频和字幕,AI 分析生成精细章节(几分钟级别), 用户选择片段后自动剪辑、翻译字幕为中英双语、烧录字幕到视频,并生成总结文案。

    2.2k GitHub stars~1.6k tokensUpdated 8 mo ago
    Media & CreativeAuto-check: notes
  • Gbro Collage Broll

    pyang5166/gbro-collage-broll

    将约 5 秒口播文稿、观点句或抽象概念做成高级 editorial halftone paper-collage / 半调纸拼贴 B-roll。用户说“collage b-roll”“纸拼贴 b-roll”“半调拼贴”“拼贴风格配画面”“用这段文稿做拼贴动画”“gbro-collage-broll”,或希望把一句文稿转成拼贴视觉隐喻时,必须使用此…

    1.3k GitHub stars~2.6k tokensUpdated 2 mo ago
    Media & CreativeAuto-check: notes
  • Ffmpeg Skill

    kajisho5/ffmpeg-skill

    Edit video and audio with local FFmpeg from natural-language requests: cut, trim, join, resize/reframe (9:16, 1:1), speed change, captions and subtitles (SRT/ASS, animated, karaoke), logos and text…

    1.9k GitHub stars~7.4k tokensUpdated today
    Media & CreativeAuto-check passed
  • Claude Real Video

    HUANGCHIHHUNGLeo/claude-real-video

    Watch a video for the user. An agent skill from HUANGCHIHHUNGLeo/claude-real-video.

    2.2k GitHub stars~639 tokensUpdated 2 days ago
    Media & CreativeAuto-check passed
  • OpenStoryline Install Helper

    FireRedTeam/FireRed-OpenStoryline

    Installs, repairs and starts a local source checkout of FireRed-OpenStoryline, from prerequisites and a venv to resources, config and the MCP and web servers.

    3.5k GitHub stars~1.5k tokensUpdated 2 mo ago
    Media & CreativeAuto-check: notes

More from godot-fun/gai

All 36 skills in this repo
  • AI Text To Speech

    godot-fun/gai

    Zero-shot text-to-speech with voice cloning via IndexTTS2 (index-tts).

    183 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Audio Denoise

    godot-fun/gai

    Reduces background noise in a single audio file using FFmpeg afftdn.

    183 GitHub stars~465 tokensUpdated today
    Auto-check passed
  • Audio Fade

    godot-fun/gai

    Applies fade-in and fade-out at the start and end of a single audio file using FFmpeg.

    183 GitHub stars~652 tokensUpdated today
    Auto-check passed
  • Normalizes a single audio file to consistent LUFS loudness with true-peak limiting using FFmpeg.

    183 GitHub stars~684 tokensUpdated today
    Auto-check passed
  • Standardizes a single audio file to 44100 or 48000 Hz and exports 16-bit PCM WAV using FFmpeg.

    183 GitHub stars~638 tokensUpdated today
    Auto-check passed
  • Audio Split

    godot-fun/gai

    Splits a single audio file into two segments (part 1 before the split point, part 2 after) using FFmpeg.

    183 GitHub stars~554 tokensUpdated today
    Auto-check passed

Works with

Questions about Video Merge GPU

What does Video Merge GPU do?

Merges multiple videos from a folder (sorted by filename) into one clip with a random xfade transition (0.5s) between each pair; freeze-pads so total duration equals the sum of sources. Video Merge GPU is an agent skill from godot-fun/gai.5s) between each pair; freeze-pads so total duration equals the sum of sources.

When should I use Video Merge GPU?

Video Merge GPU fits situations like: the user wants video-merge-gpu; GPU video merge; hevcnvenc concat; batch stitch clips with xfade on GPU.

How do I install Video Merge GPU in Claude Code?

Run `npx skills add godot-fun/gai --skill video-merge-gpu -a claude-code`. Or copy the skill folder (.agents/skills/video-merge-gpu in godot-fun/gai) into .claude/skills/video-merge-gpu in your project. Claude Code loads it when a task matches its description.

How do I install Video Merge GPU in Codex?

Run `npx skills add godot-fun/gai --skill video-merge-gpu -a codex`. Or copy the skill folder (.agents/skills/video-merge-gpu in godot-fun/gai) into .agents/skills/video-merge-gpu in your project. Codex loads it when a task matches its description.

Can I use Video Merge GPU 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 godot-fun/gai --skill video-merge-gpu -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/video-merge-gpu, .gemini/skills/video-merge-gpu, .github/skills/video-merge-gpu and .opencode/skills/video-merge-gpu in your project.

What does Video Merge GPU need to run?

Going by SKILL.md and its folder, Video Merge GPU needs the command-line tools its instructions call (python). Our summary lists: Python 3.

Does Video Merge GPU 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 Video Merge GPU 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 Video Merge GPU use?

Video Merge GPU 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 Video Merge GPU 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 Video Merge GPU?

Skills that share tags, products or a category with Video Merge GPU: Vox Director (Alisa0808/vox-director, 2.2k stars), Youtube Clipper (op7418/Youtube-clipper-skill, 2.2k stars), Gbro Collage Broll (pyang5166/gbro-collage-broll, 1.3k stars) and Ffmpeg Skill (kajisho5/ffmpeg-skill, 1.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Video Merge GPU?

godot-fun (a GitHub organization) maintains it in godot-fun/gai, which has 183 GitHub stars. The repository holds 36 skills in this directory. The repository was last updated on October 10, 2026.

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