generate-icon

📁 b-open-io/gemskills 📅 10 days ago
1
总安装量
1
周安装量
#53526
全站排名
安装命令
npx skills add https://github.com/b-open-io/gemskills --skill generate-icon

Agent 安装分布

mcpjam 1
claude-code 1
junie 1
windsurf 1
zencoder 1
crush 1

Skill 文档

Generate Icon Skill

Generate professional icons for any platform using Gemini AI with automatic background removal, cropping, and multi-size export.

Quick Start

# Favicon for website
bun run icon "modern tech startup logo letter S" --preset favicon --output ./icons/favicon

# iOS App Store icons
bun run icon "meditation app lotus flower" --preset apple-app-icon --output ./icons/ios

# Android Play Store + adaptive icons
bun run icon "fitness tracker flame icon" --preset android-app-icon --output ./icons/android

# PWA manifest icons
bun run icon "productivity app checkmark" --preset pwa --output ./icons/pwa

# macOS desktop app
bun run icon "code editor brackets symbol" --preset macos-icns --output ./icons/macos

# Windows desktop app
bun run icon "music player note icon" --preset windows-ico --output ./icons/windows

# General UI icons
bun run icon "settings gear" --preset ui-icons --output ./icons/ui

Presets

Preset Description Sizes Bundle
apple-app-icon iOS/iPadOS App Store 18 sizes (1024-20px) No
android-app-icon Google Play + adaptive layers 11 sizes + foreground No
favicon Browser tab icons 8 sizes + ICO Yes (.ico)
pwa Progressive Web App 11 sizes + maskable No
macos-icns macOS desktop 10 sizes Yes (.icns)
windows-ico Windows desktop 7 sizes Yes (.ico)
ui-icons In-app icons 9 sizes (512-16px) No

Pipeline

  1. Generate – Creates master icon at high resolution via Gemini
  2. Remove Background – Uses Replicate rembg for clean edges
  3. Crop & Center – Trims whitespace, centers on square canvas with 5% padding
  4. Resize – Exports all preset sizes with lanczos3 interpolation
  5. Bundle – Creates ICO/ICNS bundles where needed

Options

bun run icon "prompt" --preset <name> --output <dir> [options]

Required:
  --preset <name>       Platform preset (see table above)
  --output <dir>        Output directory

Optional:
  --input <image>       Reference image for style guidance
  --master-image <path> Use existing master instead of generating
  --skip-generate       Skip AI generation (requires --master-image)
  --skip-remove-bg      Skip background removal
  --bg-color <hex>      Background color for non-transparent presets

Examples

Using a reference image

bun run icon "clean app icon version" --preset pwa --input ./existing-logo.png --output ./icons

Using an existing master

bun run icon "" --preset ui-icons --master-image ./my-icon.png --skip-generate --output ./icons

iOS with custom background color

bun run icon "weather app sun" --preset apple-app-icon --bg-color "#0066CC" --output ./icons/ios

Icon Design Tips

DO:

  • Simple, bold, recognizable silhouette
  • Single focal point
  • High contrast
  • Clean edges
  • Works at 16x16px

DON’T:

  • Fine details that disappear at small sizes
  • Text (unreadable at icon sizes)
  • Complex gradients (banding issues)
  • Multiple competing elements
  • Photos or realistic images

Environment Variables

Variable Required Description
GEMINI_API_KEY Yes Google AI Studio API key
REPLICATE_API_TOKEN Yes Replicate API token for background removal

Output Structure

output/
├── master-raw.png        # Original generated image
├── master-nobg.png       # Background removed
├── master-cropped.png    # Cropped and centered
├── master-final.png      # With background (iOS only)
├── favicon.ico           # ICO bundle (favicon preset)
├── AppIcon.icns          # ICNS bundle (macos preset)
├── icon-512.png          # Size variants...
├── icon-256.png
└── ...

Troubleshooting

Issue Solution
“GEMINI_API_KEY not set” Export your API key: export GEMINI_API_KEY=your-key
“REPLICATE_API_TOKEN not set” Export your token: export REPLICATE_API_TOKEN=your-token
ICO not generated Install ImageMagick: brew install imagemagick
ICNS not generated Only works on macOS (requires iconutil)
Background not removed cleanly Try a simpler prompt with solid background
Icon too complex Simplify prompt, avoid “detailed” or “realistic”