Skip to content
cccskills
FreePublished on GitHub

image-ad-clone

Use when the user wants to reverse-engineer an existing image ad into a reusable prompt template. Validates via Arcads — picks gpt-image-2 or Nano Banana at Phase 1. Triggers on "clone this ad as a template", "reverse engineer this ad", "turn this ad into a prompt", "extract a template", "make this ad reusable", "add to my prompt library", "study this ad and make a template". Input is an EXISTING ad image; does NOT trigger for fresh generation (use chatgpt-image-ad or nano-banana-image-ad).

The English summary is being prepared. Showing the original description.

Works withSlack
See how to install

Files included (1)

  • SKILL.md9.5 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

image-ad-clone (Arcads)

Take an existing image ad and turn it into a reusable, parameterizable prompt template that gets appended to the shared 37-template image-ad library. The template is validated by round-tripping through one of the Arcads image-ad generators — ChatGPT Image 2 (typography / UI-mimicry templates) or Nano Banana (photoreal / lifestyle / multi-reference templates).

This skill replaces the older Uni1-locked image-ad-clone (which only worked with Luma uni-1). It's backend-agnostic: at Phase 1 the agent asks you (or auto-detects from the reference) whether to validate against gpt-image-2 or Nano Banana, then routes through the matching generator script in this repo.

Read order

  1. This file — Arcads-specific generator paths, model-choice decision, what's locked at the per-repo layer.
  2. shared/skills/image-ad-clone/prompting/guide.md — the full model-agnostic 10-phase workflow (visual analysis → draft prompt → generate-with-reference → iterate → generalize → test → cross-model validate → document → save).
  3. shared/skills/image-ad-prompting/prompting/template-format.md — entry skeleton.
  4. shared/skills/image-ad-prompting/prompting/prompt-library.md — destination for the new entry. 37 validated templates already there; new entries go at T40+.

Hard rules

Inherits all 6 hard rules from the shared guide (strip platform chrome, validate by generating, test the generalized version, no brand-specific text in the final template, never silently overwrite, document model notes for both backends). Plus per-repo:

  1. Backend is one of: ChatGPT Image 2 OR Nano Banana on Arcads. Never uni-1. The script choice happens in Phase 1 once the user picks (or the agent auto-detects).

Picking the right backend in Phase 1

Pick by what the reference ad is showing — most templates fall into one clear bucket.

Use chatgpt-image-ad (gpt-image-2) when the reference is:

  • Typography-heavy / UI mimicry (Apple Notes lists, fake Google search, fake Slack threads, ChatGPT-conversation ads, iMessage screenshots, comparison tables, fake AirDrop dialogs, Hinge-style cards, calendar UI, weather forecast UI, magazine masthead)
  • Brutalist / editorial typography heros (huge type makes the joke)
  • Dense small text inside UI elements

Use nano-banana-image-ad (Nano Banana family) when the reference is:

  • Photoreal handheld objects (whiteboards, napkins, sticky notes, letter boards, scratch-off tickets)
  • Aspirational lifestyle photography (sunset, kitchen at golden hour, OOH / transit)
  • Multi-image reference blending (logo + product + style + character all in one)
  • Clay / claymation / Pixar-adjacent textures

If the reference straddles both (e.g. a UGC-style photo with rendered text overlays), the safer default is to clone twice — once per backend — and ship the template with Model notes saying which renders cleaner. The agent will offer this in Phase 8.

If the user explicitly says "clone this with gpt-image-2" or "with Nano Banana", honor that.

Dependencies

This skill uses the matching generator script in the SAME repo:

  • For gpt-image-2 validation: skills/chatgpt-image-ad/scripts/generate_image.py (locked to model: gpt-image-2)
  • For Nano Banana validation: skills/nano-banana-image-ad/scripts/generate_image.py (nano-banana-2 default; --model nano-banana-pro or nano-banana-edit opt-in)

Fail Phase 1 with a fix-it message if neither generator is installed in this repo.

Also required:

  • .env with ARCADS_BASIC_AUTH or ARCADS_API_KEY
  • (Optional) PRODUCT_ID in .env — if not set, the generator auto-fetches the first Arcads product
  • Python 3.12+

Where this skill's generator lives

When the shared guide Phase 1 tells you to locate the companion generator, look here in order based on the model choice:

For gpt-image-2:

  1. ~/.claude/skills/chatgpt-image-ad/scripts/generate_image.py
  2. <repo>/skills/chatgpt-image-ad/scripts/generate_image.py
  3. If neither: stop and ask the user to install chatgpt-image-ad first.

For Nano Banana:

  1. ~/.claude/skills/nano-banana-image-ad/scripts/generate_image.py
  2. <repo>/skills/nano-banana-image-ad/scripts/generate_image.py
  3. If neither: stop and ask the user to install nano-banana-image-ad first.

Aspect ratio mapping

The Arcads image endpoint (/v2/images/generate) accepts only 1:1, 16:9, 9:16 — regardless of which model (gpt-image-2 or nano-banana) you're hitting. When measuring the original ad's aspect (Phase 2):

  • 4:5, 2:3, 5:4 ads → render at 1:1 and post-crop in your downstream ad-builder skill
  • 1.91:1 ads → render at 16:9 and post-crop
  • 9:16 ads → native, no change

Document the ratio fallback in the template's Aspect ratio: field so future users know they're rendering at a mapped ratio, not the original.

(The KIE per-API repo's image-ad-clone skill supports a broader native ratio set — 4:5, 2:3, 3:2, etc. — because KIE's /jobs/createTask Nano Banana endpoint accepts them. If aspect-ratio fidelity matters more than Arcads-specific control, consider the KIE repo for that template.)

Workflow phases (model-agnostic, see shared guide for full detail)

  1. Phase 1: Preflight + model choice. Reference image file resolves; .env has Arcads creds; both generators detected. Ask the user which model to validate against (or auto-detect from the reference's typography-vs-photo balance).
  2. Phase 2: Visual analysis. Describe the reference structurally — aspect ratio, format type, layout, typography, color palette, photography style, every text string verbatim, decorative elements, chrome to strip.
  3. Phase 3: Draft v1 prompt (brand-specifics intact).
  4. Phase 4: Generate with reference using the matching generator script. Pass --image-ref <reference_path> and the matched aspect ratio.
  5. Phase 5: Compare and iterate. Refine prompt based on deltas. Cap 4 iterations.
  6. Phase 6: Generalize into placeholders ({brand.name}, {brand.color_primary}, etc.).
  7. Phase 7: Test the generalized template against a DIFFERENT brand. Regenerate. If structure breaks, refine placeholder set.
  8. Phase 8: Cross-model validation (recommended). Run the same template through the OTHER backend in this repo. Document deltas in the Model notes block.
  9. Phase 9: Document the template. Use the format in template-format.md. Required fields: tag, when-to-use, aspect ratio, reference image guidance, variable schema, template prompt (full validated), example fill, Model notes for both backends, validated example path.
  10. Phase 10: Save and confirm. Append to shared/skills/image-ad-prompting/prompting/prompt-library.md. Print path. Move PNGs to permanent iteration dir.

Iteration directory layout

<cwd>/iterations/clone-2026-05-26/
  T40-lifestyle-hero/
    prompt.txt
    v1.png, v2.png, …                # against the source ref (chosen backend)
    test-fill-v1.png, …              # Phase 7 generalization test against a different brand
    cross-{other-backend}/v1.png     # Phase 8 cross-model validation (optional)
    notes.md

Common Model notes patterns to write in Phase 9

**Model notes:**
- **gpt-image-2:** {observed behavior — e.g. "clean — strong on UI mimicry and table text", "tends to add a 4th Slack message — keep prompt explicit about exactly N", "small chart axis labels blur — bump font size feel"}
- **nano-banana:** {observed behavior — e.g. "strong — preferred backend for handheld board photos", "character identity drifts across variants on -2; use -pro to lock", "weak on dense table text — keep rows to 4 max"}

If you only validated against one model in Phase 8, say so explicitly:

**Model notes:**
- **gpt-image-2:** validated clean (see iteration path)
- **nano-banana:** untested — validate before using on nano-banana-image-ad backend

The diff between a uni-1-era library and this one is this Model notes block. Don't skip it — it's the difference between a portable template and one nobody knows how to use.

See also

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Analyze a reference video and reverse-engineer its style into a reusable Seedance 2.0 prompting template. The output is a new skill/formula (like seedance-2-ugc.md) that captures the video's structure, pacing, camera work, edit style, and tone so it can be recreated with any product, any person, in any setting. Use this whenever someone provides a video they want to use as a style reference, says "I want to make videos like this", "deconstruct this video", "turn this into a template", "analyze this style", or drops a video file and wants to recreate that format repeatedly.

The English summary is being prepared. Showing the original description.

krusemediallc/arcads-claude-code1.6KUpdated Sep 23, 2026

Creates and retrieves AI video and image-related assets via the Arcads external API (Seedance 2.0, Sora 2, Veo 3.1, Kling, Grok Video, Nano Banana, b-roll, scene, script/actor flows). Loads prompts from the bundled prompting guide and model library, respects HTTP Basic auth from ARCADS_API_KEY, and polls assets/videos until ready. Use when the user mentions Arcads, external-api.arcads.ai, Seedance, Sora2, Veo, Kling, Nano Banana, b-roll, UGC scripts, or generating marketing creative through Arcads.

The English summary is being prepared. Showing the original description.

krusemediallc/arcads-claude-code1.6KUpdated Sep 23, 2026

Generate one or more standalone Meta image-ad creatives via ChatGPT Image 2 (gpt-image-2) through the Arcads external API. Locks the model, auto-strips platform chrome, enforces edge-safe layouts and glyph-safety inside body text. Use when the user asks for a "gpt-image-2 ad", "ChatGPT Image ad", "Image 2 ad creative", "make a static image ad with GPT", or anchors on a need for typography-heavy / dense-text / UI-mimicry ad creatives (chat threads, comparison tables, fake search results, iOS dialogs, Slack snapshots, ChatGPT-conversation ads, Apple Notes lists). Does NOT trigger on Nano Banana cues — use nano-banana-image-ad for those.

The English summary is being prepared. Showing the original description.

krusemediallc/arcads-claude-code1.6KUpdated Sep 23, 2026

Clone an existing video ad for a different product or offer. Analyzes the source video's style, pacing, camera work, dialogue, and tone, then adapts and generates a new Seedance 2.0 video customized for the user's product. End-to-end workflow: input video → analysis → adapted prompt → generation → delivery. Use when someone says "clone this ad", "make this ad but for my product", "recreate this video for my brand", or provides a video ad and a product image asking for a similar video.

The English summary is being prepared. Showing the original description.

krusemediallc/arcads-claude-code1.6KUpdated Sep 23, 2026

Generate high-CTR YouTube thumbnails using Nano Banana 2 via the Arcads external API. Handles reference image upload, character likeness alignment, proven CTR-tested prompt formulas, and parallel batch generation. Use when the user asks to create a YouTube thumbnail, video thumbnail, A/B test thumbnail variations, or refers to thumbnail design with their face, brand assets, or product photos.

The English summary is being prepared. Showing the original description.

krusemediallc/arcads-claude-code1.6KUpdated Sep 23, 2026

Publish finished creatives as live Meta (Facebook/Instagram) ads via the Meta Marketing API, plus research and ad-copy support. Uploads an image or video, builds a multi-variant TEXT_LIQUIDITY creative, and creates a PAUSED ad in an existing ad set. Also pulls top-performing ads (ranked by ROAS) and competitor ads from the Ad Library to inform copy. Use when the user asks to deploy / publish / launch a creative as a Meta or Facebook ad, build a Meta ad, push a video or image into an ad set, pull their top ads, or research competitor ads. Not for generating creative (use the image/video skills) and not for writing AdTable/Airtable rows (use adtable-light).

The English summary is being prepared. Showing the original description.

krusemediallc/arcads-claude-code1.6KUpdated Sep 23, 2026

See all skills by krusemediallc

Report a problem with this skill