CtrlK
BlogDocsLog inGet started
Tessl Logo

chatgpt-image-ad

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.

72

Quality

90%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

81%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A strong, highly operational skill body: executable commands, hard rules, a validated workflow with mandatory QA and retry loops, and a well-signaled read order. The main deductions are minor: duplicated Read order/See also content, script-internal upload detail that could be trimmed, a stale "One of the 5 above" aspect-ratio reference, and cross-bundle references that don't resolve inside the skill directory itself.

Suggestions

Fix the stale count in the Inputs table: "Aspect ratio | One of the 5 above" should read "One of the 3 above" to match the supported set (1:1, 16:9, 9:16).

Deduplicate the "Read order" and "See also" sections — five links appear in both; keep the numbered read order and reduce "See also" to the non-workflow links only.

Trim the Configuration section's presigned-upload mechanics (single-use filePath, per-variant re-upload) to a one-line note that the script handles uploads internally, since the user only ever passes local paths.

DimensionReasoningScore

Conciseness

The body is dense and almost entirely operational (endpoints, auth, hard rules, modes, error table), but has minor trimmable fat: the "Read order" section duplicates five of the six "See also" links, and Configuration explains presigned-upload internals ("Each filePath is single-use — the script re-uploads per variant") that the script already handles since the user just passes local paths.

4 / 5

Actionability

Phase 5 gives copy-paste-ready bash invocations for both modes, a curl health-check, a common-errors table with fixes, and concrete input tables. Minor gaps: the Aspect ratio row says "One of the 5 above" while only 3 ratios are supported (stale count), and command paths mix ~/.claude/skills/... absolute form with relative scripts/... form.

4 / 5

Workflow Clarity

Seven clearly sequenced phases with explicit mandatory checkpoints: Phase 4 blocks on credit-cost confirmation, Phase 6 mandates per-variant visual QA with a defect list and a capped retry loop ("regenerate with a revised prompt explicitly correcting the issue... Cap at 2 retries per variant"), and Phase 7 confirms handoff with the user. This matches the top anchor including feedback loops for a batch/paid operation.

5 / 5

Progressive Disclosure

Good structure: a numbered "Read order" that signals exactly when to open each reference, and one-level-deep links to the shared prompt library, guide, safety suffixes, and the bundled scripts/generate_image.py (which exists and matches the documented contract). Not a 5 because the shared/* and sibling-skill references point outside the skill bundle (../../shared/..., ../arcads-external-api/...) and are not present in the actual bundle, slightly weakening navigation.

4 / 5

Total

17

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is exemplary: concrete third-person capability statements, an explicit "Use when..." clause with natural trigger phrases and synonyms, and explicit disambiguation from the nano-banana sibling skill. Every judging guideline (specificity, triggers, completeness, distinctiveness) is satisfied at the top anchor.

DimensionReasoningScore

Specificity

Multiple concrete actions are explicitly stated: "Generate one or more standalone Meta image-ad creatives", "Locks the model", "auto-strips platform chrome", "enforces edge-safe layouts and glyph-safety inside body text" — comprehensive coverage of what the skill does, with no filler.

5 / 5

Completeness

Explicitly answers both questions: what ("Generate... image-ad creatives via ChatGPT Image 2 (gpt-image-2) through the Arcads external API") and when ("Use when the user asks for..." with concrete trigger phrases).

5 / 5

Trigger Term Quality

Quotes natural user phrasings directly ("gpt-image-2 ad", "ChatGPT Image ad", "make a static image ad with GPT") plus a rich synonym list of concrete creative types (chat threads, comparison tables, fake search results, iOS dialogs, Slack snapshots, ChatGPT-conversation ads, Apple Notes lists).

5 / 5

Distinctiveness Conflict Risk

Clear niche (gpt-image-2 typography-heavy ad creatives) with explicit negative trigger guidance — "Does NOT trigger on Nano Banana cues — use nano-banana-image-ad for those" — minimizing overlap with the sibling skill.

5 / 5

Total

20

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 13 suspicious

Warning

Total

15

/

16

Passed

Repository
krusemediallc/arcads-claude-code
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.