nanobanana-skill
npx machina-cli add skill feiskyer/claude-code-settings/nanobanana-skill --openclawNanobanana Image Generation Skill
Generate or edit images using Google Gemini API through the nanobanana tool.
Requirements
- GEMINI_API_KEY: Must be configured in
~/.nanobanana.envorexport 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.txtif 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) - Square832x1248(2:3) - Portrait1248x832(3:2) - Landscape864x1184(3:4) - Portrait1184x864(4:3) - Landscape896x1152(4:5) - Portrait1152x896(5:4) - Landscape768x1344(9:16) - Portrait (default)1344x768(16:9) - Landscape1536x672(21:9) - Ultra-wide
Models (--model)
gemini-3-pro-image-preview(default) - Higher qualitygemini-2.5-flash-image- Faster generation
Resolution (--resolution)
1K(default)2K4K
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_KEYis 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
Source
git clone https://github.com/feiskyer/claude-code-settings/blob/main/skills/nanobanana-skill/SKILL.mdView on GitHub Overview
Nanobanana-skill enables generating or editing images using the Google Gemini API through the nanobanana tool. It leverages prompts, size/aspect options, and model/resolution controls to produce ready-to-use visuals. This is ideal for rapid concept art, product visuals, and social-ready graphics.
How This Skill Works
Configure GEMINI_API_KEY and install the required Python packages, then run the nanobanana.py script with a --prompt and optional flags (--size, --output, --input, --model, --resolution). The tool communicates with Gemini to generate or edit the image and saves the result to the specified path, returning the saved image location.
When to Use It
- You need a new visual concept generated from a text prompt.
- You want to edit an existing image with new elements or styles.
- You require a logo or graphic at a standard size like 1024x1024.
- You’re producing social media visuals and need 9:16 or 1:1 formats.
- You want faster results using the gemini-2.5-flash-image model.
Quick Start
- Step 1: Prepare a prompt and optional settings (size, output, model).
- Step 2: Run the script, e.g. python3 ${CLAUDE_PLUGIN_ROOT}/skills/nanobanana-skill/nanobanana.py --prompt "description of image" --output "filename.png"
- Step 3: Retrieve the saved image path from the output
Best Practices
- Be descriptive in prompts—include style, mood, colors, and composition.
- For logos/graphics, use 1024x1024 square aspect to match common branding formats.
- For social posts, choose 9:16 for stories and 1:1 for feed posts.
- Select model and resolution to balance quality and speed (e.g., gemini-3-pro-image-preview with 1K).
- Verify GEMINI_API_KEY is configured and input files (for edits) exist before running.
Example Use Cases
- A serene mountain landscape at sunset with a lake
- Modern minimalist logo for a tech startup
- Futuristic cityscape with flying cars
- Edit an outdoor photo to add a rainbow in the sky
- Quick sketch of a cat using a faster model