← Skills

/video-promo

Need video marketing material

install: npx skills add fortunto2/solo-factory/video-promo
phase: promotion

Generate a promo video plan from a project’s PRD. Produces a 30-45 second video script with shot-by-shot storyboard. Detects Montage-tool or Remotion in the project and outputs compatible config when found.

# /video-promo

Generate a promo video plan from a project's PRD. Produces a 30-45 second video script with shot-by-shot storyboard. Detects Montage-tool or Remotion in the project and outputs compatible config when found.

## MCP Tools (use if available)

- `project_code_search(query, project)` — find UI components, screens, features to showcase
- `project_info(name)` — get project stack and details
- `kb_search(query)` — find video production methodology

If MCP tools are not available, fall back to Glob + Grep + Read.

## Steps

1. **Parse project** from `$ARGUMENTS`.
   - Read PRD (`docs/prd.md`), README, or CLAUDE.md for product info.
   - If empty: ask via AskUserQuestion.

2. **Detect video tooling** in the project:
   - Check `package.json` for `remotion`, `@remotion/cli` → Remotion project
   - Check for `montage.config.*`, `pnpm montage` → Montage-tool project
   - Check for `ffmpeg` usage in scripts → FFmpeg pipeline
   - If none found: output plain storyboard (no specific tooling config)

3. **Extract key screens/features** to showcase:
   - If MCP available: `project_code_search("main screen OR hero OR dashboard", project)` — find showcase-worthy UI
   - Otherwise: Glob for screenshots, mockups, or UI component files
   - Read PRD for top 3-5 features to demonstrate

4. **Forced reasoning — video strategy:**
   Before scripting, write out:
   - **Goal:** What should the viewer DO after watching? (download, sign up, visit)
   - **Hook type:** Question? Surprising stat? Pain point? Bold claim?
   - **Demo moments:** 3 key product moments to show on screen
   - **Emotion arc:** Frustration → Discovery → Relief/Delight

5. **Generate video script** (30-45 seconds):

   ```markdown
   ## Video Script: {Project Name}

   **Duration:** 30-45 seconds
   **Format:** Vertical (9:16) for Reels/TikTok/Shorts
   **Style:** Screen recording + text overlays

   ### HOOK (0:00-0:03) — 3 seconds
   **Audio:** "{hook line — question or bold statement}"
   **Visual:** {what appears on screen — text overlay on gradient/blurred BG}

   ### PROBLEM (0:03-0:10) — 7 seconds
   **Audio:** "{describe the pain in user's words}"
   **Visual:** {show the frustrating current state — competitor UX, manual process, etc.}

   ### DEMO (0:10-0:25) — 15 seconds
   **Audio:** "{narrate what the product does}"
   **Visual:**
   - Shot 1 (5s): {first feature demo — screen recording}
   - Shot 2 (5s): {second feature demo}
   - Shot 3 (5s): {wow moment — the key differentiator}

   ### CTA (0:25-0:30) — 5 seconds
   **Audio:** "{call to action}"
   **Visual:** {product logo + URL + download badge}
   ```

6. **Generate tooling config** (if applicable):

   ### If Remotion detected:
   ```markdown
   ## Remotion Component Spec

   Component: `PromoVideo.tsx`
   Duration: 900 frames (30fps × 30s)

   Sequences:
   - HookSequence (0-90): Text animation on gradient
   - ProblemSequence (90-300): Screen recording import
   - DemoSequence (300-750): 3 feature recordings with transitions
   - CTASequence (750-900): Logo + URL fade in

   Assets needed:
   - screen-recording-problem.mp4
   - screen-recording-feature-1.mp4
   - screen-recording-feature-2.mp4
   - screen-recording-feature-3.mp4
   - logo.png
   - background-music.mp3
   ```

   ### If montage tool detected:
   ```markdown
   ## Montage Config

   Clips:
   - problem-clip.mp4 (7s)
   - demo-feature-1.mp4 (5s)
   - demo-feature-2.mp4 (5s)
   - demo-wow-moment.mp4 (5s)

   Music: {suggest genre/BPM for beat-sync}
   Transitions: crossfade (0.5s)
   Text overlays: hook, CTA
   ```

7. **Write plan** to `docs/video-promo.md`:

   ```markdown
   # Video Promo Plan: {Project Name}

   **Generated:** {YYYY-MM-DD}
   **Duration:** 30-45 seconds
   **Format:** Vertical 9:16
   **Tooling:** {Remotion / Montage-tool / Manual}

   ## Script
   {full script from step 5}

   ## Assets Checklist
   - [ ] Screen recording: {feature 1}
   - [ ] Screen recording: {feature 2}
   - [ ] Screen recording: {wow moment}
   - [ ] Logo (transparent PNG)
   - [ ] Background music (royalty-free, upbeat)

   ## Tooling Config
   {config from step 6, or "Record manually and edit in CapCut/iMovie"}

   ---
   *Generated by /video-promo. Record assets, then render.*
   ```

8. **Output summary** — script overview, assets needed, suggested next steps.

## Notes

- Script assumes screen recording as primary footage — no actor needed
- For iOS apps: use Simulator recording or device mirroring
- For web: use browser screen recording
- Music: suggest royalty-free sources (Artlist, Epidemic Sound, YouTube Audio Library)
- This skill generates the PLAN — actual video rendering is manual or via Montage-tool/Remotion

## Common Issues

### No video tooling detected
**Cause:** Project doesn't use Remotion or Montage-tool.
**Fix:** Skill outputs plain storyboard by default. Record manually and edit in CapCut/iMovie, or add Remotion to the project.

### Script too long for short-form video
**Cause:** Too many features to showcase.
**Fix:** Pick TOP 3 features only. 30-45 seconds = ~75-100 words of narration. Less is more.

### No screenshots or UI to record
**Cause:** Product not built yet or no visual interface.
**Fix:** Use mockups, wireframes, or describe intended visuals in the storyboard. Record after MVP is built.
Sources