skills$openclaw/imagerouter
dawe356.2k

by dawe35

imagerouter – OpenClaw Skill

imagerouter is an OpenClaw Skills integration for coding workflows. Generate AI images with any model using ImageRouter API (requires API key).

6.2k stars608 forksSecurity L1
Updated Feb 7, 2026Created Feb 7, 2026coding

Skill Snapshot

nameimagerouter
descriptionGenerate AI images with any model using ImageRouter API (requires API key). OpenClaw Skills integration.
ownerdawe35
repositorydawe35/image-router
languageMarkdown
licenseMIT
topics
securityL1
installopenclaw add @dawe35/image-router
last updatedFeb 7, 2026

Maintainer

dawe35

dawe35

Maintains imagerouter in the OpenClaw Skills directory.

View GitHub profile
File Explorer
2 files
.
_meta.json
275 B
SKILL.md
4.6 KB
SKILL.md

name: imagerouter description: Generate AI images with any model using ImageRouter API (requires API key). homepage: https://imagerouter.io metadata: {"clawdbot":{"emoji":"🎨","requires":{"bins":["curl"]}}}

ImageRouter Image Generation

Generate images with any model available on ImageRouter using curl commands.

Available models

The test/test model is a free dummy model that is used for testing the API. It is not a real model, therefore you should use other models for image generation.

Get top 10 most popular models:

curl -X POST 'https://backend.imagerouter.io/operations/get-popular-models'

Search available models by name:

curl "https://api.imagerouter.io/v1/models?type=image&sort=date&name=gemini"

Get all available models:

curl "https://api.imagerouter.io/v1/models?type=image&sort=date&limit=1000"

Quick Start - Text-to-Image

Basic generation with JSON endpoint:

curl 'https://api.imagerouter.io/v1/openai/images/generations' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  --json '{
    "prompt": "a serene mountain landscape at sunset",
    "model": "test/test",
    "quality": "auto",
    "size": "auto",
    "response_format": "url",
    "output_format": "webp"
  }'

Unified Endpoint (Text-to-Image & Image-to-Image)

Text-to-Image with multipart/form-data:

curl 'https://api.imagerouter.io/v1/openai/images/edits' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -F 'prompt=a cyberpunk city at night' \
  -F 'model=test/test' \
  -F 'quality=high' \
  -F 'size=1024x1024' \
  -F 'response_format=url' \
  -F 'output_format=webp'

Image-to-Image (with input images):

curl 'https://api.imagerouter.io/v1/openai/images/edits' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -F 'prompt=transform this into a watercolor painting' \
  -F 'model=test/test' \
  -F 'quality=auto' \
  -F 'size=auto' \
  -F 'response_format=url' \
  -F 'output_format=webp' \
  -F 'image[]=@/path/to/your/image.webp'

Multiple images (up to 16):

curl 'https://api.imagerouter.io/v1/openai/images/edits' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -F 'prompt=combine these images' \
  -F 'model=test/test' \
  -F 'image[]=@image1.webp' \
  -F 'image[]=@image2.webp' \
  -F 'image[]=@image3.webp'

With mask (some models require mask for inpainting):

curl 'https://api.imagerouter.io/v1/openai/images/edits' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -F 'prompt=fill the masked area with flowers' \
  -F 'model=test/test' \
  -F 'image[]=@original.webp' \
  -F 'mask[]=@mask.webp'

Parameters

  • model (required): Image model to use (see https://imagerouter.io/models)
  • prompt (optional): Text description for generation. Most models require a text prompt, but not all.
  • quality (optional): auto (default), low, medium, high
  • size (optional): auto (default) or WIDTHxHEIGHT (e.g., 1024x1024).
  • response_format (optional):
    • url (default) - Returns hosted URL
    • b64_json - Returns base64-encoded image
    • b64_ephemeral - Base64 without saving to logs
  • output_format (optional): webp (default), jpeg, png
  • image[] (optional): Input file for Image-to-Image (multipart only)
  • mask[] (optional): Editing mask for inpainting (multipart only)

Response Format

{
  "created": 1769286389027,
  "data": [
    {
      "url": "https://storage.imagerouter.io/fffb4426-efbd-4bcc-87d5-47e6936bf0bb.webp"
    }
  ],
  "latency": 6942,
  "cost": 0.004
}

Endpoint Comparison

FeatureUnified (/edits)JSON (/generations)
Text-to-Image
Image-to-Image
Encodingmultipart/form-dataapplication/json

Tips

  • Both /v1/openai/images/generations and /v1/openai/images/edits are the same for the unified endpoint
  • Use JSON endpoint for simple text-to-image when you don't need file uploads
  • Use unified endpoint when you need Image-to-Image capabilities
  • Check model features at https://imagerouter.io/models (quality support, edit support, etc.)
  • Get your API key at https://imagerouter.io/api-keys

Examples by Use Case

Quick test generation:

curl 'https://api.imagerouter.io/v1/openai/images/generations' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  --json '{"prompt":"test image","model":"test/test"}'

Download image directly:

curl 'https://api.imagerouter.io/v1/openai/images/generations' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  --json '{"prompt":"abstract art","model":"test/test"}' \
  | jq -r '.data[0].url' \
  | xargs curl -o output.webp
README.md

No README available.

Permissions & Security

Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.

Requirements

  • OpenClaw CLI installed and configured.
  • Language: Markdown
  • License: MIT
  • Topics:

FAQ

How do I install imagerouter?

Run openclaw add @dawe35/image-router in your terminal. This installs imagerouter into your OpenClaw Skills catalog.

Does this skill run locally or in the cloud?

OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.

Where can I verify the source code?

The source repository is available at https://github.com/openclaw/skills/tree/main/skills/dawe35/image-router. Review commits and README documentation before installing.