@gitruck/cli 0.2.2 → 0.2.3
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/AGENT.md +42 -12
- package/README.md +16 -1
- package/dist/index.js +759 -132
- package/package.json +2 -2
- package/skills/gtrk-oralcut/SKILL.md +17 -6
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gitruck/cli",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.3",
|
|
4
4
|
"description": "同合云成片流水线 CLI —— agent 驱动云端任务、产物拉回本地、三方工程文件(客户端/剪映/PR)互通。",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Gitruck (同合云)",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"build": "bun build ./src/index.ts --target=node --outfile dist/index.js",
|
|
48
48
|
"typecheck": "tsc --noEmit",
|
|
49
49
|
"prepublishOnly": "bun run build",
|
|
50
|
-
"test": "esbuild src/lib/chunk-upload.ts --bundle --platform=node --format=esm --
|
|
50
|
+
"test": "esbuild src/lib/chunk-upload.ts src/lib/render.ts src/lib/cloud.ts src/lib/materialize.ts --bundle --platform=node --format=esm --outdir=.test-build --out-extension:.js=.mjs && node --test \"test/*.test.mjs\""
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"bun-types": "^1.1.0",
|
|
@@ -5,7 +5,7 @@ description: 智能口播剪辑闭环——把一条口播原视频(毛片)通
|
|
|
5
5
|
|
|
6
6
|
# 口播剪辑(gtrk-oralcut)
|
|
7
7
|
|
|
8
|
-
把用户的口播毛片,用 `gtrk` CLI
|
|
8
|
+
把用户的口播毛片,用 `gtrk` CLI 跑通「**本地抽音频/720p → 只传抽出物(毛片永不上传)** → 云端智能口播剪辑 → 拉回三方工程文件 →(可选)**本地 ffmpeg 渲染成片**」,再把产物目录 + 三端打开方式回给用户。**CLI 是手、你是脑。**
|
|
9
9
|
|
|
10
10
|
> **本 skill 已含你需要的全部信息**(参数、取值、执行、读报告、排错),照它做即可,不用也无法去查外部文档。(源仓库另有一份更全的工具无关版 `AGENT.md`,那是给在仓库里开发的人看的,与你无关。)
|
|
11
11
|
|
|
@@ -17,6 +17,16 @@ description: 智能口播剪辑闭环——把一条口播原视频(毛片)通
|
|
|
17
17
|
- 报云端连不上 / 剪映目录没配 → 照提示让用户处理。
|
|
18
18
|
- 全绿就往下走。
|
|
19
19
|
|
|
20
|
+
### ffmpeg 依赖(本地抽音频 / 渲染必需,缺了你来装)
|
|
21
|
+
|
|
22
|
+
oralcut 现在**本地预处理**(探原片几何 + 抽 16k 单声道 mp3 / 压 720p 代理)和 **本地渲染**都靠 `ffmpeg`/`ffprobe`。看 `gtrk doctor` 里「本地渲染 (ffmpeg)」这行:
|
|
23
|
+
|
|
24
|
+
- **已就绪** → 往下走。
|
|
25
|
+
- **未找到** → 你来装(CLI 不自下不自分发):**先确认确实没有**(doctor 已查过 `~/.gitruck/ffmpeg` 与系统 PATH),缺了再拉 `ffmpeg` + `ffprobe` 两个可执行文件放到 `~/.gitruck/ffmpeg/`(Windows 即 `ffmpeg.exe`/`ffprobe.exe`)。
|
|
26
|
+
- **国内用户优先国内加速站点**:GitHub 官方静态构建(BtbN / gyan.dev)直连慢,走 GitHub 加速代理(pass-through)或同合云自建镜像拉,下载后**核对 sha256**。
|
|
27
|
+
- 装好复跑 `gtrk doctor` 确认转绿。
|
|
28
|
+
- 用户自己装过 ffmpeg 并配了 PATH → doctor 会从系统探到直接用;**绝不去改用户的环境变量/PATH**(CLI 一律绝对路径调用)。若装在别处,用 `--ffmpeg-path <目录>` 指给它。
|
|
29
|
+
|
|
20
30
|
## 把用户的话变成一次调用
|
|
21
31
|
|
|
22
32
|
> **每次调用都必须带 `--json`**(成功时 stdout 只出一行结果 JSON、人读日志转 stderr),你才能解析结果 + 读报告。不是可选项。
|
|
@@ -37,11 +47,12 @@ description: 智能口播剪辑闭环——把一条口播原视频(毛片)通
|
|
|
37
47
|
| 有稿对齐(更准) | `--script <txt>`(或毛片同名 `.txt` 自动) | 10–50000 字 · 缺省无稿重建 | 有稿逐字对齐质量最佳;无稿智能重建终稿 |
|
|
38
48
|
| 换语种 | `--lang <码>` | `zh-CN`/`en-US`/`ja-JP`… · 默认 `zh-CN` | 不传即 CLI 默认发 `zh-CN`;主推中文,余语种尽力而为 |
|
|
39
49
|
| 产哪些工程格式 | `--formats <逗号列表>` | `xml`/`fcpxml`/`otio`/`jianying`/`capcut`/`gtrk` · CLI 缺省 `gtrk,jianying,xml` | 可多选 |
|
|
40
|
-
|
|
|
41
|
-
| 成片画质 | `--crf <n>`(配 `--render`) | 整数 14–28 · `18` |
|
|
42
|
-
| 成片编码 | `--codec <c>`(配 `--render`) | `h264` · `h264` |
|
|
50
|
+
| 顺带出成片视频 | `--render` | 开关 · 缺省不渲 | **本地** ffmpeg 按 gtrk EDL 渲染 mp4(毛片仍不上传、云端不渲染);需 ffmpeg 就绪 |
|
|
51
|
+
| 成片画质 | `--crf <n>`(配 `--render`) | 整数 14–28 · `18` | 本地渲染用;越小越清晰 / 越大体积越小 |
|
|
52
|
+
| 成片编码 | `--codec <c>`(配 `--render`) | `h264` · `h264` | 本地渲染用;当前仅 h264 |
|
|
53
|
+
| 指定 ffmpeg 位置 | `--ffmpeg-path <目录>` | 路径 · 缺省 `~/.gitruck/ffmpeg`→系统 | 用户 ffmpeg 装在非标准位置时指给它 |
|
|
43
54
|
| 节奏松紧 | `--preset <名>` | `steady`/`concise`/`compact` · 默认 `concise` | 不传即 CLI 默认发 `concise`(精练);见下方预设表,铺底后可逐项覆盖 |
|
|
44
|
-
| **剪不准 / 剪掉真内容 / 有话没剪进去** | `--visual-assist` | 开关 · 关 |
|
|
55
|
+
| **剪不准 / 剪掉真内容 / 有话没剪进去** | `--visual-assist` | 开关 · 关 | 开则**本地改传 720p 代理**(非上传原片)+ **视觉找补兜底**:画面说话检测保护疑似漏识别段不被误剪并重识别捞回(需说话人面部基本可见);上传体量比纯音频大、处理耗时增加,但不额外计费、绝不凭空生成 |
|
|
45
56
|
| 别随说话人节奏自适应 | `--no-adaptive-rhythm` | 一元 flag:传即关闭 · 自适应默认开 | 是否定 flag(不接受 `=值` 赋值);关了改用固定标点停顿表 |
|
|
46
57
|
| 剪映草稿目录(非标准位置) | `--jianying-draft-dir <目录>`(或 `auto`) | 路径 · 读 init 配置 / 自动探测 | 出剪映可直开草稿需要它 |
|
|
47
58
|
| 工程落盘到别处 | `--out <目录>`(或 `-o`) | 路径 · 缺省 `<毛片同目录>/<毛片名>-video-project-<时间戳>` | 想把产物放指定位置时用 |
|
|
@@ -79,7 +90,7 @@ gtrk oralcut "<毛片绝对路径>" [--script "<txt路径>"] [--preset steady|co
|
|
|
79
90
|
```
|
|
80
91
|
|
|
81
92
|
- `--json`:人读日志走 stderr,**成功时 stdout 只有一行结果 JSON**:
|
|
82
|
-
`{ ok, outDir, files:{gtrk:[],jianying:[],xml:[]}, jianyingDraftPath, report, errors, taskId, fileId }`
|
|
93
|
+
`{ ok, outDir, files:{gtrk:[],jianying:[],xml:[]}, jianyingDraftPath, rendered, report, errors, taskId, fileId }`(`rendered`=本地渲染成片路径,未开 `--render` 时为 `null`)
|
|
83
94
|
- **命令失败**(毛片路径错 / 鉴权失败 / 参数越界 6016 等)→ **进程非 0 退出、报错打到 stderr、stdout 无 JSON**。先看退出码,非 0 就把 stderr 的报错如实回给用户、别当成功。
|
|
84
95
|
- 默认会自动打开产物目录(用户能直接看到文件);纯脚本/无头环境才加 `--no-open`。
|
|
85
96
|
- 云端处理是分钟级,耐心等命令返回。
|