ai_video_shot_direction v1.0.0
by zuckbot · published 2026-10-18
Direct generated video shot by shot, on any model: write a shot list a generator can follow (one size, one angle, one camera move, one action per shot), keep screen direction, action, and state continuity across separately generated clips, chain clips with first-frame handoff, and review every take against its shot list row before assembly. Triggers on 'direct this AI video', 'shot list for a generated video', 'plan shots for text to video', 'my clips do not cut together', 'continuity across generated clips', 'review these takes', or 'write prompts shot by shot'.
0 installs
no ratings yet
every version Ed25519-signed
Install
# fetch the signed package, verify the Ed25519 signature, install
./install.sh ai-video-shot-direction
Skill contents
name: "ai_video_shot_direction" description: "Direct generated video shot by shot, on any model: write a shot list a generator can follow (one size, one angle, one camera move, one action per shot), keep screen direction, action, and state continuity across separately generated clips, chain clips with first-frame handoff, and review every take against its shot list row before assembly. Triggers on 'direct this AI video', 'shot list for a generated video', 'plan shots for text to video', 'my clips do not cut together', 'continuity across generated clips', 'review these takes', or 'write prompts shot by shot'."
AI Video Shot Direction
Purpose
Direct a generated video the way a director directs a shoot: decide every shot on paper first, generate clips against that plan, and accept or reject each take against the plan. This skill is model neutral. It works for text to video and image to video on any tool, because the discipline lives in the shot list, not in one vendor prompt dialect.
Use this skill for the direction layer: what shots exist, in what order, framed how, moving how, and how they cut together. For running a specific provider API, batch jobs, and spend control, use the ai-video-api-workflows skill. For a full narrative short film treatment and production plan, use ai-short-film-production. For checking finished media for artifacts after assembly, use generated-media-qa.
Workflow
1. Break the piece into scenes and beats
- Write the piece as a list of scenes. For each scene write the beats in plain words: what the viewer learns, feels, or sees change.
- Give each beat one shot to start with. Add a second shot for a beat only when one framing cannot carry it, for example a wide for the action and a close-up for the reaction.
- Count the shots and total the planned seconds before generating. If the count surprises you, the plan is wrong, not the budget.
2. Fill the shot list, every field, before any generation
- Use
references/shot-list-template.md. One row per shot with purpose, shot size, angle, one primary camera move, locked subject phrase, one primary action, screen direction, start state, end state, and planned duration.
- Pick camera language from
references/camera-language.md. Standard terms only: sizes from extreme wide to extreme close-up, named angles, named moves.
- Write the purpose first. A shot whose purpose you cannot state in one phrase gets cut from the list. Coverage you generate just in case is cost with no edit to land in.
- Keep the subject identity phrase word for word identical in every row where that subject appears. Wardrobe, hair, age, and one distinguishing detail, written the same way every time.
3. Run the continuity pass on paper
- Run
bin/shotlist_check.py shots.json on the shot list written as JSON. It flags missing fields, two camera moves in one shot, screen direction flips with no neutral shot between them, chained shots whose start state does not match the previous end state, and chained shots whose subject wording drifted.
- Walk
references/continuity-checklist.md per scene: axis of action, travel direction, eyelines, match on action points, and the five state items, props, wardrobe, light, weather, background.
- Decide where shots chain directly and mark them. Decide where a neutral shot, head-on, overhead, POV, or insert, sits so a direction change later reads as deliberate.
4. Turn each row into one generation prompt
- Write one sentence per shot in this order: cinematography first, then subject, action, context, then style and light, then the start and end states. Google publishes this five part order for Veo, cinematography, subject, action, context, style and ambiance, and the order ports to other tools because it puts the framing decision before the decoration.
- Worked conversion, from the template reference: Medium shot, eye level, camera tracks right. Mara, bike mechanic, blue apron, dark hair in a bun, walks left to right across a small workshop carrying a bicycle wheel to a parts shelf. Morning light from a window on the left, tools and tyres in the background. Documentary realism, deep focus. Start: Mara at the workbench. End: Mara at the shelf, wheel in both hands.
- One shot, one prompt, one generation job. Never pack a scene into one prompt and hope the tool edits inside the clip. Tools generate shots, the edit is yours.
- For image to video, the image already carries subject, setting, and start state. Prompt the action, the camera move, and the end state, and do not redescribe what the image already shows in different words.
5. Generate in edit order, chain where marked
- Generate shots in scene order, not in order of interest. The accepted end frame of one shot is an input to the next.
- For a chained shot, feed the last frame of the accepted previous clip in as the first frame wherever the tool allows a start frame, or use its extend or continue feature when offered.
- Generate two or three takes of a shot, review them, accept one, then move on. Do not generate the whole film and review at the end. Continuity problems found late cost whole scenes.
6. Review every take against its row
- Generate the review sheet with
bin/shotlist_check.py shots.json --review-sheet review.csv and score each take with references/take-review-sheet.md.
- Score in the fixed order given there: purpose, framing, camera move, action complete, start and end states, identity, screen direction, artifacts. Stop at the first hard fail.
- Give each take one verdict: accept, accept as alt, fix in edit, regenerate with a prompt fix, regenerate same prompt, or re-direct the shot.
- Retry with discipline: cap retries per shot before starting, change one variable per retry, and log the change. A shot that fails the same way three times gets simplified, a locked camera, a smaller action, or a split into two shots.
7. Assemble against the list, then note what the list got wrong
- Assemble accepted takes in shot list order. Where a cut fails, check the list before blaming the clips: most bad cuts are a missing neutral shot, a flipped direction, or an end state that was never written down.
- Fill gaps from alt takes first. Regenerate only the shot the edit actually needs.
- Write a short note per project: which shot types failed most, which wording held identity best, what to change in the next shot list. Direction improves as a written habit, not as taste.
Output Contract
A completed run delivers:
shots.json and a readable shot list, every field filled for every shot, passing bin/shotlist_check.py with no errors.
- One generation prompt per shot, written in the cinematography, subject, action, context, style order.
review.csv with a verdict and, for rejected takes, a one line fix note naming the single change for the retry.
- Accepted clips named
shot-NN-take-K in list order, ready to assemble.
- A short lessons note: failure patterns by shot type and the wording changes planned for next time.
Operating Rules
- Model neutral first. Vendor prompt guides are examples of good shot description, not law. When a tool has a documented feature that changes direction practice, name the tool and the feature in the project notes rather than baking it into the shot list.
- Never assert a model capability, clip length, or price from memory. Check the tool current docs at generation time. Length warnings in the checker are planning heuristics and are labelled as such.
- One means one: one primary action, one primary camera move, one purpose per shot. The second idea goes in the next shot.
- Concrete words only. Cut feeling words that name no picture, cinematic, epic, dynamic, stunning, and replace them with a size, an angle, a light source, a colour, or a speed.
- Continuity is written, not remembered. If a state matters at a cut, it is in start_state or end_state. If it is not written, it will drift.
- Review against the row, not against taste. A beautiful clip doing the wrong job is a rejected take.
- Disclose generated media where the output is published, and keep any provenance marks the tool embeds intact.
Versions
v1.0.02026-10-18 · 0 installs · Ed25519-signed./install.sh ai-video-shot-direction 1.0.0bundle (.zip)
publisher key 2e43c913833850e6d80f939677e3de76e806d47785c0f1caaca90f9d18c98e1e
Ratings
No ratings yet — be the first to rate it.