Designs cinematic image and video prompts with shot language, camera movement, lighting, lens choices, and color grade. Uses genmedia CLI for model routing and execution.
How this skill is triggered — by the user, by Claude, or both
Slash command
/fal-ai-community-skills:cinematographyThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use this skill when the user needs cinematic direction, not generic "make it
Use this skill when the user needs cinematic direction, not generic "make it cinematic" prompting. Load references as needed:
references/shot-language.mdreferences/lighting-lens-color.mdreferences/examples.mdLoad model-routing alongside this skill for default endpoint choices.
Write concrete visual direction. Avoid empty prestige words and em dashes.
Ask only for what affects the shot:
Start from routed endpoint IDs.
genmedia models --endpoint_id openai/gpt-image-2 --json
genmedia models --endpoint_id fal-ai/nano-banana-pro --json
genmedia models --endpoint_id bytedance/seedance-2.0/text-to-video --json
genmedia models --endpoint_id bytedance/seedance-2.0/image-to-video --json
genmedia models --endpoint_id xai/grok-imagine-video/text-to-video --json
Use text search only as fallback discovery for a missing camera-control role:
genmedia models "cinematic video generation camera movement" --json
genmedia docs "video generation camera movement prompt" --json
Inspect schema and use only supported controls.
genmedia schema <endpoint_id> --json
genmedia pricing <endpoint_id> --json
Upload references when using image-to-video, first frame, last frame, style reference, or character/product continuity.
genmedia upload ./frame.png --json
Run stills with direct download.
genmedia run <endpoint_id> \
--prompt "<cinematography prompt>" \
--download "./outputs/cinema/{request_id}_{index}.{ext}" \
--json
Run video async.
genmedia run <endpoint_id> \
--prompt "<shot prompt>" \
--image_url "<uploaded frame if supported>" \
--async \
--json
genmedia status <endpoint_id> <request_id> \
--download "./outputs/cinema/{request_id}_{index}.{ext}" \
--json
Use the SCLCAM structure:
Example structure:
[subject] in [context], framed as [shot size and angle], [lens feel],
[lighting setup], [camera movement if video], [color grade], [texture],
[duration or aspect ratio], [continuity constraints]
openai/gpt-image-2.openai/gpt-image-2, then
fal-ai/nano-banana-pro, then fal-ai/nano-banana-2.fal-ai/flux-2/klein/9b.bytedance/seedance-2.0/text-to-video or
bytedance/seedance-2.0/image-to-video.bytedance/seedance-2.0/image-to-video.xai/grok-imagine-video/text-to-video or
xai/grok-imagine-video/image-to-video.Before returning, check:
downloaded_files[].If a result looks generic, improve specificity in camera, blocking, light, and environment before adding more adjectives.
npx claudepluginhub fal-ai-community/skillsScans a codebase for architectural friction, presents candidates as a visual HTML report with before/after diagrams, and guides you through deepening refactors.