Skip to content
cccskills
FreePublished on GitHub

image-studio

Tired of juggling 8 API keys? This skill gives you one-command access to Midjourney, Flux, Ideogram, and more, with zero setup. Use when you want to generate any image without worrying about API keys.

The English summary is being prepared. Showing the original description.

Works withVercel

Run score Not tested

See how to install

Files included (7)

  • SKILL.md6.6 KB
  • .env.example931 B
  • CHANGELOG.md3.9 KB
  • CONTRIBUTING.md2.8 KB
  • package-lock.json1.8 KB
  • package.json284 B
  • tools/generate.js6.3 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

🎨 Image Generation Skill

Use when: User asks to generate, draw, create, or make any kind of image, photo, illustration, icon, logo, or artwork.

Generate images with 8 state-of-the-art AI models. This skill automatically picks the best model for the job and handles all the complexity — including Midjourney's async polling — so you can focus on the conversation.


Quick Reference

User IntentModelSpeed
Artistic, cinematic, painterlymidjourney~15s
Photorealistic, portrait, productflux-pro~8s
General purpose, balancedflux-dev~10s
Quick draft, fast iterationflux-schnell~2s
Image with text, logo, posterideogram~10s
Vector art, icon, flat designrecraft~8s
Anime, stylized illustrationsdxl~5s
Gemini-powered, consistent stylenano-banana~12s

How to Generate an Image

Step 1 — Enhance the prompt

Before calling the script, expand the user's prompt with style, lighting, and quality descriptors appropriate for the chosen model.

  • Midjourney: Add cinematic lighting, ultra detailed, --v 7, --style raw
  • Flux: Add masterpiece, highly detailed, sharp focus, professional photography
  • Ideogram: Be explicit about text content, font style, and layout
  • Recraft: Specify vector illustration, flat design, icon style

Step 2 — Run the script

node {baseDir}/tools/generate.js \
  --model <model_id> \
  --prompt "<enhanced prompt>" \
  --aspect-ratio <ratio>

All parameters:

ParameterDefaultDescription
--modelflux-devModel ID from the table above
--prompt(required)The image generation prompt
--aspect-ratio1:11:1, 16:9, 9:16, 4:3, 3:4, 3:2, 21:9
--num-images1Number of images (1–4; Midjourney always returns 4)
--negative-prompt—Things to avoid (not supported by Midjourney)
--seed—Seed for reproducibility

Step 3 — Return the result

The script always waits and returns the final image URL(s). No polling required.

{
  "success": true,
  "model": "flux-pro",
  "imageUrl": "https://...",
  "images": ["https://..."]
}

Send the imageUrl to the user.


Midjourney Actions

After generating a 4-image grid with Midjourney, offer the user these options:

# Upscale image #2 (subtle, preserves details)
node {baseDir}/tools/generate.js \
  --model midjourney \
  --action upscale \
  --index 2 \
  --job-id <job_id>

# Create a strong variation of image #3
node {baseDir}/tools/generate.js \
  --model midjourney \
  --action variation \
  --index 3 \
  --job-id <job_id> \
  --variation-type 1

# Regenerate with same prompt
node {baseDir}/tools/generate.js \
  --model midjourney \
  --action reroll \
  --job-id <job_id>

Upscale types: 0 = Subtle (default, best for photos), 1 = Creative (best for illustrations)

Variation types: 0 = Subtle (default), 1 = Strong (dramatic changes)


Example Conversations

User: "帮我画一只在雪山上的雪豹,电影感光效"

# Choose midjourney for artistic quality
node {baseDir}/tools/generate.js \
  --model midjourney \
  --prompt "a majestic snow leopard on a snowy mountain peak, cinematic lighting, dramatic atmosphere, ultra detailed --ar 16:9 --v 7" \
  --aspect-ratio 16:9

🎨 生成完成!想放大哪张?(U1-U4) 还是创建变体?(V1-V4)


User: "用 Flux 生成一张香水产品海报,白色背景"

# Choose flux-pro for photorealistic product shots
node {baseDir}/tools/generate.js \
  --model flux-pro \
  --prompt "a luxury perfume bottle on a clean white background, professional product photography, soft shadows, 8k, highly detailed" \
  --aspect-ratio 3:4

User: "快速给我看个草稿"

# flux-schnell for instant previews
node {baseDir}/tools/generate.js \
  --model flux-schnell \
  --prompt "..." \
  --aspect-ratio 1:1

User: "帮我做一个 App 图标,扁平风格,蓝色系"

# recraft for vector/icon style
node {baseDir}/tools/generate.js \
  --model recraft \
  --prompt "a minimal flat design app icon, blue color scheme, simple geometric shapes, vector style, white background"

Setup

Zero API keys needed! All requests go through a hosted proxy that handles authentication server-side.

The skill works out of the box — just install and use.

Advanced: Custom proxy or token

If you want to use your own proxy or a persistent token, set these environment variables:

{
  "skills": {
    "entries": {
      "image-studio": {
        "enabled": true,
        "env": {
          "IMAGE_STUDIO_PROXY_URL": "https://your-proxy.vercel.app",
          "IMAGE_STUDIO_TOKEN": "your_token_here"
        }
      }
    }
  }
}
VariableRequiredDescription
IMAGE_STUDIO_PROXY_URLNoCustom proxy base URL (default: https://image-gen-proxy.vercel.app)
IMAGE_STUDIO_TOKENNoPersistent token (auto-obtained if not set, 100 free uses per token)

To deploy your own proxy, see the audiomind proxy as a reference implementation. You'll need FAL_KEY and LEGNEXT_KEY as Vercel environment variables.


Changelog

v2.0.0

  • Simplified async: The script now blocks until Midjourney completes. No more --async / --poll flags needed in SKILL.md instructions.
  • Unified output format: All models return the same { success, imageUrl, images } shape.
  • Reference images for Nano Banana: Pass --reference-images "url1,url2" for character/style consistency across generations.

v1.3.0

  • Added non-blocking async mode for Midjourney (--async + --poll).

v1.2.0

  • Midjourney turbo mode enabled by default (~10-20s).

v1.1.0

  • Switched Midjourney provider from TTAPI to Legnext.ai for better stability.

v1.0.0

  • Initial release with Midjourney, Flux, SDXL, Nano Banana, Ideogram, Recraft.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Tired of juggling multiple audio APIs? This skill gives you one-command access to TTS, music generation, sound effects, and voice cloning. Use when you want to generate any audio without managing multiple API keys.

The English summary is being prepared. Showing the original description.

wells1137/media-skills24Updated Mar 4, 2026

Full-featured Kling 3.0 Omni video generation skill. Covers text-to-video, image-to-video, video editing (base mode), video reference (feature mode), multi-shot generation, and audio-synced video. Includes validated API constraint rules and prompt engineering guide.

The English summary is being prepared. Showing the original description.

wells1137/media-skills24Updated Mar 4, 2026

Expert prompt engineering for Seedance 2.0. Use when the user wants to generate a video with multimodal assets (images, videos, audio) and needs the best possible prompt.

The English summary is being prepared. Showing the original description.

wells1137/media-skills24Updated Mar 4, 2026

Adds professional packaging and motion graphics to videos. Use when the user asks to add intros, outros, subtitles, transitions, watermarks, or lower thirds to a video. Supports multiple styles and custom options, no API key required.

The English summary is being prepared. Showing the original description.

wells1137/media-skills24Updated Mar 4, 2026

Intelligently upscale and enhance videos to cinematic quality using a multi-model backend (Topaz, SeedVR2).

The English summary is being prepared. Showing the original description.

wells1137/media-skills24Updated Mar 4, 2026

See all skills by wells1137

Report a problem with this skill