Video Narrative Arc logo

Video Narrative Arc

Community
AnastasiyaW
video-narrative-arc

Proven narrative arc templates for product videos and ads. Use when: 'write script', 'video structure', 'narrative arc', 'scene plan', 'storyboard', '15 second video', '30 second video', '60 second video', 'how to structure the video', 'video script template'. Provides beat-by-beat templates with timing, emotional arc mapping, hook formulas, and pacing rules. Covers 10s-90s formats for social, product demos, launches, and pitches. Do NOT use to judge or score an already-written script (use script-evaluator), to derive the product insight/brief from scratch (use product-meaning-extractor), or to render the video in code (use remotion-production-guide); this stage only produces the structured script/beats.

Overview

PublisherAnastasiyaW
Repositorycodex-claude-code-config
Skill namevideo-narrative-arc
Stars
212
Forks
32
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by AnastasiyaW on GitHub. Read the source before you install it.

Installation

Install the Video Narrative Arc AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/AnastasiyaW/codex-claude-code-config/tree/main/skills/video-production/video-narrative-arc
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/AnastasiyaW/codex-claude-code-config.git /tmp/codex-claude-code-config
mkdir -p .claude/skills
cp -r /tmp/codex-claude-code-config/skills/video-production/video-narrative-arc .claude/skills/video-narrative-arc
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Video Narrative Arc in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Video Narrative Arc on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Video Narrative Arc is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Video Narrative Arc Templates

Proven narrative structures for product videos. Pick a template, fill slots from your Product Brief, get a timestamped script with emotional beats.

Rule #1: Brief First

ALWAYS create a Product Brief (use product-meaning-extractor) BEFORE choosing a template. Without a brief, you'll write generic feature lists.

Template Selection

DurationBest ForTemplateEmotional Arc
10-15sSocial ads, teasersPattern InterruptSurprise → Curiosity → Action
15-20sProduct awarenessProblem-Solution FlashPain → Relief → Action
30sProduct demosHook-Pain-Demo-Proof-CTAAttention → Recognition → Desire → Trust → Action
45-60sLaunches, explainersApple Keynote MiniUnderstanding → Frustration → Hope → Amazement → Delight
60-90sBrand stories, pitchesFull Story ArcEmpathy → Tension → Discovery → Wonder → Inspiration

Template 1: Pattern Interrupt (10-15s)

For: TikTok, Reels, YouTube Shorts, social ads.

[0-3s] INTERRUPT
  Break the scroll. Unexpected visual or bold text on dark bg.
  Use: provocative question, shocking stat, or visual contrast.
  Example: "Why are you still [painful manual task]?"

[3-7s] CURIOSITY GAP
  Show what's possible. Product in action, before→after, result.
  One phrase that captures the transformation.
  Example: Split-screen transformation in real time.

[7-12s] PROMISE + CTA
  Product name + key benefit + action.
  Example: "[Product]. [One-line value]. Try free."

Key rule: First frame must have useful/surprising information. No logos, no gradients, no decorative intros.


Template 2: Problem-Solution Flash (15-20s)

For: Instagram/Facebook ads, product awareness.

[0-3s] HOOK - Customer pain in THEIR words
  Dark bg, large text, one line from Customer Language Bank.
  Example: "45 minutes. Per. Photo."
  BEAT: TENSION

[3-8s] AGITATE - Stack the problems (2-3 rapid pain points, 1.5s each)
  Example: "Scratches. Noise. Shadows. Every. Single. Time."
  BEAT: FRUSTRATION PEAK

[8-10s] PIVOT
  Visual shift (dark→light, blur→sharp). Two words max.
  Example: "Not anymore." / "Until now." / "There's a better way."
  BEAT: RELIEF BEGINS

[10-16s] SOLUTION - Product in action
  Show the unique mechanism (from brief), not just the name.
  Example: "AI retouching. Original resolution. Editable .PSD."
  BEAT: DESIRE

[16-20s] CTA
  Low-friction call to action. Logo + URL + free offer.
  Example: "Try free. No signup. [url]"
  BEAT: ACTION

Template 3: Hook-Pain-Demo-Proof-CTA (30s)

For: Product demos, YouTube pre-rolls.

[0-4s] HOOK - The boldest claim you can back up
  Core insight from brief. NOT a feature - a worldview.
  Example: "The last time you'll [painful task] by hand."
  BEAT: ATTENTION

[4-10s] PAIN - The enemy, made visceral
  Show the painful process. Use customer language.
  Specific numbers. Speed up boring tasks to emphasize tedium.
  Example: Clock ticking, manual work, frustration faces.
  BEAT: RECOGNITION ("that's me!")

[10-20s] DEMO - Solution + unique mechanism
  Product in action. Start slow (dramatic reveal), then quick feature hits.
  Show HOW it works, not just THAT it works.
  3-4 features max, each getting 2-3 seconds.
  BEAT: DESIRE (building)

[20-26s] PROOF - Why believe it
  Stats, logos, testimonials, specific numbers from brief.
  Example: "Original DPI. Used by 500+ studios. .PSD with layers."
  BEAT: TRUST

[26-30s] CTA - Specific and low-friction
  Logo + URL + offer + animated button.
  What to do RIGHT NOW, not someday.
  Example: "800 free tokens. No signup. [url]"
  BEAT: ACTION

Template 4: Apple Keynote Mini (45-60s)

For: Product launches, explainer videos. The premium option.

[0-5s] THE PROBLEM WITH TODAY
  Clean text on dark bg, slow fade. Calm, authoritative tone.
  "The problem with [category] today..."
  BEAT: SHARED UNDERSTANDING

[5-12s] THE REALITY
  2-3 scenes showing current painful workflow.
  Each problem appears with visual authority (large type, pause).
  "Manual. Slow. Inconsistent. Expensive."
  BEAT: FRUSTRATION BUILDS

[12-15s] THE VISION
  Visual shift (dark→light or reverse). This is the hinge.
  "What if..." / "We asked: what if..." / "Imagine..."
  BEAT: HOPE

[15-30s] THE SOLUTION (longest section)
  Product demo. 3-4 features, one at a time.
  Each feature: name + real benefit (not just feature name).
  Pacing: slow reveals. One feature = one breath. Don't rush.
  BEAT: PROGRESSIVE AMAZEMENT

[30-40s] THE PROOF
  Numbers, logos, before/after comparisons.
  2-3 strongest proof points from brief.
  BEAT: CONFIDENCE

[40-48s] ONE MORE THING (optional but powerful)
  Surprise feature or unexpected benefit they didn't see coming.
  "And it's free to try. No signup required."
  BEAT: DELIGHT

[48-60s] CTA
  Logo animation + URL + memorable closing line.
  "[Product] - [tagline]."
  BEAT: RESOLUTION

Template 5: Full Story Arc (60-90s)

For: Brand stories, investor pitches, deep explainers.

ACT 1: THE WORLD (0-20s)
  [0-5s]   Establish WHO this is for (specific persona, not generic)
  [5-12s]  Their daily struggle (use "Before" from brief)
  [12-20s] The breaking point - why NOW something must change

ACT 2: THE CHANGE (20-55s)
  [20-25s] Discovery - product enters the story (not as hero, as guide)
  [25-40s] The journey - seeing it work (features as story beats, not list)
  [40-50s] Transformation - before vs after side-by-side
  [50-55s] Proof - numbers, testimonials, authority

ACT 3: THE NEW WORLD (55-90s)
  [55-65s] Life after - what's possible now (use "After" from brief)
  [65-75s] Bigger vision - beyond the product, what world are we building?
  [75-90s] CTA + logo + resolution

Hook Formulas (first 3 seconds)

The hook is 80% of whether someone watches. Spend 80% of script time on the first 3 seconds.

FormulaExampleWhen to Use
Shocking stat"87% of [role] spend 3+ hours on [task]"When you have hard data
Provocative question"Why are you still doing this by hand?"When the pain is universal
Bold claim"The last time you'll [painful task]"When you can prove it
Customer quote"[Verbatim pain phrase from reviews]"When you have real language
Before/AfterShow transformation, no wordsWhen visual impact is strong
Pattern interruptUnexpected visual that stops scrollingSocial media specifically
Countdown"In 8 seconds, this photo will be perfect"When speed is the value prop
Contrarian"Everyone says [X]. They're wrong."When positioning against status quo

Script Writing Rules

Text on Screen

  • Max 7 words on screen at any time
  • Reading speed: 150 WPM = 2.5 words/second
  • 3-word phrases hit hardest: "Upload. Process. Done."
  • Text readable for min 2 seconds AFTER animation completes
  • NEVER animate text while expecting reading

Power Words vs Kill Words

Use: Free, New, You, Instantly, Proven, Discover, Secret, Because, Now, Imagine Kill: Revolutionary, Innovative, Cutting-edge, World-class, Seamless, Leverage, Synergy, Disrupt

Tension Rules

  • Every scene needs tension (contrast, scarcity, curiosity, authority gap)
  • No tension = flat video. No exceptions.
  • If a scene feels boring: add a surprising stat, customer pain quote, or visual contrast

Pacing

  • Fast (2-3s cuts): problems, feature montage, social proof
  • Slow (5-8s holds): product reveal, hero moment, emotional beat
  • Never more than 3 fast cuts without a slow breath
  • The most important moment gets the MOST time, not the least
  • After every fast section, add one slow "breathing" shot

Language

  • "You" > "We" (customer-first, always)
  • Customer language > clever copywriting
  • Concrete > abstract ("45 minutes" > "a long time")
  • If it sounds like a brochure, rewrite it
  • If it sounds like a text to a friend, it's closer

Gotchas

  • Template != formula. Adapt timing to your content
  • If template feels forced, simplify: 3 strong scenes > 7 weak ones
  • The brief is the source of truth, not the template
  • Don't use Template 5 (Full Story Arc) for a 15-second ad. Match format to platform
  • "One more thing" only works if the surprise is genuinely unexpected

Frequently asked questions

What does the Video Narrative Arc AI skill do?

Proven narrative arc templates for product videos and ads. Use when: 'write script', 'video structure', 'narrative arc', 'scene plan', 'storyboard', '15 second video', '30 second video', '60 second video', 'how to structure the video', 'video script template'. Provides beat-by-beat templates with timing, emotional arc mapping, hook formulas, and pacing rules. Covers 10s-90s formats for social, product demos, launches, and pitches. Do NOT use to judge or score an already-written script (use script-evaluator), to derive the product insight/brief from scratch (use product-meaning-extractor), o...

Why use Video Narrative Arc on TypingMind?

Because you install it once and use it with any model. Video Narrative Arc is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Video Narrative Arc in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/AnastasiyaW/codex-claude-code-config/tree/main/skills/video-production/video-narrative-arc. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Video Narrative Arc?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Video Narrative Arc?

As many as you like. As long as a model supports skills, you can use Video Narrative Arc with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Video Narrative Arc AI skill free?

Yes. It is published on GitHub by AnastasiyaW under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇