Use when enriching shots with cinematic parameters (framing, angle, movement, mood, frame prompts). Runs after extracting-video-entities.
Enriches each shot in a shot-list.json with cinematic parameters: camera shot size, angle, movement, duration, mood tags, atmosphere, VFX type, frame prompts, and dialog lines. Writes shot-details.json.
<chapter-dir>/shot-list.json — from breaking-down-video-script<chapter-dir>/extraction-report.json — from extracting-video-entities (provides sceneIds)<chapter-dir>/shot-details.json — optional, existing details to preserve/update--chapter-dir <path>breaking-down-video-script (shot-list.json)extracting-video-entities (extraction-report.json, for sceneIds)shot-list.jsonextraction-report.jsoncameraShot: ECU | CU | MCU | MS | MLS | LS | ELSangle: EYE_LEVEL | HIGH_ANGLE | LOW_ANGLE | BIRD_EYE | DUTCH | OVER_SHOULDERmovement: STATIC | PAN | TILT | DOLLY_IN | DOLLY_OUT | TRACK | CRANE | HANDHELD | STEADICAM | ZOOM_IN | ZOOM_OUTduration (seconds, integer)moodTags (free-form array)atmosphere (free-form string)followAtmosphere (bool — inherit atmosphere from previous source shot)vfxType: NONE | PARTICLES | VOLUMETRIC_FOG | CG_DOUBLE | DIGITAL_ENVIRONMENT | MATTE_PAINTING | FIRE_SMOKE | WATER_SIM | DESTRUCTION | ENERGY_MAGIC | COMPOSITING_CLEANUP | SLOW_MOTION_TIME | OTHERsceneIds from extraction-report.jsonfirstFramePrompt, lastFramePrompt, keyFramePromptdialogLines (array)shot-details.json.<chapter-dir>/shot-details.jsonsource .env && node skills/enriching-shot-details/scripts/validate-shot-details.js --file <path>
followAtmosphere: true but no previous source shot: treat this shot as the source.Log to {project_dir}/logs/production.jsonl. See skills/lib/logging-guide.md for schema.
On invocation — key inputs: shot_list_path
On completion — key outputs: enriched_shot_list_path, shots_enriched (count)