Get watched: 10 AI skills for short-form video

script-45s

a 45-second script that lands with the sound off

How the two work together

Claude thinks it through. Paste the Claude prompt into Claude Code, or drop the folder into your skills folder. Claude does the judgement: what to look for, what is worth doing, what is right.

Codex gets it done. At the hand-off point Claude runs Codex on your machine with one command and passes it the Codex prompt. Codex does the mechanical part and hands the result back. Claude checks it before you see it.

No API key to set up: Claude calls the Codex you already have installed. If Codex is not installed, Claude does that half itself and tells you.

Prompt for Claude

---
name: script-45s
description: Writes a 45-second short-form script that lands with the sound off: retention structure, muted-first captions, timed shot list. Use for any Reels, Shorts or TikTok script.
---

# A 45-second script that lands with the sound off

One timed script, readable on mute, a shot and on-screen line per beat.

## Claude does

1. Ask five things: the ONE idea, the audience, the outcome for the viewer, the proof you own (number, demo, before/after), the platform. Never invent the proof. No proof, no script.
2. Set length. 45s is the brief; 50-60s is the reach sweet spot in Galloway's 5,400-Short study. Budget ~75 spoken words per 30s, so 110-120.
3. Write the hook as three tracks in seconds 0-3: spoken line, on-screen text, opening visual. Hoyos caps it at 3 seconds. Read it muted; if the text alone does not hold, rewrite.
4. Structure: hook 0-3s, foreshadow the conflict 3-8s, 3-4 delivery beats with a but/then turn between each 8-38s, payoff 38-45s. Every second justifies itself. Place the reveal, never spend it. Emotion peaks last.
5. Mark a visual change every 2-4 seconds and write its shot. Score on the claude-shorts rubric: hook 0.30, coherence 0.25, emotional intensity 0.20, value density 0.15, payoff 0.10. Under 60, rewrite first.
6. Strip banned voice: no em dashes, no leverage, fundamentally, delve, harness, "hey guys".
7. Fill {SCRIPT_JSON}, {PLATFORM}, {CAPTION_STYLE}, then hand over.

## Then Codex does

Codex builds out the approved script: two-column AV table, timecode grid, caption chunking into two-line blocks inside a 900x1400px centred safe rectangle, the other two platform variants with encode specs, three alternative hooks. Repetition across platforms, not judgement.

```
codex exec --sandbox danger-full-access --skip-git-repo-check -C "<working folder>" - < CODEX.md
```

Claude fills first: {SCRIPT_JSON} (approved beats, timings, VO), {PLATFORM} (primary target), {CAPTION_STYLE} (Bold, Bounce or Clean).

## Claude checks

1. Read it with the VO column covered. If the on-screen text alone does not carry the idea, reject. Roughly 80-85% watch on mute.
2. Count words against runtime, ~75 per 30s. Over by more than 10%, rerun.
3. Visual changes land 2-4 seconds apart, no gap over 5 seconds.
4. Trace every number and quote to the proof input. One unsourced figure, reject: the claude-youtube benchmarks are that repo's uncited house numbers, never script claims.
5. No caption above y=120px, below y=1550px, or in the right-hand 164px TikTok action rail.
6. Reject-and-rerun: send back the failing line and the rule it broke. Never patch silently.

## Rules

- Muted first. Write the on-screen text before the voiceover.
- Never present a source's uncited house number as verified data.
- Length is a lever, not a promise. Never sell runtime as a result.
- Public information only.
- Never invent a fact, a number or a quote.
- Anything sent in someone's name says whose name it is.

## If Codex is not installed

Claude does the Codex half itself, same formats, and says so.

## Built from

- social-media-skills/skills, https://github.com/social-media-skills/skills, 66 stars via api.github.com, 5 Sep 2026.
- AgriciDaniel/claude-shorts, https://github.com/AgriciDaniel/claude-shorts, 204 stars via api.github.com, 5 Sep 2026.
- Jenny Hoyos playbook, https://www.marketingexamined.com/blog/jenny-hoyos-short-form-video-playbook, ~10M views per Short, interviewed by YouTube's Shorts lead.
- MrBeast production handbook, https://simonwillison.net/2024/Sep/15/how-to-succeed-in-mrbeast-production/, leaked 36-page internal document (Fortune).
- Verizon/Publicis captions study, https://www.3playmedia.com/blog/verizon-media-and-publicis-media-find-viewers-want-captions/, 5,616 US adults surveyed.

Prompt for Codex

# A 45-second script that lands with the sound off - Codex task

Format an already-approved short-form script. Do not rewrite the idea or add facts.

## You are given

- **{SCRIPT_JSON}** - ordered beats, each with `start`/`end` in seconds, `vo` (spoken line), `text` (on-screen words), `shot` (what is on camera). Runtime 45s unless stated.
- **{PLATFORM}** - primary target: `shorts`, `reels` or `tiktok`.
- **{CAPTION_STYLE}** - `Bold` (ALL CAPS, yellow highlight on the key word, spring pop-in), `Bounce` (70-120-100% scale) or `Clean` (white fade-in with drop shadow).

## Produce

Four files in the working folder:

1. **`script-timed.md`** - two-column AV table, one row per beat: `VIDEO` (the shot, tagged `[Action]`) and `AUDIO` (tagged `[VO]`, `[SFX]`), plus a `TC` column, `mm:ss.s - mm:ss.s`. Underneath, the spoken word count and words-per-30-seconds.
2. **`captions.md`** - each on-screen block chunked to 2 lines and 6 words per line max, with in/out timecodes, an X/Y anchor on a 1080x1920 frame, and the {CAPTION_STYLE} name. Every anchor sits inside a 900x1400 centred rectangle, block between Y=1200 and Y=1550.
3. **`shotlist.md`** - one row per visual change: shot number, timecode, framing (wide, medium, close, insert), location, A-roll or B-roll. Then a `BATCH BY` heading grouping rows by location and framing.
4. **`variants.md`** - the script re-cut for the other two platforms. Per platform: safe-zone Y range (Shorts top 120px, bottom 300px, right 48px; Reels top 108-220px, bottom 310-450px, right 120px; TikTok top 130px, bottom 320-350px, right 120-164px), encode spec (all 1080x1920; Shorts H.264 High 4.2, 12 Mbps, AAC 192k; TikTok CRF 18, AAC 128k; Reels 4.5 Mbps max, AAC 128k), and any beat whose text must move to clear that rail. Then three alternative hooks for seconds 0-3, as three tracks.

## Rules

- Change no wording in `vo` or `text` except to chunk it. If a line will not fit, flag it, never reword.
- Invent no numbers, statistics, quotes or claims. Carry every figure through exactly.
- Never let a gap between visual changes exceed 5 seconds.
- No em dash characters anywhere in the output.
- Banned in any new text: leverage, fundamentally, delve, harness, "hey guys". A number beats an adjective.
- British English.
- If a placeholder is still literally `{SCRIPT_JSON}`, `{PLATFORM}` or `{CAPTION_STYLE}`, stop and print `MISSING INPUT: <name>`. Never guess.

## Return

Print to stdout, in order:

1. `FILES:` the four filenames.
2. `WORDS:` spoken word count, `WPM30:` words per 30 seconds.
3. `RUNTIME:` the last beat's end time.
4. `MAX_GAP:` longest gap between visual changes.
5. `CAPTION_BOUNDS:` `OK` if every anchor is inside the rectangle, else each offending beat with its X/Y.
6. `UNSOURCED:` every number, statistic or quote in the output, or `NONE`.

Built from the best public work on this

Sources

  • **social-media-skills/skills** - https://github.com/social-media-skills/skills - 66 stargazers_count read from api.github.com on 5 September 2026 (created 16 Jul 2026, pushed 3 Sep 2026, actively maintained). 106 skill directories confirmed by listing `/contents/skills` via the API. Its `short-form-video-script` skill supplies the numbers this skill runs on: ~75 words = 30 seconds, a visual change every 2-4 seconds, ~80-85% of viewers watching on mute, burned-in captions lifting retention ~15-25%.
  • **AgriciDaniel/claude-shorts** - https://github.com/AgriciDaniel/claude-shorts - 204 stargazers_count from api.github.com on 5 September 2026 (created 16 Feb 2026, pushed 11 Jul 2026). Publishes a weighted scoring rubric with real weights (hook strength 0.30, standalone coherence 0.25, emotional intensity 0.20, value density 0.15, payoff quality 0.10, minimum score 60), per-platform encode specs and three named caption styles. It renders actual video rather than advice, which is the evidence it works.
  • **Jenny Hoyos short-form playbook** - https://www.marketingexamined.com/blog/jenny-hoyos-short-form-video-playbook - roughly 10 million views per Short and 3 million subscribers, and YouTube itself put her on stage with Shorts product lead Todd Sherman for its own deep dive. Source of the 3-second hook ceiling, the shock-intrigue-satisfy formula, foreshadowing the conflict immediately after the hook, the but/then device, and the rule that the viewer judges the whole video by the intensity of the final emotion.
  • **MrBeast, "How to Succeed in MrBeast Production"** - https://simonwillison.net/2024/Sep/15/how-to-succeed-in-mrbeast-production/ - the leaked 36-page internal handbook (August 2024), covered by Tubefilter, Fortune and Cybernews. Source of the doctrine that every second must justify its existence and that a reveal is placed rather than spent.
  • **Verizon Media / Publicis Media captions study, via 3Play Media** - https://www.3playmedia.com/blog/verizon-media-and-publicis-media-find-viewers-want-captions/ - survey of 5,616 US adults aged 18-54, April 2019. 80% say they are more likely to watch an entire video with captions; 50% say captions matter because they usually watch with the sound off. This is the sampled study behind the muted-first drafting order that the skill repos assert without citing anything.

Best public prompt we found for this job

https://github.com/social-media-skills/skills - the `short-form-video-script` skill. It is the only public prompt that states the muted-first constraint as a hard drafting rule with the word budget attached, rather than as advice: "~75 words = 30s", "visual change every ~2-4s", "~80-85% watch on mute". Read it alongside `scripting-and-storyboarding` in the same repo for the two-column AV script format and the `[VO]` / `[SFX]` / `[Action]` tags reused in CODEX.md.

Want this running in your business?

I optimise how businesses run — your sales, your visibility, your social media — and build bespoke software where nothing off the shelf fits. The first conversation is free. Work starts from £150 a day.