Generate and edit images using Gemini's image generation API (Imagen 3). This skill should be used when creating images, illustrations, diagrams, editing existing images, or iteratively refining visual content through multi-turn conversations.
This skill provides comprehensive access to Gemini's image generation capabilities, including text-to-image generation, image editing, multi-turn refinement, batch processing, and high-resolution output.
GOOGLE_API_KEY or GEMINI_API_KEY environment variable.venv/) with google-genai pre-installed~/.claude/skills/nano-banana/scripts/generate_image.py| Model | ID | Best For |
|-------|----|----------|
| Flash | gemini-2.5-flash-image | Fast generation, high volume, low latency |
| Pro | gemini-3-pro-image-preview | Professional quality, 4K, advanced reasoning |
| Capability | Script | Description |
|------------|--------|-------------|
| Image Generation | generate_image.py | Create images from text prompts |
| Image Editing | edit_image.py | Modify existing images with instructions |
| Batch Generation | batch_generate.py | Generate multiple images in parallel |
| Multi-turn Editing | chat_session.py | Iterative refinement via conversation |
python scripts/generate_image.py "a sunset over mountains" sunset.png
With options:
python scripts/generate_image.py "modern office" office.png --model pro --aspect 16:9 --size 4K
python scripts/edit_image.py photo.png "remove the background" result.png
Create a prompts file (prompts.json):
[
{"prompt": "slide 1: intro graphic", "filename": "slide_01.png", "aspect": "16:9"},
{"prompt": "slide 2: data visualization", "filename": "slide_02.png", "aspect": "16:9"}
]
Generate all:
python scripts/batch_generate.py prompts.json ./output/ --parallel 3
Or use a simple text file (one prompt per line):
python scripts/batch_generate.py prompts.txt ./output/ --aspect 16:9
Start an interactive session:
python scripts/chat_session.py --output-dir ./images/
Resume a previous session:
python scripts/chat_session.py --session-file session.json
Send a single refinement:
python scripts/chat_session.py --session-file session.json --message "make it more vibrant"
Generate a single image from a text prompt.
Usage: python scripts/generate_image.py "prompt" output.png [options]
Options:
--model, -m Model: flash (default) or pro
--aspect, -a Aspect ratio: 1:1 (default), 16:9, 9:16, 21:9, 4:3, 3:4
--size, -s Resolution (pro only): 1K, 2K, 4K
Edit an existing image using text instructions.
Usage: python scripts/edit_image.py input.png "instructions" output.png [options]
Options:
--model, -m Model: flash (default) or pro
Generate multiple images from a prompts file.
Usage: python scripts/batch_generate.py prompts.json output_dir/ [options]
Options:
--model, -m Model: flash (default) or pro
--aspect, -a Default aspect ratio: 1:1 (default)
--parallel, -p Number of parallel workers: 1 (default)
--json Output results as JSON
Multi-turn image generation/editing session.
Usage: python scripts/chat_session.py [options]
Options:
--model, -m Model: flash (default) or pro
--session-file, -s Path to session state file (JSON)
--output-dir, -o Directory for output images: . (default)
--initial, -i Initial prompt to start with
--message Send single message (non-interactive)
flash model for quick iterations and high volume.pro model for final production assets and 4K output.--parallel for multiple images.For detailed API documentation, see references/gemini-api.md. For prompting techniques, see references/prompt-guide.md. For common editing patterns, see references/editing-patterns.md.
Generate or edit images via Gemini 3 Pro Image (Nano Banana Pro).
Batch-generate images via OpenAI Images API. Random prompt sampler + `index.html` gallery.
Generate spectrograms and feature-panel visualizations from audio with the songsee CLI.
Extract frames or short clips from videos using ffmpeg.
Search GIF providers with CLI/TUI, download results, and extract stills/sheets.
Category:media-generate