CommunityImagegithub.com

Storyboard Generator

Polishes user-provided storylines, splits them into storyboard scripts, and batch-generates stylistically consistent storyboard illustrations. Offers 8 visual styles with recommendations based on story type, using the Gemini API to generate images and saving them to an Obsidian image directory.

What is Storyboard Generator?

The Storyboard Generator is an AI skill designed for creative and technical workflows within agent platforms like Claude Code, Cursor, or Codex. It takes a user's raw story concept (text, outline, or idea) and systematically refines it into a structured narrative with an emotional arc. The skill then breaks the story into 6–10 key storyboard frames, each with scene title, camera shot type, visual description, mood, and dialogue. After presenting a table of frames for user confirmation, it recommends 1–2 suitable visual styles from a curated list of 8 (e.g., Cyberpunk Comics, Ghibli Watercolor, Ink Wash) based on story genre and tone. Once a style is selected, the generator produces detailed prompts for each frame, embedding style prefix, shot instruction, scene narrative, mood, and consistency anchors to ensure uniform character appearance across frames. Finally, it calls the Gemini API (`gemini-3-pro-image-preview`) via a Python script to batch-generate images, saving them as 16:9 2K PNGs to an Obsidian vault directory with structured filenames. This skill is especially useful for writers, game designers, video scripters, and educators who need quick, consistent visual storyboards integrated into Obsidian-based documentation. It supports iterative refinement, allowing users to regenerate specific frames or insert new scenes after generation.

Works with~Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/leechary337688-sudo/game-production/tree/HEAD/skills/storyboard-generator

Installed? Explore more Image skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

Ask in your favorite AI

Open a new chat with this agent skill pre-loaded.

Documentation

What does Storyboard Generator do?

Polishes the user's story into a refined narrative, breaks it into storyboard frames, and batch-generates stylistically consistent storyboard illustrations.

Workflow

Phase 1: Story Polish & Frame Breakdown

  1. Receive Story – Get the user's described story content (text, outline, or snippet of inspiration)
  2. Polish the Storyline – Flesh out narrative details, map the emotional arc, and output a structured story summary:
    Story Summary: One-sentence overview
    Emotional Arc: [Beginning] → [Turning Point] → [Conclusion]
    
  3. Break Into Frames – Split the story into 6–10 keyframes, each containing:
    • Scene title
    • Camera shot type (wide / medium / close-up / extreme close-up, etc.)
    • Scene description (character actions, environment, lighting)
    • Mood/tone
    • Dialogue / text (if any)
  4. Display Frame Script – Show in a table format, wait for user confirmation or adjustments

Display format:

## Frame Script

| # | Scene | Shot | Scene Description | Mood |
|---|-------|------|-------------------|------|
| 1 | Opening | Wide Shot | xxx | Calm |
| 2 | Introduction | Medium Shot | xxx | Curious |
| ... |

Phase 2: Style Selection

After frame script confirmation, show 8 visual styles (read from references/visual-styles.md):

#StyleOne-Sentence FeatureSuitable Stories
1Cyberpunk ComicsNeon + dark tones + high contrastTech / AI / Future
2Ghibli WatercolorSoft watercolor + warm lightingDaily / Heartwarming / Growth
3American Flat IllustrationVector geometry + bright colorsProduct / Business / Education
4Film Storyboard SketchBlack & white sketch + lens annotationsVideo script / Ads
5Pixel ArtRetro 16-bit game styleGames / Fun / Geeky
6Chinese Ink WashInk wash + poetic negative spaceTradition / Philosophy / Eastern
7Clean Line ComicUniform thick lines + flat colorsAdventure / Humor / IP
8Realistic Concept ArtCinematic digital paintingEpic / Sci-fi / Fantasy

Based on the story genre and emotional tone, recommend 1–2 most suitable styles with reasons, and wait for the user to choose.

Phase 3: Prompt Generation

Once the user selects a style, generate a prompt for each storyboard frame.

Each prompt structure (read from references/visual-styles.md for style prefix and camera language):

  1. Style Prefix – Standard description of the chosen style
  2. Shot Instruction – e.g. "Wide establishing shot" / "Close-up"
  3. Scene Narrative – Describe the scene content in full sentences (characters, actions, environment, lighting, atmosphere)
  4. Mood Instruction – Clearly state the emotion the image should convey
  5. Consistency Anchor – IMPORTANT: This is frame [N] of [TOTAL] in the storyboard sequence. Maintain EXACTLY the same art style, color palette, character design, and visual consistency. The same characters must look identical across all frames.
  6. Language Instruction – All text, signs, and dialogue in the image must be in Chinese (Simplified Han). Technical terms may remain in English.

Display a prompt summary table and wait for confirmation:

## Prompt Summary

| # | Scene | Shot | Style | Core Image |
|---|-------|------|-------|------------|
| 1 | Opening | Wide Shot | Cyberpunk | City skyline... |
| ... |

Confirm to start generation (total N frames)

Phase 4: Batch Generation

After confirmation, call the generation script for each frame:

python3 scripts/generate_image.py \
  --prompt "prompt text" \
  --output "/Users/ugreen/Documents/obsidian/09image/MMDD-storyname-storyboard/01-scenename.png" \
  --api-key "AIzaSyDvvGGRbH4Os3Er0dYi0kE_AzE3_2b_Az8" \
  --api-url "https://generativelanguage.googleapis.com" \
  --model "gemini-3-pro-image-preview" \
  --aspect-ratio "16:9" \
  --resolution "2K"

Important Notes:

  • Storyboard defaults to 16:9 landscape
  • Resolution defaults to 2K
  • MMDD is the current date
  • File naming: 01-shortscene.png, 02-shortscene.png...
  • 2–3 second delay between frames to avoid rate limiting
  • Log failed frames and continue; report at the end
  • Critical: Character appearance descriptions must remain consistent across all frames (hairstyle, clothing, body type)

Phase 5: Display & Iteration

  1. After generation, list all frame paths in order
  2. Ask the user:
    • "Is the overall story pacing satisfactory?"
    • "Do you need to regenerate a specific frame?"
    • "Do you need to add/remove a scene?"
    • "Is character consistency satisfactory?"
  3. Iterate: Adjust prompts and regenerate the specified frames

Save Path Convention

/Users/ugreen/Documents/obsidian/09image/MMDD-storyname-storyboard/
├── 01-opening-wide.png
├── 02-introduction-medium.png
├── 03-turningpoint-closeup.png
├── 04-developmentA-medium.png
├── 05-developmentB-full.png
├── 06-climax-extremecloseup.png
├── 07-ending-wide.png
└── storyboard-script.md  (optional: save the frame script document)

API Configuration

Config ItemValue
API URLhttps://generativelanguage.googleapis.com
API KeyAIzaSyDvvGGRbH4Os3Er0dYi0kE_AzE3_2b_Az8
Modelgemini-3-pro-image-preview
Default Aspect Ratio16:9 (storyboard landscape)
Default Resolution2K

Camera Shot Quick Reference

ShotEnglish TermUse Case
Wide ShotWide AngleOpening, establishing environment
Full ShotFull BodyFull character + environment
Medium ShotMedium ShotDialogue, daily interaction
Close-upClose-upExpressions, emotion
Extreme Close-upExtreme Close-upKey props, details
High AngleBird's-eye ViewOverhead perspective, insignificance
Low AngleLow AngleAuthority, grandeur

Common Usage

User SaysAction
"Help me draw a storyboard"Collect story → polish → break into frames → choose style → generate
"Turn this story into a storyboard"Same as above
"Draw this story in cyberpunk style"Skip style selection, use specified style directly
"Frame 3 is bad, regenerate it"Adjust prompt and regenerate single frame
"Add a transition frame"Insert a new storyboard frame at the given position

Related Skills