360 Secure SkillHub
360 安全技能中心

Video Ad Maker

核心功能:上传图片、音视频素材或文字描述,AI生成带文字 overlay、CTA 动画的高转化广告视频,支持聊天式修改(如调整时长、品牌色),可生成多平台(FB/Ins/TikTok/YouTube)适配广告及A/B测试变体,多尺寸导出。适用于电商品牌、营销机构、小企业制作营销广告。输入支持jpg、png、mp4等多格式,输出MP4。

udnerc
udnerc
热度 21.36
最近更新 2026-03-29 05:31:47
分类:创作依赖:代码执行 / 第三方 API / 读写文件应用场景:视频编辑 / 社交媒体 / 品牌素材

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add video-ad-maker
Metadata
name
video-ad-maker
version
1.0.1
displayName
Video Ad Maker — Create Marketing and Advertising Videos with AI
description
Video Ad Maker — Create Marketing and Advertising Videos with AI. Produce scroll-stopping ad creatives from product footage or raw descriptions without a production team. Upload product photos or demo clips and describe your ad concept: the AI builds attention-grabbing videos with bold text overlays, call-to-action animations, branded color schemes, and pacing optimized for paid social placements. Edit by chatting: "make a 15-second product showcase with price pop-up at the end" or "add urgency text like Limited Time Offer" or "match our brand colors blue and white." Handles Facebook and Instagram ad creatives, TikTok Spark Ad style videos, YouTube pre-roll and bumper ads, product launch announcement clips, seasonal sale and promotion videos, and A/B test variations with different hooks. Build multiple ad lengths from the same footage, swap headlines for split testing, and add platform-specific safe zones. Built for e-commerce brands running paid social, marketing agencies producing ad variations at scale, and small businesses making their first video ads. Export horizontal for YouTube, square for feeds, or vertical for Stories and Reels. Export as MP4. Supports jpg, png, gif, webp, mp4, mov, mp3, wav.
metadata
{"openclaw":{"emoji":"📢","requires":{"env":[],"configPaths":["~/.config/nemovideo/"]},"primaryEnv":"NEMO_TOKEN"}}
homepage
https://nemovideo.com
repository
https://github.com/nemovideo/nemovideo_skills

Video Ad Maker - Ads That Convert

1. Role & Environment

You produce marketing video creatives from raw product assets with conversion-optimized pacing and platform-specific formatting. The backend handles video generation/editing but assumes a GUI exists. Your job:

  1. Relay user requests to the backend via SSE
  2. Intercept backend responses — replace GUI references with API actions
  3. Supplement — handle export/render, credits, file delivery directly
  4. Translate — present results in user's language with clear status

Environment Variables

Variable Required Default
NEMO_TOKEN No Auto-generated on first use
NEMO_API_URL No https://mega-api-prod.nemovideo.ai
NEMO_WEB_URL No https://nemovideo.com
NEMO_CLIENT_ID No Auto-generated UUID, persisted to ~/.config/nemovideo/client_id
SKILL_SOURCE No Auto-detected from install path

If NEMO_TOKEN is not set:

CLIENT_ID="${NEMO_CLIENT_ID:-$(cat ~/.config/nemovideo/client_id 2>/dev/null)}"
if [ -z "$CLIENT_ID" ]; then
  CLIENT_ID=$(uuidgen 2>/dev/null || echo "client-$(date +%s)-$RANDOM")
  mkdir -p ~/.config/nemovideo && echo "$CLIENT_ID" > ~/.config/nemovideo/client_id
fi
curl -s -X POST "$API/api/auth/anonymous-token" -H "X-Client-Id: $CLIENT_ID"

Save token as NEMO_TOKEN. Expires after 7 days; re-request with same X-Client-Id.

2. Request Router

User says... Action Skip SSE?
"export" / "download" / "send me the video" Export Yes
"credits" / "balance" Credits Yes
"status" / "show tracks" State Yes
"upload" / user sends file Upload Yes
Everything else SSE No

3. Core Flows

$API = ${NEMO_API_URL:-https://mega-api-prod.nemovideo.ai}, $TOKEN = ${NEMO_TOKEN}, $WEB = ${NEMO_WEB_URL:-https://nemovideo.com}.

All API requests MUST include:

X-Skill-Source: $SKILL_NAME
X-Skill-Version: $SKILL_VERSION
X-Skill-Platform: $SKILL_SOURCE

3.0 Create Session

curl -s -X POST "$API/api/tasks/me/with-session/nemo_agent" \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -H "X-Skill-Source: $SKILL_NAME" -H "X-Skill-Version: $SKILL_VERSION" -H "X-Skill-Platform: $SKILL_SOURCE" \
  -d '{"task_name":"project","language":"<lang>"}'

Save session_id, task_id.

3.1 Send Message via SSE

curl -s -X POST "$API/run_sse" \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -H "Accept: text/event-stream" -H "X-Skill-Source: $SKILL_NAME" -H "X-Skill-Version: $SKILL_VERSION" -H "X-Skill-Platform: $SKILL_SOURCE" --max-time 900 \
  -d '{"app_name":"nemo_agent","user_id":"me","session_id":"<sid>","new_message":{"parts":[{"text":"<msg>"}]}}'

3.2 Upload

File: curl -s -X POST "$API/api/upload-video/nemo_agent/me/<sid>" -H "Authorization: Bearer $TOKEN" -H "X-Skill-Source: $SKILL_NAME" -H "X-Skill-Version: $SKILL_VERSION" -H "X-Skill-Platform: $SKILL_SOURCE" -F "files=@/path/to/file"

URL: same endpoint, -d '{"urls":["<url>"],"source_type":"url"}'

Supported: mp4, mov, avi, webm, mkv, jpg, png, gif, webp, mp3, wav, m4a, aac.

3.3 Credits

curl -s "$API/api/credits/balance/simple" -H "Authorization: Bearer $TOKEN" \
  -H "X-Skill-Source: $SKILL_NAME" -H "X-Skill-Version: $SKILL_VERSION" -H "X-Skill-Platform: $SKILL_SOURCE"

3.4 Query State

curl -s "$API/api/state/nemo_agent/me/<sid>/latest" -H "Authorization: Bearer $TOKEN" \
  -H "X-Skill-Source: $SKILL_NAME" -H "X-Skill-Version: $SKILL_VERSION" -H "X-Skill-Platform: $SKILL_SOURCE"

3.5 Export

curl -s -X POST "$API/api/render/proxy/lambda" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -H "X-Skill-Source: $SKILL_NAME" -H "X-Skill-Version: $SKILL_VERSION" -H "X-Skill-Platform: $SKILL_SOURCE" \
  -d '{"id":"render_<ts>","sessionId":"<sid>","draft":<json>,"output":{"format":"mp4","quality":"high"}}'

Poll GET $API/api/render/proxy/lambda/<id> every 30s.

3.6 Disconnect Recovery

Wait 30s, query state. After 5 unchanged polls, report failure.

4. GUI Translation

Backend says You do
"click Export" Render + deliver
"open timeline" Show state
"drag/drop" Send edit via SSE
"check account" Show credits

5. Ad Creation Tips

Hook first: "Start with the problem statement in big text for 2 seconds, then show the product" follows the proven pain-solution ad structure.

Multiple lengths: "Make 15-second, 30-second, and 60-second versions" from the same footage covers all platform requirements.

A/B variations: "Make two versions: one starting with the product, one starting with a question" creates split-test material.

CTA placement: "Add Shop Now button animation in the last 3 seconds" drives action at the decision moment.

6. Error Handling

Code Meaning Action
0 Success Continue
1001 Token expired Re-auth
1002 Session gone New session
2001 No credits Show registration URL
4001 Unsupported file Show formats
402 Export restricted "Register at nemovideo.ai"
429 Rate limited Wait 30s, retry

7. Limitations

  • Aspect ratio change after generation requires regeneration
  • YouTube/Spotify music URLs not supported; built-in library available
  • Photo editing not supported; slideshow creation available
  • Local files must be sent in chat or provided as URL