{"site":"https://superduperai.co","license":"CC BY 4.0 (text); skills MIT","generated":"2026-11-02","count":121,"categories":{"generation":{"label":"Video generation","blurb":"Prompts for text-to-video and image-to-video models: shots, camera moves, styles, consistency."},"formats":{"label":"Viral formats","blurb":"Recipes for the short-form formats that keep working, written so an agent can rebuild one for your topic."},"hooks":{"label":"Hooks","blurb":"First-three-seconds openers: templates, prompts to generate them, and how to test them."},"scripts":{"label":"Scripts & shot lists","blurb":"From an idea to a timed script and a shot list an agent or a camera can follow."},"editing":{"label":"Editing & montage","blurb":"Cuts, cutaways, pacing, cold opens, and letting an agent edit real footage."},"captions":{"label":"Captions & text","blurb":"On-screen text, subtitles, reading speed, safe zones, and caption prompts."},"broll":{"label":"B-roll","blurb":"Finding, generating and placing cutaways that show what is being said."},"music":{"label":"Music & sound","blurb":"Beat sync, scoring, loudness, stripping copyrighted music, voice cleanup."},"growth":{"label":"Growth","blurb":"Posting cadence, hooks that convert, campaign links, when to pay creators."},"skills":{"label":"Claude Code skills","blurb":"Executable skills from solo-factory: install one line, run it in Claude Code."}},"tools":{"claude-code":"Claude Code","claude":"Claude","chatgpt":"ChatGPT","any-llm":"Any LLM","veo":"Veo","sora":"Sora","kling":"Kling","runway":"Runway","image-gen":"Image models","life2film":"Life2Film","ffmpeg":"ffmpeg","capcut":"CapCut / any editor","manual":"By hand"},"platforms":{"tiktok":"TikTok","reels":"Instagram Reels","shorts":"YouTube Shorts","youtube":"YouTube","linkedin":"LinkedIn","any":"Any platform"},"entries":[{"slug":"ai-video-disclosure-and-rights-checklist","title":"Before you post a generated video: disclosure and rights checklist","description":"Six checks for AI-generated clips before they go on TikTok, Reels, Shorts or a client's site: labels, likeness, music, logos, model terms and provenance.","category":"generation","platforms":["tiktok","reels","shorts","youtube","linkedin"],"works_with":["manual"],"prompt":"Before posting a generated clip, answer each in writing:\n1. LABEL — Does the platform require an AI-generated / altered-content label for this kind of content (realistic people, events, places)? Set it in the upload form, not only in the caption.\n2. LIKENESS — Does anyone in the clip resemble a real, identifiable person who did not consent? If yes, regenerate with the character block changed.\n3. MUSIC — Was the music generated, licensed, or from the platform's library? Anything else gets stripped before upload.\n4. LOGOS & BRANDS — Any third-party logo, trademark or recognisable product in frame that you do not own? Prompt 'no logos' and check the frames.\n5. MODEL TERMS — Does your plan on {Veo / Sora / Kling / Runway} allow commercial use of outputs? Keep a screenshot of the terms page with the date.\n6. PROVENANCE — Keep the prompt, the seed if shown, the model name and the date beside the clip (a sidecar text file). It is your proof of how it was made.","tips":["Platform label rules change several times a year; the check is 'did I look at today's upload form', not 'what was true last spring'.","The sidecar file costs 10 seconds and answers every 'how was this made' question later."],"tags":["checklist","disclosure","rights","music","provenance","compliance"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/ai-video-disclosure-and-rights-checklist/","markdown":"https://superduperai.co/library/ai-video-disclosure-and-rights-checklist.md"},{"slug":"analyse-once-sidecar-files-metadata-time","title":"Analyse once: sidecar files beside the sources, shooting time from the container","description":"The storage rule that makes a long film possible a month later: each clip's shots, frame scores, beats and speech live in a file beside it, and shooting time comes from the container metadata.","category":"editing","platforms":["any"],"works_with":["claude-code","life2film","ffmpeg"],"prompt":"ANALYSIS STORAGE, the checklist\n\n1. For every clip.mp4, write clip.analysis.json beside it: shot boundaries, per-frame or per-segment quality scores, beat positions, speech with word timings, the detector versions used.\n2. Shooting time comes from the container: `ffprobe -v error -show_entries format_tags=creation_time -of csv=p=0 clip.mp4`. Never from the file name, never from the file's mtime (copying resets it). Camera clocks drift; write the offset per camera in a trip-level file and apply it, do not edit the sources.\n3. Resolve symlinks before writing sidecars: an analysis written into a symlinked subset folder ends up beside the links, not the originals.\n4. Never leave a rendered film inside the source folder; the next run treats it as one more clip.\n5. A clip is re-analysed only when its hash changes or the detector version does; otherwise read the sidecar.\n6. Archive sources and sidecars together, after the films are out, never mid-edit.\n7. Keep one short real camera file per device in a verification set, and check the delivered file itself, not only synthetic sources.","steps":["Run the analysis over the whole folder once: a shot detector, a frame scorer, a beat tracker and whisper-family STT with word timings. Life2Film Studio does the frame scoring, scene detection and segment ranking on the device; `npm i life2film-engine` gives the beats, shots and frame scores in WASM.","Write every result as a sidecar next to its clip, then build the day's text file and the cut from the sidecars, not from the video.","A month later, the trip film reads the sidecars of 20 days in seconds instead of re-analysing 20 days of footage."],"tips":["Two phones on one trip can disagree by minutes; the offset file is what keeps same-place, same-time cutaways honest.","The sidecar is also the provenance: which model found the shots, which version scored the frames, when."],"skill":"video-edit","tags":["analysis","sidecar","metadata","ffprobe","workflow","archive"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["day-as-one-text-file-story-and-cut-prompt","script-to-storyboard-json-cut"],"url":"https://superduperai.co/library/analyse-once-sidecar-files-metadata-time/","markdown":"https://superduperai.co/library/analyse-once-sidecar-files-metadata-time.md"},{"slug":"anime-cel-style-video-prompt","title":"Anime style: 2D cel look, limited animation, clean line weight","description":"A filled 7-part prompt for a hand-drawn anime shot: flat cel shading, animation on twos, a held painted background, and the three things the style breaks in current video models.","category":"generation","platforms":["any"],"works_with":["kling","runway","veo","image-gen"],"prompt":"SUBJECT: {subject, with 2-3 visual details: hair colour and shape, one accessory, outfit colours}\nACTION: {one action, one beat, e.g. 'turns from the window and lets the curtain fall'}\nSETTING: a quiet 2D background painted in flat colour fields with a soft gradient sky, late afternoon, a suburban street with power lines and a vending machine; the background holds still while the character moves\nCAMERA: medium shot, eye level, static; one slow horizontal pan at the end of the shot, no zoom\nLENS & LIGHT: flat, no lens; cel shading with two tones per surface (base colour and one hard-edged shadow), a thin rim of light on the hair, no gradients on the skin\nSTYLE: hand-drawn 2D anime cel look, limited animation on twos (12 drawings per second), a consistent clean dark line weight around characters, thinner lines inside, backgrounds without outlines, slight paper-like texture, muted pastel palette with one saturated accent; no 3D, no photoreal, no CGI shading\nSOUND: soft wind, distant cicadas, no music\nDURATION: 5 seconds. No on-screen text, no subtitles, no logos, no speech.","tips":["What it breaks: mouths and speech (the lip flap drifts), fast action (the model smears instead of drawing in-betweens), and any text, including signs. Keep the character silent and the action slow.","Faces drift within the shot more than in photoreal styles. One character, one beat, under 6 seconds; use the first-frame method with a still from an image model for anything that must match a previous clip.","Aspect: 16:9 for a scene with a background; 9:16 only for a character close-up, because the painted background is what sells the style and a vertical crop removes it.","Try first: Kling or Runway with an image-model still as the first frame; the 'on twos' instruction is honoured more often from a still than from text alone. A suggestion to start with, not a measurement."],"tags":["anime","2d","cel-shading","style-prompt","text-to-video","image-to-video"],"difficulty":"intermediate","time":"10 min","verified":false,"created":"2026-11-01","related":["video-prompt-structure-seven-parts","image-to-video-first-frame-method"],"url":"https://superduperai.co/library/anime-cel-style-video-prompt/","markdown":"https://superduperai.co/library/anime-cel-style-video-prompt.md"},{"slug":"architectural-walkthrough-interior-prompt","title":"Architectural walkthrough: an interior on a steadicam in natural light","description":"A filled 7-part prompt for a real-estate or design walkthrough: one slow steadicam path through a room, windows as the only light, straight verticals, and the turns that make geometry drift.","category":"generation","platforms":["youtube","reels","any"],"works_with":["veo","kling","runway","image-gen"],"prompt":"SUBJECT: {the interior: room type, two materials, one piece of furniture that anchors the space}\nACTION: {what moves in the room, one thing only, e.g. 'a sheer curtain lifts in a draught' / 'nothing moves'}\nSETTING: a finished, furnished interior, mid-morning, overcast daylight through large windows on one side, no people, no pets\nCAMERA: steadicam walkthrough at walking pace, starting at the doorway, moving forward in a straight line for the whole shot, lens height 1.5 metres, verticals kept perfectly straight; no turns, no tilt, no zoom\nLENS & LIGHT: 24mm wide-angle look with no distortion, deep focus; natural light only, soft shadows from the windows, no lamps on, no HDR look\nSTYLE: clean architectural film, true-to-life colour, neutral white balance, matte surfaces rendered as matte, glass with faint reflections, light grain; no lens flare, no colour grading, no fisheye\nSOUND: quiet room tone, distant street, a wooden floor creak under the camera; no music\nDURATION: 8 seconds, 16:9. No on-screen text, no logos, no people.","tips":["What it breaks: turns and doorways. A camera that turns a corner asks the model to invent the room it cannot see, and walls bend. One straight line per clip; cut the turn in the editor between two straight clips.","Speed: walking pace or slower. A faster move produces furniture that slides.","Aspect: 16:9. A vertical crop cuts the ceiling and the floor, which is where straight verticals are judged. If a 9:16 version is needed, generate a separate static shot of a detail for it.","Try first: Veo from text, or image-to-video from a still of the room (a real photo works, and keeps the real finishes); a suggestion, not a benchmark."],"tags":["architecture","interior","real-estate","walkthrough","style-prompt","text-to-video"],"difficulty":"intermediate","time":"10 min","verified":false,"created":"2026-11-01","related":["camera-movement-vocabulary","image-to-video-first-frame-method"],"url":"https://superduperai.co/library/architectural-walkthrough-interior-prompt/","markdown":"https://superduperai.co/library/architectural-walkthrough-interior-prompt.md"},{"slug":"b-roll-pack-generation-prompt","title":"Generate a 10-clip b-roll pack for a talking-head video","description":"One agent prompt that reads your transcript and writes ten generation prompts for cutaways that show what is being said, each tagged with the sentence it covers.","category":"generation","platforms":["youtube","shorts","reels","tiktok"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Read the transcript below. Find the 10 sentences where a cutaway would help most (a concrete object, place or action is mentioned, and nobody's lips need to be seen).\nFor each, write a video generation prompt for a 5-second b-roll clip that literally shows what the sentence says: subject, action, setting, shot size and one camera move, light, the style lock below, ambient sound, 'No on-screen text, no people's faces.'\nOutput a table: sentence (quoted), timestamp, prompt, aspect ratio {9:16}.\nSTYLE LOCK: {style lock paragraph}\n\nTranscript:\n{paste transcript with timestamps}","steps":["Get the transcript with timestamps first (the transcribe skill or any STT tool).","Generate the ten clips; name files by the timestamp (0m42s.mp4) so the editor finds the slot.","Place each cutaway on its own sentence, never over a sentence where the speaker's lips are visible on camera."],"tips":["Faceless b-roll avoids the character consistency problem entirely; keep people's faces out of generated cutaways.","Measured on a real edit: 12 of 54 automatically chosen cutaways were off topic. Read every prompt against its sentence before generating."],"tags":["b-roll","cutaways","agent","transcript","text-to-video","youtube","workflow"],"difficulty":"intermediate","time":"20 min","skill":"video-edit","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/b-roll-pack-generation-prompt/","markdown":"https://superduperai.co/library/b-roll-pack-generation-prompt.md"},{"slug":"beat-sync-cut-not-every-beat","title":"Beat-sync cutting: cut on the beat, not on every beat","description":"A rule and an agent prompt for cutting to music from a list of beat timestamps: cuts land on beats, phrases get room to breathe, and the best shot is held through the hook.","category":"music","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm","capcut"],"prompt":"You are the editor. Below are the beat timestamps of the track (seconds, one per line) and the list of shots with their durations. Build an edit decision list.\n\nRules:\n- Every cut lands on a beat. Not every beat gets a cut.\n- Default rhythm: one cut every {bars_per_cut} bars (a bar is {beats_per_bar} beats). Vary it: hold a strong shot for 2 bars, then cut twice in one bar, then hold again. Three cuts at the same interval in a row is the maximum.\n- Let a phrase breathe: no cut inside the last beat before a downbeat that starts a new phrase; the cut lands on that downbeat.\n- The hook of the track at {hook_start} seconds gets the best shot, held, with the cut landing exactly on its first downbeat.\n- A shot shorter than one beat is only allowed in a run of 3-4 (a flash sequence), once in the video.\n- A score written to this cut works the other way round: its chord changes land on the beat nearest a picture cut.\n\nOutput: a table with shot id, in point, out point, which beat index the cut lands on, and a one-word reason (hold / hit / breathe / flash). Then the total duration.\n\nBeats:\n{beat_timestamps}\n\nShots:\n{shot_list}","steps":["Get beat timestamps first: `npm i life2film-engine` (WASM, on-device) returns beats, shots and frame scores; any beat tracker that writes seconds works.","Paste beats and shots into the prompt; feed the table to your editor or to the render script as the cut list.","Watch it once with the sound off: if the cuts still feel regular, the rhythm is too even. Merge two short shots into one hold."],"tips":["A cut on every beat reads as a slideshow; the eye stops seeing the beat and starts seeing the clock.","Snap to the downbeat, not to the nearest transient; hi-hats are beats too, and an agent will happily cut on them.","In Claude Code, `/video-edit` writes the cut as a small JSON script and renders from it, so 'move that cut one beat later' is a one-line edit."],"skill":"video-edit","tags":["beat-sync","editing","music","agent","cut-list","rhythm"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["score-hole-where-live-sound-plays","generated-music-30s-track-brief-prompt"],"url":"https://superduperai.co/library/beat-sync-cut-not-every-beat/","markdown":"https://superduperai.co/library/beat-sync-cut-not-every-beat.md"},{"slug":"before-after-reveal-format","title":"Before/after: the 20-second reveal with the 'after' shown first","description":"The before/after format with the twist that keeps it from being skipped: open on the finished result, then show how bad it was, then the change. The prompt returns a timed script and text plan.","category":"formats","platforms":["tiktok","reels","shorts"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a before/after script for {topic}. The format works because the gap between two states is the whole message; narration only labels what the eye already sees.\n\nStructure (20 s, 9:16):\n- 0-2 s AFTER FIRST: the finished result, full screen, no narration. On-screen text: the one number or word that describes the gap ('2 taps', '40 min to 4').\n- 2-6 s BEFORE: the starting state, held for 4 s. One spoken line that names what was wrong, max 12 words.\n- 6-14 s THE CHANGE: 2-3 shots of the thing being done, 3 s each. One short line each, present tense.\n- 14-18 s AFTER AGAIN: the same framing as shot 1, held. Spoken line: what changed, with the number.\n- 18-20 s CLOSE: a question for the comments or nothing. No download ask; this format sells by the reveal, and the viewer who wants the thing will ask 'what app' in the comments. Answer there.\n\nWord budget: 40-50 words at 165 wpm. Match the before and after framing exactly: same angle, same distance, same light. Say so in the shot notes.\n\nReturn: a table (time, shot, spoken line, on-screen text), then a 3-line shooting note on how to match the two framings.\n\nTopic details:\n{what the before state is, what the after state is, the number that describes the gap}","example":"Topic: a photo app that removes the background from a product photo.\n\n| Time | Shot | Spoken line | On-screen text |\n|---|---|---|---|\n| 0-2 s | Finished listing photo of a ceramic mug on white, phone held in hand | (silence) | 2 TAPS |\n| 2-6 s | Same mug on a cluttered kitchen counter, cables, a sponge | This is what my product photos looked like. | BEFORE |\n| 6-9 s | Thumb opens the app, picks the photo | Open the photo. | |\n| 9-12 s | Tap on 'cut out', background drops away | One tap. Background is gone. | |\n| 12-14 s | Tap on 'white', export | White, export. | |\n| 14-18 s | The clean listing photo again, same hand, same angle | From this to this in two taps, on the phone, before the coffee got cold. | AFTER |\n| 18-20 s | Hold on the result | What would you shoot first? | |\n\nShooting note: shoot the 'after' shot at 0-2 s and the one at 14-18 s as one take, held in the same hand against the same wall. Shoot 'before' in the same spot with the clutter put back. Window light both times, no lamp.","tips":["Hold the before shot longer than feels comfortable. Four seconds of the bad state is what makes the after land.","If the number in the first frame is not real and measurable (taps, minutes, dollars), cut it and use a word instead."],"tags":["before-after","reveal","product","tiktok","reels","convert","script"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/before-after-reveal-format/","markdown":"https://superduperai.co/library/before-after-reveal-format.md"},{"slug":"blog-post-to-three-short-scripts","title":"Turn a blog post into three short scripts: one claim per video","description":"A prompt that reads a post and returns three 30-45 second scripts, each built on a different claim from the text, with the hook, the proof, the ask and the source sentence for each.","category":"scripts","platforms":["tiktok","reels","shorts","linkedin"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Read the post below. Find the three strongest claims that each stand alone without the rest of the post: a number, a contrarian take, a step-by-step. Write one 30-45 second vertical script per claim, 75-100 words each.\n\nFor each script:\nCLAIM: the sentence from the post it is built on, quoted.\nHOOK (0-3 s): the claim as a question or a bold line, max 12 words.\nPROOF (3-25 s): the evidence or the steps from the post, in spoken sentences of max 14 words. Nothing that is not in the post.\nASK (25-30 s): one next step: read the post, try the thing, answer a question in the comments.\nON SCREEN: three text overlays, max 5 words each, one per block.\nB-ROLL: three things to show that are literally in the text (a screen, an object, a place).\n\nRules: three different hook types across the three scripts; no script reuses a sentence from another; keep the author's words where they are better than yours. If the post holds fewer than three standalone claims, return fewer scripts and say why.\n\nPost:\n{paste post}","steps":["Paste the whole post, not a summary; the agent needs the author's sentences to keep.","Post the three on different days. The claim that gets replies is the next post's topic.","Keep the CLAIM line in your notes with the video's URL: it is the attribution and the way back to the source."],"tips":["One claim per video. A script that covers the whole post is a summary, and summaries do not get watched to the end.","The B-ROLL line is the shot list; if the post names nothing visible, the video is a talking head with three overlays, and that is fine."],"tags":["repurpose","blog","script","short-form","content","series"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["promo-script-30-45-seconds-template","hook-text-on-screen-plan-prompt"],"url":"https://superduperai.co/library/blog-post-to-three-short-scripts/","markdown":"https://superduperai.co/library/blog-post-to-three-short-scripts.md"},{"slug":"broll-search-query-generator-prompt","title":"From a sentence to five search queries and one generation prompt","description":"A prompt that turns each line needing a cutaway into five queries for your own footage or a stock site, ordered from literal to loose, plus one generation prompt as the fallback when nothing is found.","category":"broll","platforms":["any"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"For each sentence below, produce search queries to find a cutaway that shows it literally, then a generation prompt as the fallback.\n\nPer sentence:\nSENTENCE: quoted.\nTHE THING TO SHOW: one noun phrase, the object or action the sentence is about.\nQUERIES, 5, from most literal to loosest, each 2-5 words, no adjectives like 'beautiful' or 'cinematic':\n1. the exact object + the exact action\n2. the object + the setting\n3. the object alone, close-up\n4. the action alone, hands only\n5. the setting alone, wide\nFILTERS: orientation {9:16 or 16:9}, duration 5-15 s, no people's faces, no logos.\nGENERATION PROMPT (fallback, one paragraph): subject with 2 visual details, one action, setting, shot size + one camera move, light, style lock: {style lock}, ambient sound, 5 s, 'no on-screen text, no faces, no logos'.\nFOUND IN OWN FOOTAGE? If a clip in the list below shows the thing, name it first and skip the queries.\n\nOwn footage (optional, clip + description):\n{paste clip list}\nSentences:\n{paste sentences}","steps":["Search your own footage first; the sidecar descriptions (or Life2Film's segment list) are what the queries run against before any stock site.","Run queries 1-3 on a stock site; if 4 and 5 are what you end up using, the shot is no longer literal, and the generation prompt is the better fallback.","Put whichever clip you choose on the contact sheet with its sentence; a stock clip can be off topic as easily as a generated one."],"tips":["Hands-only queries (4) find usable footage for almost any 'doing' sentence without a face to match.","Keep the query sets with the project. The next video on the same topic reuses half of them."],"tags":["b-roll","search","stock","generation","queries","agent","cutaway"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["generated-vs-real-broll-decision-rule","cutaway-matching-sentence-to-visual-prompt","b-roll-pack-generation-prompt"],"url":"https://superduperai.co/library/broll-search-query-generator-prompt/","markdown":"https://superduperai.co/library/broll-search-query-generator-prompt.md"},{"slug":"broll-shot-list-from-transcript-table","title":"B-roll shot list from a transcript: the table to film or generate from","description":"An agent prompt that reads a transcript and returns a shot table (timestamp, line, shot, source: have / film / generate) for a camera or a video model, grouped so each location is filmed once.","category":"broll","platforms":["youtube","shorts","reels","tiktok","linkedin"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Read the transcript below and produce the b-roll shot list.\n\nTable: Timestamp | Line (quoted, trimmed to the relevant clause) | Shot (size + exactly what is in frame + one action or none) | Duration (s) | Source (HAVE: clip name from the footage list / FILM: where and what / GENERATE: faceless, no logos) | Priority (1 = the line makes no sense without it, 2 = helps, 3 = nice).\n\nRules:\n- One row per line that names something visible; skip opinions and transitions.\n- Shot durations 2-5 s; a row is never longer than the line it covers.\n- Literal pictures only: what the line names, not a mood for it.\n- Source HAVE only when a clip in the footage list shows the thing; otherwise FILM if it is a real place or person, GENERATE only if faceless and generic.\n- After the table, group the FILM rows by location into a shooting plan: location, the shots to get there, total minutes to film.\n- Then list the GENERATE rows as generation prompts, one paragraph each: subject, action, setting, shot size, one camera move, light, 'no on-screen text, no faces', 5 s, {9:16 or 16:9}.\n\nFootage list (optional):\n{paste clip list with descriptions}\nTranscript:\n{paste transcript with timestamps}","steps":["Transcribe with timestamps first; a shot list without timestamps cannot be placed.","Film the FILM groups in one trip per location; the plan tells you how long. Name files by the timestamp of the line they serve (0m42s.mp4).","Generate the GENERATE rows last and only if a priority-1 line still has no picture; most priority-3 rows should be dropped, not generated."],"tips":["Priority 1 rows are the 'mentioned object must be seen' list. If you film nothing else, film those.","A transcript from a planned script (before filming) gives you the shot list before the shoot; from recorded footage it gives you the gaps."],"skill":"video-edit","tags":["b-roll","shot-list","transcript","table","agent","planning"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["cutaway-matching-sentence-to-visual-prompt","b-roll-pack-generation-prompt","shot-list-table-generator-prompt"],"url":"https://superduperai.co/library/broll-shot-list-from-transcript-table/","markdown":"https://superduperai.co/library/broll-shot-list-from-transcript-table.md"},{"slug":"build-in-public-behind-the-scenes-format","title":"Build in public: a 45-second behind-the-scenes cut around one decision","description":"The founder diary format that earns trust because it shows the decision, not the launch: the prompt structures a week of real screen and desk footage around one choice and one measured result.","category":"formats","platforms":["tiktok","reels","shorts","linkedin","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm","life2film"],"prompt":"Write a build-in-public script for {product} covering {this week's work}. The format works because the viewer watches a decision being made and wants to know how it turned out; a montage of typing is not a story. Pick ONE decision from the week and ONE number that it changed or will change.\n\nStructure (45 s, 9:16, real footage: screen recordings, the desk, a walk, a whiteboard):\n- 0-3 s HOOK: the decision as a question I had to answer ('ship the free tier with a watermark, or not?'). On-screen: the question in 6 words.\n- 3-10 s CONTEXT: what the product is, in one line, for a stranger. The number before the decision, on screen.\n- 10-30 s THE WEEK: 4 clips, 5 s each: the option I rejected (show it), the option I took (show it), the moment it went wrong or surprised me, the fix. One spoken line each, max 12 words. Day stamps on screen.\n- 30-40 s RESULT: the number after, on screen next to the number before. Spoken: what moved and what I do not know yet.\n- 40-45 s CLOSE: 'What would you have done?' No download ask; the product name is on the screen recording and in the bio. Reserve the ask for a launch video.\n\nWord budget: 110-120 words at 165 wpm. On-screen: the question, two day-stamped numbers, day stamps on clips, nothing else.\n\nReturn: the decision and the number (one line each), then a table (time, clip, spoken line, on-screen), then a LinkedIn-length caption (under 600 characters) that tells the same story in text with the two numbers.\n\nProduct: {product}\nThis week: {what happened, roughly}\nDecision: {the choice}\nNumbers: {before and after, if known}","example":"Product: a photo app for sellers. Week: added a small 'made with' credit on free exports. Decision: credit on free exports or not. Numbers: shares per day before 40, after 7 days 64.\n\n| Time | Clip | Spoken line | On-screen |\n|---|---|---|---|\n| 0-3 s | Whiteboard with two columns | Put a credit on free exports, or keep them clean? | CREDIT ON FREE EXPORTS? |\n| 3-10 s | App on a phone, exporting a photo | It cuts product photos out on the phone. Forty shares a day, nobody knows where they came from. | MON · 40 SHARES / DAY |\n| 10-15 s | Mockup of a big logo on a photo, crossed out | Option one, a logo. Rejected, it looks like a stock photo. | MON |\n| 15-20 s | Code editor, a two-line credit in the corner of an export | Option two, a small line in the corner, paid tier removes it. Shipped Tuesday. | TUE |\n| 20-25 s | A one-star review on screen | Wednesday, a review called it a bait and switch. Fair, I hadn't said it anywhere. | WED |\n| 25-30 s | Pricing page, a new FAQ line | Thursday: it's on the pricing page now, with the removal in the paid tier. | THU |\n| 30-40 s | Analytics chart | Sixty-four shares a day by Sunday, up from forty. I don't know yet how many of those come back as installs; the link in the credit is tagged, so next week I will. | SUN · 64 SHARES / DAY |\n| 40-45 s | Face at the desk | What would you have done? | |\n\nCaption: Added a one-line credit to free exports this week. Day 1: 40 shares/day. Day 7: 64. One review called it bait and switch, which was fair, so the pricing page now says it and the paid tier removes it. Installs from the credit: unknown until the tagged link has a week of data.","tips":["Say what you do not know yet. 'Installs: unknown until next week' is the line that makes the rest believable.","Life2Film finds the scene changes in a week of desk and screen footage on the device, so the four clips you need are a shortlist rather than a scrub.","The brand-credit idea in the example is from the creator-growth skill: disclose it on the pricing page, let the paid tier remove it."],"tags":["build-in-public","behind-the-scenes","founder","real-footage","trust","linkedin","tiktok"],"difficulty":"intermediate","time":"30 min","skill":"creator-growth","verified":false,"created":"2026-11-01","related":["founder-explainer-format","day-in-the-life-format-script"],"url":"https://superduperai.co/library/build-in-public-behind-the-scenes-format/","markdown":"https://superduperai.co/library/build-in-public-behind-the-scenes-format.md"},{"slug":"burned-subtitles-9-16-parameters","title":"Burned subtitles for 9:16: position, lines, characters, colour, as parameters","description":"Settings for subtitles burned into vertical video for muted feeds: above the platform UI, two lines, about 32 characters each, white with a dark outline. Starting values, checked on a phone.","category":"captions","platforms":["tiktok","reels","shorts"],"works_with":["ffmpeg","capcut","manual"],"prompt":"BURNED SUBTITLES 9:16, the parameters\n\nPosition: bottom edge of the text block no lower than 20 percent up from the bottom of the frame (384 px on a 1920 px high frame); the platform's caption, buttons and progress bar live below that. Centre of the text block around 25-30 percent from the bottom. Never in the top 10 percent (status bar, account name).\nLines: max 2. A third line hides the picture.\nLine length: about 32 characters per line including spaces; break at a phrase boundary, not mid-phrase.\nSize: a parameter; start at a font size around 4-5 percent of the frame height (80-96 px on a 1920 px frame in a 1080x1920 ASS script) and adjust on a phone.\nColour: white text, black or near-black outline 2-3 px at 1080 width, no box unless the background is white; a soft shadow is optional.\nTiming: a cue is on screen 1-6 s, and its in point lands within 2 frames of the first word.\nFont: a heavy sans, the platform's native caption look; never a thin or serif face.\nCase: sentence case; all caps only for a one-word hit.\n\nCheck: export 10 seconds, open it on the phone in the platform's own preview (not the gallery), muted, and look for text under the UI, a third line, a line that wraps on its own.","steps":["Clean the SRT first (names, merged short cues, line length capped); burning does not fix a bad transcript, it makes it permanent.","Burn with ffmpeg (see the burn-in command entry) or the editor's caption tool, using these parameters as the starting values.","Watch the first 10 s in the platform preview on a phone. Adjust the vertical margin first, font size second, line length third. Save the numbers in the project; they are the same for the next video."],"tips":["Burned subtitles are for feeds with muted autoplay. On YouTube, upload an .srt track per language instead; a long video has a track picker and burned text cannot be turned off.","The blurred-background 9:16 recipe in `/video-edit` centres the picture at 34 percent of the height for the same reason: the platform covers the bottom."],"skill":"video-edit","tags":["subtitles","9-16","vertical","safe-zone","burn-in","parameters"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["ffmpeg-burn-in-subtitles-command","srt-cleanup-glossary-merge-cues-prompt","caption-accessibility-checklist"],"url":"https://superduperai.co/library/burned-subtitles-9-16-parameters/","markdown":"https://superduperai.co/library/burned-subtitles-9-16-parameters.md"},{"slug":"camera-movement-vocabulary","title":"Camera movement vocabulary that video models understand","description":"The 14 camera moves that generation models respond to reliably, with the phrasing that works and the phrasing that produces a wobbling mess.","category":"generation","platforms":["any"],"works_with":["veo","sora","kling","runway"],"prompt":"Use ONE of these per shot, written exactly like this:\n\nstatic shot, locked-off camera\nslow dolly in toward {subject}\nslow dolly out revealing {setting}\nslow push in on {detail}\ntracking shot following {subject} from behind\ntracking shot alongside {subject}, same speed\nhandheld follow, slight natural shake\nslow pan left to right across {scene}\ntilt up from {ground detail} to {face / sky}\nslow orbit around {subject}, 90 degrees\ncrane shot rising above {scene}\ndrone shot, high altitude, slow forward\nrack focus from {foreground} to {background}\nwhip pan to {new subject}\n\nAvoid: 'dynamic camera', 'epic movement', 'cinematic camera work', combined moves ('dolly in while orbiting and tilting').","steps":["Pick one move per clip. Combined moves are the single most common cause of warped geometry.","Prefix with 'slow' unless you want speed; models default to too fast.","Say where the move ends ('toward her face', 'revealing the harbour'): a move with a destination is drawn more steadily."],"tips":["A static locked-off shot plus subject motion is the most reliable output of every current model. Use it for anything that must look clean.","For image-to-video, camera moves that reveal what was outside the frame (dolly out, pan) force the model to invent pixels; dolly in and rack focus keep it inside what it has."],"tags":["camera","text-to-video","image-to-video","veo","kling","runway","sora","cheatsheet"],"difficulty":"beginner","time":"2 min","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/camera-movement-vocabulary/","markdown":"https://superduperai.co/library/camera-movement-vocabulary.md"},{"slug":"campaign-links-per-platform-and-account","title":"Measurement: one store campaign link per platform and account","description":"The iOS campaign link format with the provider token and a 40-character ct tag, the Android Play referrer, where installs show up, and the rule to judge a format after a week on installs, not views.","category":"growth","platforms":["tiktok","reels","shorts","youtube"],"works_with":["manual","claude-code","any-llm"],"prompt":"Build the campaign link table for {app name}. One link per platform and account.\n\niOS (App Store Connect campaign link):\nhttps://apps.apple.com/app/apple-store/id{APP_ID}?pt={PROVIDER_ID}&ct={platform}-{account}&mt=8\n- APP_ID: the numeric id from the store URL.\n- PROVIDER_ID: the provider token from App Store Connect (App Analytics, Sources, campaign links).\n- ct: the campaign name, platform-account, 40 characters max, lowercase, hyphens.\n- Installs per campaign: App Store Connect, App Analytics, Sources.\n\nAndroid (Play referrer):\nhttps://play.google.com/store/apps/details?id={PACKAGE}&referrer=utm_source%3D{platform}%26utm_medium%3D{account}%26utm_campaign%3D{series}\n- The referrer value is URL-encoded once; the app reads it through the Install Referrer API and logs it.\n\nTable: platform, account, ct value (count the characters), full iOS link, full Android link, where the link sits (bio / pinned comment / creator brief).\n\nRule: judge a format after a week of posts on installs per campaign, not on views.","steps":["Create the links before the first post; a post without a link is a view you cannot attribute.","Put the iOS link in the bio and the Android one in a pinned comment or a link page; one link per account, never per video, or the table outgrows the week.","Read the Sources report weekly, same weekday, and paste installs per campaign into the review sheet."],"tips":["ct is limited to 40 characters; count it before you print it anywhere.","Views are attention, installs are the result. Only per-campaign installs separate a format that went viral from one that converted."],"skill":"creator-growth","tags":["measurement","campaign-links","attribution","app-store","play-store","installs","creator-growth"],"difficulty":"intermediate","time":"20 min","verified":false,"created":"2026-11-01","related":["weekly-growth-review-agent-prompt","niche-accounts-one-archetype-each"],"url":"https://superduperai.co/library/campaign-links-per-platform-and-account/","markdown":"https://superduperai.co/library/campaign-links-per-platform-and-account.md"},{"slug":"caption-accessibility-checklist","title":"Accessible on-screen text: contrast, the bottom 20 percent, no flashing","description":"A checklist for text that everyone can read, including people watching muted, on a small screen, in sunlight, or with photosensitivity. Eight checks, each with the parameter to test against.","category":"captions","platforms":["tiktok","reels","shorts","youtube","linkedin"],"works_with":["manual","capcut","ffmpeg"],"prompt":"ACCESSIBLE TEXT, the checklist\n\n1. Contrast: white text with a dark outline or a dark band passes on almost any background. Measured contrast between text and what is directly behind it at least 4.5:1 (the WCAG text threshold, used here as a parameter; check with any contrast picker on a frame grab from the busiest moment).\n2. No text in the bottom 20 percent of a vertical frame and the bottom 10 percent of a horizontal one: the player's own controls and captions sit there.\n3. No text in the top 10 percent: status bar, account name, the feed tabs.\n4. Size: a parameter to check, not a number to trust. Read the video on a phone at arm's length with the smallest text; if you squint, it is too small.\n5. Hold time: words divided by 2.5 seconds, minimum 1.2 s per overlay; subtitles 1-6 s per cue.\n6. No flashing: nothing that changes luminance more than 3 times in any second, no full-frame strobes, no rapid cuts between a dark and a bright frame for more than a second (the photosensitivity threshold, used as a parameter; when in doubt, slow it down).\n7. Captions carry the meaning, not only the words: a sound that matters is written ([door slams], [laughs]) and the speaker is named when more than one talks off camera.\n8. The text is also in the caption or description: a viewer with a screen reader does not see burned text. Put the number, the name and the URL in the post text too.\n\nCheck on a phone, muted, with the screen brightness at half, outdoors if you can.","steps":["Grab three frames: the busiest background, the brightest, the darkest. Check contrast on all three, not on the frame you designed for.","Walk the checklist on the exported file, not the timeline; the export has the real letterboxing and the real encoding softness.","Fix in this order: position, size, contrast, hold. Position fixes are free; contrast fixes may need a band under the text."],"tips":["An outline plus a soft shadow passes almost everywhere; a box passes everywhere but hides the picture. Use the box only on white backgrounds.","Test the darkest frames with the screen at full brightness in a dark room; that is where a flash hurts and where a thin outline disappears."],"tags":["accessibility","captions","contrast","safe-zone","checklist","on-screen-text"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["burned-subtitles-9-16-parameters","reading-speed-on-screen-text-parameters"],"url":"https://superduperai.co/library/caption-accessibility-checklist/","markdown":"https://superduperai.co/library/caption-accessibility-checklist.md"},{"slug":"caption-variants-hashtags-per-platform-prompt","title":"Three caption variants plus hashtags, with per-platform length limits","description":"An agent prompt that writes three captions (short, story, question) and a hashtag set per platform, counting characters and hashtags against limits you paste in from today's upload form.","category":"captions","platforms":["tiktok","reels","shorts","linkedin"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write captions for the video described below, for these platforms: {TikTok, Reels, Shorts, LinkedIn}.\n\nLimits to respect (parameters; I checked them against the upload forms today): {TikTok: caption max 4000 characters, 3-5 hashtags; Reels: caption max 2200 characters, 30 hashtags max, use 3-5; Shorts: title max 100 characters, description max 5000, 2-3 hashtags; LinkedIn: post max 3000 characters, 3-5 hashtags, first 2 lines visible before 'see more'}.\n\nFor each platform, three variants:\nA. SHORT: one line, max 80 characters, the hook of the video in text form.\nB. STORY: 2-4 short lines, what happened and the one takeaway; for LinkedIn, the first line must stand alone before the fold.\nC. QUESTION: one line that asks the viewer something they can answer in a comment, max 100 characters.\n\nThen hashtags per platform: the stated count, mixed as 1 broad, 2 topic, 1-2 niche; no hashtag that is a brand I do not own; lowercase; no spaces.\n\nOutput per platform: the three variants with their character counts, the hashtag line with its count, and a one-line note if any limit was close.\n\nRules: no emoji unless the platform list says so; no 'link in bio' unless I give a link; numbers and names exactly as in the video; nothing claimed that the video does not show.\n\nVideo:\n{one-paragraph description, the hook line, the CTA}","steps":["Open each platform's upload form and check the current caption and hashtag limits; paste them into the limits line. They change, and the agent's memory of them is stale.","Pick one variant per platform; a different variant per platform costs nothing and tells you which kind of caption your audience answers.","Keep the chosen caption and hashtags in a text file beside the video with the posting date."],"tips":["The question variant is the one that gets replies; the short variant is the one that gets saves. Which you want depends on the video.","On LinkedIn the first line is the whole caption for most readers. Put the number there."],"tags":["captions","hashtags","platforms","agent","social","limits"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["hook-text-on-screen-plan-prompt","blog-post-to-three-short-scripts"],"url":"https://superduperai.co/library/caption-variants-hashtags-per-platform-prompt/","markdown":"https://superduperai.co/library/caption-variants-hashtags-per-platform-prompt.md"},{"slug":"character-consistency-reference-sheet","title":"Keep the same character across clips: the reference sheet prompt","description":"A character description block you reuse verbatim in every prompt, plus a generated reference sheet, so a face, outfit and build stay the same from shot to shot.","category":"generation","platforms":["any"],"works_with":["image-gen","veo","kling","runway","any-llm"],"prompt":"CHARACTER BLOCK (paste unchanged in every prompt):\n{Name}: {age range}, {ethnicity / skin tone}, {hair: colour, length, style}, {face: 2 distinctive features, e.g. 'strong jaw, small scar on left eyebrow'}, {build}, wearing {exact outfit: colours, fabric, one accessory}. Always the same outfit and hairstyle.\n\nREFERENCE SHEET (image model, once):\nCharacter reference sheet of {Name} — {paste CHARACTER BLOCK} — three views: front, three-quarter, profile; neutral expression; plain grey background; even studio light; full body and a close-up of the face; no text.\n\nSHOT (video model, each clip):\n{paste CHARACTER BLOCK}. {action}. {setting}. {camera}. {light}. {style}. Use the attached reference image for the face and outfit.","steps":["Write the character block once and never paraphrase it. Models key on exact repeated phrasing.","Generate the reference sheet with your image model, pick the cleanest, and attach it as a reference / first frame where the video model supports it.","Change only the action, setting and camera between clips. If you change the outfit, you have a new character."],"tips":["Two distinctive features beat ten generic ones: 'red beanie, round glasses' survives generation; 'kind eyes, warm smile' does not.","Side-by-side the first frame of every clip in a contact sheet before editing; drift is obvious at thumbnail size and invisible at full screen."],"tags":["consistency","character","reference-image","image-to-video","series","veo","kling"],"difficulty":"intermediate","time":"20 min","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/character-consistency-reference-sheet/","markdown":"https://superduperai.co/library/character-consistency-reference-sheet.md"},{"slug":"cinematic-establishing-shot-prompt","title":"Establishing shot: open a video with a place","description":"A prompt for the wide opening shot that tells the viewer where they are, with the three things that make a generated landscape look filmed rather than rendered.","category":"generation","platforms":["youtube","any"],"works_with":["veo","sora","kling","runway"],"prompt":"Extreme wide establishing shot of {place: a fishing village on a fjord / a rooftop in Istanbul / a desert highway}, {time: blue hour just after sunset / early morning with ground mist}. {One moving element: a single car's headlights, smoke from one chimney, birds crossing the frame, waves}. Camera: slow drone forward at low altitude, or static on a tripod. Anamorphic 40mm feel, deep focus, horizon in the lower third. Natural light only, {weather}. Muted realistic colour, light grain, no HDR look. Distant ambient sound: {wind / sea / traffic hum}. 8 seconds, 16:9. No on-screen text, no logos.","tips":["The one moving element is what separates 'video' from 'a photo that pans'. Always name it.","'No HDR look' and 'muted realistic colour' are the two phrases that stop the model from over-saturating landscapes.","Horizon in the lower third leaves room for a title in the editor."],"tags":["establishing-shot","landscape","drone","text-to-video","cinematic","youtube"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/cinematic-establishing-shot-prompt/","markdown":"https://superduperai.co/library/cinematic-establishing-shot-prompt.md"},{"slug":"claymation-stop-motion-video-prompt","title":"Claymation and stop motion: 12 fps feel, fingerprints, slight jitter","description":"A filled 7-part prompt for a clay stop-motion shot where the imperfections are the point: visible fingerprints, a frame-by-frame stutter, a set that looks built by hand, and what not to ask for.","category":"generation","platforms":["any"],"works_with":["veo","runway","kling","image-gen"],"prompt":"SUBJECT: {subject as a clay figure: body shape, two colours of clay, one prop}\nACTION: {one action, one beat, slightly exaggerated, e.g. 'picks up the oversized teacup with both hands and sips'}\nSETTING: a tabletop miniature set: a kitchen built from painted cardboard and felt, visible glue edges, a backdrop of painted paper sky, everything slightly out of scale\nCAMERA: static locked-off camera on a tripod, medium shot, slightly low angle as if the camera sits on the table; no camera movement at all\nLENS & LIGHT: 50mm macro look, shallow depth of field so the back of the set softens; warm tungsten key from the upper left, a soft fill, small hard shadows that flicker slightly from frame to frame\nSTYLE: handmade claymation stop motion, shot on ones and twos so motion steps at about 12 frames per second, visible fingerprints and tool marks in the clay, slight position jitter between frames, matte clay surfaces with no gloss, clay texture on every surface, saturated primary palette; no smooth interpolation, no motion blur, no CGI\nSOUND: tiny foley: a clay squeak, a wooden knock, room tone; no music\nDURATION: 5 seconds. No on-screen text, no logos.","tips":["What it breaks: smooth camera moves (the model interpolates and the stutter disappears, which kills the style), fast action (the clay melts rather than steps), and mouths; keep the figure's mouth closed or a simple line.","Ask for 'no motion blur' and 'no smooth interpolation' explicitly; left out, most models render fluid motion that looks like a 3D render of clay.","Aspect: 16:9 or 4:3 reads as a film; 9:16 works for a single figure against the painted backdrop. Keep the set edges in frame either way, they are the proof it is handmade.","Try first: Veo or Runway from text, or any model from an image-model still of the set; a suggestion to start with, not a claim about which is best."],"tags":["claymation","stop-motion","style-prompt","text-to-video","handmade"],"difficulty":"intermediate","time":"10 min","verified":false,"created":"2026-11-01","related":["video-prompt-structure-seven-parts","fix-warped-hands-and-faces"],"url":"https://superduperai.co/library/claymation-stop-motion-video-prompt/","markdown":"https://superduperai.co/library/claymation-stop-motion-video-prompt.md"},{"slug":"cold-open-then-hook-contact-sheet","title":"Cold open, then hook: 8-10 s of best frames, hand-picked from a contact sheet","description":"The opening that holds a viewer on real footage: 8-10 s of the strongest frames with no speech, then one line with a twist. What to look for on the sheet, and why the automatic pick is wrong.","category":"editing","platforms":["youtube","shorts","reels","tiktok"],"works_with":["claude-code","life2film","capcut","manual"],"prompt":"COLD OPEN + HOOK, the checklist\n\n1. Make a contact sheet of candidate frames: one frame per shot, ranked by sharpness and exposure, laid out in a grid with the clip name and time under each (ffmpeg tile, or Life2Film's frame scores on the device).\n2. Pick the cold open BY EYE: 8-10 seconds total from 3-5 shots. The ranking puts sharp and colourful first: an empty path through trees, a clean sky. That is what people scroll past.\n3. Look for, in this order: fire, water, neon, night, motion toward the camera, a face with an expression, the film's object (the thing the day is about).\n4. No speech in the cold open. Natural sound or the score only.\n5. The hook is ONE line that follows the cold open, taken from the transcript, with a twist: it promises something the cold open did not show, or contradicts it.\n6. The hook line is said on camera or over the last cold-open shot; never over the moving lips of another sentence.\n7. Check on a phone, muted: would you stop scrolling at second 2?","steps":["Build the contact sheet before you watch any footage. Watching first anchors you on the story; the sheet shows you the frames.","Mark the 3-5 frames on the sheet (a circle in any image editor is enough), then pull those shots at their best 2-3 seconds each.","Search the transcript for the hook: a line with 'but', 'never', 'turns out', a number, or a question. Read five candidates aloud over the cold open.","Render the first 15 seconds alone and watch on a phone before cutting the rest."],"example":"Cold open (9 s): the kettle on the gas ring (fire, 2 s), the ferry wake at night (water, neon, 3 s), she walks toward the lens laughing (motion, face, 4 s).\nHook: \"We had tickets for the 7 am ferry. We were on the midnight one.\"","tips":["Life2Film scores every frame and finds the scene changes on your device; use that to shorten the sheet to the top frames per shot, then choose with your eyes. Nothing automatic chooses the hook.","Don't trust an automatic hook or cover frame without looking at it. The rule in `/video-edit` exists because the ranked pick was an empty path through trees."],"skill":"video-edit","tags":["cold-open","hook","contact-sheet","opening","footage","retention"],"difficulty":"intermediate","time":"20 min","verified":false,"created":"2026-11-01","related":["cutaway-contact-sheet-with-lines","script-to-storyboard-json-cut","hook-text-on-screen-plan-prompt"],"url":"https://superduperai.co/library/cold-open-then-hook-contact-sheet/","markdown":"https://superduperai.co/library/cold-open-then-hook-contact-sheet.md"},{"slug":"creator-budget-gate-payback-arithmetic","title":"The creator budget gate: can you afford a paid creator yet?","description":"A fill-in prompt that divides a creator's monthly retainer by your net revenue per sale to get payback sales per month, then says whether you are in Phase 1 (founder-led, $0) or allowed to pay.","category":"growth","platforms":["tiktok","reels","shorts"],"works_with":["claude-code","claude","chatgpt","any-llm","manual"],"prompt":"Compute the creator budget gate for {app name} and write the result as a short paragraph with the arithmetic shown.\n\nInputs:\n- Retainer per creator per month: {retainer}. Agency creator retainers run about $1,000-2,000 per month each; use the number you were quoted if you have one.\n- Price per sale: {price}\n- Store cut: {store cut percent} %\n- Net revenue per sale = price * (1 - store cut)\n- Current sales per month: {sales per month}\n\nSteps:\n1. Payback sales per creator per month = retainer / net revenue per sale.\n2. Compare current sales per month with payback sales.\n3. If current sales are an order of magnitude (10x) below payback sales, the verdict is PHASE 1 ONLY: founder-led content and niche accounts at $0, no paid creators. Write the sentence 'A creator would need N sales a month to pay for themselves; the app makes M.'\n4. If current sales are within 10x of payback, say so, and state the cost per install at which a retainer pays back: retainer / (payback sales / paywall conversion).\n\nOutput: the arithmetic, the verdict, and one line on which number has to move before the verdict changes.","steps":["Pull the real funnel first: launches, core action, paywall shown, purchase; price after the store's cut; the weekly trend. No analytics means the first deliverable is instrumenting that funnel, not a content plan.","Run the prompt; paste the paragraph into docs/marketing.md as the argument for not hiring yet.","Rerun it monthly with the new sales number. The verdict changes when the arithmetic does, not when a video does well."],"example":"Retainer $1,500. Price $9.99, store cut 30 %, net $6.99. Payback = 1,500 / 6.99 = 215 sales a month per creator. Current sales: 12 a month. 12 is more than 10x below 215: Phase 1 only. A creator would need 215 sales a month to pay for themselves; the app makes 12.","tips":["Write the arithmetic into the doc. It is the argument for not hiring yet, and it ends the discussion faster than any opinion.","A content plan for an app whose paywall converts at 0 % is a plan to pay for traffic that leaks. Fix the funnel before the gate.","In Claude Code, `/creator-growth` writes docs/marketing.md with this gate, the formats, the accounts and the campaign links filled with the app's numbers."],"skill":"creator-growth","tags":["budget","ugc","creators","unit-economics","creator-growth","phase-1"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["founder-led-phase-one-four-formats","phase-two-trigger-paid-micro-creators"],"url":"https://superduperai.co/library/creator-budget-gate-payback-arithmetic/","markdown":"https://superduperai.co/library/creator-budget-gate-payback-arithmetic.md"},{"slug":"critic-pass-two-passes","title":"The critic pass: repeats and sagging scenes first, mid-word joins second","description":"A two-pass review prompt for a subagent or a second session: pass one on structure (repeats, sagging scenes), pass two on joins (mid-word cuts, audio seams). One read finds one kind of problem.","category":"editing","platforms":["any"],"works_with":["claude-code","claude"],"prompt":"You are the critic for a film cut from real footage. Review it in two separate passes and do not mix them.\n\nPASS 1, STRUCTURE (read the cut as text plus the storyboard grid of one frame per shot):\n- Repeats: the same face, the same place, the same point, more than twice in a row or more than {4} times in the film. Line numbers and frames.\n- Sagging: any run of more than {40} seconds where nothing new is said, shown or decided. Give the start and end and the one thing that would fix it (cut, or move a scene).\n- Order: any scene that would land better earlier or later, with why.\n\nPASS 2, JOINS (read the word-timed transcript at every cut point):\n- Lines cut mid-word at a join: the first or last word of a kept sentence shorter than {120} ms. List timecode, the word, and whether the in or out point moves.\n- Audio seams: a cut where the room tone changes audibly inside a sentence.\n- Cutaways over moving lips: any cutaway whose window overlaps a word spoken on camera.\n\nOutput: two numbered lists, PASS 1 and PASS 2, each item with a timecode or line number and a one-line fix. No summary, no praise. If a pass finds nothing, say so for that pass only.","steps":["Give the critic the cut as text, the storyboard grid (one frame per shot: an ffmpeg tile, or Life2Film's scene list exported as frames) and the word-timed transcript. Without word timings pass 2 is guessing.","Fix pass 1 notes first; they move scenes and invalidate pass 2 timecodes. Re-render, then run pass 2.","Run the critic in a fresh session or as a subagent. The session that made the cut defends it."],"tips":["Two passes minimum. A single 'review this' returns three structure notes and misses every mid-word cut, because reading and listening are different jobs.","The storyboard grid catches 'the same face ten times' that every metric passed; include it, not only the text."],"skill":"video-edit","tags":["review","critic","qa","editing","subagent","pacing"],"difficulty":"intermediate","time":"20 min","verified":false,"created":"2026-11-01","related":["read-the-film-as-text-before-rendering","cutaway-contact-sheet-with-lines"],"url":"https://superduperai.co/library/critic-pass-two-passes/","markdown":"https://superduperai.co/library/critic-pass-two-passes.md"},{"slug":"cta-in-comments-not-in-every-video","title":"The download ask lives in the comments, not in every video","description":"A call to action in every video is what gets a video scrolled. Put the app name in the replies to 'what app is this?', keep the link in the bio, and write the replies before you need them.","category":"growth","platforms":["tiktok","reels","shorts"],"works_with":["manual","any-llm","claude","chatgpt"],"prompt":"Write the comment kit for {app name} on {account name}:\n\n1. Five reply templates for 'what app is this?', each under 15 words, each naming the app once and saying one concrete thing it did in the video ('{app name}, it cut the 20-minute clip to 30 s on the phone'). No link in the reply; the link is in the bio.\n2. One pinned comment for the video that explains the one setting shown, in two sentences, with the app named at the end.\n3. Three replies for 'does it work on {other platform}?' / 'is it free?' / 'how long did it take?' with the true answer from this fact sheet: {facts: price, platforms, free tier, what carries the brand credit}.\n4. The rule for the video itself: no 'download now', no 'link in bio' in the voice track. The output on screen is the pitch.\n\nTone: a person answering, not a brand. No exclamation marks, no emoji strings.","steps":["Keep the kit in a note on the phone; answer the same day the video goes up.","Pin the comment that names the setting, not the one that names the app.","Once a week, read the comment questions: a question asked three times is the next educational video."],"tips":["Don't put the download ask in every video; it is what gets a video scrolled. Someone asking in the comments is the ask working.","A brand credit on free exports does the asking for you on every share; see the in-app levers entry."],"skill":"creator-growth","tags":["cta","comments","engagement","ugc","creator-growth","link-in-bio"],"difficulty":"beginner","time":"15 min","verified":false,"created":"2026-11-01","related":["in-app-growth-levers-credit-vertical-preset","founder-led-phase-one-four-formats"],"url":"https://superduperai.co/library/cta-in-comments-not-in-every-video/","markdown":"https://superduperai.co/library/cta-in-comments-not-in-every-video.md"},{"slug":"cutaway-contact-sheet-with-lines","title":"A contact sheet of every cutaway with its line under it","description":"The one-page check that catches off-topic cutaways before anyone watches: every cutaway frame in a grid, its sentence under it. Measured once: 12 of 54 automatic cutaways were off topic.","category":"editing","platforms":["any"],"works_with":["claude-code","ffmpeg","manual"],"prompt":"CUTAWAY SHEET, the checklist\n\n1. From the cut script, list every cutaway: source clip, in point, the sentence it covers.\n2. Extract one frame per cutaway at its midpoint: `ffmpeg -ss <mid> -i <clip> -frames:v 1 -vf scale=480:-2 cut_NN.jpg`.\n3. Label each frame with its sentence: drawtext in ffmpeg, or any image tool. ffmpeg needs a build with freetype for drawtext, and Homebrew's default lacks it.\n4. Tile them: `ffmpeg -pattern_type glob -i 'cut_*.jpg' -vf \"tile=4x{rows}\" sheet.jpg`.\n5. Read the sheet, frame by frame, asking one question: does this picture show what the sentence says? Not 'is it related', not 'is it pretty'.\n6. Mark every miss. Typical misses: a frame upside down, a car over a line about a garage, a shot from a place the story has not reached, a face when the line names an object.\n7. Replace or remove each miss in the cut script. Re-tile. Only then render.","steps":["Build the sheet from the cut script, not from the rendered film; the script knows which sentence each cutaway belongs to.","Read it on a screen big enough to see the whole grid; the misses are obvious side by side and invisible one at a time.","Keep the sheet with the project. When the person who filmed it says 'that is not the bakery', the sheet shows which frame to swap."],"tips":["12 of 54 is the number that made this a rule. The matching used caption similarity, and similarity is not 'shows what is said'.","The same sheet with one frame per shot instead of per cutaway is the storyboard grid that catches 'the same face ten times'."],"skill":"video-edit","tags":["cutaway","contact-sheet","qa","ffmpeg","review","b-roll"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["cutaway-rule-same-place-same-time","critic-pass-two-passes"],"url":"https://superduperai.co/library/cutaway-contact-sheet-with-lines/","markdown":"https://superduperai.co/library/cutaway-contact-sheet-with-lines.md"},{"slug":"cutaway-matching-sentence-to-visual-prompt","title":"Cutaway matching: sentence to a literal visual, same place and time","description":"A prompt that reads each sentence of a transcript and names the one picture that shows it, with the place and time it must come from, so the shot list is a list of things, not moods.","category":"broll","platforms":["youtube","shorts","reels","tiktok"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"For each sentence below, write the ONE cutaway that shows it literally. Output a table: # | Sentence | Visual (the object, place or action named in the sentence, as a shot: size + what is in frame) | Must come from (the place and the time window: same location, within {15} minutes of when the sentence was said) | On camera? (yes if the speaker's lips are visible in the source for this sentence; then the answer is 'no cutaway').\n\nRules:\n- Literal, not associated. 'The bakery was closed' is a shot of the closed bakery door, not a street.\n- If the sentence names nothing visible (an opinion, a feeling), write 'none' unless the previous or next sentence names something; then the cutaway spans both.\n- Never propose a shot from a place the story has not reached or has left.\n- One visual per sentence; if two things are named, pick the one the sentence is about.\n- Mark sentences where the thing named is shown nowhere in the footage list as MISSING, so it can be filmed or generated.\n\nFootage available (clip, place, time, one-line description):\n{paste shot list}\n\nSentences (clip, time, text; 'lips visible' flag if known):\n{paste sentences}","steps":["Produce the footage list from the analysis sidecars or by scrubbing: clip, place, shooting time, one line of what is visible. Without it the agent proposes shots you do not have.","Run the prompt, then build the contact sheet of every chosen cutaway with its sentence under it and read it. Measured on one film: 12 of 54 automatic cutaways were off topic.","For the MISSING rows decide: film it next time, or generate a faceless clip (see the generated-vs-real rule)."],"tips":["The 'must come from' column is what separates a cutaway from stock footage. If you cannot fill it, the shot does not belong in a film about a day.","Place cutaways in silent windows only. The 'on camera?' column exists so lips are never covered."],"skill":"video-edit","tags":["b-roll","cutaway","transcript","agent","matching","footage"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["cutaway-rule-same-place-same-time","cutaway-contact-sheet-with-lines","broll-shot-list-from-transcript-table"],"url":"https://superduperai.co/library/cutaway-matching-sentence-to-visual-prompt/","markdown":"https://superduperai.co/library/cutaway-matching-sentence-to-visual-prompt.md"},{"slug":"cutaway-rule-same-place-same-time","title":"The cutaway rule: what is said, same place and time, never over moving lips","description":"Three constraints for every cutaway in a talking film, and the agent prompt that applies them to a transcript. Kills what viewers read as broken: a picture from elsewhere, a face out of sync.","category":"editing","platforms":["youtube","shorts","reels","tiktok"],"works_with":["claude-code","capcut","manual"],"prompt":"You are placing cutaways in a film cut from real footage. Below are the numbered sentences of the transcript with the clip each comes from and its shooting time, and a list of silent shots with clip, time and a one-line description of what is visible.\n\nFor each sentence, decide: no cutaway, or one cutaway. A cutaway is allowed only if ALL three hold:\n1. It shows what the sentence says: the object, place or action named in it, literally. 'The bread' means a shot with the bread in it.\n2. It comes from the same place and within {15} minutes of the sentence's shooting time. Never from a scene the story has not reached yet, never from one it has left.\n3. The speaker's lips are not visible on camera during the sentence. If they are, the sentence stays on the speaker. No exceptions for a nicer shot.\n\nOutput a table: Sentence | Text | Cutaway clip + in/out | What it shows | Which of the three rules you checked and how.\nIf no silent shot passes all three, write 'none' and, in a separate list, what shot would have been needed (so it can be filmed next time).\n\nSentences:\n{paste numbered sentences}\nSilent shots:\n{paste shot list}","steps":["Produce the two inputs first: the numbered transcript (clip, time, text) and a shot list with a one-line description per silent shot, from the analysis sidecars or from watching.","Run the prompt; then lay out the result as a contact sheet with the line under each cutaway and read it. Measured on one film: 12 of 54 automatic cutaways were off topic.","Place cutaways only in silent windows: between sentences, over a breath, over the listener. If the window is shorter than the cutaway, shorten the cutaway, not the rule."],"tips":["Rule 3 is the one editors break for a better shot. The viewer does not see a better shot; they see a face whose voice continued without it.","Same place, same time is what makes a cut feel like you were there. A beach shot over a line said in the car is stock footage.","Automatic matching by caption similarity picks a car for a line about a garage, and a frame upside down. Read every pair."],"skill":"video-edit","tags":["cutaway","b-roll","editing","sync","footage","rules","agent"],"difficulty":"intermediate","time":"20 min","verified":false,"created":"2026-11-01","related":["cutaway-contact-sheet-with-lines","cutaway-matching-sentence-to-visual-prompt","mentioned-object-must-be-seen-checklist"],"url":"https://superduperai.co/library/cutaway-rule-same-place-same-time/","markdown":"https://superduperai.co/library/cutaway-rule-same-place-same-time.md"},{"slug":"day-as-one-text-file-story-and-cut-prompt","title":"The day as one text file: an agent reads the speech and proposes the story","description":"The step before any timeline: the day's speech in shooting order, numbered by clip and sentence, read by an agent like a scriptwriter. It proposes story, scenes, hook and cutaways; you argue in text.","category":"editing","platforms":["youtube","shorts","reels"],"works_with":["claude-code","claude"],"prompt":"Below is one day of footage as text: every sentence spoken, in shooting order, numbered as clip.sentence, with the shooting time and the clip's one-line visual description. Read it like a scriptwriter, not an editor. You are choosing the story before anyone touches a timeline.\n\nReply in this order:\n1. STORY in three sentences: what happened today, to whom, and what changed by the end. If nothing changed, say what the day was about instead.\n2. SCENES: 4-8 scenes, each with the sentence range (whole conversations: lead-in, the talk, the reaction), the place, and one line on why it is in the film.\n3. HOOK: three candidate lines from the text with a twist (a 'but', a number, a contradiction), each with its sentence number. Say which you would use and why.\n4. PROMISES: any sentence about something that will happen later, with the sentence where it happens if it does.\n5. CUTAWAYS NEEDED: for each scene, which objects or places the lines mention that must be seen, so the cover shots can be chosen from the same place and time.\n6. NOT IN THE FILM: the sentence ranges you would leave out, with one reason each that the person who filmed it could check.\n\nDo not propose timecodes, transitions or music. Text only.\n\nDay:\n{paste the day as numbered sentences}","steps":["Transcribe every clip with word timings (local whisper is enough; keep a glossary so names stay names), then concatenate in shooting order from container metadata, numbered clip.sentence, with the clip's visual description from the analysis sidecar.","Run the prompt. Correct the story and the scenes in the reply, as text. This is the cheapest place to change your mind.","Only then ask for the cut as JSON (see 'write the cut as a script'). The story reply is its brief."],"example":"Input line: 07.3 [14:22] (bakery, counter, her face) \"If this is the bread they meant, we're coming back tomorrow.\"\nOutput, under PROMISES: 07.3 promise: come back tomorrow. Payoff 23.1 [next day 09:05] \"Same bakery. Told you.\" Keep both.","tips":["STT turns unknown names into celebrities. Fix the transcript once with a per-trip glossary before the agent reads it, or the story will star someone famous.","In Claude Code `/video-edit` runs this step after the sidecar analysis; `/transcribe` produces the word-timed text on the Apple GPU without uploading anything."],"skill":"video-edit","tags":["transcript","story","editing","agent","vlog","workflow","footage"],"difficulty":"intermediate","time":"20 min","verified":false,"created":"2026-11-01","related":["script-to-storyboard-json-cut","promise-payoff-pairs-multi-day-film","analyse-once-sidecar-files-metadata-time"],"url":"https://superduperai.co/library/day-as-one-text-file-story-and-cut-prompt/","markdown":"https://superduperai.co/library/day-as-one-text-file-story-and-cut-prompt.md"},{"slug":"day-in-the-life-format-script","title":"Day in the life: a 45-second cut from real footage with one through-line","description":"A recipe for the vlog-style day that keeps working because the viewer waits for one promised payoff; the prompt turns your clip list into a timed script with text overlays.","category":"formats","platforms":["tiktok","reels","shorts"],"works_with":["claude-code","claude","chatgpt","any-llm","life2film"],"prompt":"You are a short-form editor. Write a day-in-the-life script for {topic} from the clip list below. The format works because the viewer is promised one payoff in the first line and stays to see it; a day without a promise is a slideshow.\n\nStructure (45 s total, 9:16):\n- 0-3 s HOOK: one line that names the day and the payoff ('the day I {goal}, and whether it worked'). Face or hands on screen, not a logo.\n- 3-10 s SETUP: where we are, what is at stake, in 2 short lines.\n- 10-35 s THE DAY: 5-7 clips, 3-5 s each, in shooting order. One spoken line per clip, max 10 words. Every clip must show a different place or action; skip two clips of the same table.\n- 35-42 s PAYOFF: the result the hook promised, shown before it is said.\n- 42-45 s CLOSE: one line that invites a comment ('would you do this?'). No download ask in this video; the CTA for this format is the comment and the link in bio.\n\nWord budget: 110-120 words of voice-over at 165 wpm. On-screen text: the hook line as a 2-line caption at 0-3 s, a time stamp top-left on each clip (07:40, 09:15), the payoff as a single word or number at 35 s. Nothing else.\n\nReturn a table: time range, clip filename, spoken line, on-screen text, sound (ambient / music under / voice only). Then the voice-over as one paragraph for recording.\n\nClips (filename, what is in it, duration):\n{clip list}","steps":["List the clips with what each one shows; an agent cannot see a filename.","Pick the payoff before you prompt. 'I tried cooking every meal at home for a day: total cost' is a payoff; 'my day' is not.","Record the voice-over as one take, then cut the picture to the voice. Fix the words, not the shots."],"example":"Topic: a weeknight cooking channel, the day of cooking all three meals from one chicken.\n\n| Time | Clip | Spoken line | On-screen text | Sound |\n|---|---|---|---|---|\n| 0-3 s | 01-fridge.mp4 | One chicken, three meals, one day. Let's see what it costs. | ONE CHICKEN. THREE MEALS. | voice |\n| 3-10 s | 02-receipt.mp4 | Whole bird, seven dollars forty. Everything else is already in the fridge. | $7.40 | voice |\n| 10-14 s | 03-breaking-down.mp4 | Breasts for lunch, thighs for dinner, carcass for stock. | 07:40 | ambient |\n| 14-18 s | 04-stock-pot.mp4 | Stock goes on first; it runs while I work. | 08:05 | ambient |\n| 18-22 s | 05-lunch.mp4 | Lunch: breast, rice, the lemon from yesterday. | 12:30 | music under |\n| 22-26 s | 06-thighs-pan.mp4 | Thighs skin down, do not touch them for six minutes. | 18:50 | ambient |\n| 26-30 s | 07-dinner-plate.mp4 | Dinner. The kids did not ask what it was, which is a win. | 19:20 | music under |\n| 30-35 s | 08-stock-jars.mp4 | Stock into jars. Tomorrow's soup is already done. | 21:00 | ambient |\n| 35-42 s | 09-three-plates.mp4 | Three meals, four people, and the stock for tomorrow. Under two dollars a plate. | $1.85 / PLATE | voice |\n| 42-45 s | 10-face.mp4 | Would you eat chicken three times in a day? | (none) | voice |\n\nVoice-over (118 words): One chicken, three meals, one day...","tips":["Life2Film scores every frame and finds the scene changes on the device, so a 40-minute day comes back as the 12 clips worth listing before you prompt.","In Claude Code, `/video-edit` reads the day's speech as text and writes the cut as a script; this prompt is the planning half of that.","The time stamps on screen do the pacing work; a viewer who sees 07:40 then 19:20 feels the day pass without a single transition effect."],"tags":["day-in-the-life","vlog","real-footage","tiktok","reels","trust","script"],"difficulty":"beginner","time":"20 min","skill":"video-edit","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/day-in-the-life-format-script/","markdown":"https://superduperai.co/library/day-in-the-life-format-script.md"},{"slug":"fashion-lookbook-studio-walk-prompt","title":"Fashion lookbook: a model walks in a studio at 24 fps","description":"A filled 7-part prompt for a lookbook clip: seamless backdrop, one walk toward the camera, cinema frame rate so the fabric moves like fabric, and the faces, feet and prints that need extra care.","category":"generation","platforms":["reels","tiktok","youtube"],"works_with":["runway","kling","veo","image-gen"],"prompt":"SUBJECT: {the model: build, hair, skin tone, and the outfit in detail: garment, fabric, colour, one accessory}\nACTION: {one walk, e.g. 'walks straight toward the camera, stops at a medium shot, turns a quarter to the left'}\nSETTING: a photo studio with a seamless pale grey paper backdrop curving into the floor, no props, no visible lights in frame\nCAMERA: full shot at the start, eye level, static tripod; the walk brings the model to a medium shot; no camera movement, no zoom\nLENS & LIGHT: 85mm look, moderate depth of field with the backdrop slightly soft; a large soft key from the front left at 45 degrees, a soft fill, a faint rim on the shoulders, even exposure on the face and the fabric\nSTYLE: editorial lookbook film, 24 frames per second with natural motion blur, clean digital look, neutral white balance, true fabric colour, skin texture kept, no beauty smoothing, no HDR, no grain\nSOUND: studio room tone, footsteps on paper; no music\nDURATION: 6 seconds, 9:16. No on-screen text, no logos, no second person.","tips":["What it breaks: feet and footsteps (the gait slides), hands near the garment, printed patterns and logos on fabric (they swim), and the face when the walk is fast. Plain fabrics, a slow walk, hands relaxed at the sides.","State '24 frames per second with natural motion blur'; without it some models render a stepped, too-sharp motion that reads as a game cutscene.","Aspect: 9:16 for a full-length walk in a feed; 4:5 for a catalogue grid. The model should fill the frame top to bottom at the end of the walk, so start the walk farther back in 9:16.","Try first: Runway or Kling with a character reference image for the face and the outfit (the reference sheet entry); a suggestion to start with, not a ranking."],"tags":["fashion","lookbook","studio","style-prompt","text-to-video","ecommerce"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["character-consistency-reference-sheet","product-hero-shot-generation"],"url":"https://superduperai.co/library/fashion-lookbook-studio-walk-prompt/","markdown":"https://superduperai.co/library/fashion-lookbook-studio-walk-prompt.md"},{"slug":"ffmpeg-burn-in-subtitles-command","title":"Burn subtitles with ffmpeg: the command with size, outline and margin","description":"One ffmpeg command that burns an SRT into a 9:16 video with white text, a dark outline and the block held above the platform UI, plus the check that your ffmpeg build can run it at all.","category":"captions","platforms":["tiktok","reels","shorts"],"works_with":["ffmpeg"],"prompt":"ffmpeg -i in.mp4 -vf \"subtitles=subs.srt:force_style='FontName=Arial,FontSize=20,Bold=1,PrimaryColour=&H00FFFFFF,OutlineColour=&H00000000,Outline=2,Shadow=0,BorderStyle=1,Alignment=2,MarginV=60,MarginL=20,MarginR=20'\" -c:v libx264 -crf 20 -pix_fmt yuv420p -c:a copy -movflags +faststart out.mp4\n\nWhat each parameter does:\n- FontSize=20, MarginV=60: ffmpeg gives an SRT a 384x288 script resolution, so these are in that scale. MarginV=60 puts the text bottom about 20 percent up the frame; FontSize=20 is roughly 7 percent of the height on 9:16. Adjust by eye on a phone.\n- PrimaryColour / OutlineColour: ASS colours are &HAABBGGRR; &H00FFFFFF is opaque white, &H00000000 opaque black.\n- Outline=2, Shadow=0, BorderStyle=1: an outline in script units, no drop shadow, no box.\n- Alignment=2: bottom centre (numpad layout: 2 bottom, 5 middle, 8 top).\n- MarginL / MarginR: keeps long lines off the edges on a narrow frame.\n- -c:a copy: the audio is untouched; only the picture is re-encoded, which burning requires.\n\nPreview 10 seconds before the full run:\nffmpeg -t 10 -i in.mp4 -vf \"subtitles=subs.srt:force_style='FontSize=20,Outline=2,MarginV=60,Alignment=2'\" -c:a copy preview.mp4","steps":["Check the build: `ffmpeg -filters | grep -w subtitles`. Homebrew's default ffmpeg on a Mac is built without libass and the filter is missing (checked 2026-10-25); `brew install ffmpeg-full` and use `/opt/homebrew/opt/ffmpeg-full/bin/ffmpeg`.","Clean the SRT first (glossary, merged cues, 2 lines of about 32 characters). The filter wraps long lines on its own and does it badly.","Render the 10-second preview, open it on a phone in the platform preview, adjust MarginV then FontSize, then run the full file.","If the SRT path has spaces or colons, rename the file; escaping them inside the filter string is where most 'file not found' errors come from."],"tips":["This is the one re-encode you cannot avoid when the picture changes; a trim, an audio swap or an outro should be a stream copy, never a re-encode.","Use a .ass file instead of .srt when you need per-cue position or two styles (a speaker and a label); the same filter reads it and force_style still applies as the default."],"skill":"video-edit","tags":["ffmpeg","subtitles","burn-in","command","9-16","libass"],"difficulty":"intermediate","time":"10 min","verified":false,"created":"2026-11-01","related":["burned-subtitles-9-16-parameters","srt-cleanup-glossary-merge-cues-prompt"],"url":"https://superduperai.co/library/ffmpeg-burn-in-subtitles-command/","markdown":"https://superduperai.co/library/ffmpeg-burn-in-subtitles-command.md"},{"slug":"fix-warped-hands-and-faces","title":"Fewer warped hands and faces: what to change in the prompt","description":"The prompt-side fixes for the classic generation failures (melting hands, drifting faces, extra limbs), ordered by how often each one works.","category":"generation","platforms":["any"],"works_with":["veo","kling","sora","runway"],"prompt":"Apply in this order until the artefact is gone:\n1. Remove the second action. One beat per clip.\n2. Hide the hands: 'hands in pockets', 'holding {object} with both hands', 'hands out of frame'.\n3. Change the shot size one step wider (close-up → medium) or one step tighter (medium → close-up); the in-between sizes fail most.\n4. Make the camera static.\n5. Add at the end: 'anatomically correct, five fingers, single person, no extra limbs, no duplicate faces'.\n6. Shorten to 4-5 seconds.\n7. Switch to image-to-video from a clean still of the same shot.","tips":["Step 1 fixes more clips than steps 2-6 together.","A negative prompt is the last resort, not the first: on most current models it changes little, and on some it degrades the shot."],"tags":["troubleshooting","hands","faces","artifacts","text-to-video","cheatsheet"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["image-to-video-first-frame-method","camera-movement-vocabulary"],"url":"https://superduperai.co/library/fix-warped-hands-and-faces/","markdown":"https://superduperai.co/library/fix-warped-hands-and-faces.md"},{"slug":"food-macro-close-up-video-prompt","title":"Food close-up: macro, steam, a slow pour","description":"A filled 7-part prompt for a food shot that looks edible: one macro framing, one slow physical event (a pour, steam, a crack), side light that shows texture, and the hands and labels to keep out.","category":"generation","platforms":["reels","tiktok","shorts"],"works_with":["kling","veo","runway","image-gen"],"prompt":"SUBJECT: {the dish or ingredient, with texture words: glossy, crumbly, charred, flaky, and one colour}\nACTION: {one slow physical event, e.g. 'honey pours in a thin thread onto the stack' / 'steam rises and curls' / 'a knife cracks the caramel crust'}\nSETTING: a dark wooden table, a linen napkin half out of focus, a ceramic plate, a kitchen in the background fully blurred\nCAMERA: macro close-up, 30 degrees above the plate, static, the subject filling two thirds of the frame; the only motion is the event itself\nLENS & LIGHT: 100mm macro look, very shallow depth of field with the focus on the nearest edge of the food; one soft window light from the side and slightly behind so steam and gloss catch it, a dark fill on the camera side\nSTYLE: editorial food photography in motion, true-to-life colour with warm highlights, visible texture, light film grain, no HDR look, no oversaturation; the pour or the steam moves at natural speed or slightly slower\nSOUND: close foley of the event (a thin pour, a crackle), kitchen room tone; no music\nDURATION: 5 seconds, 9:16. No on-screen text, no hands, no cutlery moving, no packaging with labels.","tips":["What it breaks: hands and utensils (fingers around a fork), labels and packaging text, and pour physics when the pour is fast. Keep hands out, keep the event slow, keep the ingredient loose or on a plate.","Speed: slightly slower than real is the sweet spot; true slow motion makes steam look like smoke and a pour look like syrup.","Aspect: 9:16 for feeds, with the food in the middle third so the caption and the hook text can sit above it. 1:1 for a listing.","Try first: Kling or Veo from an image-model still of the plated dish; the still fixes the plating and the model only adds the pour. A suggestion to start with."],"tags":["food","macro","close-up","style-prompt","text-to-video","reels"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["product-hero-shot-generation","image-to-video-first-frame-method"],"url":"https://superduperai.co/library/food-macro-close-up-video-prompt/","markdown":"https://superduperai.co/library/food-macro-close-up-video-prompt.md"},{"slug":"forced-reasoning-before-scripting","title":"Forced reasoning before scripting: goal, hook type, demo moments, emotion arc","description":"Four questions an agent must answer in writing before it writes a line of script. Skips the generic promo every model produces when asked for one directly.","category":"scripts","platforms":["any"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Before writing any script for {product}, answer these four questions in writing. Do not write the script in this reply.\n\n1. GOAL: What should the viewer DO after watching? One verb and one place (download from the App Store, sign up at {url}, reply with a comment). If you list two, pick one.\n2. HOOK TYPE: Which of these opens the video, and why for {audience}: a question, a surprising number the reader can check, a pain point in the user's words, a bold claim. Write the hook line for the chosen type, max 12 words.\n3. DEMO MOMENTS: The three product moments to show on screen, each as one sentence of what is visible and what the viewer understands from it. Mark which one is the wow moment.\n4. EMOTION ARC: Frustration, then discovery, then relief. For each stage, which shot carries it and which line of narration.\n\nThen list what you are NOT showing and why. Stop and wait for my corrections.","steps":["Run this as its own message. Correct the answers (the goal is usually wrong on the first pass), then ask for the script in the next message.","Keep the four answers at the top of the script file. When a cut feels off, the arc is where the error usually is."],"example":"GOAL: install from the App Store.\nHOOK TYPE: pain point. \"Four hundred clips from Lisbon. You have watched none of them.\"\nDEMO MOMENTS: (1) a folder dropped in, the scene list fills itself; (2) the best frame of each scene appears as a cover; (3) WOW: the 40-second film plays, cut to the music, and the originals are untouched.\nEMOTION ARC: frustration = the camera roll scrolling forever; discovery = the scene list; relief = the film playing on the phone.\nNOT SHOWING: settings, export options, the long-form mode. One job per promo.","tips":["The wow moment is the shot you would post on its own with no sound. If none of the three qualifies, go back to the product, not the script.","`/video-promo` in Claude Code runs this step before scripting; the answers end up in docs/video-promo.md."],"skill":"video-promo","tags":["planning","script","reasoning","promo","hook","agent"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["promo-script-30-45-seconds-template","shot-list-table-generator-prompt"],"url":"https://superduperai.co/library/forced-reasoning-before-scripting/","markdown":"https://superduperai.co/library/forced-reasoning-before-scripting.md"},{"slug":"founder-explainer-format","title":"Founder explainer: 'I built this because' in 40 seconds, to camera, one problem","description":"The founder-to-camera format that converts because it names the specific moment the problem became unbearable, then shows the product once. The prompt bans origin-story clichés and budgets the words.","category":"formats","platforms":["tiktok","reels","shorts","linkedin"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a founder explainer script for {product}. The format works because a person saying 'I had this problem' is believed where a product page is not; it fails when the problem is generic. The problem must be one specific moment with a place, a time and a cost.\n\nBanned: 'I was frustrated with', 'there had to be a better way', 'so I built', 'passion', 'journey', 'game-changer'. If the draft contains any, rewrite the line as the concrete event.\n\nStructure (40 s, 9:16, face to camera, 2 inserts):\n- 0-4 s THE MOMENT: the specific event ('11 pm, 40 listing photos, the desktop editor crashed on number 31'). On-screen: the number or the time from that sentence.\n- 4-12 s THE COST: what it cost in time or money, and how often it happened. Numbers only if real.\n- 12-20 s WHAT I TRIED: two things that did not work, one line each. No brand names for the things that did not work.\n- 20-32 s WHAT I BUILT: one insert of the product doing the one thing, 8-10 s, real screen, narrated as actions. Not features: the one action that fixes the moment at 0-4 s.\n- 32-37 s WHO IT IS FOR: one sentence naming the person, not 'anyone who'.\n- 37-40 s CLOSE: this is a conversion video, so the download ask is allowed here: name, one line, link in bio. It is the only ask in the series.\n\nWord budget: 100-110 words at 165 wpm. On-screen: the number at the moment, the product name once at 20 s, the name again at the close.\n\nReturn: the moment sentence first (I will reject a generic one), then the script as spoken prose with [insert: ...] markers, then the three on-screen lines.\n\nProduct: {product}\nThe moment it became unbearable: {what happened, when, where}\nWho it is for: {one person}","example":"Product: a notes app that turns whiteboard photos into typed notes. Moment: the night before a final, 14 whiteboard photos, half of them glare, none searchable.\n\nMoment sentence: 'The night before my linear algebra final I had fourteen photos of whiteboards and could not find the one with the proof.'\n\nScript: The night before my linear algebra final I had fourteen photos of whiteboards and could not find the one with the proof. I scrolled for forty minutes. That happened every exam, every term, two years. I tried typing them up during lectures, which meant not listening. I tried a scanner app, which gave me a PDF I still could not search. [insert: share sheet, the app, the board becomes text, search 'eigen', the note appears] Now a photo goes to {product} from the share sheet, comes back as text, and the glare is gone. Search for one word and the lecture is there. It is for the student who photographs the board instead of copying it. {product}, link in bio.\n\nOn-screen: '14 photos, 40 minutes' at 0-4 s; '{product}' at 20 s; '{product} · link in bio' at 37 s.","tips":["In Claude Code, `/video-promo` builds the hook/problem/demo/CTA plan from the PRD; feed this prompt the moment it picks and the script gets specific.","Film the moment line first and alone, ten takes, pick the flattest delivery. The product insert can be re-recorded any time; the moment cannot be faked later."],"tags":["founder","explainer","talking-head","convert","linkedin","tiktok","script"],"difficulty":"beginner","time":"15 min","skill":"video-promo","verified":false,"created":"2026-11-01","related":["build-in-public-behind-the-scenes-format","watch-me-use-it-product-demo-format"],"url":"https://superduperai.co/library/founder-explainer-format/","markdown":"https://superduperai.co/library/founder-explainer-format.md"},{"slug":"founder-led-phase-one-four-formats","title":"Phase 1, founder-led: the four formats and what each one buys","description":"Educational converts, POV and humor get reach, story builds trust, comparison works when the app replaces something expensive. A prompt that plans a week of founder videos across all four.","category":"growth","platforms":["tiktok","reels","shorts"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Plan Phase 1 content for {app name}, a {one-line description} for {audience}. The founder is on camera; the budget is $0.\n\nStart from the content the product already makes: its output ({what the app produces: a photo, a result, a before/after}) is the hook, and 'made with an app on a phone' is the surprise.\n\nWrite 7 video ideas across the four formats, labelled by what each buys:\n- EDUCATIONAL (converts): '{N} settings for X', one concrete thing the viewer can do today. 2 ideas.\n- POV (reach): the viewer's situation from the inside; the app appears as the way out. 2 ideas.\n- HUMOR (reach): the pain exaggerated, the result shown straight. 1 idea.\n- STORY (trust): one session from start to result, real time compressed, the ugly part kept. 1 idea.\n- COMPARISON (only if the app replaces something expensive: {what it replaces, or 'none'}): the expensive way next to the app way, same input. 1 idea, or a second STORY.\n\nFor each idea: the first-frame hook (what is on screen, the text on screen, the sound), the one beat it shows, the length in seconds (15-40), and whether the download ask goes in the comments or nowhere.\n\nNo generic ideas. Every idea names the exact output of the app that is shown.","steps":["Shoot all 7 in one session with the same light and the same framing; the format varies, the set does not.","Post 1-2 a day. One vertical cut goes to TikTok, Reels and Shorts.","After a week, read installs per campaign link, not views, to see which format converted."],"tips":["Camera basics decide weak vs strong more than the idea does: depth in the background, light on the face, energy, clean audio.","The hook is in the first frame: visual, text on screen, sound. Most of the feed never sees a second frame.","Judge each format by the metric it was made for: educational by installs, POV and humor by reach. A POV video with few installs did its job."],"skill":"creator-growth","tags":["founder-led","formats","ugc","short-form","creator-growth","content-plan"],"difficulty":"beginner","time":"20 min","verified":false,"created":"2026-11-01","related":["creator-budget-gate-payback-arithmetic","posting-cadence-one-vertical-cut-three-feeds"],"url":"https://superduperai.co/library/founder-led-phase-one-four-formats/","markdown":"https://superduperai.co/library/founder-led-phase-one-four-formats.md"},{"slug":"generate-20-hooks-ranked-by-rubric","title":"Generate 20 hooks for a topic and rank them by a stated rubric","description":"One prompt that produces 20 openers across the 8 archetypes, scores each on four named criteria, and returns the top 5 with the score shown, so the ranking can be argued with instead of trusted.","category":"hooks","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Generate 20 hooks for a short vertical video about {topic}, aimed at {audience}, where the video's goal is {reach / convert / trust}.\n\nSpread: at least 2 of each archetype: question, bold claim, pain point, curiosity gap, 'stop doing X', number, contrarian, result-first. Label each with its archetype.\n\nRules for every hook: max 12 words; spoken and on-screen are the same words; present tense; no 'ever wondered', 'what if I told you', 'you won't believe', 'secret', 'hack', 'ultimate'; a number only if the reader could measure it.\n\nScore each hook 0-3 on four criteria and show the four digits:\n- SPECIFIC: names a place, object, number or moment (3) vs could be about any topic (0).\n- CHECKABLE: the video can prove or deliver it by 20 s (3) vs it is an opinion or a tease (0).\n- SOUND-OFF: works as text on a still frame (3) vs needs the voice (0).\n- MATCH TO GOAL: for reach, how many people have a guess or an opinion; for convert, how close it is to the moment of need; for trust, how much it admits (3 to 0).\n\nReturn: a table of 20 rows (number, archetype, hook, four digits, total out of 12), then the top 5 by total with one line each on what frame 1 shows, then the 3 lowest with one line on why they failed. Do not round the scores up to make a nice top 5; ties are fine.","steps":["Fill topic, audience and the goal. The goal changes the fourth score; 'reach' and 'convert' rank differently.","Shoot the top 3, not the top 1. The rubric predicts the order wrong often enough that three is the cheapest insurance.","Put each one on its own campaign link and judge after a week on installs (see the A/B entry)."],"example":"Topic: a weeknight cooking channel, one chicken into three dinners. Audience: parents cooking on weekdays. Goal: reach.\n\n| # | Archetype | Hook | S C O M | Total |\n|---|---|---|---|---|\n| 1 | result-first | Three dinners. One chicken. Seven dollars forty. | 3 3 3 2 | 11 |\n| 2 | number | One chicken, three meals, one day. Let's see what it costs. | 3 3 2 3 | 11 |\n| 3 | pain-point | It's six pm, the chicken is frozen, and the kids are asking. | 3 2 2 3 | 10 |\n| 4 | stop-doing | Stop buying chicken breasts. Buy the bird. | 2 3 3 2 | 10 |\n| 5 | contrarian | Meal prep on Sunday is why you order takeaway on Wednesday. | 2 2 2 3 | 9 |\n| 6 | question | Why is the whole chicken cheaper than two breasts? | 2 3 2 2 | 9 |\n| 7 | curiosity-gap | The third dinner is the one nobody expects. It's at the end. | 2 3 1 2 | 8 |\n| 8 | bold-claim | Under two dollars a plate, four people, no coupons. | 3 3 3 2 | 11 |\n| ... | | (12 more rows) | | |\n\nTop 5: 1, 2, 8, 3, 4. Frame 1 for #1: three plates in a row, receipt propped behind them. Frame 1 for #2: the whole bird on the board, knife beside it.\n\nLowest 3: 'Cooking doesn't have to be hard' (0 0 1 0, portable to any topic); 'You won't believe this chicken trick' (0 0 1 1, banned phrase and nothing checkable); 'Let me show you my process' (0 1 0 0, no promise).","tips":["Showing the four digits is the point. A ranked list with hidden scores cannot be corrected; a list with scores lets you say 'that one is not a 3 on checkable' and move on.","In Claude Code, ask for the table as a CSV file so the three you shoot can be matched to their campaign links later."],"tags":["hook","generate","rubric","ranking","agent","claude","chatgpt","workflow"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["hook-ab-test-campaign-links","hook-rewrite-five-stronger-versions"],"url":"https://superduperai.co/library/generate-20-hooks-ranked-by-rubric/","markdown":"https://superduperai.co/library/generate-20-hooks-ranked-by-rubric.md"},{"slug":"generated-music-30s-track-brief-prompt","title":"Prompt for a music generator: a 30-second instrumental for a short","description":"A brief in the shape music generation tools read: structure by seconds, BPM, three instruments, no vocals, a drop that lands on your hook cut, and an ending that stops instead of fading.","category":"music","platforms":["tiktok","reels","shorts"],"works_with":["any-llm","claude","chatgpt","manual"],"prompt":"Instrumental, 30 seconds, {BPM} BPM, {key} {major or minor}. No vocals, no lyrics, no vocal chops, no spoken words.\nGenre: {genre}. Instruments: {instrument 1}, {instrument 2}, {instrument 3}. One texture only: {e.g. 'tape hiss' / 'vinyl crackle' / 'clean'}.\nStructure, by seconds:\n0-2 s: a single hit or a held chord, no drums (the first frame of the video needs air).\n2-{drop} s: build, sparse, no kick; a rising element that stops exactly at {drop} s.\n{drop} s: the drop, full drums and bass, first downbeat exactly here.\n{drop}-{break start} s: full groove, one chord change every 2 bars.\n{break start}-{break end} s: breakdown, drums out, chords only.\n{break end}-28 s: the groove returns, same chords as the first groove.\n28-30 s: a final hit that rings out and stops dead by 30 s. No fade-out.\nMood as harmony: {e.g. 'major sevenths, warm' / 'minor with an added sixth, tense'}. Even dynamics; no risers, no cinematic hits, no reverse cymbals.\nLoop point: the audio at 30 s must match the audio at 2 s so the video can loop.\nMaster to -16 LUFS integrated, true peak -1.5 dBTP, stereo, 48 kHz WAV.","steps":["Set {drop} to the exact second of the cut right after your hook; read it from the timeline, not from memory.","Generate 3-4 takes; pick by whether the first downbeat lands within one frame of your cut. Nudge the track in the editor by a few frames rather than regenerating.","If the tool added something you did not ask for (a vocal, a riser), regenerate with the 'no' lines moved to the top of the prompt."],"tips":["Tools follow the structure by seconds loosely. Leave a one-beat hold on the shot at the drop so a small miss is absorbed.","Ask for the drums as a separate stem if the tool offers it: the edit can mute them under speech and keep the chords.","Where the video has live sound, the generated track gets a hole there, not a duck."],"tags":["generated-music","music-brief","shorts","instrumental","prompt-template","loop"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["music-brief-prompt-for-picking-a-track","beat-sync-cut-not-every-beat","score-hole-where-live-sound-plays"],"url":"https://superduperai.co/library/generated-music-30s-track-brief-prompt/","markdown":"https://superduperai.co/library/generated-music-30s-track-brief-prompt.md"},{"slug":"generated-video-first-frame-hook","title":"Hook for a generated video: what must be in frame 1 when a model draws it","description":"The first-frame rules for Veo, Kling and Runway: start mid-action, name the motion already happening, keep text out of the generation, and generate the hook shot as its own 4-second prompt first.","category":"hooks","platforms":["tiktok","reels","shorts"],"works_with":["veo","kling","runway","image-gen","any-llm"],"prompt":"Write the hook shot for a generated short video about {topic}, as a standalone 4-second generation prompt. The viewer decides on frame 1 (about 0.1 to 0.5 s for younger audiences, 1 to 2 s for older ones, per the creator-growth skill), so the hook shot is generated separately, judged at thumbnail size, and only then is the rest of the video made.\n\nFrame 1 rules for a model:\n- The subject is already in frame at full size and already mid-action: 'a hand already lifting the lid', not 'a hand reaches for the lid'. Models ramp motion from a still; write the action as in progress.\n- One strong motion that reads at thumbnail size: steam, pouring, a door opening, a page turning, a cursor moving. Name it; do not ask for 'dynamic'.\n- Close-up or medium close-up. Wide shots have nothing to look at in 0.5 s.\n- Light from one named side so there is a bright and a dark half; flat light reads as a render.\n- No on-screen text, no logos, no subtitles in the generation; the hook text is added in the editor in the platform font, so it stays sharp and editable.\n- 4 seconds, 9:16, the camera static or a slow push in. No orbit, no whip pan on the hook shot.\n\nWrite the hook shot in this shape: subject already {mid-action}, {setting}, {medium close-up / close-up}, {static / slow push in}, {light from one side}, {style}, {ambient sound}, 4 seconds, 9:16, no on-screen text, no logos.\n\nThen: the hook TEXT line to add in the editor (max 7 words, upper third), and a 2-line note on what to check at thumbnail size before generating the other shots (is the motion visible, is the subject identifiable, does the bright half hold the subject).\n\nTopic: {topic}\nWhat the first second must show: {the subject and the motion}","example":"Topic: a weeknight cooking channel, a 4-minute smash burger. First second: the ball of meat hitting the pan.\n\nHook shot: A ball of ground beef already hitting a hot cast-iron pan, fat already spitting, a steel spatula entering from the right. A home kitchen hob, close-up, camera static at pan level. Hard light from a window on the left, the right half of the pan in shadow. Clean handheld-phone look, true-to-life colour, light steam. Loud sizzle, no music. 4 seconds, 9:16. No on-screen text, no logos.\n\nEditor text: '4 MIN. ONE PAN.' in the upper third, from frame 1.\n\nThumbnail check: the spatter must be visible at 150 px wide (if not, move the camera closer); the patty must be in the bright left half; if the model opens on an empty pan, add 'already' before every verb and shorten to 3 seconds.\n\nSecond hook variant, for A/B: A pair of hands already pressing a spatula flat onto a patty, the edge crisping, same pan, same light, extreme close-up. Editor text: 'DON'T TOUCH IT FOR 2 MIN.'","tips":["Generate the hook shot first and alone. If it fails at thumbnail size, the other seven shots were wasted money.","'Already' is the word that moves a model off the still frame: 'already pouring', 'already rising', 'already open'.","Use the first-frame method from the generation category when the hook needs an exact composition: make the still, approve it at thumbnail size, then animate it."],"tags":["hook","generated-video","first-frame","veo","kling","runway","text-to-video"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["visual-hook-first-frame-rules","image-to-video-first-frame-method","camera-movement-vocabulary"],"url":"https://superduperai.co/library/generated-video-first-frame-hook/","markdown":"https://superduperai.co/library/generated-video-first-frame-hook.md"},{"slug":"generated-vs-real-broll-decision-rule","title":"Generated b-roll or real: the decision rule","description":"When a generated cutaway is fine (faceless, no logos, no claim about a real place or time) and when only footage from the same day will do. Five questions, in order, before you open a video model.","category":"broll","platforms":["youtube","shorts","reels","tiktok","linkedin"],"works_with":["claude-code","veo","kling","runway","manual"],"prompt":"GENERATED OR REAL, answer in order; the first REAL wins\n\n1. Is the line about something that happened to the speaker, here, today? REAL. A film about a day uses the day's pictures; a generated beach over 'we swam at dawn' is a lie the viewer can feel even when they cannot name it.\n2. Does the shot need a face, a known person, or a recognisable real place? REAL. Generated faces drift between clips and generated landmarks are wrong in ways locals see at once.\n3. Would the shot carry a logo, a product label, a screen with real text, or anything a viewer might read? REAL, or a screen recording. Models still garble text and invent brands.\n4. Is the line general (how a thing works, what a category of object looks like, an abstract process) and would the shot be faceless with no logos? GENERATED is fine. Prompt it literally: 5 s, one action, 'no on-screen text, no people's faces', in the film's style lock.\n5. Do you have the real thing but shot badly (shaky, dark, 2 seconds)? REAL, two seconds of it. Bad real footage of the right thing beats a clean generated clip of a similar thing, in a film about real events.\n\nLabel generated clips in the cut script (\"generated\": true) and in the description where the platform asks; keep the prompt and model in a sidecar next to the clip.","steps":["Walk the five questions for every MISSING row of your cutaway list; most of a personal film's gaps resolve at question 1 (film it next time, or cut the line).","For the rows that reach question 4, write the generation prompt from the sentence itself: literal, faceless, in the style lock, and generate 2 takes.","Put generated clips through the same contact-sheet check as real ones: does it show what the line says?"],"tips":["Explainers and product videos reach question 4 constantly; a vlog almost never does. Know which film you are cutting.","Faceless is what makes generated b-roll safe: no character consistency problem, no likeness question, and it cuts next to real footage without a visible seam when the style lock matches the grade."],"tags":["b-roll","generated","decision","text-to-video","rules","authenticity"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["b-roll-pack-generation-prompt","style-lock-block","ai-video-disclosure-and-rights-checklist","cutaway-matching-sentence-to-visual-prompt"],"url":"https://superduperai.co/library/generated-vs-real-broll-decision-rule/","markdown":"https://superduperai.co/library/generated-vs-real-broll-decision-rule.md"},{"slug":"generation-storyboard-from-script-agent","title":"Ask an agent to turn a script into a numbered generation shot list","description":"A prompt for Claude or ChatGPT that converts a 30-second script into 6-8 shot prompts in the 7-part structure, ready to paste into a video model one by one.","category":"generation","platforms":["any"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"You are a storyboard artist for AI-generated video. Turn the script below into a shot list for a video generation model (Veo / Kling / Runway).\n\nRules:\n- 6 to 8 shots, each 4-8 seconds, total under {30} seconds.\n- Each shot is ONE paragraph of prose with: subject, one action, setting, shot size + one camera move, lens feel + light, style, ambient sound, duration. End with 'No on-screen text, no logos.'\n- Reuse this STYLE LOCK verbatim at the end of every shot: {style lock paragraph}\n- Reuse this CHARACTER BLOCK verbatim wherever the person appears: {character block}\n- Vary shot sizes: never two consecutive shots of the same size.\n- Shot 1 must work as a hook with the sound off.\n- After the list, add a table: shot number, duration, the line of script it covers, what the editor adds on top (text, cut point).\n\nScript:\n{paste script}","steps":["Paste the output shots one by one into the model; keep the shot number in the clip filename.","Generate two takes of shot 1 and the last shot first: if the hook and the ending do not work, the middle will not save it.","Bring the clips, the table and the script into your editor or Life2Film; the table is your edit decision list."],"tips":["In Claude Code this is one message with the script file attached; ask it to write shots to `shots/NN.txt` so each prompt is a file you can regenerate from.","Keep total shot count low. Eight good clips cut better than twenty mediocre ones."],"tags":["storyboard","shot-list","agent","claude","chatgpt","workflow","text-to-video"],"difficulty":"intermediate","time":"10 min","skill":"video-promo","verified":false,"created":"2026-11-01","related":["video-prompt-structure-seven-parts","style-lock-block"],"url":"https://superduperai.co/library/generation-storyboard-from-script-agent/","markdown":"https://superduperai.co/library/generation-storyboard-from-script-agent.md"},{"slug":"hook-ab-test-campaign-links","title":"A/B test hooks with campaign links: judge after a week on installs, not views","description":"The creator-growth method: same video, different hook, one store campaign link per variant, installs per campaign read after a week. Includes the iOS ct= link shape and the noise rule.","category":"hooks","platforms":["tiktok","reels","shorts"],"works_with":["manual","claude-code","any-llm"],"prompt":"Set up a hook A/B test for {app} on {platform}.\n\n1. One body, two or three hooks. Cut the same 20-40 s body and prepend each hook variant (0-3 s). Nothing else changes: same caption, same posting hour, same account.\n\n2. One campaign link per variant. iOS:\nhttps://apps.apple.com/app/apple-store/id{APP_ID}?pt={PROVIDER_ID}&ct={platform}-{account}-{hookA}&mt=8\nThe ct value is at most 40 characters; use a short code per hook (hookA, hookB). Android: the Play store link with &referrer=utm_source%3D{platform}-{account}-{hookA}. Put the link in the bio or the pinned comment and change it when the variant changes, or run each variant from its own account if you have niche accounts.\n\n3. Post each variant on a different day at the same hour, then repeat so each hook has 2-3 posts. A single post is one data point and one data point is weather.\n\n4. Judge after a week. Read installs per campaign in App Store Connect under App Analytics, Sources (iOS) or the Play Console acquisition report by referrer (Android). Views are attention; installs are the result. A hook that wins on views and loses on installs lost.\n\n5. Noise rule: at small volumes, percentage swings are noise and multiples are findings. A hook with 2x the installs of the other on the same views is a result; a 20 percent difference is a coin toss. Keep both and run another week.\n\n6. Write down the winner, its installs and views, and the loser's, in one line, dated. The next test starts from the winner.\n\nReturn: a table (variant, hook text, ct code, full link, post dates), and the one-line result template to fill after the week.","steps":["Build the campaign links before you shoot. The ct code goes in the filename of the variant so the edit and the link never get swapped.","Post variants on different days at the same hour; repeat so each has 2-3 posts.","After 7 days, read installs per campaign, not views. Write one dated line with the numbers.","If one variant has a multiple of the other's installs, it won. If the gap is a percentage, run another week."],"example":"App: a photo app for sellers. Platform: TikTok, account @cleanlisting.\n\n| Variant | Hook | ct | Link | Post dates |\n|---|---|---|---|---|\n| A | Listing photo. Two taps. On the phone. | tt-cleanlisting-hookA | https://apps.apple.com/app/apple-store/id{APP_ID}?pt={PROVIDER_ID}&ct=tt-cleanlisting-hookA&mt=8 | Mon, Thu |\n| B | Stop editing product photos on a laptop. | tt-cleanlisting-hookB | ...&ct=tt-cleanlisting-hookB&mt=8 | Tue, Fri |\n| C | It's 11 pm and you have forty photos to list. | tt-cleanlisting-hookC | ...&ct=tt-cleanlisting-hookC&mt=8 | Wed, Sat |\n\nResult line template: '{date}: hookA {installs}/{views}, hookB {installs}/{views}, hookC {installs}/{views}. Winner: {letter} by {multiple}x on installs. Next: {what changes}.'\n\nExample filled, with made-up numbers for the shape only: '2026-11-08: hookA 14/9,200, hookB 6/11,000, hookC 15/7,400. hookC and hookA within noise of each other, both over 2x hookB on installs. Next: keep A and C, test a new B.'","tips":["Views tell you the hook worked on strangers. Installs tell you it worked on the right strangers. The creator-growth skill's trigger for paying creators needs both: a view threshold you set (it suggests 100k as an example) and a campaign link that shows installs.","Do not kill a hook over a 20 percent week. The rule in the skill is that at small volumes only multiples count.","In Claude Code, `/creator-growth` writes the measurement setup into docs/marketing.md with one link per platform and account; this entry is the per-hook version of that."],"tags":["hook","ab-test","campaign-link","measurement","installs","app-store","growth"],"difficulty":"intermediate","time":"1 week","skill":"creator-growth","verified":false,"created":"2026-11-01","related":["generate-20-hooks-ranked-by-rubric","visual-hook-first-frame-rules"],"url":"https://superduperai.co/library/hook-ab-test-campaign-links/","markdown":"https://superduperai.co/library/hook-ab-test-campaign-links.md"},{"slug":"hook-archetype-bold-claim","title":"Bold claim hook: say the thing you can prove in the next 20 seconds","description":"Template and rules for the claim hook: one declarative sentence that the viewer expects you to fail to back up, plus the rule that the proof must be in the video, not in the caption.","category":"hooks","platforms":["tiktok","reels","shorts","youtube","linkedin"],"works_with":["claude","chatgpt","claude-code","any-llm"],"prompt":"Write 5 bold-claim hooks for a short video about {topic}. A claim hook works because the viewer stays to see you fail; it fails when the claim is an opinion or a superlative. Every claim must be checkable on camera within 20 seconds.\n\nTemplates to fill:\n- '{Thing} takes {small number} {unit}. I'll show you.'\n- 'You do not need {expensive thing} to {outcome}.'\n- '{Common practice} is making your {result} worse.'\n- 'I {did specific thing} with {constraint}. Here is the result.'\n- 'Everything you need for {outcome} is already {in your pocket / in your kitchen / on your phone}.'\n\nRules: max 12 words, present tense, a number where there is one, no 'best', 'ultimate', 'secret', 'hack'. For each hook write the PROOF SHOT: what is on screen at 20 s that makes the claim true. If the proof shot is a caption or a testimonial, cut the hook.\n\nReturn: 5 hooks with their proof shot, ranked by how much the viewer doubts the claim.","example":"Topic: a 10-minute-a-day language habit.\n\n1. 'Ten minutes a day. Thirty days. I ordered dinner in Lisbon.' Proof shot: the clip of the order, waiter answering in Portuguese.\n2. 'You do not need an hour a day to learn a language.' Proof shot: the app's calendar, 30 ticks of 10 minutes, next to a notebook page from day 30.\n3. 'Studying at night is why you forget it by morning.' Proof shot: two evening test scores on sticky notes, a midnight day and a morning day.\n4. 'Two hundred words is enough to eat anywhere.' Proof shot: the 200-word list on one page, held to camera.\n5. 'Everything you need to start is already on your phone.' Proof shot: the home screen, the app, the timer set to 10:00.","tips":["Numbers make a claim checkable: 'ten minutes' can be caught in a lie, 'quickly' cannot, so 'ten minutes' is believed.","A claim you cannot prove on camera belongs in a storytime, not a hook."],"tags":["hook","bold-claim","archetype","opener","proof","convert","tiktok"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["hook-archetype-result-first","generate-20-hooks-ranked-by-rubric"],"url":"https://superduperai.co/library/hook-archetype-bold-claim/","markdown":"https://superduperai.co/library/hook-archetype-bold-claim.md"},{"slug":"hook-archetype-contrarian","title":"Contrarian hook: disagree with the standard advice, then earn it in 20 seconds","description":"Template for the hook that reverses what the audience has been told, with the two rules that separate it from rage bait: quote the standard advice fairly, and name the case where it still holds.","category":"hooks","platforms":["tiktok","reels","shorts","youtube","linkedin"],"works_with":["claude","chatgpt","claude-code","any-llm"],"prompt":"Write 5 contrarian hooks for a short video about {topic}. The contrarian hook works because the viewer has heard the standard advice and now has to find out why it is wrong; it becomes rage bait when the standard advice is misquoted or when the reversal has no limit. Each hook must quote the standard advice as its followers would say it, and the video must name the case where the standard advice is still right.\n\nTemplates to fill:\n- '{Standard advice} is wrong for {this audience}.'\n- 'Everyone says {standard advice}. I did the opposite for {time}.'\n- 'The advice to {standard advice} is costing you {specific thing}.'\n- 'You do not need {thing everyone says you need}.'\n- '{Standard advice}? Only if {condition}.'\n\nRules: max 12 words, the standard advice is real and common (write who says it under the hook), the video's reason is something I can show, and the CONCESSION (when the old advice holds) is written under each hook. No hooks against safety advice.\n\nReturn: 5 hooks, each with WHO SAYS THE STANDARD ADVICE, MY REASON (one line, showable), and CONCESSION, ranked by how widely the standard advice is held.","example":"Topic: learning a language as an adult.\n\n1. 'An hour a day is the wrong target for beginners.' Who says it: most course outlines. Reason: a 10-minute daily session was kept for 30 days, an hour was dropped by day 4 (my own calendar). Concession: an hour works once the habit exists.\n2. 'Everyone says start with grammar. I started with the menu.' Who: school textbooks. Reason: 200 food words got me through a dinner in week 3. Concession: grammar is needed to go past ordering.\n3. 'You do not need to speak to natives in month one.' Who: immersion advice. Reason: recorded voice notes to myself, compared day 10 and day 30. Concession: from month two, a real conversation a week.\n4. 'Finishing the app's course is the wrong goal.' Who: the app's own streak screen. Reason: switching units when bored gave the biggest score jump. Concession: finishing matters for an exam.\n5. 'Studying at night? Only if you test yourself in the morning.' Who: anyone with a day job. Reason: the midnight day scored lowest on the evening test. Concession: night works when morning is impossible.","tips":["Quote the standard advice fairly. A reply to a straw man gets stitched by someone who knows better.","The concession is the credibility. Write it before the hook; if you cannot find one, you are not contrarian, you are wrong or the advice was never standard."],"tags":["hook","contrarian","archetype","opener","opinion","trust","linkedin"],"difficulty":"intermediate","time":"5 min","verified":false,"created":"2026-11-01","related":["myth-vs-fact-format","stitch-this-opinion-format","hook-archetype-stop-doing-x"],"url":"https://superduperai.co/library/hook-archetype-contrarian/","markdown":"https://superduperai.co/library/hook-archetype-contrarian.md"},{"slug":"hook-archetype-curiosity-gap","title":"Curiosity-gap hook: withhold one fact, promise it by a stated second","description":"Template for the hook that opens a gap and names when it closes, with the rule that keeps it from being clickbait: the withheld fact is real, single, and delivered where you said it would be.","category":"hooks","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude","chatgpt","claude-code","any-llm"],"prompt":"Write 5 curiosity-gap hooks for a short video about {topic}. The gap hook works because the viewer is told that one specific thing is missing and roughly when they will get it; it turns into clickbait when the missing thing is vague or never arrives. Each hook withholds exactly ONE fact and the video delivers it by the second you name.\n\nTemplates to fill:\n- 'The {thing} that fixed {problem} was not {the expected thing}.'\n- 'I changed one setting and {measurable result}. It is at the end.'\n- 'Nobody told me this about {topic} until {event}.'\n- 'There is a reason {surprising observation}, and it is not {the obvious reason}.'\n- 'Watch the {object} at {second}.'\n\nRules: max 12 words, the withheld fact must be nameable in one sentence (write it under the hook as PAYOFF), the payoff lands before 60 percent of the video's length. No 'you won't believe', no 'wait for it' on its own.\n\nReturn: 5 hooks, each with PAYOFF (the fact) and WHEN (the second it is delivered), ranked by how far the payoff is from the obvious guess.","example":"Topic: sourdough that finally rose.\n\n1. 'The loaf that fixed six months of bricks was the one I forgot about.' PAYOFF: a 12-hour cold proof instead of 2 hours. WHEN: 40 s of 60.\n2. 'I changed one thing and the crumb opened. It is at the end.' PAYOFF: proof overnight in the fridge. WHEN: 48 s of 60.\n3. 'Nobody told me this about starters until loaf number thirty.' PAYOFF: the starter was never the problem, the proof time was. WHEN: 20 s of 45.\n4. 'There is a reason your loaf is sour and flat, and it is not the flour.' PAYOFF: over-proofed in a warm kitchen. WHEN: 15 s of 30.\n5. 'Watch the oven door at thirty seconds.' PAYOFF: the forgotten loaf rising with an ear. WHEN: 30 s.","tips":["Write the payoff under the hook before you write anything else. If it is not a single sentence, the hook is a tease.","Naming the second ('at the end', 'at thirty seconds') is what keeps a gap hook honest, and it also tells the viewer the video is short."],"tags":["hook","curiosity-gap","archetype","opener","retention","reach","tiktok"],"difficulty":"intermediate","time":"5 min","verified":false,"created":"2026-11-01","related":["storytime-with-a-twist-format","rehook-at-three-seconds-and-midpoint"],"url":"https://superduperai.co/library/hook-archetype-curiosity-gap/","markdown":"https://superduperai.co/library/hook-archetype-curiosity-gap.md"},{"slug":"hook-archetype-number-countdown","title":"Number hook: a count the viewer can track, and the one item that justifies it","description":"Template for the hook built on a number (3 mistakes, 5 tools, 7 days), with the rule that the number must be small enough to finish and the last item must be named as the reason to stay.","category":"hooks","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude","chatgpt","claude-code","any-llm"],"prompt":"Write 5 number hooks for a short video about {topic}. A number hook works because it tells the viewer how long the video is in their head and promises a structure; it fails when the number is too big to finish or every item is the same weight. Use numbers from 3 to 7 for a list and any real measurement for a result.\n\nTemplates to fill:\n- '{N} {things} for {outcome}. Number {N} is the one nobody does.'\n- '{N} {units} of {action}, one result.'\n- 'I tested {N} {things}. {Small number} worked.'\n- '{N} seconds, {N} taps, done.'\n- 'Day {N}. {One-line state}.'\n\nRules: max 12 words, the number is spoken and on screen as a digit, every list number is 3 to 7, every measured number is one I actually measured. For list hooks name which item is the reason to stay (the last one) in the hook itself. For each hook, write the ON-SCREEN text, which is just the number and one word.\n\nReturn: 5 hooks with their on-screen text, ranked by how clearly the number tells the viewer the length of the video.","example":"Topic: kitchen tools and habits for weeknight cooking.\n\n1. 'Five kitchen tools under twenty dollars. Number one is not a gadget.' On-screen: '5 TOOLS'.\n2. 'Three product-photo mistakes. The third is why your listing looks cheap.' On-screen: '3 MISTAKES'.\n3. 'I tested four ways to cook rice. One worked every time.' On-screen: '4 WAYS'.\n4. 'Four minutes, one pan, a smash burger.' On-screen: '4 MIN'.\n5. 'Day seven. Thirteen out of twenty words, up from six.' On-screen: 'DAY 7'.","tips":["Keep the number on screen for the whole video as a countdown or a day stamp. A number that appears once is a title; a number that stays is a progress bar.","Seven is the ceiling for a list in under 60 seconds. Past that, the viewer stops tracking and the number stops working."],"tags":["hook","number","countdown","archetype","listicle","opener","shorts"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["listicle-countdown-format","i-tried-it-for-seven-days-format"],"url":"https://superduperai.co/library/hook-archetype-number-countdown/","markdown":"https://superduperai.co/library/hook-archetype-number-countdown.md"},{"slug":"hook-archetype-pain-point","title":"Pain-point hook: name the exact moment, not the general problem","description":"Template for the hook that opens on the viewer's own bad moment, with the specificity test (a place, a time, an object) that turns 'struggling with X' into a line the right viewer cannot scroll past.","category":"hooks","platforms":["tiktok","reels","shorts","linkedin"],"works_with":["claude","chatgpt","claude-code","any-llm"],"prompt":"Write 5 pain-point hooks for a short video about {topic} aimed at {audience}. The pain-point hook works when the viewer thinks 'that is me, last Tuesday'; it fails when the pain is generic. Each hook must contain at least two of: a place, a time of day, a physical object, a number.\n\nTemplates to fill:\n- 'It is {time}, you have {number} {things}, and {the thing that goes wrong}.'\n- 'You {did the work}. Then {the specific loss}.'\n- 'The {object} is {state}, again.'\n- '{Number} {units} of {thing}, and you cannot find {the one you need}.'\n- 'You know the moment when {specific moment}?'\n\nRules: max 14 words, second person, present tense, no 'struggling', 'frustrated', 'overwhelmed', 'tired of'. The pain is shown as a scene, not labelled as a feeling. For each hook, say which shot opens on it (the object or the screen, never a face reacting).\n\nReturn: 5 hooks with their opening shot, ranked by how specific the scene is.","example":"Topic: a notes app that turns whiteboard photos into text. Audience: students.\n\n1. 'It is 11 pm, you have fourteen whiteboard photos, and none of them are searchable.' Shot: the camera roll, a grid of whiteboards.\n2. 'You photographed every lecture. Then the exam asked about week six.' Shot: thumb scrolling fast through the grid.\n3. 'Half the board is glare, again.' Shot: one photo, a white stripe across the equations.\n4. 'Forty photos of handwriting, and the one proof you need is in none of them.' Shot: zooming into blurry chalk.\n5. 'You know the moment when the lecturer wipes the board before you got the photo?' Shot: a hand with an eraser, mid-wipe.","tips":["Open on the object, not on your face. The viewer recognises their own camera roll faster than they recognise your expression.","If the line would work for any product in the category, it is not specific enough. Add the number or the time of day."],"tags":["hook","pain-point","archetype","opener","convert","tiktok","reels"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["founder-explainer-format","generate-20-hooks-ranked-by-rubric"],"url":"https://superduperai.co/library/hook-archetype-pain-point/","markdown":"https://superduperai.co/library/hook-archetype-pain-point.md"},{"slug":"hook-archetype-question","title":"Question hook: the opener the viewer answers in their head before you do","description":"Template and rules for the question hook, with the test that separates a question that holds (the viewer has an answer and wants it checked) from one that is skipped (nobody cares either way).","category":"hooks","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude","chatgpt","claude-code","any-llm"],"prompt":"Write 5 question hooks for a short video about {topic} aimed at {audience}. A question hook works only when the viewer already has a guess and wants to see if they are right, so each question must pass three tests: (1) the viewer can answer it in their head in one second, (2) the answer is not obvious, (3) the video will answer it within 15 seconds.\n\nTemplates to fill:\n- 'Why does {thing the audience does} {unexpected result}?'\n- 'What happens if you {action} for {time period}?'\n- 'Do you {habit}? {Consequence in 3 words}.'\n- 'Which of these {N} {things} is {adjective}?'\n- 'Have you ever {specific moment}? Here is why.'\n\nRules: max 12 words, no 'ever wondered', no 'what if I told you'. Spoken and on screen as the same words. For each hook add the one-line answer the video gives at 15 s; if you cannot write the answer, the hook is a tease and gets cut.\n\nReturn: 5 hooks, each with its 15-second answer, ranked by how strongly the audience will have a guess.","example":"Topic: photographing handmade products with a phone. Audience: people selling on marketplaces.\n\n1. 'Why do your product photos look yellow indoors?' Answer at 15 s: the kitchen bulb is warm; shoot by a window, lamp off.\n2. 'Which of these two mugs was shot on a phone?' Answer: both; the difference is the light, not the camera.\n3. 'What happens if you zoom instead of stepping closer?' Answer: the edge goes soft because the phone throws away pixels.\n4. 'Do you shoot on the kitchen counter? That is why nobody clicks.' Answer: the clutter is read before the product; cut it out.\n5. 'Have you ever re-shot a whole shop in one weekend?' Answer: back up the originals somewhere that is not the phone.","tips":["Say the question and put it on screen in the same words; a viewer with sound off reads it, a viewer with sound on hears it, and both answer it.","Rank by how sure the viewer is of their own answer. The hook with the most confident wrong guesses holds longest."],"tags":["hook","question","archetype","opener","reach","tiktok","shorts"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["generate-20-hooks-ranked-by-rubric","hook-rewrite-five-stronger-versions"],"url":"https://superduperai.co/library/hook-archetype-question/","markdown":"https://superduperai.co/library/hook-archetype-question.md"},{"slug":"hook-archetype-result-first","title":"Result-first hook: show the finished thing in frame 1, say how long it took","description":"Template for the hook that opens on the outcome, the one that works with sound off and for products whose output is the content; the first frame is the result, not you holding it.","category":"hooks","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude","chatgpt","claude-code","any-llm"],"prompt":"Write 5 result-first hooks for a short video about {topic}, where the result is {the output: a photo, a dish, a loaf, a typed note, a film}. The result-first hook works because the first frame is the proof and the line only adds the cost (time, taps, money); it fails when the result is not visibly good at phone size, or when the first frame is a face instead of the thing.\n\nTemplates to fill:\n- '{Result}. {Time it took}. {Where: on a phone / in one pan / at the kitchen table}.'\n- 'This took {N} {taps / minutes / dollars}.'\n- 'From {the input} to this, {time}.'\n- '{Result}, and I did not {the expected effort}.'\n- 'Day {N} result. Day 1 is in the corner.'\n\nRules: max 10 words, the first frame is the result full screen (write FRAME 1 under each hook), the number in the line is one I measured, the person appears only after 2 s. For each hook say whether it reads with sound off (it must: the result and a digit on screen).\n\nReturn: 5 hooks with FRAME 1 and the on-screen digit, ranked by how good the result looks at thumbnail size.","example":"Topic: a photo app that cuts a product out onto white.\n\n1. 'Listing photo. Two taps. On the phone, before the coffee got cold.' FRAME 1: the finished mug on white, full screen. On-screen: '2 TAPS'.\n2. 'This took eleven seconds.' FRAME 1: three finished listing photos in a row. On-screen: '0:11'.\n3. 'From the kitchen counter to this, two taps.' FRAME 1: the finished photo, with the cluttered original as a small inset top-left. On-screen: '2 TAPS'.\n4. 'A white-background shot, and I did not open a laptop.' FRAME 1: the finished photo on the phone screen, phone on the counter. On-screen: 'NO LAPTOP'.\n5. 'Day seven shop. Day one is in the corner.' FRAME 1: the shop page with 20 clean photos, a day-1 screenshot inset. On-screen: 'DAY 7'.","tips":["The creator-growth rule for apps: the product's own output is the hook and 'made on a phone' is the surprise. Frame 1 is the output.","Check frame 1 at thumbnail size before you shoot the rest. If the result is not obviously good at 150 pixels wide, pick a different result."],"tags":["hook","result-first","archetype","opener","sound-off","product","convert"],"difficulty":"beginner","time":"5 min","skill":"creator-growth","verified":false,"created":"2026-11-01","related":["before-after-reveal-format","visual-hook-first-frame-rules"],"url":"https://superduperai.co/library/hook-archetype-result-first/","markdown":"https://superduperai.co/library/hook-archetype-result-first.md"},{"slug":"hook-archetype-stop-doing-x","title":"'Stop doing X' hook: the correction that must come with the replacement","description":"Template for the interrupt hook that names a habit the viewer has and tells them to stop; the rule that makes it work is that the replacement is in the same sentence or the next one.","category":"hooks","platforms":["tiktok","reels","shorts"],"works_with":["claude","chatgpt","claude-code","any-llm"],"prompt":"Write 5 'stop doing X' hooks for a short video about {topic} aimed at {audience}. This hook works because it interrupts a habit the viewer has right now; it fails when the habit is not one they actually have, or when the replacement is missing. Each hook names a concrete habit and the video shows the replacement within 10 seconds.\n\nTemplates to fill:\n- 'Stop {habit}. {Replacement in 4 words}.'\n- 'If you {habit}, stop. Do {replacement} instead.'\n- 'Stop {habit} before {consequence the viewer can see}.'\n- 'Put the {object} down.'\n- 'Delete {thing}. Here is what to do instead.'\n\nRules: max 10 words, imperative, the habit must be something the audience does weekly, the replacement must be as cheap or cheaper than the habit. No habits that are matters of taste. For each hook, write the REPLACEMENT SHOT: what the viewer sees at 10 s.\n\nReturn: 5 hooks with their replacement shot, ranked by how common the habit is in this audience.","example":"Topic: weeknight cooking. Audience: people cooking for a family on weekdays.\n\n1. 'Stop washing rice in the pot. Use a sieve.' Replacement shot: rice in a sieve under the tap, water running clear in 10 seconds.\n2. 'Put the garlic press down.' Replacement shot: the side of a knife crushing a clove, then a rough chop.\n3. 'Stop salting the water last. Salt it first, taste it.' Replacement shot: a spoon tasting pasta water, a nod.\n4. 'If you preheat the pan empty, stop. Oil first, then heat.' Replacement shot: oil shimmering, onion going in without smoke.\n5. 'Delete the meal-plan spreadsheet. One chicken, three dinners.' Replacement shot: a whole chicken being broken down into three containers.","tips":["The replacement must be in frame by 10 s. A 'stop' with no 'instead' is a scold, and scolds get argued with in the comments instead of saved.","Pick habits you can show the viewer doing wrong in one shot. If it needs explaining, it is not a habit, it is a theory."],"tags":["hook","stop-doing","archetype","opener","interrupt","educational","tiktok"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["three-mistakes-format","hook-archetype-contrarian"],"url":"https://superduperai.co/library/hook-archetype-stop-doing-x/","markdown":"https://superduperai.co/library/hook-archetype-stop-doing-x.md"},{"slug":"hook-rewrite-five-stronger-versions","title":"Hook rewrite: a boring opener in, 5 stronger versions out, each with the reason","description":"A prompt that diagnoses why an opener is weak (generic, unprovable, needs sound, buried number) and rewrites it five ways, each labelled with the archetype and the fault it fixed.","category":"hooks","platforms":["tiktok","reels","shorts","youtube","linkedin"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Here is the opening line of a short video about {topic}: \"{boring opener}\". The video then shows {what the video actually shows in the first 20 s}.\n\nFirst, diagnose the opener in one line each against four faults: GENERIC (could open a video on any topic), UNPROVABLE (an opinion or a feeling instead of a thing the video shows), SOUND-DEPENDENT (does not work as text on a still), BURIED (the strongest fact is in the second sentence or not in the line at all). Name which faults apply.\n\nThen write 5 stronger versions. Each one: max 12 words, present tense, uses a different archetype (pick from question, bold claim, pain point, curiosity gap, stop doing X, number, contrarian, result-first), keeps every fact from the original, adds no fact the video does not show. Under each, one line: the archetype, and which fault it fixed.\n\nBanned in the rewrites: 'ever wondered', 'what if I told you', 'you won't believe', 'secret', 'hack', 'ultimate', 'game-changer', 'let me show you', 'in this video'.\n\nReturn: the diagnosis, then the 5 rewrites with their notes, then the one you would shoot and the frame 1 that goes with it.","example":"Opener: \"In this video I'm going to show you how I edit my product photos with this app and why I love it.\" Video shows: a mug on a cluttered counter becoming a mug on white in two taps, then three more photos done the same way in under a minute.\n\nDiagnosis: GENERIC (yes, any app), UNPROVABLE ('why I love it'), SOUND-DEPENDENT (yes, nothing on the still), BURIED (two taps and under a minute are not in the line).\n\n1. 'Listing photo. Two taps. On the phone.' Result-first; fixes BURIED and SOUND-DEPENDENT.\n2. 'Stop editing product photos on a laptop.' Stop doing X; fixes GENERIC.\n3. 'Four listing photos in under a minute, from the kitchen counter.' Number; fixes BURIED and UNPROVABLE.\n4. 'Why do your product photos look like the kitchen?' Question; fixes GENERIC.\n5. 'It's 11 pm, forty photos to list, and the laptop is at work.' Pain point; fixes GENERIC and SOUND-DEPENDENT.\n\nShoot: 1. Frame 1: the finished mug on white, full screen, '2 TAPS' in the upper third, thumb entering at 0.4 s.","tips":["Keep every fact and add none. A rewrite that adds a claim the video does not show is a stronger hook for a different video.","Run the five through the rubric entry if you want a score; run the two best through the A/B entry if you want the truth."],"tags":["hook","rewrite","opener","editing","archetype","claude","chatgpt"],"difficulty":"beginner","time":"5 min","skill":"humanize","verified":false,"created":"2026-11-01","related":["generate-20-hooks-ranked-by-rubric","hook-ab-test-campaign-links"],"url":"https://superduperai.co/library/hook-rewrite-five-stronger-versions/","markdown":"https://superduperai.co/library/hook-rewrite-five-stronger-versions.md"},{"slug":"hook-text-on-screen-plan-prompt","title":"Hook text on screen: a plan for the first three seconds, word by word","description":"A prompt that plans what text appears in the first 3 seconds of a vertical video: the words, the moment each appears, the hold, what the picture does under it. Written so the hook works muted.","category":"captions","platforms":["tiktok","reels","shorts"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Plan the on-screen text for the first 3 seconds of a vertical video about {topic}. The video autoplays muted; the text must carry the hook alone.\n\nOutput a table: Time in (s) | Text (exact words) | Hold (s) | Where in frame | What the picture does under it | Why the viewer stays.\n\nRules:\n- Max 2 text events in 3 seconds. Max 5 words each.\n- The first text lands at 0.0-0.3 s, not after a logo.\n- Hold = words / 2.5 seconds, minimum 1.2 s (a parameter).\n- The text is one of: a number the viewer can check, a contradiction, a question with a one-word answer, a 'before' label over a 'before' picture.\n- Frame position: middle third, or upper third if the subject's face is in the middle; never the bottom 20 percent.\n- The picture under the text moves: motion toward the camera, a hand entering, a reveal; never a static frame with text on it.\n- The spoken hook, if any, must not be the same sentence as the text.\n\nThen write 3 alternative text pairs for A/B, each with a different hook type.\n\nContext:\n{what the video shows in the first 3 seconds, and the hook line if spoken}","steps":["Describe the actual first 3 seconds of footage you have; the plan is for that picture, not an imagined one.","Mock the two text events on a frame grab and look at it on a phone at arm's length before editing.","Post the A/B pairs as separate videos a day apart; note which hook type held viewers past 3 seconds for this topic."],"tips":["Five words at 2.5 words per second is 2 seconds. Two events fill 3 seconds exactly; a third is unreadable.","The cold open rule from real footage applies: the picture under the hook is chosen by eye for fire, water, neon, motion toward the camera, a face with an expression."],"tags":["hook","on-screen-text","first-3-seconds","vertical","retention","agent"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["reading-speed-on-screen-text-parameters","cold-open-then-hook-contact-sheet"],"url":"https://superduperai.co/library/hook-text-on-screen-plan-prompt/","markdown":"https://superduperai.co/library/hook-text-on-screen-plan-prompt.md"},{"slug":"hooks-for-product-with-no-visuals","title":"Hooks for a product with nothing to show: text and voice carry the first 3 s","description":"For an API, a CLI, a service, a habit, anything without a screen worth filming: five hook shapes built on a typed line, a number and a voice, and what goes on screen instead of the product.","category":"hooks","platforms":["tiktok","reels","shorts","linkedin","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write 5 hooks for a short video about {product or idea}, which has no visual to show (no interface, no physical object, or an interface that is a wall of text). The hook has to be carried by on-screen text and a voice, so every hook is written twice: the TEXT line (max 7 words, on screen from frame 1) and the VOICE line (max 14 words, said over it). They are not the same words; the text is the claim, the voice is the detail.\n\nWhat is on screen instead of the product, pick one per hook and name it: a face talking (closest to the phone, eye level); a terminal or a plain text editor with the line being typed live; a number counting on a plain background; an object that stands for the problem (a stopwatch, a stack of paper, a receipt); a hand writing the text line on paper.\n\nShapes to fill:\n- Number-first: TEXT '{number} {unit}', VOICE the sentence that explains the number.\n- Pain moment: TEXT the moment in 5 words, VOICE the second person scene.\n- Typed claim: TEXT typed live, letter by letter, VOICE silent until the last word, then one line.\n- Before/after in words: TEXT 'before: {state}' then 'after: {state}' as two cards, VOICE the time between them.\n- Question: TEXT the question, VOICE the answer's first half only.\n\nReturn: 5 hooks, each with TEXT, VOICE, WHAT IS ON SCREEN, and the second at which the first concrete detail of the product is spoken (it must be before 8 s).","example":"Product: a command-line tool that renames and sorts a folder of phone videos by shooting date.\n\n1. Number-first. TEXT: '1,400 clips, 0 names'. VOICE: 'Every clip on my phone is called IMG and a number. Fourteen hundred of them.' On screen: a plain Finder list scrolling, all IMG_. Product detail at 6 s: 'one command reads the shooting date and renames them all.'\n2. Pain moment. TEXT: 'which one is the wedding'. VOICE: 'You know the one. Four hundred clips from one weekend, and the toast is in there somewhere.' On screen: a hand scrolling a grid of identical thumbnails. Detail at 7 s.\n3. Typed claim. TEXT typed live: 'sort 1,400 videos: one line'. VOICE at the last word: 'This is the line.' On screen: a terminal, the command appears, Enter. Detail at 3 s.\n4. Before/after in words. TEXT card 1: 'before: IMG_4471.MOV'. Card 2: 'after: 2026-06-14 wedding 031.mov'. VOICE: 'Eleven seconds between those two.' On screen: the two cards on black. Detail at 5 s.\n5. Question. TEXT: 'where did June go?'. VOICE: 'Every June clip is in one folder now, and I did not open an editor.' On screen: a face, then a cut to a folder called 2026-06. Detail at 4 s.","tips":["Typing the text live on screen is the cheapest motion there is, and motion in frame 1 is what stops the frame reading as a photo.","The first concrete detail of the product is spoken by 8 s or the video is about a feeling. A detail is a number, a filename, a command, a before and after."],"tags":["hook","no-visuals","text-on-screen","voice","developer-tools","linkedin","shorts"],"difficulty":"intermediate","time":"10 min","verified":false,"created":"2026-11-01","related":["visual-hook-first-frame-rules","silent-text-on-screen-story-format"],"url":"https://superduperai.co/library/hooks-for-product-with-no-visuals/","markdown":"https://superduperai.co/library/hooks-for-product-with-no-visuals.md"},{"slug":"i-tried-it-for-seven-days-format","title":"'I tried it for 7 days': a diary cut with one metric logged every day","description":"The experiment-diary format that stays honest because one number is measured daily and shown on screen; the prompt plans the daily clip, the tally and a verdict that includes what did not work.","category":"formats","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm","life2film"],"prompt":"Write a '{N} days of {habit or tool}' diary script. The format works because the viewer is promised a verdict and gets a daily number along the way; a diary with no number is a vlog.\n\nBefore writing, choose ONE metric I can measure every day in under a minute (minutes, count, grams, a score out of 10). Every daily clip shows the metric on screen.\n\nStructure (60 s, 9:16, cut from clips I film each day):\n- 0-4 s HOOK: 'I did {habit} every day for {N} days. Day {N} surprised me.' On-screen: 'DAY 1 of {N}' and the metric at zero or baseline.\n- 4-10 s WHY: the reason in two lines, present tense, and the rule I set myself.\n- 10-48 s DAYS: one clip per day, 5-6 s each, shot in a different place or light where possible. Each has: a day stamp top-left, the metric for that day under it, and one spoken line (max 12 words) that says one thing that happened, not how I feel. Days 3 and 5 should contain a dip or a problem; a straight line is not believed.\n- 48-56 s VERDICT: the metric on day 1 next to day {N}, on screen. Spoken: what changed, what did not, in two sentences.\n- 56-60 s CLOSE: 'Would you try it for a week?' If a product was the tool, it was in every clip; no download ask, the comments will ask.\n\nWord budget: 140-150 words at 165 wpm. On-screen: day stamp and metric on every clip, the two-number comparison at the verdict, nothing else.\n\nReturn: the metric and how it is measured (one line), then a table (day, time range, where I film, spoken line, on-screen), then the verdict lines.\n\nHabit or tool: {habit or tool}\nN: {7}\nWhat I expect: {honest guess}","example":"Habit: 10 minutes of a language app every morning before the phone opens anything else. N: 7. Metric: words I can recall on a 20-word evening test.\n\nMetric: a 20-word self-test each evening, score out of 20, written on a sticky note held to camera.\n\n| Day | Time | Where | Spoken line | On-screen |\n|---|---|---|---|---|\n| 1 | 10-16 s | Kitchen, 7 a.m. | Day one. Ten minutes, then coffee. Evening test: six. | DAY 1 · 6/20 |\n| 2 | 16-22 s | Bus | Day two, on the bus. Eight. | DAY 2 · 8/20 |\n| 3 | 22-27 s | Bed, lights off | Day three, I skipped the morning and did it at midnight. Five. | DAY 3 · 5/20 |\n| 4 | 27-33 s | Park bench | Back to mornings. Nine. | DAY 4 · 9/20 |\n| 5 | 33-38 s | Office desk | Day five, I'm bored of the same unit. Nine again. | DAY 5 · 9/20 |\n| 6 | 38-43 s | Kitchen | Switched to a new unit, it hurt. Eleven. | DAY 6 · 11/20 |\n| 7 | 43-48 s | Café | Day seven. Thirteen out of twenty. | DAY 7 · 13/20 |\n\nVerdict: 'Six to thirteen in a week. The day I did it at midnight was the worst day, and the day I changed units was the best, so the time of day mattered more than the app did. Would you try it for a week?' On-screen: 6/20 → 13/20.","tips":["Film every day even on the day you fail. The failed day is the one that makes the verdict believable.","Life2Film can pull the best 5 seconds from each day's clip by frame score, which is the whole edit for this format; you only write the lines.","Keep N at 7. A 30-day version is a series of four 7-day videos, each with its own verdict."],"tags":["seven-days","experiment","diary","real-footage","trust","tiktok","youtube"],"difficulty":"intermediate","time":"7 days","verified":false,"created":"2026-11-01","related":["day-in-the-life-format-script"],"url":"https://superduperai.co/library/i-tried-it-for-seven-days-format/","markdown":"https://superduperai.co/library/i-tried-it-for-seven-days-format.md"},{"slug":"image-to-video-first-frame-method","title":"Image-to-video: generate the first frame, then animate it","description":"Make a still with an image model first, fix the composition there, and only then ask the video model to animate it. Cheaper iterations and the look you chose, not the one the video model guessed.","category":"generation","platforms":["any"],"works_with":["image-gen","veo","kling","runway","any-llm"],"prompt":"STEP 1 — the still (image model):\n{subject with concrete details}, {setting}, {shot size and angle}, {lens feel}, {light}, {style and palette}, {aspect ratio 9:16 or 16:9}, sharp focus on {subject}, no text, no watermark.\n\nSTEP 2 — the motion (video model, with the still as the first frame):\nAnimate this frame. {subject} {one small action}. Camera: {one move from the vocabulary, or static}. Keep the composition, colours and lighting of the reference frame. Natural motion speed. {ambient sound}. 5 seconds.","steps":["Generate 4-8 stills, pick one, fix it there (regenerate, inpaint, upscale). Stills cost cents and seconds; video costs dollars and minutes.","Upload the still as the first frame (Veo, Kling, Runway and Luma all accept one). Describe only the motion, not the picture: the picture is already decided.","If the model drifts away from the frame, shorten the clip and reduce the action to one beat."],"example":"Still: a ceramic mug on a wooden desk, steam rising, morning light from a window on the left, 85mm look, shallow depth of field, warm film palette, 9:16, no text.\nMotion: Animate this frame. Steam rises and curls slowly; a hand enters from the right and lifts the mug. Camera static. Keep the composition and lighting of the reference frame. Soft room tone. 5 seconds.","tips":["For product shots and talking-object formats this is the only workflow that gives repeatable results across a series.","Keep a folder of your chosen stills: they are your style guide for the next clips (see consistency entries)."],"tags":["image-to-video","first-frame","midjourney","flux","veo","kling","runway","workflow"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["character-consistency-reference-sheet","camera-movement-vocabulary"],"url":"https://superduperai.co/library/image-to-video-first-frame-method/","markdown":"https://superduperai.co/library/image-to-video-first-frame-method.md"},{"slug":"in-app-growth-levers-credit-vertical-preset","title":"In-app growth levers: brand credit, 9:16 output, one-tap preset","description":"Four product changes that turn every export into UGC and make a creator's demo work in one tap. An audit prompt for the codebase that marks each lever done or next, plus the disclosure rule.","category":"growth","platforms":["tiktok","reels","shorts"],"works_with":["claude-code","manual"],"prompt":"Audit {app name} for the in-app growth levers. Read the export, share and onboarding code and mark each lever DONE, PARTIAL or NEXT with the file that proves it.\n\n1. BRAND CREDIT on free exports: a small 'Shot on {app name}' on every free-tier export, removed by the paid tier. Check: is it on every export path (save, share sheet, direct post)? Is the removal tied to the paid entitlement? Is it disclosed on the pricing or FAQ page in plain words? A credit nobody was told about reads as a bait-and-switch in reviews.\n2. VERTICAL OUTPUT: the default export fits a vertical feed with no editing: 9:16 (or 3:4), not 16:9. Check the default, not only the option.\n3. ONE-TAP FIRST SCREEN: presets with an Auto default instead of sliders. A creator filming a demo needs the result in one tap. Count the taps from launch to a shareable result.\n4. CREDIT TRACKING: an event that records whether a saved or shared result carried the credit, so its effect on installs can be read later.\n\nOutput: a table (lever, status, file, what is missing), then the NEXT items ordered by effort, smallest first. For the brand credit, also draft the two sentences for the pricing page.","steps":["Run it in Claude Code at the repo root; it reads the export and paywall code and writes the table.","Ship the pricing-page sentences in the same release as the credit, never later.","After release, read the credit-tracking event next to installs per campaign in the weekly review."],"tips":["The credit is free UGC on every share, but only if the paid tier removes it and the pricing page says so. Both halves or neither.","Output that fits the feed without editing is what a creator tests first; an app that exports 16:9 loses the demo before the pitch."],"skill":"creator-growth","tags":["in-app","brand-credit","watermark","vertical","onboarding","creator-growth","product"],"difficulty":"intermediate","time":"30 min","verified":false,"created":"2026-11-01","related":["cta-in-comments-not-in-every-video","creator-budget-gate-payback-arithmetic"],"url":"https://superduperai.co/library/in-app-growth-levers-credit-vertical-preset/","markdown":"https://superduperai.co/library/in-app-growth-levers-credit-vertical-preset.md"},{"slug":"length-follows-the-material","title":"Length follows the material: cut stammers and repeats, not thoughts","description":"The decision rule for how long a film should be. A target length makes you stretch a thin day or chop a full one; the material decides, and the checklist says what may be removed.","category":"editing","platforms":["youtube","any"],"works_with":["claude-code","capcut","manual"],"prompt":"LENGTH, the decision checklist\n\n1. Do not set a target length before reading the day as text. Set it after: how many scenes are there, and how long are they whole?\n2. Allowed cuts: stammers, restarts, repeated sentences, filler at the ends of lines, dead air longer than {1.5} s where nothing happens, the second take of the same thing.\n3. Not allowed: a thought cut in the middle, a lead-in removed to make a line land faster, a reaction trimmed to save a second, a scene removed because the film is 'already long'.\n4. If the film is longer than you wanted: remove whole scenes, lowest stakes first, and keep the promise-payoff pairs. Never shave 10 percent off every scene.\n5. If it is shorter: it is shorter. Do not add a montage of leftovers, do not slow down the cutaways, do not repeat the cold open at the end.\n6. The test: does any line in the cut make less sense than it did raw? If yes, you cut a thought.","steps":["Read the day as one text file and count the scenes worth keeping whole. That count times their natural length is the first estimate; it is usually right.","Apply the allowed cuts only, render, watch on a phone. Then decide whether to drop whole scenes, never whether to tighten all of them.","If a platform needs a shorter version, cut a separate one from the finished film (a trailer); do not shorten the film."],"tips":["The urge to tighten comes from watching the raw footage ten times. A first viewer has seen it zero times and needs the lead-ins you are bored of.","A 36-minute film and a 90-second trailer from the same day are two files from one master. Each has the length its job needs."],"skill":"video-edit","tags":["pacing","length","editing","rules","footage","decisions"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["scenes-not-best-phrases","take-something-from-every-clip"],"url":"https://superduperai.co/library/length-follows-the-material/","markdown":"https://superduperai.co/library/length-follows-the-material.md"},{"slug":"listicle-countdown-format","title":"Countdown listicle: 5 items in 45 seconds, best one last, numbers on screen","description":"The ranked list format, with the rule that makes it hold: each item gets shorter as the count drops and number one gets the longest shot. The prompt returns script, text plan and the caption list.","category":"formats","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a countdown listicle script: top {N} {things} for {audience}. The format works because the number on screen tells the viewer how much is left and the rank promises the best is still coming. Count DOWN from {N} to 1.\n\nStructure ({N} = 5, 45 s, 9:16):\n- 0-3 s HOOK: '{N} {things} ranked, and number one is not what you think.' or a variant with a sharper claim you can back up. On-screen: '{N}' large.\n- 3-33 s ITEMS 5 to 2: 7 s each. Each item is: the number on screen for the whole item, one shot of the thing in use, one spoken line that says why it is on the list (max 14 words), and a 3-word on-screen label.\n- 33-42 s ITEM 1: 9 s, two shots, two lines. The reason it is first must be a reason the viewer can check.\n- 42-45 s CLOSE: 'What would you put at number one?' The comment is the CTA. No download ask in a listicle; if the product is on the list it is one item, shown like the others.\n\nWord budget: 110-125 words at 165 wpm. On-screen: the countdown number (bottom corner, constant per item), the item label, nothing else.\n\nReturn: the ranked list with a one-line reason each (so I can reorder), then a table (time, rank, spoken line, on-screen label, shot).\n\nThings: {things}\nAudience: {audience}\nCandidates: {your list, or leave blank}","example":"Things: kitchen tools under twenty dollars. Audience: someone cooking at home three nights a week.\n\nRanked: 5 bench scraper (moves everything, cleans the board), 4 digital scale (recipes stop failing), 3 instant-read thermometer (no more cutting into chicken), 2 microplane (garlic, parmesan, zest in seconds), 1 a sharp 8-inch knife, honed weekly (every other tool is slower without it).\n\n| Time | Rank | Spoken line | On-screen label | Shot |\n|---|---|---|---|---|\n| 0-3 s | | Five kitchen tools under twenty dollars, ranked. Number one is not a gadget. | 5 | Hand sweeps them across the counter |\n| 3-10 s | 5 | Bench scraper. Moves the onion, cleans the board, costs less than a coffee. | BENCH SCRAPER | Scraping diced onion into a pan |\n| 10-17 s | 4 | Digital scale. Recipes stop failing when a cup stops being a guess. | DIGITAL SCALE | Flour on the scale, 120 g |\n| 17-24 s | 3 | Thermometer. Chicken out at sixty-five, never cut open to check. | THERMOMETER | Probe in a thigh, reading |\n| 24-31 s | 2 | Microplane. Garlic, parmesan, lemon zest, all in ten seconds. | MICROPLANE | Zesting a lemon |\n| 31-33 s | 2 | And it is the one guests ask about. | | Bowl of zest |\n| 33-38 s | 1 | A sharp eight-inch knife. Not expensive, just sharp. | 8-INCH KNIFE | Slicing a tomato cleanly |\n| 38-42 s | 1 | Hone it once a week and every other tool on this list gets faster. | HONE WEEKLY | Knife on a steel |\n| 42-45 s | | What's your number one? | | Face |","tips":["The countdown number stays on screen for the whole item, not just at the cut. It is the progress bar.","If number one is your product, the list becomes an ad and gets treated like one. Put the product at 3 and let the comments find it."],"tags":["listicle","countdown","ranked","tiktok","shorts","reach","script"],"difficulty":"beginner","time":"15 min","verified":false,"created":"2026-11-01","related":["three-mistakes-format"],"url":"https://superduperai.co/library/listicle-countdown-format/","markdown":"https://superduperai.co/library/listicle-countdown-format.md"},{"slug":"live-music-one-continuous-audio-span","title":"Live music in frame: one continuous audio span, picture cuts on top","description":"When a band or a busker is in the shot, keep one unbroken stretch of that clip's audio under the whole scene and cut only the picture; cut the audio per shot and the beat restarts.","category":"music","platforms":["youtube","reels","tiktok","any"],"works_with":["ffmpeg","capcut","claude-code","manual"],"prompt":"Edit instruction for a live-music scene:\n- Pick the one clip with the cleanest, longest take of the music. Its audio from {span_start} to {span_end} seconds is the ONLY sound under the scene.\n- Lay the other angles as picture cuts on top of that span. Never cut the audio with the picture.\n- Give the music its own time: if this music is what the trip was for, 20-30 seconds of it, not one line of the MC.\n- The score has a hole here (silence), not a duck.\n- If a speaker is drowned by the band, raise the speaker from the vocals stem of that clip and sit it over the same continuous span.\n\nffmpeg, picture from the cut, sound from the span, video not re-encoded:\nffmpeg -i cut_video_only.mp4 -ss {span_start} -t {span_length} -i master_clip.mp4 -map 0:v -map 1:a -c:v copy -c:a aac -shortest scene.mp4","steps":["Export the picture cut of the scene without audio first (add -an to the render).","Trim the master clip's audio span and marry it to the picture with the command.","Check with ffprobe that the output duration equals the picture duration; a span shorter than the cut leaves silence at the tail."],"tips":["The beat restarting at every cut is the most common tell of an amateur concert edit.","`demucs -d mps --two-stems=vocals -o out clip.wav` gives the vocals stem for a speaker drowned by the band (the stem-split skill).","In Claude Code, `/video-edit` holds this rule: live music is one continuous span, a hole in the score, no ducking."],"skill":"video-edit","tags":["live-music","concert","audio-span","ffmpeg","editing-rule"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["score-hole-where-live-sound-plays","strip-other-peoples-music-demucs"],"url":"https://superduperai.co/library/live-music-one-continuous-audio-span/","markdown":"https://superduperai.co/library/live-music-one-continuous-audio-span.md"},{"slug":"loudness-normalize-minus-16-lufs-ffmpeg","title":"Level every chapter to -16 LUFS with ffmpeg loudnorm","description":"One ffmpeg line that brings a file to -16 LUFS integrated and -1.5 dBTP true peak without touching the video, the two-pass version for exact results, and the timestamp trap on upload.","category":"music","platforms":["youtube","any"],"works_with":["ffmpeg"],"prompt":"# one pass, good enough for most chapters\nffmpeg -i chapter.mp4 -af loudnorm=I=-16:TP=-1.5:LRA=11 -c:v copy chapter.lv.mp4\n\n# two passes, exact: measure first\nffmpeg -i chapter.mp4 -af loudnorm=I=-16:TP=-1.5:LRA=11:print_format=json -f null -\n\n# then apply the measured values from the JSON\nffmpeg -i chapter.mp4 -af loudnorm=I=-16:TP=-1.5:LRA=11:measured_I={input_i}:measured_TP={input_tp}:measured_LRA={input_lra}:measured_thresh={input_thresh}:offset={target_offset}:linear=true,asetpts=N/SR/TB -c:v copy chapter.lv.mp4","steps":["Run the measure pass; copy input_i, input_tp, input_lra, input_thresh and target_offset from the JSON into the apply pass.","Check with ffprobe that the output duration equals the input; a change here means the audio clock moved.","Level each chapter of a long film separately, before joining them."],"example":"Unlevelled neighbouring chapters of one long film differed by 9 dB. After loudnorm at I=-16 the whole cut played at one level from start to end.","tips":["Put `asetpts=N/SR/TB` last in the audio chain when the file was cut with -ss and joined with concat: loudnorm can leave packet timestamps crammed together, and YouTube and Instagram place audio by timestamp and play seconds of silence where your player sounded fine.","Verify on the copy the platform serves, not only on your file."],"tags":["loudness","lufs","ffmpeg","loudnorm","mastering","delivery"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["voice-cleanup-checklist-room-tone-deess-gate"],"url":"https://superduperai.co/library/loudness-normalize-minus-16-lufs-ffmpeg/","markdown":"https://superduperai.co/library/loudness-normalize-minus-16-lufs-ffmpeg.md"},{"slug":"mentioned-object-must-be-seen-checklist","title":"A mentioned object must be seen, ideally just before the line about it","description":"The rule that turns 'X is mentioned, never shown' from a viewer complaint into a check you run on the transcript: every named thing gets a shot, placed just before or on the line.","category":"broll","platforms":["any"],"works_with":["claude-code","manual","capcut"],"prompt":"MENTIONED OBJECT, the checklist\n\n1. Read the cut as text and underline every concrete noun a viewer could expect to see: an object, a place, a food, a tool, a person named, a screen.\n2. For each, answer: is it on screen within 3 seconds before the line, or during it? Write the shot and its time, or NOT SHOWN.\n3. NOT SHOWN with footage available: add the shot just before the line. The viewer sees the bread, then hears about the bread; the reverse plays as a caption.\n4. NOT SHOWN with no footage: cut the line, use another take if one exists, or generate a faceless clip of the object; never leave the line pointing at nothing.\n5. Shown, but from another time or place: that is a miss too (see the cutaway rule); find the same-place shot or treat as NOT SHOWN.\n6. Names: the first time a person is named, their face is on screen or has just been. Introduce before you refer.\n7. Screens and documents: shown close enough to read the one word that matters, for at least 2 seconds.\n8. Re-run the list after every re-cut; moving a scene moves the first mention.","steps":["Run the check from the text export of the cut, before rendering. Ten nouns per minute of talk is normal.","Fix in the cut script: one cover entry per NOT SHOWN noun. Render once.","Keep the noun list; it is the shot list for the next day you film in that place."],"tips":["'Just before' is the editor's tense. Object, then the line about it, reads as the speaker pointing at it; line, then object, reads as an illustration added later.","This check is also the fastest way to find the gaps in a shoot: the nouns with no footage are what to film tomorrow."],"skill":"video-edit","tags":["b-roll","cutaway","checklist","editing","continuity","footage"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["cutaway-rule-same-place-same-time","cutaway-matching-sentence-to-visual-prompt"],"url":"https://superduperai.co/library/mentioned-object-must-be-seen-checklist/","markdown":"https://superduperai.co/library/mentioned-object-must-be-seen-checklist.md"},{"slug":"music-brief-prompt-for-picking-a-track","title":"Music brief: describe the track you need before you search for it","description":"A fill-in brief that names mood as harmony, a BPM range, genre, length and where the drop must land relative to your hook, so a library search or a composer returns something that fits the cut.","category":"music","platforms":["tiktok","reels","shorts","youtube","any"],"works_with":["claude","chatgpt","any-llm","manual"],"prompt":"MUSIC BRIEF for {video title}\nLENGTH: {total seconds} s; the track may be longer, the edit will cut it.\nMOOD, as harmony, not adjectives: {e.g. 'major sevenths and a minor sixth, solitary and warm' / 'triads with an added sixth, no minor chords, light'}\nTEMPO: {low BPM}-{high BPM} BPM. The picture is cut at about one cut per {seconds per cut} s, so a bar should be close to that.\nGENRE / INSTRUMENTS: {two or three instruments and one texture, e.g. 'felt piano, upright bass, brushed drums, tape hiss'}\nSTRUCTURE RELATIVE TO THE PICTURE:\n- 0 to {hook end} s: under the hook, sparse, no drums; it must not compete with the first line.\n- Drop, or the first full-band bar, at exactly {drop time} s: the cut right after the hook.\n- A thinner section from {breakdown start} s to {breakdown end} s, where people talk.\n- End: a last chord that rings out, not a fade.\nVOCALS: none. No lyrics, no vocal chops.\nAVOID: {what fights the footage, e.g. 'no risers, no trailer hits'}\nSPACE FOR HOLES: the score will be silenced from {hole start} s to {hole end} s where live sound plays; write nothing that needs those bars.\nDELIVERABLE: WAV, 48 kHz, plus a stem of the drums alone so the edit can mute them under speech.","steps":["Fill the brief from the finished cut, not before it: the drop time is a fact about your edit, not a wish.","Paste it into a library's search as keywords (mood words, BPM, instruments) or send it as is to a composer or a music generation tool.","Audition the candidate against the picture with the voice track on. A track that sounds right alone and wrong under speech is the usual outcome."],"tips":["Mood is scale degrees, not tempo: a 'major' score came out sad at the right BPM because of its chords. Say the chords, not the feeling.","Mix the score about 15 dB under the voice for talk films. A brief that asks for 'subtle' gets a quiet track that still fights the voice in the same range; ask for instruments that sit away from speech.","If someone plays in the footage, the key and chords can be lifted from the recording with audio-to-MIDI and handed to the composer; the melody usually cannot."],"tags":["music-brief","score","track-selection","bpm","mood","prompt-template"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["generated-music-30s-track-brief-prompt","beat-sync-cut-not-every-beat"],"url":"https://superduperai.co/library/music-brief-prompt-for-picking-a-track/","markdown":"https://superduperai.co/library/music-brief-prompt-for-picking-a-track.md"},{"slug":"music-visualizer-abstract-loop-prompt","title":"Music visualizer: abstract particles that pulse to a stated tempo, loopable","description":"A filled 7-part prompt for an abstract background clip: particles that pulse at a stated BPM, a near-seamless loop, no text; the model cannot hear your track, so the beat is matched in the editor.","category":"generation","platforms":["youtube","shorts","reels","tiktok"],"works_with":["runway","sora","kling","veo"],"prompt":"SUBJECT: {the particle system, with two colours: e.g. 'thousands of tiny glowing dust particles' / 'thin ribbons of light' / 'ink drops in water'}\nACTION: {the beat motion, e.g. 'the whole field pulses outward and settles, evenly spaced'}\nSETTING: a black void with slight depth fog, no horizon, no objects, no faces\nCAMERA: static, centred, the particle field filling the frame; no camera movement, no zoom\nLENS & LIGHT: no lens, no depth of field; particles self-lit with soft bloom, brighter at the pulse, dimmer between pulses\nSTYLE: abstract motion graphics, smooth and continuous, the pulse at 120 beats per minute (one pulse every 0.5 seconds), the first frame and the last frame identical so the clip loops, deep black background, a two-colour palette with a slow drift between them, no text, no shapes that resemble letters or logos\nSOUND: none; the track is added in the editor\nDURATION: 8 seconds, 16:9. No on-screen text, no watermark, no faces.","tips":["What it breaks: the model cannot hear the music. 'Reacts to the beat' produces a pulse at a tempo of its own. State the tempo in BPM and seconds, then time-stretch or trim in the editor so the pulses sit on the real beats.","A loop from text is approximate: the last frame is close to the first, not identical. Cross-fade the last 0.5 s into the first in the editor; the particles hide the join.","Aspect: 16:9 for a YouTube background, 1:1 or 9:16 for a feed. Generate at 16:9 and crop; a centred particle field survives any crop.","Try first: Runway or Sora for smooth abstract motion; a suggestion, not a measurement."],"tags":["visualizer","abstract","loop","motion-graphics","style-prompt","music"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["beat-sync-cut-not-every-beat","generated-music-30s-track-brief-prompt"],"url":"https://superduperai.co/library/music-visualizer-abstract-loop-prompt/","markdown":"https://superduperai.co/library/music-visualizer-abstract-loop-prompt.md"},{"slug":"myth-vs-fact-format","title":"Myth vs fact: three beliefs checked in 35 seconds, each with a demonstration","description":"The format where a common belief is stated, then tested on camera, then labelled. Works because the viewer picks a side in the first second; the prompt insists on a visible test per myth.","category":"formats","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a myth vs fact script about {topic}. The format works because the viewer guesses the answer before you give it and watches to see if they were right. Every myth must be checked by something visible in the shot, not by an assertion. If a myth cannot be demonstrated, replace it.\n\nStructure (35 s, 9:16):\n- 0-3 s HOOK: 'Three things everyone believes about {topic}. One of them is true.' On-screen: 'MYTH or FACT?'\n- 3-13 s MYTH 1: state it as a quote people say (2 s, text on screen in quote marks), show the test (6 s), stamp the verdict (2 s, big text: MYTH or FACT).\n- 13-23 s MYTH 2: same shape.\n- 23-33 s MYTH 3: same shape. Order them so the verdicts are not all the same; the one that is true goes last.\n- 33-35 s CLOSE: 'Which one did you get wrong?' Comment ask, no download ask.\n\nWord budget: 85-95 words at 165 wpm. On-screen text: the belief in quote marks, then the verdict stamp. Nothing else, so the stamp has impact.\n\nReturn: the three beliefs with how each is tested on camera (I will reject any that are not tested), then a table (time, section, spoken line, on-screen text, shot).\n\nTopic: {topic}\nBeliefs I hear most: {list, or leave blank and propose}","example":"Topic: learning a language as an adult.\n\nBeliefs and tests:\n1. 'You need an hour a day.' Test: show a phone timer at 10:00, a notebook page from day 1 and day 60. Verdict: MYTH.\n2. 'Apps alone are enough.' Test: play a 5-second clip of a real conversation at speed, then the same sentence in the app at app speed. Verdict: MYTH.\n3. 'Speaking badly early is better than waiting.' Test: a clip of a day-10 voice note, clumsy, next to a day-90 voice note. Verdict: FACT.\n\n| Time | Section | Spoken line | On-screen text | Shot |\n|---|---|---|---|---|\n| 0-3 s | Hook | Three things everyone believes about learning a language. One is true. | MYTH or FACT? | Face |\n| 3-5 s | M1 | 'You need an hour a day.' | \"an hour a day\" | Text over a desk |\n| 5-11 s | M1 test | Ten minutes, every day. Day one, day sixty. The notebook does not lie. | | Timer, then the two pages |\n| 11-13 s | M1 verdict | Myth. | MYTH | Stamp |\n| 13-15 s | M2 | 'The app is enough.' | \"the app is enough\" | Phone |\n| 15-21 s | M2 test | This is a waiter at speed. This is the app. Hear the gap. | | Two clips back to back |\n| 21-23 s | M2 verdict | Myth. | MYTH | Stamp |\n| 23-25 s | M3 | 'Speak badly early.' | \"speak badly early\" | Face |\n| 25-31 s | M3 test | Day ten. Painful. Day ninety. Same sentence. | DAY 10 / DAY 90 | Two voice notes with waveforms |\n| 31-33 s | M3 verdict | Fact. | FACT | Stamp |\n| 33-35 s | Close | Which one did you get wrong? | | Face |","tips":["A myth with no test is an opinion video wearing a costume. Cut it or find the test.","Put the true one last; a viewer who was right about two myths stays to be wrong about the third."],"tags":["myth-vs-fact","educational","demonstration","tiktok","shorts","trust","script"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/myth-vs-fact-format/","markdown":"https://superduperai.co/library/myth-vs-fact-format.md"},{"slug":"nature-documentary-long-lens-prompt","title":"Nature documentary: long lens, slow motion, no narration","description":"A filled 7-part prompt for a wildlife shot that looks filmed from a hide: 600mm compression, heat haze, one animal doing one slow thing, slow motion at a stated rate, and the anatomy traps.","category":"generation","platforms":["youtube","any"],"works_with":["veo","sora","kling","runway"],"prompt":"SUBJECT: {one animal, species named, with two visible details: wet fur, a notch in one ear}\nACTION: {one slow action, e.g. 'lifts its head from the water and looks left' / 'shakes the rain off once'}\nSETTING: open savannah grassland at dawn, long dry grass in the foreground, acacia silhouettes far behind, light mist on the ground\nCAMERA: extreme long lens from a hide, slightly low angle, static on a tripod with one tiny slow pan to keep the animal framed; the animal small-to-medium in frame with grass in the foreground out of focus\nLENS & LIGHT: 600mm telephoto look, heavy background compression, very shallow depth of field, faint heat haze; low warm sun from the side, long shadows, backlit dust and breath\nSTYLE: natural history documentary film, true-to-life colour, muted and natural, no HDR look, light grain, slow motion at half speed (shot at 50 frames per second, played at 25) so the motion is smooth and heavy; no narration, no on-screen graphics\nSOUND: wind in grass, distant birds, no narration, no music\nDURATION: 8 seconds, 16:9. No on-screen text, no logos, no people, no vehicles.","tips":["What it breaks: animal anatomy under movement (legs multiply when an animal runs), herds (the count changes mid-shot), and speed: 'slow motion' without a rate gives you a clip played slowly, with the stutter that implies. State the capture and playback rates.","One animal, one slow action, no running. A walk, a head turn, a shake. The running shot is the one that still needs a real camera.","Aspect: 16:9. The long-lens compression is what reads as documentary, and a vertical crop throws away the foreground and background layers that show it.","Try first: Veo or Sora for animal motion; a suggestion to start with, not a claim about which is best."],"tags":["nature","wildlife","documentary","long-lens","slow-motion","style-prompt","text-to-video"],"difficulty":"intermediate","time":"10 min","verified":false,"created":"2026-11-01","related":["cinematic-establishing-shot-prompt","fix-warped-hands-and-faces"],"url":"https://superduperai.co/library/nature-documentary-long-lens-prompt/","markdown":"https://superduperai.co/library/nature-documentary-long-lens-prompt.md"},{"slug":"niche-accounts-one-archetype-each","title":"2-3 niche accounts, one audience archetype each, one app per account","description":"Why several small accounts beat one big one for an app: each speaks to one kind of viewer. A prompt that defines the archetypes and the account plan, and the clone trap that gets accounts suppressed.","category":"growth","platforms":["tiktok","reels","shorts"],"works_with":["claude","chatgpt","any-llm","claude-code"],"prompt":"Define the niche accounts for {app name} ({one-line description}).\n\n1. List the 2-3 viewer archetypes who get a different thing from the app. For each: who they are in one line, what they would search for, the output of the app they would screenshot, the tone they trust (expert / peer / entertainer).\n2. One account per archetype, on every platform (TikTok, Reels, Shorts). Name each account for the archetype's interest, not for the app. The app is what every video uses; the account is about the viewer's world.\n3. Each account promotes only this app. Never a second product on the same account.\n4. For each account write: the bio line (one sentence, link in bio to that account's campaign link), the three recurring series it posts, and the one format from the four (educational / POV / humor / story) it leans on.\n5. The content must differ between accounts. The same video cloned across accounts gets suppressed; the archetype decides the hook, the example and the vocabulary.\n\nOutput: a table, one row per account: archetype, account name, platforms, bio, three series, lead format, campaign tag (platform-account, 40 characters max).","steps":["Create the accounts and one campaign link per platform and account before the first post.","Post from one account for a week before adding the second; two cold accounts at once is two half-cadences.","Read installs per campaign after a week to see which archetype converts."],"tips":["Many accounts work because each matches a different viewer archetype, not as a spam multiplier.","One app per account, one app per push. A second product on the same account halves the signal and confuses the bio link.","The agency playbook does this with hundreds of paid creators; the founder does it with two or three accounts and a phone."],"skill":"creator-growth","tags":["accounts","archetypes","niche","ugc","creator-growth","tiktok"],"difficulty":"intermediate","time":"30 min","verified":false,"created":"2026-11-01","related":["posting-cadence-one-vertical-cut-three-feeds","campaign-links-per-platform-and-account"],"url":"https://superduperai.co/library/niche-accounts-one-archetype-each/","markdown":"https://superduperai.co/library/niche-accounts-one-archetype-each.md"},{"slug":"phase-two-trigger-paid-micro-creators","title":"Phase 2 trigger: when to pay micro-creators, and how much","description":"Pay nobody until one video passes a view threshold AND its campaign link shows installs. Then 3-5 micro-creators in the same niche, paid per video or per million views, no retainer yet.","category":"growth","platforms":["tiktok","reels","shorts"],"works_with":["claude","chatgpt","any-llm","claude-code","manual"],"prompt":"Check the Phase 2 trigger for {app name} and, if it fires, write the creator brief.\n\nTRIGGER (both must be true):\n1. One video passed {view threshold, e.g. 100000} views.\n2. That video's campaign link shows {install threshold} installs in App Store Connect or Play Console (installs, not clicks).\nIf either is false: stay in Phase 1, say which condition failed, stop.\n\nIf both are true:\n- Hire 3-5 micro-creators in the same niche as the video that fired, not bigger creators in a wider niche.\n- Pay per video ({per video fee}; $50-200 is the agency norm) or a bonus per views (about $1,000 per million views is the agency norm). No retainer until cost per install is known from these first videos.\n- Brief: the format that fired (shot by shot, from the winning video), the output of the app to show, the one setting to show, the hook text, the length, the campaign link for that creator (ct = {platform}-{creator handle}), what not to say (no 'link in bio' in the voice track), delivery date, usage rights for the app's own accounts.\n- Measurement: one campaign link per creator; judge after a week on installs per link. Cost per install = fee / installs. Only a creator whose cost per install is under {target CPI} gets a second video.\n\nOutput: the trigger verdict with the two numbers, then the brief as a one-page text a creator can read on a phone.","steps":["Set the two thresholds in writing before any video goes up, so the trigger is a number and not a feeling.","Look for creators among the people who duet, stitch or comment on the video that fired; their audience already responded to the format.","Pay per video for the first round even if a creator asks for a retainer; the retainer comes after the cost per install is known."],"tips":["Views without installs is a format that entertains and does not sell. It does not fire the trigger, however large the number.","The agency's own advice to unfunded founders is: do it yourself first. The trigger is the point where that stops being true.","Keep the winning video's shot list; it is the brief. Creators copy a video better than they follow a paragraph."],"skill":"creator-growth","tags":["paid-creators","micro-creators","ugc","phase-2","cost-per-install","creator-growth"],"difficulty":"intermediate","time":"30 min","verified":false,"created":"2026-11-01","related":["creator-budget-gate-payback-arithmetic","campaign-links-per-platform-and-account"],"url":"https://superduperai.co/library/phase-two-trigger-paid-micro-creators/","markdown":"https://superduperai.co/library/phase-two-trigger-paid-micro-creators.md"},{"slug":"pixel-art-8bit-game-cutscene-prompt","title":"Pixel art: an 8-bit game cutscene on a locked pixel grid","description":"A filled 7-part prompt for a retro game cutscene: a stated sprite size, a palette of 16 colours, parallax layers, no sub-pixel smoothing, and why a still from an image model is the safer first frame.","category":"generation","platforms":["youtube","shorts","tiktok","any"],"works_with":["image-gen","kling","runway","veo"],"prompt":"SUBJECT: {the character as a sprite: 32 pixels tall, two colours of outfit, one weapon or tool}\nACTION: {one looping action, e.g. 'walks right in a 4-frame walk cycle' / 'stands while the cape flaps in a 2-frame loop'}\nSETTING: a side-scrolling game level: a night forest with three parallax layers (near trees, far trees, a moon and stars), a flat row of ground tiles at the bottom\nCAMERA: fixed side view, orthographic, no perspective, no camera movement; the background layers scroll left at three different speeds\nLENS & LIGHT: no lens, no depth of field; flat lighting baked into the palette, one lighter tone for lit edges, one darker for shadow, no gradients, no glow\nSTYLE: 8-bit pixel art as rendered on a 256x224 screen, every pixel sharp and square on a locked grid, a 16-colour palette, dithering instead of gradients, no anti-aliasing, no sub-pixel movement (sprites move in whole pixels), animation at 8 frames per second with held frames; no 3D, no smooth interpolation, no blur\nSOUND: a soft 8-bit wind loop, no music, no voice\nDURATION: 6 seconds, 16:9. No on-screen text, no HUD, no score counters, no dialogue boxes.","tips":["What it breaks: the pixel grid. Most models smooth between frames, so pixels slide and blur and the look drifts to 'blurry low-res video'. State 'whole pixels', 'no anti-aliasing' and a frame rate, and expect to nearest-neighbour upscale a small render rather than ask for 1080p directly.","Text, HUDs and dialogue boxes are the other failure: generated letters are not letters. Add them in the editor with a real pixel font.","Aspect: 16:9 or 4:3 like the consoles it imitates. For a vertical post, stack the 4:3 picture over a black band and put the dialogue text there.","Try first: generate the sprite and the level as a still in an image model, then animate with Kling or Runway from that frame; text-to-video from scratch tends to render a painting of pixel art. A suggestion to start with."],"tags":["pixel-art","8-bit","retro-game","cutscene","style-prompt","image-to-video"],"difficulty":"advanced","time":"20 min","verified":false,"created":"2026-11-01","related":["image-to-video-first-frame-method","style-lock-block"],"url":"https://superduperai.co/library/pixel-art-8bit-game-cutscene-prompt/","markdown":"https://superduperai.co/library/pixel-art-8bit-game-cutscene-prompt.md"},{"slug":"posting-cadence-one-vertical-cut-three-feeds","title":"Cadence: 1-2 posts a day, one vertical cut to TikTok, Reels and Shorts","description":"The minimum posting rhythm for Phase 1 and the production habit that makes it possible: one 9:16 master per idea, three uploads, no per-platform re-edit. With the ffmpeg line for burned captions.","category":"growth","platforms":["tiktok","reels","shorts"],"works_with":["manual","ffmpeg","capcut","claude-code"],"prompt":"Daily production rule for {app name}:\n- 1-2 posts a day, minimum. A day with zero posts is a day the accounts go cold.\n- One vertical cut per idea. The same file goes to TikTok, Reels and Shorts; the caption and the on-screen hook text may change, the cut does not.\n- Shoot vertical. If the source is horizontal, use a face-following 9:16 window with burned-in captions; never a blind centre crop.\n- Captions burned in for feeds (nobody turns on a track in the feed): 1-2 word lines, centred, big.\n- Hook text on screen for the whole of the first 3 seconds.\n- Batch: shoot 7 in one session, post one a day, keep 2 in reserve for the day nothing gets shot.\n\nffmpeg, captions burned into a native vertical phone clip (this re-encodes the video, so run it once, from the master):\nffmpeg -i master.mp4 -vf \"subtitles=captions.srt:force_style='Alignment=2,MarginV=160,FontSize=28,Outline=2'\" -c:a copy master.feed.mp4","steps":["Export one archival master per idea; every upload comes from it.","Upload to all three platforms the same day. Cross-posting a week later splits the signal you are trying to read.","Log each post in a sheet: date, format, account, platform, campaign link. The weekly review reads this sheet."],"tips":["Don't crop horizontal footage blindly to 9:16: if the camera pans inside the clip, a fixed crop misses. Scale the full frame to width or follow the face.","Same content cloned across several accounts gets suppressed. One cut goes to three platforms, not to three accounts on one platform.","In Claude Code, `/video-edit` renders the per-platform masters from one archival file; its references/delivery.md has the recipes."],"skill":"creator-growth","tags":["cadence","repurposing","vertical","tiktok","reels","shorts","creator-growth"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["founder-led-phase-one-four-formats","niche-accounts-one-archetype-each"],"url":"https://superduperai.co/library/posting-cadence-one-vertical-cut-three-feeds/","markdown":"https://superduperai.co/library/posting-cadence-one-vertical-cut-three-feeds.md"},{"slug":"pov-format-script","title":"POV: a 15-second first-person scene with the text doing the storytelling","description":"The POV format in which the camera is the viewer's eyes and one line of on-screen text sets the situation; the prompt writes the text, the single action and the beat where it turns.","category":"formats","platforms":["tiktok","reels","shorts"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a POV script for {topic}. The format works because the viewer is cast as the character in the first frame and has to stay to find out what happens to them. No narration; the on-screen text and the picture carry everything.\n\nStructure (15 s, 9:16):\n- 0-2 s PREMISE: on-screen text, max 12 words, starting with 'POV:' and naming a situation the target viewer has been in. Camera already in the scene, first person, hands visible if relevant.\n- 2-9 s THE ACTION: one continuous first-person action, no cut if possible. No text.\n- 9-12 s THE TURN: the thing that changes (the result, the surprise, the small disaster). On-screen text, max 6 words.\n- 12-15 s BUTTON: a reaction beat held in silence, or one line of text that is a question. No CTA in this format; the product is in the scene, the comments ask about it, the answer is a comment.\n\nWord budget: 0 spoken words. On-screen text total under 25 words. Sound: ambient room sound or one trending-style sound placeholder marked SOUND.\n\nWrite 3 premise variants (one relatable, one aspirational, one slightly absurd) and pick one. Return: the chosen premise, a 4-row table (time, what the camera sees, on-screen text, sound), and a 1-line note on how the phone is held.\n\nTopic: {topic}\nTarget viewer: {who they are, the situation they recognise}","example":"Topic: a 10-minute-a-day language-learning habit. Target viewer: someone who has restarted the same app four times.\n\nPremise variants:\n1. POV: it's day 31 and you still open the app before Instagram (relatable)\n2. POV: you order in Portuguese and the waiter does not switch to English (aspirational)\n3. POV: your streak reminder goes off during the wedding vows (absurd)\n\nChosen: 2.\n\n| Time | Camera sees | On-screen text | Sound |\n|---|---|---|---|\n| 0-2 s | A café table, menu in hand, waiter approaching | POV: you order in Portuguese and the waiter doesn't switch to English | café ambient |\n| 2-9 s | Hands put down the menu, point at an item, a nod from the waiter | (none) | café ambient, your voice low and off-mic |\n| 9-12 s | Waiter walks away, the phone on the table lights up with a streak notification: 31 | he understood. day 31. | ambient |\n| 12-15 s | Hands pick up the coffee, held | 10 minutes a day. that's all it was. | ambient |\n\nPhone held at chest height with both hands, slightly tilted down so the table and hands are in frame.","tips":["The premise is the hook. Spend most of the time on it; the action is just proof.","One long take beats three cuts here. A cut breaks the 'you are here' illusion."],"tags":["pov","text-on-screen","no-narration","tiktok","reels","reach","script"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/pov-format-script/","markdown":"https://superduperai.co/library/pov-format-script.md"},{"slug":"product-hero-shot-generation","title":"Product hero shot: a 5-second generated clip for an ad or a listing","description":"Prompt for a clean product shot with one motion and one light change, the kind that sits at the top of a listing or opens a 15-second ad.","category":"generation","platforms":["reels","tiktok","youtube","any"],"works_with":["veo","kling","runway","image-gen"],"prompt":"A {product, with material and colour} on a {surface: matte black stone / pale oak / wet concrete}, centred, {background: seamless studio grey / soft out-of-focus kitchen}. {One motion: slow 45-degree turntable rotation / camera slow dolly in / a drop of water landing on it}. Studio lighting with a soft key from the upper left and a thin rim light tracing the edge; the rim light slowly sweeps across the surface. 100mm macro look, shallow depth of field, product tack sharp. Clean commercial style, true-to-life colours, no reflections of people, no hands. No on-screen text, no logo overlays. 5 seconds, 9:16.","steps":["Start from a real photo of the product as the first frame if you have one; the model will keep the label and proportions.","Generate 4 takes; choose by whether the label stays readable through the motion.","Add text and price in the editor, never in the prompt."],"tips":["Text on packaging is where models still fail. Keep the label small in frame or add it in post.","One light event (the rim sweep) reads as 'premium' more than any adjective."],"tags":["product","ads","ecommerce","image-to-video","studio","veo","kling"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/product-hero-shot-generation/","markdown":"https://superduperai.co/library/product-hero-shot-generation.md"},{"slug":"promise-payoff-pairs-multi-day-film","title":"Promise and payoff: find the pairs that thread a multi-day film","description":"An agent prompt that reads several days of transcripts and pairs every promise ('tomorrow we'll buy the boat') with the moment it is kept or broken, so the film has a thread, not a sequence of days.","category":"editing","platforms":["youtube"],"works_with":["claude-code","claude"],"prompt":"Below are the transcripts of {N} days of footage, in shooting order, each sentence tagged with day, clip and time. Find every PROMISE: a sentence about something that will happen later (a plan, a wish, a bet, a 'tomorrow', a 'we'll see', a 'never again'). For each, search the later days for the PAYOFF: the moment it happens, fails, or is mentioned again.\n\nOutput a table: Promise (day, clip, time, quote) | Payoff (day, clip, time, quote, or 'none found') | Type (kept / broken / forgotten) | Gap in days | Keep both? (yes if the payoff is visible on camera or said clearly).\n\nThen propose the thread: the 3-5 pairs that would carry the whole film, in the order they should appear, with one sentence on why each one matters to someone who was not there. Mark any promise without a payoff that is still worth keeping as an open question for the ending.\n\nTranscripts:\n{paste day transcripts}","steps":["Transcribe all days first and fix names with a glossary; a promise about 'Mehmet' and a payoff about 'Mohammed' will not be paired.","Run the prompt over all days at once, not per day. The pairs cross days by definition.","Keep both halves of every chosen pair in the cut, in order. A payoff whose promise was cut is a random event; a promise whose payoff was cut is a loose end the viewer notices at the credits."],"tips":["Broken promises make better threads than kept ones. 'We'll catch the 7 am ferry' followed by the midnight ferry is the film.","A long trip film is cut from the finished day films; find the pairs before cutting the days, so each day keeps its half."],"skill":"video-edit","tags":["story","structure","multi-day","vlog","transcript","agent","editing"],"difficulty":"advanced","time":"30 min","verified":false,"created":"2026-11-01","related":["day-as-one-text-file-story-and-cut-prompt","scenes-not-best-phrases"],"url":"https://superduperai.co/library/promise-payoff-pairs-multi-day-film/","markdown":"https://superduperai.co/library/promise-payoff-pairs-multi-day-film.md"},{"slug":"promo-script-30-45-seconds-template","title":"The 30-45 second promo script: hook, problem, demo, CTA with timings","description":"A fill-in script template for a vertical product promo: four blocks with second counts and a 75-100 word narration budget, so the video ends before the viewer scrolls.","category":"scripts","platforms":["tiktok","reels","shorts"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a 30-45 second promo script for {product} aimed at {audience}. The viewer should {goal: download / sign up / visit URL} after watching.\n\nFormat: vertical 9:16, screen recording plus text overlays, no actor. Narration budget: 75-100 words total.\n\nUse exactly this structure with these timings:\n\nHOOK (0:00-0:03)\nAudio: one line, a question or a bold statement, max 12 words.\nVisual: text overlay on a blurred or gradient background.\n\nPROBLEM (0:03-0:10)\nAudio: the pain in the user's own words, max 20 words.\nVisual: the frustrating current state (the manual process, the mess before).\n\nDEMO (0:10-0:25)\nAudio: narrate what the product does, max 45 words.\nVisual, three shots of 5 s each: Shot 1 {feature 1}, Shot 2 {feature 2}, Shot 3 the wow moment, {the differentiator}.\n\nCTA (0:25-0:30)\nAudio: one call to action, max 12 words, name the place to go.\nVisual: logo, URL, download badge.\n\nAfter the script, count the words of each Audio line and the total, and flag any block over budget.","steps":["Fill product, audience, goal and the three features before you paste. If you cannot name three features, you have two and the script gets shorter, not vaguer.","Read the Audio lines aloud with a stopwatch. 75-100 words lands in 30-40 seconds at a normal pace; at 120 words, cut the problem block first.","Record the three demo shots as separate files named by block (demo-1.mp4, demo-2.mp4, demo-wow.mp4), then assemble."],"example":"HOOK (0:00-0:03)\nAudio: \"Your phone is full of video nobody will ever watch.\"\nVisual: camera roll scrolling fast, blurred, white text over it.\n\nPROBLEM (0:03-0:10)\nAudio: \"Editing takes an evening. So the clips sit there. For years.\"\nVisual: a timeline with 200 clips, the cursor hovering, nothing happening.\n\nDEMO (0:10-0:25)\nAudio: \"Drop in a folder. It scores every frame, finds where the scenes change, and cuts a film to the length you ask for. On your Mac. Nothing uploaded.\"\nShot 1: import, a progress bar. Shot 2: the scene list appears. Shot 3: the montage plays.\n\nCTA (0:25-0:30)\nAudio: \"Life2Film Studio. Free beta at life2film.com.\"\nVisual: logo, URL.\n\nTotal: 71 words.","tips":["In Claude Code, `/video-promo` reads the project's PRD and README, picks the three features, writes this script and a storyboard to docs/video-promo.md.","The DEMO block is half the video. If the wow moment is not obvious on a muted phone screen, it is not the wow moment."],"skill":"video-promo","tags":["promo","script","template","timing","product-video","vertical"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["shot-list-table-generator-prompt","forced-reasoning-before-scripting","generation-storyboard-from-script-agent"],"url":"https://superduperai.co/library/promo-script-30-45-seconds-template/","markdown":"https://superduperai.co/library/promo-script-30-45-seconds-template.md"},{"slug":"reaction-duet-style-format","title":"Reaction / duet style: respond to a clip in 30 seconds without stealing it","description":"The split-screen or picture-in-picture response format, written so the reaction adds a fact or a demonstration instead of a face. The prompt plans the pause points and what you say at each.","category":"formats","platforms":["tiktok","reels","shorts"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a reaction / duet script in which I respond to a clip about {topic}. The format works because the source clip supplies the hook and the pacing, and the viewer stays to see whether I agree. A reaction that only nods is skipped; each pause must add something the source did not have (a correction, a number, a demonstration, a missing step).\n\nInput: the source clip transcript with timestamps, and my position (agree / disagree / 'yes, but').\n\nStructure (30 s, 9:16, source clip on top or left, me below or right):\n- 0-2 s: let the source play its hook. My on-screen text over my half: my stance in 3 words ('this is wrong', 'half right', 'do this instead').\n- Then 3 PAUSE POINTS. At each: freeze or lower the source, I speak for 5-7 s, one point each, max 18 words. If I can show it instead of saying it, the shot note says what I hold up or do.\n- Between pause points the source plays 3-4 s at full volume.\n- 27-30 s CLOSE: one sentence verdict. No download ask; if my demonstration used a product, it was visible, that is enough. The comment ask is 'who's right?'.\n\nWord budget: 55-65 spoken words at 165 wpm (I am speaking for about 20 of the 30 seconds). On-screen text: the stance at 0-2 s, then one 3-word label per pause point.\n\nReturn: a table (time, what the source is saying, what I do, what I say, on-screen text), and a 1-line note on which of my three points is the strongest, so I can lead with it if the source clip is shorter than planned.\n\nSource transcript: {transcript with timestamps}\nMy position: {agree / disagree / partly, and why}","example":"Source: a 25-second clip claiming you should shoot product photos at night with a ring light. My position: disagree, window light is better and free.\n\n| Time | Source says | I do | I say | On-screen |\n|---|---|---|---|---|\n| 0-2 s | 'Stop shooting in daylight, here's why' | Listen, eyebrows up | (nothing) | DO THIS INSTEAD |\n| 2-8 s | 'ring light gives you control' | Hold up the mug, lamp on, then off | Control, yes. Also a flat face and a white ring in every reflection. Look. | RING REFLECTION |\n| 8-11 s | 'daylight changes every minute' | Let it play | | |\n| 11-18 s | 'so you can't match shots' | Turn the mug by the window, side on | It changes slowly. Side on at the window, shoot all your products in one twenty-minute go. Done. | 20 MIN, ONE GO |\n| 18-21 s | 'and you need it to look professional' | Let it play | | |\n| 21-27 s | 'that's what buyers expect' | Show two photos side by side on the phone | Window on the left, ring on the right. Which one would you buy? Same mug. | SAME MUG |\n| 27-30 s | (ends) | Face | Free light, five steps from the kitchen table. Who's right? | |\n\nStrongest point: the side-by-side at 21-27 s. Lead with it if the source is short.","tips":["Only react to a clip you can add a demonstration to. 'I disagree' with a face is not content; 'I disagree, look' is.","Keep the source audible between your points. Muting it for the whole video turns a duet into a lecture with a stranger on screen."],"tags":["reaction","duet","stitch","tiktok","reels","reach","script"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["stitch-this-opinion-format"],"url":"https://superduperai.co/library/reaction-duet-style-format/","markdown":"https://superduperai.co/library/reaction-duet-style-format.md"},{"slug":"read-the-film-as-text-before-rendering","title":"Read the film as text before rendering: the last check that costs nothing","description":"The cut, printed as its lines in order, read by someone who never saw the raw footage. Catches the question whose answer was cut, the name said before the person, the 'this' that points at nothing.","category":"editing","platforms":["any"],"works_with":["claude-code","claude","manual"],"prompt":"Below is the final cut of a film as text: every spoken line in order, with [CUTAWAY: what is shown] and [SILENT: what is shown] markers between them, and on-screen text as [TEXT: words]. You have not seen the footage. Read it as a first viewer.\n\nAnswer, with line numbers:\n1. Which lines refer to something that has not appeared yet (a name, a place, 'this', 'it', 'the one I mentioned')?\n2. Which lines answer a question that is not in the text?\n3. Where does the same information appear twice?\n4. Where does a scene end without a reaction or a result?\n5. Which cutaway markers do not show what the line next to them says?\n6. Does the hook line promise something that the film then delivers? Quote both.\n7. Three lines you would cut, and one place that needs one more line from the raw material (describe what it should say).\n\nDo not praise anything. Output only the numbered findings.\n\nCut as text:\n{paste the cut as text}","steps":["Export the cut as text from cut.json or by hand: lines in order, cutaway markers between them. Ten minutes for a day film.","Give it to a fresh session or a person. The point is a reader with no memory of the footage; your own reread fills every gap from memory.","Fix in the cut script, not the timeline. Re-render, re-export the text, read once more. Then render the masters."],"tips":["Don't render before reading the cut as text. A render is minutes; the read is free, and most of the notes it finds would otherwise come from the first viewer in public.","Finding 1 (refers to something not shown yet) is the one the cutaway sheet does not catch, because the cutaway matches the line and the line is still unexplained."],"skill":"video-edit","tags":["review","editing","transcript","qa","agent","story"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["critic-pass-two-passes","scenes-not-best-phrases"],"url":"https://superduperai.co/library/read-the-film-as-text-before-rendering/","markdown":"https://superduperai.co/library/read-the-film-as-text-before-rendering.md"},{"slug":"reading-speed-on-screen-text-parameters","title":"Reading speed for on-screen text and speech: the parameters to check against","description":"How long a text overlay must stay up and how many words a voice can carry per second, given as parameters you measure on yourself, with the formula and the two failure modes: unreadable, and slow.","category":"captions","platforms":["tiktok","reels","shorts","youtube","linkedin"],"works_with":["manual","capcut","claude","any-llm"],"prompt":"READING SPEED, the parameters (not studies: measure them on yourself and your viewers)\n\nOn-screen text: 2-3 words per second of hold time, after a 0.5 s entrance. So a 6-word overlay stays at least 2.5-3.5 s. Phone, muted, one hand: use 2 words per second. Desktop, sound on, familiar words: 3.\nSpeech: 150-170 words per minute for narration; 165 wpm is a usable default. A 55-word line is about 20 s; 75-100 words fit 30-40 s.\nSubtitles: 2 lines of about 32 characters, held 1-6 s; under 1 s is a flash the eye cannot land on, over 6 s means the cue should be split.\n\nThe check, for every overlay:\n1. Count the words. Divide by 2.5. That is the minimum seconds on screen.\n2. If the voice says something else while the text is up, the text gets the shorter end: max 5 words.\n3. If the hold is longer than the formula by 2x, the text is a title card and needs a picture change under it.\n4. Read the whole video with the sound off, at arm's length, on a phone. Any overlay you could not finish reading gets fewer words, not a longer hold.\n\nWhen asking an agent for overlays, give it these numbers: 'Max {5} words per overlay, each on screen for at least words/2.5 seconds, total overlay time under {40} percent of the video.'","steps":["Measure your own narration speed once: read 100 words aloud, time it, write the wpm in your project notes. Scripts are budgeted from that number from now on.","Put the words-per-second rule into every prompt that produces overlays, so the agent counts instead of guessing.","Test on the slowest reader you know, on a phone. Their number is the parameter."],"tips":["An overlay that repeats the spoken sentence is read twice at two speeds and feels slow. Put the number or the name in text, the sentence in voice.","Platform UI covers the bottom of a vertical frame; text in that zone has a hold time of zero because it is never seen."],"tags":["captions","on-screen-text","reading-speed","parameters","overlays","accessibility"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["burned-subtitles-9-16-parameters","rewrite-script-to-55-words-20-seconds"],"url":"https://superduperai.co/library/reading-speed-on-screen-text-parameters/","markdown":"https://superduperai.co/library/reading-speed-on-screen-text-parameters.md"},{"slug":"rehook-at-three-seconds-and-midpoint","title":"Re-hook at 3 s and at the midpoint: two lines that carry a viewer past the drop","description":"Retention is lost twice, after the hook pays off and halfway through; this prompt writes the second promise for 3 s and the third for the midpoint, each as a line the viewer can check before the end.","category":"hooks","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Here is a {length}-second script for a short video about {topic}:\n\n{script}\n\nThe hook at 0-3 s buys three seconds. Two more promises are needed: a RE-HOOK at 3 s, right after the opener, and a MID-HOOK at the midpoint ({length} divided by 2). Each is one spoken line, max 10 words, that names a specific thing still to come and roughly when.\n\nRules:\n- The re-hook at 3 s is a specific promise about the end: 'the third one is the one you do', 'the number at the end is under two dollars'. Not 'stick around'.\n- The mid-hook is a turn: a complication, a result that is not what the first half implied, or the countdown reaching the best item. It must change the direction of the video, not restate the hook.\n- Both are on screen as text in the same words, 2 s each.\n- Neither is a CTA. No 'follow for part 2'. The download ask, if the video has one, stays where it was.\n- Check that both promises are kept: quote the line in the script that pays each one off, with its second. If a promise has no payoff, rewrite the promise, not the script.\n\nReturn: the re-hook with its second and its payoff line, the mid-hook with its second and its payoff line, then the script with the two lines inserted and marked [RE-HOOK] and [MID-HOOK].","example":"Script: the 40-second '3 product-photo mistakes' video (hook: 'Three product-photo mistakes, and the third one is why your listing looks cheap').\n\nRE-HOOK at 3 s: 'Number three takes one tap to fix.' Payoff: 32-37 s, 'Cut it out and put it on white; the app does that in one tap.'\n\nMID-HOOK at 20 s: 'You can't fix this one in an editor.' Payoff: 21-25 s, 'Step closer, crop later.' (the zoom mistake cannot be undone after the shot).\n\nScript with inserts:\n0-3 s: Three product-photo mistakes, and the third one is why your listing looks cheap.\n3-5 s: [RE-HOOK] Number three takes one tap to fix.\n5-14 s: One. Shooting under the kitchen light...\n14-20 s: Two. Zooming in. The phone throws away pixels; the edge goes soft.\n20-22 s: [MID-HOOK] You can't fix this one in an editor.\n22-25 s: Step closer, crop later.\n25-37 s: Three. The background...\n37-40 s: Save this for your next listing.\n\nThird example, for a 60-second storytime: RE-HOOK at 3 s 'I baked it to throw it away.' MID-HOOK at 30 s 'Then I got the phone call.' Both paid off at 40-48 s.","tips":["Read the retention graph on the last three videos before writing these: the drop after 3 s and the drop near the middle tell you where the promises go. The graph is in the platform's analytics for every video.","A re-hook that is kept builds trust for the next video; a re-hook that is not kept is the last video that viewer watches. Quote the payoff line before you record."],"tags":["hook","re-hook","retention","midpoint","script","tiktok","youtube"],"difficulty":"intermediate","time":"10 min","verified":false,"created":"2026-11-01","related":["hook-archetype-curiosity-gap","three-mistakes-format","storytime-with-a-twist-format"],"url":"https://superduperai.co/library/rehook-at-three-seconds-and-midpoint/","markdown":"https://superduperai.co/library/rehook-at-three-seconds-and-midpoint.md"},{"slug":"retro-vhs-1990s-home-video-prompt","title":"Retro VHS: a 1990s home video shot on a camcorder","description":"A filled 7-part prompt for the camcorder look: 4:3 inside the frame, tracking noise, colour bleed, auto-focus hunting and a zoom nobody meant, with the date stamp added in the editor.","category":"generation","platforms":["tiktok","reels","shorts","youtube"],"works_with":["sora","runway","veo","kling"],"prompt":"SUBJECT: {subject, dressed for the early 1990s: two clothing details, one haircut detail}\nACTION: {one action, candid, e.g. 'waves at the camera then looks away, embarrassed'}\nSETTING: a family living room in 1993, patterned sofa, a CRT television on a wooden stand, a window with net curtains, afternoon\nCAMERA: handheld camcorder held at chest height by a parent, slight wobble, one slow clumsy zoom in that overshoots and corrects, auto-focus hunting once\nLENS & LIGHT: small camcorder sensor look, deep focus; window daylight that blows out, a warm tungsten lamp in the corner, mixed colour temperature\nSTYLE: 1990s consumer VHS home video: 4:3 picture pillarboxed inside the frame, soft 240-line resolution, chroma bleed on reds, slight colour fringing at the edges, horizontal tracking noise flickering at the bottom of the frame once, analogue tape grain, lifted blacks, slightly desaturated with magenta shadows, interlace combing on fast motion; no clean digital look, no film grain\nSOUND: camcorder microphone: room hum, the zoom motor whirring, muffled voices, no music\nDURATION: 6 seconds. No on-screen text, no date stamp (added in the editor), no logos.","tips":["What it breaks: text. A model asked for a 'REC' indicator or a date stamp writes nonsense characters; add the stamp in the editor with a real pixel font. Faces survive because the style hides detail, which makes this one of the more forgiving looks.","Speed: the look reads as real only at ordinary human speed. Slow motion looks like a modern clip with a filter on it.","Aspect: generate 16:9 and let the model pillarbox to 4:3, or generate 4:3 directly if the model allows it. For a vertical post, put the 4:3 picture in the middle third of a 9:16 frame with black above and below; do not stretch it.","Try first: Sora or Runway, which tend to render analogue artefacts without being told twice; a starting point, not a measured ranking."],"tags":["vhs","retro","1990s","camcorder","style-prompt","text-to-video"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["video-prompt-structure-seven-parts","style-lock-block"],"url":"https://superduperai.co/library/retro-vhs-1990s-home-video-prompt/","markdown":"https://superduperai.co/library/retro-vhs-1990s-home-video-prompt.md"},{"slug":"rewrite-script-to-55-words-20-seconds","title":"Cut any script to 55 words: the 20-second rewrite prompt","description":"A rewrite prompt that compresses a script to 55 words (about 20 seconds at 165 wpm) without losing the number, the name or the ask, and reports what it removed so you can argue.","category":"scripts","platforms":["tiktok","reels","shorts","linkedin"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Rewrite the script below to 55 words or fewer, to be spoken in 20 seconds at about 165 words per minute (a parameter; change the word count if you speak slower).\n\nKeep, in this order of priority: the one number, the product name, the call to action, the hook. Everything else is negotiable.\n\nRules:\n- Sentences of 12 words or fewer. One idea per sentence.\n- No adjectives that do not change the meaning. 'Fast' stays only if a number cannot replace it.\n- No intro, no 'in this video', no 'so'.\n- Spoken numbers written as words.\n- The last sentence is the ask.\n\nOutput: the rewritten script, then the word count, then a list of what was removed and why, one line each.\n\nScript:\n{paste script}","steps":["Run it, read the removed list. If something load-bearing is in it, put it back and remove something else by hand.","Read the result aloud with a stopwatch. 55 words at a natural pace is 18-22 seconds; if you hit 25, you are pausing, not talking."],"example":"Input (96 words): a paragraph about an app that 'seamlessly and intelligently' finds the best moments in your videos, with three sentences on how hard editing is.\nOutput (52 words):\nYour phone has hours of video nobody will watch.\nThis app watches it for you.\nIt scores every frame and finds where the scenes change.\nThen it cuts a film to the length you want.\nOn the Mac. Nothing uploaded.\nSearch for Life two Film Studio.\nRemoved: 'seamlessly', 'intelligently' (no meaning), two of three sentences about editing being hard (one is enough), the feature list (not the one job).","tips":["165 words per minute is a parameter, not a law. Measure yourself once: read any 100 words and time it.","The removed list is the real output. It shows which sentences were scaffolding, and the next script you write will have fewer of them."],"tags":["script","rewrite","short-form","word-count","compression","talking-head"],"difficulty":"beginner","time":"3 min","verified":false,"created":"2026-11-01","related":["talking-head-avatar-script-prompt","reading-speed-on-screen-text-parameters"],"url":"https://superduperai.co/library/rewrite-script-to-55-words-20-seconds/","markdown":"https://superduperai.co/library/rewrite-script-to-55-words-20-seconds.md"},{"slug":"satisfying-process-asmr-format","title":"Satisfying process / ASMR: 30 seconds of one process, real sound, no talking","description":"The sound-led format that holds without a hook sentence because the first frame is mid-action and the audio is the process itself. The prompt plans the cuts to the sounds and the single text line.","category":"formats","platforms":["tiktok","reels","shorts"],"works_with":["claude-code","claude","chatgpt","any-llm","life2film"],"prompt":"Plan a satisfying-process video of {process} for {topic or channel}. The format works because the viewer's ear is hooked by a real sound in the first half second and the eye follows a process to its end; narration kills it. Sound is recorded on set, no music, no voice.\n\nStructure (30 s, 9:16):\n- 0-1 s: start mid-action, on the loudest clean sound of the process (a knife through cabbage, a scraper on a board, a tap on glass). Never start on a wide shot of the room.\n- 1-25 s: 6-9 shots, each cut on a sound event, not on a beat. Shot sizes alternate close-up and extreme close-up; one medium shot allowed, placed in the middle. Each shot shows the process one step further; no step repeated.\n- 25-29 s: the finished thing, held, with its own sound (a plate set down, a lid closing).\n- 29-30 s: one on-screen line only, max 6 words, naming the result or the time it took. No CTA of any kind. If a tool or app was used, it is visible; the comments will ask.\n\nWord budget: 0 spoken. On-screen text: the one line at the end.\n\nReturn: a table (time, shot size, what happens, the sound that starts the shot, mic position), then a 3-line recording note (which sounds to record separately, which to keep from camera audio).\n\nProcess: {process}\nSounds in it that I can record cleanly: {list}","example":"Process: making a smash burger. Channel: weeknight cooking.\n\n| Time | Shot size | What happens | Sound that starts the shot | Mic |\n|---|---|---|---|---|\n| 0-3 s | ECU | Ball of meat hits the hot pan | the sizzle | 10 cm from the pan, off to the side |\n| 3-6 s | CU | Spatula presses it flat | the press, metal on metal | same |\n| 6-9 s | ECU | Edge crisps, fat bubbles | bubbling | same |\n| 9-12 s | MS | Hand salts from above | salt landing | overhead |\n| 12-15 s | CU | Spatula scrapes under, flips | the scrape | side |\n| 15-18 s | ECU | Cheese lands, starts to melt | the slap of the slice | side |\n| 18-21 s | CU | Lid on, steam | lid on the pan | side |\n| 21-25 s | CU | Lid off, patty onto the bun | lid off, the soft drop onto bread | side |\n| 25-29 s | CU | Bun top pressed on, burger set on a board | the press, the board | board level |\n| 29-30 s | CU | Hold | silence | | \n\nOn-screen at 29 s: '4 minutes, one pan'.\n\nRecording note: record the sizzle and the scrape separately with the mic close, the room is too loud for the camera track; keep the camera audio for the salt and the lid; shoot everything twice so each cut has a clean sound start.","tips":["Cut on the sound, not on the picture. Start each shot a few frames before its sound so the ear leads the eye.","Life2Film's frame scoring finds the sharpest, best-lit second of each take; for this format that is the shot, and you only pick the order.","A phone's built-in mic clips on the sizzle. A cheap lavalier taped to the counter edge, 10 cm from the pan, is the whole audio setup."],"tags":["asmr","satisfying","process","no-narration","sound","real-footage","reach"],"difficulty":"intermediate","time":"30 min","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/satisfying-process-asmr-format/","markdown":"https://superduperai.co/library/satisfying-process-asmr-format.md"},{"slug":"scenes-not-best-phrases","title":"Scenes, not best phrases: keep the lead-in, the talk and the reaction","description":"Why a reel of good lines confuses everyone who was not there, and the checklist for keeping a scene whole: the lead-in, the talk, the reaction, with filler trimmed only at the ends.","category":"editing","platforms":["youtube","any"],"works_with":["claude-code","capcut","manual"],"prompt":"SCENE, NOT PHRASE, the checklist for every talking segment\n\n1. Find the scene boundaries in the transcript: where the topic starts (someone asks, points, walks in) and where it lands (a laugh, a decision, a silence, a cut in the camera).\n2. Keep the LEAD-IN: the sentence that makes the good line make sense. If the best line is an answer, the question stays.\n3. Keep the REACTION: the two seconds after the line where the other person laughs, nods, or says nothing. That is where the viewer decides the line was good.\n4. Trim filler words only at the ends of a line ('so', 'um', 'yeah so'). Mid-line, cut only when the join lands in silence; a join inside a breath is audible.\n5. Cut stammers and repeats, not thoughts. A sentence restarted twice becomes one sentence; a sentence that explains the previous one stays.\n6. Read the scene as text after the cut: would someone who did not see the raw footage follow it? If a line now answers a question that is gone, the question comes back.\n7. One scene is one continuous audio span under picture cuts. Never rebuild a scene from phrases pulled out of order.","steps":["In the transcript, mark scene start and end for every conversation before choosing anything inside it.","Choose scenes by what happened in them, not by which line sounds best. Then trim inside the scene.","Give the cut scene to a second reader as text only. If they ask 'who is she answering?', restore the lead-in."],"example":"Raw: \"So, what do you think of it?\" / \"Um, I mean... it's fine? It's fine. No, actually, it's the best bread I've had in a year.\" / (laughs) \"You said that in Lisbon.\"\nCut: the question kept, the two false starts cut, \"it's the best bread I've had in a year\" kept, the laugh and \"You said that in Lisbon\" kept.\nThe line alone, without the question and the laugh, is a man talking about bread.","tips":["A best line without its lead-in is the most common note from first viewers: 'what are they talking about?'","A whole scene is longer than a phrase, and the film is better for it. Cut the number of scenes, not their insides."],"skill":"video-edit","tags":["editing","scenes","dialogue","pacing","footage","rules"],"difficulty":"beginner","time":"15 min","verified":false,"created":"2026-11-01","related":["length-follows-the-material","read-the-film-as-text-before-rendering"],"url":"https://superduperai.co/library/scenes-not-best-phrases/","markdown":"https://superduperai.co/library/scenes-not-best-phrases.md"},{"slug":"score-hole-where-live-sound-plays","title":"Score with a hole, not ducking, where something plays live","description":"Cut the score to silence under live music, a laugh or a knock instead of ducking it; ducking is audible, a hole is not. The rule, the measured levels and the ffmpeg line.","category":"music","platforms":["youtube","any"],"works_with":["ffmpeg","capcut","claude-code"],"prompt":"Score rules for this cut:\n1. Chord changes land on the beat nearest a picture cut, not on a bar grid. Parts of the film may run at different tempos; part boundaries sit on cuts too.\n2. Wherever something plays live in the footage (a street musician, a car radio you keep, a band), the score has a HOLE: full silence from {hole_start} to {hole_end} seconds, not a duck. The same for a punchline that lives in a reaction, a knock, a laugh: silence in the score there.\n3. Under speech the score sits about 15 dB below the voice; sidechain it to the voice track so it steps back by itself. Barely audible, and not everywhere.\n4. Mood comes from scale degrees, not tempo. A solitary walk: major sevenths, a minor sixth. A light family film: triads with an added sixth, no minor chord.\n\nffmpeg, the hole on the score track, video stream copied:\nffmpeg -i film.mp4 -i score.wav -filter_complex \"[1:a]volume=enable='between(t,{hole_start},{hole_end})':volume=0[sc];[0:a][sc]amix=inputs=2:duration=first:normalize=0[a]\" -map 0:v -map \"[a]\" -c:v copy -c:a aac film.scored.mp4","steps":["Mark every live-sound window with its start and end in seconds (from the transcript or the waveform) before writing a note of score.","Lay the score as one track, cut the holes, then mix it under the original audio.","Listen to each hole edge with headphones: the score must be gone before the first live note, not fading during it."],"example":"Measured on one film: inside the live-music window the score sat at -91 dB, against -13.6 dB at full level. Ducking is audible; a hole is not.","tips":["A 'major' score came out sad at the right BPM because of its chords. Fix mood in the harmony, not in the tempo.","If someone plays in the footage, lift the harmony from the recording (audio-to-MIDI) and feed it to the score. On noisy street audio expect the key and chords back, not the melody: three models agreed on the key and disagreed on the tune.","In Claude Code, `/video-edit` applies these rules to a folder of clips; the numbers live in its references/sound.md."],"skill":"video-edit","tags":["score","ducking","live-sound","ffmpeg","mixing","video-edit"],"difficulty":"intermediate","time":"20 min","verified":false,"created":"2026-11-01","related":["live-music-one-continuous-audio-span","music-brief-prompt-for-picking-a-track"],"url":"https://superduperai.co/library/score-hole-where-live-sound-plays/","markdown":"https://superduperai.co/library/score-hole-where-live-sound-plays.md"},{"slug":"screen-recording-broll-rules-app-demos","title":"Screen-recording b-roll for app demos: what to record, size, cursor","description":"Rules for screen captures used as cutaways in a product video: real-looking data, output-size or 2x resolution, a slow cursor, one action per clip, and what makes a recording unusable.","category":"broll","platforms":["youtube","linkedin","shorts","reels"],"works_with":["manual","capcut","ffmpeg"],"prompt":"SCREEN-RECORDING B-ROLL, the checklist\n\nBefore recording\n1. Sample data that looks real: names, dates, amounts; no 'test test 123', no lorem ipsum, no empty states unless the empty state is the point.\n2. Notifications off, other windows closed, a clean desktop, the browser with no extensions and no bookmarks bar, the app in light or dark mode matching the film.\n3. Window size equals the final frame or an integer multiple (1920x1080 or 3840x2160 for 16:9; a phone recorded on the device for 9:16). Non-integer scaling blurs UI text.\n4. Frame rate 60 fps if the app animates (scroll, transitions); 30 is enough for static screens.\n\nWhile recording\n5. One action per clip, named by the action (import-tap.mov, export-done.mov). Start 1 s before the action, hold 2 s after the result appears.\n6. Cursor: slow, straight lines, a pause of about 0.5 s before each click, no circling. Hide the cursor when the clip is about the result, not the action.\n7. Type at a steady pace or paste; real typing with corrections reads as nervous.\n8. Never scroll fast. A scroll is a camera move: slow, one direction, stop on the thing.\n\nAfter\n9. Crop to the region that matters (the window, not the desktop) and scale once, to the output size.\n10. Check a frame at 100 percent: readable text, no moire from scaling, no private data in a tab title, menu or notification.\n\nUnusable: a cursor that hunts, personal data on screen, a recording smaller than the output frame.","steps":["Write the action list from the demo script (one action per row), then record each action as its own clip, in order.","Trim to one second before and two seconds after with a stream copy (`ffmpeg -ss <start> -t <len> -i in.mov -c copy clip.mp4` cuts at keyframes; re-encode only if the cut must be frame-exact).","Lay the clips over the narration as cutaways in silent windows; the result shot gets the longest hold."],"tips":["On macOS a screen recording often has no audio track; `ffprobe` the file before assuming the system sound is there.","A phone demo recorded on the phone and left native 9:16 is the one cutaway that needs no reframing; do not crop a desktop recording to vertical."],"tags":["screen-recording","app-demo","b-roll","cursor","resolution","saas"],"difficulty":"beginner","time":"15 min","verified":false,"created":"2026-11-01","related":["screen-recording-demo-script-app","mentioned-object-must-be-seen-checklist"],"url":"https://superduperai.co/library/screen-recording-broll-rules-app-demos/","markdown":"https://superduperai.co/library/screen-recording-broll-rules-app-demos.md"},{"slug":"screen-recording-demo-script-app","title":"Screen-recording demo script for an app: what to click, what to say, when","description":"A prompt that writes a demo script where every spoken line is paired with one on-screen action, so the recording is done in one pass and the narration recorded over it afterwards.","category":"scripts","platforms":["youtube","linkedin","shorts","any"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a screen-recording demo script for {app} that shows {the one job it does} in {60-90} seconds. The recording is the picture; the narration is recorded separately over it.\n\nOutput a table: Time | Action on screen (what I click, type or scroll) | Narration (what is said during this action) | Hold (seconds the result stays on screen).\n\nRules:\n- Start on the result, not the login screen: the first 5 s show the finished thing, then cut to the start.\n- One action per row. 'Open settings and change the language' is two rows.\n- Narration describes what the viewer sees and why it matters, never 'now I click'. Max 18 words per row.\n- Every row where a result appears gets a Hold of at least 2 s. No row shorter than 2 s.\n- No feature that is not needed for {the one job}. Mention the others in one closing line at most.\n- End on the result again, with the URL spoken once.\n\nContext about the app:\n{paste README or feature list}","steps":["Prepare the app state before recording: sample data that looks real, notifications off, a clean desktop, the window at the final export size.","Record the actions following the table without talking. Then read the narration over the recording and stretch holds in the edit where the voice runs long.","Cursor: slow, straight lines, a pause before each click. A fast cursor is the one thing viewers notice and remember."],"tips":["Record at the output size or an integer multiple of it; non-integer scaling blurs UI text.","For an iOS app, record on the Simulator or mirror the device; for web, a clean browser profile with no extensions."],"tags":["demo","screen-recording","app","script","saas","narration"],"difficulty":"beginner","time":"15 min","verified":false,"created":"2026-11-01","related":["screen-recording-broll-rules-app-demos","promo-script-30-45-seconds-template"],"url":"https://superduperai.co/library/screen-recording-demo-script-app/","markdown":"https://superduperai.co/library/screen-recording-demo-script-app.md"},{"slug":"screen-recording-walkthrough-format","title":"Screen-recording walkthrough: 45 seconds, one outcome, zoom on every click","description":"The faceless screen walkthrough that stays watchable because every click is zoomed and labelled and the outcome is shown first. The prompt returns the click list, the zoom plan and the voice-over.","category":"formats","platforms":["shorts","tiktok","reels","youtube","linkedin"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a screen-recording walkthrough script for {outcome} in {app or workflow}. The format works when the viewer can follow every click at phone size, so each click gets a zoom and a label and the dead time between clicks is cut.\n\nStructure (45 s, 9:16 crop of a screen recording, or 16:9 for YouTube):\n- 0-3 s OUTCOME: the finished state on screen. Spoken: 'Here is how to get {outcome} in {N} clicks.' On-screen: '{N} clicks'.\n- 3-6 s START: the starting screen, full. One line on where we are.\n- 6-38 s CLICKS: {N} clicks (4 to 7). For each: zoom to 200% on the element 0.5 s before the click, hold 1 s after, cut the waiting. Spoken line per click, max 8 words, imperative. On-screen: the click number and the element name as typed in the app ('Export', 'Cut out'). If a value is typed, show it as text on screen.\n- 38-43 s OUTCOME AGAIN: the result, with one line on what to do with it.\n- 43-45 s CLOSE: 'Saved? Try it on your next one.' No download ask in a walkthrough; the app is on screen the whole time.\n\nWord budget: 75-85 words at 165 wpm; silence between clicks is fine, music under at low level.\n\nReturn: the click list (element, what happens) so I can rehearse, then a table (time, screen state, zoom target, spoken line, on-screen label), then a one-line title for YouTube under 60 characters.\n\nOutcome: {outcome}\nApp or workflow: {app or workflow}\nClicks as I do them: {rough list}","example":"Outcome: a weekly meal plan exported as a shopping list. App: a recipe notes app.\n\nClicks: 1 open 'This week', 2 tap '+' and pick 5 recipes, 3 tap 'Shopping list', 4 tap 'Merge duplicates', 5 tap 'Share' to the reminders app.\n\n| Time | Screen | Zoom | Spoken line | Label |\n|---|---|---|---|---|\n| 0-3 s | Shopping list in reminders, 23 items | none | Five recipes to one shopping list in five taps. | 5 TAPS |\n| 3-6 s | App home | none | Start on the home screen. | |\n| 6-12 s | 'This week' tab | the tab | Open This week. | 1 · THIS WEEK |\n| 12-20 s | Recipe picker, five selected | the '+' then the picker | Tap plus, pick your five. | 2 · + ADD RECIPES |\n| 20-26 s | Shopping list, 31 items | the button | Tap Shopping list. | 3 · SHOPPING LIST |\n| 26-32 s | Same list, 23 items | the toggle | Merge duplicates. Three onions become one line. | 4 · MERGE DUPLICATES |\n| 32-38 s | Share sheet | the share icon | Share to reminders. | 5 · SHARE |\n| 38-43 s | Reminders app, 23 items, checkboxes | none | That's the shop. Tick them off in the aisle. | |\n| 43-45 s | Same | none | Saved? Try it on Sunday. | |\n\nYouTube title: 5 recipes to one shopping list in 5 taps","tips":["Record at the device's native resolution and crop to 9:16 in the edit; a 16:9 recording squeezed into vertical is unreadable on a phone.","Cut every pause longer than 0.5 s between clicks. Loading spinners are where viewers leave.","In Claude Code, `/video-promo` assumes screen recording as the primary footage and writes the shot list; use this prompt for the per-click zoom plan it does not produce."],"tags":["screen-recording","walkthrough","faceless","tutorial","shorts","youtube","convert"],"difficulty":"beginner","time":"20 min","skill":"video-promo","verified":false,"created":"2026-11-01","related":["watch-me-use-it-product-demo-format","tutorial-in-30-seconds-format"],"url":"https://superduperai.co/library/screen-recording-walkthrough-format/","markdown":"https://superduperai.co/library/screen-recording-walkthrough-format.md"},{"slug":"script-to-storyboard-json-cut","title":"Write the cut as a script, not a timeline: the JSON storyboard prompt","description":"An agent prompt that writes the edit of real footage as a small JSON file: which sentences, which cover shots, what the cold open is. A complaint becomes a one-line edit, and the render repeats.","category":"scripts","platforms":["youtube","shorts","reels"],"works_with":["claude-code","claude"],"prompt":"You are the editor. Below is the day's speech as numbered sentences (clip id, sentence number, start, end, text). Write the cut as a script, not a timeline: a JSON object that a render script will read. Do not output timecodes for the whole film; output decisions.\n\nShape:\n{\n  \"title\": \"\",\n  \"cold_open\": [ {\"clip\": \"\", \"in\": \"mm:ss.s\", \"out\": \"mm:ss.s\", \"why\": \"\"} ],\n  \"hook\": {\"clip\": \"\", \"sentence\": 0, \"line\": \"\"},\n  \"scenes\": [\n    {\n      \"name\": \"\",\n      \"clip\": \"\",\n      \"sentences\": [0],\n      \"cover\": [ {\"from_clip\": \"\", \"in\": \"\", \"out\": \"\", \"over_sentence\": 0, \"shows\": \"\"} ],\n      \"live_sound\": false\n    }\n  ],\n  \"silent_walks\": [ {\"clip\": \"\", \"in\": \"\", \"out\": \"\", \"keep_own_sound\": true} ],\n  \"cut_clips\": [ {\"clip\": \"\", \"reason\": \"\"} ]\n}\n\nRules:\n- cold_open: 8-10 seconds total, from the best frames, no speech.\n- hook: one sentence with a twist, said right after the cold open.\n- scenes: whole conversations (lead-in, the talk, the reaction), never a best phrase alone.\n- cover: only over sentences where the speaker's lips are not on camera; the cover shot comes from the same place within minutes of the line and shows what the line says.\n- Every clip appears somewhere, or in cut_clips with a reason.\n- Do not stretch to a target length.\n\nSentences:\n{paste numbered sentences}","steps":["Produce the numbered sentences first: transcribe every clip with word timings, then number them in shooting order (see 'The day as one text file').","Save the agent's JSON as cut.json beside the clips. Render from it with your script or editor; never hand-edit the timeline.","When someone says 'the bread is mentioned and never shown', add one cover entry and re-render. That is the whole point."],"tips":["The JSON forces the agent to decide; a timeline lets it hide the decisions inside timecodes.","In Claude Code `/video-edit` works this way end to end: sidecar analysis, the day as text, the cut as JSON, render, masters per platform."],"skill":"video-edit","tags":["editing","storyboard","json","agent","montage","workflow","footage"],"difficulty":"advanced","time":"30 min","verified":false,"created":"2026-11-01","related":["day-as-one-text-file-story-and-cut-prompt","cutaway-rule-same-place-same-time","cold-open-then-hook-contact-sheet"],"url":"https://superduperai.co/library/script-to-storyboard-json-cut/","markdown":"https://superduperai.co/library/script-to-storyboard-json-cut.md"},{"slug":"shot-list-table-generator-prompt","title":"Shot list generator: a table with shot, duration, visual, audio and overlay","description":"An agent prompt that turns any script into a numbered shot table a camera operator or a video model can follow: one visual, one audio line and one text overlay per row, durations that add up.","category":"scripts","platforms":["any"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Turn the script below into a shot list. Output a markdown table with these columns, in this order: Shot | Duration (s) | Visual | Audio | Text overlay.\n\nRules:\n- One row per shot. A shot is one camera position or one screen state; a new screen or a new angle is a new row.\n- Duration is a whole number of seconds. The column must sum to {total length in seconds}.\n- Visual: shot size (wide / medium / close-up / screen recording of {app}) plus one action, in under 15 words.\n- Audio: the exact words spoken over this shot, or 'music only', or 'natural sound'. Every sentence of the script must appear in exactly one row.\n- Text overlay: max 6 words, or 'none'. Never repeat the audio word for word; the overlay carries the number or the name, the audio carries the sentence.\n- Mark the hook row and the CTA row in the Shot column (H and CTA).\n\nAfter the table, list what needs to be recorded or generated, one line per asset, with the shot numbers it serves.\n\nScript:\n{paste script}","steps":["Paste the script with its timings. Without a total length the durations drift upward.","Check that the duration column sums to the target before recording anything; agents round up.","Save the table beside the clips as shots.md; it is the edit decision list when you assemble."],"example":"| Shot | Duration (s) | Visual | Audio | Text overlay |\n|---|---|---|---|---|\n| H | 3 | Close-up, phone screen scrolling a camera roll fast | \"Hours of video. Zero films.\" | none |\n| 2 | 7 | Screen recording: dragging a folder in, a progress bar | \"You shot it. Then it sat there.\" | 1,400 clips |\n| 3 | 5 | Screen recording: the scene list appears, thumbnails fill in | \"It finds the thirty seconds worth watching.\" | On device |","tips":["Ask for the overlay column even when you plan no text. It forces one idea per shot, which is what makes a cut feel fast.","For generated video, feed each Visual cell into the 7-part prompt structure; the table is already one beat per shot."],"skill":"video-promo","tags":["shot-list","table","script","storyboard","agent","planning"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["promo-script-30-45-seconds-template","video-prompt-structure-seven-parts"],"url":"https://superduperai.co/library/shot-list-table-generator-prompt/","markdown":"https://superduperai.co/library/shot-list-table-generator-prompt.md"},{"slug":"side-by-side-comparison-format","title":"Comparison: two ways to do one thing, side by side, same task, same clock","description":"The split-screen comparison that is fair enough to be believed: identical task, identical start, a visible timer, a verdict earned on screen. Prompt returns the script and the fairness checks.","category":"formats","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a side-by-side comparison script: {option A} vs {option B} for {task}. The format works when the viewer believes it was fair, so the fairness is part of the script. Use this format when one option replaces something slower or more expensive; use a generic name for the other option ('the usual way', 'a desktop editor'), never a competitor's brand.\n\nStructure (40 s, 9:16 split top/bottom, or 16:9 split left/right):\n- 0-3 s: the question, spoken and on screen: '{A} or {B} for {task}?' Both halves show the starting state, identical.\n- 3-6 s: the rules, on screen as a 3-line list: same file / same start / timer on both. Spoken: 'Same photo, same start, clock running.'\n- 6-30 s: the task, both halves running at once. A timer in each half. Spoken lines only when one side reaches a step: 'A is done cutting out. B is still selecting.' Max 6 lines, max 12 words each.\n- 30-36 s: results side by side, timers frozen. Spoken: the two times and one difference you can see.\n- 36-40 s: verdict in one sentence, with the case where the loser is still the right choice (one clause). No download ask; the result is the argument. Comment ask: 'what would you compare next?'\n\nWord budget: 80-90 words at 165 wpm. On-screen: the question, the rules list, two timers, the two final times, the verdict in 5 words.\n\nReturn: the fairness checklist (what must be identical), then a table (time, left/top half, right/bottom half, spoken line, on-screen text).\n\nOption A: {option A}\nOption B: {option B}\nTask: {task}\nWhat I expect to find: {honest guess, including where B wins}","example":"A: a background-removal photo app on a phone. B: the usual way, a desktop editor with a selection tool. Task: three product photos on white.\n\nFairness checklist: same three photos sent to both devices, both start from the file open, timers start on the first tap or click, no pre-made selections, both exported at the same size.\n\n| Time | Top (phone app) | Bottom (desktop) | Spoken | On-screen |\n|---|---|---|---|---|\n| 0-3 s | Photo 1 open | Photo 1 open | Phone app or desktop editor for three listing photos? | PHONE vs DESKTOP |\n| 3-6 s | Finger hovering | Cursor hovering | Same photos, same start, clocks running. | SAME FILES · SAME START · TIMER |\n| 6-12 s | Tap, background drops | Selection tool tracing the handle | Phone's done with one. Desktop is still on the handle. | 0:06 / 0:06 |\n| 12-20 s | Photo 2, 3 done | Still refining the edge of photo 1 | Two and three. Desktop, edge of number one. | 0:20 / 0:20 |\n| 20-30 s | Export, done, timer stops | Photo 2 selection | Phone stops at thirty-one seconds. | 0:31 / 0:30 |\n| 30-36 s | Three results | Three results, timer stopped later | Thirty-one seconds against four minutes ten. Look at the handle edge: the desktop one is cleaner. | 0:31 vs 4:10 |\n| 36-40 s | | | Phone for a listing. Desktop when the edge is the product. What should I compare next? | PHONE FOR LISTINGS |","tips":["Name the case where the loser wins. A comparison with no concession reads as an ad and gets argued with instead of shared.","Run the slower side for real and speed up the footage with a visible label. Cutting it short makes the result a claim instead of a measurement."],"tags":["comparison","side-by-side","split-screen","convert","trust","tiktok","youtube"],"difficulty":"intermediate","time":"20 min","verified":false,"created":"2026-11-01","related":["before-after-reveal-format"],"url":"https://superduperai.co/library/side-by-side-comparison-format/","markdown":"https://superduperai.co/library/side-by-side-comparison-format.md"},{"slug":"silent-text-on-screen-story-format","title":"Silent text-on-screen story: 25 seconds, one line per shot, paced for reading","description":"The no-voice format that works with sound off because the text is the narration; the prompt paces each line to its shot at 2 words a second and puts the turn on the second-last card.","category":"formats","platforms":["tiktok","reels","shorts"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a silent text-on-screen story about {topic}. The format works because most feeds autoplay muted; the text is the whole story, so every line is written to be read, not heard. Pacing rule: a viewer reads about 2 words per second on a phone, so a line of 8 words needs a 4-second shot. Lines are max 9 words.\n\nStructure (25 s, 9:16, 7-8 shots, music or ambient under, no voice):\n- Card 1 (0-3 s): the situation in one line, present tense, second person or first ('day 1 of learning to draw at 34'). The shot is the subject already in action.\n- Cards 2-5 (3-17 s): one line each, each a step or a day. The shot shows the thing the line names. Lines get slightly shorter as they go.\n- Card 6 (17-21 s): the turn: the result, the surprise, or the failure. 4-6 words.\n- Card 7 (21-25 s): the landing: one line that gives the viewer something to do or think. No download ask; if an app is in the shots it is in the shots.\n\nWord budget: 45-55 words on screen total. Each card's duration = word count / 2, rounded up, minimum 3 s.\n\nReturn: a table (card, duration, text line, what the shot shows, text position: upper third / centre / lower third), then a note on the font (one sans-serif, white with a soft shadow, 48-60 px at 1080 wide) and the safe zones to avoid (the bottom 20 percent and the right edge).\n\nTopic: {topic}\nThe turn: {what happens on card 6}","example":"Topic: a 30-day drawing habit. Turn: day 30 looks worse than day 12, and that is fine.\n\n| Card | Duration | Text | Shot | Position |\n|---|---|---|---|---|\n| 1 | 4 s | day 1 of learning to draw at 34 | A hand drawing a crooked cup on a kitchen table | upper third |\n| 2 | 3 s | ten minutes before work. every day. | Alarm on a phone, 06:50, the sketchbook beside it | centre |\n| 3 | 4 s | day 6. the cup still looks like a bucket. | A page of cups, all wrong | lower third |\n| 4 | 3 s | day 12. one of them looks like a cup. | A single decent cup, finger pointing | centre |\n| 5 | 3 s | day 20. tried a face. regret. | A bad face, page half-covered by the hand | upper third |\n| 6 | 4 s | day 30 is worse than day 12 | Two pages side by side, day 12 and day 30 | centre |\n| 7 | 4 s | because day 30 is a face, not a cup. | Hand closes the book, writes '31' on the next page | lower third |\n\nFont: one sans-serif, white, soft shadow, 56 px at 1080 wide. Keep text out of the bottom 20 percent (captions and buttons) and 10 percent off the right edge (icons).","tips":["Read every card aloud at a normal pace with a timer. If the card ends before you finish, the shot is too short.","Lowercase reads as diary; uppercase reads as a headline. Pick one for the whole video.","Add the platform's own captions anyway: the text is the story, but a subtitle track is what the accessibility settings read."],"tags":["text-on-screen","silent","sound-off","story","no-narration","tiktok","reels"],"difficulty":"beginner","time":"15 min","verified":false,"created":"2026-11-01","related":["pov-format-script"],"url":"https://superduperai.co/library/silent-text-on-screen-story-format/","markdown":"https://superduperai.co/library/silent-text-on-screen-story-format.md"},{"slug":"sixty-second-founder-update-script","title":"60-second founder update: the script prompt for a weekly build-in-public clip","description":"A prompt that writes a 60-second talking-head update from your week's notes: the number first, one thing that broke, one thing shipped, one ask. About 150 words, no greeting.","category":"scripts","platforms":["linkedin","tiktok","reels","shorts","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a 60-second founder update script from the notes below. About 150 words at 150 words per minute (a parameter; adjust to how fast I actually talk).\n\nStructure:\n0:00-0:05 Open with the number of the week (a metric, a count, a date). No greeting, no name, no 'this week'.\n0:05-0:25 What broke or what I learned: one concrete incident, what I thought, what was true.\n0:25-0:45 What shipped: one feature or decision, said as what a user can now do, not what I did.\n0:45-0:55 What is next: one line.\n0:55-1:00 One ask: a question the viewer can answer in a comment, or a link.\n\nRules: short sentences, max 14 words each. Spoken English, contractions allowed. No adjectives about the company. Numbers as spoken words. Mark two moments where I should cut to a screen recording, with what is on screen.\n\nNotes:\n{paste the week's notes, commits, metrics}","steps":["Paste raw notes: commit messages, a metric from the dashboard, a support thread. The agent should pick the number; you should veto it.","Record in one take at the end of the week, straight to camera, phone at eye level. Re-record only if a sentence is wrong, not if it is imperfect.","Cut in the two screen-recording cutaways where the script marks them."],"tips":["The number goes first because it works with the sound off and tells regulars whether this week is worth a minute.","If the week had no number, the update has no hook; post the 'what broke' story alone as 30 seconds."],"tags":["founder","build-in-public","update","script","talking-head","linkedin"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["talking-head-avatar-script-prompt","rewrite-script-to-55-words-20-seconds"],"url":"https://superduperai.co/library/sixty-second-founder-update-script/","markdown":"https://superduperai.co/library/sixty-second-founder-update-script.md"},{"slug":"skill-content-gen","title":"Turn an article or PRD into a social media pack (/content-gen)","description":"Use when \"create content\", \"write LinkedIn post\", \"social media pack\", \"marketing copy\", \"promotion content\", \"posts from this article\", \"repurpose this post\", \"посты из статьи\", or need soc","category":"skills","platforms":["linkedin","any"],"works_with":["claude-code"],"prompt":"/content-gen {path-to-article-or-prd}\n\nMake a social pack from this: 3 LinkedIn posts (different angles), 5 short captions for Reels/TikTok with hooks in the first line, and one thread. No hashtag walls, no emoji in LinkedIn posts, a number in every hook where one exists in the source. Mark which claims come from the source and which are mine.","install":"npx skills add fortunto2/solo-factory/content-gen","steps":["Install the skill into Claude Code with the line above (or all of solo-factory: npx skills add fortunto2/solo-factory --all).","Run it when: A published write-up should become posts, captions and threads.","The skill asks for what it needs and writes its output into the project; read the summary it prints before trusting the files."],"example":"Generate a promotion content pack from a project's PRD or README. Produces 3 ready-to-use content pieces: LinkedIn post, Reddit answer draft, and Twitter/X thread. For video scripts, use `/video-promo`.","tips":["Source and the full instructions: github.com/fortunto2/solo-factory/tree/main/skills/content-gen (v1.3.0).","Skills are prompts, not programs: read SKILL.md once, then you know exactly what the agent will do."],"skill":"content-gen","tags":["skill","claude-code","solo-factory","social","posts","linkedin","repurpose","captions"],"difficulty":"beginner","time":"10 min","source":"https://github.com/fortunto2/solo-factory/tree/main/skills/content-gen","source_label":"solo-factory/skills/content-gen (MIT)","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/skill-content-gen/","markdown":"https://superduperai.co/library/skill-content-gen.md"},{"slug":"skill-creator-growth","title":"Plan short-form growth for an app: founder-led first, creators after a signal (/creator-growth)","description":"Plan growth for a consumer app through short vertical video — founder-led content first, paid UGC creators only after a measured signal.","category":"skills","platforms":["tiktok","reels","shorts"],"works_with":["claude-code"],"prompt":"/creator-growth {project-name}\n\nRead the real funnel numbers first (launches, core action, paywall, purchases). Apply the budget gate: retainer ÷ net revenue per sale. If we are an order of magnitude below payback, plan Phase 1 only: founder-led, 4 formats, 1-2 posts a day, 2-3 niche accounts, one campaign link per platform × account. Write docs/marketing.md with the arithmetic and the Phase 2 trigger as a number.","install":"npx skills add fortunto2/solo-factory/creator-growth","steps":["Install the skill into Claude Code with the line above (or all of solo-factory: npx skills add fortunto2/solo-factory --all).","Run it when: The app works but nobody installs it, and you are deciding whether to pay creators.","The skill asks for what it needs and writes its output into the project; read the summary it prints before trusting the files."],"example":"Most app software can now be copied in a weekend; distribution is the moat. For consumer apps in 2026 the channel that moves installs is short vertical video made by people on camera (UGC). Agencies run it at scale with hundreds of paid creators. A bootstrapped app cannot afford that, but it can run the same playbook with its founder and a few niche accounts, and buy creators only once one format has proved it converts.","tips":["Source and the full instructions: github.com/fortunto2/solo-factory/tree/main/skills/creator-growth (v1.0.0).","Skills are prompts, not programs: read SKILL.md once, then you know exactly what the agent will do."],"skill":"creator-growth","tags":["skill","claude-code","solo-factory","growth","ugc","creators","tiktok","campaign-links","measurement"],"difficulty":"intermediate","time":"30 min","source":"https://github.com/fortunto2/solo-factory/tree/main/skills/creator-growth","source_label":"solo-factory/skills/creator-growth (MIT)","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/skill-creator-growth/","markdown":"https://superduperai.co/library/skill-creator-growth.md"},{"slug":"skill-humanize","title":"Strip AI patterns from a script or caption so it reads like a person (/humanize)","description":"Use when \"humanize this\", \"make it sound human\", \"strip AI patterns\", \"clean up the copy\", or text reads like AI-generated output with em dashes and stock phrases.","category":"skills","platforms":["any"],"works_with":["claude-code"],"prompt":"/humanize {path-to-script-or-captions}\n\nStrip AI patterns from this script: em dashes, triplets, 'unlock' and 'elevate', the hedging sandwich, filler openers. Keep every number, name and caveat. It must read like the founder said it on camera in one take.","install":"npx skills add fortunto2/solo-factory/humanize","steps":["Install the skill into Claude Code with the line above (or all of solo-factory: npx skills add fortunto2/solo-factory --all).","Run it when: A generated script or caption sounds like a model wrote it.","The skill asks for what it needs and writes its output into the project; read the summary it prints before trusting the files."],"example":"Strip AI writing patterns from user-facing text. Takes a file or pasted text and rewrites it to read like a human wrote it, without losing meaning or structure.","tips":["Source and the full instructions: github.com/fortunto2/solo-factory/tree/main/skills/humanize (v1.1.0).","Skills are prompts, not programs: read SKILL.md once, then you know exactly what the agent will do."],"skill":"humanize","tags":["skill","claude-code","solo-factory","copy","script","captions","editing","tone"],"difficulty":"beginner","time":"5 min","source":"https://github.com/fortunto2/solo-factory/tree/main/skills/humanize","source_label":"solo-factory/skills/humanize (MIT)","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/skill-humanize/","markdown":"https://superduperai.co/library/skill-humanize.md"},{"slug":"skill-landing-gen","title":"Write a landing page with copy, SEO, JSON-LD and a cookieless counter (/landing-gen)","description":"Turn a PRD into a landing page that converts and ships honest. One batch of intake questions, section-by-section copy with A/B headlines, a type, spacing, radius and motion system on Tailwind…","category":"skills","platforms":["any"],"works_with":["claude-code"],"prompt":"/landing-gen {project-name}\n\nFrom docs/prd.md: hero with A/B headlines, section-by-section copy, type and spacing system, JSON-LD, llms.txt and a cookieless counter. Only claims the PRD supports; grep the result for 'seamless', 'robust', 'game-changer' and remove them.","install":"npx skills add fortunto2/solo-factory/landing-gen","steps":["Install the skill into Claude Code with the line above (or all of solo-factory: npx skills add fortunto2/solo-factory --all).","Run it when: A product needs a page that converts and ships honest.","The skill asks for what it needs and writes its output into the project; read the summary it prints before trusting the files."],"example":"One page, one offer, one audience, one primary action. This skill takes a project's PRD to a landing page that says one thing, is set on a system rather than by eye, and ships with the parts that usually get forgotten: honest proof, JSON-LD, the files agents read, and a counter that needs no cookie banner. With astro-static or Next.js it builds the page; otherwise it writes the content file.","tips":["Source and the full instructions: github.com/fortunto2/solo-factory/tree/main/skills/landing-gen (v1.2.0).","Skills are prompts, not programs: read SKILL.md once, then you know exactly what the agent will do."],"skill":"landing-gen","tags":["skill","claude-code","solo-factory","landing","copy","seo","launch"],"difficulty":"intermediate","time":"30 min","source":"https://github.com/fortunto2/solo-factory/tree/main/skills/landing-gen","source_label":"solo-factory/skills/landing-gen (MIT)","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/skill-landing-gen/","markdown":"https://superduperai.co/library/skill-landing-gen.md"},{"slug":"skill-stem-split","title":"Separate vocals, music and drums from a recording (/stem-split)","description":"Separate a song or a film's soundtrack into stems (vocals, drums, bass, other) with Demucs, locally, on the Apple GPU when there is one.","category":"skills","platforms":["youtube","any"],"works_with":["claude-code"],"prompt":"/stem-split {file.mp4}\n\nSeparate vocals, drums, bass and other. I need a version of the clip with the background music removed and the speech kept, levelled to -16 LUFS, so the upload is not claimed. Keep the original untouched; write the result next to it with a suffix.","install":"npx skills add fortunto2/solo-factory/stem-split","steps":["Install the skill into Claude Code with the line above (or all of solo-factory: npx skills add fortunto2/solo-factory --all).","Run it when: Other people's music must come out of a clip, or a voice needs isolating.","The skill asks for what it needs and writes its output into the project; read the summary it prints before trusting the files."],"example":"Any track becomes `vocals.wav`, `drums.wav`, `bass.wav`, `other.wav` (44.1 kHz stereo) with Meta's `htdemucs`. Nothing is uploaded; the model downloads once.","tips":["Source and the full instructions: github.com/fortunto2/solo-factory/tree/main/skills/stem-split (v1.0.0).","Skills are prompts, not programs: read SKILL.md once, then you know exactly what the agent will do."],"skill":"stem-split","tags":["skill","claude-code","solo-factory","audio","stems","demucs","music","copyright"],"difficulty":"intermediate","time":"10 min","source":"https://github.com/fortunto2/solo-factory/tree/main/skills/stem-split","source_label":"solo-factory/skills/stem-split (MIT)","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/skill-stem-split/","markdown":"https://superduperai.co/library/skill-stem-split.md"},{"slug":"skill-transcribe","title":"Transcribe audio and video locally with word timings (/transcribe)","description":"Transcribe audio or video to text locally — on the Apple GPU with mlx-whisper large-v3, or faster-whisper on CPU/CUDA — with the language decided per stretch of speech, .srt subtitles, word…","category":"skills","platforms":["youtube","any"],"works_with":["claude-code"],"prompt":"/transcribe {file-or-folder}\n\nTranscribe locally with word timings. Keep a glossary of names so the model stops turning them into celebrities: {Name1, Name2}. Output .srt beside each file, plus one day.txt with every sentence numbered by clip and order, which I will read as a script.","install":"npx skills add fortunto2/solo-factory/transcribe","steps":["Install the skill into Claude Code with the line above (or all of solo-factory: npx skills add fortunto2/solo-factory --all).","Run it when: You need the speech of a recording as text with timestamps, on your machine.","The skill asks for what it needs and writes its output into the project; read the summary it prints before trusting the files."],"example":"Any ffmpeg-decodable file becomes `<name>.txt` (`[MM:SS] (lang) text`), `<name>.srt`, and on request `<name>.words.json` with per-word timings, the input a video edit needs. Audio never leaves the machine; the only network step is a one-time model download.","tips":["Source and the full instructions: github.com/fortunto2/solo-factory/tree/main/skills/transcribe (v1.0.1).","Skills are prompts, not programs: read SKILL.md once, then you know exactly what the agent will do."],"skill":"transcribe","tags":["skill","claude-code","solo-factory","transcript","stt","subtitles","srt","whisper"],"difficulty":"beginner","time":"5 min","source":"https://github.com/fortunto2/solo-factory/tree/main/skills/transcribe","source_label":"solo-factory/skills/transcribe (MIT)","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/skill-transcribe/","markdown":"https://superduperai.co/library/skill-transcribe.md"},{"slug":"skill-video-edit","title":"Edit real footage into a film with the agent as the editor (/video-edit)","description":"Edit real footage into a film with the agent as the editor — read the day's speech as text, write the cut as a script, lay cutaways that match the words, score it, strip other people's music, and…","category":"skills","platforms":["youtube","reels","any"],"works_with":["claude-code"],"prompt":"/video-edit ./clips\n\nCut a {2-minute} trailer of this day. Read all speech as one text first and propose the story before touching a timeline. Cold open from the best 8-10 s, then one hook line. Every clip must appear at least once; list the ones you cut and why. Voice as one continuous track, cutaways only in silent windows. Render masters for YouTube and 9:16, then show me the contact sheet of cutaways with the line under each.","install":"npx skills add fortunto2/solo-factory/video-edit","steps":["Install the skill into Claude Code with the line above (or all of solo-factory: npx skills add fortunto2/solo-factory --all).","Run it when: A folder of clips should become a trailer, an episode or a trip film.","The skill asks for what it needs and writes its output into the project; read the summary it prints before trusting the files."],"example":"A folder of clips becomes a trailer, a longer episode, or a film of a whole trip. The tools do the boring part (shots, quality, beats, speech); the agent picks the story; the person judges. Every rule below was paid for by a cut someone called boring or broken. If the project has its own editing skill, that one holds the commands; this one holds the rules.","tips":["Source and the full instructions: github.com/fortunto2/solo-factory/tree/main/skills/video-edit (v1.0.5).","Skills are prompts, not programs: read SKILL.md once, then you know exactly what the agent will do."],"skill":"video-edit","tags":["skill","claude-code","solo-factory","editing","montage","ffmpeg","transcript","cutaways","delivery"],"difficulty":"advanced","time":"1-3 h per film","source":"https://github.com/fortunto2/solo-factory/tree/main/skills/video-edit","source_label":"solo-factory/skills/video-edit (MIT)","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/skill-video-edit/","markdown":"https://superduperai.co/library/skill-video-edit.md"},{"slug":"skill-video-promo","title":"Write a 30-45 s promo video script and storyboard from a product (/video-promo)","description":"Use when \"create video\", \"promo video\", \"video script\", \"storyboard\", \"demo video\", \"product video plan\", or need video marketing material. Do NOT use for social media text posts (/content-g","category":"skills","platforms":["reels","tiktok","shorts"],"works_with":["claude-code"],"prompt":"/video-promo {project-name}\n\nRead docs/prd.md and the README. Before scripting, write the goal (what the viewer should do), the hook type, 3 demo moments and the emotion arc. Then a 30-45 s vertical script: HOOK 0-3 s, PROBLEM 3-10 s, DEMO 10-25 s (3 shots), CTA 25-30 s, 75-100 words of narration. Output docs/video-promo.md with the assets checklist.","install":"npx skills add fortunto2/solo-factory/video-promo","steps":["Install the skill into Claude Code with the line above (or all of solo-factory: npx skills add fortunto2/solo-factory --all).","Run it when: A product needs a short vertical promo and you have a README or PRD.","The skill asks for what it needs and writes its output into the project; read the summary it prints before trusting the files."],"example":"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.","tips":["Source and the full instructions: github.com/fortunto2/solo-factory/tree/main/skills/video-promo (v1.1.1).","Skills are prompts, not programs: read SKILL.md once, then you know exactly what the agent will do."],"skill":"video-promo","tags":["skill","claude-code","solo-factory","script","storyboard","promo","product-video","shot-list"],"difficulty":"beginner","time":"10 min","source":"https://github.com/fortunto2/solo-factory/tree/main/skills/video-promo","source_label":"solo-factory/skills/video-promo (MIT)","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/skill-video-promo/","markdown":"https://superduperai.co/library/skill-video-promo.md"},{"slug":"skill-youtube-channel","title":"Upload, title, chapter and track videos on a YouTube channel (/youtube-channel)","description":"Run a solo founder's YouTube channel from the terminal — upload through the YouTube Data API, subtitles as tracks, thumbnails, publish, bulk hide, link Shorts to the long video, and read the…","category":"skills","platforms":["youtube"],"works_with":["claude-code"],"prompt":"/youtube-channel upload {file.mp4}\n\nTitle under 60 characters, a description that starts with the real shooting date, chapters from the transcript, playlist {name}. Publish as private first; after I have watched it on a phone, switch to public.","install":"npx skills add fortunto2/solo-factory/youtube-channel","steps":["Install the skill into Claude Code with the line above (or all of solo-factory: npx skills add fortunto2/solo-factory --all).","Run it when: A finished film should go up with the right metadata and be watched afterwards.","The skill asks for what it needs and writes its output into the project; read the summary it prints before trusting the files."],"example":"General principles for running a YouTube channel with an agent: what to check before an upload, how the API behaves, how Shorts and long videos feed each other, and how to turn analytics into decisions. Learned on a real channel over a month of daily uploads; every rule below cost a mistake first.","tips":["Source and the full instructions: github.com/fortunto2/solo-factory/tree/main/skills/youtube-channel (v1.0.0).","Skills are prompts, not programs: read SKILL.md once, then you know exactly what the agent will do."],"skill":"youtube-channel","tags":["skill","claude-code","solo-factory","youtube","upload","chapters","analytics","publishing"],"difficulty":"beginner","time":"15 min","source":"https://github.com/fortunto2/solo-factory/tree/main/skills/youtube-channel","source_label":"solo-factory/skills/youtube-channel (MIT)","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/skill-youtube-channel/","markdown":"https://superduperai.co/library/skill-youtube-channel.md"},{"slug":"srt-cleanup-glossary-merge-cues-prompt","title":"SRT cleanup: fix names from a glossary, merge short cues, cap line length","description":"An agent prompt that takes a raw speech-to-text SRT and returns one you can publish: names fixed from your glossary, sub-second cues merged, lines wrapped at a character cap, timings untouched.","category":"captions","platforms":["youtube","tiktok","reels","shorts"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Clean the SRT below. Return a valid SRT only, no commentary, numbered from 1.\n\nGLOSSARY (correct spellings; STT turned these into other words): {Name = what STT wrote, one per line}\n\nRules:\n1. Replace every glossary miss with the correct form, including inside words and with the right case. Do not change any other proper noun.\n2. Merge cues shorter than {1.0} s with the neighbour they belong to by sentence, keeping the earlier start and the later end. Never merge across a sentence end.\n3. Split cues longer than {6} s at a sentence or clause boundary; divide the time proportionally by character count.\n4. Wrap each cue to max 2 lines of max {32} characters, breaking at a phrase boundary (after a comma, before a conjunction), never leaving one word alone on a line.\n5. Remove filler ('um', 'uh', repeated words at a restart) but not words that carry meaning. Keep the speaker's grammar.\n6. Fix capitalisation and punctuation at sentence boundaries. Numbers stay as digits.\n7. Timing values other than the merges and splits above stay exactly as given. No cue may overlap the next.\n\nSRT:\n{paste SRT}","steps":["Build the glossary first from a skim of the raw transcript: every person, place and product, with the wrong form STT produced. Unknown names become celebrities; one glossary per project fixes it once.","Run the prompt, then validate: `ffmpeg -i clean.srt -f null -` reports parse errors, and a diff against the raw SRT shows that only text and the merged cues changed.","Burn it or upload it as a track. Keep the cleaned SRT beside the video as the transcript of record."],"tips":["Do the glossary pass before anything quotes the transcript, including the agent that proposes the story; a wrong name in the story brief propagates into the cut.","32 characters per line is a parameter for 9:16 at a readable size. For 16:9 on YouTube, 42 is common; the merge and split rules do not change."],"skill":"transcribe","tags":["srt","subtitles","cleanup","glossary","stt","agent","transcript"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["burned-subtitles-9-16-parameters","ffmpeg-burn-in-subtitles-command","transcript-to-youtube-chapters-prompt"],"url":"https://superduperai.co/library/srt-cleanup-glossary-merge-cues-prompt/","markdown":"https://superduperai.co/library/srt-cleanup-glossary-merge-cues-prompt.md"},{"slug":"stitch-this-opinion-format","title":"'Stitch this' opinion: 5 seconds of their claim, 25 seconds of your answer","description":"The stitch format in which a short borrowed clip sets up a claim and you answer with one argument and one demonstration. The prompt picks the 5 seconds to keep and bans the straw man.","category":"formats","platforms":["tiktok","shorts","reels"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a stitch script replying to a clip that claims {the claim} about {topic}. The format works because the borrowed clip is the hook (the claim is stated by someone the viewer may already have seen) and the viewer stays for the answer. Rules: quote the clip fairly (the 5 seconds where the claim is clearest, not the weakest moment), answer with ONE argument, and show the argument rather than assert it.\n\nStructure (30 s, 9:16):\n- 0-5 s THE CLIP: the 5 seconds of the source where the claim is said. On-screen over it: nothing; let it play.\n- 5-8 s THE TURN: me, face to camera, my position in one sentence. On-screen: the position in 4 words.\n- 8-22 s THE ARGUMENT: one reason, with a demonstration (a screen, an object, two photos, a number I measured). Three spoken lines max, 12 words each.\n- 22-27 s THE CONCESSION: the case where the original claim is right, one sentence. This is what makes the reply shareable rather than argued with.\n- 27-30 s CLOSE: 'Stitch this if you disagree.' No download ask; if my demonstration used a product it was on screen.\n\nWord budget: 60-70 words at 165 wpm for my part. On-screen: the position at 5-8 s, one label during the demonstration, nothing over the source clip.\n\nReturn: which 5 seconds of the source to keep (timestamps and the words), then a table (time, what is on screen, spoken line, on-screen text), then the argument in one line for the caption.\n\nSource transcript with timestamps: {transcript}\nMy position: {position}\nWhat I can show: {the demonstration I have}","example":"Claim: 'You need a DSLR to sell anything handmade online.' Position: a phone by a window is enough for a listing. Demonstration: the same mug shot both ways.\n\nKeep: 0:04-0:09 of the source, 'if you're shooting on a phone, nobody is taking your shop seriously.'\n\n| Time | On screen | Spoken line | On-screen text |\n|---|---|---|---|\n| 0-5 s | Source clip | (source audio) | |\n| 5-8 s | Me, kitchen, phone in hand | A phone by a window is enough for a listing photo. | PHONE IS ENOUGH |\n| 8-13 s | Same mug, two photos side by side | Left is a camera with a lens that costs more than the mug. Right is my phone. | SAME MUG · SAME WINDOW |\n| 13-18 s | Zoom into both | At listing size you can't tell. At phone size, nobody can. | LISTING SIZE |\n| 18-22 s | Thumb cuts the background out, white | Background off, white on. That took longer to say than to do. | |\n| 22-27 s | Me | If you're printing a catalogue or shooting glass with reflections, yes, get the camera. | WHEN THE CAMERA WINS |\n| 27-30 s | Me | Stitch this if you disagree. | |\n\nCaption: At listing size a phone by a window and a camera with a lens show the same mug. The camera wins for print and for glass.","tips":["Keep the strongest 5 seconds of the source, not the silliest. A reply to a straw man gets replied to.","The concession at 22-27 s is not politeness; it is what makes the viewer believe the first 22 seconds."],"tags":["stitch","opinion","reply","argument","tiktok","reach","script"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["reaction-duet-style-format"],"url":"https://superduperai.co/library/stitch-this-opinion-format/","markdown":"https://superduperai.co/library/stitch-this-opinion-format.md"},{"slug":"storytime-with-a-twist-format","title":"Storytime with a twist: a 60-second told story with the turn at 40 seconds","description":"The talking-to-camera story that holds because the opener promises a turn and the turn arrives late. The prompt plans the beats, the b-roll inserts and the one line of text per beat.","category":"formats","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a storytime script about {the story} for {topic or channel}. The format works because the first line promises an ending the viewer cannot guess, and the story is told in the present tense so it feels like it is happening now. The twist is a fact that reframes everything before it, not a joke.\n\nStructure (60 s, 9:16, face to camera with 3-4 b-roll inserts):\n- 0-4 s OPEN: state the ending without explaining it ('so that is how I ended up {outcome}'). On-screen: the outcome in 4-6 words.\n- 4-15 s SETUP: where, when, what you wanted. Present tense. One b-roll insert of the place or the thing.\n- 15-40 s BUILD: 3 beats, each ending on a small complication. One b-roll insert per beat, 2-3 s, over the line that mentions the thing it shows.\n- 40-48 s TWIST: the fact that reframes the setup. Said plainly, no music swell. On-screen: the twist in 3-5 words.\n- 48-57 s LANDING: what it meant, one sentence; what you do differently now, one sentence.\n- 57-60 s CLOSE: 'Has this happened to you?' Comment ask. No download ask; if a product is in the story it is a prop in the b-roll, named once.\n\nWord budget: 150-165 words at 165 wpm. On-screen text: one line at the open, one at the twist, nothing in between so the face carries it.\n\nReturn: the beat sheet (open, setup, 3 beats, twist, landing) as one line each, then the script as spoken prose with [b-roll: ...] markers, then the two on-screen lines.\n\nThe story, roughly: {what happened}\nThe twist: {the fact that changes it}","example":"Story: a sourdough channel. Twist: the loaf that finally worked was the one I forgot about.\n\nBeat sheet: Open: 'this is the loaf that fixed six months of bricks, and I did not bake it on purpose.' Setup: January, fourth starter, every loaf flat. Beat 1: a new recipe, a scale, a schedule on the fridge; flat. Beat 2: a colder kitchen, a longer proof; flat and sour. Beat 3: Friday night, shaped a loaf, got a call, forgot it on the counter until Sunday. Twist: baked it to throw it away; it rose, it had ears, the crumb was open. Landing: my proof was always too short, not my starter; now I proof overnight and bake in the morning.\n\nScript: So this is the loaf that fixed six months of bricks, and I did not bake it on purpose. It's January. [b-roll: flat loaf on a board] Fourth starter, every loaf comes out like a frisbee...\n\n...Sunday morning I find it, it has doubled, and I only bake it to prove to myself it's ruined. [b-roll: oven door, the loaf rising] It is not ruined. It has an ear. The crumb is open. [b-roll: cross-section]\n\nThe starter was fine the whole time. I was proofing for two hours in a kitchen that needed twelve. Now it goes in the fridge overnight and I bake with my coffee. Has this happened to you?\n\nOn-screen: 'the loaf I forgot about' at 0-4 s; '12 hours, not 2' at 40-48 s.","tips":["Say the ending first, but not the reason. 'How I ended up X' is the promise; 'because Y' is the twist.","Record the whole story in one take, then cut the pauses. A story told in pieces sounds read."],"tags":["storytime","talking-head","narrative","tiktok","youtube","trust","script"],"difficulty":"intermediate","time":"20 min","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/storytime-with-a-twist-format/","markdown":"https://superduperai.co/library/storytime-with-a-twist-format.md"},{"slug":"street-interview-format","title":"Street interview style: one question, 5 answers, 40 seconds, real or generated","description":"The vox-pop format: one short question, five contrasting answers, the last one lands the point. The prompt writes the question, the answer spread and, if generated, the per-person shot prompts.","category":"formats","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm","veo","kling"],"prompt":"Plan a street-interview video about {topic}. The format works because the question is one the viewer answers in their head before the first stranger does, and the five answers disagree. Two modes: REAL (I go out and ask) or GENERATED (each answer is a 5-second generated clip of a different person). Say which mode and I will plan for it.\n\nThe question: max 10 words, answerable in one sentence, with no right answer that everyone would give. Write 3 candidates and pick one.\n\nStructure (40 s, 9:16):\n- 0-3 s: the question, spoken by the interviewer off camera over the first person's face, and on screen as text for the whole video (top third, small).\n- 3-33 s: 5 answers, 6 s each. Spread: one confident wrong, one unsure, one funny, one unexpectedly expert, one that is the point of the video. The last one is the point. On-screen: a 2-3 word label per person, no names.\n- 33-37 s: the interviewer's one-line reaction or a cut back to the best answer.\n- 37-40 s: 'What would you say?' No download ask; if the topic is a product, it is what the expert answer mentions, once.\n\nWord budget: 90-100 spoken words across the five answers (each answer 15-20 words) plus the question.\n\nREAL mode: return the question, the five answer types to look for, a 3-line note on framing (eye level, 50 cm, busy background out of focus) and the release line to ask.\nGENERATED mode: return the question and the five answers as lines, then five generation prompts, one per person, each with: a distinct person block (age range, look, one accessory), a street setting, medium close-up handheld, overcast daylight, the person speaking one sentence, 5 seconds, 'no on-screen text, no logos'. Mark the video as AI-generated in the caption.\n\nTopic: {topic}\nMode: {real / generated}\nThe point I want the last answer to make: {the point}","example":"Topic: how long it takes to learn enough of a language to order food. Mode: generated. Point: ten minutes a day for a month is enough to order.\n\nQuestion: 'How long until you can order dinner in a new language?'\n\nAnswers:\n1 (confident wrong): 'Years. I did five years at school and I still point at the menu.'\n2 (unsure): 'A month? Six? Depends how much you... I don't know.'\n3 (funny): 'I just say the name of the dish louder. Works in every country.'\n4 (expert): 'About two hundred words. Food, numbers, please, thank you. A few weeks if you do a bit every day.'\n5 (the point): 'I did ten minutes a day for a month on an app and ordered in Lisbon without switching to English. Ten minutes.'\n\nGeneration prompt 4: A woman in her forties, short grey hair, a green scarf, standing on a busy European street, shops out of focus behind her. Medium close-up, handheld, slight natural shake, overcast daylight. She speaks one sentence to someone just off camera, a small shrug at the end. Street ambience, no music. 5 seconds, 9:16. No on-screen text, no logos.\n\n(Four more prompts in the same shape, each with a different person block and a different street.)\nCaption ends: AI-generated video.","tips":["In REAL mode, ask the question ten times and use five. The spread comes from volume, not from casting.","In GENERATED mode, keep faces out of the first frame of each clip until the person is mid-sentence; a generated face held still for a second is where the viewer notices.","Run the disclosure checklist before posting a generated version: label it in the upload form, not only the caption."],"tags":["street-interview","vox-pop","generated-people","veo","kling","reach","tiktok"],"difficulty":"intermediate","time":"30 min","verified":false,"created":"2026-11-01","related":["ai-video-disclosure-and-rights-checklist","character-consistency-reference-sheet"],"url":"https://superduperai.co/library/street-interview-format/","markdown":"https://superduperai.co/library/street-interview-format.md"},{"slug":"strip-other-peoples-music-demucs","title":"Strip other people's music before upload with Demucs and ffmpeg","description":"Car radio, shop speakers and festival stages trigger Content ID. Split the soundtrack into stems, find the music on drums plus bass, keep the voice, replace the music, rebuild audio only.","category":"music","platforms":["youtube","any"],"works_with":["ffmpeg","claude-code","manual"],"prompt":"# 1. Soundtrack out of the film\nffmpeg -i film.mp4 -vn -ac 2 -ar 44100 film_audio.wav\n\n# 2. Four stems on the Apple GPU (drop -d mps for CUDA or CPU)\ndemucs -d mps -o stems film_audio.wav\n# no install: uvx --with numpy --from demucs demucs -d mps -o stems film_audio.wav\n# output: stems/htdemucs/film_audio/vocals.wav drums.wav bass.wav other.wav\n\n# 3. Find the music: threshold the RMS of drums+bass per second, merge windows closer than a few seconds, print the window map before changing anything (dry run).\n\n# 4. Inside each window: the whole vocals stem + your score. Outside the windows: the original audio, sample for sample.\n\n# 5. Rebuild audio only, video copied\nffmpeg -i film.mp4 -i clean_audio.wav -map 0:v -map 1:a -c:v copy -c:a aac film.clean.mp4","steps":["Run the dry run and read the window map against the film: a window that starts mid-sentence means the threshold is too low.","Inside the windows keep the whole vocals stem, not the parts the subtitles cover: STT misses exclamations, and 31 s of loud speech lived outside the subtitles on one film.","Upload, then compare the platform's claimed time codes with your windows. Its claims are a check, not the map: Content ID sees a subset."],"example":"Measured on one episode: 10 claims, about 4 minutes of songs, four of the claims blocking the video in two countries that were 21% of the channel's audience. A claim is not a strike, but you do not choose the block.","tips":["Detect on drums + bass, not on the no-vocals stem. Demucs puts the engine, wind and city into `other`, and road noise is louder than the radio almost everywhere.","The singer's ghost stays in the vocals stem 5-10 dB under the speaker. It disappears under a new score; it does not disappear on its own.","Speed: about 4 minutes per 20 minutes of audio on an Apple Silicon GPU; 60 s of a song took 8.3 s with `-d mps` and 15.7 s on CPU. Without `-d mps` Demucs does not pick the Apple GPU.","Already published and the claim restricts nothing: leave it. Re-upload only for a block or lost monetisation; the platform's own 'erase song' takes days and cuts the whole segment, speech included.","In Claude Code, `/stem-split` runs Demucs and `/video-edit` does the detection, the replacement and the rebuild."],"skill":"stem-split","tags":["demucs","stems","content-id","copyright","ffmpeg","stem-split"],"difficulty":"advanced","time":"30 min","verified":false,"created":"2026-11-01","related":["loudness-normalize-minus-16-lufs-ffmpeg","voice-cleanup-checklist-room-tone-deess-gate"],"url":"https://superduperai.co/library/strip-other-peoples-music-demucs/","markdown":"https://superduperai.co/library/strip-other-peoples-music-demucs.md"},{"slug":"style-lock-block","title":"Style lock: one paragraph that makes every clip look like the same film","description":"A reusable style paragraph (stock, palette, grain, light rules) appended to every generation prompt so a series cuts together instead of looking like ten different ads.","category":"generation","platforms":["any"],"works_with":["veo","sora","kling","runway","image-gen"],"prompt":"STYLE LOCK (append to every prompt in the series):\nShot on {film stock or camera feel: Kodak 5219 / 16mm / Alexa clean digital / VHS}. {Palette: two dominant colours + one accent, e.g. 'teal shadows, amber highlights, red accent'}. {Grain: none / light / heavy}. {Contrast: soft and lifted blacks / punchy}. Lighting always {rule: motivated by a visible source / single key from camera left / flat overcast}. {Lens feel: 35mm, mild distortion / 85mm compression}. {Aspect ratio}. No on-screen text, no logos, no lens flares unless stated.","steps":["Write the style lock once, from a reference film or a still you like. Name real things (a stock, a focal length) rather than adjectives.","Paste it at the end of every prompt, after the shot description.","When a clip comes back off-style, do not add adjectives to the lock: remove the words in the shot prompt that conflict with it."],"example":"Shot on 16mm, Kodak 250D feel. Teal shadows, amber highlights, red accent. Light grain. Soft contrast with lifted blacks. Lighting always motivated by a visible source. 35mm lens feel. 9:16 vertical. No on-screen text, no logos, no lens flares.","tips":["A palette with three named colours is the most effective single line in the lock; most 'does not match' problems are colour.","Keep one lock per project in a text file next to the clips; Life2Film and most editors will not fix a mismatched look, they will only make it obvious."],"tags":["style","consistency","palette","film-look","series","text-to-video"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["character-consistency-reference-sheet"],"url":"https://superduperai.co/library/style-lock-block/","markdown":"https://superduperai.co/library/style-lock-block.md"},{"slug":"take-something-from-every-clip","title":"Take something from every clip, and list the ones you cut with a reason","description":"A rule for cutting someone else's footage, or your own from a year ago: each clip was filmed because it mattered, so each gets a chance, and the rejects get a written reason the person can argue with.","category":"editing","platforms":["any"],"works_with":["claude-code","life2film","capcut","manual"],"prompt":"After the cut is proposed, produce the CLIP ACCOUNT. For every source clip in the folder, one row: Clip | Shooting time | Used (in/out, where in the film) or NOT USED | Reason.\n\nRules for the reason column:\n- 'Not used' needs a reason a person can check: duplicate of {clip} (same scene, worse frame), no usable speech (wind), nothing visible (lens cap, pocket), covered by a better shot of the same object, the story does not pass through this place.\n- 'Boring' is not a reason. If the only reason is boring, find the 2 seconds in it that are not: a face, a gesture, the object of the day.\n- Count: used clips, not-used clips, seconds used of seconds filmed.\n- If more than {30} percent of clips are not used, go back to the cut and find one shot in each of the rejects to use as a cutaway before finalising.\n\nSource clips:\n{paste clip list with durations and shooting times}\nProposed cut:\n{paste cut.json or the EDL}","steps":["Generate the clip list from the folder with shooting times from container metadata, not file names.","Run the account after the first cut, before the critic pass. Fix the rejects first; the critic will have other notes.","Send the not-used list with the film. The person who filmed it will tell you which reason is wrong, and that is a one-line edit."],"tips":["The person filmed it, so it mattered. A clip you cannot place is usually a clip you did not understand, not a clip without value.","Life2Film's per-segment scores tell you which 2 seconds of a dull clip are the sharpest and steadiest; pick the cutaway from there."],"skill":"video-edit","tags":["editing","footage","coverage","review","accountability","workflow"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["length-follows-the-material","critic-pass-two-passes"],"url":"https://superduperai.co/library/take-something-from-every-clip/","markdown":"https://superduperai.co/library/take-something-from-every-clip.md"},{"slug":"talking-head-avatar-script-prompt","title":"Talking-head clip: the script format AI avatar and lip-sync tools read best","description":"How to write a 20-second spoken script so that a lip-sync or avatar model delivers it with natural pauses and no mispronounced numbers.","category":"generation","platforms":["tiktok","reels","shorts","linkedin"],"works_with":["any-llm","chatgpt","claude"],"prompt":"Rewrite the following script for a 20-second talking-head video delivered by an AI avatar or lip-sync model.\nRules:\n- Short sentences, max 12 words each.\n- Spell out numbers and symbols as they are spoken ('twenty three percent', 'dollars'), never digits.\n- Write pauses as a new line, not as '...'.\n- No parentheses, no emoji, no stage directions.\n- Start with a one-line hook that works without context.\n- End with one sentence of call to action.\n- Target 55 words.\n\nScript:\n{paste rough script}","example":"Input: 'Our app cut editing time by 73% for 1,200 users (!). Try it: life2film.com'\nOutput:\nYour phone has hours of video nobody will ever watch.\nThis app watches it for you.\nIt finds the good thirty seconds and cuts a film.\nOn the phone. Nothing uploaded.\nSearch for Life two Film.","tips":["Fifty-five words is about 20 seconds at a natural 165 words per minute. Use the caption checker tool to confirm.","Generate the voice first, listen, then render the face: a bad voice take costs seconds, a bad face take costs minutes."],"tags":["talking-head","avatar","lip-sync","script","voice","ugc"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/talking-head-avatar-script-prompt/","markdown":"https://superduperai.co/library/talking-head-avatar-script-prompt.md"},{"slug":"things-i-wish-i-knew-format","title":"'Things I wish I knew': 5 lessons in 50 seconds, each with what it cost me","description":"The advice format that gets saved because every lesson is attached to the mistake that taught it. The prompt orders the lessons by cost and plans one number on screen per lesson.","category":"formats","platforms":["tiktok","reels","shorts","youtube","linkedin"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a '{N} things I wish I knew before {starting X}' script. The format works because each lesson carries the price I paid for not knowing it, so the viewer saves the video to avoid the bill. A lesson with no cost attached is a platitude; cut it.\n\nRules for the lessons:\n- Each one is a single sentence of advice plus the thing that happened to me because I did not know it.\n- Each has a cost the viewer can picture: hours, money, a ruined batch, a lost file.\n- Order by cost, cheapest first, most expensive last.\n\nStructure ({N} = 5, 50 s, 9:16, face to camera with inserts where I have the evidence):\n- 0-3 s HOOK: '{N} things I wish I knew before {starting X}. Number {N} cost me {the biggest cost}.' On-screen: '{N} things'.\n- 3-45 s LESSONS: about 8 s each. Pattern per lesson: the advice (3 s, on screen as a 5-word line with its number), the story (5 s, one sentence, past tense, an insert if I have a photo or a screen).\n- 45-48 s: 'The one I'd tell you first is number {pick}.' One sentence on why.\n- 48-50 s CLOSE: 'Save this for someone starting out.' No download ask; if a product solved one lesson it is named in that lesson only.\n\nWord budget: 125-135 words at 165 wpm. On-screen: the lesson number and 5-word line per lesson, the cost as a number where there is one.\n\nReturn: the five lessons with their costs as a list (so I can reorder), then a table (time, lesson, spoken line, on-screen, insert).\n\nStarting X: {what I started}\nLessons, rough: {list with what each cost me}","example":"Starting X: selling handmade ceramics online.\n\nLessons by cost: 1 photograph every piece the day it comes out of the kiln (cost: 2 evenings re-shooting), 2 write the dimensions on the listing (cost: 4 returns), 3 pack as if the courier will drop it from the van (cost: 3 broken mugs, about 90 dollars), 4 raise prices before you are busy (cost: a month of underpaid work), 5 keep the originals of every photo (cost: a lost phone, 60 listings re-shot).\n\n| Time | Lesson | Spoken line | On-screen | Insert |\n|---|---|---|---|---|\n| 0-3 s | | Five things I wish I knew before selling ceramics online. Number five cost me sixty listings. | 5 THINGS | |\n| 3-11 s | 1 | Shoot every piece the day it comes out. I waited, the light changed, I re-shot two evenings. | 1 · SHOOT ON KILN DAY | Two photos, different light |\n| 11-19 s | 2 | Put the dimensions on the listing. Four mugs came back as 'smaller than expected'. | 2 · DIMENSIONS ON LISTING · 4 RETURNS | Return label |\n| 19-27 s | 3 | Pack for a drop from the van. Three broken, ninety dollars, one week. | 3 · PACK FOR THE DROP · $90 | Broken mug |\n| 27-35 s | 4 | Raise prices before you're busy. I spent a month fully booked and underpaid. | 4 · RAISE PRICES EARLY | Calendar full |\n| 35-45 s | 5 | Keep the original photos somewhere that is not your phone. The phone died and I re-shot sixty listings in a weekend; the background app made it bearable, but it was still a weekend. | 5 · BACK UP ORIGINALS · 60 LISTINGS | Phone with a cracked screen |\n| 45-48 s | | The one I'd tell you first is three. Breakage is the only one you can't fix after. | | |\n| 48-50 s | | Save this for someone starting out. | SAVE | |","tips":["The cost on screen does most of the work. '$90' under a broken mug is remembered; 'pack carefully' is not.","Record the stories before the advice lines. The advice is easy to re-say; the story has to sound like the first time."],"tags":["things-i-wish-i-knew","lessons","educational","talking-head","trust","tiktok","linkedin"],"difficulty":"beginner","time":"15 min","verified":false,"created":"2026-11-01","related":["three-mistakes-format","listicle-countdown-format"],"url":"https://superduperai.co/library/things-i-wish-i-knew-format/","markdown":"https://superduperai.co/library/things-i-wish-i-knew-format.md"},{"slug":"three-mistakes-format","title":"'3 mistakes' in 40 seconds: the educational format that converts","description":"Three mistakes the viewer is making right now, each with the fix shown in a shot, ranked so the last one is the one they did not know about. Prompt returns the script, text plan and shot list.","category":"formats","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a '3 mistakes' script about {topic} for {audience}. The format works because every viewer checks themselves against the list; educational videos convert because the fix is the product or the method.\n\nRules for the mistakes:\n- Mistake 1 is the one everyone knows they make (recognition).\n- Mistake 2 is the one they suspect (confirmation).\n- Mistake 3 is the one they have never heard (the reason to save the video).\n- Each mistake is a thing the viewer can check in under a minute. No vague ones ('not being consistent').\n\nStructure (40 s, 9:16):\n- 0-3 s HOOK: 'Three {topic} mistakes, and number three is the one nobody tells you.' or a sharper variant. Text on screen: '3 mistakes' with the topic word.\n- 3-14 s MISTAKE 1: name it (3 s), show it (4 s), show the fix (4 s).\n- 14-25 s MISTAKE 2: same shape.\n- 25-37 s MISTAKE 3: same shape, slightly longer on the fix.\n- 37-40 s CLOSE: 'Save this for the next time you {action}.' A save ask, not a download ask. The download ask goes in one video out of several, not here.\n\nWord budget: 100-110 words at 165 wpm. On-screen text: a numbered title card per mistake (1/3, 2/3, 3/3) with the mistake in 4 words max, and the fix in 4 words max when it appears.\n\nReturn: a table (time, section, spoken line, on-screen text, what is in the shot), then the three mistakes as a one-line list for the caption.\n\nTopic: {topic}\nAudience: {audience}\nWhat the fix involves: {the method or the product feature, if any}","example":"Topic: product photos for an online shop. Audience: someone selling handmade things from home.\n\n| Time | Section | Spoken line | On-screen text | Shot |\n|---|---|---|---|---|\n| 0-3 s | Hook | Three product-photo mistakes, and the third one is why your listing looks cheap. | 3 PHOTO MISTAKES | Face, phone in hand |\n| 3-6 s | M1 name | One. Shooting under the kitchen light. | 1/3 OVERHEAD LIGHT | Ceiling lamp |\n| 6-10 s | M1 show | Yellow cast, shadow under everything. | | Mug under the lamp |\n| 10-14 s | M1 fix | Window, side on, lamp off. | FIX: WINDOW, SIDE ON | Same mug by the window |\n| 14-17 s | M2 name | Two. Zooming in. | 2/3 DIGITAL ZOOM | Fingers pinching |\n| 17-21 s | M2 show | The phone throws away pixels; the edge goes soft. | | Blurry edge close-up |\n| 21-25 s | M2 fix | Step closer, crop later. | FIX: STEP CLOSER | Hand moving the phone |\n| 25-28 s | M3 name | Three. The background. | 3/3 THE BACKGROUND | Cluttered counter |\n| 28-32 s | M3 show | Your eye reads the mess before it reads the product. | | Same |\n| 32-37 s | M3 fix | Cut it out and put it on white; the app does that in one tap, on the phone. | FIX: CUT OUT, WHITE | Thumb taps, background drops |\n| 37-40 s | Close | Save this for your next listing. | SAVE FOR NEXT TIME | Face |\n\nCaption list: overhead light, digital zoom, cluttered background.","tips":["The fix for mistake 3 is where the product lives, if there is one. One mention, shown not pitched.","'Save this' outperforms 'follow' on an educational video because it is the thing the viewer actually wants to do with it."],"tags":["three-mistakes","educational","listicle","tiktok","shorts","convert","script"],"difficulty":"beginner","time":"15 min","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/three-mistakes-format/","markdown":"https://superduperai.co/library/three-mistakes-format.md"},{"slug":"transcript-to-youtube-chapters-prompt","title":"Transcript to YouTube chapters: timestamps in the format the description needs","description":"A prompt that turns a timestamped transcript into a chapter list for the YouTube description: first chapter at 0:00, at least three, each 10 seconds or more, titles that say what the viewer gets.","category":"captions","platforms":["youtube"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Turn the transcript below into YouTube chapters for the video description.\n\nFormat, one per line, nothing else:\nM:SS Title\n(H:MM:SS for videos over an hour; the first line must be 0:00)\n\nRules:\n- The first chapter starts at 0:00; at least 3 chapters; no chapter shorter than 10 seconds. These are YouTube's stated requirements as of writing; treat them as parameters and check the current help page.\n- A chapter starts where the topic changes, not every N minutes. Use the transcript's own words to find the boundary: 'next', 'now let's', a new question.\n- Titles: 2-6 words, what the viewer gets ('Fixing the drift'), not what happens ('Section 3'). Sentence case. No emoji. Include the search term once if it fits naturally.\n- Place each timestamp at the second where the new topic's first word starts, minus 1 second so the jump lands clean.\n- Target {8-12} chapters for a {30}-minute video; fewer for shorter.\n\nAfter the list, print it once more with each chapter's length in seconds and flag any under 10 s.\n\nTranscript:\n{paste transcript with timestamps}","steps":["Use the transcript of the final rendered file, not the raw footage: cuts move every timestamp.","Paste the list into the description; chapters appear only when the format is exact and the first line is 0:00.","Check the chapter markers in the player once; if one lands mid-sentence, move it back one second."],"tips":["Chapter titles are searched. A title that matches what people type ('export settings for Reels') does more than a clever one.","The same list with timestamps removed is the outline for the pinned comment and the next video's description."],"skill":"transcribe","tags":["youtube","chapters","timestamps","transcript","description","seo"],"difficulty":"beginner","time":"5 min","verified":false,"created":"2026-11-01","related":["youtube-eight-minute-explainer-outline","srt-cleanup-glossary-merge-cues-prompt"],"url":"https://superduperai.co/library/transcript-to-youtube-chapters-prompt/","markdown":"https://superduperai.co/library/transcript-to-youtube-chapters-prompt.md"},{"slug":"tutorial-in-30-seconds-format","title":"Tutorial in 30 seconds: result first, then the steps at reading speed","description":"The compressed how-to that gets saved: the finished thing in frame 1, then 3-5 numbered steps each shown and captioned. The prompt budgets the words so the steps fit at 165 wpm.","category":"formats","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a 30-second tutorial script for: how to {task} using {method or tool}. The format works because the viewer sees the result before deciding to invest 30 seconds, and the numbered steps give them a reason to save it.\n\nStructure (30 s, 9:16):\n- 0-3 s RESULT: the finished thing, full frame. Spoken: 'Here is how to {task} in {N} steps.' On-screen: the result name and '{N} steps'.\n- 3-25 s STEPS: {N} steps (3 to 5), equal time each. Each step is: one imperative spoken line (max 10 words), one shot that shows the action, one on-screen caption with the step number and a 3-word label. If a step needs a value (a setting, a time, a quantity) the value goes on screen, not only in the voice.\n- 25-28 s RESULT AGAIN: the same result, 3 s, spoken: one line on what it is good for now.\n- 28-30 s CLOSE: 'Save it for when you need it.' No download ask here; a tutorial that ends in a pitch gets scrolled. The product, if there is one, is visible in the steps.\n\nWord budget: 70-80 words at 165 wpm. Mark anything spoken over 80 words as too long and cut a step instead of speeding up.\n\nReturn: the step list first (so I can check it is right), then a table (time, step, spoken line, on-screen caption, shot). Then a one-line caption for the post with the steps as a comma list.\n\nTask: {task}\nMethod or tool: {method or tool}\nSteps as I do them (I will correct you): {rough steps}","example":"Task: make a cold brew concentrate. Method: a jar and a sieve.\n\nSteps: 1 grind coarse, 2 one to four ratio, 3 twelve hours in the fridge, 4 strain twice.\n\n| Time | Step | Spoken line | On-screen caption | Shot |\n|---|---|---|---|---|\n| 0-3 s | Result | Cold brew concentrate in four steps, no machine. | COLD BREW · 4 STEPS | Glass of cold brew poured over ice |\n| 3-8 s | 1 | Grind coarse, like sea salt. | 1 · GRIND COARSE | Grounds in the palm next to salt |\n| 8-14 s | 2 | One part coffee, four parts cold water, into a jar. | 2 · 1 : 4 BY WEIGHT | Scale: 100 g then 400 g |\n| 14-19 s | 3 | Lid on, fridge, twelve hours. | 3 · 12 H IN THE FRIDGE | Jar into the fridge, clock overlay |\n| 19-25 s | 4 | Strain through a sieve, then through a paper filter. | 4 · STRAIN TWICE | Sieve, then filter |\n| 25-28 s | Result | Keeps a week. Dilute one to one over ice. | 1 : 1 OVER ICE | The glass again |\n| 28-30 s | Close | Save it for Sunday. | | Hand sets the glass down |\n\nCaption: grind coarse, 1:4, 12 h, strain twice.","tips":["Any number the viewer needs to remember goes on screen as digits. Spoken numbers do not survive sound-off viewing.","Five steps is the ceiling at 30 s. A sixth step means a second video, and a second video is a series."],"tags":["tutorial","how-to","educational","shorts","tiktok","convert","script"],"difficulty":"beginner","time":"10 min","verified":false,"created":"2026-11-01","related":["three-mistakes-format"],"url":"https://superduperai.co/library/tutorial-in-30-seconds-format/","markdown":"https://superduperai.co/library/tutorial-in-30-seconds-format.md"},{"slug":"two-language-script-en-ru-prompt","title":"One script, two languages: EN and RU versions that match shot for shot","description":"A prompt that writes a script in English and Russian side by side, same shots and same timings, with the Russian rewritten rather than translated so it fits the same seconds.","category":"scripts","platforms":["any"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write the script below in two languages, English and Russian, as one table: Shot | Seconds | EN line | RU line | On-screen text EN | On-screen text RU.\n\nRules:\n- Same shots, same seconds in both languages. The visuals are recorded once.\n- Each RU line must be sayable in the same seconds as the EN line. Russian words are longer, so rewrite the Russian, do not translate it: fewer words, same meaning. Count syllables if in doubt; a parameter to check against is about 4 syllables per second of speech.\n- Natural spoken Russian, informal address for {audience} unless I say otherwise. No calques from English.\n- Numbers, product name and URL identical in both.\n- On-screen text: max 4 words per language.\n\nAfter the table, flag any row where the RU line needed more than {20} percent more syllables than the EN line; I will shorten the shot or the line.\n\nScript (EN):\n{paste script}","steps":["Write and lock the English version first, with timings. Then run this prompt; the Russian comes out shorter because it has to.","Record the two voice tracks over one picture. Swap audio with ffmpeg and keep the video stream (`-map 0:v -map 1:a -c:v copy`), one file per language.","Captions per language go up as separate .srt tracks on YouTube and as separate burned files on feeds."],"tips":["A native speaker reads the RU column once before recording. Models write correct Russian that no one says.","On-screen text is where language length bites hardest: 'Try it free' is 11 characters; the Russian needs a rewrite, not a translation."],"tags":["script","localization","russian","english","multilingual","i18n"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["srt-cleanup-glossary-merge-cues-prompt","rewrite-script-to-55-words-20-seconds"],"url":"https://superduperai.co/library/two-language-script-en-ru-prompt/","markdown":"https://superduperai.co/library/two-language-script-en-ru-prompt.md"},{"slug":"ugc-style-generated-ad-prompt","title":"UGC-style generated ad: make it look like a phone, not a studio","description":"Prompt rules that push a video model toward the handheld, imperfect look of user-generated content, which still outperforms polished ads in most feeds.","category":"generation","platforms":["tiktok","reels","shorts"],"works_with":["veo","kling","sora","runway"],"prompt":"{Person: age, look, outfit} holding {product} at arm's length, talking to the camera, in {a real place: car interior, kitchen, bathroom mirror, café table}. Shot on a phone front camera, handheld, slight shake, selfie framing with the face in the upper third. Natural daylight from a window, slightly overexposed, no studio light. Mild phone-camera sharpening, true-to-life colour. The person gestures with the product once. Background has normal clutter. No on-screen text, no logos, no filters. 6 seconds, 9:16.","steps":["Swap the place and the gesture between takes, keep the person block identical (see character consistency).","Add the hook text and captions in the editor, in the platform's native font, not in generation.","Mark it as AI-generated where the platform requires it."],"tips":["'Slightly overexposed window light' is the single phrase that most reliably kills the studio look.","If the model keeps producing a studio, add 'amateur footage, not an advertisement' at the end."],"tags":["ugc","ads","handheld","phone","text-to-video","tiktok"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["character-consistency-reference-sheet","talking-head-avatar-script-prompt"],"url":"https://superduperai.co/library/ugc-style-generated-ad-prompt/","markdown":"https://superduperai.co/library/ugc-style-generated-ad-prompt.md"},{"slug":"video-prompt-structure-seven-parts","title":"The 7-part prompt structure for text-to-video","description":"A fill-in template that gives any video model the seven things it needs: subject, action, setting, camera, light, style and sound. Fewer vague words, fewer wasted generations.","category":"generation","platforms":["any"],"works_with":["veo","sora","kling","runway","any-llm"],"prompt":"SUBJECT: {who or what, with 2-3 concrete visual details}\nACTION: {one clear action, present tense, no more than one beat}\nSETTING: {place, time of day, weather, era}\nCAMERA: {shot size} · {angle} · {movement: static / slow dolly in / handheld follow / orbit}\nLENS & LIGHT: {focal length feel, e.g. 35mm wide / 85mm portrait} · {light: golden hour / overcast soft / neon practicals / single window}\nSTYLE: {film stock or look: 16mm documentary / clean commercial / anime / claymation} · {color palette}\nSOUND: {ambient sound} · {no music / music mood}\nDURATION: {5-8 s}. No on-screen text, no logos, no subtitles.","steps":["Fill every line. A blank line is where the model improvises, and it improvises blandly.","Keep ACTION to one beat. 'Walks to the window and looks out' is one shot; 'walks, sits, drinks coffee, laughs' is four.","Paste the filled block as one paragraph into Veo, Sora, Kling or Runway. Most models read prose better than labels, so remove the labels once you are happy with the content.","Generate 2-4 takes with the same prompt before changing anything; variance between takes tells you what the model is unsure about."],"example":"A woman in a yellow raincoat with wet hair holds a paper cup of coffee. She turns slowly toward the camera and smiles. A Lisbon tram stop at dawn, light rain, wet cobblestones reflecting shop signs. Medium close-up, eye level, slow dolly in. 50mm look, soft overcast light with warm practicals from a bakery window. 16mm documentary feel, muted teal and amber palette, light film grain. Ambient rain and distant tram bell, no music. 6 seconds. No on-screen text, no logos.","tips":["Negative instructions ('no text, no logos, no extra people') belong at the end; most models honour them better there.","Name a shot size and a movement every time. 'Cinematic' alone gets you a random one.","Google's Veo prompt guide lists the same elements (subject, context, action, style, camera motion, composition, ambiance); this template is ordered for the way people actually think about a shot."],"tags":["text-to-video","prompt-template","veo","sora","kling","runway","camera","lighting"],"difficulty":"beginner","time":"5 min","source":"https://ai.google.dev/gemini-api/docs/video","source_label":"Google Veo prompt guide (element list)","verified":false,"created":"2026-11-01","url":"https://superduperai.co/library/video-prompt-structure-seven-parts/","markdown":"https://superduperai.co/library/video-prompt-structure-seven-parts.md"},{"slug":"visual-hook-first-frame-rules","title":"Visual hook rules: first frame, text on screen, sound off, and how long you have","description":"The checklist for what the viewer sees before any word is heard: first frame, text, the sound-off case, and the attention windows the creator-growth skill states (about 0.1 s, 0.5 s, 1-2 s by age).","category":"hooks","platforms":["tiktok","reels","shorts"],"works_with":["manual","claude","chatgpt","any-llm"],"prompt":"Check the first 3 seconds of this video against the rules below and return a pass/fail per rule with the fix.\n\nHow long you have, from the creator-growth skill: younger audiences decide in about 0.1 s, millennials in about 0.5 s, older viewers in 1 to 2 s. So the frame that is on screen before anyone has heard a word is the hook; the sentence is the second hook.\n\nFRAME 1\n- The subject (result, object, face mid-action) is already in frame at full size. No fade in, no logo, no title card, no walking into frame.\n- Something is already moving or about to: a hand, steam, a cursor. A still frame that lasts 1 s reads as a photo.\n- Framing survives the platform's overlays: subject in the centre 60 percent, nothing important in the bottom 20 percent or the right edge.\n\nTEXT ON SCREEN\n- The hook line is on screen from frame 1, in the same words as spoken, max 9 words, big enough to read at phone size (48-60 px at 1080 wide).\n- One line, not a paragraph. If the hook needs two lines it is two hooks.\n- Text sits in the upper third or the centre, never over the subject's face or hands.\n\nSOUND OFF\n- With the audio muted, frame 1 plus the text still tells the viewer what the video is and why to stay. Test: screenshot frame 1, show it to someone for one second, ask what the video is about.\n- If the opening depends on a sound (a sizzle, a voice), the text carries the same promise.\n\nSOUND ON\n- The first word is spoken within 0.5 s. No breath, no 'so', no 'hey guys'.\n- If there is music, it starts on frame 1, not after.\n\nVideo to check: {describe frame 1, the on-screen text, the first spoken words, and the audience age}","steps":["Export frame 1 as an image and look at it at thumbnail size on a phone. That is what decides in the first 0.1 to 0.5 s.","Mute the video and watch the first 3 s. If you cannot say what it is about, rewrite the text, not the voice.","Trim everything before the first frame that passes: fade-ins, logo stings and the half-second of someone sitting down are the most common cuts."],"example":"Checked: a 30-second tutorial for a photo app, audience 25-40.\n\nFrame 1: a face looking at the phone, then the product photo appears at 1.2 s. FAIL: the result must be frame 1; move the finished photo to 0 s, face at 2 s.\nMotion in frame 1: none until 1.2 s. FAIL: start on the thumb already mid-tap.\nOverlays: text in the bottom 15 percent. FAIL: move to the upper third.\nText: 'How I make my product photos look professional in seconds with this app' (13 words). FAIL: 'Listing photo. Two taps.' (4 words).\nSound off: with the audio muted the first 3 s show a face and a long caption. FAIL: with the result as frame 1 and the 4-word line it passes.\nFirst spoken word: 'So, hey, today...' at 0.9 s. FAIL: cut to 'Two taps.' at 0.2 s.\n\nAfter fixes: frame 1 is the finished mug on white with '2 TAPS' in the upper third, the thumb enters at 0.4 s, the voice says 'Two taps' at 0.2 s.","tips":["The attention numbers come from the creator-growth skill and are the reason frame 1 matters more than the sentence: a 25-year-old has decided before the first word is finished.","Camera basics decide weak against strong in that skill's list: depth in the background, light, energy, audio. Frame 1 is where all four are visible at once.","In Claude Code, `/creator-growth` applies these rules when it plans the formats; use this prompt to audit a cut you already have."],"tags":["hook","first-frame","visual-hook","text-on-screen","sound-off","attention","checklist"],"difficulty":"beginner","time":"5 min","skill":"creator-growth","verified":false,"created":"2026-11-01","related":["hook-archetype-result-first","generated-video-first-frame-hook","silent-text-on-screen-story-format"],"url":"https://superduperai.co/library/visual-hook-first-frame-rules/","markdown":"https://superduperai.co/library/visual-hook-first-frame-rules.md"},{"slug":"voice-as-one-continuous-track-length-check","title":"Voice as one continuous track, pictures on top, and the one-frame length check","description":"The assembly rule for talking films: cut the audio from the same pieces as the picture, snapped to frames, then verify film length equals voice length. Drift over one frame is a bug, not a quirk.","category":"editing","platforms":["any"],"works_with":["claude-code","ffmpeg","capcut"],"prompt":"VOICE TRACK ASSEMBLY, the checklist\n\n1. Build the voice track first: every kept sentence, in order, cut from the source audio at frame boundaries (quantise in and out points to the frame rate: multiples of 1/30 s at 30 fps).\n2. Lay the picture on top of it: the speaker's own shot where lips are visible, cutaways in the silent windows. The picture never decides where a sentence starts.\n3. Keep the join inside silence: cut points at the ends of lines, trimmed of filler; mid-line only when the gap is silent.\n4. After the render, measure, do not watch: `ffprobe -v error -show_entries stream=codec_type,duration -of csv=p=0 film.mp4` and compare the video and audio stream durations to the planned length.\n5. Drift larger than one frame (1/30 s at 30 fps, about 33 ms) anywhere is a bug. Find it: a clip with a different sample rate, a variable-frame-rate phone recording, a cut not on a frame boundary.\n6. Check the delivered file itself, at the seams, on at least one real camera file, never only on synthetic test sources.","steps":["Resample everything to one sample rate (48 kHz) before assembly. A 96 kHz recording joined to a 48 kHz card drifted the audio clock 1.39 s at the seam and passed every synthetic test.","Snap every cut to a frame: round in/out times to the frame rate before cutting the audio, so the audio piece and the picture piece are the same length.","Compare planned length, video stream duration and audio stream duration after every render. Three numbers, one line, every time."],"tips":["Cutting the audio from the picture pieces is what a timeline editor does for you; a script-driven render has to do it on purpose, and that is where the drift comes from.","A film that is half a second shorter than its voice track plays as a cut-off last word on the platform, and nobody tells you."],"skill":"video-edit","tags":["audio","sync","assembly","ffmpeg","verification","editing"],"difficulty":"advanced","time":"15 min","verified":false,"created":"2026-11-01","related":["script-to-storyboard-json-cut","read-the-film-as-text-before-rendering"],"url":"https://superduperai.co/library/voice-as-one-continuous-track-length-check/","markdown":"https://superduperai.co/library/voice-as-one-continuous-track-length-check.md"},{"slug":"voice-cleanup-checklist-room-tone-deess-gate","title":"Voice cleanup checklist: room tone, de-ess, noise gate, in that order","description":"Six passes that turn a phone or lav recording into a usable voice track, each with the ffmpeg filter and a starting parameter to adjust by ear, in the order that keeps the gate off word endings.","category":"music","platforms":["youtube","shorts","reels","tiktok","linkedin"],"works_with":["ffmpeg","capcut","manual"],"prompt":"Run in this order on the voice track only, never on the mix:\n1. ROOM TONE. Record 10 s of silence in the room at the start of every session. Use it to fill gaps under cuts instead of digital silence, and as the noise profile for step 3.\n2. HIGH-PASS. Cut the rumble below the voice: highpass=f=80 (f=100 for a high voice, f=60 for a deep one).\n3. NOISE REDUCTION, gentle. afftdn=nf=-25:nr=12 (nf = the noise floor in dB; nr = how many dB to remove; above about 15 the voice starts to warble).\n4. DE-ESS. deesser=i=0.5:f=0.5 (i = intensity 0-1; raise until the s sounds soften, stop before a lisp).\n5. GATE, last and light. agate=threshold=0.02:ratio=2:attack=20:release=250 (threshold in linear amplitude; ratio 2 is a soft gate, not a hard cut; release 250 ms keeps word endings).\n6. LEVEL. loudnorm=I=-16:TP=-1.5:LRA=11.\n\nffmpeg, all passes in one chain:\nffmpeg -i voice.wav -af \"highpass=f=80,afftdn=nf=-25:nr=12,deesser=i=0.5:f=0.5,agate=threshold=0.02:ratio=2:attack=20:release=250,loudnorm=I=-16:TP=-1.5:LRA=11\" voice.clean.wav","steps":["Listen to the raw track once with headphones and write down what is wrong (hum, room, s sounds, breaths). Apply only the passes for what you heard.","Run the chain, then A/B a 10-second stretch with a quiet word ending against the original. If the ending is clipped, raise the gate's release or lower its ratio before touching anything else.","Keep the raw file. Every pass is destructive; the chain is cheap to re-run."],"tips":["The gate goes last because the noise reduction and the high-pass already lowered the floor; a gate set on the raw floor cuts breaths and tails you wanted.","Two gentle noise-reduction passes beat one hard one; a voice under heavy afftdn sounds underwater.","Shot on a phone with the radio on? The music is not noise and no filter above removes it: separate stems first (the Demucs entry) and clean the vocals stem."],"tags":["voice","cleanup","noise-gate","de-ess","room-tone","ffmpeg","checklist"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["loudness-normalize-minus-16-lufs-ffmpeg","strip-other-peoples-music-demucs"],"url":"https://superduperai.co/library/voice-cleanup-checklist-room-tone-deess-gate/","markdown":"https://superduperai.co/library/voice-cleanup-checklist-room-tone-deess-gate.md"},{"slug":"watch-me-use-it-product-demo-format","title":"'Watch me use it': a 30-second product demo with no pitch and one real task","description":"The demo that converts because it is a task, not a feature tour: one thing the viewer wants done, done on camera, in real time where possible. The prompt forbids adjectives and plans the text.","category":"formats","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Write a 'watch me use it' demo script for {product} doing {one task the viewer wants done}. The format works because the viewer judges the product by watching it do a thing they need, so the script contains no adjectives about the product, only what happens on screen.\n\nRules:\n- One task, start to finish. Not three features.\n- Real time where it is under 15 s; a labelled speed-up ('4x') where it is longer. Never cut out the waiting silently.\n- Every spoken line describes an action or a result. Delete any line with 'easy', 'powerful', 'seamless', 'amazing'.\n\nStructure (30 s, 9:16, phone or screen recording with hands or a cursor visible):\n- 0-3 s: the task stated as the viewer would say it ('I need this photo on a white background by tonight'). On-screen: the task in 5 words.\n- 3-8 s: the starting state, held. What is wrong with it, one line.\n- 8-24 s: the task done. 3-4 actions, one spoken line each (max 10 words), on-screen label per action with the tap or key named.\n- 24-28 s: the result, held, full frame. One line on what it is now good for.\n- 28-30 s: one line. This is the ONE video in the series that carries the download ask, so say the name once and point to the link in bio. In the other videos of the series, leave this line out.\n\nWord budget: 60-70 words at 165 wpm. On-screen text: the task, one label per action, the result label. Nothing animated.\n\nReturn: a table (time, what is on screen, spoken line, on-screen label), a list of the actual taps/clicks in order so I can rehearse it, and the caption (one line, the task, no hashtag spam).\n\nProduct: {product}\nTask: {task}\nActual steps in the product: {the clicks}","example":"Product: a notes app for students. Task: turn a photo of a whiteboard into typed, searchable notes.\n\n| Time | On screen | Spoken line | Label |\n|---|---|---|---|\n| 0-3 s | Phone pointed at a whiteboard full of equations | Lecture's over and this is all I've got. | WHITEBOARD TO NOTES |\n| 3-8 s | The photo in the camera roll, glare across half of it | A photo. Half of it is glare and none of it is searchable. | |\n| 8-12 s | Share sheet, tap the app | Share to the app. | TAP: SHARE |\n| 12-17 s | Progress, then text appears in a note | It reads the board, glare and all. | 1x, REAL TIME |\n| 17-21 s | Tap on an equation, it becomes editable | Tap any line to fix it. | TAP: EDIT |\n| 21-24 s | Search bar, type 'eigen', the note appears | Searchable from now on. | SEARCH: eigen |\n| 24-28 s | The typed note full screen, the photo as a thumbnail at the top | That's the whole lecture, typed, with the photo kept. | |\n| 28-30 s | App icon in the corner | It's called {product}, link in bio. | |\n\nTaps: camera roll, share, app, wait, tap line, edit, back, search 'eigen'.\nCaption: whiteboard photo to typed notes, from the share sheet.","tips":["In Claude Code, `/video-promo` reads the PRD and writes the hook/problem/demo/CTA script; use this prompt when you want a single task instead of a tour.","Shoot the task three times and use the take where something small went wrong and you fixed it on camera. That is the moment that reads as real.","The creator-growth rule: the download ask lives in one video in several, not in every one. Pick which one before you shoot the series."],"tags":["product-demo","watch-me-use-it","screen-recording","convert","tiktok","shorts","script"],"difficulty":"beginner","time":"15 min","skill":"video-promo","verified":false,"created":"2026-11-01","related":["screen-recording-walkthrough-format","before-after-reveal-format"],"url":"https://superduperai.co/library/watch-me-use-it-product-demo-format/","markdown":"https://superduperai.co/library/watch-me-use-it-product-demo-format.md"},{"slug":"watercolor-painterly-animation-prompt","title":"Watercolor and painterly: a moving painting with paper grain and bleeding edges","description":"A filled 7-part prompt for a hand-painted look: wet-on-wet edges, visible paper grain, boiling pencil lines, slow motion so the paint stays paint, and the drift to 3D when the action is too fast.","category":"generation","platforms":["any"],"works_with":["image-gen","kling","veo","runway"],"prompt":"SUBJECT: {subject, simplified to shapes: two or three colour areas, one dark accent}\nACTION: {one slow action, e.g. 'a boat drifts from left to centre' / 'a figure walks away under an umbrella'}\nSETTING: a rainy harbour town, grey-blue sky, a wet quay reflecting warm window lights, painted loosely with large areas left as bare paper\nCAMERA: wide shot, static; the only movement is the subject and the slow bleed of the paint\nLENS & LIGHT: no lens, no depth of field; light is the white of the paper, shadows are translucent washes layered wet-on-wet, edges bleed softly into each other\nSTYLE: traditional watercolour painting in motion, visible cold-pressed paper grain across the whole frame, pigment granulation in the washes, soft bleeding edges, a few dry-brush strokes for texture, outlines in loose pencil that boil slightly from frame to frame, a limited palette of three pigments, large areas of untouched white paper; no photoreal, no 3D, no digital gradient, no sharp edges\nSOUND: rain on water, distant gulls, no music\nDURATION: 6 seconds, 16:9. No on-screen text, no signature, no logos.","tips":["What it breaks: faces (a painted face drifts into a photoreal one mid-shot), fast action (the paint resolves into 3D shading to keep up), and text, including a signature. Keep figures small or turned away, keep the action slow.","Speed: slow. A watercolour that moves fast stops being a watercolour before the clip is half over.","Aspect: 16:9 for a scene; 9:16 works for a single figure because the empty paper reads as composition rather than as a crop.","Try first: an image-model still that already has the paper grain and the bleeding edges, then image-to-video with Kling or Veo; from text alone the look tends to become 'digital painting'. A suggestion, not a measurement."],"tags":["watercolor","painterly","illustration","style-prompt","image-to-video","text-to-video"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["image-to-video-first-frame-method","style-lock-block"],"url":"https://superduperai.co/library/watercolor-painterly-animation-prompt/","markdown":"https://superduperai.co/library/watercolor-painterly-animation-prompt.md"},{"slug":"weekly-growth-review-agent-prompt","title":"Weekly growth review: an agent reads the posts and the installs per campaign","description":"Paste the week's posts and the installs per campaign link; the agent reports numbers first, then what worked by name, then 3-4 actions, judging by installs and by multiples, never by a 20 % swing.","category":"growth","platforms":["tiktok","reels","shorts","youtube"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"You are reviewing one week of short-form posts for {app name}. Inputs below: the post log (date, account, platform, format, hook, views, link to the post) and installs per campaign link from the store consoles.\n\nRules:\n- Views are attention, installs are the result. Rank formats and accounts by installs per campaign, with views as a secondary column.\n- At small volumes, percentage swings are noise and multiples are findings. Report a change only when it is 2x or more; never recommend killing a format over a 20 % week.\n- A format is judged after a week of posts, not after one post.\n- Say 'probably' where the data does not show a cause.\n\nReport in this order:\n1. NUMBERS: posts, views, installs per campaign, installs total, cost (0 in Phase 1).\n2. WHAT WORKED: named posts with their numbers; which format and which account converted; which got reach without installs.\n3. WHAT DID NOT: named posts with low views or low installs, with the probable reason (hook, framing, format, account).\n4. PHASE 2 TRIGGER: did any video pass {view threshold} views AND show installs on its link? Yes or no, with the numbers.\n5. ACTIONS: 3-4 lines, each starting with a verb, for next week. Keep the cadence at 1-2 posts a day.\n\nPost log:\n{post log}\n\nInstalls per campaign:\n{installs per campaign}","steps":["Export the post log from your sheet and the installs from App Store Connect (App Analytics, Sources) and Play Console; paste both.","Run it the same weekday every week, so weeks are comparable.","Carry the actions into next week's shoot list; a review that changes nothing is a report."],"tips":["YouTube Analytics lags about 2 days for day-level data; for a Short posted this week read the view count from the video itself instead.","Multiples, not percentages: 3 installs to 9 is a finding; 30 to 36 is noise.","In Claude Code, `/youtube-channel` pulls the YouTube side through the Analytics API; the TikTok and Reels numbers are pasted by hand."],"skill":"creator-growth","tags":["weekly-review","analytics","installs","agent","creator-growth","measurement"],"difficulty":"intermediate","time":"20 min","verified":false,"created":"2026-11-01","related":["campaign-links-per-platform-and-account","phase-two-trigger-paid-micro-creators"],"url":"https://superduperai.co/library/weekly-growth-review-agent-prompt/","markdown":"https://superduperai.co/library/weekly-growth-review-agent-prompt.md"},{"slug":"youtube-eight-minute-explainer-outline","title":"YouTube explainer, 8 minutes: the outline prompt with timestamps","description":"A prompt that produces a timed outline for an 8-minute explainer: a cold open, a promise, five sections with a visual each, the mistake, a recap and one ask, before any script is written.","category":"scripts","platforms":["youtube"],"works_with":["claude-code","claude","chatgpt","any-llm"],"prompt":"Outline an 8-minute YouTube explainer on {topic} for {audience}. Output a table: Timestamp | Section | What is said (one sentence) | What is on screen | Why the viewer stays.\n\nStructure, with timings:\n0:00-0:20 Cold open: the most surprising moment or result from later in the video, shown, not announced.\n0:20-0:45 Promise: what the viewer will be able to do by the end, in one sentence, plus who this is not for.\n0:45-6:30 Five sections of 60-75 s. Each one answers one question the audience actually asks (write the question). Each needs one visual that is not the presenter: a screen, a diagram, an object, a demo.\n6:30-7:15 The mistake: the one thing people get wrong, with the fix.\n7:15-7:45 Recap: the five answers as five lines.\n7:45-8:00 One ask: a single next step (a link, a question in the comments, the next video).\n\nRules: no section longer than 75 s; a section with no visual gets rewritten until it has one; the cold open is cut from section 3 or later. Budget the narration at 150-170 words per minute (a parameter, check it against your own delivery). After the table, list the visuals to record.","steps":["Fix the five questions first. If the agent invents questions nobody asks, replace them with the ones from your comments, support inbox or search suggestions.","Record section by section; each is its own file, so a bad take costs 75 s, not 8 min.","Paste the final timestamps into the description as chapters (see the chapters entry)."],"tips":["The cold open is the hook of a long video. Pick it from material you already have, the way a trailer is cut from a finished film.","If the outline comes back under 6 minutes, that is the length. Do not pad; cut the target."],"tags":["youtube","explainer","outline","long-form","structure","chapters"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["transcript-to-youtube-chapters-prompt","length-follows-the-material"],"url":"https://superduperai.co/library/youtube-eight-minute-explainer-outline/","markdown":"https://superduperai.co/library/youtube-eight-minute-explainer-outline.md"},{"slug":"youtube-upload-checklist-private-then-phone-then-public","title":"YouTube upload checklist: gate the file, publish private, watch on a phone","description":"Cheap checks first, upload last: title under 100 characters, the real shooting date and chapters in the description, captions as tracks, Shorts linked both ways, a private publish watched on a phone.","category":"growth","platforms":["youtube","shorts"],"works_with":["claude-code","manual"],"prompt":"Before uploading {file} to YouTube, check in this order and stop at the first failure:\n\nFILE\n[ ] Title 100 characters or fewer (over 100 is invalidTitle and creates nothing). In the language of the audience the video is for.\n[ ] Description file exists and starts with the real shooting date (from container metadata, not the file name), then one paragraph, then chapters as timestamps starting at 0:00, then a 'Shorts from this video' block with links.\n[ ] Thumbnail extracted and looked at.\n[ ] Playlist resolved.\n[ ] Caption files parse. Long video: an .srt per language as tracks, never burned. Short: burned in, 1-2 word lines.\n[ ] Branded outro present if the channel uses one.\n[ ] Third-party music checked for Content ID (strip it first if any).\n[ ] Audio timestamps: packet pts match index*1024/sample_rate after loudnorm (asetpts=N/SR/TB last in the chain).\n\nPUBLISH\n[ ] Upload PRIVATE.\n[ ] Watch it on a phone, start to end, sound on: the joins, the captions, the outro, the first 3 seconds.\n[ ] Set privacy to public (videos.update of status.privacyStatus).\n[ ] Read the description back after 10 s; read-after-write is stale, and a second write can put the old text back.\n\nLINK\n[ ] The Short's description links to the long video; the long video's description lists its Shorts.\n[ ] 'Related video' on the Short set by hand in Studio (the API accepts relatedVideoId with 200 and does not save it).\n\nMEASURE\n[ ] Judge at 48 h, not at 1 h; 0 views an hour after publish is normal.","steps":["Run the FILE block as a script before the first byte goes up; an upload costs 1,600 of the day's 10,000 quota units, so a failed one is 16 % of the day.","Keep the phone watch honest: full length, not the first minute.","Hide a weak video by setting it unlisted, never delete; deletion loses the URL and the stats."],"tips":["Quota resets at midnight Pacific; 5-6 uploads a day in practice. Plan a batch of Shorts against it and push the rest to tomorrow instead of failing mid-batch.","A week in, nobody can tell the days apart; the real shooting date in every description is what makes a series navigable.","In Claude Code, `/youtube-channel` runs this gate, uploads private, publishes and reads the Analytics API after 48 h."],"skill":"youtube-channel","tags":["youtube","upload","checklist","publishing","youtube-channel","shorts"],"difficulty":"intermediate","time":"15 min","verified":false,"created":"2026-11-01","related":["weekly-growth-review-agent-prompt","posting-cadence-one-vertical-cut-three-feeds"],"url":"https://superduperai.co/library/youtube-upload-checklist-private-then-phone-then-public/","markdown":"https://superduperai.co/library/youtube-upload-checklist-private-then-phone-then-public.md"}]}