- name
- trend-ad-composer
- description
- Research market trends, competitor signals, audience pain points, and webinar/session offers, then generate high-converting ad concept batches in the required JSON schema and send to the Supabase ingest endpoint. Use when creating paid/social ad concepts for marketers, entrepreneurs, and AI consultants around AI agents, automation, OpenClaw workflows, and weekly solution launches.
# Trend Ad Composer
Generate ad concept batches from real signals and submit them to the ingest API.
## Inputs to gather before generation
- Offer scope:
- Generic business ad concepts, or
- Specific campaign tied to upcoming/past training session
- Target audience slice:
- Marketers
- Entrepreneurs/founders
- AI consultants/agencies
- Batch details:
- `client_id`
- `batch_id`
- Platform mix:
- facebook / instagram / linkedin (at least 3 variations per batch)
## Research workflow
1) Check current opportunity signals
- Use web search for trend demand and pain-point language
- Pull at least 5-8 sources total across:
- search trends/news
- social/community pain points
- competitor/ad messaging signals
2) Review Reinventing.ai session context
- Review upcoming webinar and selected past sessions at:
- https://www.reinventing.ai
- Extract positioning angles:
- outcome promise
- urgency/time sensitivity
- who benefits most
3) Convert signals into ad angles
- Prioritize angles with clear economic outcomes:
- hours saved
- revenue potential
- faster launch cadence
- reduced execution overhead
## Output requirements
Always produce JSON matching the schema expected by the app endpoint.
Required top-level keys:
- `client_id`
- `batch_id`
- `generated_at`
- `research_context`
- `ad_variations`
- `generation_metadata`
Variation quality rules:
- 3-6 variations minimum
- Mix broad + niche angles
- Include `reasoning` tied to research signals
- Include strong image prompts suitable for generation
- Include targeting notes and `estimated_hook_strength`
- Use platform-appropriate aspect ratios (avoid defaulting to wide)
Aspect ratio defaults by platform (preferred):
- instagram_feed: `4:5` (1080x1350 style)
- instagram_square: `1:1`
- instagram_story/reels: `9:16`
- facebook_feed: `4:5`
- facebook_landscape: `16:9` only when explicitly requested
- linkedin_feed_image: `4:5` (or `1:1` secondary)
- linkedin_landscape_ad: `16:9` only for specific ad placement
Visual creative guidance (mandatory in every `image_prompt`):
- Specify composition clearly:
- subject placement (left/right/center)
- foreground + background elements
- depth of field / layering
- Include ad-friendly layout intent:
- “leave clean negative space for optional headline overlay”
- Define emotional tone:
- confidence, relief, momentum, authority, etc.
- Define style and realism level:
- corporate photography, cinematic lifestyle, flat illustration, UI mockup, etc.
- Define color direction:
- contrast, brand-safe palette, high legibility
- Explicitly request: no embedded text, logos, or watermarks
## Copy style constraints
- Value-first hooks
- Short, specific claims
- Avoid generic hype and inflated promises
- Prefer concrete outcomes and implementation language
- For LinkedIn concepts, no outbound links in body copy
## Endpoint submission
Use the helper script:
```bash
set -a; source /root/.openclaw/credentials/ads-ingest.env; set +a
python3 skills/trend-ad-composer/scripts/submit_ads.py --json-file /path/to/batch.json
```
Environment variables required:
- `ADS_INGEST_ENDPOINT`
- `ADS_INGEST_API_KEY`
## Optional references
- Schema reference: `references/ad-schema.example.json`
View on GitHub