Skill detail
open-edit
Video work with VEED's hosted services and CLI: word-timed transcription, cutting, background removal, lipsync, sound mixing, and HTML composition rendering. Directly covers video editing.
Inspect before use
Read the source instructions and check the requirements before you install this skill.
SKILL.md
The saved excerpt is a snapshot from when this skill was listed. The external source remains the complete and most current version.
--- name: open-edit description: Video work with VEED's hosted services and a CLI toolkit — word-timed transcription, cutting, background removal, AI presenters, lipsync, any fal model, sound mixing, and a Chrome renderer for HTML compositions that re-renders only what changed. Captions, edits, motion graphics, or pieces with no footage at all; hands a finished piece to VEED's editor as an editable project, and takes projects back from it. Use when the user wants video made, edited, or captioned by an agent. --- # open-edit You author the piece yourself, as an HTML page, and render it with `render`. OpenEdit supplies what a bare shell does not: VEED's hosted services on one login, measured tools for cutting and sound, and a renderer that re-renders only the stretch you changed. `openedit` below is short for `npx @veedstudio/openedit-cli`; every command explains its flags with `--help`. ## Setup Once per workspace, before the first command. WORKSPACE is the current project root, or the current directory outside a project. ``` npx --yes @veedstudio/openedit-cli init --dry --workspace "$WORKSPACE" npx --yes @veedstudio/openedit-cli init --workspace "$WORKSPACE" ``` Read the final `preflight:` line, not the exit code: `ready — OPEN_EDIT_ROOT=…` means go, and `runs/` and the recorded preferences live under that root. If init prints `APPROVAL REQUIRED`, tell the user every exact action and wait for an explicit yes, then run it again with `--auto-approve`. When the final line says the user runs the install commands, `--auto-approve` cannot run them: give the user those commands and run init again once they are done. Never install anything machine-global without that yes, and never infer it from the render request. When a command prints `update available`, tell the user once; run the `init --update` command it names only after they say yes, and if they decline, carry on without asking again. ## One folder per piece Keep everything a piece is made of under `runs/<key>/`: the page, its assets, renders, audio. The code is the edit: that folder is how the user comes back later to change one scene or reuse the piece for another video, so nothing it needs lives anywhere else. ## Tools | Need | Command | | --- | --- | | A transcript with real per-word times | `transcribe <video> [...]` runs the provider recorded in `$OPEN_EDIT_ROOT/.open-edit-prefs.json`. None recorded (the command refuses and says so), "No VEED login found", or a failed run: read `TRANSCRIPTION.md` first | | Remove, reorder or join takes | read `CUT.md` (`speech-probe`, `apply-edl`, `retime-transcript`) | | Join whole clips whose shapes disagree | `concat-videos` (re-encodes to one canvas at 30 fps) | | Look at a video, a page or a pile of images | `frames <video> --at <sec,...> --sheet` (one sheet of those moments; `--images` for a folder of references), `render --stills` | | Cut the subject out of its background | `background-removal` (the free VEED route; when it cannot run, the command stops with fal's price, and only `--fal` buys) | | A presenter speaking a script | Fabric: read `FABRIC.md` first | | New audio on a face | `lipsync` | | Any fal model: images, video, music, voice, effects | `fal schema <model>`, then `fal run <model> --input <json or @file> --run runs/<key>` (`--batch <jobs.json>` for many); local files in the input are uploaded for you | | Web fonts as local files | `fonts <Family> [...] --out <dir>` | | Real, licensed pictures | `stills search`, `stills show`, `stills save` | | One soundtrack from several pieces | `mix-audio runs/<key>` (voice tracks duck the bed; `mix-audio --help` has the spec) | | Sound on a render, at delivery loudness | `mux-audio --video <render> --audio <source clip or built track> --out <file>` | | The piece in VEED's editor for the user to change, or a project they bring from it | read `VEED.md` (`veed-project`, `veed-pull`) | Fabric, background removal, lipsync and `veed-project` reuse the VEED transcription login: sRead the full source on GitHub (opens external page)