PluginBench
Skill
Official
Fail
Audit score 45

nano-banana-pro-openrouter

github/awesome-copilot

Generate and edit images via OpenRouter using Gemini 3 Pro Image model with 1K/2K/4K output.

What is nano-banana-pro-openrouter?

This skill generates images from text prompts, edits existing images, and composites multiple images together using OpenRouter's Gemini 3 Pro Image model. Use it when you need AI-powered image creation or manipulation with flexible resolution options.

  • Generate images from text prompts only
  • Edit single images with descriptive instructions
  • Compose multiple images (up to 3) into a single output
  • Support 1K, 2K, and 4K resolution outputs
  • Customize behavior via optional system prompt template
  • Save outputs with automatic multi-image naming

How to install nano-banana-pro-openrouter

npx skills add https://github.com/github/awesome-copilot --skill nano-banana-pro-openrouter
Prerequisites
  • OPENROUTER_API_KEY environment variable set with valid OpenRouter credentials
  • uv package manager installed (curl/PowerShell install scripts provided)
  • Input images in common formats (JPG, PNG) if doing edits or compositing
Claude Code
Cursor
Windsurf
Cline

How to use nano-banana-pro-openrouter

  1. 1.Set your OPENROUTER_API_KEY environment variable with a valid OpenRouter API key
  2. 2.Install uv if not already present using the provided install scripts
  3. 3.For text-only generation: run `uv run {baseDir}/scripts/generate_image.py --prompt "your description" --filename output.png`
  4. 4.For image edits: add `--input-image input.jpg` and describe the edit in the prompt
  5. 5.For compositing: add multiple `--input-image` flags (up to 3) and describe the composition in the prompt
  6. 6.Optionally specify `--resolution 2K` or `--resolution 4K` (default is 1K)
  7. 7.Check the output path printed as `MEDIA: <path>` to locate saved images

Use cases

Good for
  • Create concept art or visual mockups from descriptions
  • Modify existing images (e.g., change sky, adjust composition)
  • Combine multiple reference images into a composite portrait or scene
  • Generate marketing or presentation graphics at specific resolutions
  • Iterate on image edits with custom system prompts
Who it's for
  • Designers and visual creators
  • Product managers prototyping UI/UX concepts
  • Content creators needing quick image generation
  • Developers building image-heavy applications
  • Teams collaborating on visual assets

nano-banana-pro-openrouter FAQ

How many input images can I use at once?

Up to 3 input images via repeated `--input-image` flags for compositing or multi-image edits.

What resolutions are supported?

1K (default), 2K, and 4K. Specify with `--resolution` flag.

How do I customize image generation behavior?

Create an optional system prompt file at `assets/SYSTEM_TEMPLATE` to customize the model's behavior without changing code.

What should I do if I get an AuthenticationError?

Verify your OPENROUTER_API_KEY is valid and has credits at https://openrouter.ai/settings/keys.

How are multiple output images named?

If the model returns multiple images, they are appended with `-1`, `-2`, etc. to the base filename.

Full instructions (SKILL.md)

Source of truth, from github/awesome-copilot.


name: nano-banana-pro-openrouter description: 'Generate or edit images via OpenRouter with the Gemini 3 Pro Image model. Use for prompt-only image generation, image edits, and multi-image compositing; supports 1K/2K/4K output.' metadata: emoji: 🍌 requires: bins: - uv env: - OPENROUTER_API_KEY primaryEnv: OPENROUTER_API_KEY

Nano Banana Pro OpenRouter

Overview

Generate or edit images with OpenRouter using the google/gemini-3-pro-image-preview model. Support prompt-only generation, single-image edits, and multi-image composition.

Prompt-only generation

uv run {baseDir}/scripts/generate_image.py \
  --prompt "A cinematic sunset over snow-capped mountains" \
  --filename sunset.png

Edit a single image

uv run {baseDir}/scripts/generate_image.py \
  --prompt "Replace the sky with a dramatic aurora" \
  --input-image input.jpg \
  --filename aurora.png

Compose multiple images

uv run {baseDir}/scripts/generate_image.py \
  --prompt "Combine the subjects into a single studio portrait" \
  --input-image face1.jpg \
  --input-image face2.jpg \
  --filename composite.png

Resolution

  • Use --resolution with 1K, 2K, or 4K.
  • Default is 1K if not specified.

System prompt customization

The skill reads an optional system prompt from assets/SYSTEM_TEMPLATE. This allows you to customize the image generation behavior without modifying code.

Behavior and constraints

  • Accept up to 3 input images via repeated --input-image.
  • --filename accepts relative paths (saves to current directory) or absolute paths.
  • If multiple images are returned, append -1, -2, etc. to the filename.
  • Print MEDIA: <path> for each saved image. Do not read images back into the response.

Troubleshooting

If the script exits non-zero, check stderr against these common blockers:

SymptomResolution
OPENROUTER_API_KEY is not setAsk the user to set it. PowerShell: $env:OPENROUTER_API_KEY = "sk-or-..." / bash: export OPENROUTER_API_KEY="sk-or-..."
uv: command not found or not recognizedmacOS/Linux: <code>curl -LsSf https://astral.sh/uv/install.sh | sh</code>. Windows: <code>powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"</code>. Then restart the terminal.
AuthenticationError / HTTP 401Key is invalid or has no credits. Verify at https://openrouter.ai/settings/keys.

For transient errors (HTTP 429, network timeouts), retry once after 30 seconds. Do not retry the same error more than twice — surface the issue to the user instead.