nano-banana-pro-openrouter

Par github · awesome-copilot

Générez ou modifiez des images via OpenRouter avec le modèle Gemini 3 Pro Image. Utilisez-le pour la génération d'images à partir d'un prompt uniquement, la retouche d'images et la composition multi-images ; prend en charge les sorties 1K/2K/4K.

npx skills add https://github.com/github/awesome-copilot --skill nano-banana-pro-openrouter

Nano Banana Pro OpenRouter

Vue d'ensemble

Générez ou modifiez des images avec OpenRouter en utilisant le modèle google/gemini-3-pro-image-preview. Prise en charge de la génération par prompt seul, des éditions d'image unique et de la composition multi-images.

Génération par prompt seul

uv run {baseDir}/scripts/generate_image.py \
  --prompt "A cinematic sunset over snow-capped mountains" \
  --filename sunset.png

Modifier une seule image

uv run {baseDir}/scripts/generate_image.py \
  --prompt "Replace the sky with a dramatic aurora" \
  --input-image input.jpg \
  --filename aurora.png

Composer plusieurs images

uv run {baseDir}/scripts/generate_image.py \
  --prompt "Combine the subjects into a single studio portrait" \
  --input-image face1.jpg \
  --input-image face2.jpg \
  --filename composite.png

Résolution

  • Utilisez --resolution avec 1K, 2K, ou 4K.
  • La résolution par défaut est 1K si non spécifiée.

Personnalisation du system prompt

La skill lit un system prompt optionnel depuis assets/SYSTEM_TEMPLATE. Cela vous permet de personnaliser le comportement de la génération d'images sans modifier le code.

Comportement et contraintes

  • Acceptez jusqu'à 3 images d'entrée via --input-image répété.
  • --filename accepte les chemins relatifs (sauvegarde dans le répertoire courant) ou les chemins absolus.
  • Si plusieurs images sont retournées, ajoutez -1, -2, etc. au nom du fichier.
  • Affichez MEDIA: <path> pour chaque image sauvegardée. Ne relisez pas les images dans la réponse.

Dépannage

Si le script se termine avec un code non zéro, vérifiez stderr par rapport à ces blocages courants :

Symptôme Résolution
OPENROUTER_API_KEY is not set Demandez à l'utilisateur de le définir. PowerShell : $env:OPENROUTER_API_KEY = "sk-or-..." / bash : export OPENROUTER_API_KEY="sk-or-..."
uv: command not found ou non reconnu macOS/Linux : <code>curl -LsSf https://astral.sh/uv/install.sh &#124; sh</code>. Windows : <code>powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 &#124; iex"</code>. Puis redémarrez le terminal.
AuthenticationError / HTTP 401 La clé est invalide ou n'a pas de crédits. Vérifiez sur https://openrouter.ai/settings/keys.

Pour les erreurs transitoires (HTTP 429, timeouts réseau), réessayez une fois après 30 secondes. Ne réessayez pas la même erreur plus de deux fois — exposez plutôt le problème à l'utilisateur.

Skills similaires