Generated command reference
August 7, 2026 ยท View on GitHub
Generated by
npm run docs:commandsfrom the v2 command registry. Do not edit manually.
| Command | Usage | Mutates | Summary |
|---|---|---|---|
info | capcut info <project> | no | Project overview + material summary. |
version | capcut version <project> | no | Detect CapCut/JianYing version, schema flags, and support status. |
lint | capcut lint <project> [options] | no | Schema-aware checks (overlaps, line length, missing files, main-track gaps, external media); exit 0/1/2 for CI. |
tracks | capcut tracks <project> | no | List all tracks. |
segments | capcut segments <project> [--track <type>] | no | List segments with timing; filter by --track |
texts | capcut texts <project> | no | List all text/subtitle content. |
set-text | capcut set-text <project> <id> <text> | yes | Change a text segment's content. |
shift | capcut shift <project> <id> <offset> | yes | Shift one segment's timing by an offset (e.g. +0.5s). |
shift-all | capcut shift-all <project> <offset> [--track <type>] | yes | Shift all segments (optionally on one --track) by an offset. |
speed | capcut speed <project> <id> <multiplier> | yes | Set a segment's playback speed. |
volume | capcut volume <project> <id> <level> | yes | Set a segment's volume (0.0-1.0). |
trim | capcut trim <project> <id> <start> <duration> | yes | Trim a segment to a start/duration window. |
opacity | capcut opacity <project> <id> <alpha> | yes | Set a segment's opacity (0.0-1.0). |
export-srt | capcut export-srt <project> [options] | no | Export subtitles to SRT or WebVTT on stdout, per line or per word. |
export-timeline | capcut export-timeline <project> [--out <file.otio>] | no | Export video/audio tracks as OpenTimelineIO JSON for NLE handoff (DaVinci Resolve imports .otio natively). |
import-timeline | capcut import-timeline <file.otio> (--out <new-project> | --into <project>) | yes | Import OpenTimelineIO JSON (the export-timeline schema set) as a new draft (--out) or append it onto an existing one (--into); unsupported OTIO features are reported, never silent. |
materials | capcut materials <project> [--type <type>] | no | List material types and counts; filter with --type. |
segment | capcut segment <project> <id> | no | Full detail for one segment and its material. |
material | capcut material <project> <id> | no | Full detail for one material. |
add-audio | capcut add-audio <project> <file-or-url> <start> [duration] [options] | yes | Add a local or Wikimedia audio file on an audio track. |
add-video | capcut add-video <project> <file-or-url> <start> [duration] [options] | yes | Add a local or Wikimedia video/image on a video track. |
add-text | capcut add-text <project> <start> <duration> <text> [options] | yes | Add a text segment with font/color/position options. |
crop | capcut crop <project> <segment-id> [--ratio <r> | --rect <x,y,w,h> | --reset] | yes | Read or set a video/photo segment's source-material crop (--ratio preset, --rect x,y,w,h, or --reset). |
cut | capcut cut <project> <start> <end> --out <path> | yes | Extract a time range into a new standalone draft. |
duplicate | capcut duplicate <project> <segment-id> [--track <track-name>] [--new-track] | yes | Duplicate a segment at its same timeline position onto a track above the source. |
remove | capcut remove <project> <segment-id> [--keep-track] [--keep-materials] | yes | Remove a segment, its emptied track, and the materials that orphans. |
keyframe | capcut keyframe <project> <id> <property> <time> <value> [--easing <name>] | --batch | yes | Add a keyframe (position/scale/rotation/alpha/volume); single or --batch. |
transition | capcut transition <project> <id> <slug> [--duration <time>] | yes | Add a transition between segments. |
mask | capcut mask <project> <id> <slug> [options] | --off | yes | Apply a mask (linear/circle/heart/...) with geometry flags, or --off. |
bg-blur | capcut bg-blur <project> <id> <level> | --off | yes | Set background blur level 1-4, or --off. |
text-style | capcut text-style <project> <id> [options] | yes | Style text (alpha/shadow/border/background box). |
text-anim | capcut text-anim <project> <id> [options] | yes | Add intro/outro/combo text animation. |
image-anim | capcut image-anim <project> <id> [options] | yes | Add intro/outro/combo animation to an image/video segment. |
add-sticker | capcut add-sticker <project> <resource-id> <start> <duration> [options] | yes | Add a sticker on its own track with transform. |
mix-mode | capcut mix-mode <project> <id> <mode> | yes | Set a video segment's blend mode. |
audio-fade | capcut audio-fade <project> <id> [--in <seconds>] [--fade-out <seconds>] | yes | Add fade-in/fade-out to an audio segment (--in / --fade-out). |
add-cover | capcut add-cover <project> <image> [--time <milliseconds>] | yes | Set the project cover/thumbnail from a local image. |
add-filter | capcut add-filter <project> <slug-or-name> (<start> <duration> | --full) [options] | yes | Add a colour filter on its own track. |
bubble-text | capcut bubble-text <project> <id> --bubble <slug> | yes | Apply a speech-bubble shape to a text segment. |
add-effect | capcut add-effect <project> <slug-or-name> (<start> <duration> | --full) [options] | yes | Add a scene effect on its own track. |
save-template | capcut save-template <project> <id> <name> --out <path> | no | Extract a segment as a reusable template JSON. |
apply-template | capcut apply-template <project> <template> <start> <duration> [text] [options] | yes | Stamp a template into a project with new timing/text. |
make-preset | capcut make-preset <project> <text-segment-id> --out <preset.json> | no | Extract a text segment's styling as a reusable preset JSON (apply via --preset). |
templates | capcut templates <project> | no | List bundled reusable templates. |
batch | capcut batch <project> [--continue-on-error] < operations.jsonl | yes | Run multiple edits from stdin (JSONL), one file write. |
import-srt | capcut import-srt <project> <srt-or-> [options] | yes | Import an SRT file/stdin as one text segment per cue. |
import-ass | capcut import-ass <project> <ass-or-> [options] | yes | Import an ASS/SSA subtitle file as text segments. |
text-ranges | capcut text-ranges <project> <id> --styles <json-or-@file> | yes | Apply byte-accurate multi-style ranges to a text segment. |
caption | capcut caption <project> (--audio <path> | --from-segment <id>) [options] | yes | Transcribe audio via whisper into real caption-track segments. |
translate | capcut translate <project> --to <language> --out <path> [options] | yes | Clone a draft into another language via the Anthropic API. |
migrate | capcut migrate <project> --from <version> --to <version> | yes | Apply known schema migrations across version boundaries. |
add-sfx | capcut add-sfx <project> <slug> <start> <duration> [options] | yes | Add a sound effect on a dedicated track. |
chroma | capcut chroma <project> <id> (--color <hex> | --off) [options] | yes | Green-screen / chroma key a video segment, or --off. |
prune | capcut prune <project> | yes | Remove materials no segment references. |
register | capcut register <project-dir> [--apply] [--drafts <dir>] | yes | Repair an existing draft's registration metadata (draft_meta_info.json + root_meta_info.json entry) from a read-only draft_content.json so the CapCut app lists it (plan by default; --apply writes with .bak). |
rename | capcut rename <project> <new-name> [--drafts <dir>] | yes | Rename a draft after creation: the folder on disk plus draft_name and every self-referential path in draft_meta_info.json and the store's root_meta_info.json entry, transactionally (refuses when the target folder exists). |
relink | capcut relink <project> (--dir <path> | --from <prefix> --to <prefix>) | yes | Repair broken media paths (--dir or --from/--to). |
replace-media | capcut replace-media <project> <segment-id> <new-file> [--retime] | yes | Swap a segment's source file (placeholder > final) keeping its timing, effects, and keyframes. |
timeline | capcut timeline <project> [--cols <number>] | no | Show the track/segment layout (JSON, or -H ASCII bars). |
projects | capcut projects [query] [--drafts <path>] [--names] | no | List CapCut/JianYing draft folders on disk. |
diff | capcut diff <project-a> <project-b> | no | Compare two drafts (segments/materials/tracks added/removed/changed). |
concat | capcut concat <project-a> <project-b> [--out <path>] | yes | Append one draft onto another's timeline (id-safe), write to --out or in place. |
config | capcut config | no | Show the resolved config (.capcutrc + effective defaults). |
describe | capcut describe | no | Emit the full command surface as JSON (agent tool spec). |
completions | capcut completions <bash|zsh|fish> | no | Generate shell completions (bash |
enums | capcut enums <category-flag> [--jianying] | no | List enum slugs (transitions, masks, effects, ...) by category. |
harvest-enums | capcut harvest-enums <project> [--apply] [--catalogue <path>] | no | Learn store resource ids from an app-authored draft into the per-user catalogue (lint + writable slugs). |
doctor | capcut doctor | no | Environment preflight (Node, whisper, API key, project dir). |
diagnose | capcut diagnose <project> [--bundle <report.json>] | no | Inspect canonical draft files, divergence, and editor-write safety. |
fixture | capcut fixture <project> --out <dir> | no | Build a shareable, redacted compatibility bundle (timeline JSON only) for a version-support issue, including the mask-keyframe evidence report (#44). |
sync-timelines | capcut sync-timelines <project-dir> [--apply] | yes | Reconcile drifted timeline mirrors (template-2.tmp, draft_info.json) from a read-only draft_content.json (plan with mtimes by default; --apply rewrites only the drifted mirrors). |
restore | capcut restore <project> [--step <number> | --list] | yes | Undo writes from .bak / snapshot history (--step N, --list). |
serve | capcut serve [--queue <path>] [options] | no | Run a stateless JSONL job queue from stdin/--queue. |
decrypt | capcut decrypt <project-or-file> | no | Detect JianYing 6.0+ encryption and explain the workaround. |
export | capcut export <drafts-dir> --batch [options] | yes | EXPERIMENTAL UI-automated render queue (macOS). |
init | capcut init <name> [--template <dir>] [--drafts <dir>] | yes | Create a new empty draft from a template. |
quickstart | capcut quickstart <name> [--video <f>] [--audio <f>] [--srt <f>] [--drafts <dir>] | yes | One-command first draft: create + add one input + lint + print the open-in-CapCut step. |
compile | capcut compile <spec.json> [--out <draftdir>] [--data <rows.jsonl|->] [--check | --plan] | yes | Build a draft from a declarative JSON spec (the inverse of describe). |
render | capcut render <project> [--out <preview.mp4>] [options] | no | Render a low-res ffmpeg proxy preview (trim+speed+audio, --burn-captions); not CapCut's final render. |
detect-scenes | capcut detect-scenes <video> [options] | no | Detect scene-change cut points in a video (ffmpeg scene filter); prints cuts + segments to seed compile/cut. |