Nanobanana Image Generation Skill
Generate or edit images using Google Gemini API through the nanobanana tool.
Requirements
-
GEMINI_API_KEY: Must be configured in ~/.nanobanana.env or export GEMINI_API_KEY=<your-api-key>
-
Python3 with depedent packages installed: google-genai, Pillow, python-dotenv. They could be installed via python3 -m pip install -r ${CLAUDE_PLUGIN_ROOT}/skills/nanobanana-skill/requirements.txt if not installed yet.
-
Executable: ${CLAUDE_PLUGIN_ROOT}/skills/nanobanana-skill/nanobanana.py
Instructions
For image generation
Ask the user for:
-
What they want to create (the prompt)
-
Desired aspect ratio/size (optional, defaults to 9:16 portrait)
-
Output filename (optional, auto-generates UUID if not specified)
-
Model preference (optional, defaults to gemini-3-pro-image-preview)
-
Resolution (optional, defaults to 1K)
Run the nanobanana script with appropriate parameters:
python3 ${CLAUDE_PLUGIN_ROOT}/skills/nanobanana-skill/nanobanana.py --prompt "description of image" --output "filename.png"
Show the user the saved image path when complete
For image editing
Ask the user for:
-
Input image file(s) to edit
-
What changes they want (the prompt)
-
Output filename (optional)
Run with input images:
python3 ${CLAUDE_PLUGIN_ROOT}/skills/nanobanana-skill/nanobanana.py --prompt "editing instructions" --input image1.png image2.png --output "edited.png"
Available Options
Aspect Ratios (--size)
-
1024x1024 (1:1) - Square
-
832x1248 (2:3) - Portrait
-
1248x832 (3:2) - Landscape
-
864x1184 (3:4) - Portrait
-
1184x864 (4:3) - Landscape
-
896x1152 (4:5) - Portrait
-
1152x896 (5:4) - Landscape
-
768x1344 (9:16) - Portrait (default)
-
1344x768 (16:9) - Landscape
-
1536x672 (21:9) - Ultra-wide
Models (--model)
-
gemini-3-pro-image-preview (default) - Higher quality
-
gemini-2.5-flash-image
-
Faster generation
Resolution (--resolution)
-
1K (default)
-
2K
-
4K
Examples
Generate a simple image
python3 ${CLAUDE_PLUGIN_ROOT}/skills/nanobanana-skill/nanobanana.py --prompt "A serene mountain landscape at sunset with a lake"
Generate with specific size and output
python3 ${CLAUDE_PLUGIN_ROOT}/skills/nanobanana-skill/nanobanana.py
--prompt "Modern minimalist logo for a tech startup"
--size 1024x1024
--output "logo.png"
Generate landscape image with high resolution
python3 ${CLAUDE_PLUGIN_ROOT}/skills/nanobanana-skill/nanobanana.py
--prompt "Futuristic cityscape with flying cars"
--size 1344x768
--resolution 2K
--output "cityscape.png"
Edit existing images
python3 ${CLAUDE_PLUGIN_ROOT}/skills/nanobanana-skill/nanobanana.py
--prompt "Add a rainbow in the sky"
--input photo.png
--output "photo-with-rainbow.png"
Use faster model
python3 ${CLAUDE_PLUGIN_ROOT}/skills/nanobanana-skill/nanobanana.py
--prompt "Quick sketch of a cat"
--model gemini-2.5-flash-image
--output "cat-sketch.png"
Error Handling
If the script fails:
-
Check that GEMINI_API_KEY is exported or set in ~/.nanobanana.env
-
Verify input image files exist and are readable
-
Ensure the output directory is writable
-
If no image is generated, try making the prompt more specific about wanting an image
Best Practices
-
Be descriptive in prompts - include style, mood, colors, composition
-
For logos/graphics, use square aspect ratio (1024x1024)
-
For social media posts, use 9:16 for stories or 1:1 for posts
-
For wallpapers, use 16:9 or 21:9
-
Start with 1K resolution for testing, upgrade to 2K/4K for final output
-
Use gemini-3-pro-image-preview for best quality, gemini-2.5-flash-image for speed