@gitruck/cli 1.3.10 → 1.3.12
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 +52 -3
- package/CHANGELOG.md +47 -0
- package/README.en.md +10 -2
- package/README.md +10 -2
- package/assets/composite-kit/kit.js +36 -7
- package/assets/composite-kit/stage.html +23 -2
- package/dist/index.js +354 -338
- package/docs/reference.en.md +86 -13
- package/docs/reference.md +87 -15
- package/package.json +79 -79
- package/skills/gtrk-ai-drama/SKILL.md +19 -15
- package/skills/gtrk-ai-drama/scripts/validate-storyboard.mjs +4 -0
- package/skills/gtrk-composite/SKILL.md +11 -6
- package/skills/gtrk-cover/SKILL.md +18 -13
- package/skills/gtrk-cover/references/workbench-guide.md +4 -3
- package/skills/gtrk-matrix/SKILL.md +90 -9
- package/skills/gtrk-mg/SKILL.md +404 -406
- package/skills/gtrk-music-visualizer/SKILL.md +8 -4
- package/skills/gtrk-oralcut/SKILL.md +9 -8
- package/skills/gtrk-ref-reading/SKILL.md +5 -0
- package/skills/gtrk-splitter/SKILL.md +313 -311
- package/skills/gtrk-style-maker/SKILL.md +13 -0
- package/skills/gtrk-style-maker/references/craft-output-spec.md +2 -0
- package/skills/gtrk-tools/SKILL.md +5 -1
- package/skills/gtrk-transcript/SKILL.md +8 -4
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: gtrk-music-visualizer
|
|
3
3
|
description: 音乐可视化成片——把一首歌通过同合云出成一条频谱可视化视频(可选背景/封面 + 模板/配色样式)。当用户想「把这首歌做成可视化视频 / 音乐可视化 / 频谱视频 / 歌曲配画面出片 / music visualizer / 给歌配个动态封面视频」时使用本 skill。凡涉及把一段音频做成频谱可视化成片,优先用本 skill 驱动 gtrk CLI 的 `music-visualizer` 命令,不要手搓 ffmpeg。
|
|
4
|
+
metadata:
|
|
5
|
+
in_app_agent: true
|
|
4
6
|
---
|
|
5
7
|
|
|
6
8
|
# 音乐可视化(gtrk-music-visualizer)
|
|
@@ -12,17 +14,19 @@ description: 音乐可视化成片——把一首歌通过同合云出成一条
|
|
|
12
14
|
## 前置:CLI 装没装 + 体检
|
|
13
15
|
|
|
14
16
|
先跑 `gtrk doctor`:
|
|
15
|
-
- **`gtrk` 找不到 / command not found** → 让用户装 `npm i -g @gitruck/cli@latest`(需先有 Node.js
|
|
17
|
+
- **`gtrk` 找不到 / command not found** → 让用户装 `npm i -g @gitruck/cli@latest`(需先有 Node.js),再重试(外部 agent 的前置;内置 agent 已具备,跳过)。
|
|
16
18
|
- 报「缺 API Key」→ 让用户先跑一次 `gtrk init`(一次性配 Key,交互式、需真终端,你别替他跑)。
|
|
17
19
|
- 全绿就往下走。
|
|
18
20
|
|
|
19
21
|
## 一条命令
|
|
20
22
|
|
|
21
|
-
> **产物落点纪律(MUST · 全文见随包 `AGENT.md` 同名一节)**:
|
|
22
|
-
> 交付物 MUST NOT 先写 agent 自有目录再拷进工程;中转本身即违规,体积不是豁免理由。
|
|
23
|
+
> **产物落点纪律(MUST · 全文见随包 `AGENT.md` 同名一节)**:
|
|
24
|
+
> 交付物 MUST NOT 先写 agent 自有目录再拷进工程;中转本身即违规,体积不是豁免理由。
|
|
23
25
|
> 成片等一切产物只落产物目录(缺省 = 音频同目录)或**用户显式指定的 `--out`**;
|
|
24
26
|
> **MUST NOT** 把成片、预览或任何大媒体文件复制到 agent 自有工作目录(如用户文档目录下 agent 产品自建的目录、agent 家目录缓存、会话工作区)——需要引用媒体时**用原路径引用**,不做副本;
|
|
25
|
-
> 临时文件一律放系统 temp 且**用完即删**。交付物直接写入工程目录或用户显式指定的路径;引用媒体用原路径。
|
|
27
|
+
> 临时文件一律放系统 temp 且**用完即删**。交付物直接写入工程目录或用户显式指定的路径;引用媒体用原路径。
|
|
28
|
+
>
|
|
29
|
+
> **在即剪内置 AI 里**:只能写当前工程目录,缺省产物目录却在音频同目录——每次都显式传 `--out <工程目录>/music-visualizer/<曲名>`(相对路径按工程目录解析),否则命令会被宿主拒绝。交付时在回复里用 `[成片](相对工程目录的路径)` 给出。
|
|
26
30
|
|
|
27
31
|
```
|
|
28
32
|
gtrk music-visualizer <音频> --template <模板id> [可选样式/文件] [--json]
|
|
@@ -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 代理)和 **本地渲染**都靠
|
|
28
|
+
oralcut 现在**本地预处理**(探原片几何 + 抽 16k 单声道 mp3 / 压 720p 代理)和 **本地渲染**都靠 ffmpeg / ffprobe。看 `gtrk doctor` 里「本地渲染 (ffmpeg)」这行,或直接跑 `gtrk deps status`:
|
|
27
29
|
|
|
28
30
|
- **已就绪** → 往下走。
|
|
29
|
-
- **未找到** →
|
|
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` 之前检查毛片所在目录。**
|
|
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
|
-
`
|
|
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
|
## 跑完读报告、给用户交代、按需调整(因势象形的另一半)
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: gtrk-ref-reading
|
|
3
3
|
description: 参考片精读——把一条别人的视频读成「可复刻」的整片模型与时码细节:逐字时码转写 + 带台词标签的抽帧网格 + 关键动效逐帧看 + 按「系统」记录每个设计事件对着哪句话,落成 ANALYSIS.md / TIMELINE.md / PROGRESS.md,读完可交给 /gtrk-style-maker 产栏目 skill,或直接指导把这套包装迁移到用户自己的片子上。驱动 `gtrk transcript --json`(取字级时码)与纯本地零计费的 `gtrk media` 看片命令族。当用户想「拆解这条视频 / 精读参考片 / 学一下这个博主的包装 / 分析这条视频的风格 / 这条视频的动画是怎么做的 / 照着这条参考片的风格做 / 把 XX 的风格蒸馏出来 / 参考片逆向」时使用本 skill。凡要从一条参考视频里学包装与节奏,先用本 skill 读透再动手,别看几张截图就开始仿。
|
|
4
|
+
metadata:
|
|
5
|
+
in_app_agent: true
|
|
4
6
|
---
|
|
5
7
|
|
|
6
8
|
# gtrk-ref-reading · 参考片精读
|
|
@@ -21,6 +23,8 @@ description: 参考片精读——把一条别人的视频读成「可复刻」
|
|
|
21
23
|
> 只落**精读目录**(缺省 `<参考片同目录>/<参考片名>-精读/`,用户指定优先)。
|
|
22
24
|
> 交付物 MUST NOT 先写 agent 自有目录再拷进工程;中转本身即违规,体积不是豁免理由。
|
|
23
25
|
> 引用参考片用原路径,**不复制原片**;`gtrk media` 的中间物由命令自己放系统 temp、用完即删。
|
|
26
|
+
>
|
|
27
|
+
> **在即剪内置 AI 里**:只能写当前工程目录——精读目录一律落 `<工程>/ref-reading/<参考片名>/`(用户另行指定且在工程目录内时从用户),转写的 `--out` 与 `gtrk media` 的 `-o` 都指到这里面;参考片本身在工程外没关系,按原路径读。交付时在回复里用 `[精读分析](ref-reading/<名>/ANALYSIS.md)` 给出文件,用 `` 展示最能说明问题的几张证据网格。
|
|
24
28
|
|
|
25
29
|
- **计费只有转写一处**:`gtrk transcript --json` 走云端字级 ASR,按官网实时价格计费——跑之前告诉用户这一步要花钱、大约多少(以 CLI 打出的实时提示为准)。`gtrk media` 全部纯本地、零计费、不联网。
|
|
26
30
|
- **用户须有权使用这条参考片**做学习分析。证据图只在精读目录里供判读,**原片的帧与片段 MUST NOT 进栏目 skill 的 assets、MUST NOT 混进成片**。
|
|
@@ -120,6 +124,7 @@ ANALYSIS 末节按系统写一张表:**归属(叠层 / 版式)/ 保留什
|
|
|
120
124
|
跟用户讲清:整片模型一句话、最关键的 3–5 个系统(各附一张证据网格路径)、迁移要点、仍待查的问题。然后按用户的去向交棒:
|
|
121
125
|
|
|
122
126
|
- **要沉淀成自己栏目的风格体系 / 栏目 skill** → `/gtrk-style-maker`(见下节)。
|
|
127
|
+
- **在即剪内置 AI 的「自建视频风格 / 技法模板」会话里**(本轮宿主注入里有自建说明)→ 不交 style-maker 的栏目产出:按下节同样的问法逐条出示证据、让用户认领,**只把认领的**写成宿主指定目录里的**一个** skill(视频风格写贯穿整条片子的调性,技法模板写单个场景画面的做法);原片的帧与片段不进 skill 目录。
|
|
123
128
|
- **栏目 skill 已就绪、要直接做片** → 回成片管线,按 TIMELINE 里「对着哪句话」的关系在目标稿上重新落点。
|
|
124
129
|
- **只是学习 / 评估** → 精读目录本身就是交付物。
|
|
125
130
|
|