nanobanana-skill
Skill248 starsChanged 4 months agoMITView on GitHub
Generate, edit, or composite images with Gemini/Nanobanana. Default for image requests without a named provider; do not override a different provider the user chose.
- Reads credentials
2 other projects use a version of this.
Adopted by
Most recently taken up by
- allanninal/claude-code-skillstheir own version, first seen Oct 17, 2026
- feiskyer/claude-code-settingstheir own version, first seen Sep 27, 2026
Other versions2 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 2
- feiskyer/claude-code-settings★ 1.7ksame name
- allanninal/claude-code-skills★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository12 other files it gives its agents.
- AGENTS.mdAGENTS.md
- brainstormingSkill
- claude-skillSkill
- code-simplifierSkill
- deep-researchSkill
- github-fix-issueSkill
- github-review-prSkill
- gpt-image-skillSkill
- grill-meSkill
- handoffSkill
- minimax-image-skillSkill
- youtube-transcribe-skillSkill
The file
We split this skill into the rules it gives an agent
1 rule. About 0 are common, 0 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 8
Use the bundled nanobanana.py to generate or edit images with Gemini image models.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Nanobanana Image Skill
Use the bundled nanobanana.py to generate or edit images with Gemini image models. The default path targets Nano Banana 2.1 (gemini-nano-banana-2.1) with thinking summaries and Google Search grounding on, because those defaults are the main reason to use this skill instead of a generic image prompt.
Requirements
GEMINI_API_KEYin~/.nanobanana.env(GEMINI_API_KEY=sk-dummy) or the shell environment.- Python dependencies from
requirements.txt. - The executable is
nanobanana.pyin this same skill directory. Resolve its absolute path once before running it.
The CLI can print --help without credentials. It validates local input files before creating an API client and exits non-zero when the API returns no image.
Defaults
Model gemini-nano-banana-2.1, search grounding on, thinking summaries on at level high, resolution 1K, and no aspect ratio unless the request implies a shape. Do not make the user choose a model, search mode, or thinking mode unless they asked for that level of control.
Leaving aspect ratio unspecified is usually better for edits, because Gemini can match the input image shape. For text-only generation, set one only when the user implies a format such as poster, square post, banner, phone wallpaper, or ultrawide hero.
Worth overriding: --model gemini-3-pro-image for very detail-heavy or typography-sensitive work (slower); --resolution 512px for quick ideation (Nanobanana 2 models only), 2K/4K for polished deliverables; --thinking-level low when latency beats refinement; search off when the user wants a purely imaginative result. Run python3 /absolute/path/to/nanobanana.py --help for the exact accepted values, including the full aspect-ratio and model lists.
Run it
Generate from text:
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.pngEdit or composite — pass every reference with --input. Nanobanana 2 mixes multiple references well, so do not narrow a blend, lineup, storyboard, or consistency pass down to a single image:
python3 /absolute/path/to/nanobanana.py \
--prompt "Turn these product photos into a clean 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.pngGrounded generation, saving the model's text and metadata alongside the image:
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" \
--text-output /absolute/path/to/output/cover.txt \
--metadata-output /absolute/path/to/output/cover.json \
--output /absolute/path/to/output/cover.pngThen report the saved path(s), whether search grounding stayed enabled, where any text or thought summaries landed, and any warning from the run. If the model returns text but no image, say so plainly and suggest a more explicitly image-focused prompt rather than presenting the run as a success.
Prompting
Good Nanobanana prompts are production briefs, not art wishes: subject, visual style, composition or camera framing, any required text, the output's use case, and constraints such as brand colors, negative space, or realism level.
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.For edits, say what to preserve as well as 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.When a run fails
Check credential presence without printing its value, input readability, and output writability. For an unsupported option, consult the helper's accepted values. Correct assistant-chosen options within the requested result, but do not silently switch a user-selected model or provider. Before a bounded retry, check whether the earlier attempt already produced output; report the actual error if recovery would require new authority or changing the request.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

