---
name: rough-cut-to-premiere
description: Turn a folder of raw footage into a first rough cut, delivered as a validated Premiere Pro project plus a review MP4. Use when someone says "rough cut", "first pass", "assemble this", "make a cut from my footage", or shares a folder of clips with a brief. This is the default path for anyone who arrives with footage rather than a project.
argument-hint: "[path-to-footage] [optional: what the video is for]"
---

# Rough Cut to Premiere

A first-time user with a folder of clips wants to see a cut they can open in Premiere within the session. This skill gets there in one pass: understand every clip, choose the keepers, build a sequence with sensible settings, add transitions where they help, export a project, validate it, and render something they can watch. It does not stop to ask ten questions first.

## Scope

A rough cut, not a finish. Story order, clean cuts, matched settings, simple transitions. No grading, no titles, no music unless it was supplied. Those come after the user has seen the first pass.

## Step 0: Resolve the input and set defaults

Accept a folder, a set of files, or a workspace. Read any brief the user gave (a sentence, a doc, a reference video). If no brief exists, infer the intent from the footage in Step 1 and state the assumption.

Defaults, used unless the user said otherwise:

- Sequence settings match the majority of the footage (frame rate and resolution from Step 1).
- Target length: 60 to 90 seconds for social or promo footage, 3 to 5 minutes for interview or event footage, or whatever the brief says.
- Keep source media where it is. Symlink into the workspace; never copy.

Ask nothing yet.

## Step 1: Understand every clip

1. `caltools media-info-batch` over the footage. Record frame rate, resolution, rotation, duration and audio presence per clip. Use rotation-corrected dimensions.
2. `caltools media-analyze-content-batch` on every clip for scene, shot type, subject and a one-line summary.
3. `caltools media-transcript-get-batch` on every clip with speech.
4. `caltools job-poll` until nothing is pending.

Evaluation: one row per file with fps, resolution, a content summary, and a transcript where there is speech. Unreadable files are listed, not silently dropped.

## Step 2: Choose the keepers

Score clips for usability (focus, exposure, stability) and for relevance to the brief. Reject only what is unusable; set aside borderline clips in a list rather than deleting anything. For speech, keep complete sentences and drop false starts and long pauses.

Write the plan as a short shot list in story order with the reason each clip is in. This is what the user will react to, so keep it readable.

Evaluation: every kept clip has a reason, every rejected clip has a measured reason, and the planned total is within the target length.

## Step 3: Build the sequence

1. `caltools sequence-create` at the majority frame rate and resolution.
2. `caltools sequence-media-set` so the sequence settings match the footage. If a minority of clips run at a different rate (for example 59.94 among 23.976), decide per clip: slow-motion intent gets `interpret_fps` to play at the sequence rate; normal-speed clips are conformed as is.
3. `caltools sequence-clips-add` in story order, then `sequence-clips-update` to trim handles to the planned in and out points.
4. `caltools sequence-transitions` only where a cut needs help: between scenes, into and out of the piece, across a time jump. Hard cuts everywhere else. State the count.
5. If music or a voiceover was supplied, add it on its own audio track. If not, leave audio as the source sound and say so.

Evaluation: render frames with `sequence-render-frames` at the start, one third, two thirds and end. No black frames, no wrong-aspect clips, no clip playing at the wrong speed.

## Step 4: Export, validate, render

1. `caltools sequence-export-premiere` to `<workspace>/renders/<name>_roughcut_v1.prproj` at the sequence settings.
2. `caltools prproj validate`. Zero dangling references and zero orphans, or fix and re-run.
3. `caltools prproj inspect` and reconcile the clip count against the sequence.
4. `caltools sequence-render-final` to `<workspace>/renders/<name>_roughcut_v1.mp4`, H.264, at the sequence resolution and frame rate. Confirm with `media-info-batch` that it plays and has audio.

Evaluation: validate is clean, clip counts match, the MP4 duration equals the sequence duration.

## Step 5: Report and ask the one question

Report in this order: the MP4 to watch, the .prproj to open, the shot list, the set-aside clips, and the assumptions you made (brief, length, settings). Then ask the one question that matters: "What should change for v2?"

Offer three follow-ups by name: tighten to a length, swap clips from the set-aside list, add captions (`caption-this`), or cut social versions (`social-clips`).

## Done when

- Every clip in the folder was read, and every keep or reject has a reason.
- The sequence settings match the footage and no clip plays at the wrong speed.
- The `.prproj` passed `prproj validate` with clip counts reconciled.
- A review MP4 exists, plays, and has audio.
- The user has been asked one question, about v2, and nothing else.
