一键导入
marketer-ad-variant-factory
Fan out 50+ ad variants from one hero image.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Fan out 50+ ad variants from one hero image.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Five brand direction variations for pitch discovery.
Export a white-label client deliverable as a zip.
Per-client asset templates scoped by workspace.
Client-branded pitch mockups: hero, tiles, slides.
Generate icons, empty states, onboarding for apps.
Deterministic default-avatar generator per user.
| name | marketer-ad-variant-factory |
| description | Fan out 50+ ad variants from one hero image. |
| license | MIT |
| metadata | {"author":"Picsart","version":"1.0.0","hermes":{"category":"marketing","tags":["picsart","marketing","campaigns","creative"]}} |
Take one approved concept and explode it into 10-30 shippable ad variants for A/B testing on Meta, Google, TikTok, and Pinterest. Built for speed (parallel batch) and for direct upload to ad accounts (deterministic naming).
gen-ai generate) or for cross-channel creative (use marketer-campaign-kit). This skill is for depth on one concept, not breadth across channels.Ask up front if the brief doesn't cover it (combine into one message):
{campaign}_{axis}_{variant}_{size}.webp)?If the user just says "a lot", default to 5 visuals × 3 ratios = 15 variants.
id that maps to your ad-platform naming convention. The image field references the hero.gen-ai batch run variants.json --dry-run
gen-ai batch run variants.json -c 8 -o ./ad-variants
results.json for non-completed jobs, retry.
gen-ai batch resume ./ad-variants
results.json has every path + URL for direct CSV import to Meta Ads Manager / TikTok Ads / Google Ads.Naming convention {campaign}_{visual}_{composition}_{size} keeps downstream uploads clean.
{
"defaults": {
"model": "recraftv4",
"negativePrompt": "low quality, watermark, busy background",
"imageUrls": ["https://cdn-pipeline-output.picsart.com/.../hero.webp"]
},
"jobs": [
{ "id": "launch_bright_closeup_9x16", "prompt": "bright daylight variant, close-up focal, warm tones", "aspectRatio": "9:16" },
{ "id": "launch_bright_closeup_1x1", "prompt": "bright daylight variant, close-up focal, warm tones", "aspectRatio": "1:1" },
{ "id": "launch_bright_closeup_16x9", "prompt": "bright daylight variant, close-up focal, warm tones", "aspectRatio": "16:9" },
{ "id": "launch_studio_wide_9x16", "prompt": "studio lighting, wide shot, neutral backdrop", "aspectRatio": "9:16" },
{ "id": "launch_studio_wide_1x1", "prompt": "studio lighting, wide shot, neutral backdrop", "aspectRatio": "1:1" },
{ "id": "launch_studio_wide_16x9", "prompt": "studio lighting, wide shot, neutral backdrop", "aspectRatio": "16:9" },
{ "id": "launch_urban_medium_9x16", "prompt": "urban street setting, medium shot, cinematic", "aspectRatio": "9:16" },
{ "id": "launch_urban_medium_1x1", "prompt": "urban street setting, medium shot, cinematic", "aspectRatio": "1:1" },
{ "id": "launch_urban_medium_16x9", "prompt": "urban street setting, medium shot, cinematic", "aspectRatio": "16:9" }
]
}
9 variants from 3 visual × 3 ratios. Scale to 15 or 30 by adding visual rows. Remember: no count field — emit one job per variant.
| Sub-task | Model | Why |
|---|---|---|
| Brand-consistent variants from a hero (default) | recraftv4 | Strongest at keeping design language consistent across many renders |
| Photoreal product / lifestyle variants | flux-2-pro | Best photoreal adherence, great for Meta/TikTok product ads |
| Variants with readable headline text baked in | ideogram-v3 | Only model that reliably renders legible copy — use when you can't overlay |
| Face/character continuity across variants | gemini-3-pro-image | Nano Banana Pro locks subject identity best |
| Background swaps on a fixed subject | gen-ai change-bg (subcommand) | Keeps the subject pixel-identical, only swaps the scene |
| Ultra-cheap exploration before the flagship run | gemini-3.1-flash-image | ~5x cheaper, fast — use to pick winning prompts, then regenerate with flux/recraft |
Confirm IDs with gen-ai models --mode image.
image field in defaults — every variant inherits the brand look.{campaign}_{visual}_{composition}_{size} parses cleanly in Meta/TikTok/Google ads CSV templates.gemini-3.1-flash-image for ~$1. Pick top 8. Regenerate those 8 through flux-2-pro or recraftv4 for the final upload.id per variant means unique output filename — resume is safe and collision-free.image in defaults, each variant drifts visually — the bundle doesn't feel like one campaign../variants-$(date +%F-%H%M)) so resume + audit work cleanly.Run gen-ai whoami to confirm authentication, then re-run the failed command with --debug.
| Variant count | Model | Credits each | Total | Wall time @ concurrency 8 |
|---|---|---|---|---|
| 9 variants | recraftv4 | ~2 | ~18 | ~45s |
| 15 variants | recraftv4 | ~2 | ~30 | ~90s |
| 30 variants (exploration) | gemini-3.1-flash-image | ~0.5 | ~15 | ~2 min |
| 30 variants (flagship) | flux-2-pro | ~2 | ~60 | ~3 min |
| 30 drafts + 8 upgraded | mixed | ~30 | ~4 min total |
Always confirm with gen-ai batch run variants.json --dry-run and pause if the estimate exceeds the user's cap.
gen-ai-use/SKILL.md — full CLI reference (flags, model catalog, auth)gen-ai-batch/SKILL.md — manifest shape, concurrency tuning, resumegen-ai-workflows/SKILL.md — general multi-step patternsworkflows/marketer-campaign-kit/SKILL.md — chain before this to establish the hero + brand lookworkflows/marketer-localize-campaign/SKILL.md — chain after this to fan winning variants across markets