ScrollClaw
Router and orchestrator for AI UGC video production.
How to use it
Claude (web or desktop app)
- On this page open ⋯ → Download .md, or hit Copy the whole skill.
- Save it as SKILL.md in a folder, zip the folder, then Customize → Skills → + → Create skill → Upload a skill.
- Pick the file and Save. Claude shows the name and description and runs a security scan.
- Check the skill is switched on.
- Start a new chat and describe your job in plain words. The AI follows the skill from there.
ChatGPT or another app
- ChatGPT: make a Project and paste it into Instructions.
- Neither? Paste it at the top of a new chat — it works for that chat.
Not working?
- Check which app you pasted it into — the steps above name the right one.
- Some skills need the paid tier of Claude or ChatGPT.
Paste into Claude, ChatGPT or Cursor.
Source of ScrollClaw
Show the full text152 lines
| name | description | metadata |
|---|---|---|
| scrollclaw | Router and orchestrator for AI UGC video production. Use for broad outcome requests like making a UGC video or running a campaign; it routes step-specific requests to the right sub-skill and can drive the full pipeline from persona research through virality-scored video. | openclaw: emoji: "🎬 user-invocable: true triggers: - "scrollclaw - "ugc video - "ai ugc - "make ugc - "ugc campaign - "ugc pipeline - "talking head video - "product review video - "start ugc |
ScrollClaw
AI-generated UGC videos that look like a real person pulled out their phone and started talking. Brands pay $500–$5,000 per UGC video from human creators. This pipeline produces them for $5–$50 in API costs.
The Pipeline
Brand name + URL
↓
/brand-setup → One-time brand research + file generation (Step 0)
↓
Brand + Audience
↓
/persona → Persona research, creator profiles, approved script
/first-frame → Canonical face image (Nano Banana 2)
/animate → A-roll talking head clips (Sora 2 i2v)
/b-roll → Environment + product shots (Kling 3)
/assemble → Stitch + unified voice + post-production + captions
/score → Virality gate (70+ to publish)
↓
Scroll-stopping UGC video
Core doctrine: Read _system/SKILL.md for format selection, anti-patterns, taste calibration, and pipeline routing rules.
Brand & campaign context: Read _system/references/brand-campaign-context.md for workspace structure, context matrix, and persistence protocol.
Routing
When the user invokes ScrollClaw or asks about UGC video, route to the right sub-skill based on where they are in the pipeline:
| User says / wants | Route to |
|---|---|
| "Set up a brand" / "Initialize brand" / "New brand" / "Brand research" | /brand-setup — one-time, before first campaign |
| "Make me a UGC video" / "Start a campaign" / "I need ugc" | /persona — start at the beginning |
| "Research this brand" / "Create a creator profile" / "Write a script" | /persona |
| "Generate the first frame" / "Make a face image" / "Nano Banana" | /first-frame |
| "Animate this" / "Make a talking head clip" / "Sora" / "A-roll" | /animate |
| "Generate B-roll" / "Product shot" / "Kling" | /b-roll |
| "Stitch the clips" / "Add captions" / "Post-production" / "Assemble" | /assemble |
| "Score this video" / "Is this ready to publish?" | /score |
| "Run the full pipeline" | Start at /persona, proceed sequentially |
Broad outcome requests stay at the root. Start the pipeline instead of asking the user to pick a sub-skill.
Stage-specific requests bypass the root and go straight to that sub-skill.
If the user isn't sure where they are, ask: "Where are you in the pipeline?" and show them the 6 steps above.
Contract
Input
- Required: brand/product context plus a campaign goal, or an existing campaign workspace if resuming
- Optional: format preference, creator profile, screen recordings/screenshots, existing clips, campaign slug
- Format: raw text, URL, file paths, or
workspace/campaigns/<slug>/files - Source: user prompt, campaign brief, and upstream
workspace/brand/files
Output
- Produces: either a route decision to the correct stage or a sequential full-pipeline run starting at
/persona - Format: inline orchestration plus saved workspace artifacts produced by sub-skills
- Default behavior: broad requests like "make me a UGC video" or "start a campaign" start at
/personaand continue stage by stage until blocked by missing inputs, an approval gate, or a dependency failure - Downstream use:
/persona,/first-frame,/animate,/b-roll,/assemble, and/score
Validation
- Pre-conditions: workspace exists or can be initialized before generation steps begin
- Post-conditions: the user knows the current stage, the next stage, and which workspace artifacts were produced
- Failure checks: do not leave the user at a vague route; if blocked, name the exact missing file, asset, or approval needed
Quick Start
First campaign:
- Set up brand context (one-time per brand):
- Recommended: Run
/brand-setupwith your brand name + URL — it researches and generates all three brand files automatically - Alternative: Copy templates from
assets/and fill in manually (seeassets/for templates)
- Recommended: Run
- Initialize workspace:
CAMPAIGN="my-campaign" mkdir -p workspace/campaigns/$CAMPAIGN/{creators,scripts,frames,clips,scores} cp assets/campaign-brief-template.md workspace/campaigns/$CAMPAIGN/brief.md touch workspace/campaigns/$CAMPAIGN/output-log.md touch workspace/campaigns/$CAMPAIGN/learnings.md - Fill in
workspace/campaigns/$CAMPAIGN/brief.md - Run
/persona→/first-frame→/animate→/b-roll→/assemble→/score
Check setup first:
bash scripts/check-deps.sh
What ScrollClaw Needs
| Key | Required | Used by |
|---|---|---|
FAL_KEY |
Yes | Sora 2 (A-roll) + Kling 3 (B-roll) |
REPLICATE_API_TOKEN |
Yes | Nano Banana (first frames) |
OPENROUTER_API_KEY |
Recommended | Gemini (virality scoring) |
ELEVENLABS_API_KEY |
Optional | Multi-clip voice consistency (S2S) |
Six Formats
| Format | Duration | Best for |
|---|---|---|
| Talking Head | 15-25s | Product review, honest take |
| Hook Face + Demo | 15s max | App/tool demos |
| Podcast Clip | 8-20s | Authority, credibility |
| Wall of Text | 4-8s | Hot take, faceless |
| Visual Transformation | 10-25s | Before/after concept |
| Hybrid Transformation | 20-30s | Complex mechanism explanation |
Key Findings (from testing)
- Sora's native voice > ElevenLabs TTS for talking head. TTS sounds fake.
- B-roll must be environment-matched. Extract a frame from A-roll → feed to Kling.
- Captions go LAST — after post-production. Grain degrades caption pills.
- AI cannot generate realistic app screens. Use real screenshots.
- ~1 in 3 Sora generations have hand artifacts. Reroll, don't fix the prompt.
- Multi-frame formats: chain from frame 1. Parallel generation causes face drift.
For full doctrine, format blueprints, anti-patterns, and taste calibration: _system/SKILL.md
| 1 | |
| 2 | name scrollclaw |
| 3 | description "Router and orchestrator for AI UGC video production. Use for broad outcome requests like making a UGC video or running a campaign; it routes step-specific requests to the right sub-skill and can drive the full pipeline from persona research through virality-scored video." |
| 4 | metadata |
| 5 | openclaw |
| 6 | emoji "🎬" |
| 7 | user-invocable true |
| 8 | triggers |
| 9 | - "scrollclaw" |
| 10 | - "ugc video" |
| 11 | - "ai ugc" |
| 12 | - "make ugc" |
| 13 | - "ugc campaign" |
| 14 | - "ugc pipeline" |
| 15 | - "talking head video" |
| 16 | - "product review video" |
| 17 | - "start ugc" |
| 18 | |
| 19 | |
| 20 | # ScrollClaw |
| 21 | |
| 22 | AI-generated UGC videos that look like a real person pulled out their phone and started talking. Brands pay $500–$5,000 per UGC video from human creators. This pipeline produces them for $5–$50 in API costs. |
| 23 | |
| 24 | ## The Pipeline |
| 25 | |
| 26 | |
| 27 | Brand name + URL |
| 28 | ↓ |
| 29 | /brand-setup → One-time brand research + file generation (Step 0) |
| 30 | ↓ |
| 31 | Brand + Audience |
| 32 | ↓ |
| 33 | /persona → Persona research, creator profiles, approved script |
| 34 | /first-frame → Canonical face image (Nano Banana 2) |
| 35 | /animate → A-roll talking head clips (Sora 2 i2v) |
| 36 | /b-roll → Environment + product shots (Kling 3) |
| 37 | /assemble → Stitch + unified voice + post-production + captions |
| 38 | /score → Virality gate (70+ to publish) |
| 39 | ↓ |
| 40 | Scroll-stopping UGC video |
| 41 | |
| 42 | |
| 43 | **Core doctrine:** Read `_system/SKILL.md` for format selection, anti-patterns, taste calibration, and pipeline routing rules. |
| 44 | |
| 45 | **Brand & campaign context:** Read `_system/references/brand-campaign-context.md` for workspace structure, context matrix, and persistence protocol. |
| 46 | |
| 47 | |
| 48 | |
| 49 | ## Routing |
| 50 | |
| 51 | When the user invokes ScrollClaw or asks about UGC video, route to the right sub-skill based on where they are in the pipeline: |
| 52 | |
| 53 | | User says / wants | Route to | |
| 54 | |-------------------|----------| |
| 55 | | "Set up a brand" / "Initialize brand" / "New brand" / "Brand research" | `/brand-setup` — one-time, before first campaign | |
| 56 | | "Make me a UGC video" / "Start a campaign" / "I need ugc" | `/persona` — start at the beginning | |
| 57 | | "Research this brand" / "Create a creator profile" / "Write a script" | `/persona` | |
| 58 | | "Generate the first frame" / "Make a face image" / "Nano Banana" | `/first-frame` | |
| 59 | | "Animate this" / "Make a talking head clip" / "Sora" / "A-roll" | `/animate` | |
| 60 | | "Generate B-roll" / "Product shot" / "Kling" | `/b-roll` | |
| 61 | | "Stitch the clips" / "Add captions" / "Post-production" / "Assemble" | `/assemble` | |
| 62 | | "Score this video" / "Is this ready to publish?" | `/score` | |
| 63 | | "Run the full pipeline" | Start at `/persona`, proceed sequentially | |
| 64 | |
| 65 | Broad outcome requests stay at the root. Start the pipeline instead of asking the user to pick a sub-skill. |
| 66 | |
| 67 | Stage-specific requests bypass the root and go straight to that sub-skill. |
| 68 | |
| 69 | If the user isn't sure where they are, ask: **"Where are you in the pipeline?"** and show them the 6 steps above. |
| 70 | |
| 71 | ## Contract |
| 72 | |
| 73 | ### Input |
| 74 | Required: brand/product context plus a campaign goal, or an existing campaign workspace if resuming |
| 75 | Optional: format preference, creator profile, screen recordings/screenshots, existing clips, campaign slug |
| 76 | Format: raw text, URL, file paths, or `workspace/campaigns/<slug>/` files |
| 77 | Source: user prompt, campaign brief, and upstream `workspace/brand/` files |
| 78 | |
| 79 | ### Output |
| 80 | Produces: either a route decision to the correct stage or a sequential full-pipeline run starting at `/persona` |
| 81 | Format: inline orchestration plus saved workspace artifacts produced by sub-skills |
| 82 | Default behavior: broad requests like "make me a UGC video" or "start a campaign" start at `/persona` and continue stage by stage until blocked by missing inputs, an approval gate, or a dependency failure |
| 83 | Downstream use: `/persona`, `/first-frame`, `/animate`, `/b-roll`, `/assemble`, and `/score` |
| 84 | |
| 85 | ### Validation |
| 86 | Pre-conditions: workspace exists or can be initialized before generation steps begin |
| 87 | Post-conditions: the user knows the current stage, the next stage, and which workspace artifacts were produced |
| 88 | Failure checks: do not leave the user at a vague route; if blocked, name the exact missing file, asset, or approval needed |
| 89 | |
| 90 | |
| 91 | |
| 92 | ## Quick Start |
| 93 | |
| 94 | **First campaign:** |
| 95 | Set up brand context (one-time per brand): |
| 96 | **Recommended:** Run `/brand-setup` with your brand name + URL — it researches and generates all three brand files automatically |
| 97 | **Alternative:** Copy templates from `assets/` and fill in manually (see `assets/` for templates) |
| 98 | Initialize workspace: |
| 99 | |
| 100 | CAMPAIGN="my-campaign" |
| 101 | mkdir -p workspace/campaigns/$CAMPAIGN/{creators,scripts,frames,clips,scores} |
| 102 | cp assets/campaign-brief-template.md workspace/campaigns/$CAMPAIGN/brief.md |
| 103 | touch workspace/campaigns/$CAMPAIGN/output-log.md |
| 104 | touch workspace/campaigns/$CAMPAIGN/learnings.md |
| 105 | |
| 106 | Fill in `workspace/campaigns/$CAMPAIGN/brief.md` |
| 107 | Run `/persona` → `/first-frame` → `/animate` → `/b-roll` → `/assemble` → `/score` |
| 108 | |
| 109 | **Check setup first:** |
| 110 | |
| 111 | bash scripts/check-deps.sh |
| 112 | |
| 113 | |
| 114 | |
| 115 | |
| 116 | ## What ScrollClaw Needs |
| 117 | |
| 118 | | Key | Required | Used by | |
| 119 | |-----|----------|---------| |
| 120 | | `FAL_KEY` | Yes | Sora 2 (A-roll) + Kling 3 (B-roll) | |
| 121 | | `REPLICATE_API_TOKEN` | Yes | Nano Banana (first frames) | |
| 122 | | `OPENROUTER_API_KEY` | Recommended | Gemini (virality scoring) | |
| 123 | | `ELEVENLABS_API_KEY` | Optional | Multi-clip voice consistency (S2S) | |
| 124 | |
| 125 | |
| 126 | |
| 127 | ## Six Formats |
| 128 | |
| 129 | | Format | Duration | Best for | |
| 130 | |--------|----------|---------| |
| 131 | | Talking Head | 15-25s | Product review, honest take | |
| 132 | | Hook Face + Demo | 15s max | App/tool demos | |
| 133 | | Podcast Clip | 8-20s | Authority, credibility | |
| 134 | | Wall of Text | 4-8s | Hot take, faceless | |
| 135 | | Visual Transformation | 10-25s | Before/after concept | |
| 136 | | Hybrid Transformation | 20-30s | Complex mechanism explanation | |
| 137 | |
| 138 | |
| 139 | |
| 140 | ## Key Findings (from testing) |
| 141 | |
| 142 | Sora's native voice > ElevenLabs TTS for talking head. TTS sounds fake. |
| 143 | B-roll must be environment-matched. Extract a frame from A-roll → feed to Kling. |
| 144 | Captions go LAST — after post-production. Grain degrades caption pills. |
| 145 | AI cannot generate realistic app screens. Use real screenshots. |
| 146 | ~1 in 3 Sora generations have hand artifacts. Reroll, don't fix the prompt. |
| 147 | Multi-frame formats: chain from frame 1. Parallel generation causes face drift. |
| 148 | |
| 149 | |
| 150 | |
| 151 | For full doctrine, format blueprints, anti-patterns, and taste calibration: [`_system/SKILL.md`] |
| 152 |
Discussion
Browse more free Claude skills or everything in Content creator.