nano-banana
3
总安装量
2
周安装量
#60179
全站排名
安装命令
npx skills add https://github.com/horuz-ai/claude-plugins --skill nano-banana
Agent 安装分布
openclaw
2
claude-code
2
opencode
2
mcpjam
1
openhands
1
zencoder
1
Skill 文档
Nano Banana PRO Image Generation
Generate professional AI images using Google’s Nano Banana models via the Gemini API.
Prerequisites
- API key must be set as
GEMINI_API_KEYenvironment variable - Uses curl for all API calls (no SDK required)
Model Selection
| Model | Identifier | Best For |
|---|---|---|
| Nano Banana PRO | gemini-3-pro-image-preview |
Professional assets, text rendering, infographics, 4K output, complex multi-turn editing |
| Nano Banana | gemini-2.5-flash-image |
Fast generation, simple edits, lower cost |
Default to PRO for quality work. Use Flash for rapid iterations or simple tasks.
CRITICAL: Prompt Engineering First
BEFORE calling the API, always craft an effective prompt. Read references/prompting-guide.md for comprehensive prompting strategies. Key principles:
The Golden Rules
- Describe scenes, don’t list keywords – Write narrative descriptions, not tag soup
- Use natural language – Full sentences with proper grammar
- Be specific – Define subject, setting, lighting, mood, materials
- Provide context – The “why” helps the model make better artistic decisions
- Edit, don’t re-roll – If 80% correct, ask for specific changes
The ICS Framework (Quick Reference)
For any image, specify:
- Image type: What kind of visual (photo, infographic, logo, sticker, etc.)
- Content: Specific elements, data, or information to include
- Style: Visual style, color palette, artistic approach
API Reference
Text-to-Image Generation
curl -s -X POST \
"https://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-image-preview:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [{
"parts": [{"text": "YOUR_PROMPT_HERE"}]
}],
"generationConfig": {
"responseModalities": ["TEXT", "IMAGE"],
"imageConfig": {
"aspectRatio": "16:9",
"imageSize": "2K"
}
}
}'
Image Editing (with input image)
curl -s -X POST \
"https://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-image-preview:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [{
"parts": [
{"text": "YOUR_EDIT_INSTRUCTION"},
{"inline_data": {"mime_type": "image/png", "data": "BASE64_IMAGE_DATA"}}
]
}],
"generationConfig": {
"responseModalities": ["TEXT", "IMAGE"]
}
}'
Configuration Options
| Parameter | Values | Notes |
|---|---|---|
aspectRatio |
1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9 |
Match use case |
imageSize |
1K, 2K, 4K |
Use uppercase K; PRO model only for 4K |
Google Search Grounding (Real-time Data)
Add "tools": [{"google_search": {}}] to generate images based on current information:
curl -s -X POST \
"https://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-image-preview:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [{"parts": [{"text": "Create an infographic of current tech stock prices"}]}],
"tools": [{"google_search": {}}],
"generationConfig": {
"responseModalities": ["TEXT", "IMAGE"],
"imageConfig": {"aspectRatio": "16:9"}
}
}'
Workflow
Step 1: Craft the Prompt
Use the ICS framework and prompting guide. Examples:
Photorealistic:
A photorealistic close-up portrait of an elderly Japanese ceramicist with deep wrinkles and a warm smile, inspecting a tea bowl. Soft golden hour light from a window. 85mm lens, shallow depth of field. Serene mood.
Infographic:
Create a clean, modern infographic explaining photosynthesis as a recipe. Show "ingredients" (sunlight, water, CO2) and "finished dish" (energy). Style like a colorful kids' cookbook page.
Product Shot:
High-resolution studio photograph of a matte black ceramic coffee mug on polished concrete. Three-point softbox lighting, 45-degree angle, sharp focus on rising steam. Square format.
Step 2: Generate Image
Use scripts/generate-image.sh or call API directly:
./scripts/generate-image.sh "Your prompt here" output.png --ratio 16:9 --size 2K
Step 3: Process Response
The API returns base64-encoded image data. Extract and decode:
# Response contains: {"candidates":[{"content":{"parts":[{"inlineData":{"mimeType":"image/png","data":"BASE64..."}}]}}]}
# Extract with jq and decode:
cat response.json | jq -r '.candidates[0].content.parts[] | select(.inlineData) | .inlineData.data' | base64 -d > image.png
Common Use Cases
Landing Pages & Ads
- Use 16:9 or 21:9 for hero images
- Specify brand colors, modern/minimal style
- Include text requirements in prompt
Logos & Icons
- Use 1:1 aspect ratio
- Request “minimalist”, “clean lines”, “vector-style”
- Specify color scheme explicitly
Product Photography
- Describe lighting setup (softbox, natural, studio)
- Mention surface/background materials
- Include camera angle and lens type
Infographics
- Define data to visualize
- Specify style (corporate, playful, technical)
- Request clear text and labeled sections
Stickers & Illustrations
- Request “bold outlines”, “kawaii”, “cel-shading”
- Specify “white background” or “transparent background”
- Define color palette
Character Consistency (Multiple Images)
- PRO supports up to 14 reference images
- Explicitly state: “Keep facial features exactly the same as Image 1”
- Describe expression/pose changes while maintaining identity
Scripts
See scripts/generate-image.sh for a ready-to-use generation script.
Detailed Prompting Guide
For advanced techniques including:
- Photorealistic scene templates
- Text rendering best practices
- Sequential art and storyboarding
- Dimensional translation (2Dâ3D)
- Search grounding for real-time data