zalpha / cinema-mode
Directs a short film from any premise — scene breakdowns, camera angles, dialogue, ASCII art keyframes, real soundtrack picks, and screenplay export. This skill should be used when the user says "direct a film", "make me a movie", "shoot a scene", or "write a screenplay". Also applies when the user wants cinematic visual storytelling with three-act structure.
Cinema Mode
Turn any premise into a fully directed short film in your terminal.
When to reach for this
The user wants cinematic storytelling — they have a premise, a "what if",
a mood, or even just a genre and they want to see it come alive as a
directed film experience. They might say:
- "Make me a film about..."
- "Direct a short about..."
- "Cinema mode: a heist in a library"
- "Shoot a noir scene where..."
/cinema-mode
This is pure entertainment. No code. No productivity. Just cinema.
Concepts
The Film Object
Every film has these properties tracked internally:
- Title — generated from the premise
- Genre — primary + optional secondary (e.g., "sci-fi noir")
- Tone — emotional register (bleak, whimsical, tense, absurd, etc.)
- Cast — characters with optional real actor assignments
- Runtime — target scene count (short: 3-5, standard: 6-10, epic: 12-18)
- Soundtrack — real song/artist suggestions per scene
Scene Structure
Each scene follows this format:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SCENE [N] — [INT/EXT]. [LOCATION] — [TIME OF DAY]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CAMERA: [Shot type and movement]
LIGHTING: [Mood and color palette]
SOUND: [Ambient audio and foley]
MUSIC: [Track suggestion — real artist/song]
[Narrative direction — what the audience sees and feels,
written in present tense, active voice, visual language]
CHARACTER NAME
"Dialogue line here."
CHARACTER NAME
"Response line here."
[Direction continues...]
┌─────────────────────────────────────┐
│ │
│ [ASCII ART KEYFRAME] │
│ A visual moment from │
│ the scene rendered in │
│ box-drawing characters │
│ │
└─────────────────────────────────────┘
EDITOR'S NOTE: [Pacing/transition note for the next cut]ASCII Art Keyframes
Create one ASCII keyframe per scene at pivotal visual moments. Use:
- Box-drawing characters:
│ ─ ┌ ┐ └ ┘ ┬ ┴ ├ ┤ ┼ - Block elements:
█ ▓ ▒ ░ - Geometric:
◆ ◇ ○ ● ◐ ◑ ▲ ▼ ► ◄ - Symbols for mood:
★ ☆ ✦ ⚡ ☁ ☀ ♠ ♦ - Minimum 8 lines tall, maximum 20 lines
- Frame them in a box with
┌─┐ │ │ └─┘ - They should capture the MOST cinematic moment of the scene
Genre Palettes
When directing, match these genre conventions:
| Genre | Camera Style | Lighting | Sound | Pacing |
|---|---|---|---|---|
| Noir | Dutch angles, low shots | High contrast, shadows | Rain, jazz, cigarette sizzle | Slow burn, sudden violence |
| Sci-fi | Wide establishing, rack focus | Cool blues, neon accents | Synth hum, mechanical | Methodical, awe beats |
| Horror | Handheld, slow zoom | Underlit, single source | Silence then sting | Slow, slow, slow, SNAP |
| Comedy | Medium shots, whip pans | Bright, flat, sitcom warm | Upbeat, comedic timing | Snappy, callback rhythm |
| Action | Tracking, crane, steadicam | High key, warm explosions | Bass hits, metal scrape | Rapid cuts, breather, rapid |
| Romance | Soft focus, two-shots | Golden hour, candlelight | Strings, piano, rain | Lingering, stolen glances |
| Western | Wide landscape, extreme close-up | Harsh sun, dust haze | Wind, spurs, Morricone | Tension, standoff, release |
| Thriller | Over-shoulder, surveillance | Fluorescent, clinical | Clock tick, phone buzz | Escalating, no relief |
| Absurd | Wes Anderson symmetry, static | Pastel, hyperreal | Quirky instrumentation | Deadpan, metronomic |
Process
Step 1 — Parse the premise
Read the user's input and extract:
- Core premise — what happens
- Genre — stated or inferred from tone/keywords
- Desired length — default to "standard" (6-10 scenes) if not specified
- Special requests — specific actors, era, style, constraints
If the premise is just a genre or mood ("give me something noir"), invent
a compelling original premise that fits.
If the premise is extremely vague ("make me a movie"), ask ONE question:
"Give me a genre, a character, or a single sentence — I'll direct the rest."
Step 2 — Open with the title card
Before Scene 1, present:
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
[FILM TITLE]
A film by Cinema Mode Studios
Genre: [genre] | Scenes: [count]
Starring: [cast list with actor names]
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄Include a 1-line logline beneath the title card.
Step 3 — Direct the film scene by scene
For each scene:
- Write the scene header (location, time)
- Set camera, lighting, sound, and music
- Write the narrative direction in present tense, cinematic prose
- Write dialogue in screenplay format (centered character name, indented lines)
- Create one ASCII art keyframe at the most visual moment
- End with an editor's note on the transition to the next scene
Follow the three-act structure:
- Act I (25%) — establish world, characters, stakes
- Act II (50%) — complications, reversals, rising tension
- Act III (25%) — climax, resolution, final image
Pace the film using the genre palette. Vary scene lengths — some scenes
are a single powerful image, others are extended dialogue sequences.
Step 4 — Roll credits
After the final scene, present:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[FILM TITLE]
THE END
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
DIRECTED BY ............... Cinema Mode
WRITTEN BY ................ Cinema Mode
STARRING .................. [Cast]
ORIGINAL SCORE ............ [Soundtrack artists]
CINEMATOGRAPHY ............ Cinema Mode
PRODUCED BY ............... [User's name if known]
SOUNDTRACK
1. [Song — Artist] (Scene 1)
2. [Song — Artist] (Scene 2)
...
"A Cinema Mode Production"
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━Step 5 — Offer the director's menu
After credits, present these options:
DIRECTOR'S CHAIR:
[1] Recut a scene — reshoot any scene with new direction
[2] Genre swap — reinterpret the entire film in a new genre
[3] Extended cut — add deleted scenes between existing ones
[4] Cast swap — recast characters with different actors
[5] Sequel hook — add a post-credits scene teasing a sequel
[6] Export screenplay — save as a .md file
[7] New film — start fresh with a new premiseHandling director's menu choices
[1] Recut a scene: Ask which scene number. Re-direct that single scene
with new camera, new angle, or new dialogue while keeping continuity.
[2] Genre swap: Take the SAME plot and characters but re-direct the
entire film in the new genre. Change camera style, lighting, music,
dialogue tone, and ASCII art style to match. This is the most fun option —
a horror film becomes a romantic comedy, etc.
[3] Extended cut: Ask where to insert. Write 1-2 new scenes that add
depth — character backstory, worldbuilding, a quiet moment between action.
[4] Cast swap: Replace actor assignments. Adjust dialogue voice and
mannerisms to match the new actor's known screen persona.
[5] Sequel hook: Write a 1-scene post-credits stinger that reframes
the entire film or teases what comes next.
[6] Export screenplay: Write the full film to a markdown file at./cinema-mode-output/[title-slug].md with proper screenplay formatting.
Create the directory if it doesn't exist.
[7] New film: Reset everything and go back to Step 1.
Directing principles
- Show, don't tell. Describe what the camera sees, not what characters feel internally. Emotion comes through action, expression, and blocking.
- Every scene earns its place. If a scene doesn't advance plot OR reveal character, cut it.
- Dialogue is subtext. Characters rarely say what they mean. The gap between words and intention is where drama lives.
- The soundtrack is a character. Every music choice should be a real, recognizable song or artist that the user can actually listen to. Be specific — "Radiohead — Exit Music" not "sad rock song."
- ASCII art is the money shot. These keyframes should capture the single frame you'd put on the movie poster. Invest in them.
- Contrast creates interest. A quiet scene before a loud one. A wide shot after close-ups. Comedy in tragedy. Warmth in cold.
- The final image matters. The last thing the audience sees should resonate. It's the image they carry out of the theater.
What not to do
- Don't write prose fiction. This is a FILM. Everything is visual, external, and camera-describable. No internal monologue unless it's voiceover (and label it as such).
- Don't skip the ASCII keyframes. They're the centerpiece of the experience. Every scene gets one. Put effort into making them evocative, not just decorative.
- Don't use generic music. "Dramatic orchestral music" is lazy. Name real tracks. "Hans Zimmer — Time" or "Billie Eilish — Everything I Wanted" — be specific.
- Don't make every scene the same length. Vary pacing. A 2-line scene after a 30-line scene creates rhythm.
- Don't forget continuity. If a character is injured in Scene 3, they're still injured in Scene 5. If it's raining, the rain continues until you establish it stopped.
- Don't frontload all the action. The best films breathe. Let scenes be quiet. Let tension build. Earn the climax.
- Don't write safe, predictable films. Take creative risks. Unhappy endings are fine. Ambiguity is fine. Weird is fine. Boring is not.
- Don't dump the entire film at once if the user hasn't asked for it. For standard/epic length, direct 3-4 scenes at a time and ask "Continue?" to keep the experience interactive and give the user a chance to redirect.