# Brandiseer Prompt Compatibility Check

Use this guide whenever you're writing an image generation prompt to send to
Brandiseer's API (`POST /api/v2/generate` or `POST /api/v2/generate/async`)
and want to check or fix it before submitting. This is optional but
recommended, especially for LLM-based integrators constructing prompts on a
user's behalf.

**This is not a creative-writing or prompt-improvement guide.** It does not
judge or upgrade the quality of your idea. Its only job is to make sure the
prompt is structurally compatible with Brandiseer's brand system: no visual
style, color, font, or mood language, because Brandiseer's brand system prompt
already injects the brand's visual identity automatically on every
generation, and user-specified style directly conflicts with — and can
silently override — it.

## What this does

Takes a draft prompt for Brandiseer image generation and checks it for
compatibility with Brandiseer's architecture. Returns a corrected version if
needed, with a short explanation of what was changed and why.

This is a format and compatibility check, not a creative upgrade. Do not:

- Improve the composition or make the idea more interesting.
- Add design thinking, focal-point guidance, or storytelling suggestions.
- Judge whether the underlying idea is good.
- Rewrite for creative impact.

If the idea is simple or plain, output a compatible version of that same
simple idea. Do not make it more elaborate than what was asked for.

## Why this matters

Brandiseer generates images by combining three things on every request: the
brand's fixed system prompt (visual identity — colors, typography,
positioning, built once at brand analysis time), the variable brand data
(business context, preferences), and the user's prompt. The brand system
prompt already fully owns color, typography, and visual style. If a user's
prompt also specifies style ("navy blue palette," "modern minimalist," "warm
golden tones," "elegant serif typography"), it competes with — and can
override — the brand's actual identity, producing an off-brand result: the
opposite of what Brandiseer is for.

The correct division of labor: the prompt should describe what should
physically be in the frame and how it's arranged — composition, layout,
subject matter, content, narrative. It should never describe how it should
look stylistically — that's the brand system's job, automatically, every
time.

## What to check for and remove or flag

Scan the prompt for language in these categories. If found, remove it and note
what was removed.

- **Color references** — any named color, palette description, or color mood
  ("navy and gold," "warm earth tones," "monochrome," "vibrant," "pastel").
- **Typography references** — font style, weight, or type descriptions ("bold
  modern sans-serif," "elegant script," "clean minimal typography").
- **Mood/aesthetic descriptors that function as style, not content** — this is
  the trickiest category because natural language overlaps. It's a judgment
  call, not a keyword match:
  - "moody lighting," "dramatic shadows," "cinematic," "airy and light" →
    usually style, flag it.
  - "golden hour," "studio lighting," "overcast sky" → usually legitimate
    scene/content description (describes what's actually happening in the
    frame, like time of day or a real lighting setup), keep it.
  - "minimalist," "maximalist," "elegant," "luxurious," "playful" as a general
    aesthetic direction → style, flag it.
  - "minimalist" describing an actual compositional choice like "minimal props
    on the desk, just a laptop and a cup" → content, keep it.

  When ambiguous, ask: does this word describe something physically present in
  the scene, or does it describe a visual treatment applied over the whole
  image? Physically present → keep. Visual treatment → flag.

  If it's genuinely unclear which one applies even after that check (e.g.
  "vintage-style postcard" could mean the postcard-as-object is designed to
  look old, which is content, or could mean apply an old-photo filter over the
  whole image, which is style) — do not guess. Ask the user directly which
  they mean in one short line, rather than silently picking one
  interpretation. Guessing wrong here either strips something that should
  stay or lets real style language slip through.

### Specific cases that need extra care

- **Bare temperature/mood words with no other scene anchor** ("warm interior,"
  "cool tones," "clean look") — when a word like this appears with nothing
  else in the prompt clarifying whether it means a literal condition (lighting
  temperature, tidy physical space) or a style overlay (color grading,
  aesthetic mood), escalate and ask rather than picking one. Don't auto-keep
  or auto-strip these in isolation.
- **Black and white / monochrome as a literal photography choice** — "black
  and white product shot," "monochrome portrait" are common, legitimate
  literal content decisions in photography and film, not automatically a
  brand color-palette violation. Do not auto-strip these. If genuinely unsure
  whether the meaning is "shoot this in black and white" (content) vs. "apply
  Brandiseer's palette in grayscale" (unlikely, but possible style intent),
  ask.
- **Colors that carry informational or narrative meaning tied to real-world
  objects or systems** (a traffic light's red/yellow/green, a stop sign's red,
  a country's flag colors, a fruit's actual color) — these are content, not
  palette, even when multiple color words appear together. Keep them. The
  test: would removing this color change what's physically being depicted? If
  yes, it's content. If the image would look the same scene-wise but just
  recolored, it's style.
- **Negative style instructions** ("avoid a sterile stock-photo feel," "not
  too corporate," "nothing too flashy") — these are still style direction,
  just phrased as what to avoid rather than what to include. Treat them the
  same as positive style language: flag and ask what concrete scene element
  they actually want instead, since "avoid X feel" alone gives nothing for the
  system to act on and risks meaning it as a style override.
- **Vague premium-adjacent quality words with no concrete anchor** ("premium,"
  "elevated," "sleek and refined," "high-end," "timeless") — do not silently
  strip or silently keep. These often signal a real idea (specific materials,
  lighting, setting) that hasn't been articulated yet. Ask what concretely
  would make it feel that way — a material, a setting, a specific prop —
  rather than guessing or dropping the sentiment entirely.
- **Style-sounding words that describe the actual product being depicted**,
  when the business's product is itself an aesthetic (a stationery brand whose
  product is "handwritten-look" cards, a print shop selling "oil painting"
  reproductions, a vintage furniture reseller) — these are content, not a
  style override, because the word describes what the product literally is,
  not a filter applied over the whole generated image. This is
  context-dependent: the same phrase ("oil painting style") is style if a tech
  company asks for it as a filter, and content if an art print shop is
  describing their actual product. If the business's product category isn't
  clear from context, ask rather than assume.
- **Technical output parameters mentioned in prose** ("use high resolution,"
  "make it 4K," "square format") — check whether this duplicates an actual
  Brandiseer API parameter (`resolution`, `aspectRatio`) that should be set as
  a parameter, not written into the prompt text. If so, flag it: this belongs
  in the API call configuration, not the prompt itself, since writing it in
  prose has no effect on the actual generation parameters.
- **Brand identity elements manually re-specified** — logo placement
  instructions beyond what the API's `useLogo` parameter handles, explicit
  color hex codes, explicit font names. These should never appear in the
  prompt text itself.

Note on exclusion instructions: telling the system what *not* to do with color
or style ("avoid blue," "no bright colors," "keep it neutral") is still a
style override, just phrased negatively. Treat it the same as a positive
style instruction — flag and remove it.

## What is NOT style, even though it sounds like it (medium and format)

The choice of medium or rendering technique — illustration vs. photography vs.
3D render vs. isometric vs. line art vs. flat design — is a legitimate content
decision, not a brand style override. The brand system controls color,
typography, and visual identity; it does not dictate whether an image should
be a photo or an illustration. Keep these:

"flat illustration style," "3D rendered," "isometric," "line art,"
"photorealistic," "watercolor illustration," "hand-drawn style"

Do not strip these even though they contain the word "style." The test: does
this describe the fundamental type/format of image (keep), or does it
describe a color/mood/typography treatment layered on top of any image type
(strip)?

## When stripping style leaves nothing behind

If removing all style language leaves a prompt with no actual content
description (e.g. the entire prompt was "make this look premium and
high-end" with no scene, subject, or composition described), do not submit an
empty or near-empty prompt. State plainly that the style was removed but
there's no actual content left to generate from, and ask what should
physically be in the frame.

## What should stay in the prompt (do not remove these)

- Composition and layout ("split-screen, left half shows X, right half shows Y").
- Subject matter and content ("a person at a desk," "a product on a table," "a
  three-panel illustration showing...").
- Narrative or sequence ("panel one shows the morning, panel two shows midday...").
- Real scene elements (time of day, weather, physical setting, props, actions,
  camera angle).
- Aspect ratio or format context if platform is specified ("for Instagram
  Story, vertical format").
- Functional generation parameters mentioned in passing (`useLogo`,
  `resolution`) — these aren't prompt text, they're API parameters; leave any
  mention of them alone.

## Output format

Give:

1. The corrected prompt, ready to submit.
2. A short line noting what was removed and why, only if something was
   actually removed. If the prompt was already compatible, say so plainly and
   don't invent changes to justify the check.

Keep the explanation brief. This is a quick compatibility pass, not a teaching
moment every time.

## Example

**Draft**: "Create a cozy, warm-toned Instagram post for a coffee shop,
minimalist aesthetic, soft pastel colors, elegant serif font for the
headline, showing a latte on a wooden table by a window."

**Corrected**: "Create an Instagram post for a coffee shop showing a latte on
a wooden table by a window, morning light coming through the glass."

**What changed**: Removed "warm-toned," "minimalist aesthetic," "soft pastel
colors," and "elegant serif font" — these are style specifications that
Brandiseer's brand system already handles automatically. Kept the actual
scene content (latte, wooden table, window) and added "morning light coming
through the glass" as a real scene detail inferred from "cozy," since that's
describing something physically happening in the frame, not a style filter.
