Best for
- Creating a new image from text
- Editing or remixing one or more existing images
- Combining several reference images into one composition
feiskyer/codex-settings/skills/nanobanana-skill/SKILL.md
Use it for marketing and operations tasks; the detail page covers purpose, installation, and practical steps.
Decision brief
Use the bundled nanobanana.py tool to generate or edit images with Gemini image models. The default path now targets Nano Banana 2 (gemini-3.1-flash-image-preview) and turns on thinking summaries plus Google Search grounding by default, because those defaults are the main reason…
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Declared | Source record | Install path and trigger |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/feiskyer/codex-settings --skill "skills/nanobanana-skill"Inspect the Agent Skill "nanobanana-skill" from https://github.com/feiskyer/codex-settings/blob/9121eeada64523f3cae514d159c1c9a47a7330a2/skills/nanobanana-skill/SKILL.md at commit 9121eeada64523f3cae514d159c1c9a47a7330a2. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
Ask only for details that materially affect the result:
1. Creating a new image from text 2. Editing or remixing one or more existing images 3. Combining several reference images into one composition 4. Requests where factual freshness matters and image grounding should use live web data 5. Requests that need strong text rendering, l…
1. GEMINIAPIKEY must exist in /.nanobanana.env or the shell environment. 2. Python dependencies from requirements.txt must be installed. 3. The executable is the nanobanana.py file in this same skill directory. Resolve its absolute path once before running it.
Unless the user explicitly asks otherwise, prefer these defaults:
Ask only for details that materially affect the result:
Permission review
The documentation asks the agent to run terminal commands or scripts.
python3 /absolute/path/to/nanobanana.py \The documentation asks the agent to run terminal commands or scripts.
python3 /absolute/path/to/nanobanana.py \Evidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 91/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 230 | Source | Repository attention, not individual Skill quality |
| Compatibility | 1 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Use the bundled nanobanana.py tool to generate or edit images with Gemini image models. The default path now targets Nano Banana 2 (gemini-3.1-flash-image-preview) and turns on thinking summaries plus Google Search grounding by default, because those defaults are the main reason to use this skill instead of a generic image prompt.
Use it for:
Do not use it for:
GEMINI_API_KEY must exist in ~/.nanobanana.env or the shell environment.requirements.txt must be installed.nanobanana.py file in this same skill directory. Resolve its absolute path once before running it.The CLI can display --help without credentials. It validates local input files before creating an API client and exits non-zero when the API returns no image.
Example env file:
GEMINI_API_KEY=sk-dummy
Unless the user explicitly asks otherwise, prefer these defaults:
gemini-3.1-flash-image-previewhigh1KLeaving aspect ratio unspecified is usually better for edits because Gemini can match the input image shape. For text-only generation, pick an aspect ratio only when the user implies a format such as poster, square post, banner, phone wallpaper, or ultrawide hero image.
Ask only for details that materially affect the result:
Do not force the user to choose a model, search mode, or thinking mode unless they asked for that level of control. The latest Nanobanana 2 path is already the default.
Use generate when there are no input images.
Use edit/composite when there are one or more input images. Nanobanana 2 can mix multiple references, so do not artificially limit the task to a single image if the user is clearly asking for a blend, lineup, storyboard, or consistency pass.
Use the script beside this skill file.
Basic generation:
python3 /absolute/path/to/nanobanana.py \
--prompt "Create a high-end coffee bag package design with tactile paper texture and clear typography" \
--output /absolute/path/to/output/package.png
Editing or compositing:
python3 /absolute/path/to/nanobanana.py \
--prompt "Turn these product photos into a clean 4:5 ecommerce hero image with a soft studio shadow and subtle headline area" \
--input /absolute/path/to/ref1.png /absolute/path/to/ref2.png \
--aspect-ratio 4:5 \
--output /absolute/path/to/output/hero.png
Grounded generation with saved text metadata:
python3 /absolute/path/to/nanobanana.py \
--prompt "Use Google Search to ground an editorial illustration about the most recent lunar mission and create a clean magazine cover concept" \
--aspect-ratio 2:3 \
--text-output /absolute/path/to/output/cover.txt \
--metadata-output /absolute/path/to/output/cover.json \
--output /absolute/path/to/output/cover.png
Always tell the user:
If the model returns text but no image, report that plainly and suggest a more explicit image-focused prompt instead of pretending the run succeeded.
gemini-3.1-flash-image-preview: default. Best default for fast, high-volume image generation and editing with Nanobanana 2 features.gemini-3-pro-image-preview: slower, but a good override for very detail-heavy or typography-sensitive work.gemini-2.5-flash-image: legacy fallback if the user specifically wants the older Nanobanana model.Supported ratios:
1:11:41:82:33:23:44:14:34:55:48:19:1616:921:9Quick picks:
1:1 for logos, icons, thumbnails, and general social posts4:5 for feed posts and product cards2:3 for posters and book-cover style work9:16 for stories, shorts, and phone wallpaper16:9 or 21:9 for slides, banners, and desktop hero art1:4, 4:1, 1:8, 8:1 for very tall or very wide experimental layouts now supported by Nanobanana 2512px: Nanobanana 2 only. Best for quick ideation.1K: default. Good tradeoff for most requests.2K: use for polished deliverables.4K: use when the user explicitly needs a high-resolution final.--thinking-level to low or minimal when the user prioritizes latency over refinement.Good Nanobanana prompts are direct production briefs, not vague art wishes. Include:
Prefer prompts like:
Create a premium sparkling water can advertisement. Use a cold studio product-photo look, silver highlights, condensation droplets, and a clean dark-teal background. Leave negative space in the upper-right for headline copy.
Instead of:
make a cool drink ad
For edits, tell the model what to preserve and what to change:
Keep the shoe silhouette and logo placement intact. Replace the background with a bright outdoor basketball court, add dynamic afternoon shadows, and keep the image looking like a real sports campaign photo.
512px fast ideation output in addition to 1K, 2K, and 4KIf the run fails:
~/.nanobanana.env and confirm GEMINI_API_KEY is present.gemini-3.1-flash-image-preview first.python3 /absolute/path/to/nanobanana.py \
--prompt "Create three-dimensional sticker-style fruit mascots on white" \
--resolution 512px \
--output /absolute/path/to/output/stickers.png
python3 /absolute/path/to/nanobanana.py \
--prompt "Use Google Search to ground a newspaper-style illustration about the latest Mars mission and create a restrained front-page visual" \
--aspect-ratio 3:2 \
--output /absolute/path/to/output/mars.png
python3 /absolute/path/to/nanobanana.py \
--prompt "Create a single brand moodboard from these references. Keep the ceramic texture from the first image, the palette from the second, and the lighting mood from the third." \
--input /absolute/path/to/a.png /absolute/path/to/b.png /absolute/path/to/c.png \
--aspect-ratio 16:9 \
--output /absolute/path/to/output/moodboard.png
Alternatives
alirezarezvani/claude-skills
Use when designing or revisiting product pricing — selecting a pricing model (subscription seat-based, usage-based, value-based, freemium, or hybrid), running Van Westendorp Price Sensitivity Meter analysis on WTP survey data, or designing Good/Better/Best packaging tiers. Recommends a model and a price range with trade-offs, never a single number. For Commercial leads, Product Marketing, and CMOs at the pricing-design moment — not deal-by-deal discounting, not brand positioning.
alirezarezvani/claude-skills
Use when doing upstream market-research methodology — sizing a market as TAM/SAM/SOM computed BOTH top-down and bottoms-up (never a single unsourced number), planning a survey sample size with finite-population correction and per-segment minimums, or scoring candidate market segments against Kotler's measurable/substantial/accessible/differentiable/actionable criteria. Outputs always show the method and the assumptions. For market-research analysts and product-marketing at the sizing/survey/segm
alirezarezvani/claude-skills
Use when an RFP, RFI, RFQ, security questionnaire, vendor questionnaire, or proposal request arrives and the team needs a structured response — parsing multi-section buyer-dictated requirements (MANDATORY vs WEIGHTED vs NICE-TO-HAVE), building a Shipley-method proof-point matrix mapping each requirement to a verifiable proof point, articulating 3-5 win-themes that ladder up across requirements, and producing a Shipley-derived winrate estimate that informs a bid / no-bid / partner-bid recommendat
alirezarezvani/claude-skills
App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist