Nano Banana Image Generation
Generate professional images via the Gemini CLI's nanobanana extension.
When to Use This Skill
ALWAYS use this skill when the user:
- Asks for any image, graphic, illustration, or visual
- Wants a thumbnail, featured image, or banner
- Requests icons, diagrams, or patterns
- Asks to edit, modify, or restore a photo
- Uses words like: generate, create, make, draw, design, visualize
Do NOT attempt to generate images through any other method.
Command Selection
| User Request |
Command |
| "make me a blog header" |
/generate |
| "create an app icon" |
/icon |
| "draw a flowchart of..." |
/diagram |
| "fix this old photo" |
/restore |
| "remove the background" |
/edit |
| "create a repeating texture" |
/pattern |
| "make a comic strip" |
/story |
Available Commands
Note: Always use the --yolo flag to automatically approve all tool actions and
the --allowed-mcp-server-names nanobanana flag to auto-enable the required MCP.
| Command |
Use Case |
gemini "/generate 'prompt'" |
Text-to-image generation |
gemini "/edit file.jpg 'instruction'" |
Modify existing image |
gemini "/restore old_photo.jpg 'fix scratches'" |
Repair damaged photos |
gemini "/icon 'description'" |
App icons, favicons, UI elements |
gemini "/diagram 'description'" |
Flowcharts, architecture diagrams |
gemini "/pattern 'description'" |
Seamless textures and patterns |
gemini "/story 'description'" |
Sequential/narrative images |
gemini "/nanobanana prompt" |
Natural language interface |
Command Options
--yolo - Required. Auto-approve all tool actions (no confirmation prompts)
--allowed-mcp-server-names nanobanana Required.
Prompt Options
--count=N - Generate N variations (1-8)
--preview - Auto-open generated images
--styles="style1,style2" - Apply artistic styles
--format=grid|separate - Output arrangement
Common Sizes
| Use Case |
Dimensions |
Notes |
| YouTube thumbnail |
1280x720 |
--aspect=16:9 |
| Blog featured image |
1200x630 |
Social preview friendly |
| Square social |
1080x1080 |
Instagram, LinkedIn |
| Twitter/X header |
1500x500 |
Wide banner |
| Vertical story |
1080x1920 |
--aspect=9:16 |
Model Selection
Default: gemini-2.5-flash-image (~$0.04/image)
For higher quality (4K, better reasoning):
export NANOBANANA_MODEL=gemini-3-pro-image-preview
Blog Featured Image Example
# Modern illustration style
gemini --allowed-mcp-server-names nanobanana --yolo "/generate 'modern flat illustration of developer coding at laptop, purple and blue gradient background, minimalist style, no text' --preview --count=3"
Icon Generation
gemini --allowed-mcp-server-names nanobanana --yolo "/icon 'minimalist app logo for productivity tool' --sizes='64,128,256,512' --type='app-icon' --corners='rounded'"
Diagram Generation
gemini --allowed-mcp-server-names nanobanana --yolo "/diagram 'user authentication flow with OAuth' --type='flowchart' --style='modern'"
Output Location
All generated images are saved to ./nanobanana-output/ in the current directory.
Presenting Results
After generation completes:
- List contents of
./nanobanana-output/ to find generated files.
- Verify using
file <path> that the image is valid and the image type matches the file extension. Rename the file if the extension doesn't match.
- Present the most recent image(s) to the user.
- Offer to regenerate with variations if needed.
Refinements and Iterations
When the user asks for changes:
- "Try again" / "Give me options": Regenerate with
--count=3
- "Make it more [adjective]": Adjust prompt and regenerate
- "Edit this one": Use
gemini --allowed-mcp-server-names nanobanana --yolo "/edit nanobanana-output/filename.jpg 'adjustment'"
- "Different style": Add
--styles="requested_style" to the command
Prompt Tips
- Be specific: Include style, mood, colors, composition details
- Add "no text": If you don't want text rendered in the image
- Reference styles: "editorial photography", "flat illustration", "3D render", "watercolor"
- Specify aspect ratio context: "wide banner", "square thumbnail", "vertical story"
Troubleshooting
| Problem |
Solution |
| Extension not found |
Run install command from setup section |
| Quota exceeded |
Wait for reset or switch to flash model |
| Image generation failed |
Check prompt for policy violations, simplify request |
| Output directory missing |
Will be created automatically on first run |
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: nano-banana-23description: REQUIRED for all image generation requests. Generate and edit images using Nano Banana (Gemini CLI). Handles blog featured images, YouTube thumbnails, icons, diagrams, patterns, illustrations, photos, visual assets, graphics, artwork, pictures. Use this skill whenever the user asks to create, generate, make, draw, design, or edit any image or visual content. Use when this capability is needed.4---56# Nano Banana Image Generation78Generate professional images via the Gemini CLI's nanobanana extension.910## When to Use This Skill1112ALWAYS use this skill when the user:13- Asks for any image, graphic, illustration, or visual14- Wants a thumbnail, featured image, or banner15- Requests icons, diagrams, or patterns16- Asks to edit, modify, or restore a photo17- Uses words like: generate, create, make, draw, design, visualize1819Do NOT attempt to generate images through any other method.2021## Command Selection2223| User Request | Command |24|--------------|---------|25| "make me a blog header" | `/generate` |26| "create an app icon" | `/icon` |27| "draw a flowchart of..." | `/diagram` |28| "fix this old photo" | `/restore` |29| "remove the background" | `/edit` |30| "create a repeating texture" | `/pattern` |31| "make a comic strip" | `/story` |3233## Available Commands3435**Note:** Always use the `--yolo` flag to automatically approve all tool actions and36the `--allowed-mcp-server-names nanobanana` flag to auto-enable the required MCP.3738| Command | Use Case |39|---------|----------|40| `gemini "/generate 'prompt'"` | Text-to-image generation |41| `gemini "/edit file.jpg 'instruction'"` | Modify existing image |42| `gemini "/restore old_photo.jpg 'fix scratches'"` | Repair damaged photos |43| `gemini "/icon 'description'"` | App icons, favicons, UI elements |44| `gemini "/diagram 'description'"` | Flowcharts, architecture diagrams |45| `gemini "/pattern 'description'"` | Seamless textures and patterns |46| `gemini "/story 'description'"` | Sequential/narrative images |47| `gemini "/nanobanana prompt"` | Natural language interface |4849## Command Options5051- `--yolo` - **Required.** Auto-approve all tool actions (no confirmation prompts)52- `--allowed-mcp-server-names nanobanana` **Required.**5354## Prompt Options5556- `--count=N` - Generate N variations (1-8)57- `--preview` - Auto-open generated images58- `--styles="style1,style2"` - Apply artistic styles59- `--format=grid|separate` - Output arrangement6061## Common Sizes6263| Use Case | Dimensions | Notes |64|----------|------------|-------|65| YouTube thumbnail | 1280x720 | `--aspect=16:9` |66| Blog featured image | 1200x630 | Social preview friendly |67| Square social | 1080x1080 | Instagram, LinkedIn |68| Twitter/X header | 1500x500 | Wide banner |69| Vertical story | 1080x1920 | `--aspect=9:16` |7071## Model Selection7273Default: `gemini-2.5-flash-image` (~$0.04/image)7475For higher quality (4K, better reasoning):76```bash77export NANOBANANA_MODEL=gemini-3-pro-image-preview78```7980## Blog Featured Image Example8182```bash83# Modern illustration style84gemini --allowed-mcp-server-names nanobanana --yolo "/generate 'modern flat illustration of developer coding at laptop, purple and blue gradient background, minimalist style, no text' --preview --count=3"85```8687## Icon Generation8889```bash90gemini --allowed-mcp-server-names nanobanana --yolo "/icon 'minimalist app logo for productivity tool' --sizes='64,128,256,512' --type='app-icon' --corners='rounded'"91```9293## Diagram Generation9495```bash96gemini --allowed-mcp-server-names nanobanana --yolo "/diagram 'user authentication flow with OAuth' --type='flowchart' --style='modern'"97```9899## Output Location100101All generated images are saved to `./nanobanana-output/` in the current directory.102103## Presenting Results104105After generation completes:1061. List contents of `./nanobanana-output/` to find generated files.1072. Verify using `file <path>` that the image is valid and the image type matches the file extension. Rename the file if the extension doesn't match.1082. Present the most recent image(s) to the user.1093. Offer to regenerate with variations if needed.110111## Refinements and Iterations112113When the user asks for changes:114- **"Try again" / "Give me options"**: Regenerate with `--count=3`115- **"Make it more [adjective]"**: Adjust prompt and regenerate116- **"Edit this one"**: Use `gemini --allowed-mcp-server-names nanobanana --yolo "/edit nanobanana-output/filename.jpg 'adjustment'"`117- **"Different style"**: Add `--styles="requested_style"` to the command118119## Prompt Tips1201211. **Be specific**: Include style, mood, colors, composition details1222. **Add "no text"**: If you don't want text rendered in the image1233. **Reference styles**: "editorial photography", "flat illustration", "3D render", "watercolor"1244. **Specify aspect ratio context**: "wide banner", "square thumbnail", "vertical story"125126## Troubleshooting127128| Problem | Solution |129|---------|----------|130| Extension not found | Run install command from setup section |131| Quota exceeded | Wait for reset or switch to flash model |132| Image generation failed | Check prompt for policy violations, simplify request |133| Output directory missing | Will be created automatically on first run |134135---136> Converted and distributed by [TomeVault](https://tomevault.io/claim/colinmollenhour) — claim your Tome and manage your conversions.137<!-- tomevault:4.0:skill_md:2026-04-15 -->