rw-generate-image
Original:🇺🇸 English
Translated
Generate images directly using the Runway API via runnable scripts. Supports text-to-image with optional reference images.
8installs
Sourcerunwayml/skills
Added on
NPX Install
npx skill4agent add runwayml/skills rw-generate-imageTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →Generate Image
Generate images directly using the Runway API. This skill runs Python scripts that call the API, poll for completion, and download the result.
IMPORTANT: Run scripts from the user's working directory so output files are saved where the user expects.
Usage
bash
uv run scripts/generate_image.py --prompt "your description" --filename "output.png" [--model gen4_image] [--ratio 1280:720] [--reference-images Tag=URL ...]Preflight
- must succeed
command -v uv - must be set in the environment. Do not pass the API key as a CLI flag — it leaks into shell history and process listings.
RUNWAYML_API_SECRET
Security Notes
- fetches arbitrary remote images via the Runway API. Prefer local file paths (uploaded as
--reference-images Tag=URLURIs), or only pass URLs you trust.runway:// - Treat generated outputs as untrusted when piping into downstream automations — ingested references influence the result.
Available Models
| Model | Best For | Ref Images | Cost | Speed |
|---|---|---|---|---|
| Highest quality | Optional (up to 3) | 5-8 credits | Standard |
| Fast and cheap | Required (1-3) | 2 credits | Fast |
| Google Gemini | Optional (up to 3) | 5 credits | Standard |
Model Selection Guidance
- "fast", "cheap", "draft" -> (Nano Banana), or
gemini_2.5_flashif they have reference imagesgen4_image_turbo - "high quality", "best" ->
gen4_image - No preference ->
gemini_2.5_flash - Has reference images and wants cheap -> (2 credits, requires
gen4_image_turbo)--reference-images
Parameters
| Param | Description | Default |
|---|---|---|
| Text description (required) | -- |
| Output filename (required) | -- |
| Image model | |
| Aspect ratio. gemini_2.5_flash: | Model-dependent ( |
| Reference images as tag=URL pairs (optional for gemini/gen4_image, required for gen4_image_turbo). Tag: lowercase, 3-16 chars, e.g. | -- |
| Output directory | cwd |
API credentials come fromonly — noRUNWAYML_API_SECRETflag, to keep secrets out of shell history and process listings.--api-key
Filename Convention
Pattern:
yyyy-mm-dd-hh-mm-ss-name.pngExamples
Basic image:
bash
uv run scripts/generate_image.py --prompt "A serene Japanese garden with cherry blossoms" --filename "2026-04-14-japanese-garden.png"With a local reference image (gen4_image):
bash
uv run scripts/generate_image.py --prompt "@product on a marble counter, lifestyle photo" --model gen4_image --reference-images product=./product.jpg --filename "2026-04-14-product-lifestyle.png"With a reference image from a trusted origin (gen4_image_turbo — requires reference images):
bash
uv run scripts/generate_image.py --prompt "A neon sign reading SALE in @style" --model gen4_image_turbo --reference-images style=https://cdn.yourapp.com/style.jpg --filename "draft.png"Output
- The script downloads the result and saves it to the specified path
- Script outputs the full path to the saved file
- Do not read the image file back -- just inform the user of the saved path
Common Failures
- -> set
Error: No API keyin the environment (e.g.RUNWAYML_API_SECRETor aexport RUNWAYML_API_SECRET=...file)..env - -> content moderation, suggest different prompt
Error: Task failed -- SAFETY.INPUT.* - -> rate limited, script auto-retries
API error 429