# Send Agent Media: Generate AI-powered videos and images from the terminal using the `agent-media` CLI. to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
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.
```
### Upgrade existing

```text
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.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "agent-media",
    "name": "Agent Media: Generate AI-powered videos and images from the terminal using the `agent-media` CLI.",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/nevo-david/agent-media",
    "canonicalUrl": "https://clawhub.ai/nevo-david/agent-media",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/agent-media",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=agent-media",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "agent-media",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-29T12:18:38.127Z",
      "expiresAt": "2026-05-06T12:18:38.127Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=agent-media",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=agent-media",
        "contentDisposition": "attachment; filename=\"agent-media-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "agent-media"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/agent-media"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/agent-media",
    "downloadUrl": "https://openagent3.xyz/downloads/agent-media",
    "agentUrl": "https://openagent3.xyz/skills/agent-media/agent",
    "manifestUrl": "https://openagent3.xyz/skills/agent-media/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/agent-media/agent.md"
  }
}
```
## Documentation

### agent-media — AI UGC Video Production & Media Generation

Produce complete UGC videos and SaaS review videos from the terminal using the agent-media CLI.

### MANDATORY RULES — READ BEFORE EVERY COMMAND

You MUST follow ALL of these rules. Violating any rule produces a broken, unwatchable video.

### Rule 1: ALWAYS use --actor

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.

### Rule 2: ALWAYS count words — 2.5 words per second

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.

### Rule 3: SaaS reviews MUST have screenshots

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.

### Rule 4: SaaS reviews MUST have the product name

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.

### Rule 5: Always use --sync

Always append --sync to wait for the result and get the output URL.

### Rule 6: Name screenshot files descriptively

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.

### Prerequisites

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.

### UGC Pipeline (Flagship Feature)

The UGC pipeline turns a script into a complete video with AI talking heads, B-roll, voiceover, and animated subtitles — one command.

### Flow

Script → Scene splitting → TTS voiceover → AI talking heads + B-roll → Crossfade assembly → Animated subtitles → Background music → End screen CTA

### Basic UGC

# 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

### UGC with B-roll

# 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

### UGC Flags

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

### Script Templates

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

### Subtitle Styles

Available styles: hormozi (yellow karaoke highlight, default), minimal, bold (neon cyan), karaoke (green pop), clean (white on dark), tiktok, neon

### SaaS Review Videos

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)

### Step-by-Step Flow (FOLLOW THIS EXACTLY)

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

### Review Flags

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

### Persona Management

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>

### Add Subtitles to Any Video

agent-media subtitle <video-path-or-job-id> --style hormozi --sync
agent-media subtitle ./my-video.mp4 --style bold --sync

### Pricing

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.

### Job Management

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

### Account

agent-media whoami              # Current user info
agent-media credits             # Credit balance
agent-media subscribe           # Manage subscription
agent-media login / logout      # Authentication

### Checklist Before Every UGC Command

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)
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: nevo-david
- Version: 1.0.1
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-04-29T12:18:38.127Z
- Expires at: 2026-05-06T12:18:38.127Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/agent-media)
- [Send to Agent page](https://openagent3.xyz/skills/agent-media/agent)
- [JSON manifest](https://openagent3.xyz/skills/agent-media/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/agent-media/agent.md)
- [Download page](https://openagent3.xyz/downloads/agent-media)