Catalog
fairoosansar-coder/cover-image-generation

fairoosansar-coder

cover-image-generation

Generate cover images for the radio show using Gemini 3 Flash Image (with fallback to Pro).

v1.0LATEST
NewUpdated Oct 29, 2026

Image Generation Skill

This skill generates an appropriate cover image for the radio show based on a prompt, using the Gemini 3 Flash Image model, with a fallback to the Gemini 3 Pro Image model ("Nano Banana Pro") if needed.

Requirements

  • Python 3.10+
  • google-genai Python package (>= 2.0.1)

Instructions

  1. Generate an image (Recommended: use the metadata file directly):

    python3 skills/cover-image-generation/scripts/generate_image.py \
      --workspace ./workspace \
      --metadata ./workspace/data/show_notes.json
    

    Note: Using --metadata will automatically extract the show title and apply a random, high-quality prompt template. This is the preferred method.

    Alternative (Manual prompt):

    python3 skills/cover-image-generation/scripts/generate_image.py \
      --workspace ./workspace \
      --prompt "A prompt describing the image"
    
  2. Output:

    • The image will be saved to {workspace}/images/cover.png.

Model

  • Primary Model: gemini-3.1-flash-image
  • Fallback Model: gemini-3.1-pro-image
  • Resolution: 1:1 (default)

Prompting rules

When using the --metadata option, this skill uses a set of predefined prompt templates and selects one at random to generate cover images. It dynamically inserts the show title into the selected template.

  • Example Prompt: "A professional podcast cover image for a show titled 'AI Talk Radio' on the 'AI Talk Radio' station. The design features the text 'AI Talk Radio' in a bold, stylish white font centered on the cover. The background is a vibrant purple with a textured water ripple effect that covers the entire frame, creating a dynamic and clean aesthetic."

If you choose to use the --prompt option instead, you must construct the prompt yourself. In that case, follow these rules:

Forbidden themes

  • Do not ask for futuristic, cyberpunk or neon themes
  • Do not include any text other than the show title
Files1
1 files · 7.5 KB

Select a file to preview

Overall Score

78/100

Grade

B

Good

Grades are signals, not a certification. Always review a skill yourself before use.

Safety

82

Quality

78

Clarity

80

Completeness

72

Summary

This skill generates cover images for a radio show using Google's Gemini 3 Flash Image model with fallback to Gemini 3 Pro. It accepts either a custom prompt or auto-generates one from show metadata (title, summary) using randomized design templates. The script handles failures gracefully by falling back to alternative models and eventually exiting without error if all attempts fail.

Detected Capabilities

file read (JSON metadata)file write (image output)environment variable read (GEMINI_API_KEY)external API calls (Google Gemini API)Python subprocess executionsignal handling (timeout management)

Trigger Keywords

Phrases that agents use to match this skill to user intent.

generate podcast covercreate show artworkimage generationcover art for showgemini image generation

Risk Signals

INFO

Environment variable read for API credentials (GEMINI_API_KEY)

scripts/generate_image.py:line 69
INFO

Outbound API calls to Google Gemini service

scripts/generate_image.py:lines 84-95
INFO

File write to workspace directory with dynamic path construction

scripts/generate_image.py:line 37
INFO

Fallback model strategy without explicit model version pinning

scripts/generate_image.py:lines 78-79

Use Cases

  • Generate branded podcast cover images from show metadata
  • Create cover art with consistent styling using predefined design templates
  • Produce fallback cover images when primary models are unavailable
  • Batch-generate radio show artwork with automatic title insertion

Quality Notes

  • ✅ Clear separation of concerns: metadata parsing, prompt template selection, API interaction, and error handling are well-organized.
  • ✅ Graceful degradation: skill falls back to Pro model if Flash fails, then exits cleanly if all options fail (no hard failure).
  • ✅ Timeout protection: 120-second timeout using signal.alarm() prevents indefinite hangs during image generation.
  • ✅ Prompt safety: forbidden themes (cyberpunk, neon, extraneous text) documented and enforced via template design.
  • ✅ Good error messages: console output clearly indicates which model is being tried and what failed.
  • ⚠️ API key handling: uses environment variable with fallback to 'dummy-key' (acceptable for demo, but real deployments should require explicit API key).
  • ⚠️ Metadata validation: minimal validation — assumes 'show_title' key exists, silently defaults to 'AI Talk Radio' if missing.
  • ⚠️ Reference image feature undocumented: `--reference` parameter exists in code but is not mentioned in the SKILL.md instructions.
  • ✅ Output path defaults are sensible and workspace-aware.
Model: claude-haiku-4-5-20251001Analyzed: Oct 29, 2026

Reviews

Add this skill to your library to leave a review.

No reviews yet

Be the first to share your experience.

Use fairoosansar-coder/cover-image-generation in your dev environment

Command Palette

Search for a command to run...