Create presenter and UGC-style video content. Use when creating educational videos, testimonials, product demos, or personal brand content.
Turn a message and an audience into a complete Talking Head Video Spec β one presenter archetype fully specified (styling, setting, lighting, framing), a timed hook/body/CTA script skeleton, and keyframe prompts ready for fal-ai/nano-banana-pro. The governing principle: credibility is cast, not scripted β the presenter's look, setting, and register must match what the audience already trusts for this kind of message (a polished studio expert selling "authentic user review" reads as an ad and dies). You produce the plan and still keyframes; voice, motion, and editing happen downstream.
skills/creative/product-video.skills/creative/remotion-script-writer.skills/creative/social-graphics.skills/creative/creative-strategist first; its style guide feeds presenter styling.Ask in one tight batch, only what's missing:
skills/creative/creative-strategist?Infer instead of asking: platform β length and framing; product category β default trust mode (consumer social ad β UGC; B2B/finance/health β authority). Don't stall: with message + audience known, state assumptions ("Assuming UGC style, 30s, vertical β say otherwise") and proceed.
| If the content is⦠| Archetype | Register | Default setting |
|---|---|---|---|
| Educational, corporate, product demo | Professional Presenter | polished, business casual/formal, direct eye contact, confident | studio or professional office |
| Testimonial, social ad, relatable pitch | UGC Creator | casual clothes, natural look, authentic energy, imperfect is good | home, car, casual real-world spot |
| Thought leadership, reviews, authority claims | Expert / Influencer | polished but approachable, credible, high production | professional office or branded studio |
| Lifestyle content, product-in-life, aspirational | Lifestyle Creator | stylish, aspirational, engaging | lifestyle location matching the product |
Commit to one archetype with a one-line reason. Mismatches to catch: authority archetype for a "real customer" message (reads fake); UGC archetype for high-stakes B2B claims (reads unserious).
| Dimension | Options (pick one, driven by archetype + brand) |
|---|---|
| Clothing | business professional (suit) Β· business casual (blazer) Β· casual Β· stylish casual Β· industry-specific attire |
| Background | studio (neutral, clean) Β· office (blurred, modern) Β· home office Β· lifestyle setting Β· branded (brand colors/elements) |
| Lighting | studio (key + fill, even, no harsh shadows) Β· natural (soft, diffused, warm) Β· cinematic (dramatic, moody) |
| Framing | close-up (head/shoulders β intimacy, hooks) Β· medium (head-to-waist β default, allows gesture) Β· wide (full body β environment storytelling) |
Decision rules: UGC β casual clothing + natural lighting + close-up/handheld feel. Authority β business casual + studio lighting + medium shot. Clothing must contrast with the background color. Vertical platforms default to close-up or tight medium; landscape/YouTube tolerates medium and wide.
Length by platform: social ads/organic 15β60s; landing page 30β90s; training as needed. ~2.5 words/second is a workable speaking-pace heuristic for timing the script.
One keyframe per script section (hook, each body beat, CTA). Prompt formula: [archetype] presenter, [clothing], [appearance/expression for this beat], [engaging with camera / demonstrating product], [background], [lighting], [framing], professional quality, 4K. Keep presenter description, background, and lighting identical across all frames β only expression, gesture, and any product prop change; drift here breaks the illusion of one continuous video.
If FAL_API_KEY (or FAL_KEY) is set, generate via the repo CLI (docs/fal_api.py, model fal-ai/nano-banana-pro):
python docs/creative_cli.py custom \
--category "talking-head" --name "hook-frame" \
--prompt "<keyframe prompt>" --aspect-ratio 9:16 --resolution 2K
Otherwise deliver prompts as ready-to-run commands. Note: this produces still frames for casting/storyboarding β voice, lip-sync, and motion come from downstream tools or a real shoot; audio quality is out of scope but flag to the user that it makes or breaks the video.
Always deliver this structure:
# Talking Head Video Spec β [Topic]
## Overview
- **Message (one sentence):** ...
- **Archetype:** Professional | UGC Creator | Expert | Lifestyle β [one-line reason]
- **Platform:** ... Β· **Aspect ratio:** ... Β· **Length:** ...s Β· **CTA:** ...
## Presenter definition
- Clothing: ... Β· Appearance: ... Β· Background: ... Β· Lighting: ... Β· Framing: ...
- Real person or generated: ... Β· Brand elements in frame: ...
## Script skeleton
| Section | Time | Spoken line(s) | On camera |
|---|---|---|---|
| Hook | 0β3s | "..." (β€15 words) | [expression/action] |
| Body 1 | 3βXs | "..." | ... |
| Body 2 | ... | "..." | ... |
| CTA | last 5s | "..." | ... |
## Keyframes
### KF-hook
> [full prompt β archetype, clothing, expression, background, lighting, framing, quality tags]
`python docs/creative_cli.py custom --category "talking-head" --name "kf-hook" --prompt "..." --aspect-ratio [x] --resolution 2K`
(one per section; presenter/background/lighting identical across all)
## Production notes
- Audio: [clean VO essential; mic/recording note]
- Downstream: [real shoot / avatar tool / editor] Β· B-roll or product inserts: ...
skills/creative/creative-strategist β feeds in: style guide governing presenter styling, palette, and setting.skills/creative/original-design β feeds in: a design-language brief when the video must live inside an original visual world (backgrounds, props, overlays).skills/creative/brand-asset β feeds in: logos/brand elements placed in the background or as overlays.skills/creative/image-generation β consumes: keyframe prompts when the user wants finer generation control than the CLI one-liners.skills/creative/social-graphics β consumes: keyframes as thumbnails and supporting post visuals.skills/creative/orchestrator β routes campaign work that includes presenter video through this skill.