All skills

video (smixs/visual-skills)

smixs video skill: richer, more directed prompts, but keyword checks score it lower and it costs 2.8x the tokens; no video was generated

SituationalSafe

20.8 / 30

Lift over no skill: -0.47

Situational: the total 20.8/30 is under 22 and the lift -0.47 is under +1.0. Recommended needs a total of 22/30, output quality of 3.5, and a lift of +1.0.

SOTA

Pass

Tested with Codex.

Covers Codex, Claude Code

Codex CLI 0.166 (SOTA tier): 18 graded runs. A pass here also covers Claude Code under our tier rule; it says nothing about the second tier.

Scores

Each dimension is 0 to 5 and the six add up to the total out of 30. 5 is better on every dimension. Cost 5 means cheap and fast. Install 5 means easy.

Trigger reliability
5.0
Lift over no skill
1.5
Output quality
4.3
Token and time cost
1.0
Install and portability
4.0
Safety
5.0

Security review

Safe

Static scan: 0 CRITICAL / 0 HIGH / 0 MEDIUM. Manual review: safe to run (no-network sandbox). A clean scan does not prove a skill safe.

Install

npx skills@latest add smixs/visual-skills --skill video

Source

Pinned commit: 92be33a5a73325fb3d8e0c73b22744b114e2a90e

Tested: 2026-11-02

What we tested

  • Prompts for a 15 s teaser — Write the generation prompts to make a 15-second, 16:9 product teaser for Tidepool, a monthly seaweed-snack subscription ($14 per box), with an AI video generator (Seedance). If one generation cannot cover 15 seconds, split it into clips and say how long each…
  • Prompt for an 8 s cinematic shot — Write the generation prompt for an 8-second cinematic 16:9 shot of a small paper boat on a rain-streaked window sill at dusk, for an AI video generator (Kling). One continuous shot, no cuts. Work autonomously; no questions. Save the result to prompts.md (copy-…
  • Prompts for a 30 s vertical short in clips — Write the generation prompts for a 30-second vertical 9:16 social short for Tidepool (seaweed snacks, $14 per box) for an AI video generator whose clips are at most 10 seconds long. Captions to appear (added later): Meet Tidepool. / Seaweed snacks, crisp and s…

Pros

  • The skill was picked up without being named: Skill file read in 6/6 treatment runs.

Cons

  • No measurable lift over no skill (-0.47, inside the noise).
  • A one-sentence prompt scored 4.69, against 4.3 with the skill (-0.39).
  • Uses 2.76x the tokens of no skill.
  • n=2 per task per arm; differences under about 1 point are noise.

Review

Codex CLI 0.166 (gpt-6-astra, low reasoning) on a Mac test machine, a fresh temporary project and temporary HOME/TMPDIR/caches per run, skill installed (treatment) or absent (control) or absent with the skill's core requirement squeezed into one sentence appended to the prompt (one-liner group), 2 runs per group per task, network off, /tmp writes blocked. The prompts never mention the skill (except the wording noted below). This skill produces prompts for external generators (Seedance, Kling), so we scored the prompts. No video file exists for this skill: generating one needs a Seedance/Kling/Veo account and key, which we did not use.

Three-arm comparison

ArmMean score (0-5)Tokens per run
Without the skill4.7762k
One-sentence prompt4.6951k
With the skill4.3172k

Measured with Codex CLI over 18 runs, scored by rule-based checks with no LLM judge. Total 20.8 / 30, verdict Situational.

Verdict: Situational (20.8 / 30). Source: smixs/visual-skills, video, pinned at commit 92be33a. Install: npx skills@latest add smixs/visual-skills --skill video. Licence: CC-BY-4.0.

What it is

The video skill from smixs/visual-skills (CC-BY-4.0, attribution required): it makes the agent act as director, screenwriter and editor when writing prompts for AI video generators (Seedance, Kling, Veo and similar). SKILL.md is thin by design (about 1,400 words) and orders the agent to read dramaturgy.md, universal-rules.md and one model-specific file (Seedance, Kling or Veo) before writing. Markdown only: 12 reference files, no scripts. It writes prompts; it does not render video.

How we tested

Codex CLI 0.166 (gpt-6-astra, low reasoning) on a Mac test machine, a fresh temporary project and temporary HOME/TMPDIR/caches per run, skill installed (treatment) or absent (control) or absent with the skill's core requirement squeezed into one sentence appended to the prompt (one-liner group), 2 runs per group per task, network off, /tmp writes blocked. The prompts never mention the skill (except the wording noted below).

This skill produces prompts for external generators (Seedance, Kling), so we scored the prompts. No video file exists for this skill: generating one needs a Seedance/Kling/Veo account and key, which we did not use.

  1. Prompts for a 15 s teaser — Write the generation prompts to make a 15-second, 16:9 product teaser for Tidepool, a monthly seaweed-snack subscription ($14 per box), with an AI video generator (Seedance). If one generation cannot cover 15 seconds, split it into clips and say how long each…
  2. Prompt for an 8 s cinematic shot — Write the generation prompt for an 8-second cinematic 16:9 shot of a small paper boat on a rain-streaked window sill at dusk, for an AI video generator (Kling). One continuous shot, no cuts. Work autonomously; no questions. Save the result to prompts.md (copy-…
  3. Prompts for a 30 s vertical short in clips — Write the generation prompts for a 30-second vertical 9:16 social short for Tidepool (seaweed snacks, $14 per box) for an AI video generator whose clips are at most 10 seconds long. Captions to appear (added later): Meet Tidepool. / Seaweed snacks, crisp and s…

Scoring is programmatic (hidden tests / planted-issue recall / constraint checks / render+OCR where relevant), 0–5 per run. No LLM judge decided any score. The checks are keyword and structure checks on prompts.md (for example 'names a camera move', 'mentions sound', 'puts a duration on every clip', 'says no cuts'). They cannot judge whether a prompt would produce a better film.

Results

The one-liner given to the third group: "Write each clip prompt like a director: lead with the subject and its action, give one concrete camera move and lens, lighting and the final image, keep the same named character/product anchor in every clip, and put the duration in seconds on every clip."

TaskControl scoreOne-linerWith skillControl tokensOne-liner tokensWith-skill tokensSkill read
t1-teaser4.754.54.2583k51k232k2/2
t2-boat4.564.563.8946k45k138k2/2
t3-vertical5.05.04.7557k56k143k2/2

Mean score: 4.77 without vs 4.3 with the skill (delta -0.47). Tokens per run: 62k vs 172k (2.76x); time 76s vs 126s. One-liner group: 4.69 (the skill's gain over the one-liner: -0.39; one-liner's own gain over no skill: -0.08); one-liner tokens 51k per run, so the skill costs 3.35x the one-liner.

What happened

  • By the keyword checks the skill came out slightly behind: mean 4.30 with the skill, against 4.77 with no skill and 4.69 with the one-line version. The gap comes mostly from the 8-second paper-boat prompt (4.11 and 3.67 against 4.56 in all four other runs), then from the teaser (4.25 against 4.75: it missed timecoded shots and the price-as-overlay note in places) and one clip plan that did not name camera moves.
  • Part of that gap is a difference in taste, not an error. In the boat task both skill runs chose a locked-off camera so that one small action (a drop landing on the bow, two drops merging) carries the shot; the checker looks for words such as 'push-in' or 'dolly' and marked that as a missing camera move. Neither skill run mentioned sound, which the checker also wanted.
  • The outputs do look different. Skill runs lay out a three-clip plan with per-clip beats, name the target model and its settings (duration, resolution, camera_fixed), keep one character/product anchor across clips and say what is added later in editing. No-skill runs on the teaser also gave full timecoded prompts, with audio and voice-over lines, and were not worse by any check; the one-liner runs were shorter (about 900 words against 1,300-1,500).
  • The skill is read every time (6/6) and the cost is high: 172k tokens per run against 62k without the skill (2.8x) and 51k with the one-liner (3.4x), 14 commands against 3, and about 1.7x the time. The agent reads about six reference files before writing a single prompt.
  • The one-line version was as good as no skill by these checks (4.69 against 4.77, within noise) at 0.8x the tokens.

Dimension scores

DimensionScoreWhy
1_output_quality4.3

Mean score 4.30/5 with the skill (programmatic checks, see per-task table).

2_lift_vs_no_skill1.53

-0.47 points vs 4.77 without the skill (n=2 per task; under ~1 point is noise).

3_trigger5.0Skill file read in 6/6 treatment runs.
4_instructions_portability4

Pure Markdown, works in any agent; the mandatory multi-file reading order is long, and it expects a human to run the generator.

5_efficiency1

2.76x tokens (172k vs 62k per run) and 1.64x time (126s vs 76s).

6_safety_hygiene5

Markdown only, no scripts or network calls; scan clean; CC-BY-4.0 attribution required.

Limits of this test

  • No video was generated, so we cannot say whether the skill's prompts produce better films; the scores measure prompt features only.
  • The keyword checks penalise a legitimate style choice (locked camera) and ignore prompt quality; treat the 0.47-point gap as weak evidence.
  • Three prompt tasks (15 s 16:9 teaser, 8 s cinematic shot, 30 s vertical split into clips); character-consistency across generations, image-to-video and editing modes were not tested.
  • CC-BY-4.0: reuse requires crediting Serge Shima.
  • n = 2 per group per task: differences under about 1 point are noise.
  • Rule-based scoring measures what the checks can see; it cannot judge taste or whether a result is the best possible.

Security

See security.md. Scan: 0 CRITICAL / 0 HIGH / 0 MEDIUM. Verdict: safe to run (no-network sandbox). A clean scan does not prove a skill safe.

Bottom line

A careful, directorial prompt-writing guide that makes the agent plan clips, anchors and settings, but our keyword checks could not show an advantage, and it costs about 2.8x the tokens of simply asking. Worth trying if you will actually feed the prompts to Seedance, Kling or Veo and compare films; we could not do that part.

Transcript

Run log for video: Codex CLI, network off, per-run temp HOME/TMPDIR, one row per graded run.
Columns: task, arm-run, score (0-5), tokens, seconds, checks passed, skill files the agent opened.

t1-teaser control-1: score 5.0, tokens 84314, secs 105.5, checks 2/2, opened nothing
t1-teaser control-2: score 4.5, tokens 82105, secs 77.9, checks 2/2, opened nothing
t1-teaser oneliner-1: score 4.5, tokens 51242, secs 67.5, checks 2/2, opened nothing
t1-teaser oneliner-2: score 4.5, tokens 52535, secs 66.3, checks 2/2, opened nothing
t1-teaser treatment-1: score 4.5, tokens 230902, secs 169.1, checks 2/2, opened video
t1-teaser treatment-2: score 4.0, tokens 233869, secs 151.6, checks 2/2, opened video
t2-boat control-1: score 4.56, tokens 46582, secs 42.1, checks 2/2, opened nothing
t2-boat control-2: score 4.56, tokens 45733, secs 43.6, checks 2/2, opened nothing
t2-boat oneliner-1: score 4.56, tokens 45515, secs 43.2, checks 2/2, opened nothing

18 runs, 3 artifacts

Sample output

SOTA · With the skill: prompts.md (t1-teaser, run 1, Codex)

# Tidepool — Your monthly crunch **Deliverable:** 15 seconds, 16:9. Generate **three 5-second clips**, then join with hard cuts. Target **Seedance 1.0 Pro**: the [fal endpoint documentation](https://fal.ai/models/fal-ai/bytedance/seedance/v1/pro/text-to-video/api) lists durations up to 12 seconds, so this selected endpoint requires multiple generations. Other Seedance versions may have different limits. For each generation, set **duration: 5 seconds; aspect ratio: 16:9; resolution: 1080p** in the interface/API. Set camera_fixed to false for clip 1 and true for clips 2–3. Copy each fenced prompt separately. Add the exact typography and soundtrack specified below during assembly. Concept: anticipation → crisp seaweed snap → monthly subscription invitation. Five creative anchors: anticipation; a cream wave motif; the teal box; the snap; a held product-and-offer end frame. The closed box is the initial barrier; opening it reveals the snack. Packaging is a proposed visual concept, since no brand assets were supplied. No pack quantity or flavor is implied. | Timeline | Clip | Function | |---|---|---| | 0–5s | Open the tide | Box opens; pouch is revealed. | | 5–10s | The crunch | Seaweed snaps; pieces settle onto a plate. | | 10–15s | Your monthly box | Product holds beside the offer. | ## Clip 1 — Open the tide — 5 seconds ```text A matte deep-teal rectangular seaweed-snack mailer opens on a sand-colored tabletop, revealing a matching snack pouch. Product identity: a single cream wave graphic across the box lid; matching teal pouch with the same cream wave and a plain cream rectangular label panel. Packaging surfaces are otherwise unlettered. Hands belong to one adult with medium-brown skin, short natural nails, bare wrists and ivory cotton sleeves. Only hands and forearms enter the frame. Generate a 5-second, 16:9 photoreal food-commercial sequence with two distinct shots and one visible hard cut. The opening reveals what was hidden. 0.0–3.0 seconds: 50mm close three-quarter view, box centered, hinge at the rear. The left hand braces the front-left corner while the right hand raises the lid upright. Fingers briefly tighten against the cardboard before it releases. A short, slow push-in follows the reveal and stops when the lid is open. A matching snack pouch stands inside, its lower portion concealed by the front wall. Raking daylight exposes the paper fibers and cream wave. Cut to. 3.0–5.0 seconds: locked 85mm close-up above the front rim. The right thumb presses a small crease into the pouch as the fingers grasp its upper edge and lift it a few centimeters. End with the pouch partly lifted above the open box, cream wave visible. Environment and style: dry sand-colored tabletop, seamless pale seafoam background. Soft daylight from upper frame-left; gentle white fill from frame-right. Deep teal, cream, seafoam and natural dark olive palette. Real cardboard fibers, matte pouch material and natural skin texture. Preserve box proportions, wave graphic, pouch design, hands and sleeves across shots. Keep packaging dry. Clean picture for later typography and sound. Exactly 5 seconds, landscape 16:9, 1080p. ``` Cut from the raised pouch to the [... excerpt: first 3200 of 8872 characters]

See Pro