tools/image/nano-banana-2/SKILL.md
Generate images with Google Gemini 3.1 Flash Image Preview (Nano Banana 2) via inference.sh CLI. Capabilities: text-to-image, image editing, multi-image input (up to 14 images), Google Search grounding. Triggers: nano banana 2, nanobanana 2, gemini 3.1 flash image, gemini 3 1 flash image preview, google image generation
npx skillsauth add inference-sh-8/skills nano-banana-2Install this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
Security scan pending...
This skill is queued for security scanning. Results will appear when the scan completes.
Install the belt CLI skill:
npx skills add belt-sh/cli
Generate images with Google Gemini 3.1 Flash Image Preview via inference.sh CLI.
Requires inference.sh CLI (
belt). Install instructions
belt login
belt app run google/gemini-3-1-flash-image-preview --input '{"prompt": "a banana in space, photorealistic"}'
belt app run google/gemini-3-1-flash-image-preview --input '{
"prompt": "A futuristic cityscape at sunset with flying cars"
}'
belt app run google/gemini-3-1-flash-image-preview --input '{
"prompt": "Minimalist logo design for a coffee shop",
"num_images": 4
}'
belt app run google/gemini-3-1-flash-image-preview --input '{
"prompt": "Panoramic mountain landscape with northern lights",
"aspect_ratio": "16:9"
}'
belt app run google/gemini-3-1-flash-image-preview --input '{
"prompt": "Add a rainbow in the sky",
"images": ["https://example.com/landscape.jpg"]
}'
belt app run google/gemini-3-1-flash-image-preview --input '{
"prompt": "Detailed illustration of a medieval castle",
"resolution": "4K"
}'
belt app run google/gemini-3-1-flash-image-preview --input '{
"prompt": "Current weather in Tokyo visualized as an artistic scene",
"enable_google_search": true
}'
| Parameter | Type | Description |
|-----------|------|-------------|
| prompt | string | Required. What to generate or change |
| images | array | Input images for editing (up to 14). Supported: JPEG, PNG, WebP |
| num_images | integer | Number of images to generate |
| aspect_ratio | string | Output ratio: "1:1", "16:9", "9:16", "4:3", "3:4", "auto" |
| resolution | string | "1K", "2K", "4K" (default: 1K) |
| output_format | string | Output format for images |
| enable_google_search | boolean | Enable real-time info grounding (weather, news, etc.) |
| Field | Type | Description |
|-------|------|-------------|
| images | array | The generated or edited images |
| description | string | Text description or response from the model |
| output_meta | object | Metadata about inputs/outputs for pricing |
Styles: photorealistic, illustration, watercolor, oil painting, digital art, anime, 3D render
Composition: close-up, wide shot, aerial view, macro, portrait, landscape
Lighting: natural light, studio lighting, golden hour, dramatic shadows, neon
Details: add specific details about textures, colors, mood, atmosphere
# 1. Generate sample input to see all options
belt app sample google/gemini-3-1-flash-image-preview --save input.json
# 2. Edit the prompt
# 3. Run
belt app run google/gemini-3-1-flash-image-preview --input input.json
from inferencesh import inference
client = inference()
# Basic generation
result = client.run({
"app": "google/gemini-3-1-flash-image-preview@0c7ma1ex",
"input": {
"prompt": "A banana in space, photorealistic"
}
})
print(result["output"])
# Stream live updates
for update in client.run({
"app": "google/gemini-3-1-flash-image-preview@0c7ma1ex",
"input": {
"prompt": "A futuristic cityscape at sunset"
}
}, stream=True):
if update.get("progress"):
print(f"progress: {update['progress']}%")
if update.get("output"):
print(f"output: {update['output']}")
# Original Nano Banana (Gemini 3 Pro Image, Gemini 2.5 Flash Image)
npx skills add inference-sh/skills@nano-banana
# Full platform skill (all 250+ apps)
npx skills add inference-sh/skills@infsh-cli
# All image generation models
npx skills add inference-sh/skills@ai-image-generation
Browse all image apps: belt app store --category image
data-ai
Generate multi-person talking head podcast videos from scratch using AI — character creation, TTS, avatar animation, and video stitching. Use when the user wants to create a podcast, talking head video, or multi-speaker conversation video.
development
Declarative UI widgets from JSON for React/Next.js from ui.inference.sh. Render rich interactive UIs from structured agent responses. Capabilities: forms, buttons, cards, layouts, inputs, selects, checkboxes. Use for: agent-generated UIs, dynamic forms, data display, interactive cards. Triggers: widgets, declarative ui, json ui, widget renderer, agent widgets, dynamic ui, form widgets, card widgets, shadcn widgets, structured output ui
tools
Tool lifecycle UI components for React/Next.js from ui.inference.sh. Display tool calls: pending, progress, approval required, results. Capabilities: tool status, progress indicators, approval flows, results display. Use for: showing agent tool calls, human-in-the-loop approvals, tool output. Triggers: tool ui, tool calls, tool status, tool approval, tool results, agent tools, mcp tools ui, function calling ui, tool lifecycle, tool pending
development
Chat UI building blocks for React/Next.js from ui.inference.sh. Components: container, messages, input, typing indicators, avatars. Capabilities: chat interfaces, message lists, input handling, streaming. Use for: building custom chat UIs, messaging interfaces, AI assistants. Triggers: chat ui, chat component, message list, chat input, shadcn chat, react chat, chat interface, messaging ui, conversation ui, chat building blocks