Openai Image Gen
Medium
by steipete | Audited: 2026-02-26T09:59:20.936Z | Ruleset: 0.2.0
About This Skill
Batch-generate images via OpenAI Images API. Random prompt sampler + index.html gallery.
✨ Needs env:
OPENAI_API_KEY ✨
prompts.json (prompt ↔ file mapping) ✨
index.html (thumbnail gallery) Use Cases
Documentation (Original)
Source: SKILL.md The following is the author's original documentation (often English). For installation, follow “Quick Install” above.
name: openai-image-gen
description: Batch-generate images via OpenAI Images API. Random prompt sampler + index.html gallery.
OpenAI Image Gen
Generate a handful of “random but structured” prompts and render them via OpenAI Images API.
Setup
- Needs env:
OPENAI_API_KEY
Run
From any directory (outputs to ~/Projects/tmp/... when present; else ./tmp/...):
python3 ~/Projects/agent-scripts/skills/openai-image-gen/scripts/gen.py
open ~/Projects/tmp/openai-image-gen-*/index.html
Useful flags:
python3 ~/Projects/agent-scripts/skills/openai-image-gen/scripts/gen.py --count 16 --model gpt-image-1.5
python3 ~/Projects/agent-scripts/skills/openai-image-gen/scripts/gen.py --prompt "ultra-detailed studio photo of a lobster astronaut" --count 4
python3 ~/Projects/agent-scripts/skills/openai-image-gen/scripts/gen.py --size 1536x1024 --quality high --out-dir ./out/images
Output
*.pngimagesprompts.json(prompt ↔ file mapping)index.html(thumbnail gallery)
Security Audit
Medium
Summary
Batch-generate images via OpenAI Images API. Random prompt sampler + index.html gallery.
Risk Profile
ToxicSkills Analysis
Blocklist
Not matched
Prompt Injection
Not detected
Toxic Flags
exfiltrationcredential-access
No Toxic signals detected by current static checks.
Key Risks 0 items
No LLM risk bullets (LLM disabled or not cached).
Deterministic Findings (Evidence)
| Rule | Severity | File | Snippet |
|---|---|---|---|
| NET_HTTP_REQUEST | medium | skills/steipete/openai-image-gen/scripts/gen.py Line 13 | import urllib.request |
| SENSITIVE_ENV | medium | skills/steipete/openai-image-gen/scripts/gen.py Line 35 | os.environ.get("OPENAI_BASE_URL") |
| SENSITIVE_ENV | medium | skills/steipete/openai-image-gen/scripts/gen.py Line 36 | or os.environ.get("OPENAI_API_BASE") |
| NET_HTTP_REQUEST | medium | skills/steipete/openai-image-gen/scripts/gen.py Line 99 | req = urllib.request.Request( |
| NET_HTTP_REQUEST | medium | skills/steipete/openai-image-gen/scripts/gen.py Line 109 | with urllib.request.urlopen(req, timeout=timeout_s) as resp: |
| SENSITIVE_ENV | medium | skills/steipete/openai-image-gen/scripts/gen.py Line 167 | api_key = args.api_key or os.environ.get("OPENAI_API_KEY") |
Scoring Criteria
Each skill is scored across 5 dimensions. The weighted total determines the star rating.
Code Toxicity 100/100 (weight 30%)
Privacy Risk 34/100 (weight 25%)
Permission Scope 80/100 (weight 20%)
Author Reputation 75/100 (weight 15%)
Code Quality 70/100 (weight 10%)
Star Rating Scale
5★ Safe — Score ≥ 80
4★ Good — Score 70–79
3★ Caution — Score 60–69
2★ Risky — Score 40–59
1★ Dangerous — Score < 40
Why This Score?
The following dimensions scored below 60, dragging the overall rating down:
- Privacy Risk: 34/100