Script the first 1-3 second TikTok hook: the spoken line
TikTok Hook Scripter

Script the first 1-3 second TikTok hook: the spoken line, the on-screen text, and the opening visual firing at once so the viewer cannot swipe. Picks a 2026 hook formula (cold-open result, pattern interrupt, number reveal, open-loop…
--- name: tt-hook-scripter description: "Script the first 1-3 second TikTok hook: the spoken line, the on-screen text, and the opening visual firing at once so the viewer cannot swipe. Picks a 2026 hook formula (cold-open result, pattern interrupt, number reveal, open-loop question, relatable call-out, story) by goal of completion, saves, comments, or shares. The single biggest retention lever on TikTok. Use to script a hook from a video idea. Not for the caption (use tt-caption-writer) or scrubbing a script (use tt-humanizer)." --- # TikTok Hook Scripter Write the first 1 to 3 seconds of a TikTok video: the spoken line, the on-screen text, and the opening visual, all firing at once. This is the single biggest lever on the whole platform. TikTok's ranker runs on completion rate, and a viewer decides to stay or swipe before second three. If the hook does not win, nothing downstream gets watched. ## When to use - User has a video idea and needs the opening to stop the scroll - User's videos "die in the first second" and they want a stronger open - User wants to pick a proven hook shape and fill it with their own angle
Overview
Write the first 1 to 3 seconds of a TikTok video: the spoken line, the on-screen text, and the opening visual, all firing at once. This is the single biggest lever on the whole platform. TikTok's ranker runs on completion rate, and a viewer decides to stay or swipe before second three. If the hook does not win, nothing downstream gets watched.
Manual install (npx, ZIP)
npx skills add sergebulaev/tiktok-skills --skill tt-hook-scripter -g -a claude-codemkdir -p ~/.claude/skills && curl -sL https://codeload.github.com/sergebulaev/tiktok-skills/tar.gz/edffc4f7b663 \
| tar -xz -C ~/.claude/skills --strip-components=4 tiktok-skills-edffc4f7b663/.codex-marketplace/tiktok-skills/skills/tt-hook-scripterNew-Item -ItemType Directory -Force "$HOME\.claude\skills" | Out-Null; Invoke-WebRequest "https://m.agentalley.io/zip/803234c5c33f8f8f0e2c/tt-hook-scripter.zip" -OutFile "$env:TEMP\tt-hook-scripter.zip"; Expand-Archive "$env:TEMP\tt-hook-scripter.zip" -DestinationPath "$HOME\.claude\skills" -ForceConnects with Agent Alley MCP · agentalley.io/mcp
Files included
SKILL.md6.4 KBreferences/1 file · 3.2 KB
Read the files here
sergebulaev/
Shared references3SKILL.md reads these from elsewhere in the repo. Not in the ZIP.
- algorithm-heuristics.md.codex-marketplace/tiktok-skills/references/8.1 KB
- hook-formulas.md.codex-marketplace/tiktok-skills/references/12.1 KB
- voice-profile.md.codex-marketplace/tiktok-skills/references/1.6 KB
Show the full text128 lines
TikTok Hook Scripter
Write the first 1 to 3 seconds of a TikTok video: the spoken line, the on-screen text, and the opening visual, all firing at once. This is the single biggest lever on the whole platform. TikTok's ranker runs on completion rate, and a viewer decides to stay or swipe before second three. If the hook does not win, nothing downstream gets watched.
When to use
- User has a video idea and needs the opening to stop the scroll
- User's videos "die in the first second" and they want a stronger open
- User wants to pick a proven hook shape and fill it with their own angle
- Before filming, to lock the spoken line and the on-screen text
What this skill produces
For one video idea, a ready-to-film hook block:
- Spoken line (what you say to camera in the first 1-3 seconds)
- On-screen text (the muted-first promise, 3 to 7 words)
- Opening visual (what is in frame one: result, tension, or interrupt)
- The formula used and its primary goal
- A loop-close note (how to end the video so it restarts for a rewatch)
It does not write the caption (hand to tt-caption-writer) or the full body
script beat-by-beat unless asked; it locks the open, which is where retention is
won or lost.
Formulas this skill uses
| Code | Formula | Primary goal | Best for |
|---|---|---|---|
| T1 | Cold-Open Result | completion | show the finished outcome first, promise the how |
| T2 | Pattern Interrupt | completion | break the expected frame so the thumb stops |
| T3 | Specific-Number Reveal | saves | one odd, concrete number that reframes the topic |
| T4 | Open Loop Question | comments | ask the exact question the video answers |
| T5 | Relatable Call-Out | shares | a hyper-specific shared moment worth sending |
| T6 | Bold Claim, No Hedge | comments | a flat contrarian claim the comments will argue |
| T7 | Listicle Promise | saves | a numbered payoff with on-screen counters |
| T8 | Story In Medias Res | completion | drop into the peak of a real story |
| T9 | Tutorial Cold Start | saves | start step one with the result previewed |
| T10 | Trend-Ride With A Twist | shares | a trending sound bent to your niche |
Full skeletons (three layers each) in ../../references/hook-formulas.md.
Pick by goal first
| Goal | Reach for |
|---|---|
| Completion | T1, T2, T8 |
| Saves | T3, T7, T9 |
| Comments | T4, T6 |
| Shares | T5, T10 |
Steps
Voice profile first (all drafts). If ../../references/voice-profile.md has filled: yes, load it and match the user's voice fingerprint, hard rules, and CTA/link style throughout. If it is not filled, mention once that tt-humanizer --mode profile can learn their voice from a few posts, then proceed with the generic voice rules.
- Gather inputs. The video idea, the niche/audience, the one promise the video delivers, and the goal (completion / saves / comments / shares).
- Pick the formula. Use the goal table to shortlist, then suggest 2-3 that
also fit the idea and let the user choose. For a trend ride (T10), hand the
sound-fit question to
tt-trend-mapperfirst. - Write all three layers. Spoken line, on-screen text, opening visual. The
spoken line and the on-screen text MUST differ (muted-first viewing). Respect
the 2026 rules:
- The result or the tension is in frame one. No greeting, no logo, no zoom.
- One specific number where the claim allows it.
- Say it the way a person talks; read it out loud.
- No AI vocabulary cluster (one marker is a slip; three in the hook is a
script). Em dashes:
..for a breath in the spoken line, at most one on the on-screen card. - No sincerity opener ("not gonna lie", "real talk") and no "Here's what nobody tells you" reveal bridge; say the thing.
- Write the loop-close note. How the last frame should land so a rewatch feels natural (a rewatch is almost a second view).
- Humanizer pass. Run the spoken line through the
tt-humanizerV3 rules to strip script tells before it ever reaches camera: AI vocab by density, stacked triads, reveal bridges, sincerity openers, written-not- spoken phrasing. Make it sayable; never insert a punch line for rhythm. - Approval card. Show: formula, the three layers, primary goal, the loop-close note, and an estimated hook duration.
- Hand off. Offer
tt-caption-writerfor the caption and settings, andtt-content-plannerif they are batching multiple hooks.
Hard rules
Global voice rules: see root SKILL.md Voice rules. Additional skill-specific
rules:
- The hook is the first 1-3 seconds of the video, not the caption. Never let the caption do the hook's job.
- The spoken line and the on-screen text are two different jobs. Do not repeat the same words in both.
- Frame one shows something (result, tension, interrupt). No dead air, no intro.
- One specific number in the hook beats any adjective.
- The hook opens the loop; it never answers itself.
Anti-patterns (skill will refuse)
- "Hey guys" / "welcome back" / "in this video" openers.
- A logo animation or slow zoom before the words start.
- Reading the caption aloud as the hook.
- Promising a result the video never shows on screen.
- ALL CAPS spoken scripts (you cannot shout for 30 seconds).
- More than one em dash, or an AI vocabulary cluster, in the on-screen text.
- A staged punch line or "The result?" reveal inserted for rhythm.
- Five stacked calls to action.
Resources
../../references/hook-formulas.md- all 10 TikTok hook formulas (three layers each)../../references/algorithm-heuristics.md- why completion and the first second rule everythingreferences/hook-anatomy.md- the three-layer hook teardown and timing budget
Related skills
tt-caption-writer- the caption, TikTok settings, and hashtagstt-trend-mapper- check sound fit before a trend-ride hook (T10)tt-humanizer- scrub the spoken script so it sounds human on cameratt-content-planner- batch multiple hooks for the week
| 1 | |
| 2 | name tt-hook-scripter |
| 3 | description "Script the first 1-3 second TikTok hook: the spoken line, the on-screen text, and the opening visual firing at once so the viewer cannot swipe. Picks a 2026 hook formula (cold-open result, pattern interrupt, number reveal, open-loop question, relatable call-out, story) by goal of completion, saves, comments, or shares. The single biggest retention lever on TikTok. Use to script a hook from a video idea. Not for the caption (use tt-caption-writer) or scrubbing a script (use tt-humanizer)." |
| 4 | |
| 5 | |
| 6 | # TikTok Hook Scripter |
| 7 | |
| 8 | Write the first 1 to 3 seconds of a TikTok video: the spoken line, the on-screen |
| 9 | text, and the opening visual, all firing at once. This is the single biggest |
| 10 | lever on the whole platform. TikTok's ranker runs on completion rate, and a |
| 11 | viewer decides to stay or swipe before second three. If the hook does not win, |
| 12 | nothing downstream gets watched. |
| 13 | |
| 14 | ## When to use |
| 15 | |
| 16 | User has a video idea and needs the opening to stop the scroll |
| 17 | User's videos "die in the first second" and they want a stronger open |
| 18 | User wants to pick a proven hook shape and fill it with their own angle |
| 19 | Before filming, to lock the spoken line and the on-screen text |
| 20 | |
| 21 | ## What this skill produces |
| 22 | |
| 23 | For one video idea, a ready-to-film hook block: |
| 24 | |
| 25 | **Spoken line** (what you say to camera in the first 1-3 seconds) |
| 26 | **On-screen text** (the muted-first promise, 3 to 7 words) |
| 27 | **Opening visual** (what is in frame one: result, tension, or interrupt) |
| 28 | **The formula used** and its primary goal |
| 29 | **A loop-close note** (how to end the video so it restarts for a rewatch) |
| 30 | |
| 31 | It does not write the caption (hand to `tt-caption-writer`) or the full body |
| 32 | script beat-by-beat unless asked; it locks the open, which is where retention is |
| 33 | won or lost. |
| 34 | |
| 35 | ## Formulas this skill uses |
| 36 | |
| 37 | | Code | Formula | Primary goal | Best for | |
| 38 | |---|---|---|---| |
| 39 | | T1 | Cold-Open Result | completion | show the finished outcome first, promise the how | |
| 40 | | T2 | Pattern Interrupt | completion | break the expected frame so the thumb stops | |
| 41 | | T3 | Specific-Number Reveal | saves | one odd, concrete number that reframes the topic | |
| 42 | | T4 | Open Loop Question | comments | ask the exact question the video answers | |
| 43 | | T5 | Relatable Call-Out | shares | a hyper-specific shared moment worth sending | |
| 44 | | T6 | Bold Claim, No Hedge | comments | a flat contrarian claim the comments will argue | |
| 45 | | T7 | Listicle Promise | saves | a numbered payoff with on-screen counters | |
| 46 | | T8 | Story In Medias Res | completion | drop into the peak of a real story | |
| 47 | | T9 | Tutorial Cold Start | saves | start step one with the result previewed | |
| 48 | | T10 | Trend-Ride With A Twist | shares | a trending sound bent to your niche | |
| 49 | |
| 50 | Full skeletons (three layers each) in `../../references/hook-formulas.md`. |
| 51 | |
| 52 | ### Pick by goal first |
| 53 | |
| 54 | | Goal | Reach for | |
| 55 | |---|---| |
| 56 | | Completion | T1, T2, T8 | |
| 57 | | Saves | T3, T7, T9 | |
| 58 | | Comments | T4, T6 | |
| 59 | | Shares | T5, T10 | |
| 60 | |
| 61 | ## Steps |
| 62 | |
| 63 | **Voice profile first (all drafts).** If `../../references/voice-profile.md` has `filled: yes`, load it and match the user's voice fingerprint, hard rules, and CTA/link style throughout. If it is not filled, mention once that `tt-humanizer --mode profile` can learn their voice from a few posts, then proceed with the generic voice rules. |
| 64 | |
| 65 | **Gather inputs.** The video idea, the niche/audience, the one promise the |
| 66 | video delivers, and the goal (completion / saves / comments / shares). |
| 67 | **Pick the formula.** Use the goal table to shortlist, then suggest 2-3 that |
| 68 | also fit the idea and let the user choose. For a trend ride (T10), hand the |
| 69 | sound-fit question to `tt-trend-mapper` first. |
| 70 | **Write all three layers.** Spoken line, on-screen text, opening visual. The |
| 71 | spoken line and the on-screen text MUST differ (muted-first viewing). Respect |
| 72 | the 2026 rules: |
| 73 | The result or the tension is in frame one. No greeting, no logo, no zoom. |
| 74 | One specific number where the claim allows it. |
| 75 | Say it the way a person talks; read it out loud. |
| 76 | No AI vocabulary cluster (one marker is a slip; three in the hook is a |
| 77 | script). Em dashes: `..` for a breath in the spoken line, at most one on |
| 78 | the on-screen card. |
| 79 | No sincerity opener ("not gonna lie", "real talk") and no "Here's what |
| 80 | nobody tells you" reveal bridge; say the thing. |
| 81 | **Write the loop-close note.** How the last frame should land so a rewatch |
| 82 | feels natural (a rewatch is almost a second view). |
| 83 | **Humanizer pass.** Run the spoken line through the `tt-humanizer` V3 |
| 84 | rules to strip script tells before it ever reaches camera: AI vocab by |
| 85 | density, stacked triads, reveal bridges, sincerity openers, written-not- |
| 86 | spoken phrasing. Make it sayable; never insert a punch line for rhythm. |
| 87 | **Approval card.** Show: formula, the three layers, primary goal, the |
| 88 | loop-close note, and an estimated hook duration. |
| 89 | **Hand off.** Offer `tt-caption-writer` for the caption and settings, and |
| 90 | `tt-content-planner` if they are batching multiple hooks. |
| 91 | |
| 92 | ## Hard rules |
| 93 | |
| 94 | Global voice rules: see root `SKILL.md` Voice rules. Additional skill-specific |
| 95 | rules: |
| 96 | |
| 97 | The hook is the first 1-3 seconds of the **video**, not the caption. Never let |
| 98 | the caption do the hook's job. |
| 99 | The spoken line and the on-screen text are two different jobs. Do not repeat the |
| 100 | same words in both. |
| 101 | Frame one shows something (result, tension, interrupt). No dead air, no intro. |
| 102 | One specific number in the hook beats any adjective. |
| 103 | The hook opens the loop; it never answers itself. |
| 104 | |
| 105 | ## Anti-patterns (skill will refuse) |
| 106 | |
| 107 | "Hey guys" / "welcome back" / "in this video" openers. |
| 108 | A logo animation or slow zoom before the words start. |
| 109 | Reading the caption aloud as the hook. |
| 110 | Promising a result the video never shows on screen. |
| 111 | ALL CAPS spoken scripts (you cannot shout for 30 seconds). |
| 112 | More than one em dash, or an AI vocabulary cluster, in the on-screen text. |
| 113 | A staged punch line or "The result?" reveal inserted for rhythm. |
| 114 | Five stacked calls to action. |
| 115 | |
| 116 | ## Resources |
| 117 | |
| 118 | `../../references/hook-formulas.md` - all 10 TikTok hook formulas (three layers each) |
| 119 | `../../references/algorithm-heuristics.md` - why completion and the first second rule everything |
| 120 | `references/hook-anatomy.md` - the three-layer hook teardown and timing budget |
| 121 | |
| 122 | ## Related skills |
| 123 | |
| 124 | `tt-caption-writer` - the caption, TikTok settings, and hashtags |
| 125 | `tt-trend-mapper` - check sound fit before a trend-ride hook (T10) |
| 126 | `tt-humanizer` - scrub the spoken script so it sounds human on camera |
| 127 | `tt-content-planner` - batch multiple hooks for the week |
| 128 |
Details
- Updated
- Sep 17, 2026
- License
- MIT
- Stars on the repo
- ★ 50
- Checked
- Source
- sergebulaev/tiktok-skills ↗
- Creator
- sergebulaev · 77 listings
Similar skills
See all →
SkillTurn a long video into short vertical clips that each standLong video to shorts
SkillReplace a video's cold open with a 5-second hook that statesAdd opening hook
SkillGenerate psychologically-driven hooks for paid social adsHook Writing Engine
SkillWrite authentic UGC ad scripts that sound like real peopleUGC Script Writer
PromptGenerate user-generated content style TikTok scriptsUgc style tiktok script generator for gen z skincare
Prompt资深卖货短视频脚本创作者More from sergebulaev
SkillBy density per paragraph, not per wordAI Tells — Complete Blacklist (V3, 2026-09)
SkillFifteen rules from the linkedin-humanizer packageAI-Tell Rules: Tier-Classified Reference
SkillPattern data from MagicPost LinkedIn analysisEmoji Patterns — AI vs. Human
SkillRead your Instagram niche and profile from real dataInstagram Audience Insights
SkillDraft an Instagram caption with the hook in the first 125Instagram Caption Writer
SkillPlan an Instagram carousel slide by slide, up to 10 slidesInstagram Carousel Planner