CtrlK
BlogDocsLog inGet started
Tessl Logo

gamussa/reels-producer-skill

help quicky produce instagram reels and youtube shorts

94

2.12x
Quality

96%

Does it follow best practices?

Impact

87%

2.12x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No findings from the security scan

Overview
Quality
Evals
Security
Files

nle-round-trip.mdskills/reel-builder/references/

NLE Round Trip (Gate 1, option 3)

Read this when the human wants to fine-tune the cut in Final Cut Pro or DaVinci Resolve rather than describe edits in conversation. Offer it whenever feedback turns granular ("nudge that cut a few frames") — frame-level trimming is faster in an NLE than through a chat loop.

Hand the timeline over

python3 scripts/export_timeline.py plan/cut_plan.json --out plan/reel.fcpxml

Opens in Final Cut Pro (File > Import > XML) and DaVinci Resolve (File > Import Timeline) with every clip pre-placed at the right source timecode, phase notes as clip names, and the music on its own audio lane. Defaults to fcpxml v1.10; Resolve rejects newer versions, so pass --fcpxml-version 1.9 for Resolve 17.

Then stop

The pipeline is paused while the human edits.

python3 scripts/pipeline.py gate 1 nle-wait

That snapshots the plan's mtime, and status alarms if anything touches cut_plan.json during the wait. Note it in project.md. Do not render, re-plan, or touch cut_plan.json in the meantime — their edit would be overwritten.

Tell them how to hand the result back: export fcpxml from the NLE — from Resolve choose v1.9 or v1.10; from FCP either a .fcpxml or a .fcpxmld bundle works.

Bring it back

python3 scripts/import_timeline.py plan/reel_edited.fcpxml \
    --out plan/cut_plan.json --base-plan plan/cut_plan.json

Only cuts survive the round trip — clip order, in-points, durations, music offset. NLE-side effects, transitions, titles, and retimes are ignored; the importer warns, and those warnings go to the user so they know what did not make it. Grading stays in the render step. Timeline gaps are dropped with a warning, since the renderer butts segments together.

After import: pipeline.py gate 1 reopen, re-render the preview, QC, and return to Gate 1 for a final confirm.

.mcp.json

tile.json