Skip to content
Content
Skill

/baocut

Drive BaoCut's local CLI for transcription, subtitle and timeline editing, source cuts, clip arrangement, overlays, B-roll, watermarks, animation, on-screen-text translation, review, quality checks, rendered output, and editable projects for CapCut, Premiere Pro, DaVinci

From plugin
baocut
3401 skill
Install
$ npx -y skills add JimLiu/baocut --skill baocut --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/baocut

Context preview

The summary Claude sees to decide when to auto-load this skill.

Drive BaoCut's local CLI for transcription, subtitle and timeline editing, source cuts, clip arrangement, overlays, B-roll, watermarks, animation, on-screen-text translation, review, quality checks, rendered output, and editable projects for CapCut, Premiere Pro, DaVinci

SKILL.md

baocut.SKILL.md
name: baocut
description: Drive BaoCut's local CLI for transcription, subtitle and timeline editing, source cuts, clip arrangement, overlays, B-roll, watermarks, animation, on-screen-text translation, review, quality checks, rendered output, and editable projects for CapCut, Premiere Pro, DaVinci Resolve, Final Cut Pro, Shotcut, or Kdenlive. Use whenever the user asks to operate a .bcut project or produce these BaoCut deliverables.
metadata:
  version: "1.0.4"
  minAppVersion: "1.0.4"

BaoCut

Use the bundled resolver for every command. On macOS/Linux:

BAOCUT_SKILL_ROOT="<this-skill-directory>"
"$BAOCUT_SKILL_ROOT/bin/baocut" --json version

On Windows, run the native PowerShell resolver (WSL is not required):

$env:BAOCUT_SKILL_ROOT = "<this-skill-directory>"
& "$env:BAOCUT_SKILL_ROOT\bin\baocut.ps1" --json version

The resolver locates the right CLI on its own — never call `bcut` directly:

  • An explicit `BAOCUT_CLI` (or `BCUT_EXECUTABLE` / `BAOCUT_BIN`) override wins.
  • In a BaoCut development checkout (this skill directory inside the source

tree) it uses the workspace build — newest of release/debug — or runs the sources via `cargo run` when nothing is built yet. It prints a `development checkout detected` note to stderr in that case.

  • In a released install it uses the CLI embedded in BaoCut.app, in either

`/Applications` or `~/Applications`; every App release ships with its matching `baocut-cli`, so App and CLI versions always move together.

  • Then a `bcut` on PATH.
  • Then the cached CLI this skill pinned earlier, under

`${XDG_CACHE_HOME:-~/.cache}/baocut/cli/<version>-build.<build>/bcut`.

On Windows, `bin/baocut.ps1` uses the same explicit overrides, development-checkout build, and PATH lookup first. It then checks cached `<version>-build.<build>` CLIs newest-first and compatibility-checks them locally. Only when no compatible cache exists does it find the newest stable `baocut-v<version>-build.<build>` GitHub Release that includes `windows-cli-release.json`, downloads its x64 Windows archive, verifies the manifest-pinned SHA-256, and caches `bcut.exe` under `%LOCALAPPDATA%\BaoCut\cli\<version>-build.<build>\bcut.exe`. The Windows archive is currently an unsigned preview, so SmartScreen, Smart App Control, or enterprise policy may warn about or block it; SHA-256 proves download integrity, not publisher identity.

The resolver then checks the CLI contract and minimum BaoCut App version before it runs the requested command.

If nothing above resolves, or the resolved CLI is older than `metadata.minAppVersion`, the resolver downloads the CLI pinned by this skill's `cli-release.json` — the standalone release archive built from the same commit as the matching App. It verifies the archive's SHA-256 against the pin before extracting anything, unpacks `bcut` and its co-located `mlx.metallib` into the cache, and reruns the full contract and version handshake against the downloaded binary. Any failure exits 3 with the manual download URL. The download carries no `com.apple.quarantine` attribute and the Developer ID signature lives in the binary itself, so the cached CLI runs without a Gatekeeper prompt. The resolver exports the packaged Metal library path before executing the cached CLI, so local MLX transcription never depends on a metallib left behind on the release build machine.

Two deliberate exceptions never trigger the download: an explicit `BAOCUT_CLI`-style override and a development checkout. Both are chosen on purpose, so a failing handshake there must be fixed at the source — update the override or rebuild the workspace — rather than silently shadowed by a release binary. Set `BAOCUT_SKILL_NO_DOWNLOAD=1` to disable the download entirely; `BAOCUT_SKILL_NO_DEV=1` disables development-checkout detection.

The skill copy bundled inside BaoCut.app has no `cli-release.json`, because an App install always ships its own matching CLI beside it.

If the resolver exits 3, follow its guidance instead of bypassing the check.

Choose the workflow

  • For transcription and translation, create the project in the shared

projects library first, start the preview server, then run the pipeline; read [references/workflows.md](references/workflows.md).

  • For a complete local pipeline, use `auto`; read

[references/workflows.md](references/workflows.md).

  • For an Agent-backed AI stage with pending calls, immediately read and follow

[references/agent-tasks.md](references/agent-tasks.md). Its worker-pool and consolidated-repair rules are execution requirements, not optional tuning.

  • For the Subtitle Studio browser preview — serving and mounting projects,

applying page edits, page requests, history recovery, punctuation display, or preview troubleshooting — read [references/studio.md](references/studio.md). The page code itself is this skill's `templates/` directory, served live by `serve`.

  • For source cuts, OUTPUT clip arrangement, appended media, or rough cutting,

read [references/editing.md](references/editing.md).

  • For overlays, B-roll, watermarks, text styles, or debug frames, read

[references/elements.md](references/elements.md).

  • For overlay motion, read [references/animation.md](references/animation.md).
  • For reusable foreground templates — caption slot, segment rail, progress bar,

station logo — and the `data.json` data layer that binds them, read [references/templates.md](references/templates.md).

  • For text baked into video frames, read

[references/screentext.md](references/screentext.md).

  • For delivery, run `check --strict` and then use the export recipes in

[references/exports.md](references/exports.md).

  • For granular project edits, discover the installed surface with `spec` and

command `--help`; do not infer commands from older BaoCut releases.

  • For checking whether this skill or the CLI has a newer release, verifying

skill/CLI version consistency, or helping the user update, read [references

Read more
Ships withbaocut

Give your AI coding agent the power to drive BaoCut — transcribe, add and translate subtitles, review speakers, edit timelines and overlays, and export — all from natural language.

Get the whole plugin
Stats
358
Stars
21
Forks
Active
Maintenance
JavaScript
Language
MIT
License
12h ago
Last commit
28d ago
Created

Repo: JimLiu/baocut