home / skills / microck / ordinary-claude-skills / nanobanana-skill

nanobanana-skill skill

/skills_all/nanobanana-skill

This skill helps you generate or edit images using Google Gemini via nanobanana, streamlining prompts, sizes, and output management.

npx playbooks add skill microck/ordinary-claude-skills --skill nanobanana-skill

Review the files below or copy the command above to add this skill to your agents.

Files (2)
SKILL.md
4.1 KB
---
name: nanobanana-skill
description: Generate or edit images using Google Gemini API via nanobanana. Use when the user asks to create, generate, edit images with nanobanana, or mentions image generation/editing tasks.
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

1. **GEMINI_API_KEY**: Must be configured in `~/.nanobanana.env` or `export GEMINI_API_KEY=<your-api-key>`
2. **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.
3. **Executable**: `${CLAUDE_PLUGIN_ROOT}/skills/nanobanana-skill/nanobanana.py`

## Instructions

### For image generation

1. 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)

2. Run the nanobanana script with appropriate parameters:

   ```bash
   python3 ${CLAUDE_PLUGIN_ROOT}/skills/nanobanana-skill/nanobanana.py --prompt "description of image" --output "filename.png"
   ```

3. Show the user the saved image path when complete

### For image editing

1. Ask the user for:
   - Input image file(s) to edit
   - What changes they want (the prompt)
   - Output filename (optional)

2. Run with input images:

   ```bash
   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

```bash
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

```bash
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

```bash
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

```bash
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

```bash
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

1. Be descriptive in prompts - include style, mood, colors, composition
2. For logos/graphics, use square aspect ratio (1024x1024)
3. For social media posts, use 9:16 for stories or 1:1 for posts
4. For wallpapers, use 16:9 or 21:9
5. Start with 1K resolution for testing, upgrade to 2K/4K for final output
6. Use gemini-3-pro-image-preview for best quality, gemini-2.5-flash-image for speed

Overview

This skill generates and edits images using the Google Gemini API via the nanobanana helper script. It provides a simple command-line interface for creating images from text prompts or editing existing images. The skill handles model, size, and resolution options and saves results to a file you can preview or share.

How this skill works

You run the included nanobanana.py script with a prompt and optional flags for input files, size, model, resolution, and output filename. The script sends requests to the Gemini image models, receives generated or edited image data, and writes the image to disk. If an output filename is not provided, the script auto-generates one and prints the saved path when complete.

When to use it

  • You need to create a new image from a text prompt (concept art, mockups, illustrations).
  • You want to edit or augment existing images with textual instructions (remove objects, add elements).
  • You need control over aspect ratio, model choice, or resolution for final assets.
  • You want a fast prototyping workflow from command line with image output files.
  • You prefer generating logos, social media images, wallpapers, or high-res visuals programmatically.

Best practices

  • Be specific in prompts: include style, mood, colors, composition, and focal elements.
  • Start with 1K resolution for tests, then increase to 2K or 4K for final exports.
  • Choose square (1024x1024) for logos, 9:16 for vertical stories, 16:9 or 21:9 for wallpapers.
  • Use gemini-3-pro-image-preview for higher quality and gemini-2.5-flash-image when speed matters.
  • Verify GEMINI_API_KEY is set in environment (~/.nanobanana.env or exported) and that input files are readable.

Example use cases

  • Generate a product mockup: prompt a clean, minimal mockup and save as logo.png at 1024x1024.
  • Create a vertical social story: generate a 9:16 image for Instagram/Facebook stories at 1K resolution.
  • Edit a photo: supply an input image and prompt to add or remove elements, saving a new edited file.
  • Produce a high-resolution wallpaper: request a futuristic cityscape at 1344x768 or 1536x672 and use 2K or 4K resolution.
  • Quick sketches during ideation: use gemini-2.5-flash-image for fast previews, then re-run with gemini-3-pro-image-preview for final quality.

FAQ

What environment variables and packages are required?

Set GEMINI_API_KEY in ~/.nanobanana.env or export it. Install python packages google-genai, Pillow, and python-dotenv.

What do I do if no image is produced?

Verify GEMINI_API_KEY and input files, ensure output directory is writable, and make the prompt explicitly request an image with desired features.