Cinematic Script Writer
Create professional cinematic scripts for AI video generation with character consistency and cinematography knowledge. Use when the user wants to write a cinematic script, create s…
praveenspeaks
@praveenspeaks
What This Skill Does
Command-line tool for creating cinematic scripts optimized for AI video generation. Manages story contexts, character consistency sheets, voice profiles, and cinematography references (camera angles, lighting, color grading). Generates image prompts for Midjourney, Sora, and Veo, and saves projects to Google Drive or local storage.
Replaces manual script formatting and separate character sheets by providing a unified CLI for story development, cinematography guidance, and anachronism detection.
When to Use It
- Generate a cinematic script with character consistency for an AI video project
- Create a character reference sheet with visual descriptions and voice profiles
- Validate a video prompt for anachronisms against a story's era and setting
- Get camera angle and lighting recommendations for a specific scene type and mood
- Save a completed script and context to Google Drive for team collaboration
- Generate YouTube metadata (title, description, tags) from a finished script
Install
$ openclaw skills install @praveenspeaks/cinematic-script-writerCinematic Script Writer
Create professional cinematic scripts for AI video generation with character consistency and cinematography knowledge.
Installation
# Install via npm
npm install -g cinematic-script-writer
# Or install via OpenClaw CLI
openclaw skills install cinematic-script-writer
CLI Usage
Context Management
Create and manage story contexts with characters, era, and settings:
# Create a new story context
cinematic-script create-context --name "My Story" --era "Ancient India" --period "Ramayana Era"
# List all saved contexts
cinematic-script list-contexts
# Get a specific context
cinematic-script get-context --id <context-id>
# Delete a context
cinematic-script delete-context --id <context-id>
Story Generation
Generate story ideas and create cinematic scripts:
# Generate story ideas for a context
cinematic-script generate-ideas --context-id <context-id> --count 3
# Create a full cinematic script from an idea
cinematic-script create-script --context-id <context-id> --idea-id <idea-id>
# Generate YouTube metadata for a script
cinematic-script generate-metadata --script-id <script-id>
Cinematography Reference
Access camera angles, lighting, and shot type databases:
# List all camera angles
cinematic-script list-angles
# List all camera movements
cinematic-script list-movements
# List all shot types
cinematic-script list-shots
# Get camera setup recommendation
cinematic-script suggest-camera --scene-type "dialogue" --mood "dramatic"
# Get lighting suggestions
cinematic-script suggest-lighting --scene-type "interior" --mood "mysterious"
# Get color grading suggestions
cinematic-script suggest-grading --genre "action"
# Search cinematography database
cinematic-script search --query "low angle lighting"
Character Consistency
Create character references and validate prompts:
# Create a character reference sheet
cinematic-script create-character-ref --character-id "char1" --name "Kutil" --visual "Purple rakshasa with golden eyes" --era "Ancient" --style "Pixar 3D"
# Create a voice profile for dialogue consistency
cinematic-script create-voice --character-id "char1" --name "Kutil" --personality "Mischievous, witty" --age "adult" --role "protagonist"
# Validate a prompt for anachronisms
cinematic-script validate-prompt --prompt "Your prompt here" --character-ids "char1,char2" --context-id <context-id>
Storage
Save projects to Google Drive or local storage:
# Connect to Google Drive
cinematic-script connect-drive
# Connect to local storage
cinematic-script connect-local
# Check storage connection status
cinematic-script storage-status
# Save project to storage
cinematic-script save --title "My Story" --context-id <context-id> --script-id <script-id>
Storage implementation details:
- Google Drive: Uses Google OAuth2 for authentication. Credentials are stored securely in memory.
- Local Storage: Saves to the user's downloads folder as fallback.
- Library: Uses
googleapisfor Google Drive integration.
Export
Export scripts in various formats:
# Export as Markdown (default)
cinematic-script export --script-id <script-id> --format markdown
# Export as JSON
cinematic-script export --script-id <script-id> --format json
# Export as plain text
cinematic-script export --script-id <script-id> --format text
Features
- Story Context Management: Create and manage story settings, characters, and eras
- Story Idea Generation: Generate multiple story concepts with hooks and twists
- Cinematic Script Writing: Full scripts with camera angles, lighting, and shot types
- Character Consistency: Reference sheets and voice profiles for consistent characters
- Environment Consistency: Era-appropriate style guides and anachronism detection
- YouTube Metadata: Generate titles, descriptions, and SEO tags
- Storage Integration: Save to Google Drive or local storage
- Export Options: JSON, Markdown, or plain text formats
When to Use
- Writing cinematic scripts or screenplays
- Creating stories with characters for animation/video
- Generating image/video prompts for AI tools (Midjourney, Sora, Veo, Runway)
- Getting cinematography guidance (camera angles, lighting, color grading)
- Maintaining character consistency across scenes
- Saving script projects to Google Drive
Cinematography Reference
Camera Angles
| Angle | Emotional Impact | Best For |
|---|---|---|
| Eye-level | Connection, equality, neutrality | Dialogue, emotional moments |
| Low-angle | Power, dominance, heroism | Villain reveals, hero moments |
| High-angle | Vulnerability, weakness, overview | Defeat, establishing scale |
| Bird-eye | Insignificance, detachment, patterns | Epic scale, isolation |
| Worm-eye | Awe, grandeur, overwhelming presence | Monuments, giants, deities |
| Dutch angle | Unease, disorientation, tension | Chaos, dreams, horror |
| Overhead | Omniscience, surveillance | Table scenes, fight choreography |
| Shoulder-level | Intimate, casual, documentary feel | Walking conversations |
| Hip-level | Cowboy feel, casual tension | Westerns, standoffs |
| Knee-level | Childlike perspective, grounding | Children's stories, humility |
Camera Movements
| Movement | Effect | Use For |
|---|---|---|
| Static | Stability, observation | Contemplation, portraits |
| Pan | Revealing space | Following action horizontally |
| Tilt | Revealing height | Following vertical action |
| Dolly | Immersion, intimacy | Moving toward/away from subject |
| Truck | Following action | Side-to-side parallel movement |
| Crane | Epic scale, drama | Sweeping reveals, transitions |
| Handheld | Urgency, realism | Documentary, action, chaos |
| Steadicam | Smooth floating | Following through space, dreams |
| Zoom | Sudden focus, surprise | Dramatic emphasis, comedy |
| Rack-focus | Revealing connections | Shifting attention between subjects |
Shot Types
| Shot | Framing | Emotional Impact |
|---|---|---|
| Establishing | Wide location | Sets scene, geography, time |
| Wide/Full | Subject + surroundings | Context, environment, scale |
| Medium | Waist up | Dialogue, body language |
| Close-up | Head/shoulders | Emotion, reaction, intimacy |
| Extreme close-up | Detail only (eyes, hands) | Intense emotion, symbolism |
| Over-shoulder | Past one subject to another | Conversation, perspective |
| POV | Character's view | Immersion, subjectivity |
| Insert | Object detail | Plot info, symbolism |
| Two-shot | Two subjects together | Relationship, tension |
Lighting Techniques
| Technique | Mood | Best For |
|---|---|---|
| Three-point | Professional, balanced | Dialogue, interviews |
| High-key | Happy, optimistic, bright | Comedy, commercials |
| Low-key | Dramatic, mysterious | Drama, horror, noir |
| Golden-hour | Romantic, nostalgic, magical | Romance, emotional moments |
| Blue-hour | Melancholic, mysterious | Urban, cityscapes |
| Chiaroscuro | Dramatic contrast | Art films, period pieces |
| Rim/backlight | Separation, ethereal | Silhouettes, divine presence |
| Practical | Realistic, natural | Candles, fires, lamps |
| God-rays | Divine, revelation | Spiritual moments, forests |
| Neon | Urban, futuristic | Cyberpunk, nightlife |
Color Grading
| Style | Look | Genre |
|---|---|---|
| Teal-orange | Blockbuster cinematic | Action, sci-fi |
| Noir | High-contrast desaturated | Crime, mystery |
| Vintage/sepia | Warm, nostalgic | Period pieces, memory |
| Pastel | Soft, dreamy | Romance, coming-of-age |
| Bleach bypass | Desaturated, gritty | War, thriller |
| Cross-process | Surreal colors | Music videos, dreams |
Image Prompt Format
When generating image prompts for AI tools:
[Shot type] [camera angle] of [subject doing action], [visual style] style,
[lighting technique], [composition rule], [color grading],
[era-appropriate details], [mood keywords], highly detailed, cinematic
Example:
Low-angle close-up of Kutil the purple rakshasa with mischievous golden eyes,
Pixar 3D style, dramatic underlighting with rim light, rule-of-thirds composition,
warm golden color grading, ancient Lanka palace background with ornate pillars,
playful yet mysterious mood, highly detailed, cinematic, 8k
Output Structure
When saving a project, the following files are generated:
Story Title/
├── 00_INDEX.md # Navigation
├── 01_SCRIPT_README.md # Human-readable script
├── 02_IMAGE_PROMPTS.md # All AI generation prompts
├── 03_CHARACTER_REFS.md # Character design guides
├── 04_VOICE_GUIDES.md # Dialogue consistency guides
├── 05_YOUTUBE_META.md # Title, description, tags
└── 99_CONTEXT_INFO.md # Story context and background
Important Rules
- Always maintain character consistency - include character's full visual description in every image prompt
- Never include anachronisms - validate props, clothing, objects against the era
- Match cinematography to emotion - use low angles for power, high angles for vulnerability
- Include both image and video prompts - image prompts are static, video prompts describe motion
- Production-ready output - every script should include enough detail for a team to produce it
- Respect the tone - comedy needs comedic timing; drama needs longer holds on reactions
License
MIT
Author
Praveen Kumar
Top skills in this category
YouTube Watcher
@michaelgatharaFetch and read transcripts from YouTube videos. Use when you need to summarize a video, answer questions about its content, or extract information from it.
YouTube
@byungkyuYouTube Data API integration with managed OAuth. Search videos, manage playlists, access channel data, and interact with comments. Use this skill when users want to interact with YouTube. For other third party apps, use the api-gateway skill (https://clawhub.ai/byungkyu/api-gateway). Calls run through the `maton` CLI with OAuth login, or over raw HTTP with a Maton API key where the CLI cannot be installed. Every call is authenticated as the user's connection and reaches only what that connection's authorization allows, which the provider enforces on every request; the endpoints documented here are the ones this skill uses, and any other endpoint of this app needs the user to ask for it by name. Default to read and list calls, and confirm every write or new connection with the user. This file also documents the three constructs that turn a YouTube connection into automation, in the order they are used: the connection (the first step), a hosted function that runs a YouTube action through the Maton SDK, and a trigger that calls that function on a schedule or on an event. Those sections are the platform's own reference text, shared with the api-gateway skill, with YouTube examples; they add no YouTube capability - YouTube is not an event source, a trigger cannot read YouTube data, and the files under `references/<source>/triggers.md` are the platform's event catalogues for the sources Maton offers (time, Calendly, GitHub, Gmail, HubSpot, Linear, Notion, Slack, Stripe).
Screenshot
@ivangdavilaCapture, inspect, and compare screenshots of screens, windows, regions, web pages, simulators, and CI runs with the right tool, wait strategy, viewport, and...
YouTube Transcript
@xthezealotFetch and summarize YouTube video transcripts. Use when asked to summarize, transcribe, or extract content from YouTube videos. Handles transcript fetching via residential IP proxy to bypass YouTube's cloud IP blocks.
Wechat Article Search
@wuchubuzai2018搜索微信公众号文章技能。通过微信搜索获取文章列表,覆盖科技/AI、社会热点、财经、教育、职场等各类中文资讯;可按关键词检索并返回标题、概要、发布时间、来源公众号与链接。当用户需要查找微信公众号文章、整理参考资料或快速获取文章信息时使用此技能。