agentleFS
moses607moses607/socialforge/skills/viral-script-generator/SKILL.md

viral-script-generator

Skill3 starsChanged 4 months agoMITView on GitHub

Writes short-form video scripts engineered for watch-time and completion, not just clever lines. Produces a shot-by-shot table pairing spoken lines, on-screen text, and B-roll direction with retention beats every 5-7 seconds. Use when the user asks to "write me a script", "turn this idea into a video", or mentions a reel, short, story, TikTok, or video. Trigger on script/video/reel/short/story requests. Works with any capable model.

The file

We split this skill into the rules it gives an agent

2 rules. About 0 are common, 2 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈2

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Never ship the first hook.

    line 53
  2. Distinctive:

    Every open loop must close.

    line 56

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Viral Script Generator

Retention is the only metric that compounds. The algorithm promotes what people finish and rewatch, so every line must earn the next three seconds. A script is not prose read aloud — it is a sequence of engineered beats where spoken audio, on-screen text, and visual all carry different jobs at once. Write for the scrubbing thumb: assume the viewer decides to stay or swipe every few seconds, and give them a reason each time.

1. Build the spine (HOOK → re-hook → escalation → payoff → CTA)

  1. HOOK (0-3s): state the stakes or the promise in the first spoken breath. Lead with the result, the contradiction, or the tension. On-screen text mirrors a sharper version of the hook so muted viewers still get it.
  2. RE-HOOK (3-8s): pay off why they should trust you or add context that raises stakes ("I tested this for 30 days"). Never restate the hook — advance it.
  3. ESCALATION: stack 3-5 value beats, each raising tension or specificity. Plant an open loop early ("the third one broke my assumptions") and close it near the end.
  4. PAYOFF: deliver the promised result. This is the emotional peak — make it concrete and visual.
  5. CTA: single ask, tied to the payoff.

2. Engineer retention beats

  1. Pattern interrupt every 5-7s: cut angle, zoom punch, B-roll swap, sound effect, or text pop. Monotony is the #1 drop-off cause.
  2. Open loops: tease something you resolve later. Never leave a loop unclosed — it kills trust.
  3. Contrast pacing: alternate fast dense lines with one slow deliberate line for emphasis. Vary sentence length.
  4. On-screen text as a second channel: text = keyword or punchline, audio = full sentence. They should never be identical.
  5. Kill dead air: trim every "so", "basically", "um". First frame must be motion or a face mid-sentence, never a slow intro.

3. Pick the arc

  • Before/after transformation: show the pain state, the turn, the result. Best for tutorials, fitness, product.
  • Myth-bust: "You've been told X. It's wrong. Here's why." High save rate.
  • Listicle: "3 things..." — numbered, each item a beat. Promise count in hook, deliver fast.
  • Story/POV: first-person tension, a twist, a lesson. Highest completion when the payoff reframes the opening.

Output template

Idea: <one line> | Arc: <arc> | Target length: <Xs> | Platform: <x>

| # | Time | Spoken line | On-screen text | Visual / B-roll | Beat type |
|---|------|-------------|----------------|-----------------|-----------|
| 1 | 0-3s | <hook line> | <bold hook text> | <shot direction> | HOOK |
| 2 | 3-8s | <re-hook> | <keyword> | <cut/zoom> | RE-HOOK + open loop |
| 3 | 8-14s| <value 1> | <keyword> | <b-roll> | pattern interrupt |
| ...| ... | ... | ... | ... | escalation |
| n-1| ... | <payoff> | <result text> | <peak visual> | PAYOFF + close loop |
| n | ... | <cta> | <cta text> | <face to cam> | CTA |

Caption: <hook-echoing caption + 3-5 tags>

Platform variants

  • TikTok/Reels: 21-34s hits the sweet spot; native captions; trend audio under a voiceover.
  • YouTube Shorts: front-load harder — first 1s is do-or-die; can run to 45-60s if payoff justifies.
  • Stories: 15s segments, one idea each, tap-forward friendly, sticker CTA.

Rules

  • Never ship the first hook. Generate 15+, ship the best 1-3. The hook must be true to the payoff or retention and trust collapse.
  • Spoken line and on-screen text carry different loads — never duplicate them word-for-word.
  • One idea per video. If it needs two, it's two videos.
  • Every open loop must close. No exceptions.
  • Cut the intro. Start mid-action, first frame in motion.
  • Match CTA aggression to the platform: soft ("comment X for the link") for reach, hard ("link in bio") for conversion. Comment-bait a genuine question, never a fake one.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.