#780 by GitHub stars
AgriciDaniel/banana-claude
Plan, generate, edit, compare, and review images with Google Gemini (Nano Banana) image models, with an exact plan and explicit approval before every paid call. Use when the user asks to create or edit an image, picture, photo, illustration, logo, thumbnail, poster, banner, product shot, mockup, cha
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
skills/banana/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
08e329b37dae → 08e329b37dae
Verified commit 08e329b37dae396fc869c10d3494c5950d1d61c2
git clone --filter=blob:none --no-checkout https://github.com/AgriciDaniel/banana-claude.git .hotskills/agricidaniel-banana-claude && git -C .hotskills/agricidaniel-banana-claude checkout --detach 08e329b37dae396fc869c10d3494c5950d1d61c2
# Copy each selected skill directory from .hotskills/agricidaniel-banana-claude into .claude/skills/<skill-name>/Heat
7.2- Star growth, last 7 daysAhead of 93% of tracked repositories
- Star growth, last 24 hoursAhead of 96% of tracked repositories
- Rank movement, last 7 daysAhead of 52% of tracked repositories
- Commits, last 30 daysAhead of 75% of tracked repositories
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekAhead of 0% of tracked repositories
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
Individual skills in this repository
- banana
skills/banana
How it works
banana
When your agent uses it
Plan, generate, edit, compare, and review images with Google Gemini (Nano Banana) image models, with an exact plan and explicit approval before every paid call. Use when the user asks to create or edit an image, picture, photo, illustration, logo, thumbnail, poster, banner, product shot, mockup, character sheet, infographic, or diagram; keep a character or product consistent across images; add exact text to an image; or compare image models.
What it loads into context
Frontmatter
152 tokensAlways available to the agent
SKILL.md
3,849 tokensWhen the skill is activated
Reference documents
24,958 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Non-negotiable boundaries
- Route and disclose progressively
- Freeze a visual brief
- Route the model
- Plan, approve, execute
- Presets
- Exact copy and trusted assets
- Grounding, provenance, and review
- Agent authority
- Direct utilities
Scripts executed separately
scripts/approval_store.pyscripts/banana_core.pyscripts/batch.pyscripts/cost_tracker.pyscripts/doctor.pyscripts/edit.pyscripts/generate.pyscripts/legacy_cleanup.pyscripts/mcp_server.pyscripts/portfolio.pyscripts/presets.pyscripts/typeset.py
Files
../../.claude-plugin/marketplace.jsonasset856 bytes../../.claude-plugin/marketplace.jsonasset856 bytes../../.claude-plugin/plugin.jsonasset1,067 bytes../../.claude-plugin/plugin.jsonasset1,067 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesSKILL.mdcore17,777 bytesreferences/cost-tracking.mddoc13,521 bytesreferences/gemini-models.mddoc18,969 bytesreferences/mcp-tools.mddoc22,827 bytesreferences/models.jsonasset29,950 bytesreferences/post-processing.mddoc19,164 bytesreferences/presets.mddoc9,090 bytesreferences/prompt-engineering.mddoc20,664 bytesreferences/review-and-recovery.mddoc8,617 bytesscripts/approval_store.pyruns23,161 bytesscripts/banana_core.pyruns188,254 bytesscripts/batch.pyruns5,643 bytesscripts/cost_tracker.pyruns120,485 bytesscripts/doctor.pyruns5,658 bytesscripts/edit.pyruns4,780 bytesscripts/generate.pyruns5,804 bytesscripts/legacy_cleanup.pyruns95,597 bytesscripts/mcp_server.pyruns43,979 bytesscripts/portfolio.pyruns21,424 bytesscripts/presets.pyruns131,192 bytesscripts/typeset.pyruns24,482 bytes
Read SKILL.md
# Banana Claude
Turn user intent into a frozen visual brief, compile the exact prompt, plan the
request, obtain approval, execute through the bundled Gemini client, and inspect
the actual pixels. The prompt is a control artifact, not the finished work.
Plugin command: /banana-claude:banana. The standalone install uses /banana and
the direct scripts, without plugin MCP or plugin-managed secrets.
## Non-negotiable boundaries
- Planning, prompt work, model inspection, and cost estimation do not call
Google. Planning does write a short-lived approval capability to private
local state.View the complete source on GitHubSkills included
- banana
Repository facts
- License
- MIT
- Created
- Mar 13, 2026
- Last pushed
- Nov 1, 2026
- Forks
- 264
- Open issues
- 1
- Project activity
- Active
Rank over the last 12 weeks
Now #780 · best #578 · down 119 in 30 days
- #774 on Oct 30
- #776 from Oct 31 to Nov 1
- #777 on Nov 2
- #783 on Nov 3
- #782 on Nov 4
- #780 since Nov 5
74 earlier periods
- #574 on Aug 2
- #565 on Aug 7
- #560 on Aug 8
- #564 on Aug 9
- #590 on Aug 10
- #593 on Aug 11
- #591 on Aug 12
- #595 on Aug 13
- #594 on Aug 14
- #578 on Aug 15
- #593 on Aug 16
- #600 on Aug 17
- #610 on Aug 18
- #597 on Aug 19
- #599 on Aug 20
- #605 on Aug 21
- #580 on Aug 22
- #609 on Aug 23
- #612 on Aug 24
- #622 on Aug 25
- #609 on Aug 26
- #616 on Aug 27
- #629 on Aug 28
- #585 on Aug 29
- #580 on Aug 30
- #602 on Aug 31
- #617 on Sep 1
- #610 on Sep 3
- #590 on Sep 4
- #588 on Sep 5
- #609 on Sep 7
- #626 on Sep 8
- #612 on Sep 9
- #620 on Sep 10
- #603 on Sep 11
- #607 on Sep 12
- #606 on Sep 13
- #630 on Sep 14
- #624 on Sep 15
- #630 on Sep 17
- #631 on Sep 18
- #611 on Sep 19
- #652 on Sep 22
- #651 on Sep 23
- #625 on Sep 24
- #618 on Sep 25
- #616 on Sep 26
- #639 on Sep 27
- #683 on Sep 29
- #663 on Sep 30
- #641 on Oct 2
- #619 on Oct 3
- #642 on Oct 4
- #648 on Oct 5
- #656 on Oct 6
- #661 on Oct 7
- #697 on Oct 8
- #676 on Oct 9
- #662 on Oct 10
- #657 on Oct 11
- #676 on Oct 12
- #672 on Oct 13
- #685 on Oct 14
- #675 on Oct 15
- #685 on Oct 16
- #666 on Oct 17
- #694 on Oct 19
- #701 on Oct 20
- #705 on Oct 21
- #686 from Oct 22 to Oct 23
- #659 on Oct 24
- #764 on Oct 25
- #776 on Oct 28
- #775 on Oct 29
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 3, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 19 notes
.claude-plugin/marketplace.json:1Analysis incomplete: Referenced executable target unavailable; not analyzed.claude-plugin/plugin.json:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/banana/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- No dangerous shell commands
- 152 network referencesin 8 files: banana/references/models.json:13 banana/references/gemini-models.md:10 banana/scripts/banana_core.py:2039 and 5 more
- 2 obfuscation signalsin 2 files: banana/scripts/banana_core.py:2479 banana/scripts/typeset.py:37
- No instruction overrides
- 12 executable scriptsin 12 files: banana/scripts/approval_store.py:1 banana/scripts/banana_core.py:1 banana/scripts/batch.py:1 and 9 more
- 37 references to secretsin 10 files: banana/scripts/banana_core.py:464 banana/scripts/doctor.py:28 banana/scripts/legacy_cleanup.py:77 and 7 more
- No requests to vote in Hot
Show all 203 signals by file
.claude-plugin/marketplace.json
- Network accessline 13
"defaultEnabled": false, "description": "Brief-led image generation, editing, review, and bounded multi-model orchestration with current Gemini image models. Requires Claude Code 2.1.199+, Python 3.11+ with python3 on PATH, and Linux, - Network accessline 14
"description": "Brief-led image generation, editing, review, and bounded multi-model orchestration with current Gemini image models. Requires Claude Code 2.1.199+, Python 3.11+ with python3 on PATH, and Linux, macOS, or WSL for generation." - Network accessline 15
"homepage": "https://github.com/AgriciDaniel/banana-claude", - Network accessline 16
"repository": "https://github.com/AgriciDaniel/banana-claude",
.claude-plugin/plugin.json
- Network accessline 7
"author": { "name": "AgriciDaniel", "url": "https://github.com/AgriciDaniel" - Network accessline 8
"name": "AgriciDaniel", "url": "https://github.com/AgriciDaniel" }, - Network accessline 9
"url": "https://github.com/AgriciDaniel" - Network accessline 10
}, "homepage": "https://github.com/AgriciDaniel/banana-claude", "repository": "https://github.com/AgriciDaniel/banana-claude", - Network accessline 11
"homepage": "https://github.com/AgriciDaniel/banana-claude", - Network accessline 12
"repository": "https://github.com/AgriciDaniel/banana-claude", - Access to secretsline 25
[Credential-related source omitted]
skills/banana/SKILL.md
- Access to secretsline 31
[Credential-related source omitted]
skills/banana/references/cost-tracking.md
- Network accessline 6
- pricing: https://ai.google.dev/gemini-api/docs/pricing - Network accessline 7
- billing and spend caps: https://ai.google.dev/gemini-api/docs/billing#spend-caps - Network accessline 8
- Interactions storage: https://ai.google.dev/gemini-api/docs/interactions-overview - Network accessline 9
- retention controls: https://ai.google.dev/gemini-api/docs/zdr - Network accessline 10
- Gemini API terms: https://ai.google.dev/gemini-api/terms
skills/banana/references/gemini-models.md
- Network accessline 10
- <https://ai.google.dev/gemini-api/docs/image-generation> - Network accessline 11
- <https://ai.google.dev/gemini-api/docs/generate-content/image-generation> - Network accessline 12
- <https://ai.google.dev/gemini-api/docs/models/gemini-nano-banana-2.1> - Network accessline 13
- <https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-lite-image> - Network accessline 14
- <https://ai.google.dev/gemini-api/docs/models/gemini-3-pro-image> - Network accessline 15
- <https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-image> - Network accessline 16
- <https://ai.google.dev/gemini-api/docs/pricing> - Network accessline 17
- <https://ai.google.dev/gemini-api/docs/changelog> - Network accessline 18
- <https://ai.google.dev/gemini-api/docs/deprecations> - Network accessline 19
- <https://ai.google.dev/gemini-api/docs/interactions-overview> - Network accessline 20
- <https://ai.google.dev/gemini-api/docs/zdr> - Network accessline 21
- <https://ai.google.dev/api/interactions-api> - Network accessline 22
- <https://ai.google.dev/api/generate-content> - Network accessline 23
- <https://ai.google.dev/gemini-api/terms> - Network accessline 185
POST https://generativelanguage.googleapis.com/v1beta/interactions - Access to secretsline 186
[Credential-related source omitted] - Network accessline 248
POST https://generativelanguage.googleapis.com/v1/models/gemini-3.1-flash-lite-image:generateContent - Access to secretsline 249
[Credential-related source omitted] - Network accessline 325
such as `output_tokens_by_modality`. Field names follow the Interactions `Usage` and generateContent `UsageMetadata` references (<https://ai.google.dev/api/interactions>, - Network accessline 326
`Usage` and generateContent `UsageMetadata` references (<https://ai.google.dev/api/interactions>, <https://ai.google.dev/api/generate-content#UsageMetadata>). Banana does not - Network accessline 327
(<https://ai.google.dev/api/interactions>, - Network accessline 328
<https://ai.google.dev/api/generate-content#UsageMetadata>). Banana does not
skills/banana/references/mcp-tools.md
skills/banana/references/models.json
- Network accessline 13
"evidence_type": "official_documentation", "source_urls": [ "https://ai.google.dev/gemini-api/docs/image-generation", - Network accessline 14
"source_urls": [ "https://ai.google.dev/gemini-api/docs/image-generation", "https://ai.google.dev/gemini-api/docs/changelog", - Network accessline 15
"https://ai.google.dev/gemini-api/docs/image-generation", - Network accessline 16
"https://ai.google.dev/gemini-api/docs/changelog", - Network accessline 17
"https://ai.google.dev/gemini-api/docs/deprecations", - Network accessline 18
"https://ai.google.dev/gemini-api/docs/models/gemini-nano-banana-2.1", - Network accessline 19
"https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-lite-image", - Network accessline 20
"https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-image", - Network accessline 21
"https://ai.google.dev/gemini-api/docs/models/gemini-3-pro-image" - Network accessline 32
"evidence_type": "official_documentation", "source_urls": [ "https://ai.google.dev/gemini-api/docs/pricing", - Network accessline 33
"source_urls": [ "https://ai.google.dev/gemini-api/docs/pricing", "https://ai.google.dev/gemini-api/docs/models/gemini-nano-banana-2.1" - Network accessline 34
"https://ai.google.dev/gemini-api/docs/pricing", - Network accessline 35
"https://ai.google.dev/gemini-api/docs/models/gemini-nano-banana-2.1" - Network accessline 46
"evidence_type": "official_documentation", "source_urls": [ "https://ai.google.dev/gemini-api/docs/deprecations", - Network accessline 47
"source_urls": [ "https://ai.google.dev/gemini-api/docs/deprecations", "https://ai.google.dev/gemini-api/docs/pricing" - Network accessline 48
"https://ai.google.dev/gemini-api/docs/deprecations", - Network accessline 49
"https://ai.google.dev/gemini-api/docs/pricing" - Network accessline 60
"evidence_type": "official_documentation", "source_urls": [ "https://ai.google.dev/gemini-api/docs/models/gemini-nano-banana-2.1", - Network accessline 61
"source_urls": [ "https://ai.google.dev/gemini-api/docs/models/gemini-nano-banana-2.1", "https://ai.google.dev/gemini-api/docs/image-generation", - Network accessline 62
"https://ai.google.dev/gemini-api/docs/models/gemini-nano-banana-2.1", - Network accessline 63
"https://ai.google.dev/gemini-api/docs/image-generation", - Network accessline 64
"https://ai.google.dev/gemini-api/docs/changelog" - Network accessline 75
"evidence_type": "official_documentation", "source_urls": [ "https://ai.google.dev/gemini-api/docs/models/gemini-nano-banana-2.1", - Network accessline 76
"source_urls": [ "https://ai.google.dev/gemini-api/docs/models/gemini-nano-banana-2.1", "https://ai.google.dev/gemini-api/docs/image-generation" - Network accessline 77
"https://ai.google.dev/gemini-api/docs/models/gemini-nano-banana-2.1", - Network accessline 78
"https://ai.google.dev/gemini-api/docs/image-generation" - Network accessline 89
"evidence_type": "official_documentation", "source_urls": [ "https://ai.google.dev/gemini-api/docs/interactions-overview", - Network accessline 90
"source_urls": [ "https://ai.google.dev/gemini-api/docs/interactions-overview", "https://ai.google.dev/gemini-api/docs/zdr" - Network accessline 91
"https://ai.google.dev/gemini-api/docs/interactions-overview", - Network accessline 92
"https://ai.google.dev/gemini-api/docs/zdr" - Network accessline 102
"claim": "Google retains Search-grounded request and response data for 30 days independently of store false.", "evidence_type": "official_documentation", "source_urls": ["https://ai.google.dev/gemini-api/docs/zdr", "https:// - Network accessline 103
"evidence_type": "official_documentation", "source_urls": ["https://ai.google.dev/gemini-api/docs/zdr", "https://ai.google.dev/gemini-api/terms"], "retrieved_on": "2026-10-20", - Network accessline 104
"source_urls": ["https://ai.google.dev/gemini-api/docs/zdr", "https://ai.google.dev/gemini-api/terms"], - Network accessline 114
"evidence_type": "official_documentation", "source_urls": [ "https://ai.google.dev/api/interactions-api", - Network accessline 115
"source_urls": [ "https://ai.google.dev/api/interactions-api", "https://ai.google.dev/gemini-api/docs/image-generation" - Network accessline 116
"https://ai.google.dev/api/interactions-api", - Network accessline 117
"https://ai.google.dev/gemini-api/docs/image-generation" - Network accessline 127
"claim": "The current generateContent ImageResponseFormat enum exposes IMAGE_JPEG as the selectable image output MIME. Stale: the reference section could not be read in full on 2026-10-20.", "evidence_type": "official_documentation" - Network accessline 128
"evidence_type": "official_documentation", "source_urls": ["https://ai.google.dev/api/generate-content"], "retrieved_on": "2026-08-29", - Network accessline 129
"source_urls": ["https://ai.google.dev/api/generate-content"], - Network accessline 139
"evidence_type": "official_documentation", "source_urls": [ "https://ai.google.dev/gemini-api/docs/image-generation", - Network accessline 140
"source_urls": [ "https://ai.google.dev/gemini-api/docs/image-generation", "https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-lite-image", - Network accessline 141
"https://ai.google.dev/gemini-api/docs/image-generation", - Network accessline 142
"https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-lite-image", - Network accessline 143
"https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-image", - Network accessline 144
"https://ai.google.dev/gemini-api/docs/models/gemini-3-pro-image" - Network accessline 155
"evidence_type": "official_documentation", "source_urls": [ "https://ai.google.dev/gemini-api/docs/image-generation", - Network accessline 156
"source_urls": [ "https://ai.google.dev/gemini-api/docs/image-generation", "https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-lite-image", - Network accessline 157
"https://ai.google.dev/gemini-api/docs/image-generation", - Network accessline 158
"https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-lite-image", - Network accessline 159
"https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-image", - Network accessline 160
"https://ai.google.dev/gemini-api/docs/models/gemini-3-pro-image", - Network accessline 161
"https://ai.google.dev/gemini-api/docs/thinking", - Network accessline 162
"https://ai.google.dev/gemini-api/docs/interactions-overview", - Network accessline 163
"https://ai.google.dev/gemini-api/docs/changelog" - Network accessline 174
"evidence_type": "official_documentation", "source_urls": [ "https://ai.google.dev/api/interactions-api", - Network accessline 175
"source_urls": [ "https://ai.google.dev/api/interactions-api", "https://ai.google.dev/api/generate-content", - Network accessline 176
"https://ai.google.dev/api/interactions-api", - Network accessline 177
"https://ai.google.dev/api/generate-content", - Network accessline 178
"https://ai.google.dev/gemini-api/docs/models/gemini-nano-banana-2.1", - Network accessline 179
"https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-lite-image", - Network accessline 180
"https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-image", - Network accessline 181
"https://ai.google.dev/gemini-api/docs/models/gemini-3-pro-image" - Network accessline 191
"claim": "A local redacted Interactions probe using gemini-3-pro-image reportedly rejected image/png and named image/jpeg as the supported value. It did not directly test gemini-3.1-flash-image or gemini-nano-banana-2.1. Stale: not re-run s - Network accessline 192
"evidence_type": "reported_redacted_live_probe", "source_urls": ["https://ai.google.dev/api/interactions-api"], "retrieved_on": "2026-08-28", - Network accessline 193
"source_urls": ["https://ai.google.dev/api/interactions-api"], - Network accessline 202
"claim": "A local redacted Flash Lite probe reportedly accepted typed JPEG, 1:1, and 1K enums and returned a 1024 by 1024 JPEG. Stale: not re-run since 2026-08-28.", "evidence_type": "reported_redacted_live_probe", "source_u - Network accessline 203
"evidence_type": "reported_redacted_live_probe", "source_urls": ["https://ai.google.dev/api/generate-content"], "retrieved_on": "2026-08-28", - Network accessline 204
"source_urls": ["https://ai.google.dev/api/generate-content"], - Network accessline 214
"evidence_type": "official_documentation", "source_urls": [ "https://ai.google.dev/gemini-api/docs/image-generation", - Network accessline 215
"source_urls": [ "https://ai.google.dev/gemini-api/docs/image-generation", "https://ai.google.dev/gemini-api/docs/generate-content/image-generation", - Network accessline 216
"https://ai.google.dev/gemini-api/docs/image-generation", - Network accessline 217
"https://ai.google.dev/gemini-api/docs/generate-content/image-generation", - Network accessline 218
"https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-lite-image", - Network accessline 219
"https://ai.google.dev/gemini-api/docs/changelog" - Network accessline 255
"api_profiles": { "interactions": { "url": "https://generativelanguage.googleapis.com/v1beta/interactions", - Network accessline 256
"interactions": { "url": "https://generativelanguage.googleapis.com/v1beta/interactions", "supported_models": ["gemini-nano-banana-2.1", "gemini-3-pro-image", "gemini-3.1-flash-image"], - Network accessline 257
"url": "https://generativelanguage.googleapis.com/v1beta/interactions", - Network accessline 278
}, "generate_content": { "url_template": "https://generativelanguage.googleapis.com/v1/models/{model}:generateContent", - Network accessline 279
"generate_content": { "url_template": "https://generativelanguage.googleapis.com/v1/models/{model}:generateContent", "supported_models": ["gemini-3.1-flash-lite-image"], - Network accessline 280
"url_template": "https://generativelanguage.googleapis.com/v1/models/{model}:generateContent", - Network accessline 345
"portfolio_limit": 9, "sources": [ "https://ai.google.dev/gemini-api/docs/image-generation", - Network accessline 346
"sources": [ "https://ai.google.dev/gemini-api/docs/image-generation", "https://ai.google.dev/gemini-api/docs/generate-content/image-generation", - Network accessline 347
"https://ai.google.dev/gemini-api/docs/image-generation", - Network accessline 348
"https://ai.google.dev/gemini-api/docs/generate-content/image-generation", - Network accessline 349
"https://ai.google.dev/gemini-api/docs/models/gemini-nano-banana-2.1", - Network accessline 350
"https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-lite-image", - Network accessline 351
"https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-image", - Network accessline 352
"https://ai.google.dev/gemini-api/docs/models/gemini-3-pro-image", - Network accessline 353
"https://ai.google.dev/gemini-api/docs/pricing", - Network accessline 354
"https://ai.google.dev/gemini-api/docs/billing#spend-caps", - Network accessline 355
"https://ai.google.dev/gemini-api/docs/changelog", - Network accessline 356
"https://ai.google.dev/gemini-api/docs/deprecations", - Network accessline 357
"https://ai.google.dev/gemini-api/docs/thinking", - Network accessline 358
"https://ai.google.dev/gemini-api/docs/interactions-overview", - Network accessline 359
"https://ai.google.dev/gemini-api/docs/zdr", - Network accessline 360
"https://ai.google.dev/api/interactions-api", - Network accessline 361
"https://ai.google.dev/api/generate-content", - Network accessline 362
"https://ai.google.dev/gemini-api/terms"
skills/banana/references/prompt-engineering.md
- Network accessline 13
- <https://ai.google.dev/gemini-api/docs/image-generation> - Network accessline 14
- <https://deepmind.google/models/gemini-image/prompt-guide/> - Network accessline 15
- <https://cloud.google.com/blog/products/ai-machine-learning/ultimate-prompting-guide-for-nano-banana> - Network accessline 252
A three-quarter view of a cream ceramic espresso maker on a pale oak counter in a quiet kitchen just after sunrise. A narrow stripe of warm dawn light crosses the front dial and catches a thin curl of steam, while the rest of the - Network accessline 253
in a quiet kitchen just after sunrise. A narrow stripe of warm dawn light crosses the front dial and catches a thin curl of steam, while the rest of the machine sits in soft, cool shade. Shot as a product photograph with a 50mm lens - Network accessline 254
crosses the front dial and catches a thin curl of steam, while the rest of the
skills/banana/scripts/approval_store.py
skills/banana/scripts/banana_core.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 464
[Credential-related source omitted] - Access to secretsline 574
[Credential-related source omitted] - Access to secretsline 578
[Credential-related source omitted] - Access to secretsline 579
[Credential-related source omitted] - Network accessline 2039
def redirect_request( self, req: urllib.request.Request, - Network accessline 2040
self, req: urllib.request.Request, fp: Any, - Network accessline 2041
req: urllib.request.Request, - Network accessline 2045
headers: Any, newurl: str, ) -> urllib.request.Request | None: - Network accessline 2046
newurl: str, ) -> urllib.request.Request | None: return None - Network accessline 2047
) -> urllib.request.Request | None: - Network accessline 2054
def _open_provider_request( request: urllib.request.Request, - Network accessline 2055
request: urllib.request.Request, - Access to secretsline 2066
[Credential-related source omitted] - Access to secretsline 2082
[Credential-related source omitted] - Network accessline 2089
request = urllib.request.Request( - Access to secretsline 2183
[Credential-related source omitted] - Access to secretsline 2199
[Credential-related source omitted] - Access to secretsline 2212
[Credential-related source omitted] - Access to secretsline 2235
[Credential-related source omitted] - Possible obfuscationline 2479
raw = base64.b64decode(image["data"], validate=True) - Access to secretsline 4773
[Credential-related source omitted] - Access to secretsline 4808
[Credential-related source omitted] - Access to secretsline 4823
[Credential-related source omitted] - Access to secretsline 4836
[Credential-related source omitted] - Access to secretsline 4854
[Credential-related source omitted] - Access to secretsline 5058
[Credential-related source omitted] - Access to secretsline 5094
[Credential-related source omitted]
skills/banana/scripts/batch.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/banana/scripts/cost_tracker.py
skills/banana/scripts/doctor.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 28
[Credential-related source omitted] - Access to secretsline 119
[Credential-related source omitted] - Access to secretsline 126
[Credential-related source omitted] - Access to secretsline 129
[Credential-related source omitted] - Access to secretsline 131
[Credential-related source omitted]
skills/banana/scripts/edit.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/banana/scripts/generate.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/banana/scripts/legacy_cleanup.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 77
[Credential-related source omitted] - Access to secretsline 78
[Credential-related source omitted] - Access to secretsline 79
[Credential-related source omitted] - Access to secretsline 80
[Credential-related source omitted] - Access to secretsline 264
[Credential-related source omitted]
skills/banana/scripts/mcp_server.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/banana/scripts/portfolio.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/banana/scripts/presets.py
skills/banana/scripts/typeset.py
- Executable scriptline 1
#!/usr/bin/env python3 - Possible obfuscationline 37
".ttf": ("font/ttf", (b"\x00\x01\x00\x00", b"true")), - Network accessline 453
svg = ( '<?xml version="1.0" encoding="UTF-8"?>\n' f'<svg xmlns="http://www.w3.org/2000/svg" width="{width}" height="{height}" ' - Network accessline 454
'<?xml version="1.0" encoding="UTF-8"?>\n' f'<svg xmlns="http://www.w3.org/2000/svg" width="{width}" height="{height}" ' f'viewBox="0 0 {width} {height}">\n' - Network accessline 455
f'<svg xmlns="http://www.w3.org/2000/svg" width="{width}" height="{height}" '
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
No combined signals at this commit.
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Native | Manifest .claude-plugin/marketplace.json | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md skills/banana/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md skills/banana/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md skills/banana/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md skills/banana/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md skills/banana/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.
Explore alternatives and comparisons
Add this badge to your README
It updates every night and links to this page.
[](https://hotskills.dev/skill/agricidaniel-banana-claude/)