Back to skills
SkillHub ClubShip Full StackFull StackBackend
krea-api
Imported from https://github.com/openclaw/skills.
Packaged view
This page reorganizes the original catalog entry around fit, installability, and workflow context first. The original raw source lives below.
Stars
2,965
Hot score
99
Updated
March 20, 2026
Overall rating
C4.0
Composite score
4.0
Best-practice grade
F36.0
Install command
npx @skill-hub/cli install openclaw-skills-krea-api
Repository
openclaw/skills
Skill path: skills/fossilizedcarlos/krea-api
Imported from https://github.com/openclaw/skills.
Open repositoryBest for
Primary workflow: Ship Full Stack.
Technical facets: Full Stack, Backend.
Target audience: everyone.
License: Unknown.
Original source
Catalog source: SkillHub Club.
Repository owner: openclaw.
This is still a mirrored public skill entry. Review the repository before installing into production workflows.
What it helps with
- Install krea-api into Claude Code, Codex CLI, Gemini CLI, or OpenCode workflows
- Review https://github.com/openclaw/skills before adding krea-api to shared team environments
- Use krea-api for development workflows
Works across
Claude CodeCodex CLIGemini CLIOpenCode
Favorites: 0.
Sub-skills: 0.
Aggregator: No.
Original source / Raw SKILL.md
---
name: krea-api
description: Generate images via Krea.ai API (Flux, Imagen, Ideogram, Seedream, etc.)
version: 0.2.4
metadata:
credentials:
- id: krea
description: Krea.ai API key (format: KEY_ID:SECRET)
envVar: null
file: ~/.openclaw/credentials/krea.json
required: true
---
# 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:
```bash
mkdir -p ~/.openclaw/credentials
```
3. Add your credentials:
```bash
echo '{"apiKey": "YOUR_KEY_ID:YOUR_SECRET"}' > ~/.openclaw/credentials/krea.json
```
4. Set secure permissions:
```bash
chmod 600 ~/.openclaw/credentials/krea.json
```
## Usage
### Command Line
```bash
# 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
```python
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:
```bash
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:
```bash
ls -la ~/.openclaw/credentials/krea.json
# Should show: -rw-------
```
2. Verify format (must have colon):
```json
{"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`.
---
## Skill Companion Files
> Additional files collected from the skill directory layout.
### README.md
```markdown
# Krea.ai API Skill
See [SKILL.md](./SKILL.md) for full documentation.
## Quick Start
```bash
# Generate an image (uses credentials from ~/.openclaw/credentials/krea.json)
python3 krea_api.py --prompt "A cute crab at a desk" --model flux
# List available models
python3 krea_api.py --list-models
```
## Configure Credentials
Create the credentials file:
```bash
mkdir -p ~/.openclaw/credentials
echo '{"apiKey": "YOUR_KEY_ID:YOUR_SECRET"}' > ~/.openclaw/credentials/krea.json
chmod 600 ~/.openclaw/credentials/krea.json
```
Or pass directly via CLI:
```bash
python3 krea_api.py --prompt "..." --key-id YOUR_KEY_ID --secret YOUR_SECRET
```
## Publish to ClawHub
```bash
# Login once
clawdhub login
# Publish this skill folder
clawdhub publish . --slug krea-api --name "Krea.ai API"
```
## Requirements
- Python 3.7+
- No external dependencies (uses stdlib)
```
### _meta.json
```json
{
"owner": "fossilizedcarlos",
"slug": "krea-api",
"displayName": "Krea.ai API",
"latest": {
"version": "0.2.4",
"publishedAt": 1771569123568,
"commit": "https://github.com/openclaw/skills/commit/5a36b7bbeca680977738922874a33386555d018f"
},
"history": [
{
"version": "0.2.2",
"publishedAt": 1771431894464,
"commit": "https://github.com/openclaw/skills/commit/6e8c4a3c3992ba37a4f2f4dc87c2880ca3a73af3"
},
{
"version": "0.2.0",
"publishedAt": 1770648259326,
"commit": "https://github.com/openclaw/skills/commit/87d1236e6c1a9d3c3c45d152be802e25313de528"
},
{
"version": "0.1.3",
"publishedAt": 1769097483543,
"commit": "https://github.com/clawdbot/skills/commit/333dffa38242234af56596dfa95fa2168e46cdc4"
},
{
"version": "0.1.0",
"publishedAt": 1769095540828,
"commit": "https://github.com/clawdbot/skills/commit/c9795e0b2ef9f46519373f4e7b4cd29b7be78e11"
}
]
}
```