New: Earn 20% as an AgentAlley affiliate. Share your link and earn on every sale you refer. Join now New: Earn 20% as an affiliate. Join now

Write short-form video scripts for TikTok, Instagram Reels

Tiktok script writer

by Affitor · MIT license · ★ 672 on GitHub · v1.0.0 · updated Sep 15

Tiktok script writer cover

Write short-form video scripts for TikTok, Instagram Reels, and YouTube Shorts that promote affiliate products with strong hooks, demos, and CTAs. Use this skill when the user asks about TikTok scripts, Reels scripts, Shorts scripts,…

---
name: tiktok-script-writer
description: >
  Write short-form video scripts for TikTok, Instagram Reels, and YouTube Shorts
  that promote affiliate products with strong hooks, demos, and CTAs.
  Use this skill when the user asks about TikTok scripts, Reels scripts, Shorts
  scripts, short-form video for affiliate marketing, or says "write a TikTok for X",
  "script a Reel promoting X", "YouTube Shorts script affiliate", "60-second video
  script", "hook for TikTok affiliate", "write a video promoting X", "TikTok script
  that converts", "short video script for product review", "viral TikTok affiliate
  script", "how to promote X on TikTok".
license: MIT
version: "1.0.0"
tags: ["affiliate-marketing", "content-creation", "social-media", "copywriting", "tiktok", "video"]
compatibility: "Claude Code, ChatGPT, Gemini CLI, Cursor, Windsurf, OpenClaw, any AI agent"
metadata:
  author: affitor
  version: "1.0"

Overview

Write punchy 30-60 second video scripts for TikTok, Instagram Reels, and YouTube Shorts that stop the scroll, demo the product naturally, and drive affiliate link clicks. Every script is structured for vertical video: hook → problem → demo → result → CTA.

Manual install (npx, ZIP)
Claude Codenpx skills add Affitor/affiliate-skills --skill tiktok-script-writer -g -a claude-code
Claude Code (manual)mkdir -p ~/.claude/skills && curl -sL https://codeload.github.com/Affitor/affiliate-skills/tar.gz/e43bfaecd6a7 \ | tar -xz -C ~/.claude/skills --strip-components=3 affiliate-skills-e43bfaecd6a7/skills/content/tiktok-script-writer
Windows (PowerShell)New-Item -ItemType Directory -Force "$HOME\.claude\skills" | Out-Null; Invoke-WebRequest "https://m.agentalley.io/zip/717fe13e18d7c0aa47bb/tiktok-script-writer.zip" -OutFile "$env:TEMP\tiktok-script-writer.zip"; Expand-Archive "$env:TEMP\tiktok-script-writer.zip" -DestinationPath "$HOME\.claude\skills" -Force
Claude.ai / desktopDownload the ZIP and upload it under Settings → Capabilities → Skills.
Codex, Cursor, other agentsPoint them at SKILL.md. The other files are plain text.

Connects with Agent Alley MCP · agentalley.io/mcp

Files included

  • SKILL.md14.4 KB
  • LICENSE.txt1.0 KB
Read the files here
Affitor/e43bfae2 files
Shared references4SKILL.md reads these from elsewhere in the repo. Not in the ZIP.Get them on GitHub ↗
SKILL.md
Show the full text376 lines

TikTok Script Writer

Write punchy 30-60 second video scripts for TikTok, Instagram Reels, and YouTube Shorts that stop the scroll, demo the product naturally, and drive affiliate link clicks. Every script is structured for vertical video: hook → problem → demo → result → CTA.

Stage

This skill belongs to Stage S2: Content

When to Use

  • User wants to promote an affiliate product on short-form video platforms
  • User has an affiliate program picked (from S1) and needs TikTok/Reels content
  • User asks for video script ideas for TikTok affiliate marketing
  • User wants a hook-first script that converts viewers to buyers
  • User creates content on TikTok, Instagram Reels, or YouTube Shorts

Input Schema

{
  product: {
    name: string              # (required) "HeyGen"
    description: string       # (optional) What it does — will be researched if missing
    url: string               # (optional) Affiliate link or product URL
    reward_value: string      # (optional) Commission info — never shown in script
  }
  duration: number            # (optional, default: 45) Target duration in seconds: 15 | 30 | 45 | 60
  platform: string            # (optional, default: "tiktok") "tiktok" | "reels" | "shorts" | "all"
  hook_style: string          # (optional, default: auto) "question" | "shock" | "relatable" | "bold_claim" | "demo_first"
  creator_persona: string     # (optional) "beginner marketer" | "tech reviewer" | "productivity nerd"
  has_product_access: boolean # (optional, default: true) Can creator do live demo?
  personal_experience: string # (optional) Real experience to weave in
  audience: string            # (optional) "freelancers" | "small business owners" | "students"
}

Workflow

Step 1: Research the Product

If product details are sparse, use web_search "[product name] what it does tutorial" to find:

  • The single most impressive thing the product does (demo-able in <20 seconds)
  • The main pain it eliminates (hook material)
  • A specific result users achieve (e.g., "make a talking avatar video in 2 minutes")
  • Any free trial or free tier (reduces friction for CTA)

Concrete specifics > vague claims. "Creates a 2-minute video in 30 seconds" beats "saves time on video creation".

Step 1.5: Analyze Top Performing TikToks (data-driven)

Before selecting hook style, see what's actually winning in this niche on TikTok:

If trending-content-scout ran earlier:

  • Use TikTok-specific data from top_content
  • Extract: winning hooks, optimal duration, top creators' styles
  • Use engagement_benchmark to set a target engagement score
  • If content-angle-ranker provided a recommended_angle → use it

If no scout data (quick mode):

  • web_search "[product name] tiktok" → find top TikTok videos
  • web_search "best [niche] tiktok viral" → find format patterns
  • web_search "[product name] tiktok review" → see existing content
  • Note view counts, styles, and durations visible in search results

Apply findings to script:

  • If demo_first hooks have 2x engagement in this niche → default to demo_first
  • If 30-45s videos outperform 60s → adjust duration target
  • If a specific creator style dominates → note as reference (adapt, don't copy)
  • If engagement_benchmark.median_views is known → aim to beat it with better hook + format

This step takes <2 minutes but can 3x the script's potential by building on proven patterns instead of guessing.

Step 2: Select the Hook Style

Short-form video is won or lost in seconds 1-3. Pick the hook based on the product's strongest angle:

Hook Style Template Best For
Question "What if you could [result] without [pain]?" Products that remove a hard task
Shock/Stat "I replaced [expensive thing] with a $[price]/mo tool" Cost/efficiency wins
Relatable "[Frustrating situation]? Same. Then I found this." Niche audience pain
Bold Claim "This [tool] is the reason I [impressive result]" Strong ROI proof
Demo First [Open with screen recording of the coolest feature immediately] Visual/AI tools
Story Opener "6 months ago I was [before state]. Now [after state]. Here's why." Transformation

For AI tools and visual products → Demo First almost always wins on TikTok. For SaaS productivity tools → Relatable or Shock/Stat hooks work well.

Step 3: Structure the Script

Every script follows this structure (adapt timing to duration):

For 45-second scripts:

  • 0-3s: Hook (spoken + on-screen text)
  • 3-8s: Relatable pain or setup
  • 8-30s: Live demo OR narrated walkthrough of key feature
  • 30-38s: Specific result / proof
  • 38-44s: CTA (bio link, comment for link, or "link in bio")
  • 44-45s: FTC disclosure overlay

For 30-second scripts:

  • 0-3s: Hook
  • 3-15s: Demo the #1 feature
  • 15-25s: Result + social proof
  • 25-30s: CTA + disclosure

For 60-second scripts:

  • 0-3s: Hook
  • 3-10s: Problem setup
  • 10-40s: Full demo (2-3 features)
  • 40-52s: Results + pricing mention (anchoring)
  • 52-58s: CTA
  • 58-60s: FTC disclosure
Step 4: Write the Script

Format scripts with:

  • [VISUAL] — what's on screen (screen recording, hands typing, reaction face, b-roll)
  • [SPOKEN] — what the creator says (keep sentences short, max 10 words each)
  • [TEXT OVERLAY] — on-screen text (keywords for silent viewers — 40% watch with no sound)
  • [CAPTION] — suggested TikTok caption + hashtags

Writing rules:

  1. Sentences under 10 words. TikTok viewers process fast.
  2. No filler phrases: "basically", "literally", "you know what I mean"
  3. Every 3-5 seconds: new visual cut, new text overlay, or spoken transition
  4. Sound-optional: the text overlay should tell the whole story without audio
  5. End the hook WITH the setup — don't just ask a question, tease the answer
  6. The demo must be REAL — no vague "and then it does this amazing thing"
Step 5: Add FTC Disclosure

Per shared/references/ftc-compliance.md for short-form video:

  • Verbal disclosure if spoken at all (not required but best practice)
  • Text overlay "#ad" or "Affiliate link in bio" must appear during CTA section
  • Disclosure must be visible for at least 3 seconds
  • Do NOT bury in caption — overlay is required per FTC guidance
Step 6: Add Production Notes

Include brief notes for the creator:

  • What to screen-record vs. film on camera
  • Suggested background music BPM range (fast = tech demos, mid = tutorials)
  • Caption and hashtag strategy for the platform
  • Best time to post on each platform
Step 7: Self-Validation

Before presenting output, verify:

  • Spoken sentences under 10 words each
  • New visual cut or text overlay every 3-5 seconds
  • FTC "#ad" appears as text overlay, NOT buried in caption
  • Disclosure overlay visible for at least 3 seconds
  • Hook ends with setup, not just a question
  • Demo shows specific feature, not vague claims

If any check fails, fix the output before delivering. Do not flag the checklist to the user — just ensure the output passes.

Output Schema

{
  output_schema_version: "1.0.0"  # Semver — bump major on breaking changes
  scripts: [
    {
      platform: string          # "tiktok" | "reels" | "shorts"
      duration_seconds: number  # 45
      hook_style: string        # "demo_first"
      scenes: [
        {
          timecode: string      # "0-3s"
          visual: string
          spoken: string
          text_overlay: string
        }
      ]
      caption: string           # Full TikTok caption
      hashtags: string[]        # Suggested hashtags
      disclosure: string        # How and when FTC disclosure appears
    }
  ]
  product_name: string
  content_angle: string
  hook_used: string
}

Output Format

## TikTok Script: [Product Name] ([Duration]s)

**Hook Style:** [Style name]
**Platform:** [TikTok / Reels / Shorts]
**Target Audience:** [Who this is for]

---

### Script

| Time | Visual | Spoken | Text Overlay |
|------|--------|--------|-------------|
| 0-3s | [What's on screen] | "[Hook line]" | [On-screen text] |
| 3-8s | [Visual] | "[Spoken]" | [Overlay] |
| ... | ... | ... | ... |

---

### Caption

[Full caption text — optimized for TikTok SEO]

**Hashtags:** #[tag1] #[tag2] #[tag3] (5-8 tags max)

---

### Production Notes

- **Film:** [Camera vs screen recording breakdown]
- **Music:** [BPM and mood suggestion]
- **Best time to post:** [Platform-specific optimal time]
- **Disclosure:** #ad text overlay appears at [timecode] for [X] seconds

---

### Hook Alternatives

Want a different opening? Try:
- **[Hook Style 2]:** "[Alternative opening line]"
- **[Hook Style 3]:** "[Alternative opening line]"

Error Handling

  • No product info: Ask what product they're promoting. If they came from S1, pull recommended_program from context.
  • Product isn't visual / hard to demo: Shift to reaction/testimonial format — creator's face on screen reacting to the tool, narrating the discovery.
  • User has no product access: Write a "third-person discovery" script — "My friend showed me this tool and I had to share it"
  • Duration feels too long for the content: Cut the demo to single strongest moment. If 30s still feels crowded, suggest two separate videos (problem setup + solution).
  • Platform unspecified: Default to TikTok. Mention Reels and Shorts are the same script with minor caption/hashtag adjustments.

Examples

Example 1: User: "Write a 45-second TikTok script for HeyGen" → Research: HeyGen creates AI avatar videos, talking head from text → Hook: Demo first — open with a finished AI video playing → Script: [0-3s] Show output video → [3-8s] "Made this in 2 minutes, no camera" → [8-30s] Screen record: paste script → avatar speaks → [30-38s] "Used this for my client, saved 4 hours" → [38-44s] "Link in bio, 30-day free trial" → [44-45s] "#ad overlay"

Example 2: User: "TikTok script for Notion affiliate, targeting students" → Hook: Relatable — "POV: it's 2am before finals and your notes are chaos" → Demo: Notion AI organizing scattered notes into a study guide → CTA: "Free forever plan — link in bio" → Caption: "study with me + notion hacks" for algorithm reach

Example 3: User: "I need 3 different hooks for a ConvertKit TikTok script" → Write hook-only variants: Question / Shock / Bold Claim → Full script for the strongest one, alternative openings for others → Note which hook style historically performs best for SaaS on TikTok

References

  • shared/references/ftc-compliance.md — disclosure rules for short-form video
  • shared/references/affiliate-glossary.md — reward_type and program terminology
  • shared/references/platform-rules.md — TikTok/Reels/Shorts format specs
  • shared/references/flywheel-connections.md — master flywheel connection map

Revenue & Action Plan

Expected Outcomes
  • Revenue potential: TikTok affiliate videos average 1-3% bio link click rate. A video with 10,000 views = 100-300 bio link clicks. At 2% conversion and $50 commission = $100-300 per viral video
  • Benchmark: Top TikTok affiliates report $500-2,000/month from 3-5 videos per week. The algorithm rewards consistency — your 10th video performs better than your 1st
  • Key metric to track: Bio link clicks per video (use a link-in-bio tool with click tracking like Beacons or your own bio-link page from bio-link-deployer)
Do This Right Now (15 min)
  1. Film the script TODAY — don't wait. The script is ready, your phone is the camera
  2. Screen-record the product demo section (the hardest part to improvise)
  3. Post on TikTok, then cross-post to Instagram Reels and YouTube Shorts (3 platforms, 1 video)
  4. Add your affiliate link to your bio before posting
Track Your Results

After 5 videos, check: which hook style got the highest completion rate? Which video drove the most bio link clicks? Use that hook style for your next 5 videos.

Next step — copy-paste this prompt: "Schedule my TikTok content for the next 30 days" → runs social-media-scheduler

Flywheel Connections

Feeds Into
  • social-media-scheduler (S5) — scripts ready to schedule for filming/posting
  • content-pillar-atomizer (S2) — successful scripts become content to atomize further
Fed By
  • trending-content-scout (S1) — top TikTok content + engagement data + winning hooks
  • content-angle-ranker (S1) — recommended angle with format, hook, and parameters
  • affiliate-program-search (S1) — recommended_program product data
  • purple-cow-audit (S1) — remarkable angles for script hooks
  • content-pillar-atomizer (S2) — atomized TikTok scripts from pillar content
Feedback Loop
  • Video view count and completion rate reveal which hook styles work → optimize hook selection

Quality Gate

Before delivering output, verify:

  1. Would I share this on MY personal social?
  2. Contains specific, surprising detail? (not generic)
  3. Respects reader's intelligence?
  4. Remarkable enough to share? (Purple Cow test)
  5. Irresistible offer framing? (if S4 offer skills ran)

Any NO → rewrite before delivering.

Volume Mode

When mode: "volume":

  • Generate 5-10 hook variations for the same product
  • Prioritize speed + variety over perfection
  • Tag each with variant ID for A/B tracking
  • Let data pick the winner
volume_output:
  variants:
    - id: string
      content: string
      angle: string
chain_metadata:
  skill_slug: "tiktok-script-writer"
  stage: "content"
  timestamp: string
  suggested_next:
    - "social-media-scheduler"
    - "content-pillar-atomizer"
1---
2name: tiktok-script-writer
3description: >
4 Write short-form video scripts for TikTok, Instagram Reels, and YouTube Shorts
5 that promote affiliate products with strong hooks, demos, and CTAs.
6 Use this skill when the user asks about TikTok scripts, Reels scripts, Shorts
7 scripts, short-form video for affiliate marketing, or says "write a TikTok for X",
8 "script a Reel promoting X", "YouTube Shorts script affiliate", "60-second video
9 script", "hook for TikTok affiliate", "write a video promoting X", "TikTok script
10 that converts", "short video script for product review", "viral TikTok affiliate
11 script", "how to promote X on TikTok".
12license: MIT
13version: "1.0.0"
14tags: ["affiliate-marketing", "content-creation", "social-media", "copywriting", "tiktok", "video"]
15compatibility: "Claude Code, ChatGPT, Gemini CLI, Cursor, Windsurf, OpenClaw, any AI agent"
16metadata:
17 author: affitor
18 version: "1.0"
19 stage: S2-Content
20---
21 
22# TikTok Script Writer
23 
24Write punchy 30-60 second video scripts for TikTok, Instagram Reels, and YouTube
25Shorts that stop the scroll, demo the product naturally, and drive affiliate link
26clicks. Every script is structured for vertical video: hook → problem → demo →
27result → CTA.
28 
29## Stage
30 
31This skill belongs to Stage S2: Content
32 
33## When to Use
34 
35- User wants to promote an affiliate product on short-form video platforms
36- User has an affiliate program picked (from S1) and needs TikTok/Reels content
37- User asks for video script ideas for TikTok affiliate marketing
38- User wants a hook-first script that converts viewers to buyers
39- User creates content on TikTok, Instagram Reels, or YouTube Shorts
40 
41## Input Schema
42 
43```
44{
45 product: {
46 name: string # (required) "HeyGen"
47 description: string # (optional) What it does — will be researched if missing
48 url: string # (optional) Affiliate link or product URL
49 reward_value: string # (optional) Commission info — never shown in script
50 }
51 duration: number # (optional, default: 45) Target duration in seconds: 15 | 30 | 45 | 60
52 platform: string # (optional, default: "tiktok") "tiktok" | "reels" | "shorts" | "all"
53 hook_style: string # (optional, default: auto) "question" | "shock" | "relatable" | "bold_claim" | "demo_first"
54 creator_persona: string # (optional) "beginner marketer" | "tech reviewer" | "productivity nerd"
55 has_product_access: boolean # (optional, default: true) Can creator do live demo?
56 personal_experience: string # (optional) Real experience to weave in
57 audience: string # (optional) "freelancers" | "small business owners" | "students"
58}
59```
60 
61## Workflow
62 
63### Step 1: Research the Product
64 
65If product details are sparse, use `web_search "[product name] what it does tutorial"` to find:
66- The single most impressive thing the product does (demo-able in <20 seconds)
67- The main pain it eliminates (hook material)
68- A specific result users achieve (e.g., "make a talking avatar video in 2 minutes")
69- Any free trial or free tier (reduces friction for CTA)
70 
71Concrete specifics > vague claims. "Creates a 2-minute video in 30 seconds" beats
72"saves time on video creation".
73 
74### Step 1.5: Analyze Top Performing TikToks (data-driven)
75 
76Before selecting hook style, see what's actually winning in this niche on TikTok:
77 
78**If `trending-content-scout` ran earlier:**
79- Use TikTok-specific data from `top_content`
80- Extract: winning hooks, optimal duration, top creators' styles
81- Use `engagement_benchmark` to set a target engagement score
82- If `content-angle-ranker` provided a `recommended_angle` → use it
83 
84**If no scout data (quick mode):**
85- `web_search "[product name] tiktok"` → find top TikTok videos
86- `web_search "best [niche] tiktok viral"` → find format patterns
87- `web_search "[product name] tiktok review"` → see existing content
88- Note view counts, styles, and durations visible in search results
89 
90**Apply findings to script:**
91- If demo_first hooks have 2x engagement in this niche → default to demo_first
92- If 30-45s videos outperform 60s → adjust duration target
93- If a specific creator style dominates → note as reference (adapt, don't copy)
94- If `engagement_benchmark.median_views` is known → aim to beat it with better hook + format
95 
96This step takes <2 minutes but can 3x the script's potential by building on
97proven patterns instead of guessing.
98 
99### Step 2: Select the Hook Style
100 
101Short-form video is won or lost in seconds 1-3. Pick the hook based on the product's
102strongest angle:
103 
104| Hook Style | Template | Best For |
105|------------|----------|----------|
106| **Question** | "What if you could [result] without [pain]?" | Products that remove a hard task |
107| **Shock/Stat** | "I replaced [expensive thing] with a $[price]/mo tool" | Cost/efficiency wins |
108| **Relatable** | "[Frustrating situation]? Same. Then I found this." | Niche audience pain |
109| **Bold Claim** | "This [tool] is the reason I [impressive result]" | Strong ROI proof |
110| **Demo First** | [Open with screen recording of the coolest feature immediately] | Visual/AI tools |
111| **Story Opener** | "6 months ago I was [before state]. Now [after state]. Here's why." | Transformation |
112 
113For AI tools and visual products → **Demo First** almost always wins on TikTok.
114For SaaS productivity tools → **Relatable** or **Shock/Stat** hooks work well.
115 
116### Step 3: Structure the Script
117 
118Every script follows this structure (adapt timing to duration):
119 
120**For 45-second scripts:**
121- 0-3s: Hook (spoken + on-screen text)
122- 3-8s: Relatable pain or setup
123- 8-30s: Live demo OR narrated walkthrough of key feature
124- 30-38s: Specific result / proof
125- 38-44s: CTA (bio link, comment for link, or "link in bio")
126- 44-45s: FTC disclosure overlay
127 
128**For 30-second scripts:**
129- 0-3s: Hook
130- 3-15s: Demo the #1 feature
131- 15-25s: Result + social proof
132- 25-30s: CTA + disclosure
133 
134**For 60-second scripts:**
135- 0-3s: Hook
136- 3-10s: Problem setup
137- 10-40s: Full demo (2-3 features)
138- 40-52s: Results + pricing mention (anchoring)
139- 52-58s: CTA
140- 58-60s: FTC disclosure
141 
142### Step 4: Write the Script
143 
144Format scripts with:
145- **[VISUAL]** — what's on screen (screen recording, hands typing, reaction face, b-roll)
146- **[SPOKEN]** — what the creator says (keep sentences short, max 10 words each)
147- **[TEXT OVERLAY]** — on-screen text (keywords for silent viewers — 40% watch with no sound)
148- **[CAPTION]** — suggested TikTok caption + hashtags
149 
150Writing rules:
1511. Sentences under 10 words. TikTok viewers process fast.
1522. No filler phrases: "basically", "literally", "you know what I mean"
1533. Every 3-5 seconds: new visual cut, new text overlay, or spoken transition
1544. Sound-optional: the text overlay should tell the whole story without audio
1555. End the hook WITH the setup — don't just ask a question, tease the answer
1566. The demo must be REAL — no vague "and then it does this amazing thing"
157 
158### Step 5: Add FTC Disclosure
159 
160Per `shared/references/ftc-compliance.md` for short-form video:
161- Verbal disclosure if spoken at all (not required but best practice)
162- Text overlay "#ad" or "Affiliate link in bio" must appear during CTA section
163- Disclosure must be visible for at least 3 seconds
164- Do NOT bury in caption — overlay is required per FTC guidance
165 
166### Step 6: Add Production Notes
167 
168Include brief notes for the creator:
169- What to screen-record vs. film on camera
170- Suggested background music BPM range (fast = tech demos, mid = tutorials)
171- Caption and hashtag strategy for the platform
172- Best time to post on each platform
173 
174### Step 7: Self-Validation
175 
176Before presenting output, verify:
177 
178- [ ] Spoken sentences under 10 words each
179- [ ] New visual cut or text overlay every 3-5 seconds
180- [ ] FTC "#ad" appears as text overlay, NOT buried in caption
181- [ ] Disclosure overlay visible for at least 3 seconds
182- [ ] Hook ends with setup, not just a question
183- [ ] Demo shows specific feature, not vague claims
184 
185If any check fails, fix the output before delivering. Do not flag the checklist to the user — just ensure the output passes.
186 
187## Output Schema
188 
189```
190{
191 output_schema_version: "1.0.0" # Semver — bump major on breaking changes
192 scripts: [
193 {
194 platform: string # "tiktok" | "reels" | "shorts"
195 duration_seconds: number # 45
196 hook_style: string # "demo_first"
197 scenes: [
198 {
199 timecode: string # "0-3s"
200 visual: string
201 spoken: string
202 text_overlay: string
203 }
204 ]
205 caption: string # Full TikTok caption
206 hashtags: string[] # Suggested hashtags
207 disclosure: string # How and when FTC disclosure appears
208 }
209 ]
210 product_name: string
211 content_angle: string
212 hook_used: string
213}
214```
215 
216## Output Format
217 
218```
219## TikTok Script: [Product Name] ([Duration]s)
220 
221**Hook Style:** [Style name]
222**Platform:** [TikTok / Reels / Shorts]
223**Target Audience:** [Who this is for]
224 
225---
226 
227### Script
228 
229| Time | Visual | Spoken | Text Overlay |
230|------|--------|--------|-------------|
231| 0-3s | [What's on screen] | "[Hook line]" | [On-screen text] |
232| 3-8s | [Visual] | "[Spoken]" | [Overlay] |
233| ... | ... | ... | ... |
234 
235---
236 
237### Caption
238 
239[Full caption text — optimized for TikTok SEO]
240 
241**Hashtags:** #[tag1] #[tag2] #[tag3] (5-8 tags max)
242 
243---
244 
245### Production Notes
246 
247- **Film:** [Camera vs screen recording breakdown]
248- **Music:** [BPM and mood suggestion]
249- **Best time to post:** [Platform-specific optimal time]
250- **Disclosure:** #ad text overlay appears at [timecode] for [X] seconds
251 
252---
253 
254### Hook Alternatives
255 
256Want a different opening? Try:
257- **[Hook Style 2]:** "[Alternative opening line]"
258- **[Hook Style 3]:** "[Alternative opening line]"
259```
260 
261## Error Handling
262 
263- **No product info:** Ask what product they're promoting. If they came from S1, pull
264 `recommended_program` from context.
265- **Product isn't visual / hard to demo:** Shift to reaction/testimonial format —
266 creator's face on screen reacting to the tool, narrating the discovery.
267- **User has no product access:** Write a "third-person discovery" script —
268 "My friend showed me this tool and I had to share it"
269- **Duration feels too long for the content:** Cut the demo to single strongest moment.
270 If 30s still feels crowded, suggest two separate videos (problem setup + solution).
271- **Platform unspecified:** Default to TikTok. Mention Reels and Shorts are the same script
272 with minor caption/hashtag adjustments.
273 
274## Examples
275 
276**Example 1:**
277User: "Write a 45-second TikTok script for HeyGen"
278→ Research: HeyGen creates AI avatar videos, talking head from text
279→ Hook: Demo first — open with a finished AI video playing
280→ Script: [0-3s] Show output video → [3-8s] "Made this in 2 minutes, no camera" →
281 [8-30s] Screen record: paste script → avatar speaks → [30-38s] "Used this for
282 my client, saved 4 hours" → [38-44s] "Link in bio, 30-day free trial" → [44-45s] "#ad overlay"
283 
284**Example 2:**
285User: "TikTok script for Notion affiliate, targeting students"
286→ Hook: Relatable — "POV: it's 2am before finals and your notes are chaos"
287→ Demo: Notion AI organizing scattered notes into a study guide
288→ CTA: "Free forever plan — link in bio"
289→ Caption: "study with me + notion hacks" for algorithm reach
290 
291**Example 3:**
292User: "I need 3 different hooks for a ConvertKit TikTok script"
293→ Write hook-only variants: Question / Shock / Bold Claim
294→ Full script for the strongest one, alternative openings for others
295→ Note which hook style historically performs best for SaaS on TikTok
296 
297## References
298 
299- `shared/references/ftc-compliance.md` — disclosure rules for short-form video
300- `shared/references/affiliate-glossary.md` — reward_type and program terminology
301- `shared/references/platform-rules.md` — TikTok/Reels/Shorts format specs
302- `shared/references/flywheel-connections.md` — master flywheel connection map
303 
304## Revenue & Action Plan
305 
306### Expected Outcomes
307- **Revenue potential**: TikTok affiliate videos average 1-3% bio link click rate. A video with 10,000 views = 100-300 bio link clicks. At 2% conversion and $50 commission = $100-300 per viral video
308- **Benchmark**: Top TikTok affiliates report $500-2,000/month from 3-5 videos per week. The algorithm rewards consistency — your 10th video performs better than your 1st
309- **Key metric to track**: Bio link clicks per video (use a link-in-bio tool with click tracking like Beacons or your own bio-link page from `bio-link-deployer`)
310 
311### Do This Right Now (15 min)
3121. **Film the script TODAY** — don't wait. The script is ready, your phone is the camera
3132. Screen-record the product demo section (the hardest part to improvise)
3143. Post on TikTok, then cross-post to Instagram Reels and YouTube Shorts (3 platforms, 1 video)
3154. Add your affiliate link to your bio before posting
316 
317### Track Your Results
318After 5 videos, check: which hook style got the highest completion rate? Which video drove the most bio link clicks? Use that hook style for your next 5 videos.
319 
320> **Next step — copy-paste this prompt:**
321> "Schedule my TikTok content for the next 30 days" → runs `social-media-scheduler`
322 
323## Flywheel Connections
324 
325### Feeds Into
326- `social-media-scheduler` (S5) — scripts ready to schedule for filming/posting
327- `content-pillar-atomizer` (S2) — successful scripts become content to atomize further
328 
329### Fed By
330- `trending-content-scout` (S1) — top TikTok content + engagement data + winning hooks
331- `content-angle-ranker` (S1) — recommended angle with format, hook, and parameters
332- `affiliate-program-search` (S1) — `recommended_program` product data
333- `purple-cow-audit` (S1) — remarkable angles for script hooks
334- `content-pillar-atomizer` (S2) — atomized TikTok scripts from pillar content
335 
336### Feedback Loop
337- Video view count and completion rate reveal which hook styles work → optimize hook selection
338 
339## Quality Gate
340 
341Before delivering output, verify:
342 
3431. Would I share this on MY personal social?
3442. Contains specific, surprising detail? (not generic)
3453. Respects reader's intelligence?
3464. Remarkable enough to share? (Purple Cow test)
3475. Irresistible offer framing? (if S4 offer skills ran)
348 
349Any NO → rewrite before delivering.
350 
351## Volume Mode
352 
353When `mode: "volume"`:
354- Generate 5-10 hook variations for the same product
355- Prioritize speed + variety over perfection
356- Tag each with variant ID for A/B tracking
357- Let data pick the winner
358 
359```yaml
360volume_output:
361 variants:
362 - id: string
363 content: string
364 angle: string
365```
366 
367```yaml
368chain_metadata:
369 skill_slug: "tiktok-script-writer"
370 stage: "content"
371 timestamp: string
372 suggested_next:
373 - "social-media-scheduler"
374 - "content-pillar-atomizer"
375```
376 
View all files on GitHub →

Details

Version
1.0.0
Updated
Sep 15, 2026
License
MIT
Stars on the repo
★ 672
Checked
Source
Affitor/affiliate-skills ↗
Creator
Affitor · 11 listings
View creator

Similar skills

See all →
SkillTurn a long video into short vertical clips that each standLong video to shortsopenfilm/openfilm · by openfilmTurn a long video (a talk, podcast, interview, lesson, livestream or vlog) into short vertical clips that each stand alone and hold attention from the first second. Use when the person gives a long recording and asks for clips, shorts, highlights or cut-downs for Douyin, Reels, Shorts or similar (长视频转短视频, 切片, 剪短视频, 高光, 拆条).★ 975 GitHub starsSkillReplace a video's cold open with a 5-second hook that statesAdd opening hookclueso-ai/skills · by clueso-aiReplace a video's cold open with a 5-second hook that states the payoff or problem up front, before the walkthrough starts. Use when the user says "add a hook", "the opening is boring", "it takes too long to get to the point", "give it a stronger start", "lead with the payoff", or shares a video that opens straight into a UI with no reason to keep watching.★ 26 GitHub starsSkillGenerate psychologically-driven hooks for paid social adsHook Writing EngineMotion-Creative/motion-creative-plugin · by Motion-CreativeGenerate psychologically-driven hooks for paid social ads. Uses Schwartz's 5 awareness stages and 8 psychological triggers, grounded in the workspace's actual top-performing hooks from Motion. Activate when users ask to "write hooks", "generate hooks", hook ideas", "scroll-stopping openings", "attention grabbers", or need opening lines for ads. Pairs with write-hooks/references for tactic and template libraries.★ 22 GitHub starsSkillWrite authentic UGC ad scripts that sound like real peopleUGC Script WriterMotion-Creative/motion-creative-plugin · by Motion-CreativeWrite authentic UGC (user-generated content) ad scripts that sound like real people sharing real experiences. Produces talking points — not word-for-word scripts — with a scripted hook and soft CTA. Grounded in Motion workspace data for hooks that convert. Activate when users ask for "UGC script", "creator script", "influencer brief", talking points for a creator", "authentic ad script", or need scripts for creator-style paid social ads.★ 22 GitHub starsPromptGenerate user-generated content style TikTok scriptsUgc style tiktok script generator for gen z skincaref/prompts.chat · by Mondesir LouvenskyGenerate user-generated content style TikTok scripts for a new Gen Z skincare product as a Marketing Strategist.New listingPrompt资深卖货短视频脚本创作者f/prompts.chat · by jd5zc9w2q7-prog担任资深卖货短视频脚本创作者,帮助用户撰写吸引人的短视频脚本以促进产品销售。New listing

More from Affitor

SkillResearch an affiliate program and create a verified listingAffiliate Program ListerAffitor/affiliate-skills · by AffitorResearch an affiliate program and create a verified listing for openaffiliate.dev. Use this skill when the user asks anything about listing a program, adding an affiliate program to the directory, submitting a program to list, creating a listing, documenting an affiliate program, sharing an affiliate program, writing a program profile, posting a program to openaffiliate.dev, or contributing a new program. Also trigger for: "list a program", "add affiliate program", "submit program to list", create listing for X", "document affiliate program", "share affiliate program", write a listing", "post to openaffiliate.dev", "add X to the directory", register an affiliate program", "publish affiliate program", "new program listing", profile this affiliate program", "catalog this program".★ 672 GitHub starsSkillResearch and evaluate affiliate programs to find the bestAffiliate program searchAffitor/affiliate-skills · by AffitorResearch and evaluate affiliate programs to find the best ones to promote. Use this skill when the user asks anything about finding affiliate programs, comparing commission rates, evaluating affiliate opportunities, searching for products to promote, picking a niche, or mentions openaffiliate.dev. Also trigger for: "which SaaS should I promote", "best affiliate programs for X", high commission programs", "recurring commission affiliate", "compare these affiliate programs", "is X affiliate program worth it", "find me something to promote", what pays the most", "affiliate programs with long cookie duration".★ 672 GitHub starsSkillLive affiliate program data from openaffiliate.devaffiliate-check: Live Affiliate Program DataAffitor/affiliate-skills · by AffitorLive affiliate program data from openaffiliate.dev. Search programs, compare commissions, check cookie days, find top performers. Use when researching affiliate programs, comparing options, or checking program details. Persistent daemon with cache — first call starts server (~2s), subsequent calls ~100ms.★ 672 GitHub starsSkillCalculate realistic affiliate earnings projections beforeCommission calculatorAffitor/affiliate-skills · by AffitorCalculate realistic affiliate earnings projections before committing to a program. Use this skill when the user asks about affiliate earnings, projecting income, calculating commissions, estimating how much they can make, comparing program payouts, or says "how much can I make promoting X", "calculate my affiliate income", is this commission worth it", "how long to first $1000", "compare earnings between programs", "traffic to income calculator", "what conversion rate should I expect", "earnings estimate for affiliate program", "how many sales do I need".★ 672 GitHub starsSkillReverse-engineer successful affiliate strategiesCompetitor spyAffitor/affiliate-skills · by AffitorReverse-engineer successful affiliate strategies from competitors. Use this skill when the user asks about spying on competitors, researching what other affiliates promote, analyzing competitor affiliate sites, understanding how top affiliates in a niche make money, or says "what programs does X promote", how does [site] make money", "what affiliate strategy does this site use", spy on competitor affiliates", "reverse engineer affiliate site", "copy what works in my niche", "who are the top affiliates in X niche", "what content gets traffic in my niche", "competitor affiliate analysis".★ 672 GitHub starsSkillTake 1 blog post or article and generate 15-30Content pillar atomizerAffitor/affiliate-skills · by AffitorTake 1 blog post or article and generate 15-30 platform-native micro-content pieces. Not reformatting — re-contextualizing for each platform's culture. Triggers on: "atomize this content", "repurpose my blog post", "turn this into social posts", content atomizer", "pillar content", "one to many content", "repurpose content", multiply my content", "content explosion", "turn article into posts", break down this article", "micro content from blog", "content pillar strategy", 10x my content", "platform-native content", "atomize", "content multiplication".★ 672 GitHub stars