[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71KBKNMPP6A26AP1DCPFVNP":3,"skill-same:01M71KBKNMPP6A26AP1DCPFVNP":63},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":28,"linkOnly":29,"markdownContent":30,"markdownBody":31,"frontMatter":32,"refName":33,"commitSha":34,"skillDirectory":35,"forksCount":36,"repositoryHtmlUrl":37,"repositoryHomepageUrl":38,"ownerHtmlUrl":39,"ownerBlogUrl":40,"ownerDescription":41,"updatedAt":42,"install":43,"resources":56},"01M71KBKNMPP6A26AP1DCPFVNP","storyboard",null,"Plan videos with shot lists, scripts, storyboards, and filming guides for social media.","clawdsolana\u002FOpenClawd","clawdsolana","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F279036008?v=4","01M71JTVF9FNGKE2SVJRPTQM31","OpenClawd","01M71JTVGCKWBSS8ZYC1HYWVA5",2,"MIT","https:\u002F\u002Fgithub.com\u002Fclawdsolana\u002FOpenClawd\u002Fblob\u002Fmain\u002Fsecondary_skills\u002Fstoryboard\u002FSKILL.md",[],[5,19,20,21,22,23,24,25,26,27],"Media","social","guides","plan","scripts","for","social media","with","videos","2026-11-10 10:12:30",false,"---\nname: storyboard\ndescription: Plan videos with shot lists, scripts, storyboards, and filming guides for social media.\n---\n\n# Storyboarding for Social Content\n\n## OpenClawd Operator Adaptation\n\nRun this skill as part of the OpenClawd operator deck. Preserve the skill-specific workflow below, but frame outputs for Solana-native agents when relevant: prefer OpenClawd language, note whether the work can support autonomous agent operations, and keep financial, legal, tax, hiring, medical, or other regulated outputs informational unless the skill already requires a stricter disclaimer. Use the Llobster Legend persona only as light operator framing; do not let branding override accuracy, safety, or the user's stated domain.\n\n\nShot-by-shot storyboards for TikTok, Reels, YouTube Shorts, and UGC ad scripts. Built around retention physics, not film-school conventions.\n\n## When to Use\n\nActivate this skill when the user says any of the following (or similar phrasing):\n\n### Direct triggers (high confidence)\n\n- \"storyboard,\" \"shot list,\" \"shot-by-shot breakdown\"\n- \"video script,\" \"script for my video,\" \"TikTok script,\" \"Reel script\"\n\n- \"creator brief,\" \"filming guide,\" \"filming plan\"\n- \"UGC ad script,\" \"UGC brief\"\n\n- \"pre-production plan\"\n- \"hook ideas,\" \"hook variants,\" \"video hooks\"\n\n- \"plan my next video,\" \"plan a video\"\n- \"video ad script\"\n\n- \"content series for video,\" \"plan a video series\"\n\n#### Contextual triggers (use when intent is planning\u002Ffilming, not rendering)\n\n- \"plan a TikTok \u002F Reel \u002F Short\" — planning what to film, not auto-generating a rendered video\n- \"video content plan\" — planning a filming schedule, not writing blog posts\n\n- \"social media video ideas\" — brainstorming video concepts, not written captions\n- \"create a TikTok ad\" — when the user intends to film it themselves (ask if ambiguous)\n\n- \"ad campaign for [product]\" — when the user mentions video, filming, or creators (otherwise may be ad-creative for static ads)\n\n##### When to ask for clarification\n\nIf the user says \"make me a video,\" \"create a TikTok,\" or \"video ad\" without specifying whether they want a plan to film or a rendered animation, ask:\n\n> \"Would you like me to plan a video for you to film (storyboard with shot list and script), or create an animated video that renders automatically?\"\n\n## When NOT to Use\n\n- **Static ad images** → use ad-creative skill instead\n- **Written social media posts, blog content, email copy** → use content-machine skill instead\n\n- **Brand identity (logos, colors, typography)** → use branding-generator skill instead\n- **Code-rendered animated videos** (motion graphics, animated explainers that play automatically) → use video-js skill instead\n\n- **Slide decks \u002F presentations** → use slides skill instead\n- **SEO landing pages** → use programmatic-seo skill instead\n\n### Key Distinction from Similar Skills\n\n| This skill (storyboard) | video-js | ad-creative | content-machine |\n\n|---|---|---|---|\n\n| Plans videos you go **film yourself**|**Renders**animated videos from code | Creates**static ad images**| Writes**text content** (posts, blogs, emails) |\n\n| Output: script + shot list + visual storyboard on canvas + creator brief | Output: playable animated video in browser | Output: designed image files | Output: written copy |\n\n| For real-camera, UGC, creator content | For motion graphics, explainers, animated ads | For display ads, social image posts | For captions, articles, newsletters |\n\n## Platform Specs (2025-2026)\n\n| Platform | Ratio | Resolution | Max duration | Sweet spot | File |\n\n|---|---|---|---|---|---|\n\n| TikTok | 9:16 | 1080×1920 | 10 min in-app \u002F 60 min upload | **21-34 sec** | MP4\u002FMOV, H.264, 287MB mobile \u002F 500MB web |\n\n| Instagram Reels | 9:16 | 1080×1920 | 3 min in-app \u002F 15 min upload | **\u003C90 sec** for Explore boost | MP4\u002FMOV, 4GB |\n\n| YouTube Shorts | 9:16 | 1080×1920 (up to 4K) | **3 min** | 15-60 sec | MP4 |\n\n| YouTube long-form | 16:9 | 1920×1080+ | unlimited | 8-12 min (mid-roll ads) | — |\n\n**Universal safe zone for cross-posting:**Keep all text, faces, logos inside the**center 900×1400** of the 1080×1920 frame. Top 14% + bottom 20-35% are covered by UI on at least one platform.\n\n## The 3-Second Rule (Data-Backed)\n\nTikTok's algorithm scores hook retention **separately** from total watch time. 2025 creator analytics:\n\n| 3-sec retention | View multiplier | Outcome |\n\n|---|---|---|\n\n| **85%+** | 2.8× | Viral tier — FYP push |\n\n| **70-85%** | 2.2× | Optimal reach |\n\n| **60-70%** | 1.6× | Average |\n\n| **\u003C60%** | baseline | Minimal distribution |\n\n**Target: keep ≥65% of viewers past 0:03.** If you're losing >35% in 3 seconds, the hook is broken — rewrite the opening, not the body. 84% of viral TikToks in 2025 used an identifiable psychological trigger in the first 3 seconds.\n\n## Named Hook Formulas\n\nThe scroll-stopping element must fire in **0-2 seconds**. Seconds 3-5 expand it. **Never introduce — interrupt.** Banned openers: \"Hey guys,\" \"Welcome back,\" \"So today I'm gonna...\"\n\n| Hook | Template | Trigger |\n\n|---|---|---|\n\n| **POV** | \"POV: you just found out [revelation]\" | Puts viewer inside the scenario; personal relevance |\n\n| **Stop-scrolling callout** | \"Stop scrolling if you're a [role] who [pain]\" | Audience self-selects; filters for high-intent |\n\n| **Contrarian** | \"Everyone says X. That's completely wrong.\" | Cognitive dissonance demands resolution |\n\n| **Unfinished story** | \"I almost [drastic action] until I found...\" | Open loop — Zeigarnik effect |\n\n| **Negative listicle** | \"3 [category] mistakes that are costing you [outcome]\" | Loss aversion > gain framing |\n\n| **Number hook** | \"$47,000 in 30 days — here's the exact breakdown\" | Specificity = credibility |\n\n| **Secret reveal** | \"What [authority] doesn't want you to know about X\" | Insider info promise |\n\n| **Surprise reaction** | Open on a shocked face, silent beat, then reveal | Viewer's brain asks \"what are they reacting to?\" |\n\n| **Visual interrupt** | Start mid-action, mid-motion, mid-chaos | Pattern break — no static frame 1 |\n\n**The silent test:** Watch your first 3 seconds on mute. If text overlay + visual alone don't communicate the promise, it fails — ~85% of social video is watched muted.\n\n## Script Structure by Video Type\n\n### Organic short-form (15-60s) — Hook → Value → Loop\n\n```text\n\n0:00-0:02 HOOK Visual interrupt + text overlay with the promise\n\n0:02-0:05 EXPAND Why this matters to YOU (the viewer)\n\n0:05-0:XX DELIVER The value. Pattern-interrupt every 3-5s: cut, zoom, text pop, angle change\n\n0:XX-end LOOP\u002FCTA End mid-sentence OR loop back to frame 1 for rewatch. Soft CTA in caption, not in video.\n\n```\n\nMid-video retention hooks at ~15s and ~30s (\"but here's the part nobody talks about...\").\n\n### UGC ad (15-30s) — Direct Response formula\n\nThe proven DR structure: **Hook → Problem → Agitate → Solution → Proof → CTA**\n\n```text\n\n0:00-0:02 HOOK \"I was about to [give up on X]...\"\n\n0:02-0:05 PROBLEM Show\u002Fsay the pain. Be specific.\n\n0:05-0:08 AGITATE \"And it just kept getting worse — [consequence]\"\n\n0:08-0:20 SOLUTION Product in hand. Demo it working. Lo-fi > polished.\n\n0:15-0:22 PROOF Green-screen reviews behind you, or \"my [authority figure] friend told me...\"\n\n0:22-0:30 CTA Verbal + text overlay. \"Link in bio\" \u002F \"Use code X\"\n\n```\n\n#### UGC ad writing rules\n\n- Write like you text a friend — contractions, \"literally,\" \"obsessed,\" imperfect grammar\n- One emotion per script (relief \u002F excitement \u002F transformation — pick one)\n\n- Modular shooting: film hook, problem, demo, CTA as separate clips → mix-and-match 3 hooks × 1 body × 2 CTAs = 6 ad variants\n- For TikTok Spark Ads, script must feel organic — get creator authorization codes; Spark Ads keep organic engagement metrics\n\n- Research pain points in TikTok comments \u002F Amazon reviews \u002F Reddit before writing — use their exact words\n\n**Vertical-specific angles:** Beauty → before\u002Fafter transformation. Fitness → \"30 days with X\" challenge. SaaS → screen recording solving the problem in \u003C10s. Ecom → unboxing + speed-of-delivery.\n\n## Shot-by-Shot Storyboard Format\n\n| \\# | Time | Shot | Visual | On-screen text | VO \u002F Audio | Retention device |\n\n|---|---|---|---|---|---|---|\n\n| 1 | 0:00-0:02 | CU face | Shocked expression, product out of frame | \"I was today years old...\" | [silence \u002F gasp] | Surprise reaction hook |\n\n| 2 | 0:02-0:05 | MS | Hold up product | \"...when I learned THIS\" | \"So I've been doing X wrong for 3 years\" | Text reveal |\n\n| 3 | 0:05-0:08 | POV | Hands demo the product | — | VO continues | Angle change = pattern interrupt |\n\n| 4 | 0:08-0:12 | Split screen | Before \u002F After | \"BEFORE → AFTER\" | — | Visual proof |\n\n| 5 | 0:12-0:15 | CU face | Direct to camera | \"Link in my bio\" | \"Code SAVE20 — thank me later\" | CTA |\n\n**Shot types:** CU (close-up), MS (medium), WS (wide), POV, OTS (over-the-shoulder), Screen recording, Green-screen, B-roll.\n\n## Platform-Specific Adaptations\n\nWhen the user targets multiple platforms, **always generate platform-tailored cut versions** in addition to the master storyboard. Each platform has different pacing, duration sweet spots, and UI overlays that affect how the same content should be edited.\n\n### Adaptation Strategy\n\nAfter building the master storyboard, create a **Platform Adaptation Table** on the canvas showing how to re-cut for each target platform:\n\n| Platform | Target Duration | Pacing | Key Adjustments |\n\n|---|---|---|---|\n\n| **TikTok** | 21-34 sec | Fastest — cut every 1.5-2 sec | Tightest edit. Remove any shot >3s. Combine AGITATE into PROBLEM if needed. Text overlays must be larger (thumb-stopping). End with loop or abrupt cut, not fade. |\n\n| **Instagram Reels** | 30-60 sec | Medium — cut every 2-4 sec | Can breathe slightly more. Add a 2nd proof beat if available. Reels rewards saves — add a \"save this\" text cue. Caption overlay style should match IG aesthetic (cleaner fonts). |\n\n| **YouTube Shorts** | 30-60 sec | Medium — cut every 3-5 sec | Allows the longest version. Can include extra context or a longer demo. Subscribe CTA works better than \"link in bio.\" End screen overlay is supported. |\n\n| **YouTube long-form** | Re-cut to 16:9 | Slowest — cut every 4-8 sec | Horizontal reframe. Can expand into a full explainer. Add intro context (5-10s) before the hook. Mid-roll friendly at 8+ min. B-roll and screen recordings can run longer. |\n\n### How to Generate Adaptations\n\nFor each platform the user targets:\n\n1. Start from the master storyboard (all shots)\n2. Note which shots to **trim**, **merge**, or **cut entirely** for that platform's sweet spot\n\n3. Adjust text overlay sizing for the platform's safe zone\n4. Modify the CTA to match platform conventions (TikTok: \"link in bio\" \u002F YouTube: \"subscribe\" \u002F Reels: \"save this\")\n\n5. Add platform-specific retention devices (TikTok: loop endings \u002F Reels: save prompts \u002F Shorts: subscribe nudge)\n\nRender the adaptation table as a separate section on the canvas below the master storyboard.\n\n## Localization & Cultural Context\n\nWhen the target audience speaks a language other than English or is in a specific cultural region, the storyboard must adapt beyond simple translation. **Always ask the user** what language\u002Fregion the video targets if not obvious from context.\n\n### Localization Checklist\n\n1. **Language & Slang** — Write the script in the audience's natural language, including local slang, colloquialisms, and informal speech patterns. UGC scripts must sound like how people actually talk in that region, not formal\u002Ftextbook language.\n\n- Research local expressions: use `webSearch` for \"[region] slang [year]\" or \"[region] TikTok popular phrases\" to find current vernacular\n- Example: Dominican Republic → \"mano,\" \"vaina,\" \"ta to,\" \"dimelo\" — not formal Castilian Spanish\n\n1. **Cultural Pain Points** — The problem\u002Fagitate phases must reference culturally specific pain points. What frustrates a young professional in Santo Domingo is different from what frustrates one in Austin.\n\n- Use `webSearch` for \"[region] [industry] frustrations\" or \"[region] Reddit\u002Fforum complaints about [topic]\" to find authentic pain points\n- Reference local platforms, banks, services, stores by name when relevant\n\n1. **Visual & Setting Cues** — Image prompts for shot generation should reflect the local environment:\n\n- Architecture, street scenes, typical home interiors for the region\n- Clothing, food, vehicles, and brands the local audience recognizes\n\n- Weather and lighting conditions typical of the region\n\n1. **Currency & Numbers** — Always use local currency (RD$, MXN$, R$, etc.) in text overlays and voiceover. Specific local amounts feel more authentic than converted USD figures.\n2. **Music & Audio** — Search for trending sounds specific to that region's TikTok\u002FReels ecosystem. Regional music trends vary significantly.\n\n- Use `webSearch` for \"[country] TikTok trending sounds [month] [year]\"\n\n1. **Humor & Tone** — Comedy styles vary by culture. What's funny in the US may not land in Latin America and vice versa:\n\n- Latin America: Self-deprecating humor, exaggeration, family\u002Ffriend dynamics, \"que vaina\" moments\n- US: Sarcasm, absurdist, \"relatable millennial\u002Fgen-z\" humor\n\n- Europe: Dry wit, understatement\n- Always research: `webSearch` for \"[region] comedy style TikTok\" or \"[region] viral funny videos [year]\"\n\n### Language-Specific Script Format\n\nWhen writing non-English scripts, format as:\n\n```text\n\nON-SCREEN TEXT: [text in target language]\n\nVO: [voiceover in target language]\n\n(Translation: [English translation for creator briefs sent to non-local teams])\n\n```\n\nOnly include the English translation line if the user indicates the storyboard will be shared with people who don't speak the target language.\n\n## Content Series Planning\n\nWhen the product or topic supports it, **offer to plan a multi-video content series** instead of a single video. A series builds audience familiarity, improves algorithmic favor (watch-through from video to video), and lets you test angles systematically.\n\n### Series Structure\n\nA content series is 3-6 videos with a shared theme but different angles. Each video is a standalone storyboard but they share:\n\n- **Consistent creator\u002Fcharacter** — same person, same setting, recognizable style\n- **Series hook** — a recurring opening pattern viewers learn to recognize (\"Part X of things your bank doesn't want you to know\")\n\n- **Progressive reveals** — each video teases the next (\"but wait until you see what happened when I tried THIS...\")\n- **Shared visual identity** — same text overlay style, color accents, caption format\n\n### Series Templates by Goal\n\n#### Product launch (3 videos)\n\n| \\# | Video | Angle | Hook Style |\n\n|---|---|---|---|\n\n| 1 | The Problem | Pain-focused, no product mention | Contrarian or Negative Listicle |\n\n| 2 | The Discovery | \"I found this thing...\" — soft product intro | Unfinished Story |\n\n| 3 | The Result | Transformation proof, hard CTA | Number Hook or Before\u002FAfter |\n\n##### Ongoing content (weekly, 4-6 videos)\n\n| \\# | Video | Angle | Hook Style |\n\n|---|---|---|---|\n\n| 1 | Myth-buster | \"Everyone thinks X but actually...\" | Contrarian |\n\n| 2 | Quick tip | One actionable tip in \u003C30s | Number Hook |\n\n| 3 | Story time | Personal experience with the pain point | Unfinished Story |\n\n| 4 | Behind the scenes | Show the product\u002Fprocess in action | Visual Interrupt |\n\n| 5 | User proof | Testimonial or user-submitted content | Social Proof |\n\n| 6 | Trend-jack | Adapt a trending format to your niche | Platform-specific |\n\n### Series Canvas Layout\n\nWhen planning a series, add a **Series Overview** section on the canvas above the individual storyboards:\n\n1. **Series title bar** — series name, total video count, posting cadence, target platform\n2. **Video cards** — one card per video in the series showing: video number, angle, hook type, estimated duration, and how it connects to the next video\n\n3. **Then the full storyboard** for whichever video the user wants to develop first\n\nAlways ask: \"Would you like me to plan this as a standalone video or as part of a content series?\"\n\n## Creator Brief Export\n\nAfter building the storyboard on the canvas, **always generate a downloadable creator brief** as a clean markdown file. This is what gets sent to the person who will actually film the video.\n\n### Creator Brief Format\n\nSave to `attached_assets\u002Fcreator_brief_[project_name].md` and present to the user using the file presentation tool.\n\n```markdown\n\n# Creator Brief: [Video Title]\n\n## Overview\n\n- **Product\u002FBrand:** [name]\n- **Platform:** [target platforms]\n\n- **Duration:** [target length]\n- **Tone:** [funny \u002F dramatic \u002F authentic \u002F etc.]\n\n- **Target Audience:** [who]\n\n## Shot List\n\n### Shot 1: HOOK (0:00-0:02)\n\n- **Camera:** [CU \u002F MS \u002F WS \u002F POV]\n- **What to film:** [specific visual direction]\n\n- **On-screen text:** \"[exact text]\"\n- **Say this:** \"[exact voiceover line]\"\n\n- **Wardrobe\u002FSetting:** [any specific requirements]\n- **Mood:** [the feeling this shot should convey]\n\n### Shot 2: ...\n\n[continue for all shots]\n\n## Filming Notes\n\n- [ ] Film on phone (no ring light, no DSLR)\n- [ ] Natural light, casual\u002Freal setting\n\n- [ ] Film each section (hook, problem, demo, CTA) as separate clips\n- [ ] Total filming time: ~[estimate] minutes\n\n- [ ] Wardrobe: [specific notes or \"casual, everyday clothes\"]\n- [ ] Props needed: [list any products, phones, items]\n\n## Caption & Hashtags\n\n- **Caption:** [suggested caption text]\n- **Hashtags:** [platform-appropriate hashtags]\n\n- **CTA in caption:** [e.g., \"Link in bio for...\" ]\n\n## A\u002FB Variants\n\nFilm these 3 alternative openings (same body, different hooks):\n\n1. **Hook A ([type]):** \"[line]\"\n2. **Hook B ([type]):** \"[line]\"\n\n3. **Hook C ([type]):** \"[line]\"\n\n## Platform-Specific Notes\n\n[Any re-cut or adaptation notes per platform]\n\n```\n\n## Trending Content Research\n\nBefore writing any storyboard script, **always perform trending content research** for the user's niche and target platform. This grounds the script in what's actually working right now, not generic best practices.\n\n### Research Steps\n\n1. **Trending hooks in the niche:**\n\n- `webSearch(\"[industry] TikTok ad hooks [year]\")`\n- `webSearch(\"[industry] viral video examples [year]\")`\n\n- `webSearch(\"best [industry] UGC ads [quarter] [year]\")`\n\n1. **Trending sounds and formats:**\n\n- `webSearch(\"[platform] trending sounds [month] [year]\")`\n- `webSearch(\"[platform] trending formats [year]\")`\n\n- For regional content: `webSearch(\"[country] [platform] trending sounds [month] [year]\")`\n\n1. **Competitor analysis:**\n\n- `webSearch(\"[competitor brand] TikTok ads\")`\n- `webSearch(\"[industry] top performing social ads [year]\")`\n\n- Note what hooks, formats, and CTAs competitors are using\n\n1. **Pain point mining:**\n\n- `webSearch(\"[product category] complaints Reddit\")`\n- `webSearch(\"[product category] reviews frustrations\")`\n\n- `webSearch(\"[industry] [region] pain points\")`\n\n### Research Output\n\nSummarize findings in a **Research Notes** section on the canvas (light-blue note) including:\n\n- 2-3 trending hooks spotted in the niche\n- Current trending sound\u002Fformat recommendation\n\n- Top competitor ad observations\n- 3-5 authentic pain point phrases sourced from real users\n\nThis research informs the script but is also visible to the user so they understand the strategic thinking behind each creative decision.\n\n## Industry Performance Benchmarks\n\nInclude relevant benchmarks on the canvas when available. Use `webSearch` to find current data for the user's specific industry and region.\n\n### Common Benchmark Searches\n\n- `webSearch(\"[industry] UGC ad benchmarks [year]\")` — CPM, CTR, conversion rates\n- `webSearch(\"[industry] TikTok ad performance [year]\")` — platform-specific metrics\n\n- `webSearch(\"[region] social media ad costs [year]\")` — regional CPM\u002FCPC data\n- `webSearch(\"[industry] average video engagement rate [platform] [year]\")`\n\n### Benchmark Display\n\nAdd a **Performance Benchmarks** note (light-green) on the canvas with:\n\n- Industry average CPM for the target platform and region\n- Average CTR for UGC ads in this vertical\n\n- Expected view-through rate by video length\n- Conversion benchmarks if available (e.g., app installs, sign-ups)\n\nFlag these as reference points, not guarantees. Performance varies based on creative quality, targeting, and budget.\n\n## Visual Output — Always Use the Design Canvas\n\n**Always render the storyboard visually on the design canvas** using the `canvas` skill. Do not just output a text table — build a real, visual storyboard with a generated image for every shot.\n\n### Generated Shot Images\n\nUse the `media-generation` skill to **generate an image for every shot** in the storyboard. Each image should visualize exactly what the camera sees for that shot — match the shot type (CU, MS, WS, POV, etc.), framing, subject, and mood described in the storyboard. These are the storyboard frames, not placeholders.\n\nWhen the video targets a specific region or culture, image prompts **must** reflect the local environment, people, and visual context (see Localization section).\n\n### Canvas Layout\n\nEach shot is a vertical stack on the canvas, arranged left-to-right as a horizontal timeline:\n\n1. **Shot image** (`image` shape, 400w × 300h) — the generated frame for this shot\n2. **Metadata bar** (`geo` shape, 400w × 60h) — shot number, timestamp, and shot type. Color-coded by purpose: red\u002Forange for hook shots, blue for value delivery, green for CTA.\n\n3. **Script\u002FVO bar** (`geo` shape, 400w × 80h) — the voiceover line, on-screen text, or audio direction for this shot\n\nUse 440px horizontal spacing between shot columns. Add a **title shape** across the top with the video concept, platform, and target duration.\n\nFor long storyboards (>8 shots), wrap to a second row.\n\n### Full Canvas Structure (top to bottom)\n\n1. **Title bar** — video concept, platform, duration, tone\n2. **Subtitle** — target audience, angle, script structure\n\n3. **Shot timeline** — images + metadata + scripts (left to right)\n4. **A\u002FB Hook Variants** — 3 alternative openings\n\n5. **Platform Adaptations** — re-cut notes per target platform (if multi-platform)\n6. **Research Notes** — trending hooks, competitor observations (light-blue)\n\n7. **Performance Benchmarks** — industry metrics for reference (light-green)\n8. **Production Notes** — filming instructions (light-blue)\n\n9. **Audio Notes** — music, sound effects, VO direction (light-green)\n\n## Production Notes\n\n- **Cuts:** Every 1.5-3 sec on TikTok, every 3-5 sec on YouTube. Static shots >5s bleed viewers.\n- **Captions:** Always burned-in. Platform auto-captions are unreliable and can't be styled.\n\n- **Audio:** Trending sound at low volume under VO > original audio only. Use `webSearch` for \"[platform] trending sounds this week\" — shelf life is ~7-14 days.\n- **UGC aesthetic:** Phone camera, natural light, slightly messy background. Ring lights and DSLRs read as \"ad\" and tank trust. Authenticity converts 3-4× polished.\n\n- **Research:** `webSearch`for current top-performing ad hooks — e.g.`webSearch(\"[industry] TikTok ad hooks 2026\")`or`webSearch(\"[industry] viral ad examples\")`. The TikTok Creative Center (ads.tiktok.com\u002Fbusiness\u002Fcreativecenter) is a useful reference but requires direct browser interaction to filter; search for articles and breakdowns that cite its data.\n\n## A\u002FB Testing Plan\n\nAlways deliver 3 hook variants for the same body. Variables to test (change one at a time): Hook type (problem vs. outcome), Proof timing (early vs. late), CTA hardness (soft \"check it out\" vs. hard \"buy now\"). Run 7-14 days before picking a winner.\n\n## Deliverables Checklist\n\nEvery storyboard project should deliver:\n\n- [ ] Visual storyboard on the canvas with generated images for every shot\n- [ ] 3 A\u002FB hook variants\n\n- [ ] Platform adaptation table (if multi-platform)\n- [ ] Downloadable creator brief (markdown file)\n\n- [ ] Production and audio notes on canvas\n- [ ] Content series plan (if applicable, or offered as option)\n\n## Limitations\n\n- Produces scripts\u002Fstoryboards only — no video rendering\n- Cannot access live trending sounds (suggest mood + search query)\n\n- Cannot measure retention curves\n- Performance benchmarks are reference data from web search, not guaranteed outcomes\n\n- Localization relies on web research — native speaker review is always recommended for non-English scripts\n","# Storyboarding for Social Content\n\n## OpenClawd Operator Adaptation\n\nRun this skill as part of the OpenClawd operator deck. Preserve the skill-specific workflow below, but frame outputs for Solana-native agents when relevant: prefer OpenClawd language, note whether the work can support autonomous agent operations, and keep financial, legal, tax, hiring, medical, or other regulated outputs informational unless the skill already requires a stricter disclaimer. Use the Llobster Legend persona only as light operator framing; do not let branding override accuracy, safety, or the user's stated domain.\n\n\nShot-by-shot storyboards for TikTok, Reels, YouTube Shorts, and UGC ad scripts. Built around retention physics, not film-school conventions.\n\n## When to Use\n\nActivate this skill when the user says any of the following (or similar phrasing):\n\n### Direct triggers (high confidence)\n\n- \"storyboard,\" \"shot list,\" \"shot-by-shot breakdown\"\n- \"video script,\" \"script for my video,\" \"TikTok script,\" \"Reel script\"\n\n- \"creator brief,\" \"filming guide,\" \"filming plan\"\n- \"UGC ad script,\" \"UGC brief\"\n\n- \"pre-production plan\"\n- \"hook ideas,\" \"hook variants,\" \"video hooks\"\n\n- \"plan my next video,\" \"plan a video\"\n- \"video ad script\"\n\n- \"content series for video,\" \"plan a video series\"\n\n#### Contextual triggers (use when intent is planning\u002Ffilming, not rendering)\n\n- \"plan a TikTok \u002F Reel \u002F Short\" — planning what to film, not auto-generating a rendered video\n- \"video content plan\" — planning a filming schedule, not writing blog posts\n\n- \"social media video ideas\" — brainstorming video concepts, not written captions\n- \"create a TikTok ad\" — when the user intends to film it themselves (ask if ambiguous)\n\n- \"ad campaign for [product]\" — when the user mentions video, filming, or creators (otherwise may be ad-creative for static ads)\n\n##### When to ask for clarification\n\nIf the user says \"make me a video,\" \"create a TikTok,\" or \"video ad\" without specifying whether they want a plan to film or a rendered animation, ask:\n\n> \"Would you like me to plan a video for you to film (storyboard with shot list and script), or create an animated video that renders automatically?\"\n\n## When NOT to Use\n\n- **Static ad images** → use ad-creative skill instead\n- **Written social media posts, blog content, email copy** → use content-machine skill instead\n\n- **Brand identity (logos, colors, typography)** → use branding-generator skill instead\n- **Code-rendered animated videos** (motion graphics, animated explainers that play automatically) → use video-js skill instead\n\n- **Slide decks \u002F presentations** → use slides skill instead\n- **SEO landing pages** → use programmatic-seo skill instead\n\n### Key Distinction from Similar Skills\n\n| This skill (storyboard) | video-js | ad-creative | content-machine |\n\n|---|---|---|---|\n\n| Plans videos you go **film yourself**|**Renders**animated videos from code | Creates**static ad images**| Writes**text content** (posts, blogs, emails) |\n\n| Output: script + shot list + visual storyboard on canvas + creator brief | Output: playable animated video in browser | Output: designed image files | Output: written copy |\n\n| For real-camera, UGC, creator content | For motion graphics, explainers, animated ads | For display ads, social image posts | For captions, articles, newsletters |\n\n## Platform Specs (2025-2026)\n\n| Platform | Ratio | Resolution | Max duration | Sweet spot | File |\n\n|---|---|---|---|---|---|\n\n| TikTok | 9:16 | 1080×1920 | 10 min in-app \u002F 60 min upload | **21-34 sec** | MP4\u002FMOV, H.264, 287MB mobile \u002F 500MB web |\n\n| Instagram Reels | 9:16 | 1080×1920 | 3 min in-app \u002F 15 min upload | **\u003C90 sec** for Explore boost | MP4\u002FMOV, 4GB |\n\n| YouTube Shorts | 9:16 | 1080×1920 (up to 4K) | **3 min** | 15-60 sec | MP4 |\n\n| YouTube long-form | 16:9 | 1920×1080+ | unlimited | 8-12 min (mid-roll ads) | — |\n\n**Universal safe zone for cross-posting:**Keep all text, faces, logos inside the**center 900×1400** of the 1080×1920 frame. Top 14% + bottom 20-35% are covered by UI on at least one platform.\n\n## The 3-Second Rule (Data-Backed)\n\nTikTok's algorithm scores hook retention **separately** from total watch time. 2025 creator analytics:\n\n| 3-sec retention | View multiplier | Outcome |\n\n|---|---|---|\n\n| **85%+** | 2.8× | Viral tier — FYP push |\n\n| **70-85%** | 2.2× | Optimal reach |\n\n| **60-70%** | 1.6× | Average |\n\n| **\u003C60%** | baseline | Minimal distribution |\n\n**Target: keep ≥65% of viewers past 0:03.** If you're losing >35% in 3 seconds, the hook is broken — rewrite the opening, not the body. 84% of viral TikToks in 2025 used an identifiable psychological trigger in the first 3 seconds.\n\n## Named Hook Formulas\n\nThe scroll-stopping element must fire in **0-2 seconds**. Seconds 3-5 expand it. **Never introduce — interrupt.** Banned openers: \"Hey guys,\" \"Welcome back,\" \"So today I'm gonna...\"\n\n| Hook | Template | Trigger |\n\n|---|---|---|\n\n| **POV** | \"POV: you just found out [revelation]\" | Puts viewer inside the scenario; personal relevance |\n\n| **Stop-scrolling callout** | \"Stop scrolling if you're a [role] who [pain]\" | Audience self-selects; filters for high-intent |\n\n| **Contrarian** | \"Everyone says X. That's completely wrong.\" | Cognitive dissonance demands resolution |\n\n| **Unfinished story** | \"I almost [drastic action] until I found...\" | Open loop — Zeigarnik effect |\n\n| **Negative listicle** | \"3 [category] mistakes that are costing you [outcome]\" | Loss aversion > gain framing |\n\n| **Number hook** | \"$47,000 in 30 days — here's the exact breakdown\" | Specificity = credibility |\n\n| **Secret reveal** | \"What [authority] doesn't want you to know about X\" | Insider info promise |\n\n| **Surprise reaction** | Open on a shocked face, silent beat, then reveal | Viewer's brain asks \"what are they reacting to?\" |\n\n| **Visual interrupt** | Start mid-action, mid-motion, mid-chaos | Pattern break — no static frame 1 |\n\n**The silent test:** Watch your first 3 seconds on mute. If text overlay + visual alone don't communicate the promise, it fails — ~85% of social video is watched muted.\n\n## Script Structure by Video Type\n\n### Organic short-form (15-60s) — Hook → Value → Loop\n\n```text\n\n0:00-0:02 HOOK Visual interrupt + text overlay with the promise\n\n0:02-0:05 EXPAND Why this matters to YOU (the viewer)\n\n0:05-0:XX DELIVER The value. Pattern-interrupt every 3-5s: cut, zoom, text pop, angle change\n\n0:XX-end LOOP\u002FCTA End mid-sentence OR loop back to frame 1 for rewatch. Soft CTA in caption, not in video.\n\n```\n\nMid-video retention hooks at ~15s and ~30s (\"but here's the part nobody talks about...\").\n\n### UGC ad (15-30s) — Direct Response formula\n\nThe proven DR structure: **Hook → Problem → Agitate → Solution → Proof → CTA**\n\n```text\n\n0:00-0:02 HOOK \"I was about to [give up on X]...\"\n\n0:02-0:05 PROBLEM Show\u002Fsay the pain. Be specific.\n\n0:05-0:08 AGITATE \"And it just kept getting worse — [consequence]\"\n\n0:08-0:20 SOLUTION Product in hand. Demo it working. Lo-fi > polished.\n\n0:15-0:22 PROOF Green-screen reviews behind you, or \"my [authority figure] friend told me...\"\n\n0:22-0:30 CTA Verbal + text overlay. \"Link in bio\" \u002F \"Use code X\"\n\n```\n\n#### UGC ad writing rules\n\n- Write like you text a friend — contractions, \"literally,\" \"obsessed,\" imperfect grammar\n- One emotion per script (relief \u002F excitement \u002F transformation — pick one)\n\n- Modular shooting: film hook, problem, demo, CTA as separate clips → mix-and-match 3 hooks × 1 body × 2 CTAs = 6 ad variants\n- For TikTok Spark Ads, script must feel organic — get creator authorization codes; Spark Ads keep organic engagement metrics\n\n- Research pain points in TikTok comments \u002F Amazon reviews \u002F Reddit before writing — use their exact words\n\n**Vertical-specific angles:** Beauty → before\u002Fafter transformation. Fitness → \"30 days with X\" challenge. SaaS → screen recording solving the problem in \u003C10s. Ecom → unboxing + speed-of-delivery.\n\n## Shot-by-Shot Storyboard Format\n\n| \\# | Time | Shot | Visual | On-screen text | VO \u002F Audio | Retention device |\n\n|---|---|---|---|---|---|---|\n\n| 1 | 0:00-0:02 | CU face | Shocked expression, product out of frame | \"I was today years old...\" | [silence \u002F gasp] | Surprise reaction hook |\n\n| 2 | 0:02-0:05 | MS | Hold up product | \"...when I learned THIS\" | \"So I've been doing X wrong for 3 years\" | Text reveal |\n\n| 3 | 0:05-0:08 | POV | Hands demo the product | — | VO continues | Angle change = pattern interrupt |\n\n| 4 | 0:08-0:12 | Split screen | Before \u002F After | \"BEFORE → AFTER\" | — | Visual proof |\n\n| 5 | 0:12-0:15 | CU face | Direct to camera | \"Link in my bio\" | \"Code SAVE20 — thank me later\" | CTA |\n\n**Shot types:** CU (close-up), MS (medium), WS (wide), POV, OTS (over-the-shoulder), Screen recording, Green-screen, B-roll.\n\n## Platform-Specific Adaptations\n\nWhen the user targets multiple platforms, **always generate platform-tailored cut versions** in addition to the master storyboard. Each platform has different pacing, duration sweet spots, and UI overlays that affect how the same content should be edited.\n\n### Adaptation Strategy\n\nAfter building the master storyboard, create a **Platform Adaptation Table** on the canvas showing how to re-cut for each target platform:\n\n| Platform | Target Duration | Pacing | Key Adjustments |\n\n|---|---|---|---|\n\n| **TikTok** | 21-34 sec | Fastest — cut every 1.5-2 sec | Tightest edit. Remove any shot >3s. Combine AGITATE into PROBLEM if needed. Text overlays must be larger (thumb-stopping). End with loop or abrupt cut, not fade. |\n\n| **Instagram Reels** | 30-60 sec | Medium — cut every 2-4 sec | Can breathe slightly more. Add a 2nd proof beat if available. Reels rewards saves — add a \"save this\" text cue. Caption overlay style should match IG aesthetic (cleaner fonts). |\n\n| **YouTube Shorts** | 30-60 sec | Medium — cut every 3-5 sec | Allows the longest version. Can include extra context or a longer demo. Subscribe CTA works better than \"link in bio.\" End screen overlay is supported. |\n\n| **YouTube long-form** | Re-cut to 16:9 | Slowest — cut every 4-8 sec | Horizontal reframe. Can expand into a full explainer. Add intro context (5-10s) before the hook. Mid-roll friendly at 8+ min. B-roll and screen recordings can run longer. |\n\n### How to Generate Adaptations\n\nFor each platform the user targets:\n\n1. Start from the master storyboard (all shots)\n2. Note which shots to **trim**, **merge**, or **cut entirely** for that platform's sweet spot\n\n3. Adjust text overlay sizing for the platform's safe zone\n4. Modify the CTA to match platform conventions (TikTok: \"link in bio\" \u002F YouTube: \"subscribe\" \u002F Reels: \"save this\")\n\n5. Add platform-specific retention devices (TikTok: loop endings \u002F Reels: save prompts \u002F Shorts: subscribe nudge)\n\nRender the adaptation table as a separate section on the canvas below the master storyboard.\n\n## Localization & Cultural Context\n\nWhen the target audience speaks a language other than English or is in a specific cultural region, the storyboard must adapt beyond simple translation. **Always ask the user** what language\u002Fregion the video targets if not obvious from context.\n\n### Localization Checklist\n\n1. **Language & Slang** — Write the script in the audience's natural language, including local slang, colloquialisms, and informal speech patterns. UGC scripts must sound like how people actually talk in that region, not formal\u002Ftextbook language.\n\n- Research local expressions: use `webSearch` for \"[region] slang [year]\" or \"[region] TikTok popular phrases\" to find current vernacular\n- Example: Dominican Republic → \"mano,\" \"vaina,\" \"ta to,\" \"dimelo\" — not formal Castilian Spanish\n\n1. **Cultural Pain Points** — The problem\u002Fagitate phases must reference culturally specific pain points. What frustrates a young professional in Santo Domingo is different from what frustrates one in Austin.\n\n- Use `webSearch` for \"[region] [industry] frustrations\" or \"[region] Reddit\u002Fforum complaints about [topic]\" to find authentic pain points\n- Reference local platforms, banks, services, stores by name when relevant\n\n1. **Visual & Setting Cues** — Image prompts for shot generation should reflect the local environment:\n\n- Architecture, street scenes, typical home interiors for the region\n- Clothing, food, vehicles, and brands the local audience recognizes\n\n- Weather and lighting conditions typical of the region\n\n1. **Currency & Numbers** — Always use local currency (RD$, MXN$, R$, etc.) in text overlays and voiceover. Specific local amounts feel more authentic than converted USD figures.\n2. **Music & Audio** — Search for trending sounds specific to that region's TikTok\u002FReels ecosystem. Regional music trends vary significantly.\n\n- Use `webSearch` for \"[country] TikTok trending sounds [month] [year]\"\n\n1. **Humor & Tone** — Comedy styles vary by culture. What's funny in the US may not land in Latin America and vice versa:\n\n- Latin America: Self-deprecating humor, exaggeration, family\u002Ffriend dynamics, \"que vaina\" moments\n- US: Sarcasm, absurdist, \"relatable millennial\u002Fgen-z\" humor\n\n- Europe: Dry wit, understatement\n- Always research: `webSearch` for \"[region] comedy style TikTok\" or \"[region] viral funny videos [year]\"\n\n### Language-Specific Script Format\n\nWhen writing non-English scripts, format as:\n\n```text\n\nON-SCREEN TEXT: [text in target language]\n\nVO: [voiceover in target language]\n\n(Translation: [English translation for creator briefs sent to non-local teams])\n\n```\n\nOnly include the English translation line if the user indicates the storyboard will be shared with people who don't speak the target language.\n\n## Content Series Planning\n\nWhen the product or topic supports it, **offer to plan a multi-video content series** instead of a single video. A series builds audience familiarity, improves algorithmic favor (watch-through from video to video), and lets you test angles systematically.\n\n### Series Structure\n\nA content series is 3-6 videos with a shared theme but different angles. Each video is a standalone storyboard but they share:\n\n- **Consistent creator\u002Fcharacter** — same person, same setting, recognizable style\n- **Series hook** — a recurring opening pattern viewers learn to recognize (\"Part X of things your bank doesn't want you to know\")\n\n- **Progressive reveals** — each video teases the next (\"but wait until you see what happened when I tried THIS...\")\n- **Shared visual identity** — same text overlay style, color accents, caption format\n\n### Series Templates by Goal\n\n#### Product launch (3 videos)\n\n| \\# | Video | Angle | Hook Style |\n\n|---|---|---|---|\n\n| 1 | The Problem | Pain-focused, no product mention | Contrarian or Negative Listicle |\n\n| 2 | The Discovery | \"I found this thing...\" — soft product intro | Unfinished Story |\n\n| 3 | The Result | Transformation proof, hard CTA | Number Hook or Before\u002FAfter |\n\n##### Ongoing content (weekly, 4-6 videos)\n\n| \\# | Video | Angle | Hook Style |\n\n|---|---|---|---|\n\n| 1 | Myth-buster | \"Everyone thinks X but actually...\" | Contrarian |\n\n| 2 | Quick tip | One actionable tip in \u003C30s | Number Hook |\n\n| 3 | Story time | Personal experience with the pain point | Unfinished Story |\n\n| 4 | Behind the scenes | Show the product\u002Fprocess in action | Visual Interrupt |\n\n| 5 | User proof | Testimonial or user-submitted content | Social Proof |\n\n| 6 | Trend-jack | Adapt a trending format to your niche | Platform-specific |\n\n### Series Canvas Layout\n\nWhen planning a series, add a **Series Overview** section on the canvas above the individual storyboards:\n\n1. **Series title bar** — series name, total video count, posting cadence, target platform\n2. **Video cards** — one card per video in the series showing: video number, angle, hook type, estimated duration, and how it connects to the next video\n\n3. **Then the full storyboard** for whichever video the user wants to develop first\n\nAlways ask: \"Would you like me to plan this as a standalone video or as part of a content series?\"\n\n## Creator Brief Export\n\nAfter building the storyboard on the canvas, **always generate a downloadable creator brief** as a clean markdown file. This is what gets sent to the person who will actually film the video.\n\n### Creator Brief Format\n\nSave to `attached_assets\u002Fcreator_brief_[project_name].md` and present to the user using the file presentation tool.\n\n```markdown\n\n# Creator Brief: [Video Title]\n\n## Overview\n\n- **Product\u002FBrand:** [name]\n- **Platform:** [target platforms]\n\n- **Duration:** [target length]\n- **Tone:** [funny \u002F dramatic \u002F authentic \u002F etc.]\n\n- **Target Audience:** [who]\n\n## Shot List\n\n### Shot 1: HOOK (0:00-0:02)\n\n- **Camera:** [CU \u002F MS \u002F WS \u002F POV]\n- **What to film:** [specific visual direction]\n\n- **On-screen text:** \"[exact text]\"\n- **Say this:** \"[exact voiceover line]\"\n\n- **Wardrobe\u002FSetting:** [any specific requirements]\n- **Mood:** [the feeling this shot should convey]\n\n### Shot 2: ...\n\n[continue for all shots]\n\n## Filming Notes\n\n- [ ] Film on phone (no ring light, no DSLR)\n- [ ] Natural light, casual\u002Freal setting\n\n- [ ] Film each section (hook, problem, demo, CTA) as separate clips\n- [ ] Total filming time: ~[estimate] minutes\n\n- [ ] Wardrobe: [specific notes or \"casual, everyday clothes\"]\n- [ ] Props needed: [list any products, phones, items]\n\n## Caption & Hashtags\n\n- **Caption:** [suggested caption text]\n- **Hashtags:** [platform-appropriate hashtags]\n\n- **CTA in caption:** [e.g., \"Link in bio for...\" ]\n\n## A\u002FB Variants\n\nFilm these 3 alternative openings (same body, different hooks):\n\n1. **Hook A ([type]):** \"[line]\"\n2. **Hook B ([type]):** \"[line]\"\n\n3. **Hook C ([type]):** \"[line]\"\n\n## Platform-Specific Notes\n\n[Any re-cut or adaptation notes per platform]\n\n```\n\n## Trending Content Research\n\nBefore writing any storyboard script, **always perform trending content research** for the user's niche and target platform. This grounds the script in what's actually working right now, not generic best practices.\n\n### Research Steps\n\n1. **Trending hooks in the niche:**\n\n- `webSearch(\"[industry] TikTok ad hooks [year]\")`\n- `webSearch(\"[industry] viral video examples [year]\")`\n\n- `webSearch(\"best [industry] UGC ads [quarter] [year]\")`\n\n1. **Trending sounds and formats:**\n\n- `webSearch(\"[platform] trending sounds [month] [year]\")`\n- `webSearch(\"[platform] trending formats [year]\")`\n\n- For regional content: `webSearch(\"[country] [platform] trending sounds [month] [year]\")`\n\n1. **Competitor analysis:**\n\n- `webSearch(\"[competitor brand] TikTok ads\")`\n- `webSearch(\"[industry] top performing social ads [year]\")`\n\n- Note what hooks, formats, and CTAs competitors are using\n\n1. **Pain point mining:**\n\n- `webSearch(\"[product category] complaints Reddit\")`\n- `webSearch(\"[product category] reviews frustrations\")`\n\n- `webSearch(\"[industry] [region] pain points\")`\n\n### Research Output\n\nSummarize findings in a **Research Notes** section on the canvas (light-blue note) including:\n\n- 2-3 trending hooks spotted in the niche\n- Current trending sound\u002Fformat recommendation\n\n- Top competitor ad observations\n- 3-5 authentic pain point phrases sourced from real users\n\nThis research informs the script but is also visible to the user so they understand the strategic thinking behind each creative decision.\n\n## Industry Performance Benchmarks\n\nInclude relevant benchmarks on the canvas when available. Use `webSearch` to find current data for the user's specific industry and region.\n\n### Common Benchmark Searches\n\n- `webSearch(\"[industry] UGC ad benchmarks [year]\")` — CPM, CTR, conversion rates\n- `webSearch(\"[industry] TikTok ad performance [year]\")` — platform-specific metrics\n\n- `webSearch(\"[region] social media ad costs [year]\")` — regional CPM\u002FCPC data\n- `webSearch(\"[industry] average video engagement rate [platform] [year]\")`\n\n### Benchmark Display\n\nAdd a **Performance Benchmarks** note (light-green) on the canvas with:\n\n- Industry average CPM for the target platform and region\n- Average CTR for UGC ads in this vertical\n\n- Expected view-through rate by video length\n- Conversion benchmarks if available (e.g., app installs, sign-ups)\n\nFlag these as reference points, not guarantees. Performance varies based on creative quality, targeting, and budget.\n\n## Visual Output — Always Use the Design Canvas\n\n**Always render the storyboard visually on the design canvas** using the `canvas` skill. Do not just output a text table — build a real, visual storyboard with a generated image for every shot.\n\n### Generated Shot Images\n\nUse the `media-generation` skill to **generate an image for every shot** in the storyboard. Each image should visualize exactly what the camera sees for that shot — match the shot type (CU, MS, WS, POV, etc.), framing, subject, and mood described in the storyboard. These are the storyboard frames, not placeholders.\n\nWhen the video targets a specific region or culture, image prompts **must** reflect the local environment, people, and visual context (see Localization section).\n\n### Canvas Layout\n\nEach shot is a vertical stack on the canvas, arranged left-to-right as a horizontal timeline:\n\n1. **Shot image** (`image` shape, 400w × 300h) — the generated frame for this shot\n2. **Metadata bar** (`geo` shape, 400w × 60h) — shot number, timestamp, and shot type. Color-coded by purpose: red\u002Forange for hook shots, blue for value delivery, green for CTA.\n\n3. **Script\u002FVO bar** (`geo` shape, 400w × 80h) — the voiceover line, on-screen text, or audio direction for this shot\n\nUse 440px horizontal spacing between shot columns. Add a **title shape** across the top with the video concept, platform, and target duration.\n\nFor long storyboards (>8 shots), wrap to a second row.\n\n### Full Canvas Structure (top to bottom)\n\n1. **Title bar** — video concept, platform, duration, tone\n2. **Subtitle** — target audience, angle, script structure\n\n3. **Shot timeline** — images + metadata + scripts (left to right)\n4. **A\u002FB Hook Variants** — 3 alternative openings\n\n5. **Platform Adaptations** — re-cut notes per target platform (if multi-platform)\n6. **Research Notes** — trending hooks, competitor observations (light-blue)\n\n7. **Performance Benchmarks** — industry metrics for reference (light-green)\n8. **Production Notes** — filming instructions (light-blue)\n\n9. **Audio Notes** — music, sound effects, VO direction (light-green)\n\n## Production Notes\n\n- **Cuts:** Every 1.5-3 sec on TikTok, every 3-5 sec on YouTube. Static shots >5s bleed viewers.\n- **Captions:** Always burned-in. Platform auto-captions are unreliable and can't be styled.\n\n- **Audio:** Trending sound at low volume under VO > original audio only. Use `webSearch` for \"[platform] trending sounds this week\" — shelf life is ~7-14 days.\n- **UGC aesthetic:** Phone camera, natural light, slightly messy background. Ring lights and DSLRs read as \"ad\" and tank trust. Authenticity converts 3-4× polished.\n\n- **Research:** `webSearch`for current top-performing ad hooks — e.g.`webSearch(\"[industry] TikTok ad hooks 2026\")`or`webSearch(\"[industry] viral ad examples\")`. The TikTok Creative Center (ads.tiktok.com\u002Fbusiness\u002Fcreativecenter) is a useful reference but requires direct browser interaction to filter; search for articles and breakdowns that cite its data.\n\n## A\u002FB Testing Plan\n\nAlways deliver 3 hook variants for the same body. Variables to test (change one at a time): Hook type (problem vs. outcome), Proof timing (early vs. late), CTA hardness (soft \"check it out\" vs. hard \"buy now\"). Run 7-14 days before picking a winner.\n\n## Deliverables Checklist\n\nEvery storyboard project should deliver:\n\n- [ ] Visual storyboard on the canvas with generated images for every shot\n- [ ] 3 A\u002FB hook variants\n\n- [ ] Platform adaptation table (if multi-platform)\n- [ ] Downloadable creator brief (markdown file)\n\n- [ ] Production and audio notes on canvas\n- [ ] Content series plan (if applicable, or offered as option)\n\n## Limitations\n\n- Produces scripts\u002Fstoryboards only — no video rendering\n- Cannot access live trending sounds (suggest mood + search query)\n\n- Cannot measure retention curves\n- Performance benchmarks are reference data from web search, not guaranteed outcomes\n\n- Localization relies on web research — native speaker review is always recommended for non-English scripts\n",{"name":5,"description":7},"main","6b4a291df75c639681e93b4b5b812126443fd6ed","secondary_skills\u002Fstoryboard",3,"https:\u002F\u002Fgithub.com\u002Fclawdsolana\u002FOpenClawd","https:\u002F\u002Fsolanaclawd.com\u002Fopenclawd","https:\u002F\u002Fgithub.com\u002Fclawdsolana","https:\u002F\u002Fmusebook.trade","Welcome to Open Clawd. The future of Ai on and off chain. Bringing webMCP to web 3 using X402, A2A, MPP and so much more!","2026-08-01 09:30:51",{"source":8,"skillName":5,"commands":44,"prompt":54,"zipAvailable":55},[45,48,51],{"tool":46,"command":47},"npx","npx skills add clawdsolana\u002FOpenClawd --skill storyboard",{"tool":49,"command":50},"bunx","bunx skills add clawdsolana\u002FOpenClawd --skill storyboard",{"tool":52,"command":53},"pnpm","pnpm dlx skills add clawdsolana\u002FOpenClawd --skill storyboard","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fclawdsolana\u002FOpenClawd\u002Fblob\u002Fmain\u002Fsecondary_skills\u002Fstoryboard\u002FSKILL.md",true,[57],{"path":58,"resourceType":59,"resourceTypeDesc":60,"sizeBytes":61,"sourceHtmlUrl":62},".fingerprint","OTHER","其他",32,"https:\u002F\u002Fgithub.com\u002Fclawdsolana\u002FOpenClawd\u002Fblob\u002Fmain\u002Fsecondary_skills\u002Fstoryboard\u002F.fingerprint",[64,97,123,148,158,182],{"skillNo":65,"name":66,"nameZh":6,"description":67,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":68,"categories":69,"keywords":75,"publishedAt":96},"01M71KRBD0W01EAXJ8YM4M1SJ2","solana-dev","End-to-end Solana development playbook (Jan 2026). Prefer Solana Foundation framework-kit (@solana\u002Fclient + @solana\u002Freact-hooks) for React\u002FNext.js UI. Prefer @solana\u002Fkit for all new client\u002FRPC\u002Ftransaction code. When legacy dependencies require web3.js, isolate it behind @solana\u002Fweb3-compat (or @solana\u002Fweb3.js as a true legacy fallback). Covers wallet-standard-first connection (incl. ConnectorKit), Anchor\u002FPinocchio programs, Codama-based client generation, LiteSVM\u002FMollusk\u002FSurfpool testing, and security checklists.","https:\u002F\u002Fgithub.com\u002Fclawdsolana\u002FOpenClawd\u002Fblob\u002Fmain\u002Fsrc\u002Fskills\u002Fsolana-dev\u002FSKILL.md",[70],{"categoryNo":71,"categoryName":72,"taxonomyType":73,"taxonomyTypeDesc":74},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],"solana dev","dev","solana","Wallet","end","testing","hooks","kit","new","when","web3","code","react","next","2026","playbook","security","ui","fallback","framework","2026-11-10 10:56:23",{"skillNo":98,"name":99,"nameZh":6,"description":100,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":101,"categories":102,"keywords":106,"publishedAt":96},"01M71KR8QPESSY61SVE8ZTFNVT","xurl","A CLI tool for making authenticated requests to the X (Twitter) API. Use this skill when you need to post tweets, reply, quote, search, read posts, manage followers, send DMs, upload media, or interact with any X API v2 endpoint.","https:\u002F\u002Fgithub.com\u002Fclawdsolana\u002FOpenClawd\u002Fblob\u002Fmain\u002Fskills\u002Fxurl\u002FSKILL.md",[103],{"categoryNo":104,"categoryName":105,"taxonomyType":73,"taxonomyTypeDesc":74},"01JBSEEDCAT000000000000023","Skill与智能体开发",[99,107,19,108,109,110,111,85,112,113,114,115,116,117,118,119,24,120,121,122],"posts","x api","search","send","tap","you","api","cli","read","install","cli tool","endpoint","brew","manage","tool","twitter",{"skillNo":124,"name":125,"nameZh":6,"description":126,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":127,"categories":128,"keywords":130,"publishedAt":96},"01M71KR6FSXV88YDKWP7NBY3SH","wurk-integration","WURK API integration for monetizing agents with x402 payments on Solana\u002FBase - create social jobs, custom challenges, and agent help tasks","https:\u002F\u002Fgithub.com\u002Fclawdsolana\u002FOpenClawd\u002Fblob\u002Fmain\u002Fskills\u002Fwurk-integration\u002FSKILL.md",[129],{"categoryNo":104,"categoryName":105,"taxonomyType":73,"taxonomyTypeDesc":74},[131,132,133,134,20,135,136,137,113,138,139,140,141,142,143,144,24,145,146,147],"wurk","wurk integration","integration","x402","payments","tasks","team","create","social-jobs","command","agent-help","custom-jobs","clawd","safe","api integration","custom","true",{"skillNo":149,"name":150,"nameZh":6,"description":151,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":152,"categories":153,"keywords":154,"publishedAt":96},"01M71KR4HCX41BPAK9GP7RPRRP","workflows","Manage application workflows including configuration, restart, and removal.","https:\u002F\u002Fgithub.com\u002Fclawdsolana\u002FOpenClawd\u002Fblob\u002Fmain\u002Fskills\u002Fworkflows\u002FSKILL.md",[],[150,120,155,156,157],"configuration","application","restart",{"skillNo":159,"name":160,"nameZh":6,"description":161,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":162,"categories":163,"keywords":164,"publishedAt":96},"01M71KR1VM0F5GPEQDNG5J7A0H","web-search","Search the web, fetch content, extract branding profiles, and capture screenshots from URLs. Use for real-time information, API documentation, current events, design matching, and visual reference.","https:\u002F\u002Fgithub.com\u002Fclawdsolana\u002FOpenClawd\u002Fblob\u002Fmain\u002Fskills\u002Fweb-search\u002FSKILL.md",[],[165,109,166,167,168,24,169,170,171,172,173,174,175,113,176,177,178,179,180,181],"web search","web","fetch","api documentation","real-time","time","profiles","design","use","information","visual","documentation","branding","matching","reference","capture","content",{"skillNo":183,"name":184,"nameZh":6,"description":185,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":186,"categories":187,"keywords":188,"publishedAt":96},"01M71KQZN5MR1JFQHG5GWXYAHS","weather","Get current weather and forecasts via wttr.in or Open-Meteo. Use when: user asks about weather, temperature, or forecasts for any location. NOT for: historical weather data, severe weather alerts, or detailed meteorological analysis. No API key needed.","https:\u002F\u002Fgithub.com\u002Fclawdsolana\u002FOpenClawd\u002Fblob\u002Fmain\u002Fskills\u002Fweather\u002FSKILL.md",[],[184,189,24,190,173,85,191,113,192,193,194,195,196,197,198,199,200,201],"get","open","analysis","alerts","temperature","curl","via","help","about","https","location","data","user"]