v0.2.4

Krea.ai API

Carlos E. Barboza Carlos E. Barboza ← All skills

Generate images via Krea.ai API (Flux, Imagen, Ideogram, Seedream, etc.)

Downloads
1.1k
Stars
2
Versions
8
Updated
2026-02-24

Install

npx clawhub@latest install krea-api

Documentation

Krea.ai Image Generation Skill

Generate images using Krea.ai's API with support for multiple models including Flux, Imagen 4, Ideogram 3.0, and more.

Features

  • -✅ Async job-based generation (POST → poll → result)
  • -✅ Support for multiple image models
  • -✅ Configurable parameters (width, height, steps, guidance, seed)
  • -✅ Stdlib-only dependencies (no requests required)
  • -✅ Secure credential handling with file permissions

Security

This skill prioritizes security:

  • -No webhook support - Removed to prevent SSRF risks
  • -Stdlib dependencies - Minimal attack surface (uses urllib only)
  • -File-based credentials - Primary credential source with secure permissions
  • -Input validation - All parameters validated before API calls

Credential Sources (in order of precedence)

1. CLI arguments: --key-id and --secret (for one-off use)

2. File: ~/.openclaw/credentials/krea.json

Note on Subprocess

The --usage flag uses webbrowser.open() (stdlib) to open the usage dashboard in a browser. No subprocess calls.

Setup

1. Get your Krea.ai API credentials from https://docs.krea.ai/developers/api-keys-and-billing

2. Create the credentials file:

mkdir -p ~/.openclaw/credentials

3. Add your credentials:

echo '{"apiKey": "YOUR_KEY_ID:YOUR_SECRET"}' > ~/.openclaw/credentials/krea.json

4. Set secure permissions:

chmod 600 ~/.openclaw/credentials/krea.json

Usage

Command Line

Generate an image

python3 krea_api.py --prompt "A sunset over the ocean"

With specific model

python3 krea_api.py --prompt "Cyberpunk city" --model imagen-4

Custom size

python3 krea_api.py --prompt "Portrait" --width 1024 --height 1280

List available models

python3 krea_api.py --list-models

Check recent jobs

python3 krea_api.py --jobs 10

Python Script

from krea_api import KreaAPI

api = KreaAPI() # Reads from ~/.openclaw/credentials/krea.json

Generate and wait

urls = api.generate_and_wait(

prompt="A serene Japanese garden",

model="flux",

width=1024,

height=1024

)

print(urls)

Parameters

| Parameter | Type | Default | Description |

|-----------|------|---------|-------------|

| prompt | str | required | Image description (max 1800 chars) |

| model | str | "flux" | Model name from table below |

| width | int | 1024 | Image width (512-2368) |

| height | int | 1024 | Image height (512-2368) |

| steps | int | 25 | Generation steps (1-100) |

| guidance_scale | float | 3.0 | Guidance scale (0-24) |

| seed | str | None | Random seed for reproducibility |

Available Models

| Model | Best For |

|-------|----------|

| flux | General purpose, high quality |

| imagen-4 | Latest Google model |

| ideogram-3.0 | Text in images |

| seedream-4 | Fast generations |

| nano-banana | Quick previews |

Run python3 krea_api.py --list-models for full list.

Check Usage

Krea.ai doesn't provide a public usage API. Check your usage at:

https://www.krea.ai/settings/usage-statistics

Or list recent jobs:

python3 krea_api.py --jobs 10

File Locations

| Purpose | Path |

|---------|------|

| Credentials | ~/.openclaw/credentials/krea.json |

| Script | {skill}/krea_api.py |

| Skill docs | {skill}/SKILL.md |

Troubleshooting

"API credentials required"

1. Check credentials file exists:

ls -la ~/.openclaw/credentials/krea.json

Should show: -rw-------

2. Verify format (must have colon):

{"apiKey": "KEY_ID:SECRET"}

⚠️ Security: Do NOT use cat to view the credentials file — it contains secrets.

Model not found

Run python3 krea_api.py --list-models to see available models.

Credits

Thanks to Claude Opus 4.5 for researching the correct API structure. The docs incorrectly suggest /v1/images/flux but the working endpoint is /generate/image/bfl/flux-1-dev.

Launch an agent with Krea.ai API on Termo.