video-editing 1.3.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +49 -58
- package/dist/chunk-SSXAUKGV.js +2549 -0
- package/dist/cli.js +498 -1443
- package/dist/index.d.ts +1062 -921
- package/dist/index.js +297 -260
- package/package.json +2 -19
- package/skills/video-editing/SKILL.md +139 -232
- package/skills/video-editing/references/adversarial-review.md +3 -43
- package/skills/video-editing/references/cli-reference.md +124 -159
- package/skills/video-editing/references/editing-brief.md +3 -43
- package/skills/video-editing/references/hard-rules.md +3 -37
- package/skills/video-editing/references/scribe-collapse.md +3 -36
- package/skills/video-editing/references/timeline-v2-vocabulary.md +2 -2
- package/dist/assets/DejaVuSansMono.ttf +0 -0
- package/dist/chunk-63HIQBDT.js +0 -4321
- package/dist/chunk-CU3NBKB4.js +0 -307
- package/dist/job-OFCSLPBV.js +0 -25
- package/dist/templates/author-edl.prompt.md +0 -33
- package/dist/templates/fix.prompt.md +0 -23
- package/dist/templates/review.prompt.md +0 -30
package/README.md
CHANGED
|
@@ -1,83 +1,74 @@
|
|
|
1
1
|
# video-editing
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
The [ClipReady](https://github.com/ItayElgazar/clipready) CLI — **agents-first
|
|
4
|
+
AI video editing** for talking-head reels. An AI agent (or you) drops in a raw
|
|
5
|
+
recording; the ClipReady cloud transcribes and screens it and sends back the
|
|
6
|
+
editorial brief; the agent authors a `timeline.json` (cuts, captions, zooms,
|
|
7
|
+
overlays); the cloud compiles and verifies it; your machine renders it.
|
|
7
8
|
|
|
8
|
-
|
|
9
|
-
|
|
9
|
+
**The editorial engine runs in ClipReady cloud; rendering and QA visuals run
|
|
10
|
+
locally on your machine.**
|
|
10
11
|
|
|
11
12
|
## Requirements
|
|
12
13
|
|
|
13
14
|
- **Node ≥ 20**
|
|
14
|
-
- **ffmpeg
|
|
15
|
-
-
|
|
15
|
+
- **ffmpeg**/**ffprobe** on your PATH (`brew install ffmpeg`)
|
|
16
|
+
- A **ClipReady API key** — get one from the ClipReady settings page
|
|
16
17
|
|
|
17
|
-
## Install
|
|
18
|
+
## Install & auth
|
|
18
19
|
|
|
19
20
|
```bash
|
|
20
|
-
npm install -g video-editing
|
|
21
|
+
npm install -g video-editing
|
|
22
|
+
export CLIPREADY_API_BASE=https://… # the ClipReady API base
|
|
23
|
+
export CLIPREADY_API_KEY=… # from the settings page
|
|
21
24
|
video-editing --help
|
|
22
25
|
```
|
|
23
26
|
|
|
24
|
-
|
|
27
|
+
Every command requires the API key — nothing runs without it.
|
|
25
28
|
|
|
26
|
-
|
|
27
|
-
npx skills add ItayElgazar/clipready --skill video-editing
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
Set your ElevenLabs key once (stored in `~/.config/video-editing/.env`):
|
|
29
|
+
The companion agent skill (workflow + timeline vocabulary for AI agents):
|
|
31
30
|
|
|
32
31
|
```bash
|
|
33
|
-
video-editing
|
|
34
|
-
# or
|
|
32
|
+
npx skills add ItayElgazar/clipready --skill video-editing
|
|
33
|
+
# or, after installing the CLI:
|
|
34
|
+
video-editing skill install
|
|
35
35
|
```
|
|
36
36
|
|
|
37
37
|
## Workflow
|
|
38
38
|
|
|
39
39
|
```bash
|
|
40
|
-
|
|
41
|
-
video-editing
|
|
42
|
-
|
|
43
|
-
#
|
|
44
|
-
video-editing
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
# 4. render the preview (vertical 1080x1920, loudness-normalized)
|
|
51
|
-
video-editing render --job-dir ~/Downloads/edit/job_clip --mode preview
|
|
52
|
-
|
|
53
|
-
# 5. CONTENT-VERIFY: re-transcribes joins, flags duplicated phrases (retake left in) + dead air
|
|
54
|
-
video-editing verify --job-dir ~/Downloads/edit/job_clip # add --full for whole-preview
|
|
55
|
-
|
|
56
|
-
# 6. fix edl.json as needed, re-render, re-verify, then:
|
|
57
|
-
video-editing render --job-dir ~/Downloads/edit/job_clip --mode final
|
|
40
|
+
video-editing init --video "clip.mp4" --job-dir jobs/clip # upload source, create the cloud job
|
|
41
|
+
video-editing transcribe --job-dir jobs/clip # cloud transcribes + screens; pulls
|
|
42
|
+
# transcripts, flags, and prompts/author-edl.md
|
|
43
|
+
# read prompts/author-edl.md (the editorial brief), author jobs/clip/timeline.json
|
|
44
|
+
video-editing timeline compile --job-dir jobs/clip --json # cloud compile → resolved/plan.json
|
|
45
|
+
video-editing compose --job-dir jobs/clip --render # local preview render (hyperframes)
|
|
46
|
+
video-editing verify --job-dir jobs/clip --json # cloud content-verify of the preview
|
|
47
|
+
video-editing qa frames --range 0-5 --job-dir jobs/clip # local QA filmstrip
|
|
48
|
+
video-editing cloud render --job-dir jobs/clip --mode final --wait
|
|
58
49
|
```
|
|
59
50
|
|
|
60
|
-
## EDL format
|
|
61
|
-
|
|
62
|
-
`<job>/edl.json` — KEEP segments in **source** seconds; the gaps between them are the cuts:
|
|
63
|
-
|
|
64
|
-
```json
|
|
65
|
-
{
|
|
66
|
-
"version": 1,
|
|
67
|
-
"sources": {"SRC": "<job>/vertical_src.mp4"},
|
|
68
|
-
"grade": "none",
|
|
69
|
-
"ranges": [
|
|
70
|
-
{"source": "SRC", "start": 11.35, "end": 14.12, "beat": "HOOK", "quote": "…", "reason": "…"}
|
|
71
|
-
],
|
|
72
|
-
"overlays": [],
|
|
73
|
-
"total_duration_s": 0
|
|
74
|
-
}
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
A retake range must **end at the last clean word before the abandoned attempt**.
|
|
78
|
-
|
|
79
51
|
## Commands
|
|
80
52
|
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
53
|
+
| Verb | What it does | Runs |
|
|
54
|
+
| --- | --- | --- |
|
|
55
|
+
| `init --video <path>` | Upload the source, create the cloud job (`job.json` with `video_id`) | cloud |
|
|
56
|
+
| `transcribe` | Cloud transcription + screening; pulls transcripts, screening artifacts, and the editorial `prompts/*.md` | cloud |
|
|
57
|
+
| `timeline validate` | Schema/semantic check of your `timeline.json` | local |
|
|
58
|
+
| `timeline resolve` | Phrase → exact source seconds (anchor resolution) | local |
|
|
59
|
+
| `timeline compile` | Compile `timeline.json` → `resolved/plan.json` + diagnostics | cloud |
|
|
60
|
+
| `compose` | Build (and optionally render) the local HyperFrames composition | local |
|
|
61
|
+
| `verify` | Content-verify the rendered preview (retakes left in, dead air) | cloud |
|
|
62
|
+
| `qa frames` / `qa waveform` | Filmstrip / waveform PNG + word-timing sidecar for any window | local (ffmpeg) |
|
|
63
|
+
| `files pull` / `files push` | Sync job artifacts with the cloud job | cloud |
|
|
64
|
+
| `review pull` / `review push` | Work a ClipReady review round (live timeline updates, completion) | cloud |
|
|
65
|
+
| `cloud render` / `cloud status` | Server-side preview/final render + status | cloud |
|
|
66
|
+
| `skill install` | Install the bundled agent skill into `~/.claude/skills` | local |
|
|
67
|
+
| `status` | Job state + artifact existence | both |
|
|
68
|
+
|
|
69
|
+
Run `video-editing <cmd> --help` for flags.
|
|
70
|
+
|
|
71
|
+
## Links
|
|
72
|
+
|
|
73
|
+
- ClipReady + this skill: <https://github.com/ItayElgazar/clipready>
|
|
74
|
+
- Skill install: `npx skills add ItayElgazar/clipready --skill video-editing`
|