Génération d'images

VérifiéPrudence

Utilisez gpt-image-2 via un relais OpenAI compatible pour générer ou modifier des images, y compris des PNG transparents et des tailles arbitraires.

Spar Skills Guide Bot
ContenuIntermédiaire
24/07/2026
Claude CodeCodex
#image-generation#image-editing#gpt-image-2#transparent-png#asset-resize

Recommandé pour

Synthèse automatique

Génère et modifie des images avec gpt-image-2 via un relais compatible OpenAI, avec redimensionnement local et détourage pour PNG transparent.

Points forts

  • Couvre la génération et l'édition à partir d'une image source, avec priorité à l'édition lorsque les deux intentions sont présentes.
  • Convertit les tailles cibles non prises en charge vers la taille de génération la plus proche, puis redimensionne localement avec les modes contain, cover ou stretch.
  • Produit des PNG transparents en générant sur un fond chroma #ff00ff puis en supprimant localement la couleur clé.
  • Réessaie les timeouts et erreurs transitoires comme les HTTP 502/504 et RemoteDisconnected avant de renvoyer une erreur.

Limites

  • Nécessite un relais compatible OpenAI configuré, par exemple sub2api, ainsi que les identifiants associés.
  • La transparence native n'est pas fiable via cette chaîne ; le détourage au chroma key peut laisser des franges.
  • Se limite à gpt-image-2 et aux tailles de génération stables 1024x1024, 1536x1024, 1024x1536 et auto.
Quand l'utiliser

À utiliser lorsqu'il faut créer ou retoucher un asset image avec gpt-image-2, en particulier avec une taille cible ou un fond transparent.

Quand l'éviter

À éviter si aucun relais compatible OpenAI n'est configuré, si l'utilisateur veut un autre modèle d'image ou si une transparence parfaite au pixel près est indispensable.

Analyse de sécurité

Prudence
Score qualité90/100

The skill relies on Bash, Python, and network calls to generate/edit images through an API relay. It reads local credential files and sends prompts to a remote endpoint, but there is no evidence of destructive commands, credential exfiltration beyond the intended API, or obfuscated payloads. This is legitimate use of powerful tools.

Points d'attention
  • •Uses Bash to execute a Python script that makes network requests to an external image generation API.
  • •Reads local credential/config files (~/.codex/auth.json, ~/.claude/settings.json) to determine API endpoint and authentication.
  • •Falls back to curl.exe with --ssl-no-revoke on Windows, which could be used for network requests.
Comment cette analyse est faite

Exemples

Transparent Unity overlay
Generate a transparent 1920x1080 PNG of a stylized blue ocean wave for a Unity UI overlay, no text, using gpt-image-2, and save it to ./assets/ui.
Edit a product image
Edit this image: replace the background with pure white while keeping the product details, and output a PNG.
Vertical poster base
生成图片:赛博朋克城市夜景海报底图,竖版 1024x1536,高质量,保存为 PNG。

name: gen-images description: Use when the user asks to generate or edit images with gpt-image-2, including "生成图片", "文生图", "修改图片", "编辑图片", "改图", transparent PNG output, or arbitrary target UI asset sizes through an OpenAI-compatible relay such as sub2api. argument-hint: <natural language image request> allowed-tools: [Bash, Read]

gen-images

Use this skill to call gpt-image-2 through an OpenAI-compatible relay such as sub2api for image generation and image editing.

Task Types

Generate when the user asks for:

  • 生成图片
  • 文生图
  • 画一张图
  • 使用 gpt-image-2
  • a new PNG/JPG/WebP asset

Edit when the user provides an image source and asks to change it:

  • 修改图片
  • 编辑图片
  • 改图
  • 把这张图改成...

If both an image source and edit intent are present, prefer edit mode.

Required Fields

Generate:

  • prompt

Edit:

  • prompt
  • image

Ask a short follow-up only when a required field is missing.

Optional Fields

Extract these when present:

  • size
  • quality
  • background
  • output_format
  • n
  • moderation
  • output_compression
  • partial_images
  • input_fidelity for edit only
  • resize_mode
  • output_dir
  • output_name
  • request_timeout
  • mask

Do not repeatedly ask for optional fields. Use defaults when unspecified.

Size Rules

Official stable gpt-image-2 generation sizes are:

  • 1024x1024
  • 1536x1024
  • 1024x1536
  • auto

Behavior:

  • If the user does not specify size, do not pass a size. The API default is auto.
  • If the user specifies auto, pass auto.
  • If the user specifies a supported size, pass it directly.
  • If the user specifies an unsupported target size, choose the closest supported generation size, then locally resize the saved PNG to the target size.

Example:

--size 1920x1080

will generate with 1536x1024, then save a final 1920x1080 image.

Resize Modes

When local resize is needed:

  • contain default: preserve aspect ratio, no crop, transparent padding.
  • cover: preserve aspect ratio, fill target, crop overflow.
  • stretch: non-uniform scaling to exact target.

Use contain for Unity UI overlays, panels, icons, and transparent assets. Use cover for full-screen backgrounds. Use stretch only when the user explicitly accepts distortion.

Transparent PNG Rules

gpt-image-2 does not reliably support native background=transparent through this chain.

When the user asks for transparent output:

  1. Generate a PNG on a flat #ff00ff chroma-key background.
  2. Locally remove the key color.
  3. Save a true alpha PNG.

If the user does not ask for transparency, do not pass background; let the API default to auto.

Script

Use:

python "<skill-dir>/scripts/gen_images.py" --mode generate --prompt "..."

or:

python "<skill-dir>/scripts/gen_images.py" --mode edit --prompt "..." --image "..."

Prefer py when available; otherwise use python.

Common generation example:

python "<skill-dir>/scripts/gen_images.py" \
  --mode generate \
  --prompt "transparent blue ocean wave Unity UI overlay, no text" \
  --size 1920x1080 \
  --background transparent \
  --output-format png \
  --resize-mode contain \
  --output-dir "./assets/ui" \
  --request-timeout 900

Timeout Rules

Default request timeout is 600 seconds.

Use --request-timeout 900 or higher for large images, edit mode, transparent post-processing, or slow relays. Request timeout, HTTP 502/504, and RemoteDisconnected are treated as transient failures and retried before returning a JSON error.

Runtime Config

When installed under .codex, the script reads:

  • ~/.codex/config.toml
  • ~/.codex/auth.json

It uses the active model_provider from config.toml, then reads that provider's base_url. For Codex mode, set base_url so <base_url>/images/generations and <base_url>/images/edits are valid for the relay. If the relay expects standard /v1/images/... endpoints, include /v1 in base_url.

When installed under .claude, the script reads:

  • ~/.claude/settings.json

Output

Default output goes to the current working directory:

./gen-images/

If the user specifies a folder/path, pass --output-dir. When --output-dir is set and --output-name is omitted, the saved file name is derived from the prompt as a safe slug.

If the user specifies an exact name, pass --output-name. Extensions in --output-name are ignored; the final extension follows output_format or post-processing. Multiple images append -01, -02, etc. Existing files are not overwritten; a numeric suffix is added.

The script prints JSON:

{"ok": true, "paths": ["..."], "used_params": {"model": "gpt-image-2", "size": "1920x1080", "generation_size": "1536x1024", "resize_mode": "contain", "background": "transparent", "output_format": "png", "output_dir": "./assets/ui", "output_name": null, "request_timeout": 900, "n": 1}}

On failure:

{"ok": false, "error": "..."}

Notes

  • Do not include unsupported OpenAI API fields such as response_format or default stream in image generation requests.
  • Edit mode uses multipart upload with image[] and optional mask.
  • Windows TLS failures fall back to curl.exe --ssl-no-revoke.
  • Repeated request timed out, 502, or 504 errors usually indicate relay/upstream capacity or gateway timeout, not a local post-processing failure.

Du fichier au premier essai

Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.

Consulter la source et ses fichiers annexes

Ce téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.

1. Télécharger le fichier

Télécharger SKILL.md

Depuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/image-generation-mryiqg44/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.

Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.

mkdir -p '.skill-downloads/image-generation-mryiqg44' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/image-generation-mryiqg44/download' --output '.skill-downloads/image-generation-mryiqg44/SKILL.md.part' && mv '.skill-downloads/image-generation-mryiqg44/SKILL.md.part' '.skill-downloads/image-generation-mryiqg44/SKILL.md'

2. Vérifier les prérequis

Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.

Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.

Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.

3. Charger la skill

Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.

Claude Code
test -f '.skill-downloads/image-generation-mryiqg44/SKILL.md' && test -s '.skill-downloads/image-generation-mryiqg44/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/gen-images' && cp -R '.skill-downloads/image-generation-mryiqg44' '.claude/skills/gen-images'

Codex
test -f '.skill-downloads/image-generation-mryiqg44/SKILL.md' && test -s '.skill-downloads/image-generation-mryiqg44/SKILL.md' && mkdir -p '.agents/skills' && test ! -e '.agents/skills/gen-images' && cp -R '.skill-downloads/image-generation-mryiqg44' '.agents/skills/gen-images'

OpenSkills

OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.

Installation officielle d’OpenSkills
openskills install './.skill-downloads/image-generation-mryiqg44'

openskills read 'image-generation-mryiqg44'

La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.

Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.

openskills sync

Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.

4. Faire un premier essai

Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :

Lis .skill-downloads/image-generation-mryiqg44/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.

Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.

Skills similaires