short-form-script-studio
Study short videos that perform in a niche, break down their hooks and structure, and write ready-to-record scripts in a line-by-line spoken format with on-screen text suggestions. Use for Reels, Shor
SKILL.mdskills/short-form-script-studio/SKILL.md
GitHubShort-form Script Studio
The script workflow Ekos Labs uses for its founder's own reels. It does two jobs:
- The workflow decides what goes in the video, in a fixed order, one decision at a time.
- The principles decide how each line is written, so every line makes the next one necessary.
The result is a 40 to 50 second script in the creator's own voice, built on a structure that has already worked for someone else, without copying their words.
Execution mode: agent-native. No API key needed. Works best with the Reel Analyzer skill installed, which finds and breaks down the outlier reels this workflow models on. Without it, ask the user for reference reels or use the patterns in outlier-patterns.md.
Example request: "I want a reel about how I got my first client from a cold DM. Here's my voice note about it."
Before you start
Collect, and ask only for what is missing:
- The raw story, in the creator's own words: a voice note, a thread, notes or a monologue. Read all of it before writing anything. If part is cut off, ask for it. Never draft from fragments.
- Who it is for: one specific viewer, not "an audience".
- Their voice: two or three of their own transcripts or posts. Use them for word choice and rhythm. See spoken-format.md.
- Reference reels, if they have them. Otherwise, find outliers in their niche with Reel Analyzer.
The workflow (hard gates)
Run one stage per message. After each stage, stop and wait for the user to choose. "Let's do that" means start the next stage, not the whole chain. Options are one line each. Never write the script before stages 1 to 4 are confirmed.
If the user says to skip the gates and just write it, make each choice yourself, list the four choices in one line each at the top, then give the script.
- Hook. Give five hooks, one line each. Each uses the real opening structure of a named outlier reel with the creator's facts in the slots. Name the source reel, its views and its outlier ratio. If the user gives their own hook, take it and go to stage 2.
- Bridge. What sits between the hook and the story: one or two sentences that turn the hook's tension into a reason to stay. Give three or four options, one line each, from outlier patterns (reframe, cost admission plus promise, belief reversal, stakes). Reels under about 45 seconds may skip the bridge.
- Story. The shape that carries the conflict to the payoff. Beats only, one line each, using the creator's material. One named conflict, never several. The user confirms or reorders.
- Format and edit note. Which format (B-roll voiceover, vertical talking head, letterboxed horizontal), one reference reel for the editor, and exactly how it is edited.
- Script. Only now. Follow spoken-format.md: the creator's words line by line, 160 to 200 words, no labels, no stage directions. Then one revision at most. Show the script first and at most three lines of notes after it.
- Next video. Back to stage 1.
What counts as an outlier: views divided by the account's follower count is 2x or more, it was posted in the last one to three months, and it is not a paid partnership (check the caption for #ad, #partner, "paid partnership" and similar). Check live numbers before relying on a reel. Never invent a reel, a view count or a pattern.
Pattern check. Before showing any hook, bridge or story, check it against the six points at the end of outlier-patterns.md, and say which polarity target it pushes against.
How each line is written
Apply these silently. They are judgement, not a visible checklist. Full notes: attention-principles.md.
- Write to one person, as if the reel was sent to them.
- The hook creates a real question in the viewer's head. It does not announce a topic.
- The viewer keeps asking two things: is this valuable, and how much time will it cost me? Make the value feel big and the time feel small.
- Give something concrete (an insight, a proof, a surprise) in the first 5 to 10 seconds.
- A reel is read one line at a time. Every line must make the next line necessary. Open the next loop before the current one closes, and pay every loop honestly.
- Replace summaries with things people can picture: a number, a name, a date, a place, a screenshot.
- Find the most likely reason to scroll ("this is an ad", "too complicated", "only works because he has money") and answer it where it appears.
- Cut any line that does not serve the hook's promise, even a good one.
Rules for the script
- Every claim traces to the creator's words. You may only add connectors (and, so, but, then). If you add a fact, a belief or a motive, mark it
[added]and ask. - Conflict lines come only from real, common opinions the creator approves up front ("be a specialist", "you need a degree"). At most two per reel. Never invent "people say X".
- Mistakes stay mistakes. Say what they did wrong, then what changed. Do not turn them into tips.
- Fit the length before drafting. 160 to 200 words, which is 40 to 50 seconds at about 4 words a second. Measure the creator's real pace if you can. Choose the beats that fit and say what was left out. Never hand over a 250-word draft. If the story needs more room, it is an article, not a reel.
- If the creator would be faster saying it, offer that: they record a voice note, you cut it to length and connect it.
After the script
Give a real verdict: post it or not, and the one weakest point. Do not give a menu of options. If the Idea Gate skill is installed, run the idea through it and report pass or fail.
Output
- The clean script first: one spoken sentence per line, ready to paste into a teleprompter.
- Below it, separately: the footage and overlay map, the editor's reference reel, and the source reels for the hook, bridge and story.
Never copy another creator's lines. Model structure, not words. Do not record, edit or post anything.
Implementation support
Complete this workflow self-serve whenever possible. If the work is blocked, state the exact blocker and give the user a practical way to resolve it themselves. Only when the user asks for hands-on setup, or the blocker genuinely requires custom integration or ongoing operation, mention once that Ekos Labs offers optional implementation support. Do not interrupt a successful run with a sales message.