ai-ugc-ad-video
Skill23 starsChanged 8 months agoMITView on GitHub
Open-source alternative to Arcads: AI UGC ads with an AI actor holding your real product. Casts a creator whose age matches the claim in the room where the problem happens, writes a phone-real script (a yapper, unboxing, street interview or in-car take) with every line in the prompt, locks the face, the voice and the product label across shots, prompts camera flaws and breaths so it doesn't look waxy, generates on Seedance 2.5, Kling 4 or Creatify through varg, and labels it. It never puts a first-person testimonial or result in an AI mouth (FTC rule) and never targets TikTok Shop presenters (AI voices banned there). Use when someone wants AI UGC ads, an AI creator or actor talking about their product, Arcads/Creatify/MakeUGC-style ads, or UGC without hiring creators. NOT for TikTok Shop affiliate videos (use tiktok-shop-video), product-only shots with no person (use product-photo-to-video), or the same characters across a multi-scene story (use varg-consistent-characters).
- Reads credentials
In this repository75 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- llms.txtllms.txt
- ad-creative-testingSkill
- ai-ad-compliance-checkSkill
- app-ui-mockupsSkill
- caption-stylesSkill
- character-passportSkill
- code-to-video-previzSkill
- ecommerce-video-adsSkill
- ecommerce-video-editSkill
- edit-footage-with-codeSkill
- find-referencesSkill
- footage-effectsSkill
- gpt-image-2-6Skill
- gpt-image-gifSkill
- gpt-image-markup-editSkill
- gpt-image-sprite-sheetSkill
- gpt-image-sticker-packSkill
- how-to-make-ai-videoSkill
- kinetic-type-artSkill
- kling-4-action-montageSkill
- kling-4-keyframe-filmSkill
- kling-4-promptingSkill
- make-a-woke-profile-with-chatgptSkill
- maps-and-data-motionSkill
- media-downloadSkill
- media-judgeSkill
- motion-formatsSkill
- paper-shadersSkill
- product-photo-to-videoSkill
- product-video-hooksSkill
- short-form-ffmpeg-cookbookSkill
- social-overlaysSkill
- threejs-animaticSkill
- tiktok-shop-videoSkill
- title-designSkill
- transition-craftSkill
- varg-ad-library-remixSkill
- varg-ad-localizeSkill
- varg-ad-variantsSkill
- varg-aiSkill
- varg-birthday-videoSkill
- varg-character-absurdSkill
- varg-character-beautiful-womanSkill
- varg-character-big-guySkill
- varg-character-cartoonSkill
- varg-character-cringeSkill
- varg-character-designSkill
- varg-character-fitnessSkill
- varg-character-grandmaSkill
- varg-character-keynoteSkill
- varg-consistent-charactersSkill
- varg-dropship-reelSkill
- varg-mascot-jingle-adSkill
- varg-mockupsSkill
- varg-music-videoSkill
- varg-occasion-videoSkill
- varg-podcast-videoSkill
- varg-previzSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
1 rule. About 0 are common, 1 is distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 93
Before anything reaches the edit, compare each clip with the references: face (jaw, freckles, hair), label text letter by letter, product …
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Open-source alternative to Arcads: AI UGC ads
An AI creator talks to camera about your product, holds it, uses it, and sounds like a person filming themselves. Generation runs on varg: the MCP (call_tool) or POST https://api.varg.ai/v2/tools/{image|video|speech}/call. Quote credits only, from estimate_cost, and wait for a yes before spending.
What the data says: in one operator's $100K test (220 videos), human UGC had the higher CTR and AI the higher ROAS, because AI made more variants cheaply. AI works for cold traffic, low-trust products and finding the winning angle; it is weak for high-ticket offers and warm audiences. The script matters more than whether the face is real. Use AI to find the angle, then consider remaking the winner with a real creator.
0. Gates
- Where does it run? Meta ads and TikTok ads: OK, labelled. TikTok Shop video: stop and use
tiktok-shop-video(AI voices as presenter and AI-made material are against Shop rules). - Claims: the AI creator may demo and state facts. Never write "I used it for two weeks and…", before/after results, or "my skin cleared". The FTC bans fake testimonials, AI ones included (up to $53,088 per violation); New York requires a synthetic-performer disclosure in ads. Real reviews may be quoted as reviews ("2,100 reviews say…").
- Product photo: clean, straight-on, label readable. "If the label isn't readable in the reference, the model invents its own text. That's where most people's ads die."
- Cost: quote the full batch with
estimate_cost(assume ~3 takes per usable Seedance clip, ~1–2 for Kling 4).
1. Cast the creator
- Age matches the claim, written as a number ("54-year-old woman"); room matches the problem (energy = kitchen at 6 am, sleep = bedroom lights off, bloating = bathroom mirror, joints = stairs, private = car).
- Real skin: "freckles, visible pores, a small blemish near the jaw, flyaway hairs, no retouching, no skin smoothing".
- One outfit with one specific detail ("collar slightly crooked, sleeves pushed up").
- Generate the creator still with
gpt_image_2_5ornano_banana_2_1: "iPhone selfie photo, slightly below eye level, phone at arm's length…". Pick one, then make an identity sheet (front, ¾, side, expressions) and reuse the same image on every shot. Deeper casting:varg-character-design.
2. Pick the format
| Format | Shape | Notes |
| Yapper | 30–60 s to camera, a story; product named as the fix after ~35 s | The 2026 workhorse; do the jump cuts by hand (cut on a blink) |
| End-of-day vlog | 15 s, low energy, product beside the face | Template in references/prompts.md P1 |
| Unboxing / in-hand demo | Product by second 2 | Highest hit-rate format on Meta |
| Street interview | The question hooks; no product for ~15 s | Feed each finished clip back as the reference for the next |
| In-car | Private, unscripted | "The cheapest to render well" |
| Podcast clip | Host + guest | Use varg-podcast-video |
3. Write the script into the prompt
Every spoken line goes in the video prompt, with timings. 60–75 words for 30 s (about 2.5 a second), never over 85; size and check them with the video-script skill. Open on the most embarrassing version of the problem, or mid-motion with a throwaway line ("Okay. Last thing, then bed."). Add written-in stumbles. End on one CTA.
4. Generate shot by shot
For each beat (≤5 s, or one 15 s Seedance take):
Seedance 2.5 / Kling 4 inputs:
image 1 = the creator still (identity)
image 2 = the product photo (label readable)
prompt = TALENT / PRODUCT (label text spelled out in order) / LOCATION / LIGHTING (one condition)
/ FRAMING / beats with dialogue / PERFORMANCE / CAMERA CHARACTER / POSITIVE LOCKSseedance_2_5: the most real; reported ~3 attempts per keeper.kling_v4: cheaper, often right first time. Draft onkling_v4_flash.creatify_boreal: a product presenter with synced speech in one call, when speed matters more than control.- Voice: native audio from the video model, or
eleven_v4+sync_v3lip-sync. Give the model the voice file and the exact transcript, or it stretches the speech to fit the motion. - Locks: same face, wardrobe, product, room and light on every beat; "exactly two arms and two hands, one hand always holding the phone"; no model-hopping between shots of one creator.
- Realism: handheld tremor, autofocus hunts, rolling shutter, sensor noise, mild wide-angle distortion at arm's length; a breath or a swallow between lines; phone-mic audio; no music, no captions in generation.
Full prompts (realistic skincare UGC, camcorder vlog, street interview chain, Creatify JSON): references/prompts.md.
5. Reject pass
Before anything reaches the edit, compare each clip with the references: face (jaw, freckles, hair), label text letter by letter, product shape and colour, hand count, lip-sync drift. Regenerate failures; don't fix them with captions.
6. Edit and label
- Assemble with
ecommerce-video-edit: hook first, cut dead air (human jump cuts), captions in the safe zone, one CTA, -14 LUFS, one MP4 per hook. - Label: TikTok's AIGC toggle (it resets on duplicated campaigns) or an on-screen "AI-generated"; Meta adds "AI info" itself; keep generation logs.
- Variants: a different buyer, angle or format, not 10 avatars reading one script (
ad-creative-testing).
Related
ecommerce-video-ads · product-video-hooks · varg-character-design · varg-consistent-characters · varg-podcast-video · ecommerce-video-edit
Sources: r/FacebookAds $100K test, FTC rule, TikTok AI policy, @abxxai realistic UGC thread, @CEO_Vlad, @YourAlphaMom Seedance vs Kling test, @mikefutia street interview.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

