banana-claude
CLAUDE.md1 starsChanged 7 months agoMITView on GitHub
This file is read by Claude Code when working inside this repository. banana-claude is a Claude Code plugin that enables AI image generation using Google's Gemini Nano Banana models via MCP. Claude acts as a Creative Director: it interprets intent, selects domain expertise, constructs optimized prompts, and orchestrates Gemini API calls. This repo follows the official Claude Code plugin layout: - .claude-plugin/plugin.json -- Plugin manifest - .claude-plugin/marketplace.json -- Marketplace catalog for distribution - skills/banana/ -- The main skill (SKILL.md +…
1 other project uses a version of this.
Adopted by
Most recently taken up by
- itaymizzz/claude-skillsword for word, first seen Jun 29, 2026
Other versions1 project uses a version of this.
Word for word · 1
- itaymizzz/claude-skills★ 0100% same
Edited · 0
None found.
Wrote their own version · 0
None found.
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.
The file
We split this CLAUDE.md into the rules it gives an agent
11 rules. About 0 are common, 3 are distinctive, and 8 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
8
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 28
Test as plugin: claude --plugin-dir .
- Very specific: line 30
Test basic generation: /banana generate "a red apple on a white table"
- Very specific: line 31
Test domain routing: /banana generate "product shot for headphones"
- Distinctive: line 33
Verify output image files exist at the logged path
- Very specific: line 34
Check cost log if cost_tracker.py is active
- Very specific: line 52
Do NOT add google-genai or requests as dependencies -- the stdlib approach ensures the skill works on any system with Python 3.6+.
- Distinctive: line 59
No negative prompt parameter exists.
- Distinctive: line 61
NEVER use banned keywords in prompts: "8K", "masterpiece", "ultra-realistic", "high resolution" -- these degrade output quality.
- Very specific: line 95
Do NOT set version in marketplace.json -- it conflicts with plugin.json (plugin.json always wins silently per Anthropic docs).
- Very specific: line 104
Test locally with claude --plugin-dir .
- Very specific: line 105
After changes, run /reload-plugins in Claude Code to pick up updates without restarting.
≈ “Common” is an estimate: at least 1 in 5 of the 26,980 CLAUDE.md 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
CLAUDE.md -- Development context for banana-claude
This file is read by Claude Code when working inside this repository.
What this repo is
banana-claude is a Claude Code plugin that enables AI image generation
using Google's Gemini Nano Banana models via MCP. Claude acts as a Creative
Director: it interprets intent, selects domain expertise, constructs
optimized prompts, and orchestrates Gemini API calls.
Plugin structure
This repo follows the official Claude Code plugin layout:
.claude-plugin/plugin.json-- Plugin manifest.claude-plugin/marketplace.json-- Marketplace catalog for distributionskills/banana/-- The main skill (SKILL.md + references + scripts)agents/-- Subagents (brief-constructor)
Model status (as of March 2026)
gemini-3.1-flash-image-preview-- Active default. Nano Banana 2.gemini-2.5-flash-image-- Active. Nano Banana original. Budget/free tier.gemini-3-pro-image-preview-- DEAD. Shut down March 9, 2026. Do not use.
How to test changes
- Test as plugin:
claude --plugin-dir . - Or install standalone:
bash install.sh - Test basic generation:
/banana generate "a red apple on a white table" - Test domain routing:
/banana generate "product shot for headphones" - Test editing:
/banana edit [path] "make the background blurry" - Verify output image files exist at the logged path
- Check cost log if cost_tracker.py is active
File responsibilities
| File | Purpose |
skills/banana/SKILL.md | Main orchestrator. Edit to change Claude's behavior. |
skills/banana/references/gemini-models.md | Model roster, routing table, resolution defaults. Update when Google releases new models. |
skills/banana/references/prompt-engineering.md | The prompt construction system. Update when Google publishes new guidance. |
skills/banana/references/mcp-tools.md | API parameter reference. Update when Google changes the API. |
skills/banana/scripts/generate.py | Direct API fallback for generation. Uses urllib.request (stdlib). |
skills/banana/scripts/edit.py | Direct API fallback for editing. Uses urllib.request (stdlib). |
agents/brief-constructor.md | Subagent for prompt construction. |
Scripts use stdlib only
The fallback scripts (generate.py, edit.py) use Python's urllib.request
to call the Gemini REST API directly. They have ZERO pip dependencies by design.
Do NOT add google-genai or requests as dependencies -- the stdlib approach
ensures the skill works on any system with Python 3.6+.
Key constraints
imageSizeparameter values must be UPPERCASE: "1K", "2K", "4K". Lowercase fails silently.- Gemini generates ONE image per API call. There is no batch parameter.
- No negative prompt parameter exists. Use semantic reframing in the prompt.
responseModalitiesmust explicitly include "IMAGE" or the API returns text only.- NEVER use banned keywords in prompts: "8K", "masterpiece", "ultra-realistic", "high resolution" -- these degrade output quality. Use prestigious context anchors instead (see prompt-engineering.md).
Distribution
Plugin marketplace (primary)
Users install via:
/plugin marketplace add AgriciDaniel/banana-claude
/plugin install banana-claude@banana-claude-marketplaceOfficial Anthropic marketplace
Submission pending via claude.ai/settings/plugins/submit. Once accepted, users install with:
/plugin install banana-claude@claude-plugins-officialStandalone install (legacy)
Still supported via install.sh for users not on the plugin system.
Versioning
Version must be bumped in ALL 4 files when releasing:
.claude-plugin/plugin.json--versionfield (plugin system reads this)skills/banana/SKILL.md--metadata.versionin frontmatterREADME.md-- version badgeCITATION.cff--versionanddate-released
Also add a new section in CHANGELOG.md.
Do NOT set version in marketplace.json -- it conflicts with plugin.json (plugin.json always wins silently per Anthropic docs).
Plugin development notes
.claude-plugin/contains ONLYplugin.jsonandmarketplace.json. Never put skills, agents, or commands in this directory.skills/andagents/must be at plugin root (not inside.claude-plugin/).- Plugin variable
${CLAUDE_PLUGIN_ROOT}resolves to the plugin cache directory. Use for hook commands and MCP configs. - SKILL.md uses
${CLAUDE_SKILL_DIR}for script paths -- this is a semantic marker Claude interprets based on context. Works in both plugin and standalone mode. - Relative paths in SKILL.md (
references/,scripts/) resolve relative to SKILL.md location. These work in both modes. - Test locally with
claude --plugin-dir .(loads plugin without installing). - After changes, run
/reload-pluginsin Claude Code to pick up updates without restarting. - Validate with
claude plugin validate .or/plugin validate .before releasing.
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.

