| name | nanobanana-skill |
| description | Generate or edit images via Google Gemini (nanobanana). This is the DEFAULT image skill — use whenever the user asks to generate, create, or edit an image and does NOT name another provider. Triggers: "nanobanana", "generate image", "create image", "edit image", "图片生成", "生成图片", "AI绘图", "图片编辑". Do NOT use for diagrams (架构图/流程图/时序图) — draw those with Mermaid or code instead. |
| allowed-tools | Read, Write, Glob, Grep, Task, Bash(cat:*), Bash(ls:*), Bash(tree:*), Bash(python3:*) |
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 dependent packages installed: google-genai, Pillow, python-dotenv. They could be installed via
python3 -m pip install -r ${CLAUDE_SKILL_DIR}/requirements.txt if not installed yet.
- Executable:
${CLAUDE_SKILL_DIR}/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_SKILL_DIR}/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_SKILL_DIR}/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)
Other Options
--no-search - Disable Google Search grounding (enabled by default)
--no-think - Disable thinking/reasoning mode
Examples
Generate a simple image
python3 ${CLAUDE_SKILL_DIR}/nanobanana.py --prompt "A serene mountain landscape at sunset with a lake"
Generate with specific size and output
python3 ${CLAUDE_SKILL_DIR}/nanobanana.py \
--prompt "Modern minimalist logo for a tech startup" \
--size 1024x1024 \
--output "logo.png"
Generate landscape image with high resolution
python3 ${CLAUDE_SKILL_DIR}/nanobanana.py \
--prompt "Futuristic cityscape with flying cars" \
--size 1344x768 \
--resolution 2K \
--output "cityscape.png"
Edit existing images
python3 ${CLAUDE_SKILL_DIR}/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_SKILL_DIR}/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