Detalle del Skill

chatgpt-image-ad

Genera creatividades de anuncios de imagen para Meta a través de ChatGPT Image 2 mediante la API de Arcads, con diseños seguros en los bordes y protecciones de seguridad de glifos.

CoincidenciaPosibleRevisado para Generación de imágenes
Fuentekrusemediallc/​arcads-claude-codeFuente externa
Instalaciones reportadas164Solo señal de popularidad

Revisar antes de usar

La revisión automática comprueba relevancia, no seguridad ni respaldo. Lee las instrucciones de la fuente antes de usar este Skill.

Vista previa guardada

SKILL.md

Este extracto es una copia guardada durante la revisión. La fuente externa contiene la versión completa y actual.

---
name: chatgpt-image-ad
description: >-
  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.
---

# chatgpt-image-ad (Arcads)

Generate one or more **standalone Meta ad image creatives** via Arcads' `POST /v2/images/generate` with `model: "gpt-image-2"`. Hands the image paths off to your Meta-ad-builder skill — this skill does not upload to Meta itself.

## Read order

1. **This file** — Arcads-specific endpoint, auth, presigned upload flow, workflow phases.
2. **[shared/skills/chatgpt-image-ad/prompting/guide.md](../../shared/skills/chatgpt-image-ad/prompting/guide.md)** — model-specific prompting (what gpt-image-2 is good/bad at, when to switch to nano-banana).
3. **[shared/skills/image-ad-prompting/prompting/prompt-library.md](../../shared/skills/image-ad-prompting/prompting/prompt-library.md)** — 30+ validated templates with per-model notes.
4. **[shared/skills/image-ad-prompting/prompting/safety-suffixes.md](../../shared/skills/image-ad-prompting/prompting/safety-suffixes.md)** — the 3 always-on guards.
5. **[scripts/generate_image.py](scripts/generate_image.py)** — the helper script (Python stdlib only).

## Hard rules — never relax

1. **Model is `gpt-image-2`.** The script refuses any other value. If the user asks for nano-banana, point them at `nano-banana-image-ad`.
2. **No platform/screenshot chrome in output.** `NO_CHROME_SUFFIX` is always on (override with `--allow-chrome` only when the ad's concept *requires* chrome — rare).
3. **Edge-safe + glyph-safety suffixes always on** unless `--no-safe-zone` is explicit. They fix real failures; don't remove silently.
4. **Max 5 reference images.** Hard Arcads cap for gpt-image-2 (observed `400 Max 5 reference image(s) allowed`). The script enforces.
5. **No Meta upload from this skill.** Image generation only. The user has a separate ad-builder skill in their stack — hand off via filesystem paths.
6. **Always present a credit-cost estimate before generating** (see Arcads `arcads-external-api` skill conventions). Each gpt-image-2 call is one image; multiply by `--n` variants.

## Prerequisites

- `.env` containing `ARCADS_BASIC_AUTH` (preferred, pre-encoded) OR `ARCADS_API_KEY`
- Optional: `PRODUCT_ID`, `PROJECT_ID` in `.env` so generated assets land in the right Arcads dashboard folder (see `arcads-external-api` SKILL.md for the session-folder pattern)
- Reference images on local disk (PNG/JPG/JPEG/WEBP/GIF). The script handles the Arcads presigned-upload flow internally — you pass local paths.

## Configuration

- **Base URL:** `https://external-api.arcads.ai` (or `ARCADS_BASE_URL`).
- **Auth:** HTTP Basic. The script prefers a pre-encoded `ARCADS_BASIC_AUTH` env var (e.g. `Basic ZXhhbXBsZTo=`); falls back to encoding `ARCADS_API_KEY` with an empty password.
- **Endpoint:** `POST /v2/images/generate` (request); `GET /v1/assets/{id}` (poll until `status: generated`); image URL fetched once status flips.
- **Reference uploads:** `POST /v1/file-upload/get-presigned-url` returns `{presignedUrl, filePath}`; `PUT` the bytes to `presignedUrl`; pass the `filePath` string in `referenceImages`. **Each filePath is single-use** — the script re-uploads per variant so parallel runs don't collide.

## Generation modes

| Mode | When to use | Required | Optional |
|---|---|---|---|
| `image` (default) | Generate a brand-new ad image. | `--prompt`, `--aspect-ratio` | `--image-ref` (up to 5) |
| `image_edi
Leer la fuente completa en GitHub (abre una página externa)
Contexto

Trabajo relacionado