Skip to content
Skillv1.0.0

nano-banana-pro

Generate or edit images via Gemini 3 Pro Image (Nano Banana Pro). Use when you need to: (1) generate images from text descriptions, (2) edit existing images with AI, (3) compose multiple images into o

by refly-ai(0) 0 installs
Free
Sign in to install

Free account. Installing gives you the manifest plus copy-paste snippets.

See reviews

About

Imported from refly-ai/refly-skills (skills/nano-banana-pro/SKILL.md). Install upstream with npx skills add refly-ai/refly-skills --skill nano-banana-pro. Copyright stays with the author.

Nano Banana Pro

Generate or edit images via Gemini 3 Pro Image (Nano Banana Pro). Use when you need to: (1) generate images from text descriptions, (2) edit existing images with AI, (3) compose multiple images into one scene. Supports 1K/2K/4K resolutions and up to 14 input images for composition.

Input

Provide input as JSON:

{
  "prompt": "Detailed description for image generation or editing (e.g., 'a cute cat playing in a garden')",
  "resolution": "Image resolution: 1K, 2K, or 4K (default: 1K)",
  "aspect_ratio": "Image aspect ratio: 16:9, 1:1, 9:16, 5:4, or 4:3 (default: 1:1)",
  "input_image": "<file-id>"
}

Note on File Input:

  • input_image is optional and requires a file ID (format: df-xxxxx)
  • How to get file ID:
    1. Upload your image using refly file upload <file-path>
    2. Copy the returned file ID from the upload response
    3. Use this file ID in the input JSON
  • Omit input_image for pure text-to-image generation
  • Provide input_image for image editing or transformation

API Request Structure

This skill uses Gemini 3 Pro Image API with the following structure:

Text-to-Image (Pure Generation)

{
  "contents": [{
    "parts": [
      {"text": "Your prompt here"}
    ]
  }],
  "generationConfig": {
    "responseModalities": ["TEXT", "IMAGE"],
    "imageConfig": {
      "aspectRatio": "1:1",
      "imageSize": "2K"
    }
  }
}

Image-to-Image (With Reference)

{
  "contents": [{
    "parts": [
      {"text": "Your editing prompt"},
      {"inline_data": {"mime_type": "image/png", "data": "<BASE64_DATA>"}}
    ]
  }],
  "generationConfig": {
    "responseModalities": ["TEXT", "IMAGE"],
    "imageConfig": {
      "aspectRatio": "16:9",
      "imageSize": "2K"
    }
  }
}

Notes:

  • Images are automatically converted to base64 format
  • Supports up to 14 input images for composition
  • imageSize maps to resolution: 1K, 2K, or 4K
  • aspectRatio determines output dimensions

Execution (Pattern A: File Generation)

Step 0 (Optional): Upload Input Image

# Upload an image if you want to edit or transform an existing image
INPUT_RESULT=$(refly file upload /path/to/your/image.jpg)
INPUT_FILE_ID=$(echo "$INPUT_RESULT" | jq -r '.payload.fileId')
echo "Input image file ID: $INPUT_FILE_ID"

Step 1: Run the Skill and Get Run ID

Example 1: Text-to-Image Generation

RESULT=$(refly skill run --id skpi-h9kpmts9ho1kl9l1sohaloeu --input '{
  "prompt": "a cute cat playing in a garden",
  "resolution": "2K",
  "aspect_ratio": "16:9"
}')
RUN_ID=$(echo "$RESULT" | jq -r '.payload.workflowExecutions[0].id')

Example 2: Image Editing with Reference

# Use the INPUT_FILE_ID from Step 0
RESULT=$(refly skill run --id skpi-h9kpmts9ho1kl9l1sohaloeu --input '{
  "prompt": "transform this image into watercolor painting style",
  "input_image": "'"$INPUT_FILE_ID"'",
  "resolution": "2K",
  "aspect_ratio": "1:1"
}')
RUN_ID=$(echo "$RESULT" | jq -r '.payload.workflowExecutions[0].id')

Step 2: Open Workflow in Browser and Wait for Completion

open "https://refly.ai/workflow/c-g6emwcpi1wpalsz6j4gyi3d9"
# Use RUN_ID (we-xxx), not installationId or skillId
refly workflow status "$RUN_ID" --watch --interval 30000

Step 3: Download and Show Result

# Get files from this run (use RUN_ID)
FILES=$(refly workflow toolcalls "$RUN_ID" --files --latest | jq -r '.payload.files[]')

# Download and open each file
echo "$FILES" | jq -c '.' | while read -r file; do
  FILE_ID=$(echo "$file" | jq -r '.fileId')
  FILE_NAME=$(echo "$file" | jq -r '.name')
  if [ -n "$FILE_ID" ] && [ "$FILE_ID" != "null" ]; then
    OUTPUT_PATH="$HOME/Desktop/${FILE_NAME}"
    refly file download "$FILE_ID" -o "$OUTPUT_PATH"
    open "$OUTPUT_PATH"
  fi
done

Expected Output

  • Type: Image
  • Format: .png/.jpg image file (1K/2K/4K resolution)
  • Location: ~/Desktop/
  • Action: Opens automatically to show user

Rules

Follow base skill workflow: ~/.claude/skills/refly/SKILL.md

Use it

Copy one of these into your project. Installing also returns the manifest and these snippets.

yaml
targets:
  - https://api.opensmartroute.ai/api/v1/registry/refly-ai-refly-skills-nano-banana-pro/manifest   # or paste the manifest below

Manifest

An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.

refly-ai-refly-skills-nano-banana-pro.ocm.jsonjson
{
  "ocm": "1",
  "id": "refly-ai-refly-skills-nano-banana-pro",
  "kind": "skill",
  "name": "nano-banana-pro",
  "description": "Generate or edit images via Gemini 3 Pro Image (Nano Banana Pro). Use when you need to: (1) generate images from text descriptions, (2) edit existing images with AI, (3) compose multiple images into one scene. Supports 1K/2K/4K resolutions and up to 14 input images for composition.",
  "publisher": "refly-ai",
  "version": "1.0.0",
  "capabilities": {
    "domains": [
      "general"
    ],
    "tags": [
      "skill-md",
      "image",
      "ai",
      "gemini",
      "generation",
      "editing",
      "skills-sh"
    ],
    "languages": [
      "en"
    ]
  },
  "quality_prior": 0.6,
  "examples": [
    "Generate or edit images via Gemini 3 Pro Image (Nano Banana Pro). Use when you need to: (1) generate images from text descriptions, (2) edit existing images with AI, (3) compose multiple images into one scene. Supports 1K/2K/4K resolutions and up to 14 input images for composition."
  ],
  "primary": false,
  "metadata": {
    "source": {
      "provider": "skills.sh",
      "repository": "https://github.com/refly-ai/refly-skills",
      "path": "skills/nano-banana-pro/SKILL.md",
      "ref": "HEAD",
      "url": "https://github.com/refly-ai/refly-skills/blob/HEAD/skills/nano-banana-pro/SKILL.md",
      "key": "refly-ai/refly-skills/skills/nano-banana-pro/SKILL.md"
    }
  },
  "instructions": "# Nano Banana Pro\n\nGenerate or edit images via Gemini 3 Pro Image (Nano Banana Pro). Use when you need to: (1) generate images from text descriptions, (2) edit existing images with AI, (3) compose multiple images into one scene. Supports 1K/2K/4K resolutions and up to 14 input images for composition.\n\n## Input\n\nProvide input as JSON:\n\n```json\n{\n  \"prompt\": \"Detailed description for image generation or editing (e.g., 'a cute cat playing in a garden')\",\n  \"resolution\": \"Image resolution: 1K, 2K, or 4K (default: 1K)\",\n  \"aspect_ratio\": \"Image aspect ratio: 16:9, 1:1, 9:16, 5:4, or 4:3 (default: 1",
  "cost": {
    "context_tokens": 1019
  }
}

Fetch it by URL: GET /api/v1/registry/refly-ai-refly-skills-nano-banana-pro/manifest?version=1.0.0

Reviews

Star ratings from people who tried it. One review per account; edit yours any time.

No reviews yet. Install it, try it, and be the first to rate it.