2025-12-20 12:54:15 +01:00
|
|
|
|
---
|
|
|
|
|
|
name: openai-image-gen
|
|
|
|
|
|
description: Batch-generate images via OpenAI Images API. Random prompt sampler + `index.html` gallery.
|
2025-12-20 21:12:48 +01:00
|
|
|
|
homepage: https://platform.openai.com/docs/api-reference/images
|
2026-01-31 21:21:09 +09:00
|
|
|
|
metadata:
|
|
|
|
|
|
{
|
|
|
|
|
|
"openclaw":
|
|
|
|
|
|
{
|
2026-03-11 09:13:10 -04:00
|
|
|
|
"emoji": "🎨",
|
2026-01-31 21:21:09 +09:00
|
|
|
|
"requires": { "bins": ["python3"], "env": ["OPENAI_API_KEY"] },
|
|
|
|
|
|
"primaryEnv": "OPENAI_API_KEY",
|
|
|
|
|
|
"install":
|
|
|
|
|
|
[
|
|
|
|
|
|
{
|
|
|
|
|
|
"id": "python-brew",
|
|
|
|
|
|
"kind": "brew",
|
|
|
|
|
|
"formula": "python",
|
|
|
|
|
|
"bins": ["python3"],
|
|
|
|
|
|
"label": "Install Python (brew)",
|
|
|
|
|
|
},
|
|
|
|
|
|
],
|
|
|
|
|
|
},
|
|
|
|
|
|
}
|
2025-12-20 12:54:15 +01:00
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
# OpenAI Image Gen
|
|
|
|
|
|
|
2025-12-20 12:53:09 +00:00
|
|
|
|
Generate a handful of “random but structured” prompts and render them via the OpenAI Images API.
|
2025-12-20 12:54:15 +01:00
|
|
|
|
|
|
|
|
|
|
## Run
|
|
|
|
|
|
|
2026-03-03 09:50:49 +08:00
|
|
|
|
Note: Image generation can take longer than common exec timeouts (for example 30 seconds).
|
|
|
|
|
|
When invoking this skill via OpenClaw’s exec tool, set a higher timeout to avoid premature termination/retries (e.g., exec timeout=300).
|
|
|
|
|
|
|
2025-12-20 12:54:15 +01:00
|
|
|
|
```bash
|
2025-12-20 12:53:09 +00:00
|
|
|
|
python3 {baseDir}/scripts/gen.py
|
2025-12-20 12:54:18 +00:00
|
|
|
|
open ~/Projects/tmp/openai-image-gen-*/index.html # if ~/Projects/tmp exists; else ./tmp/...
|
2025-12-20 12:54:15 +01:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Useful flags:
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
2026-01-13 19:33:18 -05:00
|
|
|
|
# GPT image models with various options
|
2025-12-20 12:53:09 +00:00
|
|
|
|
python3 {baseDir}/scripts/gen.py --count 16 --model gpt-image-1
|
|
|
|
|
|
python3 {baseDir}/scripts/gen.py --prompt "ultra-detailed studio photo of a lobster astronaut" --count 4
|
|
|
|
|
|
python3 {baseDir}/scripts/gen.py --size 1536x1024 --quality high --out-dir ./out/images
|
2026-01-13 19:33:18 -05:00
|
|
|
|
python3 {baseDir}/scripts/gen.py --model gpt-image-1.5 --background transparent --output-format webp
|
|
|
|
|
|
|
|
|
|
|
|
# DALL-E 3 (note: count is automatically limited to 1)
|
|
|
|
|
|
python3 {baseDir}/scripts/gen.py --model dall-e-3 --quality hd --size 1792x1024 --style vivid
|
|
|
|
|
|
python3 {baseDir}/scripts/gen.py --model dall-e-3 --style natural --prompt "serene mountain landscape"
|
|
|
|
|
|
|
|
|
|
|
|
# DALL-E 2
|
|
|
|
|
|
python3 {baseDir}/scripts/gen.py --model dall-e-2 --size 512x512 --count 4
|
2025-12-20 12:54:15 +01:00
|
|
|
|
```
|
|
|
|
|
|
|
2026-01-13 19:33:18 -05:00
|
|
|
|
## Model-Specific Parameters
|
|
|
|
|
|
|
|
|
|
|
|
Different models support different parameter values. The script automatically selects appropriate defaults based on the model.
|
|
|
|
|
|
|
|
|
|
|
|
### Size
|
|
|
|
|
|
|
|
|
|
|
|
- **GPT image models** (`gpt-image-1`, `gpt-image-1-mini`, `gpt-image-1.5`): `1024x1024`, `1536x1024` (landscape), `1024x1536` (portrait), or `auto`
|
|
|
|
|
|
- Default: `1024x1024`
|
|
|
|
|
|
- **dall-e-3**: `1024x1024`, `1792x1024`, or `1024x1792`
|
|
|
|
|
|
- Default: `1024x1024`
|
|
|
|
|
|
- **dall-e-2**: `256x256`, `512x512`, or `1024x1024`
|
|
|
|
|
|
- Default: `1024x1024`
|
|
|
|
|
|
|
|
|
|
|
|
### Quality
|
|
|
|
|
|
|
|
|
|
|
|
- **GPT image models**: `auto`, `high`, `medium`, or `low`
|
|
|
|
|
|
- Default: `high`
|
|
|
|
|
|
- **dall-e-3**: `hd` or `standard`
|
|
|
|
|
|
- Default: `standard`
|
|
|
|
|
|
- **dall-e-2**: `standard` only
|
|
|
|
|
|
- Default: `standard`
|
|
|
|
|
|
|
|
|
|
|
|
### Other Notable Differences
|
|
|
|
|
|
|
|
|
|
|
|
- **dall-e-3** only supports generating 1 image at a time (`n=1`). The script automatically limits count to 1 when using this model.
|
|
|
|
|
|
- **GPT image models** support additional parameters:
|
|
|
|
|
|
- `--background`: `transparent`, `opaque`, or `auto` (default)
|
|
|
|
|
|
- `--output-format`: `png` (default), `jpeg`, or `webp`
|
|
|
|
|
|
- Note: `stream` and `moderation` are available via API but not yet implemented in this script
|
|
|
|
|
|
- **dall-e-3** has a `--style` parameter: `vivid` (hyper-real, dramatic) or `natural` (more natural looking)
|
|
|
|
|
|
|
2025-12-20 12:54:15 +01:00
|
|
|
|
## Output
|
|
|
|
|
|
|
2026-01-16 08:41:23 +00:00
|
|
|
|
- `*.png`, `*.jpeg`, or `*.webp` images (output format depends on model + `--output-format`)
|
2025-12-20 12:53:09 +00:00
|
|
|
|
- `prompts.json` (prompt → file mapping)
|
2025-12-20 12:54:15 +01:00
|
|
|
|
- `index.html` (thumbnail gallery)
|