Install
openclaw skills install product-video-scriptWrite engaging product video scripts for short-form platforms like TikTok, Reels, and YouTube Shorts.
openclaw skills install product-video-scriptShort-form video is the highest-leverage sales channel in ecommerce, but the difference between a video that converts and one that gets scrolled past is decided in the first second. A script has to earn attention before it earns trust, demonstrate value before it asks for anything, and make the purchase feel like the obvious next step — all inside 15 to 60 seconds. This skill generates platform-optimized, shot-by-shot video scripts for TikTok, Instagram Reels, and YouTube Shorts using direct-response frameworks adapted to how each platform's audience actually behaves.
The output is not a vague creative brief. It is a production-ready script: a scroll-stopping hook, beat-by-beat spoken lines, on-screen text, visual direction for each shot, a caption, and a hashtag set — everything a creator, UGC partner, or in-house editor needs to shoot and publish without guessing.
| Decision | Strong | Acceptable | Weak |
|---|---|---|---|
| Hook timing | Tension or payoff promised in 0–1s, on screen + spoken | Hook lands by 2–3s | Slow brand intro / logo first |
| Hook type | Pattern interrupt tied to a real viewer pain or desire | Generic "check this out" | "Hi guys, today I want to talk about…" |
| Framework fit | Chosen for product + awareness stage (see references) | Default hook-demo-offer | Same template for every product |
| Pacing | New visual or idea every 2–3s; cuts on the beat | One scene change mid-video | Single static talking-head 30s+ |
| Proof | Specific demo, result, or number shown on screen | Verbal claim only | No proof, adjectives only |
| CTA | One clear action matched to the platform's buy path | Soft "link in bio" | Multiple competing asks |
| Length vs platform | 15–34s TikTok/Reels, 20–45s Shorts | Slightly over | 60s+ with no payoff reason |
| On-screen text | Reinforces (not repeats) audio; readable 2+ s | Captions only | Wall of text / none |
Clarify the brief. Confirm the required inputs: product_name and details, target_platform, target_audience, and video_length. Capture optional script_style and key_selling_points. If the product type or platform is missing, ask — they change everything downstream.
Diagnose awareness stage. Decide whether the audience is problem-unaware, problem-aware, solution-aware, or product-aware. This determines how much education the hook must do before the sell. See references/short-form-frameworks.md.
Select the framework. Map product + awareness + platform to one of: hook-demo-offer, problem-agitate-solve, before-after-bridge, unboxing-reaction, or testimonial-story. Default to hook-demo-offer for visual impulse products; use problem-agitate-solve for products that fix a specific frustration.
Engineer the hook. Write 3 hook options. Each must promise tension or payoff in the first second, work as spoken line AND on-screen text, and avoid brand-first openers. Pick the strongest; keep the other two as A/B alternates.
Build the body beat-by-beat. Structure the middle around the framework, changing the visual every 2–3 seconds. Translate each key_selling_point into a benefit the viewer feels, and attach a concrete proof shot (demo, result, before/after, or number).
Land the CTA. Choose one action matched to the platform's buy path and add a light urgency or curiosity trigger that is honest (genuine scarcity, a real bonus, or a "watch til the end" loop you actually pay off).
Format for production. Render the script in the shot-by-shot table from references/output-template.md: timecode, spoken line, on-screen text, visual/shot direction. Add caption + hashtags, and run assets/quality-checklist.md before delivery.
Brief: Mello washable memory-foam slippers; TikTok Shop; women 25–40 working from home; 30s; emphasize machine-washable + all-day comfort.
Hook (0–2s): Spoken: "The reason your house shoes smell after two weeks?" On-screen: "POV: you never washed your slippers 🤢" Visual: hand pulls a worn slipper toward camera, hard cut.
Body (2–22s): Quick reveal of Mello → toss both slippers straight into the washing machine (pattern interrupt, the "wait, you can do that?" moment) → cut to fluffy, dry, like-new pair → wear them on a mock video call, feet flexing on memory foam. On-screen text stacks the proof: "Machine washable" → "Memory foam" → "4.8★ · 12,000 reviews."
CTA (22–30s): Spoken: "Tap the orange cart before the restock sells out." On-screen: "🛒 Tap to grab a pair." Visual: finger points to cart icon; product flat-lay end card.
Caption: Slippers you can actually throw in the wash 🧺 #tiktokshopfinds #homefinds #cozyseason Why it works: the hook weaponizes a real disgust trigger, the wash shot is the curiosity payoff, and the CTA names the exact buy action.
Brief: "FocusDesk" standing desk converter; YouTube Shorts; remote workers 30–50 with back pain; 45s; emphasize 30-second setup + sturdy at standing height.
Hook (0–2s): Spoken: "If your back hurts by 3pm, it's not your chair." On-screen: "The 3pm back-ache fix." Agitate (2–14s): show slumping at a desk, clock jumping 9am → 3pm, hand rubbing lower back — name the cost ("8 hours seated wrecks your posture"). Solve (14–34s): lift FocusDesk into standing position in one motion, count "thirty… seconds," tap the surface to show zero wobble with a monitor + laptop on it. On-screen proof: "No tools" → "Holds 33 lb" → "Sits + stands." Bridge (34–45s): Spoken: "Alternate sitting and standing and the 3pm crash disappears." CTA: "Link in the description — read the 30-day reviews first." Why it works: Shorts viewers tolerate a few more seconds of setup, so the agitate beat earns the solution; the CTA invites research, which suits a higher-consideration buy.
references/short-form-frameworks.md — the five frameworks, when to use each, and awareness-stage mapping.references/platform-playbook.md — TikTok vs Reels vs Shorts: pacing, length, sound, sell intensity, and CTA paths.references/output-template.md — the shot-by-shot script template and caption/hashtag block to deliver in.assets/quality-checklist.md — pre-delivery quality gate across hook, structure, proof, CTA, and platform fit.