Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Generate AI-powered videos and images from the terminal using the `agent-media` CLI.
Generate AI-powered videos and images from the terminal using the `agent-media` CLI.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Produce complete UGC videos and SaaS review videos from the terminal using the agent-media CLI.
You MUST follow ALL of these rules. Violating any rule produces a broken, unwatchable video.
Every UGC video MUST include --actor <slug>. Without an actor, there is no talking head and no lip sync โ the video will just be a static image with voiceover. If the user hasn't specified an actor, ask them to pick one or default to a popular one like sofia or naomi. Run agent-media actor list to browse options.
Natural speech is 2.5 words/second. Scripts MUST match the target duration: 5s video โ ~12 words max 10s video โ ~25 words max 15s video โ ~37 words max If the user provides a script that is too long, YOU MUST rewrite it to fit. A 73-word script crammed into 15 seconds will sound robotic and lose lip sync. NEVER submit a script that exceeds the word limit.
For any SaaS/product review video, you MUST provide 1-3 product screenshots via --broll --broll-images. Without screenshots, the video has no product context โ viewers see only a talking head with no evidence of the product. --broll-images accepts both HTTP/HTTPS URLs and local file paths (local files are auto-uploaded). Images are semantically matched to the most relevant broll scene based on filename โ so use descriptive filenames! Examples: --broll-images ./dashboard.png,./calendar-view.png (local files โ descriptive names!) --broll-images https://example.com/pricing-page.png,https://example.com/editor.png (URLs) Mix of both works too If the user provides a product URL but no screenshots, visit the site yourself and extract image URLs from the page.
Ask the user: "What SaaS product should I review?" Do NOT proceed without it. The product name must appear in the script so it shows up in subtitles.
Always append --sync to wait for the result and get the output URL.
Broll images are semantically matched to scenes by filename. Use descriptive names so the AI assigns the right image to the right scene: GOOD: dashboard.png, calendar-view.png, post-editor.png BAD: screenshot1.png, IMG_0042.png, image.png When saving screenshots for --broll-images, rename them to describe what they show.
The agent-media CLI must be installed and authenticated: npm install -g agent-media-cli agent-media login Verify with agent-media whoami. If not logged in, run agent-media login and follow the OTP flow.
The UGC pipeline turns a script into a complete video with AI talking heads, B-roll, voiceover, and animated subtitles โ one command.
Script โ Scene splitting โ TTS voiceover โ AI talking heads + B-roll โ Crossfade assembly โ Animated subtitles โ Background music โ End screen CTA
# ALWAYS include --actor for talking heads + lip sync agent-media ugc "Ever wonder why some videos go viral? Here's the secret..." --actor sofia --sync # From file agent-media ugc ./script.txt --actor naomi --sync # AI-generated script from a product description agent-media ugc -g "A fitness tracker that monitors sleep quality" --actor marcus --sync
# With B-roll cutaway scenes mixed in agent-media ugc "Your script here..." --actor marcus --broll --sync # With product screenshots as B-roll (REQUIRED for SaaS reviews) agent-media ugc "Your script here..." --actor sofia --broll --broll-images https://example.com/screenshot1.png,https://example.com/screenshot2.png --sync
FlagDescriptionExample--actor <slug>Library actor for talking heads--actor sofia--persona <slug>Custom persona (cloned voice + face)--persona brand-voice--face-url <url>Direct face photo URL or local file--face-url ./photo.png--voice <name>TTS voice--voice nova--tone <name>Voice tone: energetic, calm, confident, dramatic--tone energetic--style <name>Subtitle style (default: hormozi)--style bold-d, --duration <s>Target duration: 5, 10, or 15 seconds--duration 10--aspect <ratio>Aspect ratio: 9:16, 16:9, 1:1--aspect 16:9--music <genre>Background music: chill, energetic, corporate, dramatic, upbeat--music chill--cta <text>End screen call-to-action text--cta "Follow for more"--brollEnable B-roll cutaway scenes--broll--broll-images <urls>Comma-separated screenshot/image URLs for B-roll--broll-images url1,url2--template <slug>Script template (see below)--template saas-review-g, --generate-script <prompt>AI-generate script from description-g "yoga mat product"--product-url <url>Product URL for script generation context--product-url https://...-s, --syncWait for completion and print output URL--sync
TemplateStructureBest FormonologueHook โ Body โ CTADirect-to-camera talkingtestimonialProblem โ Solution โ Result โ CTACustomer storiesproduct-reviewIntro โ Experience โ Verdict โ CTAProduct reviewsproblem-solutionHook โ Pain โ Solution โ CTABefore/after pain pointssaas-reviewHook โ Walkthrough โ Opinion โ CTASaaS/app reviewsbefore-afterHook โ Before โ After โ CTATransformationslisticleHook โ Tip 1 โ Tip 2 โ Tip 3 + CTATips and listsproduct-demoIntro โ Demo โ Recap โ CTAProduct walkthroughs
Available styles: hormozi (yellow karaoke highlight, default), minimal, bold (neon cyan), karaoke (green pop), clean (white on dark), tiktok, neon
Generate a complete SaaS review video. ALL FOUR are required โ do NOT skip any: Product name in the script (so it appears in subtitles) --actor (for talking head + lip sync) --broll --broll-images with 1-3 product screenshot URLs Script word count matching duration (2.5 words/sec)
Get product name โ ask user if not provided. STOP if missing. Get 1-3 screenshot URLs โ ask user, or if they give a URL, visit the site and extract <img> URLs showing the product dashboard/UI. STOP if no screenshots. Pick an actor โ ask user or default to naomi or sofia. Run agent-media actor list if they want to browse. Write the script โ MUST be ~25 words for 10s or ~37 words for 15s. Mention the product name 2-3 times. Count the words before submitting. Run the command with ALL required flags: # CORRECT โ descriptive filenames so images match the right scenes agent-media ugc "Postiz is the best social media tool I've used. Postiz schedules across twenty-five platforms with AI. Try Postiz today." \ --actor naomi --duration 10 --style hormozi --broll \ --broll-images ./postiz-dashboard.png,./postiz-calendar.png --sync # CORRECT โ URLs with descriptive paths work too agent-media ugc "Postiz is the best social media tool I've used. Postiz schedules across twenty-five platforms with AI. Try Postiz today." \ --actor naomi --duration 10 --style hormozi --broll \ --broll-images "https://postiz.com/dashboard-screenshot.png,https://postiz.com/scheduling-view.png" --sync # WRONG โ no actor, no screenshots, script too long agent-media ugc "Here's how to schedule a post in Postiz step by step..." --sync
FlagDescriptionExample--actor <slug>AI actor (required)--actor naomi--brollEnable B-roll scenes (required for reviews)--broll--broll-images <paths>Screenshot URLs or local files (required, 1-3)--broll-images ./img1.png,./img2.png--duration <s>5, 10, or 15 seconds--duration 10--style <name>Subtitle style--style hormozi--cta <text>End screen text--cta "Try it free"-s, --syncWait for result (always use)--sync
Save voice + face combos for consistent UGC across videos: # Create a persona from voice sample + face photo agent-media persona create --name "brand-voice" --voice ./sample.mp3 --face ./photo.png # List personas agent-media persona list # Use in UGC agent-media ugc "Your script..." --persona brand-voice --sync # Delete agent-media persona delete <persona-id>
agent-media subtitle <video-path-or-job-id> --style hormozi --sync agent-media subtitle ./my-video.mp4 --style bold --sync
PlanPriceMonthly Credits~10s VideosCreator$39/mo2,500~3Pro$69/mo5,000~6Pro Plus$129/mo10,000~12 ~800 credits per 10s video. Pay-as-you-go credit packs also available. Run agent-media credits to check balance.
agent-media status <job-id> # Check job status agent-media list # List recent jobs agent-media download <job-id> # Download output media agent-media cancel <job-id> # Cancel and refund credits agent-media retry <job-id> # Retry a failed job
agent-media whoami # Current user info agent-media credits # Credit balance agent-media subscribe # Manage subscription agent-media login / logout # Authentication
Before running ANY agent-media ugc command, verify: --actor is included (no actor = no talking head = broken video) Script word count matches duration (count words: 5s=12, 10s=25, 15s=37) --sync is appended For SaaS reviews: --broll --broll-images with 1-3 screenshot URLs For SaaS reviews: product name appears 2-3 times in script Credits are sufficient (agent-media credits)
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.