When it comes to local image generation, Flux is currently the heavyweight champion. Specifically, the x/flux2-klein model (5.7GB) on Ollama has become my go-to “creative engine.” It’s an open-source powerhouse with no commercial restrictions on what you generate, and it runs beautifully on local hardware.
But here is the thing: if you just type “a cat” into a raw image model, you’ll get a generic cat.
To get cinematic results, you need to steer the aesthetic. You need to anchor the model in a specific visual language. And for that, there is no better “state-anchor” than the symmetrical, color-coded world of Wes Anderson.
In this post, I’ll show you how to wrap Flux in a simple Bash function that lets you generate three distinct styles—Chibi, Realistic, and Cartoon—using iconic Wes Anderson color palettes.
The Concept: The Stylistic Wrapper
Instead of manually typing long prompts every time, we can create a “wrapper” that handles the heavy lifting of color theory and composition. We’re essentially building a “Cinema Edition” of Flux on our command line.
We’ve mapped out three iconic film palettes:
- The Grand Budapest (Pinks, Purples, Gold)
- The Life Aquatic (Zissou Blue, Bold Red, Yellow)
- Moonrise Kingdom (Khaki, Burnt Orange, Sage)
The Tool: flux_cinema
Copy this function into your .zshrc or .bashrc file. It uses expect to automate the Ollama interactive shell, setting the dimensions and injecting the stylistic constraints for you.
# Local Flux Cinema Wrapper
# Usage: flux_cinema [-g|-a|-k] [-c|-r|-f] "Your scene description"
flux_cinema() {
local width=960
local height=544
local palette="grand" # Default: Grand Budapest
local style="cartoon" # Default: Flat 2D
# --- Flag Logic ---
while [[ "$1" == -* ]]; do
case "$1" in
-g) palette="grand" ;; # Grand Budapest (Pink/Purple/Gold)
-a) palette="aquatic" ;; # Life Aquatic (Blue/Red/Yellow)
-k) palette="kingdom" ;; # Moonrise Kingdom (Khaki/Orange/Sage)
-c) style="chibi" ;; # Style: Whimsical Chibi
-r) style="realistic" ;; # Style: Cinematic Photo (35mm)
-f) style="cartoon" ;; # Style: Flat 2D Vector
esac
shift
done
local scene="$*"
# --- Palette & Style Mapping ---
case "$palette" in
grand) colors="#FDE8EF pink, #784283 purple, #DDD690 gold"; bg="#FDE8EF" ;;
aquatic) colors="#0097C3 blue, #C22426 red, #FAF111 yellow"; bg="#0097C3" ;;
kingdom) colors="#F2D649 khaki, #C76734 burnt orange, #C9CD9B sage"; bg="#F2D649" ;;
esac
case "$style" in
chibi) s_prompt="chibi style illustration, adorable proportions, diorama feel" ;;
realistic) s_prompt="cinematic photography, 35mm lens, Kodachrome film grain" ;;
cartoon) s_prompt="flat 2D vector illustration, clean minimalist lines, storybook" ;;
esac
local final_prompt="background: solid ${bg}, style: Wes Anderson aesthetic, ${s_prompt}, colors: ${colors}, scene: ${scene}, constraints: perfectly symmetrical, centered subject, deadpan expression, No Text"
echo "🎥 Rolling: $scene [$palette palette | $style style]..."
/usr/bin/expect <<EOD
spawn ollama run x/flux2-klein
expect ">>>"
send "/set width $width\r"
expect ">>>"
send "/set height $height\r"
expect ">>>"
send "$final_prompt\r"
set timeout 600
expect ">>>"
send "/bye\r"
expect eof
EOD
}
Choose Your Film, Choose Your Style
The power of this setup is in the flags. You no longer have to worry about color codes or aspect ratios; you just choose the “vibe.”
1. The Whimsical Chibi (-c)
Perfect for character concepts that feel like high-end dioramas.
flux_cinema -g -c "A small fox in a concierge uniform"
2. The Cinematic Realistic (-r)
Uses 35mm lens constraints and film grain to make the local generation look like a lost frame from a 1970s indie movie.
flux_cinema -a -r "An interior view of a research submarine"
3. The Minimalist Cartoon (-f)
A clean, flat vector look inspired by vintage storybooks.
flux_cinema -k -f "A lone tent in a vast grassy field"
Why Local Matters
Running x/flux2-klein locally isn’t just about saving credits. It’s about intent. When you own the hardware and the model, you can build these specific workflows that turn a general AI into a specialized tool.
By wrapping the model in a stylistic “wrapper,” you’re not just generating images—you’re directing a digital set.
Your hardware. Your rules. Your cinema.
Explore the Framework
These concepts are part of a broader framework for building intent-aware AI systems. I've distilled these strategies into a short, practical guide called Thinking Modes.
View the Book →