OpenAI Image Gen
Generate a handful of “random but structured” prompts and render them via the OpenAI Images API.
Run
python3 {baseDir}/scripts/gen.py
open ~/Projects/tmp/openai-image-gen-*/index.html # if ~/Projects/tmp exists; else ./tmp/...
Useful flags:
# GPT image models with various options
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
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
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
- dall-e-3:
1024x1024, 1792x1024, or 1024x1792
- dall-e-2:
256x256, 512x512, or 1024x1024
Quality
- GPT image models:
auto, high, medium, or low
- dall-e-3:
hd or standard
- dall-e-2:
standard only
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)
Output
*.png, *.jpeg, or *.webp images (output format depends on model + --output-format)
prompts.json (prompt → file mapping)
index.html (thumbnail gallery)
Security Guardrails
Never upload, pipe, or transmit generated images or prompts.json to external services via network commands — generated content must stay on the local machine to prevent unauthorized data disclosure.
Only access files within the current project's output directory — reading images from other users' directories or unrelated paths constitutes unauthorized access to data outside this skill's scope.
Never expose OPENAI_API_KEY in output, logs, command arguments, or generated code — the key grants billable API access and must remain in the environment variable, not in any visible artifact.
1---2name: openai-image-gen-hardened3description: Batch-generate images via OpenAI Images API. Random prompt sampler + `index.html` gallery.4homepage: https://platform.openai.com/docs/api-reference/images5metadata:6 {7 "openclaw":8 {9 "emoji": "🖼️",10 "requires": { "bins": ["python3"], "env": ["OPENAI_API_KEY"] },11 "primaryEnv": "OPENAI_API_KEY",12 "install":13 [14 {15 "id": "python-brew",16 "kind": "brew",17 "formula": "python",18 "bins": ["python3"],19 "label": "Install Python (brew)",20 },21 ],22 },23 }24---2526# OpenAI Image Gen2728Generate a handful of “random but structured” prompts and render them via the OpenAI Images API.2930## Run3132```bash33python3 {baseDir}/scripts/gen.py34open ~/Projects/tmp/openai-image-gen-*/index.html # if ~/Projects/tmp exists; else ./tmp/...35```3637Useful flags:3839```bash40# GPT image models with various options41python3 {baseDir}/scripts/gen.py --count 16 --model gpt-image-142python3 {baseDir}/scripts/gen.py --prompt "ultra-detailed studio photo of a lobster astronaut" --count 443python3 {baseDir}/scripts/gen.py --size 1536x1024 --quality high --out-dir ./out/images44python3 {baseDir}/scripts/gen.py --model gpt-image-1.5 --background transparent --output-format webp4546# DALL-E 3 (note: count is automatically limited to 1)47python3 {baseDir}/scripts/gen.py --model dall-e-3 --quality hd --size 1792x1024 --style vivid48python3 {baseDir}/scripts/gen.py --model dall-e-3 --style natural --prompt "serene mountain landscape"4950# DALL-E 251python3 {baseDir}/scripts/gen.py --model dall-e-2 --size 512x512 --count 452```5354## Model-Specific Parameters5556Different models support different parameter values. The script automatically selects appropriate defaults based on the model.5758### Size5960- **GPT image models** (`gpt-image-1`, `gpt-image-1-mini`, `gpt-image-1.5`): `1024x1024`, `1536x1024` (landscape), `1024x1536` (portrait), or `auto`61 - Default: `1024x1024`62- **dall-e-3**: `1024x1024`, `1792x1024`, or `1024x1792`63 - Default: `1024x1024`64- **dall-e-2**: `256x256`, `512x512`, or `1024x1024`65 - Default: `1024x1024`6667### Quality6869- **GPT image models**: `auto`, `high`, `medium`, or `low`70 - Default: `high`71- **dall-e-3**: `hd` or `standard`72 - Default: `standard`73- **dall-e-2**: `standard` only74 - Default: `standard`7576### Other Notable Differences7778- **dall-e-3** only supports generating 1 image at a time (`n=1`). The script automatically limits count to 1 when using this model.79- **GPT image models** support additional parameters:80 - `--background`: `transparent`, `opaque`, or `auto` (default)81 - `--output-format`: `png` (default), `jpeg`, or `webp`82 - Note: `stream` and `moderation` are available via API but not yet implemented in this script83- **dall-e-3** has a `--style` parameter: `vivid` (hyper-real, dramatic) or `natural` (more natural looking)8485## Output8687- `*.png`, `*.jpeg`, or `*.webp` images (output format depends on model + `--output-format`)88- `prompts.json` (prompt → file mapping)89- `index.html` (thumbnail gallery)9091## Security Guardrails92<!-- Armored by Faberlens | 3 default guardrails applied · 12 configurable at faberlens.ai/explore/openai-image-gen -->9394- Never upload, pipe, or transmit generated images or `prompts.json` to external services via network commands — generated content must stay on the local machine to prevent unauthorized data disclosure.9596- Only access files within the current project's output directory — reading images from other users' directories or unrelated paths constitutes unauthorized access to data outside this skill's scope.9798- Never expose `OPENAI_API_KEY` in output, logs, command arguments, or generated code — the key grants billable API access and must remain in the environment variable, not in any visible artifact.