nanobanana · gargantuax — Claude Code skill: what it does, how to install
Generates and edits images via Gemini models. Handles local multi-image references, batch output, and dry-run validation without sending requests.
npx skills add GargantuaX/openskills --skill nanobanana -a claude-codeWhat nanobanana does
The skill provides a Python CLI entrypoint to generate and edit images through Gemini models. Under the hood, scripts/nanobanana.py handles single requests with generate and bulk jobs with batch. It exposes aliases for exact models: nanobanana targets gemini-2.5-flash-image, nanobanana-2 calls gemini-3.1-flash-image-preview, and nanobanana-pro runs gemini-3-pro-image-preview.
Strict option validation catches errors before dispatching calls. The --size flag is supported only on Gemini 3 image models; passing it to nanobanana causes an immediate failure. Also, resolution 512 works exclusively on nanobanana-2. You should run --dry-run whenever payload shape needs checking.
Editing uses repeated --input-image flags to blend multiple local references into one output. Custom endpoints are configured via --base-url or GEMINI_BASE_URL. With --auth-mode auto, the script passes x-goog-api-key to official endpoints and attaches Bearer authorization headers on custom gateways.
What it helps with
- generate images from text prompts using Gemini models
- combine multiple local reference images into one graphic edit
- produce several image variants in a single batch command
- validate request payloads before sending them with
--dry-run
Example prompts for the agent
- Run nanobanana-2 to generate a 16:9 hero image and save it into out/hero.png
- Edit refs/subject.png and refs/background.png using nanobanana-pro into out/poster.png
- Test the batch icon generation command with nanobanana using --dry-run
How to install nanobanana
1Skills CLI (Vercel)
npx skills add GargantuaX/openskills --skill nanobanana -a claude-code2Manually: put the files in place
~/.claude/skills/nanobanana/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/nanobanana/
1Skills CLI (Vercel)
npx skills add GargantuaX/openskills --skill nanobanana -a codex2Manually: put the files in place
.agents/skills/nanobanana/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add GargantuaX/openskills --skill nanobanana -a cursor2Manually: put the files in place
.cursor/skills/nanobanana/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install GargantuaX/openskills nanobanana2Manually: put the files in place
.github/skills/nanobanana/SKILL.md1Skills CLI (Vercel)
npx skills add GargantuaX/openskills --skill nanobanana -a gemini-cli2Platform CLI
gemini skills install https://github.com/GargantuaX/openskills --path skills/nanobananaManually: put the files in place
.devin/skills/nanobanana/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add GargantuaX/openskills --skill nanobanana -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about nanobanana
How to install nanobanana in Claude Code?
Run npx skills add GargantuaX/openskills --skill nanobanana -a claude-code in your terminal.
What does nanobanana do?
It is a Python-based skill for generating and editing images with Gemini models. It supports single prompts, multi-reference edits, batch runs, and dry-run inspection.
Which models does nanobanana support?
It supports nanobanana (gemini-2.5-flash-image), nanobanana-2 (gemini-3.1-flash-image-preview), and nanobanana-pro (gemini-3-pro-image-preview). The --size option works only with Gemini 3 models.
Source text
SKILL.md · MIT
--- name: nanobanana description: Gemini-native Nano Banana image generation and editing across Nano Banana, Nano Banana 2, and Nano Banana Pro. Use when you need text-to-image, image-to-image edits, repeated local references, batch generation, dry-run request inspection, or a custom Gemini-compatible base URL such as a self-hosted gateway. --- # Nano Banana A single Python entrypoint for Gemini-native Nano Banana image generation and editing, with model aliases, strict option validation, batch runs, and custom endpoint support. ## Workflow 1. Open [references/config.md](./references/config.md) to choose environment variables and override order. 2. Open [references/models-and-api.md](./references/models-and-api.md) to pick the right Nano Banana tier and check model-specific constraints. 3. Prefer `gemini-3.1-flash-image-preview` (`nanobanana-2`) unless you need either the fastest low-cost default (`nanobanana`) or the highest-fidelity reasoning model (`nanobanana-pro`). 4. Run `scripts/nanobanana.py generate` for one request or `scripts/nanobanana.py batch` for repeated variants. 5. Add `--dry-run` first when the main risk is the payload shape, endpoint, or model-specific option support. 6. Pass `--base-url` or `GEMINI_BASE_URL` when you need a custom Gemini-compatible gateway. 7. Add `--save-response <path>` on `generate` when you need the raw JSON body for debugging. ## Commands Single text-to-image request: ```powershell python .\skills\nanobanana\scripts\nanobanana.py generate ` --prompt "A retro-futurist product hero illustration for a developer tool" ` --output .\out\hero.png ` --model nanobanana-2 ` --ratio 16:9 ` --size 2K ``` Edit an existing image with two local references: ```powershell python .\skills\nanobanana\scripts\nanobanana.py generate ` --prompt "Turn these references into a clean launch poster with legible title text" ` --input-image .\refs\subject.png ` --input-image .\refs\background.png ` --output .\out\poster.png ` --model nanobanana-pro ` --ratio 4:5 ` --size 2K ``` Use a custom Gemini-compatible gateway: ```powershell python .\skills\nanobanana\scripts\nanobanana.py generate ` --prompt "A bold mascot sticker pack" ` --output .\out\stickers.png ` --base-url http://your-gateway.example.com/v1beta ` --auth-mode bearer ``` Batch-generate five variants: ```powershell python .\skills\nanobanana\scripts\nanobanana.py batch ` --prompt "Minimal app icon for a PDF workflow product" ` --count 5 ` --dir .\out\icons ` --prefix icon ` --model nanobanana ` --ratio 1:1 ``` Inspect the final request without sending it: ```powershell python .\skills\nanobanana\scripts\nanobanana.py generate ` --prompt "An editorial illustration of AI agents at work" ` --model nanobanana-2 ` --output .\out\agents.png ` --dry-run ``` ## Rules - `--model` accepts the aliases `nanobanana`, `nanobanana-2`, and `nanobanana-pro`, or an exact Gemini model ID. - `nanobanana` resolves to `gemini-2.5-flash-image`, `nanobanana-2` resolves to `gemini-3.1-flash-image-preview`, and `nanobanana-pro` resolves to `gemini-3-pro-image-preview`. - `image_size` is only valid on Gemini 3 image models; `nanobanana` rejects `--size`. - `512` resolution is only valid on `nanobanana-2`. - Process environment variables override `.env`; CLI flags override both. - Never print secrets. - `generate` accepts repeated `--input-image` paths for image editing or multi-reference generation. - `--base-url` should point to the Gemini API root such as `https://generativelanguage.googleapis.com/v1beta`, not directly to `/models/...`. - `--auth-mode auto` uses `x-goog-api-key` for the official Google endpoint and sends both `Authorization: Bearer` and `x-goog-api-key` for custom endpoints to maximize gateway compatibility. ## Resources - Script: [scripts/nanobanana.py](./scripts/nanobanana.py) - Config reference: [references/config.md](./references/config.md) - Models and API reference: [references/models-and-api.md](./references/models-and-api.md)
© GargantuaX · MIT · GargantuaX/openskills
Similar skills
Everything for AI and ML →nanobanana by other authors comes first.