Ad Creative Set
Generate a high-converting ad creative set — hero image, ad copy variations, and platform-optimized crops for Meta, Google Display, and LinkedIn.
Inputs
| Name |
Type |
Required |
Default |
Description |
product_or_service |
text |
yes |
— |
What is being advertised (e.g. "SaaS project management tool for remote teams"). |
target_audience |
text |
yes |
— |
Who the ad is for (e.g. "startup founders aged 25–40, tech-savvy"). |
campaign_goal |
text |
no |
awareness |
Campaign objective — "awareness", "consideration", or "conversion". |
tone |
text |
no |
professional, clean, modern |
Creative tone and visual style (e.g. "bold and disruptive", "luxury minimal", "friendly and approachable"). |
product_image |
image_url |
no |
— |
Optional product or brand image URL already in the session. |
Steps
This skill has TWO phases. Phase A creates the hero concept for approval; Phase B fans out to platform formats.
Phase A — Hero image + Ad copy
Submit ONE the plan with:
- Hero image —
muapi image generate (model=nano-banana-pro) or muapi image edit (model=nano-banana-pro-edit) if {{product_image}} is provided:
- Aspect ratio: 1:1 (universal starting point).
- Prompt must capture: product/service benefit, target audience lifestyle cue, campaign tone.
- Style:
{{tone}}, advertising photography, clean background, product focus, ultra detailed, commercial quality.
- Tier: quality.
After the plan executes, present the hero asset and 3 ad copy variations:
- Variation A — Problem-aware hook: "Tired of X? [Product] fixes that."
- Variation B — Benefit-led: "[Feature] → [Outcome] for [Audience]."
- Variation C — Social proof / urgency: "X teams already use [Product]."
Each variation includes: Headline (6 words max), Body (20–30 words), CTA button text.
Ask which copy variation to use for Phase B. Wait for user confirmation.
Phase B — Platform crops
Once the user picks a copy direction, submit a SECOND the plan with parallel crops:
muapi image edit → 1:1 (Facebook/Instagram feed, 1080×1080)
muapi image edit → 9:16 (Story/Reels, 1080×1920)
muapi image edit → 1.91:1 (Facebook feed wide, 1200×628)
muapi image edit → 1:1 (LinkedIn feed, same as FB)
For each crop:
- Prompt: "Reframe for [platform] ad format. Keep product/subject centered and uncropped. Maintain original palette and tone. Leave headroom/footroom for text overlays."
- All crops run in parallel.
Return one asset per format with the recommended copy overlay placement for each.
Notes
- If
campaign_goal is "conversion", emphasize urgency and direct CTA in copy.
- If
campaign_goal is "awareness", prioritize visual impact over text density.
- Reference
product_image via $nX.url syntax in Phase B nodes to ensure consistency.
- Do NOT auto-confirm Phase B without user picking a copy variation.
Trigger Keywords
ad creative, advertisement, facebook ad, meta ad, google ad, linkedin ad, paid ad, ad banner, display ad
Notes for the Executing Agent
- This recipe is LLM-orchestrated: read each phase, gather any missing inputs from the user, then call
muapi CLI commands. Use muapi auth configure first if MUAPI_API_KEY is unset.
- For model IDs without a CLI alias yet, fall back to the raw endpoint via
curl -X POST https://api.muapi.ai/api/v1/<endpoint> -H "x-api-key: $MUAPI_API_KEY" -H 'content-type: application/json' -d '{...}' and poll with muapi predict wait <request_id>.
- Substitute
{{input_name}} placeholders with the user's actual inputs before issuing each call.
Source: hashgraph-online/awesome-codex-plugins → plugins/SamurAIGPT/Generative-Media-Skills/library/visual/ad-creative/SKILL.md
1---2name: muapi-ad-creative3description: Generate a high-converting ad creative set — hero image, ad copy variations, and platform-optimized crops for Meta, Google Display, and LinkedIn.4---5678# Ad Creative Set910**Generate a high-converting ad creative set — hero image, ad copy variations, and platform-optimized crops for Meta, Google Display, and LinkedIn.**1112## Inputs1314| Name | Type | Required | Default | Description |15|:---|:---|:---|:---|:---|16| `product_or_service` | text | yes | — | What is being advertised (e.g. "SaaS project management tool for remote teams"). |17| `target_audience` | text | yes | — | Who the ad is for (e.g. "startup founders aged 25–40, tech-savvy"). |18| `campaign_goal` | text | no | awareness | Campaign objective — "awareness", "consideration", or "conversion". |19| `tone` | text | no | professional, clean, modern | Creative tone and visual style (e.g. "bold and disruptive", "luxury minimal", "friendly and approachable"). |20| `product_image` | image_url | no | — | Optional product or brand image URL already in the session. |212223## Steps2425This skill has TWO phases. Phase A creates the hero concept for approval; Phase B fans out to platform formats.2627### Phase A — Hero image + Ad copy2829Submit ONE the plan with:30311. **Hero image** — `muapi image generate` (model=nano-banana-pro) or `muapi image edit` (model=nano-banana-pro-edit) if `{{product_image}}` is provided:32 - Aspect ratio: 1:1 (universal starting point).33 - Prompt must capture: product/service benefit, target audience lifestyle cue, campaign tone.34 - Style: `{{tone}}, advertising photography, clean background, product focus, ultra detailed, commercial quality`.35 - Tier: quality.3637After the plan executes, present the hero asset and 3 ad copy variations:38- **Variation A** — Problem-aware hook: "Tired of X? [Product] fixes that."39- **Variation B** — Benefit-led: "[Feature] → [Outcome] for [Audience]."40- **Variation C** — Social proof / urgency: "X teams already use [Product]."41Each variation includes: Headline (6 words max), Body (20–30 words), CTA button text.4243Ask which copy variation to use for Phase B. Wait for user confirmation.4445### Phase B — Platform crops4647Once the user picks a copy direction, submit a SECOND the plan with parallel crops:48491. `muapi image edit` → 1:1 (Facebook/Instagram feed, 1080×1080)502. `muapi image edit` → 9:16 (Story/Reels, 1080×1920)513. `muapi image edit` → 1.91:1 (Facebook feed wide, 1200×628)524. `muapi image edit` → 1:1 (LinkedIn feed, same as FB)5354For each crop:55- Prompt: "Reframe for [platform] ad format. Keep product/subject centered and uncropped. Maintain original palette and tone. Leave headroom/footroom for text overlays."56- All crops run in parallel.5758Return one asset per format with the recommended copy overlay placement for each.5960## Notes61- If `campaign_goal` is "conversion", emphasize urgency and direct CTA in copy.62- If `campaign_goal` is "awareness", prioritize visual impact over text density.63- Reference `product_image` via `$nX.url` syntax in Phase B nodes to ensure consistency.64- Do NOT auto-confirm Phase B without user picking a copy variation.6566## Trigger Keywords6768`ad creative`, `advertisement`, `facebook ad`, `meta ad`, `google ad`, `linkedin ad`, `paid ad`, `ad banner`, `display ad`697071---7273## Notes for the Executing Agent7475- This recipe is LLM-orchestrated: read each phase, gather any missing inputs from the user, then call `muapi` CLI commands. Use `muapi auth configure` first if `MUAPI_API_KEY` is unset.76- For model IDs without a CLI alias yet, fall back to the raw endpoint via `curl -X POST https://api.muapi.ai/api/v1/<endpoint> -H "x-api-key: $MUAPI_API_KEY" -H 'content-type: application/json' -d '{...}'` and poll with `muapi predict wait <request_id>`.77- Substitute `{{input_name}}` placeholders with the user's actual inputs before issuing each call.7879---8081**Source:** [`hashgraph-online/awesome-codex-plugins`](https://github.com/hashgraph-online/awesome-codex-plugins) → `plugins/SamurAIGPT/Generative-Media-Skills/library/visual/ad-creative/SKILL.md`