4.9k★ad-ready – OpenClaw Skill
ad-ready is an OpenClaw Skills integration for devops workflows. Generate professional advertising images from product URLs using the Ad-Ready pipeline on ComfyDeploy. Use when the user wants to create ads for any product by providing a URL, optionally with a brand profile (70+ brands) and funnel stage targeting. Supports model/talent integration, brand-aware creative direction, and multi-format output. Differs from Morpheus (manual fashion photography) — Ad-Ready is URL-driven, brand-intelligent, and funnel-stage aware.
Skill Snapshot
| name | ad-ready |
| description | Generate professional advertising images from product URLs using the Ad-Ready pipeline on ComfyDeploy. Use when the user wants to create ads for any product by providing a URL, optionally with a brand profile (70+ brands) and funnel stage targeting. Supports model/talent integration, brand-aware creative direction, and multi-format output. Differs from Morpheus (manual fashion photography) — Ad-Ready is URL-driven, brand-intelligent, and funnel-stage aware. OpenClaw Skills integration. |
| owner | pauldelavallaz |
| repository | pauldelavallaz/ad-ready |
| language | Markdown |
| license | MIT |
| topics | |
| security | L1 |
| install | openclaw add @pauldelavallaz/ad-ready |
| last updated | Feb 7, 2026 |
Maintainer

name: ad-ready description: Generate professional advertising images from product URLs using the Ad-Ready pipeline on ComfyDeploy. Use when the user wants to create ads for any product by providing a URL, optionally with a brand profile (70+ brands) and funnel stage targeting. Supports model/talent integration, brand-aware creative direction, and multi-format output. Differs from Morpheus (manual fashion photography) — Ad-Ready is URL-driven, brand-intelligent, and funnel-stage aware.
Ad-Ready: AI Advertising Image Generator
Generate professional advertising images from product URLs using a 4-phase AI pipeline on ComfyDeploy.
⚠️ CRITICAL: Required Inputs Checklist
Before running ANY ad generation, the agent MUST ensure ALL of these are provided:
| Input | Required? | How to Get It |
|---|---|---|
--product-url | ✅ ALWAYS | User provides the product page URL |
--product-image | ✅ ALWAYS | Download from the product page, or user provides |
--logo | ✅ ALWAYS | Download from brand website or search online. MUST be an image file |
--reference | ✅ RECOMMENDED | An existing ad whose style we want to clone. Search online or use previously generated images |
--brand-profile | ✅ NEVER EMPTY | Pick from catalog or run brand-analyzer first. NEVER leave as "No Brand" if a brand is known |
--prompt-profile | ✅ ALWAYS | Choose based on campaign objective |
--aspect-ratio | Default: 4:5 | Change if needed for platform |
--model | Optional | Model/talent face from catalog or user-provided |
🚨 NEVER Skip These Steps:
- Product image — Download the main product photo from the product URL. The scraper is fragile; always provide a product image explicitly.
- Brand logo — Download the logo from the brand's official website or search for "{brand name} logo" online. Must be a clean logo image (PNG preferred).
- Brand profile — If the brand doesn't exist in the catalog, run
brand-analyzerskill FIRST to generate one. Never submit with "No Brand" when a brand is known. - Reference image — Search for an existing ad or visual with a style that matches what we're generating. Can be from previously generated images, the brand's campaigns, or found online. This dramatically improves output quality.
Auto-Preparation Workflow
When the user asks to generate an ad, follow this workflow:
1. User provides: product URL + brand name + objective
2. CHECK brand profile exists:
→ ls ~/clawd/ad-ready/configs/Brands/ | grep -i "{brand}"
→ If not found: run brand-analyzer skill first
3. DOWNLOAD product image:
→ Visit the product URL in browser or fetch the page
→ Find and download the main product image
→ Save to /tmp/ad-ready-product.jpg
4. DOWNLOAD brand logo:
→ Search "{brand name} logo PNG" or fetch from brand website
→ Download clean logo image
→ Save to /tmp/ad-ready-logo.png
5. FIND reference image:
→ Search for "{brand name} advertisement" or similar
→ Or use a previously generated ad that has the right style
→ Save to /tmp/ad-ready-reference.jpg
6. SELECT prompt profile based on objective:
→ Awareness: brand discovery, first impressions
→ Interest: engagement, curiosity
→ Consideration: comparison, features
→ Evaluation: deep dive, decision support
→ Conversion: purchase intent, CTAs (most common)
→ Retention: re-engagement
→ Loyalty: brand advocates
→ Advocacy: referral, community
7. RUN the generation with ALL inputs filled
Usage
Full command (recommended):
COMFY_DEPLOY_API_KEY="$KEY" uv run ~/.clawdbot/skills/ad-ready/scripts/generate.py \
--product-url "https://shop.example.com/product" \
--product-image "/tmp/product-photo.jpg" \
--logo "/tmp/brand-logo.png" \
--reference "/tmp/reference-ad.jpg" \
--model "models-catalog/catalog/images/model_15.jpg" \
--brand-profile "Nike" \
--prompt-profile "Master_prompt_05_Conversion" \
--aspect-ratio "4:5" \
--output "ad-output.png"
Auto-fetch mode (downloads product image and logo automatically):
COMFY_DEPLOY_API_KEY="$KEY" uv run ~/.clawdbot/skills/ad-ready/scripts/generate.py \
--product-url "https://shop.example.com/product" \
--brand-profile "Nike" \
--prompt-profile "Master_prompt_05_Conversion" \
--auto-fetch \
--output "ad-output.png"
The --auto-fetch flag will:
- Download the main product image from the product URL
- Search and download the brand logo
- Both get uploaded to ComfyDeploy automatically
API Details
Endpoint: https://api.comfydeploy.com/api/run/deployment/queue
Deployment ID: e37318e6-ef21-4aab-bc90-8fb29624cd15
ComfyDeploy Input Variables
These are the exact variable names the ComfyDeploy deployment expects:
| Variable | Type | Description |
|---|---|---|
product_url | string | Product page URL to scrape |
producto | image URL | Product image (uploaded to ComfyDeploy) |
model | image URL | Model/talent face reference |
referencia | image URL | Style reference ad image |
marca | image URL | Brand logo image |
brand_profile | enum | Brand name from catalog |
prompt_profile | enum | Funnel stage prompt |
aspect_ratio | enum | Output format |
4-Phase Pipeline (How It Works Internally)
Phase 1: Product Scraping
- Gemini Flash visits the product URL
- Extracts: title, description, features, price, images
- ⚠️ Image scraping is the most fragile part — always provide product images manually
Phase 2: Campaign Brief Generation (CRITICAL)
- Uses Brand Identity JSON + Product Data → 10-point brief
- Everything downstream depends on brief quality
- Brief covers: strategic objective, central message, visual tone, product role, photographer, art direction, environment, textures, signature
Phase 3: Blueprint Generation
- Master Prompt (per funnel stage) + Brief + Product JSON + Keyword Bank + Format
- Gemini Flash generates complete Blueprint JSON
- Covers: scene, production, graphic design, lighting, composition, materials, CTA
Phase 4: Image Generation
- Nano Banana Pro (Imagen 3.0) generates the final image
- Uses Blueprint JSON + all reference images (product, talent, logo, style ref)
Supporting Reference Nodes
pose_ref→ enforce a specific pose (replicated exactly)photo_style_ref→ replicate photographic style (⚠️ can be too literal, being optimized)location_ref→ replicate location and color palette
Brand Profiles
Existing catalog (70+ brands):
ls ~/clawd/ad-ready/configs/Brands/*.json | sed 's/.*\///' | sed 's/\.json//'
Creating new brand profiles:
Use the brand-analyzer skill:
GEMINI_API_KEY="$KEY" uv run ~/.clawdbot/skills/brand-analyzer/scripts/analyze.py \
--brand "Brand Name" --auto-save
This generates a full Brand Identity JSON and saves it to the catalog automatically.
Prompt Profiles (Funnel Stages)
| Profile | Stage | Best For |
|---|---|---|
Master_prompt_01_Awareness | Awareness | Brand discovery, first impressions |
Master_prompt_02_Interest | Interest | Engagement, curiosity |
Master_prompt_03_Consideration | Consideration | Comparison, features |
Master_prompt_04_Evaluation | Evaluation | Deep dive, decision support |
Master_prompt_05_Conversion | Conversion | Purchase intent, CTAs |
Master_prompt_06_Retention | Retention | Re-engagement, loyalty |
Master_prompt_07_Loyalty | Loyalty | Brand advocates |
Master_prompt_08_Advocacy | Advocacy | Referral, community |
How to choose:
- Most ads → Conversion (purchase intent)
- New product launches → Awareness
- Retargeting → Consideration or Evaluation
- Existing customers → Retention or Loyalty
Aspect Ratios
| Ratio | Use Case |
|---|---|
4:5 | Default. Instagram feed, Facebook |
9:16 | Stories, Reels, TikTok |
1:1 | Square posts |
16:9 | YouTube, landscape banners |
5:4 | Alternative landscape |
Model Catalog
Models for talent/face reference: ~/clawd/models-catalog/catalog/
Priority: User-provided model > Catalog selection > No model (product-only ad)
Known Limitations
- Product image scraping is fragile — always provide product images manually when possible
- photo_style_ref can be too literal — the style reference may be replicated too closely
- Some websites block scraping — Armani works well, others may return incorrect data
- Auto 4-Format is alpha — bugs and edge cases exist
- Gemini hallucinations — occasional issues in complex reasoning steps
Ad-Ready vs Morpheus
| Feature | Ad-Ready | Morpheus |
|---|---|---|
| Input | Product URL (auto-scrapes) | Manual product image |
| Brand intelligence | 70+ brand profiles | None |
| Funnel targeting | 8 funnel stages | None |
| Creative direction | Auto-generated from brief | Pack-based (camera, lens, etc.) |
| Best for | Product advertising campaigns | Fashion/lifestyle editorial photography |
| Control level | High-level (objective-driven) | Granular (every visual parameter) |
Source Repository
- GitHub: https://github.com/PauldeLavallaz/ads_SV
- Local clone: ~/clawd/ad-ready/
- Patreon docs: https://www.patreon.com/posts/from-product-to-149933468
API Key
Uses ComfyDeploy API key. Set via COMFY_DEPLOY_API_KEY environment variable.
No README available.
Permissions & Security
Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.
Requirements
- OpenClaw CLI installed and configured.
- Language: Markdown
- License: MIT
- Topics:
FAQ
How do I install ad-ready?
Run openclaw add @pauldelavallaz/ad-ready in your terminal. This installs ad-ready into your OpenClaw Skills catalog.
Does this skill run locally or in the cloud?
OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.
Where can I verify the source code?
The source repository is available at https://github.com/openclaw/skills/tree/main/skills/pauldelavallaz/ad-ready. Review commits and README documentation before installing.
