30 design master global skill

Use when the user wants a marketing image GENERATED or an image prompt written — personal brand portraits, logos and monograms, campaign key visuals, day-to-day social graphics, editorial art, infographics, web hero mockups, and quote graphics.

by minhnv0807·MIT license·★ 599 Stars on the repo·GitHub ↗

Use now

Files of 30 design master global

minhnv0807/master1 file shown
SKILL.md
Show the full text336 lines

Design Master — 30-design-master-global

A single master skill that handles 8 design categories for ai-business-skills. One door for both personal work (founder, creator) and brand work (logo, campaign, day-to-day marketing). Reads brand identity from the project context, composes prompts in the right brand voice, and routes the request to the right tool: direct generation via gpt-image-2, paste-ready prompts for 5 popular platforms, or dispatch via Open Design infrastructure.

The skill is written in plain professional English so a non-designer client can read it, understand it, and fill it in alongside the AI. Frontmatter field names stay in English (do not translate) to keep AI parsing intact.

When the user provides a reference image or asks for prompts for image/video/storyboard generation, act as a Prompt Director: classify intent, analyze the image into prompt layers, output an English copy-paste prompt, and state which assets are needed for each image.


The 8 design categories

# Type Subject When to use Tool
1 personal-brand Individual (founder/creator) Profile avatar, monogram, speaker cover, personal quote graphic gpt-image-2 raster
2 business-logo Brand logo identity Logo primary/secondary/mark gpt-image-2 multi-variant 3-5 directions + human-review disclaimer
3 business-campaign Brand campaign visual TVC still, OOH, product hero, campaign key visual gpt-image-2 raster
4 marketing-day-to-day Operational marketing Social post, banner ad, email header, story gpt-image-2 raster
5 editorial Long-form publication Magazine cover, article hero, e-book, lookbook gpt-image-2 raster
6 infographic Data/plan/process visualization Roadmap, process flow, comparison chart gpt-image-2 (text-minimal, icons-focused)
7 web-mockup UI screen sketch Landing hero, app screen mockup Hybrid: gen 1 hero image via gpt-image-2 + recommend HTML skills for the full interactive mockup
8 quote-graphic Quote post "Guru post" IG, LinkedIn quote, motivational Hybrid: gpt-image-2 background + HTML text overlay

When to trigger / when NOT to trigger

Triggers (invoke this skill)
  • "design image", "create logo", "campaign poster", "campaign banner"
  • "social post design", "infographic", "key visual", "hero web mockup"
  • "marketing visual", "personal avatar", "monogram", "quote graphic"
  • "MidJourney prompt", "DALL-E prompt", "Leonardo prompt", "Imagen prompt"
DO NOT INVOKE (route to a different skill)
Case Route to
Full interactive web UI mockup (multi-section, with behavior) web-prototype / saas-landing / mobile-app / dashboard / frontend-design
Video creation (TVC, ad video, UGC) 04-script-video-global + Seedance/Kling/Sora dispatcher
Animation, motion graphics, sprite motion-frames / sprite-animation
Audio asset (jingle, voiceover, SFX) audio-jingle
Document layout (PDF report, multi-page e-guide) digital-eguide / finance-report / magazine-poster

Mode detection cascade (Step 0)

Three layers of type detection, in priority order:

Layer 1 — Keyword auto-detect
Keyword Detected type
"avatar", "profile picture", "monogram", "speaker cover", "headshot" personal-brand
"logo", "wordmark", "lockup", "brand mark" business-logo
"key visual", "campaign visual", "TVC still", "OOH", "product hero" business-campaign
"social post", "banner ad", "email header", "IG story", "Facebook post" marketing-day-to-day
"magazine cover", "article hero", "e-book cover", "editorial", "lookbook" editorial
"infographic", "roadmap visual", "process flow", "comparison chart", "data viz" infographic
"hero web", "landing hero image", "app screen mockup" web-mockup
"quote", "quote graphic", "guru post", "motivational post" quote-graphic
"reference image", "same style", "same composition", "master prompt", "based on this image" keep detected type + activate Prompt Director reference mode
"change color", "brand color", "add logo", "replace logo", "match brand guideline" keep detected type + activate Prompt Director brand adaptation
"too AI-looking", "not realistic", "wrong color", "wrong angle", "revise prompt" keep detected type + activate Prompt Director diagnosis
Layer 2 — Explicit flag

The user passes --type=business-logo (or one of the other 7 types) → overrides Layer 1.

Layer 3 — Ambiguous fallback

If nothing matches and no flag is set → ask one single question:

"Which of the 8 design types is this?

  1. personal-brand 2) business-logo 3) business-campaign 4) marketing-day-to-day 5) editorial 6) infographic 7) web-mockup 8) quote-graphic"

Print a transparency line before continuing:

[detect type: business-logo — matched keyword "logo" + brand name "Lattéa"]

Prompt Director mode

Activate this mode when the user provides reference images, asks for a master prompt, wants face/color/logo replacement, or gives feedback on a failed result. Load references/prompt-director.md before composing the prompt.

Rules:

  • Do not start with a long questionnaire. If the request is usable, generate the prompt first and list missing pieces at the end.
  • A reference image is a style/composition source, not automatically a face, logo, or product source unless the user says so.
  • Ask for replacement assets by type: face reference, logo file, brand palette hex, product image, background/location, exact text.
  • Multiple images = multiple flows. Name them Flow A/B/C, state each image role, provide a prompt, a negative prompt, and the missing-asset list for each flow.
  • Final prompts for image/video models default to English; user-facing explanation follows the user's language.

Reference-image output skeleton:

## Image flows

| Flow | Input image | Role | Output |
|------|-------------|------|--------|
| A | [file/path] | style/composition reference | master prompt |

## Copy-paste prompt — Flow A
[English prompt]

## Negative prompt / Avoid
[English avoid list]

## Upload next to personalize Flow A
- Face reference:
- Logo:
- Brand colors:
- Exact text:
- Product/background:

Runtime workflow — 5 steps

Step 1 — DETECT design type

Run the 3-layer cascade above. Print [detect type: ...] before moving to Step 2.

Step 2 — LOAD references

Load lazily, as needed:

  • CONVENTIONS.md — load once per session
  • references/prompt-director.md — load for reference images, master prompts, face/color/logo replacement, multiple images, or prompt feedback
  • references/<type>.md — load the file matching the type just detected (e.g. references/business-logo.md)
  • references/brand-identity-source.md — load whenever the type starts with business-*
  • references/fallback-prompt-format.md — load when the tier is Free (see Step 5)
  • templates/<format>.md — load the template matching the requested format (e.g. templates/poster.md, templates/social-square.md)
Step 3 — READ brand identity

Business modes (business-logo / business-campaign / marketing-day-to-day): REQUIRED — must find brand identity. Auto-search in priority order:

  1. assets/brand/logo.{svg,png,ai} — primary logo file
  2. brand-guideline.md / brand-identity.md at the project root
  3. 02-campaign-brief-global/output.md section "Brand mandatories" — campaign brief carries brand constraints
  4. prd.md frontmatter target_user + section "Visual cues" — style direction
  5. prd.md Section 6 — features that inform the visual concept

If nothing is found for a business mode → BLOCK + ask the user to upload a logo + specify a palette (3 hex codes) + name a primary font family.

Personal modes (personal-brand / personal quote-graphic): brand identity is optional. Enough to have style adjectives (3–5 words) + a color preference (3 mood colors).

Editorial / Infographic / Web-mockup: context-dependent — treat as business mode if the asset is for a brand, treat as personal if it's for an individual or a general-purpose piece.

Step 4 — ROUTE by type
Type Route action
1–5 (personal-brand, business-logo, business-campaign, marketing-day-to-day, editorial) COMPOSE raster prompt → go to Step 5
6 (infographic) COMPOSE prompt with text-minimal strategy: icons-heavy, branded palette, max 2-3 number stats, NO long paragraphs → go to Step 5
7 (web-mockup hybrid) COMPOSE 1 hero image prompt → Step 5 + print the HTML skill recommendation block, exit gracefully after the hero is generated
8 (quote-graphic) COMPOSE background image prompt (NO in-image text) + create an HTML overlay template (text rendered via HTML, never burned into the image)
Step 5 — CHECK API tier + GENERATE

Detect the tier in Bash:

if [[ -n "$OPENAI_API_KEY" ]]; then
  TIER="pro"   # direct gpt-image-2
elif [[ -n "$OD_BIN" && -x "$OD_BIN" ]]; then
  TIER="enterprise"   # Open Design dispatcher
else
  TIER="free"   # prompt-only fallback
fi

Print line: [tier: <X>] [model: <Y>].

Tier Behavior Output
Free No API key available docs/design/<slug>-prompt.md with paste-ready prompts for 5 platforms (DALL-E 3, MidJourney v6, Leonardo, Imagen 3, Bing/Copilot Designer) — see references/fallback-prompt-format.md
Pro OPENAI_API_KEY is set → call gpt-image-2 directly docs/design/<slug>.png + docs/design/<slug>.md (metadata)
Enterprise $OD_BIN exists and is executable → dispatch via Open Design infrastructure (the existing image-poster infra) docs/design/<slug>.png + docs/design/<slug>.md (metadata with gen_mode: api-dispatcher)

Type 7 web mockup — after generating the hero image (if Pro/Enterprise tier), print a recommendation block:

[NEXT STEP] Hero image generated. For a full multi-section interactive mockup,
also run one of:
  - web-prototype (general landing/marketing page)
  - saas-landing (SaaS product page)
  - mobile-app (mobile app screens)
  - dashboard (admin/analytics dashboard)
  - frontend-design (Figma-style design tokens)

Type 8 quote graphic — output 2 files:

  • docs/design/<slug>-bg.png — background image generated via gpt-image-2 (NO text)
  • docs/design/<slug>.html — HTML overlay rendering the quote text on top of the background (HTML keeps typography crisp; avoids AI garbling letters)

Frontmatter schema for the output file

Every docs/design/<slug>.md metadata file MUST carry this frontmatter:

---
title: <Image asset name>
type_artifact: image-generated | image-prompt-fallback | infographic-html | web-hero-image
mode: personal-brand | business-logo | business-campaign | marketing-day-to-day | editorial | infographic | web-mockup | quote-graphic
subject: <1-line description>
source_brief: <path to source brief if any>
brand_identity:
  logo_path: <path or "none">
  palette: [<hex>, <hex>, ...]
  typography: <font family or "none">
  style_adjectives: [<adj>, <adj>, ...]
format: poster | social-square | social-vertical | banner-hero | magazine | infographic | logo-variant | quote
aspect_ratio: 1:1 | 9:16 | 16:9 | 3:4 | 4:3 | custom
gen_mode: api-direct | api-dispatcher | fallback-prompt | hybrid
model: gpt-image-2 | dall-e-3 | midjourney-v6 | flux | imagen-3 | manual
output_files:
  - <path>
created: 2026-05-20
last_updated: 2026-05-20
---

Field names stay in ENGLISH — do not translate (would break AI parsing). The body of the file can be in any language the client reads.


Error handling — 8 real-world situations

Situation How to handle
Type is ambiguous (no keyword match, no flag) Ask 1 single question with all 8 options (see Layer 3 in Step 0)
Business mode + brand identity missing BLOCK + ask the user to upload the logo + specify a palette (3 hex codes) + name a font family
OPENAI_API_KEY invalid / quota exceeded when calling gpt-image-2 Fall back to Free tier (prompt-only) + print an error line
Type 7 web mockup but user actually wants a full multi-section UI Hybrid is fine: generate the hero image + attach a recommendation for web-prototype (or one of the 4 sibling skills) for the full mockup
Logo gen requested but no brand values yet Probe with 3 questions: brand name, industry, values (3-5 words) — only then is it possible to generate a logo with any soul
Infographic text-heavy, >5 data points Warn: "Text inside AI-generated images is unreliable. Recommend using a Canva template for text-heavy infographics." Still generate if the user confirms.
Quote graphic text >50 characters Warn: same — recommend using a generated background only + HTML overlay (which is already the default for type 8)
User asks for a format that doesn't match the detected type Suggest the matching mode — e.g. "landing page banner" → mode=marketing-day-to-day format=banner-hero

Anti-patterns — DO NOT

  • Generate a logo as the final deliverable → always produce a multi-variant set (3–5 directions) + human-review disclaimer
  • Burn >50 characters of text into an image — AI gen mangles long text, breaks spelling, distorts accented characters
  • Pass a raster web mockup off as interactive — must be hybrid + recommend an HTML skill
  • Skip the brand identity check on business modes — the output will look disconnected from the brand
  • Output a prompt that's just a keyword list (e.g. "nice cafe logo") — must follow the 5-section structured prompt framework: subject + composition + lighting + palette + style + negatives
  • Hardcode hex colors when the project already has a brand identity file — read from source
  • Translate frontmatter field names to a non-English language — breaks AI parsing
  • Generate >1 image per turn, unless it's a logo multi-variant set
  • Save only a prompt without generating the image while on Pro/Enterprise tier — wastes the API budget
  • Generate an image without saving a .md metadata sidecar — context is lost next time

Self-test before generating

Before every gpt-image-2 call or fallback prompt export, ask yourself:

"Does this output align with the brand voice and identity? Would a client recognize the brand when they see it? If this is personal brand work — does it reflect the style adjectives the user actually wrote down?"

If you can't confidently answer 2 out of 3 → go back to Step 3, re-read the brand identity, or probe the user with 1–2 more questions.


Examples reference

  • examples/personal-founder-avatar.md — Founder avatar for OPA (style: confident, warm, minimal)
  • examples/lattea-fall-campaign-poster.md — Key visual for the Lattéa fall campaign (palette: brown + burnt orange)
  • examples/ai-income-mastery-quote-graphic.md — IG quote graphic for the "AI Income Mastery" course (background + HTML overlay)
  • examples/opa-roadmap-infographic.md — Product roadmap infographic for OPA (icons-heavy, text minimal)

Cheat sheet — which file to load and when

When you need... Load this file
To understand frontmatter format, output location, general prompt rules CONVENTIONS.md
Reference images, master prompts, face/color/logo replacement, prompt diagnosis references/prompt-director.md
To compose a prompt for one of the 8 types references/<type>.md (e.g. references/business-logo.md)
To find the brand identity source for business mode references/brand-identity-source.md
To format prompts for 5 platforms on the Free tier references/fallback-prompt-format.md
To use a specific format template (poster, banner, story...) templates/<format>.md
To see a real example output examples/<example-name>.md

Plain English policy

This skill is written in plain professional English so a non-designer business owner can read it, follow along, and fill it in alongside the AI. Technical terms (gpt-image-2, DALL-E 3, MidJourney) are kept verbatim and briefly explained the first time they appear. Examples use realistic global-feeling brands: Lattéa (a fictional global cafe chain), Lumière Studio (creative agency), AI Income Mastery (online course), OPA (product). No throwaway placeholder brand names.

Self-test for plain-English fit: "Would a small business owner who doesn't speak design jargon understand this section?" If not — rewrite it.

1---
2name: 30-design-master-global
3description: "Use when the user wants a marketing image GENERATED or an image prompt written — personal brand portraits, logos and monograms, campaign key visuals, day-to-day social graphics, editorial art, infographics, web hero mockups, and quote graphics. Reads brand identity from project context, composes an on-brand prompt, generates via gpt-image-2 when an API key exists, otherwise outputs paste-ready prompts for DALL-E 3, MidJourney, Leonardo, or Ideogram. Trigger on 'design an image', 'make me a logo', 'MidJourney prompt', 'key visual for the campaign', 'generate a graphic for this post', 'I need a visual and have no designer'. Not for — briefing a human designer on a static, see `42-image-brief-global`; a slide sequence, see `43-carousel-brief-global`; the brand rules themselves, see `46-brand-guideline-global`; scoring a finished design, see `47-design-review-global`."
4metadata:
5 version: 1.1.1
6 category: design
7triggers:
8 - "design image"
9 - "create logo"
10 - "campaign visual"
11 - "social post design"
12 - "infographic"
13 - "key visual"
14 - "hero web mockup"
15 - "personal avatar"
16 - "monogram"
17 - "quote graphic"
18 - "MidJourney prompt"
19 - "DALL-E prompt"
20 - "brand mockup"
21 - "marketing visual"
22 - "reference image"
23 - "master prompt"
24 - "brand color adaptation"
25 - "add logo"
26license: MIT
27related:
28 - 02-campaign-brief-global
29 - 05-ad-copy-global
30 - 22-personal-brand-context (VN-only — no EN equivalent yet)
31 - 24-ai-avatar-production (VN-only — no EN equivalent yet)
32---
33 
34# Design Master — 30-design-master-global
35 
36A single master skill that handles 8 design categories for ai-business-skills. One door for both personal work (founder, creator) and brand work (logo, campaign, day-to-day marketing). Reads brand identity from the project context, composes prompts in the right brand voice, and routes the request to the right tool: direct generation via gpt-image-2, paste-ready prompts for 5 popular platforms, or dispatch via Open Design infrastructure.
37 
38The skill is written in plain professional English so a non-designer client can read it, understand it, and fill it in alongside the AI. Frontmatter field names stay in English (do not translate) to keep AI parsing intact.
39 
40When the user provides a reference image or asks for prompts for image/video/storyboard generation, act as a Prompt Director: classify intent, analyze the image into prompt layers, output an English copy-paste prompt, and state which assets are needed for each image.
41 
42---
43 
44## The 8 design categories
45 
46| # | Type | Subject | When to use | Tool |
47|---|------|---------|-------------|------|
48| 1 | personal-brand | Individual (founder/creator) | Profile avatar, monogram, speaker cover, personal quote graphic | gpt-image-2 raster |
49| 2 | business-logo | Brand logo identity | Logo primary/secondary/mark | gpt-image-2 multi-variant 3-5 directions + human-review disclaimer |
50| 3 | business-campaign | Brand campaign visual | TVC still, OOH, product hero, campaign key visual | gpt-image-2 raster |
51| 4 | marketing-day-to-day | Operational marketing | Social post, banner ad, email header, story | gpt-image-2 raster |
52| 5 | editorial | Long-form publication | Magazine cover, article hero, e-book, lookbook | gpt-image-2 raster |
53| 6 | infographic | Data/plan/process visualization | Roadmap, process flow, comparison chart | gpt-image-2 (text-minimal, icons-focused) |
54| 7 | web-mockup | UI screen sketch | Landing hero, app screen mockup | **Hybrid**: gen 1 hero image via gpt-image-2 + recommend HTML skills for the full interactive mockup |
55| 8 | quote-graphic | Quote post | "Guru post" IG, LinkedIn quote, motivational | Hybrid: gpt-image-2 background + HTML text overlay |
56 
57---
58 
59## When to trigger / when NOT to trigger
60 
61### Triggers (invoke this skill)
62 
63- "design image", "create logo", "campaign poster", "campaign banner"
64- "social post design", "infographic", "key visual", "hero web mockup"
65- "marketing visual", "personal avatar", "monogram", "quote graphic"
66- "MidJourney prompt", "DALL-E prompt", "Leonardo prompt", "Imagen prompt"
67 
68### DO NOT INVOKE (route to a different skill)
69 
70| Case | Route to |
71|------|----------|
72| Full interactive web UI mockup (multi-section, with behavior) | **`web-prototype`** / **`saas-landing`** / **`mobile-app`** / **`dashboard`** / **`frontend-design`** |
73| Video creation (TVC, ad video, UGC) | **`04-script-video-global`** + Seedance/Kling/Sora dispatcher |
74| Animation, motion graphics, sprite | **`motion-frames`** / **`sprite-animation`** |
75| Audio asset (jingle, voiceover, SFX) | **`audio-jingle`** |
76| Document layout (PDF report, multi-page e-guide) | **`digital-eguide`** / **`finance-report`** / **`magazine-poster`** |
77 
78---
79 
80## Mode detection cascade (Step 0)
81 
82Three layers of type detection, in priority order:
83 
84### Layer 1 — Keyword auto-detect
85 
86| Keyword | Detected type |
87|---------|---------------|
88| "avatar", "profile picture", "monogram", "speaker cover", "headshot" | personal-brand |
89| "logo", "wordmark", "lockup", "brand mark" | business-logo |
90| "key visual", "campaign visual", "TVC still", "OOH", "product hero" | business-campaign |
91| "social post", "banner ad", "email header", "IG story", "Facebook post" | marketing-day-to-day |
92| "magazine cover", "article hero", "e-book cover", "editorial", "lookbook" | editorial |
93| "infographic", "roadmap visual", "process flow", "comparison chart", "data viz" | infographic |
94| "hero web", "landing hero image", "app screen mockup" | web-mockup |
95| "quote", "quote graphic", "guru post", "motivational post" | quote-graphic |
96| "reference image", "same style", "same composition", "master prompt", "based on this image" | keep detected type + activate Prompt Director reference mode |
97| "change color", "brand color", "add logo", "replace logo", "match brand guideline" | keep detected type + activate Prompt Director brand adaptation |
98| "too AI-looking", "not realistic", "wrong color", "wrong angle", "revise prompt" | keep detected type + activate Prompt Director diagnosis |
99 
100### Layer 2 — Explicit flag
101 
102The user passes `--type=business-logo` (or one of the other 7 types) → overrides Layer 1.
103 
104### Layer 3 — Ambiguous fallback
105 
106If nothing matches and no flag is set → ask one single question:
107 
108> "Which of the 8 design types is this?
109> 1) personal-brand 2) business-logo 3) business-campaign 4) marketing-day-to-day 5) editorial 6) infographic 7) web-mockup 8) quote-graphic"
110 
111Print a transparency line before continuing:
112 
113```
114[detect type: business-logo — matched keyword "logo" + brand name "Lattéa"]
115```
116 
117---
118 
119## Prompt Director mode
120 
121Activate this mode when the user provides reference images, asks for a master prompt, wants face/color/logo replacement, or gives feedback on a failed result. Load `references/prompt-director.md` before composing the prompt.
122 
123Rules:
124- **Do not start with a long questionnaire.** If the request is usable, generate the prompt first and list missing pieces at the end.
125- **A reference image is a style/composition source**, not automatically a face, logo, or product source unless the user says so.
126- **Ask for replacement assets by type:** face reference, logo file, brand palette hex, product image, background/location, exact text.
127- **Multiple images = multiple flows.** Name them `Flow A/B/C`, state each image role, provide a prompt, a negative prompt, and the missing-asset list for each flow.
128- **Final prompts for image/video models default to English**; user-facing explanation follows the user's language.
129 
130Reference-image output skeleton:
131 
132```markdown
133## Image flows
134 
135| Flow | Input image | Role | Output |
136|------|-------------|------|--------|
137| A | [file/path] | style/composition reference | master prompt |
138 
139## Copy-paste prompt — Flow A
140[English prompt]
141 
142## Negative prompt / Avoid
143[English avoid list]
144 
145## Upload next to personalize Flow A
146- Face reference:
147- Logo:
148- Brand colors:
149- Exact text:
150- Product/background:
151```
152 
153---
154 
155## Runtime workflow — 5 steps
156 
157### Step 1 — DETECT design type
158 
159Run the 3-layer cascade above. Print `[detect type: ...]` before moving to Step 2.
160 
161### Step 2 — LOAD references
162 
163Load lazily, as needed:
164 
165- `CONVENTIONS.md` — load once per session
166- `references/prompt-director.md` — load for reference images, master prompts, face/color/logo replacement, multiple images, or prompt feedback
167- `references/<type>.md` — load the file matching the type just detected (e.g. `references/business-logo.md`)
168- `references/brand-identity-source.md` — load whenever the type starts with `business-*`
169- `references/fallback-prompt-format.md` — load when the tier is Free (see Step 5)
170- `templates/<format>.md` — load the template matching the requested format (e.g. `templates/poster.md`, `templates/social-square.md`)
171 
172### Step 3 — READ brand identity
173 
174**Business modes** (`business-logo` / `business-campaign` / `marketing-day-to-day`): REQUIRED — must find brand identity. Auto-search in priority order:
175 
1761. `assets/brand/logo.{svg,png,ai}` — primary logo file
1772. `brand-guideline.md` / `brand-identity.md` at the project root
1783. `02-campaign-brief-global/output.md` section "Brand mandatories" — campaign brief carries brand constraints
1794. `prd.md` frontmatter `target_user` + section "Visual cues" — style direction
1805. `prd.md` Section 6 — features that inform the visual concept
181 
182If nothing is found for a business mode → **BLOCK** + ask the user to upload a logo + specify a palette (3 hex codes) + name a primary font family.
183 
184**Personal modes** (`personal-brand` / personal `quote-graphic`): brand identity is optional. Enough to have style adjectives (3–5 words) + a color preference (3 mood colors).
185 
186**Editorial / Infographic / Web-mockup**: context-dependent — treat as business mode if the asset is for a brand, treat as personal if it's for an individual or a general-purpose piece.
187 
188### Step 4 — ROUTE by type
189 
190| Type | Route action |
191|------|--------------|
192| 1–5 (personal-brand, business-logo, business-campaign, marketing-day-to-day, editorial) | COMPOSE raster prompt → go to Step 5 |
193| 6 (infographic) | COMPOSE prompt with **text-minimal** strategy: icons-heavy, branded palette, max 2-3 number stats, NO long paragraphs → go to Step 5 |
194| 7 (web-mockup hybrid) | COMPOSE 1 hero image prompt → Step 5 + print the HTML skill recommendation block, exit gracefully after the hero is generated |
195| 8 (quote-graphic) | COMPOSE background image prompt (NO in-image text) + create an HTML overlay template (text rendered via HTML, never burned into the image) |
196 
197### Step 5 — CHECK API tier + GENERATE
198 
199Detect the tier in Bash:
200 
201```bash
202if [[ -n "$OPENAI_API_KEY" ]]; then
203 TIER="pro" # direct gpt-image-2
204elif [[ -n "$OD_BIN" && -x "$OD_BIN" ]]; then
205 TIER="enterprise" # Open Design dispatcher
206else
207 TIER="free" # prompt-only fallback
208fi
209```
210 
211Print line: `[tier: <X>] [model: <Y>]`.
212 
213| Tier | Behavior | Output |
214|------|----------|--------|
215| **Free** | No API key available | `docs/design/<slug>-prompt.md` with paste-ready prompts for 5 platforms (DALL-E 3, MidJourney v6, Leonardo, Imagen 3, Bing/Copilot Designer) — see `references/fallback-prompt-format.md` |
216| **Pro** | `OPENAI_API_KEY` is set → call gpt-image-2 directly | `docs/design/<slug>.png` + `docs/design/<slug>.md` (metadata) |
217| **Enterprise** | `$OD_BIN` exists and is executable → dispatch via Open Design infrastructure (the existing `image-poster` infra) | `docs/design/<slug>.png` + `docs/design/<slug>.md` (metadata with `gen_mode: api-dispatcher`) |
218 
219**Type 7 web mockup** — after generating the hero image (if Pro/Enterprise tier), print a recommendation block:
220 
221```
222[NEXT STEP] Hero image generated. For a full multi-section interactive mockup,
223also run one of:
224 - web-prototype (general landing/marketing page)
225 - saas-landing (SaaS product page)
226 - mobile-app (mobile app screens)
227 - dashboard (admin/analytics dashboard)
228 - frontend-design (Figma-style design tokens)
229```
230 
231**Type 8 quote graphic** — output 2 files:
232- `docs/design/<slug>-bg.png` — background image generated via gpt-image-2 (NO text)
233- `docs/design/<slug>.html` — HTML overlay rendering the quote text on top of the background (HTML keeps typography crisp; avoids AI garbling letters)
234 
235---
236 
237## Frontmatter schema for the output file
238 
239Every `docs/design/<slug>.md` metadata file MUST carry this frontmatter:
240 
241```yaml
242---
243title: <Image asset name>
244type_artifact: image-generated | image-prompt-fallback | infographic-html | web-hero-image
245mode: personal-brand | business-logo | business-campaign | marketing-day-to-day | editorial | infographic | web-mockup | quote-graphic
246subject: <1-line description>
247source_brief: <path to source brief if any>
248brand_identity:
249 logo_path: <path or "none">
250 palette: [<hex>, <hex>, ...]
251 typography: <font family or "none">
252 style_adjectives: [<adj>, <adj>, ...]
253format: poster | social-square | social-vertical | banner-hero | magazine | infographic | logo-variant | quote
254aspect_ratio: 1:1 | 9:16 | 16:9 | 3:4 | 4:3 | custom
255gen_mode: api-direct | api-dispatcher | fallback-prompt | hybrid
256model: gpt-image-2 | dall-e-3 | midjourney-v6 | flux | imagen-3 | manual
257output_files:
258 - <path>
259created: 2026-05-20
260last_updated: 2026-05-20
261---
262```
263 
264Field names stay in ENGLISH — do not translate (would break AI parsing). The body of the file can be in any language the client reads.
265 
266---
267 
268## Error handling — 8 real-world situations
269 
270| Situation | How to handle |
271|-----------|---------------|
272| Type is ambiguous (no keyword match, no flag) | Ask 1 single question with all 8 options (see Layer 3 in Step 0) |
273| Business mode + brand identity missing | **BLOCK** + ask the user to upload the logo + specify a palette (3 hex codes) + name a font family |
274| `OPENAI_API_KEY` invalid / quota exceeded when calling gpt-image-2 | Fall back to Free tier (prompt-only) + print an error line |
275| Type 7 web mockup but user actually wants a full multi-section UI | Hybrid is fine: generate the hero image + attach a recommendation for `web-prototype` (or one of the 4 sibling skills) for the full mockup |
276| Logo gen requested but no brand values yet | Probe with 3 questions: brand name, industry, values (3-5 words) — only then is it possible to generate a logo with any soul |
277| Infographic text-heavy, >5 data points | **Warn**: "Text inside AI-generated images is unreliable. Recommend using a Canva template for text-heavy infographics." Still generate if the user confirms. |
278| Quote graphic text >50 characters | **Warn**: same — recommend using a generated background only + HTML overlay (which is already the default for type 8) |
279| User asks for a format that doesn't match the detected type | Suggest the matching mode — e.g. "landing page banner" → mode=`marketing-day-to-day` format=`banner-hero` |
280 
281---
282 
283## Anti-patterns — DO NOT
284 
285- Generate a logo as the final deliverable → always produce a multi-variant set (3–5 directions) + human-review disclaimer
286- Burn >50 characters of text into an image — AI gen mangles long text, breaks spelling, distorts accented characters
287- Pass a raster web mockup off as interactive — must be hybrid + recommend an HTML skill
288- Skip the brand identity check on business modes — the output will look disconnected from the brand
289- Output a prompt that's just a keyword list (e.g. "nice cafe logo") — must follow the 5-section structured prompt framework: subject + composition + lighting + palette + style + negatives
290- Hardcode hex colors when the project already has a brand identity file — read from source
291- Translate frontmatter field names to a non-English language — breaks AI parsing
292- Generate >1 image per turn, unless it's a logo multi-variant set
293- Save only a prompt without generating the image while on Pro/Enterprise tier — wastes the API budget
294- Generate an image without saving a `.md` metadata sidecar — context is lost next time
295 
296---
297 
298## Self-test before generating
299 
300Before every gpt-image-2 call or fallback prompt export, ask yourself:
301 
302> "Does this output align with the brand voice and identity? Would a client recognize the brand when they see it? If this is personal brand work — does it reflect the style adjectives the user actually wrote down?"
303 
304If you can't confidently answer 2 out of 3 → go back to Step 3, re-read the brand identity, or probe the user with 1–2 more questions.
305 
306---
307 
308## Examples reference
309 
310- `examples/personal-founder-avatar.md` — Founder avatar for OPA (style: confident, warm, minimal)
311- `examples/lattea-fall-campaign-poster.md` — Key visual for the Lattéa fall campaign (palette: brown + burnt orange)
312- `examples/ai-income-mastery-quote-graphic.md` — IG quote graphic for the "AI Income Mastery" course (background + HTML overlay)
313- `examples/opa-roadmap-infographic.md` — Product roadmap infographic for OPA (icons-heavy, text minimal)
314 
315---
316 
317## Cheat sheet — which file to load and when
318 
319| When you need... | Load this file |
320|------------------|----------------|
321| To understand frontmatter format, output location, general prompt rules | `CONVENTIONS.md` |
322| Reference images, master prompts, face/color/logo replacement, prompt diagnosis | `references/prompt-director.md` |
323| To compose a prompt for one of the 8 types | `references/<type>.md` (e.g. `references/business-logo.md`) |
324| To find the brand identity source for business mode | `references/brand-identity-source.md` |
325| To format prompts for 5 platforms on the Free tier | `references/fallback-prompt-format.md` |
326| To use a specific format template (poster, banner, story...) | `templates/<format>.md` |
327| To see a real example output | `examples/<example-name>.md` |
328 
329---
330 
331## Plain English policy
332 
333This skill is written in plain professional English so a non-designer business owner can read it, follow along, and fill it in alongside the AI. Technical terms (gpt-image-2, DALL-E 3, MidJourney) are kept verbatim and briefly explained the first time they appear. Examples use realistic global-feeling brands: Lattéa (a fictional global cafe chain), Lumière Studio (creative agency), AI Income Mastery (online course), OPA (product). No throwaway placeholder brand names.
334 
335> Self-test for plain-English fit: "Would a small business owner who doesn't speak design jargon understand this section?" If not — rewrite it.
336 

Discussion

Alternatives

Audience belief mapperUse when the user asks to "map what our buyers believe", "capture the objections we keep hearing", or "find the switching forces that move the beachhead"; produces a belief map of the beachhead — held beliefs and mental models, the recurring objections and their reframes, and the JTBD four forces (push of the problem, pull of the new, anxiety of switching, habit of the present) — each item sourced from interviews or win-loss notes (User-provided) and labeled Measured / User-provided / Estimated, with any unverified quote or comparative claim marked "[needs source]" and routed to the claims candidates, never adjudicated here. Not for demographic or persona profiling — use audience-mapper; not for the positioning canvas — use positioning-truth-tracer. 受众信念/异议地图/切换四力/流失语言Marketing · Apache-2.0Brand Voice Analysis and Guidelines GenerationPaste in your website and marketing copy, and get back a clear guide anyone on your team can follow to sound like your brand every time.Content & docs · MITBrand voice enforcerAnalyze and rewrite content to strict brand voice guidelines, scoring adherence across tone, vocabulary, syntax patterns, and persona alignment for CPG and retail brands.Marketing · Apache-2.0Product Marketing ContextWhen the user wants to create or update their product marketing context document. Also use when the user mentions 'product context,' 'marketing context,' 'set up context,' 'positioning,' 'who is my target audience,' 'describe my product,' 'ICP,' 'ideal customer profile,' or wants to avoid repeating foundational information across marketing tasks. Use this at the start of any new project before using other marketing skills — it creates `.agents/product-marketing.md` that all other skills reference for product, audience, and positioning context.Marketing · MIT