Generate or edit images via BlockRun's image API. Trigger when the user asks to generate, create, draw, make an image — or to edit, modify, change, or retouch an existing image.
85%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Medium
Suggest reviewing before use
Generate or edit images through ClawRouter. Payment is automatic via x402.
Shortcuts:
/cr-imagegen <prompt> [--model=<alias>] [--size=1024x1024] [--n=1] (/imagegen still accepted in chat for backward compatibility)blockrun_image_generation (LLM-callable) / blockrun_image_edit (inpainting)POST to http://localhost:8402/v1/images/generations:
{
"model": "google/nano-banana",
"prompt": "a golden retriever surfing on a wave",
"size": "1024x1024",
"n": 1
}Response:
{
"created": 1741460000,
"data": [{ "url": "http://localhost:8402/images/abc123.png" }]
}Display inline: 
| Alias | Full ID | Sizes | Best for |
|---|---|---|---|
nano-banana | google/nano-banana | 1024×1024 | Default — fast, cheap, good quality |
banana-2 | google/nano-banana-2 | 1024×1024 | Gemini 3.1 Flash imagegen — sharper than nano-banana at 1K |
banana-pro | google/nano-banana-pro | 1024×1024, 2048×2048, 4096×4096 | High-res, large format |
gpt-image | openai/gpt-image-1 | 1024×1024, 1536×1024, 1024×1536 | Budget option; supports editing |
gpt-image-2 | openai/gpt-image-2 | 1024×1024, 1536×1024, 1024×1536 | Photorealistic, reasoning-driven, text rendering (slow — proxy polls up to 5min); legacy dalle alias routes here |
flare | openai/gpt-image-2.5-flare | 1024×1024, 1536×1024, 1024×1536 | GPT Image 2.5, fast — top OpenAI quality, caller can pick quality at a flat price |
sunburst | openai/gpt-image-2.5-sunburst | 1024×1024, 1536×1024, 1024×1536 | GPT Image 2.5, precision — best for high-fidelity edits |
seedream | bytedance/seedream-5-pro | up to 2848×1600 / 2304×1728 | Flagship quality, reference-image support |
grok-imagine | xai/grok-imagine-image | 1024×1024 | xAI Grok image style |
grok-imagine-2 | xai/grok-imagine-image-2.0 | 1024×1024 | Grok Imagine 2.0 — between grok-imagine and pro |
grok-imagine-pro | xai/grok-imagine-image-pro | 1024×1024 | Grok high-quality |
cogview | zai/cogview-4 | 512×512 to 1440×1440 | Cheapest — Zhipu CogView |
Prices: per image, and they change — look the model up live instead of trusting a number here. GET https://blockrun.ai/api/v1/models (Solana: https://sol.blockrun.ai/api/v1/models), find the entry whose id is the Full ID above, and read pricing.per_image plus pricing.transaction_fee. Larger sizes or higher quality can cost more than the listed base rate; the exact amount is quoted in the HTTP 402 challenge before anything is signed.
Choosing a model:
nano-bananabanana-progpt-image-2seedreamcogviewflare (fast) or sunburst (precision)gpt-image (cheapest), gpt-image-2, or sunburst (most precise)grok-imaginegrok-imagine or grok-imagine-proChoosing a size:
1024x1024 (the only size every model accepts)1024x1536 (gpt-image / gpt-image-2 / flare / sunburst) or 1728x2304 (seedream)1536x1024 (gpt-image / gpt-image-2 / flare / sunburst), 1344x768 (cogview), or 2048x1024 / 1280x720 (seedream)2048x2048 / 4096x4096 with banana-pro; 2848x1600 with seedreamPOST to http://localhost:8402/v1/images/image2image:
{
"model": "openai/gpt-image-1",
"prompt": "make the background a snowy mountain landscape",
"image": "https://example.com/photo.jpg",
"size": "1024x1024",
"n": 1
}ClawRouter automatically downloads URLs and reads local file paths — pass them directly, no manual base64 conversion needed.
Optional mask field: a second image (URL or path) that marks which areas to edit (white = edit, black = keep).
Response is identical to generation:
{
"created": 1741460000,
"data": [{ "url": "http://localhost:8402/images/xyz456.png", "revised_prompt": "..." }]
}Supported models for editing: openai/gpt-image-1 (default), openai/gpt-image-2, openai/gpt-image-2.5-sunburst, google/nano-banana, google/nano-banana-2, google/nano-banana-pro. mask works with the OpenAI models only. openai/gpt-image-2.5-flare cannot edit.
User: Draw me a cyberpunk city at night
→ POST to /v1/images/generations, model nano-banana, prompt as given.
User: Generate a high-res portrait of a samurai
→ POST to /v1/images/generations, model seedream, size 1728x2304.
User: Edit this photo to add a sunset background: https://example.com/portrait.jpg
→ POST to /v1/images/image2image, model gpt-image, image = the URL, prompt = "add a warm sunset background".
User: Change the background in my image to a beach (attaches local file)
→ POST to /v1/images/image2image, image = the local file path, prompt describes the change.
GET http://localhost:8402/health and read authMode before telling the user how to fix it: wallet → fund the wallet at blockrun.ai; api-key → top up account credit at user.blockrun.ai/dashboard/credits. Naming the wrong one sends the user to a page that cannot fix their error.nano-banana or grok-imagine for more flexibilityBlockRunAI/ClawRouter
998a4b0
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.