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=
Python3 with dependent 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.1-flash-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.1-flash-image-preview
(default) - Latest, fast generation
gemini-3-pro-image-preview
- Higher quality, supports thinking/reasoning
Resolution (--resolution)
1K
(default)
2K
4K
Other Options
--no-search
- Disable Google Search grounding (enabled by default)
--no-think
- Disable thinking/reasoning mode
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 pro model for higher quality
python3
${CLAUDE_PLUGIN_ROOT}
/skills/nanobanana-skill/nanobanana.py
\
--prompt
"Detailed portrait of a cat in watercolor style"
\
--model
gemini-3-pro-image-preview
\
--output
"cat-portrait.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-3.1-flash-image-preview (default) for speed