Mucha Style Image
Use this skill when the user wants a new image, image edit, reference-guided
image, poster, portrait, product visual, or illustration to be rendered in an
Alphonse Mucha inspired Art Nouveau style. Trigger on requests such as
穆夏风格, 阿尔丰斯·穆夏风格, Mucha style, Mucha-inspired,
Art Nouveau poster, decorative floral poster, ornate halo portrait, or similar
language.
Use GPT Image 2 through Fusion API for every generation or edit. Do not switch to another image model unless the user explicitly asks.
Style Direction
Always adapt the user’s subject into a Mucha-inspired Art Nouveau image prompt. Preserve any user-specified subject, product, person, pose, composition, aspect ratio, text, colors, or commercial constraints unless they conflict with safety or feasibility.
Add these style elements when they fit the task:
- elegant Art Nouveau poster composition
- graceful flowing linework and ornamental borders
- floral motifs, botanical vines, arabesque patterns, and decorative halos
- elongated graceful forms, symmetrical framing, and theatrical poster layout
- soft luminous skin or object rendering, muted jewel tones, gold accents, and refined lithographic texture
- flat decorative background panels with layered ornamental geometry
Avoid claiming the output is an original Alphonse Mucha work. Phrase the style as “inspired by Alphonse Mucha” or “Mucha-inspired Art Nouveau”. Do not add visible text unless the user asks for text; image models often render text imperfectly.
For portraits or photos of real people, preserve identity only when the user provided the image or clearly requests it. For product images, preserve the product shape, key markings, material, and color unless the user asks to restyle them.
Mode Selection
Use text-to-image when the user provides only a subject or prompt.
Use image editing when the user provides any local image, image URL, attached
image, file_id, reference image, mask, product photo, portrait, or asks to
turn an existing image into Mucha style.
Ask one concise follow-up only when a required prompt or source image is missing, or when the user’s requested deliverable has mutually exclusive business constraints. Otherwise infer a polished default.
GPT Image 2 Actions
Use only these connector actions:
- Text-to-image submit:
fusion-api.openai_image_async_submit - Text-to-image result:
fusion-api.openai_image_async_result - Image-edit submit:
fusion-api.openai_image_edit_async_submit - Image-edit result:
fusion-api.openai_image_edit_async_result
Fusion API is the selected provider path. Do not ask the user for an OpenAI API
key during normal execution. Do not run oo search or oo connector search
during normal execution.
Payload Defaults
Use these defaults unless the user asks otherwise:
model:gpt-image-2output_format:pngresponse_format:b64_jsonquality:highsize: infer from the requested composition; use1024x1536for poster or portrait,1536x1024for landscape, and1024x1024for square
For quick drafts, quality: "auto" is acceptable only when the user asks for a
draft, speed, or lower cost.
For edits where subject, identity, product, or layout preservation matters, add
input_fidelity: "high" and state the preservation constraints directly in the
prompt.
For long prompts, nested image arrays, masks, or quote-heavy text, write the
payload to a JSON file and pass it with --data @payload.json.
Local And Remote Images
For local image inputs, upload each file first:
oo file upload "<filePath>" --json
Read the returned downloadUrl field and pass it as images[].image_url or
mask.image_url. Do not pass raw local paths to Fusion API connector actions.
Each image reference must contain exactly one of:
image_url: a public or uploaded image URLfile_id: an OpenAI file id
For edits, keep image order aligned with the user’s request: main source image first, then style, product, pose, background, or other references.
Text-To-Image Workflow
Build a prompt that combines the user’s requested subject with the Mucha-inspired style direction.
Example payload:
{
"model": "gpt-image-2",
"prompt": "A Mucha-inspired Art Nouveau poster of a violinist standing among lilies, graceful flowing linework, ornate floral border, decorative halo, muted jewel tones, gold accents, refined lithographic texture, no visible text.",
"output_format": "png",
"quality": "high",
"response_format": "b64_json",
"size": "1024x1536"
}
Submit:
oo connector run "fusion-api" \
--action "openai_image_async_submit" \
--data @payload.json \
--json
Extract sessionId, then poll:
oo connector run "fusion-api" \
--action "openai_image_async_result" \
--data '{"sessionID":"<sessionId>"}' \
--json
If the result is processing, wait briefly and poll the same sessionID. Do
not submit a duplicate job unless the user asks to retry.
Image Editing Workflow
Build a prompt that states the desired Mucha-inspired transformation and what must remain unchanged.
Example payload:
{
"model": "gpt-image-2",
"prompt": "Transform the source image into a Mucha-inspired Art Nouveau poster. Preserve the same person, facial identity, pose, camera angle, and main clothing silhouette. Add graceful flowing linework, ornate floral border, decorative halo, botanical motifs, muted jewel tones, gold accents, and refined lithographic texture. Do not add visible text.",
"images": [
{
"image_url": "https://example.com/source.png"
}
],
"output_format": "png",
"quality": "high",
"response_format": "b64_json",
"size": "1024x1536",
"input_fidelity": "high"
}
Submit:
oo connector run "fusion-api" \
--action "openai_image_edit_async_submit" \
--data @payload.json \
--json
Extract sessionId, then poll:
oo connector run "fusion-api" \
--action "openai_image_edit_async_result" \
--data '{"sessionID":"<sessionId>"}' \
--json
Use a provided mask only when the user supplies one or asks for a localized edit.
Results
In oo connector run --json output, the action payload is wrapped in the
top-level .data field.
For async result actions:
completed: read image outputs from.data.data.data[].b64_jsonor.data.data.data[].url; read.data.data.data[].revised_promptwhen usefulprocessing: wait briefly and poll the samesessionIDnot_found: stop and report the returnederror
For b64_json or data:image/...;base64,..., save the image locally as PNG,
JPEG, or WebP according to output_format. Do not print the encoded payload.
Choose a short descriptive filename such as mucha-style-poster.png unless the
user requested a name.
For a returned HTTP URL, either deliver that URL directly or save it locally:
oo file download "<url>" "<outDir>" --name "<fileNameWithoutExtension>" --ext "<extension>"
oo file download prints Saved to: <path> and does not support --json.
On success, make the image visible to the user when practical by previewing or attaching the artifact. A local path alone is not enough when the environment can render images.
Failure Handling
Stop and report the smallest next action for missing prompt, missing source
image, inaccessible local path or URL, invalid file_id, schema rejection, auth,
billing, permission, timeout, or not_found session failures.
If the connector rejects an optional field, remove only that field when the remaining payload still satisfies the user’s request. Do not silently change models, provider paths, or style direction.