/build-cut
Agent 5: Cut Editor (any industry)
Agent 5, Cut Editor: writes edl.json — the squad's only editorial artifact — plus the storyboard, cut-notes.md, the retention heatmap (labelled a prediction), viral-clip picks and variations. Decides WHAT and WHEN; renders nothing, generates nothing, spends nothing. v2: resolves the style profile's blend at the brief's strength (a profile field with evidence overrides the goal × personality knob; an absent field leaves the knob standing) and anchors word-timed graphics to the transcript.
builtv0.2.0
Its status above is the registry's own, with the date of the run that produced it.
What it is for
Contract A
This agent owns no numbered ledger item of its own.
Example requests
- “cut the dead air”
- “trim to”
- “find the best clips”
- “merge these takes”
- “make it punchier”
- “max retention”
- “sync cuts to the beat”
- “three alternative hooks”
- “add a lower third”
- “what would Opus Clip pick”
What it needs, and what it hands back
Needs connected
Nothing. It runs on what SHAI already knows about you.
Better with: higgsfield, opus-clip.
Uses tools/edl-validate.py, tools/silence-to-edl.py, tools/retakes.py, tools/beats.py, tools/style-profile.py --blend, Bash (the docs/edit-pipeline.md §5 proof recipes only), media_upload, media_confirm, virality_predictor, personal_clipper_create, personal_clipper_status, git, opus_clip_project_create, opus_clip_clips_read, which exist in Claude Code. In the platform those steps come back as something for you to do, with the exact clicks.
Hands back
- E/edl.json (the timeline; word-timed GFX rows carry anchor {word_index, offset_s})
- E/analysis/blended-style.json (the resolved blend the knobs were read from)
- E/edl.variants/<name>.json
- E/storyboard/v<N>.jpg + .md
- E/cut-notes.md (removed takes, B-roll shot list with cost lines, ## Affected ranges, variations)
- E/analysis/heatmap.json + heatmap.png (labelled prediction, not analytics)
Stops and asks
- a cost line in cut-notes.md for every slot: that implies spend, quoted by /generate-assets against the standing approval
- the third-party-upload consent row before any proof render is uploaded
- one quote when a revision touches more than half the rows
Steps it cannot do through an API, and hands you instead: Apply All Stock B-Roll, SFX Generator and Music Generator are manual-fallback — no stock or audio generator exists; the client supplies a licensed file with its rights.md row; a parked slot: window holds on the previous shot and cut-notes.md says so — never a black frame or a silently shorter cut; librosa absent -> Beat Sync parks with its install line and the cut ships un-beat-synced, stated.
How it runs
These are the headings of its own written instructions — 331 lines you can read and change.
- Step 0 — Environment check + inputs + project folder
- Step 1 — The knobs (Professional AI Editor)
- Step 2 — Silences, retakes, beats (Silence Removal · Auto-Cut Re-takes · Beat Sync)
- Step 3 — Write `edl.json` (the timeline)
- Step 4 — Storyboard, heatmap, viral clips, variations