Skip to main content
ClaudeWave
Skill4.1k repo starsupdated today

video-merger

Video-merger concatenates numbered MP4 segments (1_*.mp4, 2_*.mp4, etc.) into a single output file with optional fade transitions and unified codec/resolution/framerate settings. Use this skill when a workflow has generated multiple short clips that need stitching into a final reel, supporting both full-length output and chunked ~60-second segments via pure ffmpeg wrapping.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/opensquilla/opensquilla /tmp/video-merger && cp -r /tmp/video-merger/src/opensquilla/skills/bundled/video-merger ~/.claude/skills/video-merger
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# video-merger — numbered-segment MP4 concatenator

Combines `1_*.mp4`, `2_*.mp4`, ... in numeric order into one MP4 (or
multiple ~60s chunks), with optional fade transitions, codec/resolution/
fps normalisation.

## Inputs (`with:`)

| key | required | default | notes |
|---|---|---|---|
| `input_dir` | yes | — | Directory containing `\d+_*.mp4` segments. |
| `output_path` | yes | — | `.mp4` path (full mode) or directory (chunk mode). |
| `mode` | no | `full` | `full` or `chunk`. |
| `transition` | no | `0.5` | Fade duration in seconds. `0` disables. |
| `fps` | no | `24` | Target frame rate. |
| `crf` | no | `22` | x264 CRF (0-51, lower = better). |
| `preset` | no | `medium` | x264 preset. |

For chunk mode, pass `chunk_duration` directly to the script — the meta
engine entrypoint above does not template it; use a direct shell call
when chunking is needed.

## Dependencies

- `ffmpeg` ≥ 5.0
- `ffprobe`
- Python 3.8+
- No Python packages required beyond stdlib.

Install hints (or just run the bundled installer):

| OS | One-liner installer | Manual |
|---|---|---|
| Windows (PowerShell) | `pwsh -ExecutionPolicy Bypass -File install.ps1` | `winget install Gyan.FFmpeg` / `choco install ffmpeg` / `scoop install ffmpeg` |
| macOS | `bash install.sh` | `brew install ffmpeg` |
| Debian/Ubuntu | `bash install.sh` | `sudo apt install ffmpeg` |

The Windows installer (`install.ps1`) defaults to winget but accepts
`$env:OPENSQUILLA_FFMPEG_INSTALLER="choco"|"scoop"|"skip"` to switch
backends. It prints the absolute `ffmpeg`/`ffprobe` paths after install so
you can pass them to `merge.py` via `--ffmpeg-path` / `--ffprobe-path`
when subprocess PATH inheritance is unreliable.

## Filename ordering contract

The script picks files matching `^\d+_.*\.mp4$` and sorts by the leading
integer. Producers must save segments as `1_shot.mp4`, `2_shot.mp4`,
`3_shot.mp4`, etc. The `meta-short-drama` workflow already follows this.

## Output

Stdout: progress lines and the final output path. Non-zero exit on
ffmpeg failure.

## Failure modes

- `未找到ffmpeg` → install ffmpeg, ensure `ffmpeg` on PATH or pass
  `--ffmpeg-path` directly.
- `未找到符合命名规则...的MP4文件` → ensure segments are `\d+_*.mp4`.
- Mixed resolutions / fps: handled automatically when `--resolution`
  is set; otherwise ffmpeg preserves originals (no normalisation).
advanced-dubbing-studioSkill

Submit audio or video for multilingual dubbing, poll status, and download dubbed audio. Use when the user asks for dubbing, 多语言配音, 视频翻译配音, 译制片, or wants a source clip dubbed into another language.

ai-video-scriptSkill

Generate a structured short-video shooting script from a topic. Emits a strict, machine-parseable shot list (3 shots by default) with image prompt + video prompt + voiceover + on-screen text per shot. Trigger when the user asks for a video script, 分镜, 短视频文案, AI视频, 短剧脚本, or wants visual prompts ready for image/video generation.

cronSkill

Use when the user asks to schedule recurring tasks, one-off reminders, timers, or cron-style jobs through the OpenSquilla cron tool.

deep-researchSkill

Multi-round research with explicit methodology, evidence tracking, and citation-tagged synthesis. Trigger on 'deep dive', 'research report', 'literature review', 'investigate X across sources', 'multi-round investigation'. Distinct from the `summarize` skill, which is a single-pass condensation; this skill maintains a state file across iterations, tracks coverage, and produces a long-form report with per-claim citations. Three execution stages: plan (scope into sub-questions), iterate (record evidence per round), compile (synthesize report). The skill itself does not fetch the web — it tells the host agent which fetches to perform via OpenSquilla's existing web tools, and records what comes back.

docxSkill

Read, edit, or create Microsoft Word `.docx` files. Trigger this skill whenever the user mentions a Word document, .docx file, contract, report, brief, memo, or asks to extract text, modify an existing doc, generate one from a brief, or audit tracked changes. Three execution paths: text-and-structure extraction, in-place edit-by-run (preserves styles), and create-from-scratch with python-docx. Falls back to OOXML unzip-and-patch for layout work python-docx cannot reach.

git-diffSkill

Capture the current git diff (staged, working-tree, or staged file list) as text. Direct shell call for workflows that need repository diffs without an LLM agent loop.

githubSkill

GitHub operations via `gh` CLI: issues, PRs, CI runs, code review, API queries. Use when: (1) checking PR status or CI, (2) creating/commenting on issues, (3) listing/filtering PRs or issues, (4) viewing run logs. NOT for: complex web UI interactions requiring manual browser flows (use browser tooling when available), bulk operations across many repos (script with gh api), or when gh auth is not configured.

history-explorerSkill

Query the per-turn DecisionEntry log for skill co-occurrence patterns, meta-skill usage stats, and the router fixture corpus. Returns a JSON summary suitable for downstream LLM consumption. Used by meta-skill-creator's harvest step but also useful standalone for 'which skills did I use most this week?'