Back to Discover

capcut-cli

plugin

renezander030

Independent, unofficial CLI to edit CapCut and JianYing projects — subtitles, timing, speed, volume, templates, cut long-form to shorts. No API needed, reads draft_content.json directly. Not affiliated with ByteDance.

View on GitHub
256 starsMITSynced Aug 2, 2026

Install to Claude Code

/plugin marketplace add renezander030/capcut-cli

README

capcut-cli — the CapCut/JianYing CLI any LLM agent can drive: zero dependencies, no server, both namespaces

capcut-cli

CI npm version npm downloads node license

English | 中文

Disclaimer: This is an independent, community-maintained project. It is not affiliated with, sponsored by, or endorsed by CapCut, JianYing, or ByteDance Ltd. "CapCut" and "JianYing" (剪映) are trademarks of ByteDance Ltd. All product names, logos, and brands are the property of their respective owners and are used here only for identification (nominative) purposes.

An independent CLI for CapCut / JianYing that any LLM agent can drive — zero dependencies, no server, both namespaces in one binary.

JSON in, JSON out: every command reads and writes the local draft store directly, with no MCP server or HTTP daemon. On newer CapCut versions it detects and synchronizes every readable timeline target instead of assuming draft_content.json is the only source of truth. That gives any model (Claude, DeepSeek, GLM, Kimi) a deterministic boundary for inspection, building, subtitles, captions, translation, and long-form cuts.

Use it three ways:

  • CLInpm install -g capcut-cli, then capcut <command> <project>
  • Libraryimport { loadDraft, lintDraft, saveDraft } from "capcut-cli" (typed, zero-dep)
  • Queue runnercapcut serve reads JSONL jobs from stdin, for n8n / Make / Coze

New in v0.16.0: first-class support for the newer Mac draft layout (draft_info.json-primary) across edits, sync-timelines, register, and diagnose, version-aware mask writes with --mask-field and a lint mismatch check, the cut exported as OpenTimelineIO (export-timeline) for DaVinci Resolve handoff, learning store effect ids from app-authored drafts (harvest-enums), VFR and unreadable-media checks in lint with concrete ffmpeg fixes, and safe auto-repair of dangling companion refs (lint --fix). Full details in the changelog.

New in v0.15.0: a write-time version guard that refuses beyond-evidence or known-broken drafts unless --force-write, in-place segment deletion with orphaned-material cleanup (remove), raw store resource ids, working --intensity, and whole-timeline --full on add-filter/add-effect, experimental per-segment --bind on add-effect, and lint unknown-slug coverage extended to transitions, masks, sound effects, bubbles, and fonts. Full details in the changelog.

Install

Prerequisites: Node ≥ 18 (built-ins only — no native modules). Optional tools unlock specific commands: Whisper for caption, FFmpeg for render, ffprobe for automatic media metadata, and ANTHROPIC_API_KEY for translate.

npm install -g capcut-cli      # or: npx capcut-cli <command>

Build from source instead: git clone https://github.com/renezander030/capcut-cli && cd capcut-cli && npm install && npm run build (then npm link to expose capcut).

Quickstart

capcut doctor                                  # verify Node, FFmpeg, whisper, draft dirs
capcut quickstart my-first --video clip.mp4    # create + add input + lint, prints the "open in CapCut" step
capcut info ./my-first/                         # inspect the draft (add -H for a table)

Then open the project in CapCut to review and render. Every short-video platform forbids automated upload, so the publish click stays human.

Commands

JSON by default (pipe to jq); add -H for a human-readable table. Pass --jianying to use the JianYing enum namespace. Run capcut <command> --help for full flags.

GroupCommands
Inspectinfo · tracks · materials · version · lint
Browse / drill insegments · texts · segment · material
Createinit · quickstart · compile (build a draft from a JSON spec)
Previewrender (low-res ffmpeg proxy — not CapCut's final render)
Addadd-video · add-audio · add-text (Wikimedia URLs supported, license-checked)
Edit / animatetrim · speed · volume · transitions · masks · text/image animations · easing curves
Templatesapply and extract reusable layouts · make-preset (portable text-style presets)
Subtitles & i18ncaption · import-srt · export-srt (line/word SRT + VTT) · translate (multi-language draft clone)
Effectssfx · chroma (chroma key)
Long-form → shortcut · detect-scenes (ffmpeg scene-cut detection)
Automationserve (stateless JSONL runner) · migrate · doctor · sync-timelines (8.7 mirror repair)

Full reference for every command, option, and exit code: docs/command-reference.md.

Sponsor

capcut-cli is MIT and free forever. Sponsoring funds faster releases and same-week support for new CapCut / JianYing versions — and unlocks power-user extras:

  • $5/mo · Supporter — sponsors-only release notes plus your name in BACKERS.md. Keep the project moving.
  • $25/mo · Pro — invite to the private capcut-cli-pro repo: premium template and caption-style packs, the full Claude viral-shorts pipeline, ready-to-run compile specs, and early-access builds. Plus priority issue triage.
  • $100/mo · Team — everything in Pro for up to 5 teammates, written commercial-use confirmation, your logo in this README, and priority fast-tracking of the features your team needs.

Become a sponsor →

Using capcut-cli at work? The Team tier pays for itself the first afternoon it saves your engineers.

How it works

CapCut/JianYing store each project as local JSON. capcut-cli loads that store, validates against a version-aware schema, applies your edit, and writes it back atomically (with a .bak). No project files are uploaded anywhere; nothing runs as a service. See docs/version-support.md for the CapCut/JianYing versions and schema flags it understands.

Docs & examples

Trademarks

CapCut™ and JianYing™ (剪映) are trademarks of ByteDance Ltd. This project is unofficial and is not affiliated with or endorsed by ByteDance; the marks are used nominatively to describe interoperability.

License

MIT

Rendered live from renezander030/capcut-cli's GitHub README — not stored, always reflects the source repo.

1 Plugin

NameDescriptionCategorySource
capcut-cliEdit CapCut and JianYing projects from Claude Code — subtitles, timing, speed, volume, transitions, masks, templates, cut long-form to shorts../

0 Comments

Login required
Log in to post a comment or update on this repo.

No comments yet — be the first to share an update.