Single-image generation skill for posters, key art, and editorial illustrations. Defaults to gpt-image-2 but is provider-agnostic — the same workflow drives Flux, Imagen, or Midjourney via the active upstream tooling. Output is one or more PNG/JPEG files saved to the project folder.
64
76%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./design-templates/image-poster/SKILL.mdProduce one finished image asset per turn unless the user asks for variations. Image generation rewards a tight, structured prompt — your job is to assemble that prompt from the user's brief, then dispatch.
image-poster/
├── SKILL.md ← you're reading this
└── example.html ← what the resulting card looks like in ExamplesThe active project carries imageModel, imageAspect, and (optional)
imageStyle notes. Use them as the upstream model + canvas + style
anchor. When a value is not provided, infer a safe default from the brief and
media contract. Ask only when the choice would materially change the requested
result and no safe default can be inferred.
Plan in this exact order before calling any tool:
Use the unified dispatcher — do not call upstream provider APIs by hand. Run from your shell tool:
"$OD_NODE_BIN" "$OD_BIN" media generate \
--project "$OD_PROJECT_ID" \
--surface image \
--model "<imageModel from metadata>" \
--aspect "<imageAspect from metadata>" \
--output "<short-descriptive-name>.png" \
--prompt "<the full assembled prompt from Step 1>"The command prints one line of JSON: {"file": {"name": "...", ...}}.
The daemon writes the bytes into the project folder; the FileViewer
picks it up automatically.
Reply with a one-paragraph summary of the prompt you used and the
filename returned by the dispatcher (e.g. I generated hero-poster.png
with gpt-image-2 at 1:1.). Do not emit an <artifact> tag.
imageAspect exactly — the upstream cost is the same; matching
the aspect avoids a re-render.1a7a23d
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.