@gitruck/cli 1.3.10 → 1.3.11

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.
@@ -1,6 +1,8 @@
1
1
  ---
2
2
  name: gtrk-oralcut
3
3
  description: 智能口播剪辑闭环——开剪前主动检查同目录独立口播音频,有则先对轨换声,再通过同合云剪掉废话/重复/长停顿,产出客户端(gtrk)+剪映+PR 三方工程。当用户想「剪口播/剪个视频/智能剪辑/去掉废话和停顿/把这条口播剪一版/出剪映草稿/生成剪辑工程/oral cut」时使用本 skill。凡涉及把口播毛片做成可二次精修的剪辑工程,优先用本 skill 驱动 gtrk CLI,不要手搓 ffmpeg。
4
+ metadata:
5
+ in_app_agent: true
4
6
  ---
5
7
 
6
8
  # 口播剪辑(gtrk-oralcut)
@@ -16,24 +18,22 @@ description: 智能口播剪辑闭环——开剪前主动检查同目录独立
16
18
  ## 前置:CLI 装没装 + 体检
17
19
 
18
20
  先跑 `gtrk doctor`(它顺带验证 `gtrk` 命令本身在不在):
19
- - **`gtrk` 找不到 / command not found** → CLI 没装 → 让用户装 `npm i -g @gitruck/cli@latest`(需先有 Node.js),再重试。
21
+ - **`gtrk` 找不到 / command not found** → CLI 没装 → 让用户装 `npm i -g @gitruck/cli@latest`(需先有 Node.js;外部 agent 的前置;内置 agent 已具备,跳过),再重试。
20
22
  - 报「缺 API Key」→ 让用户先跑一次 `gtrk init`(一次性配 Key + 剪映目录,**交互式、需真终端**,你别替他跑)。
21
23
  - 报云端连不上 / 剪映目录没配 → 照提示让用户处理。
22
24
  - 全绿就往下走。
23
25
 
24
- ### ffmpeg 依赖(本地抽音频 / 渲染必需,缺了你来装)
26
+ ### ffmpeg 依赖(本地抽音频 / 渲染必需)
25
27
 
26
- oralcut 现在**本地预处理**(探原片几何 + 抽 16k 单声道 mp3 / 压 720p 代理)和 **本地渲染**都靠 `ffmpeg`/`ffprobe`。看 `gtrk doctor` 里「本地渲染 (ffmpeg)」这行:
28
+ oralcut 现在**本地预处理**(探原片几何 + 抽 16k 单声道 mp3 / 压 720p 代理)和 **本地渲染**都靠 ffmpeg / ffprobe。看 `gtrk doctor` 里「本地渲染 (ffmpeg)」这行,或直接跑 `gtrk deps status`:
27
29
 
28
30
  - **已就绪** → 往下走。
29
- - **未找到** → 你来装(CLI 不自下不自分发):**先确认确实没有**(doctor 已查过 `~/.gitruck/ffmpeg` 与系统 PATH),缺了再拉 `ffmpeg` + `ffprobe` 两个可执行文件放到 `~/.gitruck/ffmpeg/`(Windows 即 `ffmpeg.exe`/`ffprobe.exe`)。
30
- - **国内用户优先国内加速站点**:GitHub 官方静态构建(BtbN / gyan.dev)直连慢,走 GitHub 加速代理(pass-through)或同合云自建镜像拉,下载后**核对 sha256**。
31
- - 装好复跑 `gtrk doctor` 确认转绿。
31
+ - **未找到** → `gtrk deps install --ffmpeg`(从同合云镜像装进 `~/.gitruck/ffmpeg/`,国内直连、自带校验,已存在则跳过),装好复跑 `gtrk deps status` 确认转绿。内置 agent 的运行时由客户端备好,不会走到这一步。
32
32
  - 用户自己装过 ffmpeg 并配了 PATH → doctor 会从系统探到直接用;**绝不去改用户的环境变量/PATH**(CLI 一律绝对路径调用)。若装在别处,用 `--ffmpeg-path <目录>` 指给它。
33
33
 
34
34
  ## 开剪前硬闸:主动发现独立口播音频,先对轨再 oralcut
35
35
 
36
- **无论用户有没有主动提到外录音频,执行 agent 都必须在第一次 `gtrk oralcut` 之前检查毛片所在目录。** 用户给的是目录时,先列出其中的视频与音频;用户给的是单个视频时,也要查看它的同目录。识别 `wav / mp3 / m4a / flac` 等独立音频,并按文件名、同一拍摄批次与数量关系判断是否是该视频的口播外录:
36
+ **无论用户有没有主动提到外录音频,执行 agent 都必须在第一次 `gtrk oralcut` 之前检查毛片所在目录。** 用户给的是目录时,先跑 `gtrk media probe "<该目录>" --json` 列出其中的视频与音频(类别、时长、编码、有无音轨;只看这一层、纯本地零计费);用户给的是单个视频时,对它所在的目录跑同一条。识别 `wav / mp3 / m4a / flac` 等独立音频,并按文件名、同一拍摄批次与数量关系判断是否是该视频的口播外录:
37
37
 
38
38
  - 唯一视频 + 唯一口播音频,或名称可明显配对(如 `03思考_视频_V01.mp4` ↔ `03思考_音频_V01.flac`)→ **直接视为一组,不用反问用户**。
39
39
  - 多个视频/音频且配对有歧义 → 在任何上传或 oralcut 计费前,让用户确认映射关系。
@@ -129,7 +129,8 @@ gtrk oralcut "<毛片绝对路径>" [--script "<txt路径>"] [--preset steady|co
129
129
  - 云端处理是分钟级,耐心等命令返回。
130
130
  - **毛片 > 2 小时跑不了**:CLI 在上传前就会拦下(零抽取、零上传、零扣费),不是跑到一半才失败。
131
131
  遇到超长毛片**先分段再逐段剪**,切段用流拷贝、秒级完成、不重编码:
132
- `ffmpeg -ss 0 -t 2400 -i "<毛片>" -c copy "<毛片名>_seg01.mp4"`(2400s = 40 分钟/段)。
132
+ `gtrk media cut "<毛片>" --start 0 --end 2400 --copy -o "<毛片名>_seg01.mp4"`(2400s = 40 分钟/段;下一段 `--start 2400 --end 4800`,依此类推;`-o` 与毛片同扩展名)。
133
+ 起点按关键帧对齐,回执的 `seconds` 是实际时长:每段会从区间起点之前最近的关键帧开始,段与段之间有几秒重叠、不丢内容。
133
134
  各段各出一份工程,逐段精修互不影响。
134
135
 
135
136
  ## 跑完读报告、给用户交代、按需调整(因势象形的另一半)