Image Poster Skill

SkillFiles & storage

image-poster is a skill that lets an AI agent create a single poster, cover-art, or illustration image from a written brief. It composes a detailed image prompt covering subject, lighting, palette, and camera details, then runs one dispatcher command to generate the picture. The skill defaults to gpt-image-2 but is provider-agnostic, so the same workflow can drive Flux, Imagen, or Midjourney through the active upstream tooling. Results are saved as PNG or JPEG files in the project folder.

Use Image Poster Skill in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add Image Poster Skill and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use the Image Poster Skill skill

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Have a project folder where generated images should be saved.

Image Poster SkillStart free

What your AI can do with it

  • Compose a detailed image prompt from a written brief
  • Cover subject, lighting, palette, and camera details
  • Run a single dispatcher command to generate the image
  • Default to gpt-image-2 for generation
  • Drive Flux, Imagen, or Midjourney via upstream tooling
  • Save one or more PNG or JPEG files to the project folder

Getting started

  1. Have a project folder where generated images should be saved.
  2. Make sure the active upstream tooling for your chosen image model is available.
  3. Write a brief describing the poster, cover art, or illustration you want.
  4. Let the skill compose the detailed prompt and run the dispatcher command.
  5. Find the resulting PNG or JPEG files in the project folder.

What this skill tells your AI

The instructions your AI receives, as published by nexu-io/open-design in design-templates/image-poster/SKILL.md and read by ahel’s review.

Produce 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.

Resource map

image-poster/
├── SKILL.md         ← you're reading this
└── example.html     ← what the resulting card looks like in Examples

Workflow

Step 0 — Read the project metadata

The 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.

Step 1 — Compose the prompt

Plan in this exact order before calling any tool:

  1. Subject + composition — what is in the frame, where, at what scale; eye-line and crop.
  2. Lighting + mood — natural / studio / moody; warm / cool; key plus rim plus fill; time of day if outdoor.
  3. Palette + textures — hex anchors when the user gave a brand palette; otherwise a 3-word mood tag (e.g. "muted ochre + ink").
  4. Camera / lens — only if the user wants photographic realism ("85mm portrait, shallow DOF") or a specific film stock.
  5. What to avoid — common AI-slop patterns ("no extra fingers, no warped text, no logo placeholders").

Step 2 — Dispatch via the media contract

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.

Step 3 — Hand off

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.

Hard rules

  • One image per turn unless asked for variations.
  • Honor imageAspect exactly — the upstream cost is the same; matching the aspect avoids a re-render.
  • No filler typography in the image itself unless the user asked for in-frame text. Real copy beats lorem.
  • Save every render — never describe an image without producing the file. The user expects something to open in the file viewer.

Signals

GitHub stars
99k
Forks
11k
Last commit
Oct 2026

Questions

What kind of output does image-poster produce?
It produces one or more PNG or JPEG image files saved to the project folder.
Which image models can it use?
It defaults to gpt-image-2 but is provider-agnostic, so it can drive Flux, Imagen, or Midjourney through the active upstream tooling.
What does the skill do before generating the image?
It composes a detailed image prompt covering subject, lighting, palette, and camera details, then runs a single dispatcher command.
Advanced
Item type
skill
Key
image-poster-nexu-io
Source
github.com/nexu-io/open-design