cli-anything-shotcut

Command-line interface for Shotcut - A stateful command-line interface for video editing, built on the MLT XML format. Designed for AI ag...

By hkuds · 434 installs

npx skills add hkuds/cli-anything --skill cli-anything-shotcut

Source repository · Upstream listing

cli anything shotcut A stateful command line interface for video editing, built on the MLT XML format. Designed for AI agents and power users who need to create and edit Shotcut projects without a GUI. Installation This CLI is installed as part of the cli anything shotcut package: Prerequisites: Python 3.10+ melt (MLT CLI) — required for rendering and playback ffmpeg / ffprobe — required for media probing shotcut must be installed on your system Usage Basic Commands REPL Mode When invoked without a subcommand, the CLI enters an interactive REPL session with undo/redo support: REPL Commands Workflow: Always media import first to get a clip id , then use add clip to place it on the timeline. Project & Session: new [profile] — Create new project (default: hd1080p30 ) open <path — Open .mlt file save [path] — Save project info — Show project info xml — Print raw MLT XML status — Show session status undo / redo — Navigate operation history Media (two step model): media import <file [ caption name] — Import file into project bin, returns clip id (e.g., clip0 ) media — List all imported media probe <file — Analyze a media file Timeline: add track <video audio [name] — Add a track tracks — List all tracks show — Visual timeline overview add clip <clip id <track [in] [out] [ at time] — Place imported clip on track clips <track — List clips on a track remove clip <track <clip — Remove a clip trim <track <clip [ in tc] [ out tc] — Trim clip split <track <clip <at — Split clip at timecode Filters: list filters [video audio] — Browse available filters filter info <name — Show filter details add filter <name [ track n] [ clip n] [key=val ...] — Add filter to clip, track, or global filters [ track n] [ clip n] — List active filters remove filter <idx [ track n] [ clip n] — Remove filter by index set filter <idx <param <value [ track n] [ clip n] — Set filter parameter volume envelope [ track n] [ clip n] TIME=LEVEL ... — Keyframed volume (e.g., 00:00:00.000=1.0 00:00:03.000=0.35 ) duck [ track n] [ clip n] START..END ... — Ducking envelope (e.g., 00:00:06.000..00:00:09.000 ) Export: presets — List export presets render <output [ preset name] — Render to video file Command Groups Project Project management: new, open, save, info. Command Description new Create a new blank project open Open an existing .mlt project file save Save the current project info Show detailed project information profiles List available video profiles xml Print the raw MLT XML of the current project Timeline Timeline operations: tracks, clips, trimming. Command Description show Show the timeline overview tracks List all tracks add track Add a new track to the timeline remove track Remove a track by index add clip Add an imported clip to a track by clip id; supports at for absolute placement remove clip Remove a clip from a track move clip Move a clip between tracks or positions trim Trim a clip's in/out points split Split a clip into two at the given timecode clips List all clips on a track add blank Add a blank gap to a track set name Set a track's display name mute Mute or unmute a track hide Hide or unhide a video track Filter Group Filter operations: add, remove, configure effects. Command Description list available List all available filters info Show detailed info about a filter and its parameters add Add a filter to a clip, track, or globally remove Remove a filter by index set Set a parameter on a filter list List active filters on a target volume envelope Create or replace a keyframed volume envelope on a track or clip duck Build a practical ducking envelope over one or more time windows Media Media operations: probe, list, check files. Command Description import Import a media file into the project bin probe Analyze a media file's properties list List all media clips in the current project check Check all media files for existence thumbnail Generate a thumbnail from a video file Export Export/render operations. Command Description presets List available export presets preset info Show details of an export preset render Render the project to a video file Transition Group Transition operations: dissolve, wipe, and other transitions. Command Description list available List all available transition types info Show detailed info about a transition type add Add a transition between two tracks remove Remove a transition by index set Set a parameter on a transition list List all transitions on the timeline Composite Group Compositing: blend modes, PIP, opacity. Command Description blend modes List all available blend modes set blend Set the blend mode for a track get blend Get the current blend mode for a track set opacity Set the opacity of a track (0.0 1.0) pip Set picture in picture position for a clip Session Session management: status, undo, redo. Command Description status Show current session status undo Undo the last operation redo Redo the last undone operation save Save session state to disk list List all saved sessions Preview Preview bundles and live preview sessions for iterative editing review. Command Description preview recipes List preview recipes preview capture Render a low res preview bundle preview latest Return the latest existing bundle preview live start Start a live preview session and publish the first bundle preview live push Publish a new bundle into the live session preview live status Query current live session state without rendering preview live stop Stop the live session without deleting artifacts Typical quick bundle contents: preview.mp4 several sampled frames midpoint hero.png summary.json with project facts Poll mode is supported: preview live status json includes session refs and a compact trajectory summary so agents can cheaply understand the latest few publishes. Viewer commands: Examples Create a New Project Create a new shotcut project file. Interactive REPL Session Start an interactive session with undo/redo support. Export Project Export the project to a final output format. Deterministic Timeline Reconstruction For rebuilds, prefer absolute placement over append only clip insertion: at inserts blanks automatically when the target time lands in empty space. The CLI rejects overlap with an existing clip. Prefer explicit in and out values so later absolute placement remains unambiguous. Audio Automation The CLI maintains session state with: Undo/Redo : Up to 50 levels of history Project persistence : Save/load project state as JSON Session tracking : Track modifications and changes Output Formats All commands support dual output modes: Human readable (default): Tables, colors, formatted text Machine readable ( json flag): Structured JSON for agent consumption For AI Agents When using this CLI programmatically: 1. Always use json flag for parseable output 2. Check return codes 0 for success, non zero for errors 3. Parse stderr for error messages on failure 4. Use absolute paths for all file operations 5. Verify outputs exist after export operations 6. Prefer timeline add clip at when recreating a known edit 7. Review final renders after keyframed volume or ducking changes 8. Use preview capture or preview live ... to validate pacing, cuts, and filter effects visually 9. Read returned artifact paths such as hero.png and preview.mp4 ; JSON payloads reference files on disk 10. Use preview live status json before reading the full trajectory.json 11. Use cli hub previews ... only to inspect/open existing bundles or live sessions More Information Full documentation: See README.md in the package Test coverage: See TEST.md in the package Methodology: See HARNESS.md in the cli anything plugin Version 1.0.0