
nano-banana-2
โ 277by intellectronica ยท part of intellectronica/agent-skills
Generate and edit images using Google's Nano Banana 2 (Gemini 3.1 Flash Image Preview) API. This skill should be used when the user asks to create or modify images, especially when they need fast iteration, explicit aspect-ratio control, or resolution control from 512px to 4K.
This is the playbook your agent receives when the skill activates โ you don't need to read it to use the skill, but it's here to audit before installing.
Nano Banana 2 Image Generation & Editing
Generate new images or edit existing images with Nano Banana 2 (gemini-3.1-flash-image-preview).
Model
Use model code:
gemini-3.1-flash-image-preview(Nano Banana 2)
Do not use gemini-3-pro-image-preview in this skill.
Resolution Options
Nano Banana 2 supports:
512px(fastest, low-latency iteration)1K(default)2K4K
Map common user language:
- "quick draft", "thumbnail", "tiny", "512", "0.5K" โ
512px - no resolution mention โ
1K - "2K", "medium", "normal" โ
2K - "4K", "high-res", "ultra", "print quality" โ
4K
Use uppercase K for 1K, 2K, 4K.
Aspect Ratios
Supported aspect ratios:
1:1,1:4,1:8,2:3,3:2,3:4,4:1,4:3,4:5,5:4,8:1,9:16,16:9,21:9
Map common requests:
- square post / icon โ
1:1 - phone wallpaper / vertical reel โ
9:16 - widescreen / slide / hero image โ
16:9 - cinematic wide โ
21:9 - portrait print โ
2:3or3:4 - panorama banner โ
4:1or8:1
If unspecified, let the model default behavior apply.
Reference Images (New in Gemini 3 Image workflows)
Provide up to 14 reference images when needed by repeating --input-image:
- preserve character consistency
- preserve object fidelity
- combine multiple visual references into one output
Use one image for simple edits; use multiple images for composition or consistency-sensitive tasks.
API Key
Resolve API key in this order:
--api-keyargumentGEMINI_API_KEYenvironment variable
If no key is available, stop and report a clear error.
Filename Generation
Generate filenames as: yyyy-mm-dd-hh-mm-ss-name.png
Examples:
2026-02-26-17-31-04-japanese-garden.png2026-02-26-17-31-59-social-banner.png
Prompt Handling
For generation, pass the user's request as-is unless critically underspecified. For editing, include explicit transformation instructions in the prompt and preserve the original intent.
Output
- Save PNG to the current directory (or to a provided path in
--filename) - Return the full saved path(s)
- Do not read the output image back unless explicitly requested
Examples
Create a 4K widescreen image:
uv run ./.agents/skills/nano-banana-2/scripts/generate_image.py --prompt "Futuristic city skyline at blue hour with neon reflections" --filename "2026-02-26-17-45-00-futuristic-skyline.png" --resolution 4K --aspect-ratio 16:9Edit with multiple references:
uv run ./.agents/skills/nano-banana-2/scripts/generate_image.py --prompt "Create a polished campaign image that keeps the exact logo details and character identity" --filename "2026-02-26-17-50-10-campaign-image.png" --input-image "logo.png" --input-image "character.png" --resolution 2K --aspect-ratio 4:5npx skills add https://github.com/intellectronica/agent-skills --skill nano-banana-2Run this in your project โ your agent picks the skill up automatically.
Usage
Run the script using absolute or workspace-relative path (do NOT cd into the skill directory first):
Generate new image:
uv run ./.agents/skills/nano-banana-2/scripts/generate_image.py --prompt "your image description" --filename "output-name.png" [--resolution 512px|1K|2K|4K] [--aspect-ratio RATIO] [--api-key KEY]Edit image(s) with references:
uv run ./.agents/skills/nano-banana-2/scripts/generate_image.py --prompt "editing instructions" --filename "output-name.png" --input-image "path/to/input1.png" [--input-image "path/to/input2.png" ...] [--resolution 512px|1K|2K|4K] [--aspect-ratio RATIO] [--api-key KEY]Always run from the user's current working directory so outputs are saved in the active project context.
No common issues documented yet. If you hit a problem, the repository's GitHub Issues page is the best place to look.
Licensed under CC0-1.0โ you can use, modify, and redistribute it under that license's terms.
View the full license file on GitHub โ