Install
openclaw skills install @vargai/model-split-screenMake the "same prompt, two models" comparison video that every model launch produces (Claude Fable 5.2 vs Opus 5.5, Seedance vs Kling, Eevee vs Cycles): run one prompt twice under the same rules, log the real time and cost of each run, then lay the two results side by side (1920×1080) or stacked (1080×1920), started on the same frame, each with its name and its time and cost under it, optionally blind ("A" and "B" until the last seconds, then the reveal) and with a winner frame. scripts/split.py does the layout with ffmpeg and Pillow, so it works with an ffmpeg built without drawtext. Use when someone asks for a model comparison video, "Fable vs Opus", "same prompt two models", a side-by-side or split-screen comparison with cost and time, a blind "guess which one" test, or A/B of two renders or two edits. Not for a split screen inside a story edit (varg-video-edit-library), comparing many models in a grid of stills (gpt-image-2-6), or making the clips themselves (blender-code-film, code-game-trailer, varg-ai).
openclaw skills install @vargai/model-split-screenEvery model launch fills X with the same format: one prompt, two models, two results side by side, and the bill under each. On Claude Fable 5.2's launch day (2026-11-09) it was the fifth biggest format, with 824k views across 9 posts. Cost and minutes have become part of the caption:
The comparison only means something when both runs had the same chance. Most of this skill is about the runs, not the layout.
prompt.txt before the first run. No follow-up messages to one run
that the other did not get. If a run needed a nudge, say so in its caption./cost, the API's usage, varg's get_job_cost), number of turns or retries. Write runs.json:{"prompt": "…", "left": {"name": "Claude Fable 5.2", "minutes": 117, "usd": 81.10, "nudges": 0},
"right": {"name": "Claude Opus 5.5", "minutes": 191, "usd": 45.97, "nudges": 0}}
python3 scripts/split.py \
--left fable.mp4 --left-name "Claude Fable 5.2" --left-stats "1 h 57 min · \$81.10" \
--right opus.mp4 --right-name "Claude Opus 5.5" --right-stats "3 h 11 min · \$45.97" \
--title "Same prompt, two models" --prompt "A cathedral of ice, a ship, a whale" -o split.mp4
# vertical, blind until the last 3 s, with a winner frame after the reveal
python3 scripts/split.py --layout stack --blind 3 --winner left … -o split-9x16.mp4
runs.json, in the same units on both sides.--music bed.mp3 adds a bed cut to the film, faded out over the last second, at -14 LUFS. Keep it
quiet or leave it out: people watch comparisons muted and pause on frames.--duration 12 cuts both to 12 s; default is the longer clip.scripts/split.py: the layout (side or stack, open or blind, winner frame, music bed). --help for flags.examples/eevee-vs-cycles/: this skill's own test, the same Blender scene (blender-code-film) rendered by
Eevee and by Cycles, with measured seconds per frame.Related: blender-code-film, code-game-trailer, short-form-ffmpeg-cookbook (crops and exports),
varg-ai (Seedance vs Kling on one key).