$npx -y skills add liuluhaixiu/DaVinci-AutoEdit-Agent --skill davinci-resolve-editorSafe DaVinci Resolve Studio editing through davinci-resolve-mcp or the official Resolve Python API. Use when Codex must inspect Resolve state, create or revise projects and timelines, import approved media, place source ranges, apply authorized LUTs or effects, prepare rendering,
| 1 | # DaVinci Resolve Editor |
| 2 | |
| 3 | Operate only from an approved blueprint. Read `references/mcp-operations.md` for |
| 4 | the tool map and `references/verification.md` before delivery. |
| 5 | |
| 6 | For deeper operations, load only the relevant bundled reference: |
| 7 | |
| 8 | - `references/compound-tool-reference.md` |
| 9 | - `references/prompt-patterns.md` |
| 10 | - `references/page-capabilities.md` |
| 11 | - `references/keyboard-shortcuts.md` |
| 12 | |
| 13 | ## Connect |
| 14 | |
| 15 | 1. Confirm Resolve Studio is open and external scripting is set to `Local`. |
| 16 | 2. Call `resolve -> get_version`. |
| 17 | 3. If the tool is unavailable, distinguish missing registration from a server |
| 18 | failure. An MCP config file alone is not proof of connection. |
| 19 | 4. Offer blueprint-only delivery or the official Python API fallback. |
| 20 | |
| 21 | Install the upstream MCP server when the user approves configuration: |
| 22 | |
| 23 | ```bash |
| 24 | npx davinci-resolve-mcp setup |
| 25 | ``` |
| 26 | |
| 27 | ## Write Contract |
| 28 | |
| 29 | Before changing Resolve, state: |
| 30 | |
| 31 | - project and timeline name |
| 32 | - tracks to create or modify |
| 33 | - media and derivative paths |
| 34 | - color, audio, subtitle, and render operations |
| 35 | |
| 36 | Obtain explicit approval. Use a new project or duplicated timeline for |
| 37 | substantial revisions. Preserve existing user tracks, audio, grades, and |
| 38 | manual work unless the user explicitly authorizes modification. |
| 39 | |
| 40 | ## Build |
| 41 | |
| 42 | - Import only blueprint media. |
| 43 | - Convert seconds to frames using the actual project FPS. |
| 44 | - Set source in/out and record frame deliberately. |
| 45 | - Keep source ranges within probed bounds. |
| 46 | - Use explicit track roles rather than assuming A1/A2/A3 universally. |
| 47 | - Add BGM, LUTs, stabilization, retiming, audio processing, and renders only |
| 48 | when the current request authorizes them. |
| 49 | - Apply LUTs to verified camera/color-space groups and read back the node LUT. |
| 50 | |
| 51 | ## Resolve API Boundaries |
| 52 | |
| 53 | - Resolve writes are stateful; wait and retry in a fresh project/timeline when |
| 54 | a batch partially fails. |
| 55 | - Derive frame origin from actual timeline items. |
| 56 | - Still-image duration may differ by Resolve version; use approved pre-rendered |
| 57 | still video for frame-exact delivery. |
| 58 | - Resolve 19 may reject item volume writes and does not expose complete |
| 59 | Fairlight sidechain automation. Measurement is not a successful write. |
| 60 | - Never report an unsupported or rejected operation as completed. |
| 61 | |
| 62 | ## Verify |
| 63 | |
| 64 | Read back and report: |
| 65 | |
| 66 | - active project and timeline |
| 67 | - item counts by track |
| 68 | - timeline start frame/origin |
| 69 | - gaps, overlaps, and one-frame errors |
| 70 | - each source path and source range |
| 71 | - source group/camera duration ratios |
| 72 | - adjacent repeated source, including section boundaries |
| 73 | - missing or offline media |
| 74 | - LUT/effect/property readback |
| 75 | - render settings and job status, when requested |
| 76 | |
| 77 | A failed report or a report for an older timeline is not delivery. |
| 78 | |
| 79 | Export or report enough timeline information for the parent pipeline to compare |
| 80 | the finished cut with the approved script: clip time ranges, source paths, |
| 81 | track roles, markers, captions, and narration/dialogue placement. Do not make |
| 82 | pickup-shot recommendations from the blueprint alone when a finished timeline |
| 83 | exists. |