nanobanana-skill
Scannednpx machina-cli add skill feiskyer/codex-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 ~/.codex/skills/nanobanana-skill/requirements.txtif not installed yet. - Executable:
~/.codex/skills/nanobanana-skill/nanobanana.py
Example .nanobanana.env:
GEMINI_API_KEY=sk-dummy
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 ~/.codex/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 ~/.codex/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
Optional Flags
--enable-google-searchEnable Google Search tool for the model (default: disabled)--include-thoughtsInclude model thinking in output (default: disabled)
Examples
Generate a simple image
python3 ~/.codex/skills/nanobanana-skill/nanobanana.py --prompt "A serene mountain landscape at sunset with a lake"
Generate with specific size and output
python3 ~/.codex/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 ~/.codex/skills/nanobanana-skill/nanobanana.py \
--prompt "Futuristic cityscape with flying cars" \
--size 1344x768 \
--resolution 2K \
--output "cityscape.png"
Edit existing images
python3 ~/.codex/skills/nanobanana-skill/nanobanana.py \
--prompt "Add a rainbow in the sky" \
--input photo.png \
--output "photo-with-rainbow.png"
Use faster model
python3 ~/.codex/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/codex-settings/blob/main/skills/nanobanana-skill/SKILL.mdView on GitHub Overview
Nanobanana-image generation skill leverages Google's Gemini API via the nanobanana CLI to create or modify images from prompts or editing instructions. It supports prompts for new images and editing existing ones, with configurable size, model, and resolution. Proper setup of API keys and Python dependencies is required.
How This Skill Works
Install and configure GEMINI_API_KEY, ensure Python3 and required packages are installed, and run the nanobanana.py script. For generation, provide a prompt and optional parameters (--size, --model, --resolution, --output); for edits, supply input images with --input and an editing prompt. The script outputs the generated image path.
When to Use It
- You want to generate a new image from a text prompt
- You need a specific aspect ratio or size such as 1024x1024 or 9:16
- You want a higher resolution image (1K, 2K, or 4K)
- You want to edit an existing image by applying changes with a prompt
- You want to use a faster or different Gemini model for quick sketches
Quick Start
- Step 1: Prepare your prompt and optional preferences (size output model resolution)
- Step 2: Run the tool python3 ~/.codex/skills/nanobanana-skill/nanobanana.py --prompt PROMPT --output FILENAME.png [--size 1024x1024] [--model gemini-3-pro-image-preview] [--resolution 2K]
- Step 3: Check the saved image path and view the result
Best Practices
- Be descriptive in prompts including style, mood, colors and composition
- For logos and graphics, start with a square 1024x1024 output
- For social media posts, use a 9:16 aspect ratio
- Use explicit flags to tailor results (--size, --model, --resolution)
- Verify GEMINI_API_KEY is exported and input files exist before running
Example Use Cases
- Generate a serene mountain landscape at sunset with a lake
- Modern minimalist logo for a tech startup at 1024x1024 resulting in logo.png
- Futuristic cityscape with flying cars at 1344x768 with 2K resolution resulting in cityscape.png
- Edit a photo by adding a rainbow in the sky using photo.png to photo-with-rainbow.png
- Quick sketch of a cat using the faster model gemini-2.5-flash-image output cat-sketch.png