@gitruck/cli 1.1.6 → 1.1.9
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/CHANGELOG.md +15 -0
- package/README.en.md +39 -3
- package/README.md +37 -2
- package/dist/index.js +219 -184
- package/package.json +68 -67
- package/skills/gtrk-cover/SKILL.md +3 -3
- package/skills/gtrk-cover/assets/workbench-template.html +1088 -955
- package/skills/gtrk-cover/references/checklist.md +82 -81
- package/skills/gtrk-cover/references/workbench-guide.md +128 -99
- package/skills/gtrk-food-recap/SKILL.md +122 -104
- package/skills/gtrk-live-slicing/SKILL.md +2 -0
- package/skills/gtrk-long2short/SKILL.md +8 -1
- package/skills/gtrk-matrix/SKILL.md +9 -1
- package/skills/gtrk-mg/SKILL.md +14 -0
- package/skills/gtrk-style-maker/SKILL.md +6 -0
- package/skills/gtrk-tools/SKILL.md +10 -1
- package/skills/gtrk-travel-recap/SKILL.md +15 -1
|
@@ -1,104 +1,122 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: gtrk-food-recap
|
|
3
|
-
description: 美食解说垂类图纸(解说链示例)——把探店/密着纪实长片(或自拍探店素材夹)与做饭流程记录,提炼看点后重述成一条中文美食解说成片工程。覆盖两形态:探店·密着(一家店/一顿饭/一个人的故事)与做饭流程解说(步骤线忠实重述)。菜谱知识类内容出局(那是配音链题材,走 gtrk-voiceover)。当用户想「做美食解说 / 探店视频解说 / 密着纪实翻讲 / 把这条做饭视频讲一遍 / 拉面店视频解说」时使用本图纸。链级条款(时序三档/引用段/出处对齐)以 gtrk-narration 为正本。
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# gtrk-food-recap(美食解说 · 解说链垂类示例)
|
|
7
|
-
|
|
8
|
-
把**探店/密着纪实长片**(或自拍探店素材夹)与**做饭流程记录**提炼看点,重述成一条中文美食解说成片工程。
|
|
9
|
-
|
|
10
|
-
> **定位**:解说链(`gtrk-narration` 正本)的垂类示例,与 `gtrk-travel-recap` 平级。链级条款
|
|
11
|
-
> (时序三档铺排/引用段/出处对齐/开工问询)以正本为准,本图纸只持**美食要素层**。
|
|
12
|
-
> **菜谱知识类**(讲营养学/做法原理、素材只是插画)按判据出链走 `gtrk-voiceover`。
|
|
13
|
-
> **承诺面只有快速成片**(垂类示例单模式,公约 §一 分层);个性化出路见 §六。**CLI 是手,你是脑。**
|
|
14
|
-
|
|
15
|
-
## 一、两种形态与输入契约
|
|
16
|
-
|
|
17
|
-
| 形态 | 输入 | 时序档位(正本 §三) |
|
|
18
|
-
|---|---|---|
|
|
19
|
-
| **探店 · 密着** | 一条纪实长片(二创;带字幕文件的直接当台词锚,无则转写)或自拍探店素材夹 | 软窗档缺省:进店→点单→出品→吃→人的故事,流程线单调、允许蒙太奇跳 |
|
|
20
|
-
| **做饭流程** | 一条做饭记录或素材夹 | 软窗档且**步骤线忠实**:工序 MUST NOT 乱序重排(先炸后腌是事故) |
|
|
21
|
-
|
|
22
|
-
稿源与声音基座随正本开工问询(AI 代写/自备稿;TTS/自己念)。**MUST NOT 执行任何网络下载**;二创长片是第三方作品——版权与平台二创规则责任归用户,开工先说。
|
|
23
|
-
|
|
24
|
-
## 二、美食要素层(写稿规约,叠在通用框架层之上)
|
|
25
|
-
|
|
26
|
-
通用框架层(三段式/文风铁律/自校验)继承 `gtrk-travel-recap` §三 正本,此处只列垂类专属:
|
|
27
|
-
|
|
28
|
-
- **探店三件套**:场子气质(地段/客群/烟火气)、出品与吃相(招牌菜、分量、上桌节奏)、
|
|
29
|
-
**人的故事**——密着类的魂在店主/食客身上(几点起床备料、开了多少年、常客是谁),
|
|
30
|
-
写稿 MUST 给「人」留一段,别写成纯菜品罗列;
|
|
31
|
-
- **感官转译**:口感香气用**具体动作与事实**转译(「700 克米饭压得冒尖」「铁板边缘的油声没停过」),
|
|
32
|
-
禁拟声堆砌与「入口即化」式空转(文风铁律照打);
|
|
33
|
-
- **数字如实**:分量/价格/营业时间只用素材里可见可听的,MUST NOT 编造;
|
|
34
|
-
**时效丑话**:价格与营业信息随拍摄时点变动,成片引用时提醒用户自行核对;
|
|
35
|
-
- **背景检索建议**(旅拍 §三 通用框架层同款,2026-08-28 拍板):对店名/地段/菜系关键词
|
|
36
|
-
做一轮背景检索补写稿语料(店家来历、当地饮食脉络),有检索能力就做、没有不强求;
|
|
37
|
-
检索所得与素材互证后才入稿、档案标注来源;
|
|
38
|
-
- **做饭流程线**:步骤忠实、关键动作给特写位(刀工/火候/翻面)、成品定格收束。
|
|
39
|
-
|
|
40
|
-
## 二′、L1 看点 rubric · 画面投影版(260828 新增,供 `--highlight-weight` 用)
|
|
41
|
-
|
|
42
|
-
`highlight` 是**镜头看点分**——服务端 VLM 对着一帧画面打 0–100。喂给它的评分准则
|
|
43
|
-
(`highlight_rubric`)按垂类走,美食这一档取下面这份:
|
|
44
|
-
|
|
45
|
-
```
|
|
46
|
-
判这一帧对美食短视频有没有「看点」,0-100:
|
|
47
|
-
- 大分量怼脸:食物占画面主体且分量夸张(堆尖的饭、溢出碗沿的面、整条鱼)
|
|
48
|
-
- 夸张数量与价格的实物:成排的锅/几十份摆盘/写着惊人价格的标牌
|
|
49
|
-
- 人山排队:门口长队、满座、等位人群
|
|
50
|
-
- 名场面动作:颠勺起火、切生鱼片、拉面甩水、铁板翻面
|
|
51
|
-
- 反差罕见:凌晨空店、后厨全景、老器物、店主的手
|
|
52
|
-
低分:空镜过渡、无主体的墙面桌面、拍糊的中间帧、纯字幕帧
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
> **分工注记(MUST 遵守)**:本 rubric 只判**镜头可见之物**。知识侧要素——店家来历、
|
|
56
|
-
> 行业内幕、地域饮食脉络、名人轶事——**不进画面 rubric**,它们归写稿与背景检索(§二 已列)。
|
|
57
|
-
> 把知识侧写进来会让 VLM 对着一碗面找「历史事件」,产出一堆无意义低分并拉偏排序。
|
|
58
|
-
>
|
|
59
|
-
> 两侧的分工是:**画面 rubric 管「这一帧值不值得看」,写稿管「这件事值不值得讲」。**
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
1
|
+
---
|
|
2
|
+
name: gtrk-food-recap
|
|
3
|
+
description: 美食解说垂类图纸(解说链示例)——把探店/密着纪实长片(或自拍探店素材夹)与做饭流程记录,提炼看点后重述成一条中文美食解说成片工程。覆盖两形态:探店·密着(一家店/一顿饭/一个人的故事)与做饭流程解说(步骤线忠实重述)。菜谱知识类内容出局(那是配音链题材,走 gtrk-voiceover)。当用户想「做美食解说 / 探店视频解说 / 密着纪实翻讲 / 把这条做饭视频讲一遍 / 拉面店视频解说」时使用本图纸。链级条款(时序三档/引用段/出处对齐)以 gtrk-narration 为正本。
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# gtrk-food-recap(美食解说 · 解说链垂类示例)
|
|
7
|
+
|
|
8
|
+
把**探店/密着纪实长片**(或自拍探店素材夹)与**做饭流程记录**提炼看点,重述成一条中文美食解说成片工程。
|
|
9
|
+
|
|
10
|
+
> **定位**:解说链(`gtrk-narration` 正本)的垂类示例,与 `gtrk-travel-recap` 平级。链级条款
|
|
11
|
+
> (时序三档铺排/引用段/出处对齐/开工问询)以正本为准,本图纸只持**美食要素层**。
|
|
12
|
+
> **菜谱知识类**(讲营养学/做法原理、素材只是插画)按判据出链走 `gtrk-voiceover`。
|
|
13
|
+
> **承诺面只有快速成片**(垂类示例单模式,公约 §一 分层);个性化出路见 §六。**CLI 是手,你是脑。**
|
|
14
|
+
|
|
15
|
+
## 一、两种形态与输入契约
|
|
16
|
+
|
|
17
|
+
| 形态 | 输入 | 时序档位(正本 §三) |
|
|
18
|
+
|---|---|---|
|
|
19
|
+
| **探店 · 密着** | 一条纪实长片(二创;带字幕文件的直接当台词锚,无则转写)或自拍探店素材夹 | 软窗档缺省:进店→点单→出品→吃→人的故事,流程线单调、允许蒙太奇跳 |
|
|
20
|
+
| **做饭流程** | 一条做饭记录或素材夹 | 软窗档且**步骤线忠实**:工序 MUST NOT 乱序重排(先炸后腌是事故) |
|
|
21
|
+
|
|
22
|
+
稿源与声音基座随正本开工问询(AI 代写/自备稿;TTS/自己念)。**MUST NOT 执行任何网络下载**;二创长片是第三方作品——版权与平台二创规则责任归用户,开工先说。
|
|
23
|
+
|
|
24
|
+
## 二、美食要素层(写稿规约,叠在通用框架层之上)
|
|
25
|
+
|
|
26
|
+
通用框架层(三段式/文风铁律/自校验)继承 `gtrk-travel-recap` §三 正本,此处只列垂类专属:
|
|
27
|
+
|
|
28
|
+
- **探店三件套**:场子气质(地段/客群/烟火气)、出品与吃相(招牌菜、分量、上桌节奏)、
|
|
29
|
+
**人的故事**——密着类的魂在店主/食客身上(几点起床备料、开了多少年、常客是谁),
|
|
30
|
+
写稿 MUST 给「人」留一段,别写成纯菜品罗列;
|
|
31
|
+
- **感官转译**:口感香气用**具体动作与事实**转译(「700 克米饭压得冒尖」「铁板边缘的油声没停过」),
|
|
32
|
+
禁拟声堆砌与「入口即化」式空转(文风铁律照打);
|
|
33
|
+
- **数字如实**:分量/价格/营业时间只用素材里可见可听的,MUST NOT 编造;
|
|
34
|
+
**时效丑话**:价格与营业信息随拍摄时点变动,成片引用时提醒用户自行核对;
|
|
35
|
+
- **背景检索建议**(旅拍 §三 通用框架层同款,2026-08-28 拍板):对店名/地段/菜系关键词
|
|
36
|
+
做一轮背景检索补写稿语料(店家来历、当地饮食脉络),有检索能力就做、没有不强求;
|
|
37
|
+
检索所得与素材互证后才入稿、档案标注来源;
|
|
38
|
+
- **做饭流程线**:步骤忠实、关键动作给特写位(刀工/火候/翻面)、成品定格收束。
|
|
39
|
+
|
|
40
|
+
## 二′、L1 看点 rubric · 画面投影版(260828 新增,供 `--highlight-weight` 用)
|
|
41
|
+
|
|
42
|
+
`highlight` 是**镜头看点分**——服务端 VLM 对着一帧画面打 0–100。喂给它的评分准则
|
|
43
|
+
(`highlight_rubric`)按垂类走,美食这一档取下面这份:
|
|
44
|
+
|
|
45
|
+
```
|
|
46
|
+
判这一帧对美食短视频有没有「看点」,0-100:
|
|
47
|
+
- 大分量怼脸:食物占画面主体且分量夸张(堆尖的饭、溢出碗沿的面、整条鱼)
|
|
48
|
+
- 夸张数量与价格的实物:成排的锅/几十份摆盘/写着惊人价格的标牌
|
|
49
|
+
- 人山排队:门口长队、满座、等位人群
|
|
50
|
+
- 名场面动作:颠勺起火、切生鱼片、拉面甩水、铁板翻面
|
|
51
|
+
- 反差罕见:凌晨空店、后厨全景、老器物、店主的手
|
|
52
|
+
低分:空镜过渡、无主体的墙面桌面、拍糊的中间帧、纯字幕帧
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
> **分工注记(MUST 遵守)**:本 rubric 只判**镜头可见之物**。知识侧要素——店家来历、
|
|
56
|
+
> 行业内幕、地域饮食脉络、名人轶事——**不进画面 rubric**,它们归写稿与背景检索(§二 已列)。
|
|
57
|
+
> 把知识侧写进来会让 VLM 对着一碗面找「历史事件」,产出一堆无意义低分并拉偏排序。
|
|
58
|
+
>
|
|
59
|
+
> 两侧的分工是:**画面 rubric 管「这一帧值不值得看」,写稿管「这件事值不值得讲」。**
|
|
60
|
+
|
|
61
|
+
**怎么把它真的传进去**(2026-09-09 补:此前只有准则文本、没有入口,照做也传不进去,
|
|
62
|
+
`--highlight-weight` 打的一直是服务端领域无关缺省分):把上面代码块**原样**存成工程目录下的
|
|
63
|
+
`highlight-rubric.txt`,理解那一步带上它——
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
gtrk matrix describe --plan <工程>/split/broll-plan.json --highlight-rubric @<工程>/highlight-rubric.txt
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
存成文件而非内联,除了免去多行转义,还有个更值钱的副产品:**这条片用的是哪套准则,随工程留在盘上**,
|
|
70
|
+
事后可查、可 diff、可跟别人的片子比对。跑完 `gtrk matrix lay` 会自动读 plan 里钉存的同一个桶,
|
|
71
|
+
不必再传一遍;真传了而且跟 plan 钉的不是同一份,CLI 会**硬失败**(拿甲准则的分服务乙准则的排序,
|
|
72
|
+
事后无从分辨,所以不许静默择一)。
|
|
73
|
+
|
|
74
|
+
⚠️ 换准则要重新打分就得**重新看片**(1 积分/张)——客观描述缓存不会被覆盖,但看点分是按准则分桶的,
|
|
75
|
+
新桶里没有分就得重打。别为了试口味来回切。
|
|
76
|
+
|
|
77
|
+
个性化:不满意这份准则的用户走 `gtrk-style-maker` 建自己的美食 skill,把 rubric 换成自己的口味
|
|
78
|
+
(这正是 rubric 参数化的意义——L1 归垂类图纸持有,不硬编码在服务端);
|
|
79
|
+
建了自有栏目的话也可以把准则落进栏目配置 `broll.highlight_rubric`(L2 层),此后不必每次带 flag。
|
|
80
|
+
|
|
81
|
+
## 三、铺排与引用段(引用正本,垂类注记)
|
|
82
|
+
|
|
83
|
+
- 铺排走正本 §三:有出处直排,无出处软窗(单调先验);做饭形态窗口更窄(工序容不得远跳)。
|
|
84
|
+
- **引用段强建议开**:吃相原声、后厨煎炒声、店主原话金句——美食片的证据就是声音;
|
|
85
|
+
装配与克制丑话照正本 §四。
|
|
86
|
+
|
|
87
|
+
## 四、快速成片编排
|
|
88
|
+
|
|
89
|
+
命令序照正本 §五(索引/字幕锚 → 写稿+出处 → 检查点① → 基座 → 建工程 → 拆分 → 铺排 →
|
|
90
|
+
字卡 → BGM → 字幕),配方口径(mark-weight 0.3 / BGM 0.10 / gap-fill fast)照旅拍 §五,引用不复制。
|
|
91
|
+
BGM 检索词照公约 §三′ 内容驱动(这家店的气质:地域/年代/客群/烟火感,禁通用词套路;
|
|
92
|
+
候选给用户挑不许默认 top1;跨片避让自动生效)。
|
|
93
|
+
看点加权:`--highlight-weight 0.2` 配 §二′ 的 rubric(**须先 `matrix describe --plan` 且那一次
|
|
94
|
+
带上 `--highlight-rubric @<工程>/highlight-rubric.txt`**——不带就是按服务端缺省准则打分,
|
|
95
|
+
美食这一档的分量对比/价格实物/名场面动作全不算数;两样都漏则全部候选中性、权重白传,lay 会就此告警)。
|
|
96
|
+
BGM 选带人声歌曲(`audio_type:"song"`)时 **MUST 下载 `accompaniment_url` 伴奏版上轨**,
|
|
97
|
+
不得直接用 `download_url` 原曲——人声与解说配音打架(260827 真机踩坑)。换已上轨的 BGM 文件时
|
|
98
|
+
注意:`audio lay` 同源幂等按文件路径判定,**换不同文件不会替换旧轨**,须先剥旧 BGM 轨再 lay。
|
|
99
|
+
质检照公约 §二′「三级收敛前移」(260829 拍板,替代原「渲后必跑」):L1 结构自检恒开(零成本,含**闪帧风险不可判**的前置声明);L2 画音对齐在**落轨前**跑、`--arrange-qc` 用户可选且按帧计费;L3 渲后终检**不再逼渲**,本来就要本地渲交付时随渲附带。跑过的质检结论一律随交付呈现。
|
|
100
|
+
字卡走 MG 临场泛化(公约 §三):店名条/菜名条/价格条为主,风格锚在这家店的气质上。
|
|
101
|
+
|
|
102
|
+
## 五、检查点①(拍板停一次;铺画面前另有一次用量确认)
|
|
103
|
+
|
|
104
|
+
稿件(含引用窗口)+ 出处对照表(自备稿时)+ 画幅 + 音色(试听)+ BGM(试听)+ 字幕样式,
|
|
105
|
+
一屏一次拍板;**此前零计费动作**(这条仍成立)。
|
|
106
|
+
|
|
107
|
+
> ⟲ **2026-08-31 订正**:本节原写「必停一次」。本地素材的编排自该日起默认走云端并按
|
|
108
|
+
> 「编排量」计费,`matrix lay` **跑前会再停一次**报预估——那次不是拍板,是花费确认。
|
|
109
|
+
> 详见 `gtrk-narration` 正本 §六 的 agent 纪律(先报用量拿同意,再带 `--yes`)。
|
|
110
|
+
|
|
111
|
+
## 六、个性化出路(垂类示例定位)
|
|
112
|
+
|
|
113
|
+
**本图纸是示例**:演示美食解说这条链路怎么跑。交付后对个别环节不满意,按旅拍 §七 增量重跑表
|
|
114
|
+
悔棋(同一套零件同一套姿势);对垂类玩法/审美**本身**不满意(想要另一种探店腔调、另一套
|
|
115
|
+
视觉气质),MUST NOT 在示例上堆个性化补丁——引导用户用 `gtrk-style-maker` 建他自己的美食
|
|
116
|
+
skill。示例对个性化项目工程差着火候是定位使然,这句丑话开工时就说。
|
|
117
|
+
|
|
118
|
+
## 七、计费与丑话速查
|
|
119
|
+
|
|
120
|
+
- 计费大头:台词转写(无字幕文件时)与 TTS;实时价格原样转述后再动;
|
|
121
|
+
- 二创版权、引用段占比、价格时效三句丑话开工说清;
|
|
122
|
+
- 排错回正本与各零件 skill,本图纸不搬。
|
|
@@ -39,6 +39,8 @@ description: 直播切片图纸——把一场数小时的直播回放,拆成
|
|
|
39
39
|
> **②④ MUST 问用户、MUST NOT 代猜。** ②猜错的代价是白跑一轮分屏(几十分钟 + 积分);
|
|
40
40
|
> ④缺省是**不叠**——用户没要就零 MG 动作,MUST NOT 硬塞。
|
|
41
41
|
> **③ 的取证目的只是「告知」,不是「处置」**——看到贴片不要动手,见定位铁律。
|
|
42
|
+
> ② 与 `/gtrk-long2short`、`/gtrk-tools` 精剪开工的「多人同框」一问同口径:是就开、不确定按否;
|
|
43
|
+
> 分屏单段最长 8 秒、每条最多 3 处。
|
|
42
44
|
|
|
43
45
|
## 二、分段规约(本图纸的骨干)
|
|
44
46
|
|
|
@@ -19,6 +19,13 @@ description: 长剪短闭环——把一条长视频(课程/直播/播客/访
|
|
|
19
19
|
> `gtrk tool video_long2short_pro`(走 `/gtrk-tools`,整片上传、云端渲染、计费约为粗剪两倍)。
|
|
20
20
|
> 判断句:**「剪完还要不要再动?」要动 → 留在这儿;不动 → 转精剪。** 选错一次要白花积分重来。
|
|
21
21
|
|
|
22
|
+
> **⚠️ 开工再问一句:素材是不是多人同框(对谈 / 访谈 / 多人直播)?** 与 `/gtrk-tools` 精剪同一问、同一措辞,
|
|
23
|
+
> 和上一问**一起问、一次答完**,MUST NOT 代猜。
|
|
24
|
+
> 答「是」⇒ 带 `--split-screen`,**并在同一句里告知**:本地会改传一份压过的 720p 代理(否则只传抽出的音频、
|
|
25
|
+
> 毛片不出本地),处理时间明显变长(实测 0.09× → 0.53× 源时长);分屏素材落毛片旁 `split_screen/`。
|
|
26
|
+
> 答「否 / 不确定」⇒ 不带(「不确定」按「否」)。分屏是点缀:单段最长 8 秒、每条最多 3 处,落在子轨、
|
|
27
|
+
> 不合心意在客户端隐藏该段即回退原片。
|
|
28
|
+
|
|
22
29
|
## 前置:CLI 装没装 + 体检
|
|
23
30
|
|
|
24
31
|
先跑 `gtrk doctor`:
|
|
@@ -32,7 +39,7 @@ description: 长剪短闭环——把一条长视频(课程/直播/播客/访
|
|
|
32
39
|
gtrk long2short "D:/毛片/课程.mp4" --language zh-CN --json
|
|
33
40
|
```
|
|
34
41
|
|
|
35
|
-
|
|
42
|
+
开工问「多人同框」答「是」时(对谈 / 访谈 / 多人直播):
|
|
36
43
|
|
|
37
44
|
```bash
|
|
38
45
|
gtrk long2short "D:/毛片/对谈.mp4" --language zh-CN --split-screen --split-orientation tb --json
|
|
@@ -229,7 +229,7 @@ description: B-roll 检索铺轨编排手册——成片管线里第一个铺的
|
|
|
229
229
|
| **源时间窗过滤** | `--source-window <start,end>` | 秒,`start<end` · 不过滤 | 仅 `--local`:只返回与窗口**有交集**的命中段(段边界不裁剪);与其他过滤器 AND 叠加;图片候选自动排除;**空窗 = ok 空结果非错误**,扩窗是你的裁定 |
|
|
230
230
|
| 场景切分粒度 | `--scene-threshold <f>` | 浮点 (0,1) · `0.3` | 仅 index:镜头切换快调高、长镜头调低 |
|
|
231
231
|
| 固定机位判稳阈值 | `--stability-threshold <f>` | 浮点 (0,1) · `0.05` | 仅 index:场景内最大帧间变化低于此值判 stable,抽帧收敛为**中点 1 帧**(60s 固定机位从 30 帧省到 1 帧);summary 分列 stable/unstable 场景数与省帧数;误判 stable 丢检索粒度、误判 unstable 只是不省钱——**宁严勿松**;默认为保守值待标定 |
|
|
232
|
-
| 索引强制重建 | `--rebuild` | 开关 · 关 | 忽略指纹全部重算向量;**理解缓存(describes)不清**。存量索引库(2026-08-19 闪帧修复之前建的)**没有切点全集**:铺轨消不到段内切点、消不掉 2~3
|
|
232
|
+
| 索引强制重建 | `--rebuild` | 开关 · 关 | 忽略指纹全部重算向量;**理解缓存(describes)不清**。存量索引库(2026-08-19 闪帧修复之前建的)**没有切点全集**:铺轨消不到段内切点、消不掉 2~3 帧异景残片——用户报「成片有闪帧」且素材是高帧率长视频时,先带本开关重建一次索引。⟲ 2026-09-10 起多一条重建理由:**倍帧素材的假切点治法**与**段级运动量信号**都只在重建时落库(见「本地素材检索模式要点」) |
|
|
233
233
|
| 不要图片候选 | `--no-image-broll` | 开关 · 默认参与 | 检索与铺轨完全排除图片(零图片上云);pinned 也不豁免这条 |
|
|
234
234
|
| 跳过计费确认 | `--yes` | 开关 · 关 | 图片运镜 / describe >20 张两处护栏通用 |
|
|
235
235
|
|
|
@@ -314,6 +314,14 @@ description: B-roll 检索铺轨编排手册——成片管线里第一个铺的
|
|
|
314
314
|
- 两步走:`gtrk matrix index --dirs <a,b> --json` 建索引(增量零重算)→ `gtrk matrix --local --dirs <a,b> --project <目录> --json` 检索铺轨。
|
|
315
315
|
- **score 地板观察(重要)**:本地域 score 量纲与云端不同,完美命中可低至 0.246——默认 `0.2` 是松地板,排名靠查询内相对顺序。**别按云端直觉调高**(0.3 可能把正确命中砍光)。
|
|
316
316
|
- 索引跨机不可移植(键=绝对路径):换机重跑 `matrix index` 即可(分钟级);素材改名/移动身份不变(内容哈希)。
|
|
317
|
+
- **段带运动量,据此换段(`add-material-motion-signal`)**:重建过索引的素材,检索结果的每个 `segments[]` 会多带一个可选 `motion`(去重后帧间跳变分位 `p50`/`p90` + 样本数 + 有效帧率)。它答的是**「这段抖不抖」**,与 `score`(像不像)正交:`p50` 超 `0.05` 视为高运动,铺轨排序时降权 0.02 分(**只降权、不排除**——候选稀疏时宁可用高运动段也不留空,留空的观感代价更大)。用户报「这段画面晃得看不清 / 想换一段」时,`motion.p50` 就是挑替补的依据:同 beat 里挑 `p50` 更低的段。
|
|
318
|
+
- ⚠️ **缺席 = 不可判,不是「平稳」**。存量索引库(本能力上线前建的)没有这份信号,段上整键无 `motion`;此时高运动降权对该素材**不生效**,不是「它很稳」。要拿到信号得 `gtrk matrix index --dirs <夹> --rebuild` 重建一次。
|
|
319
|
+
- ⚠️ **样本不足也报缺席**:长静止镜头去重后可能只剩个位数帧,分位不可信,`p50`/`p90` 如实为 `null`(`samples` 仍照报)。同样 MUST NOT 读成「平稳」。
|
|
320
|
+
- **倍帧素材(30fps 内容装进 60fps 容器)**:这类素材每隔一帧就是上一帧的复制。索引会认出来并落**有效帧率**(`motion.effective_fps`,如容器 60 而实际 30)。判据取近零帧的**连续长度**而非占比——倍帧运动段呈单帧交替(连零 ≤2),静止镜头是长串连零(实测 15–118 帧),两者近零帧都多、只有连零长度分得开。
|
|
321
|
+
- 见到 `effective_fps` 明显低于容器帧率时,**如实告诉用户这条素材是倍帧的**(画面实际流畅度只有标称的一半,不是铺轨铺坏了)。
|
|
322
|
+
- **假切点已在索引侧治掉**(2026-09-10):倍帧会让快摇镜头的帧间分被顶过切点阈值,从而在**单一镜头内**吐出一串假切点(实测某段 0.43s 内记了 11 个)。现在切点判定在**去重后的帧序列**上进行——持续快摇在去重序列上是一条连续高分串、整串不算刀,真实一刀仍是孤立尖峰、照留。非倍帧素材的判定一字未动。
|
|
323
|
+
- ⚠️ **存量索引里的假切点不会自己消失**:这条修法只在**重建索引**时生效。素材被判 `doubled` 且某段 `cuts` 密得离谱(零点几秒里十几刀)时,多半是本能力上线前建的库 ⇒ `gtrk matrix index --dirs <夹> --rebuild` 重建一次;重建前别把那些切点当真。
|
|
324
|
+
- ⚠️ **一个已知取舍**:倍帧区里**紧挨着**的两刀(去重后相邻)会被判成持续运动而漏掉。它们在信号上与「快摇的头两帧」不可分——宁可漏这一对,也好过把十几个假切点放进去。
|
|
317
325
|
- 含本地 B-roll 的工程云渲会被提交口直接拒绝(`local_broll_cloud_render_rejected`)——走客户端本地出片或 `gtrk render`。
|
|
318
326
|
- embed 端点连不通(`embed_endpoint_unreachable`):查 `~/.gitruck` config `embedUrl` / env `GITRUCK_EMBED_URL`;describe 端点同理(`describe_endpoint_unreachable`,`describeUrl` / `GITRUCK_DESCRIBE_URL`);CLI 绝不回落第三方端点。会话失效(6033)重跑即自动重开续跑。
|
|
319
327
|
|
package/skills/gtrk-mg/SKILL.md
CHANGED
|
@@ -170,6 +170,20 @@ gtrk mg --project "<split产物目录>" --json
|
|
|
170
170
|
|
|
171
171
|
★ **若你是走前置硬门 2 的「明示跳过 AI」进来的**:收口前 MUST 把那份「**AI 回铺后待复查构图**」清单复述给用户(哪几颗颗粒、对应哪几个 AI beat 区间),并说明「AI 片段回铺后这几颗可能要重产」。**MUST NOT 静默收口。**
|
|
172
172
|
|
|
173
|
+
|
|
174
|
+
### 出片后 QC 报了缺陷:怎么落回 plan 重铺(闭环,别原地调参)
|
|
175
|
+
|
|
176
|
+
`gtrk render` 出片后跑 `gtrk qc <成片> --gtrk <工程> --json`。它报的缺陷**带工程坐标**(`beat` / 槽位序号 / `clip_id` / 源窗),不是一串光秃秃的成片时码——所以「换哪一段」是可答的,闭环走法:
|
|
177
|
+
|
|
178
|
+
1. **读缺陷的坐标**,定位到是哪个 beat 的第几槽、用的哪条 `clip_id` 的哪个源窗。
|
|
179
|
+
2. **读它给的排序备选**:同 beat 里未被采用的候选段,按「稳」排序(运动量升序 → 段内切点数升序 → score 降序)。索引无运动信号时退回单维排序,回执会标注**口径受限**——那时别把第一名当定论。
|
|
180
|
+
3. **改 plan 换段**(`split/broll-plan.json`),把该槽位换成备选里的第一名。⚠️ 改的时候把候选条目**原样搬**,别自己重写 `segments`——`cuts` / `motion` 就住在里面,重写即丢(详见 `/gtrk-matrix` 的 plan 编辑口径)。
|
|
181
|
+
4. **`gtrk matrix lay --project <目录> --plan <path>`** 消费改过的 plan 重铺 B-roll ⇒ 本 skill 的 MG 颗粒**按增量重铺受影响的那几颗**(`--only <beat>`)⇒ 重渲 ⇒ 再 QC 复核那条缺陷是否消失。
|
|
182
|
+
|
|
183
|
+
🔴 **这是「换素材」而不是「调参数」**:QC 报的多数画面级缺陷(晃、糊、闪)根子在选中的那一段本身,调 `--score-floor` / 阈值只会连带影响全片其它槽位。先换段,换不动再谈调参。
|
|
184
|
+
|
|
185
|
+
⚠️ **QC 是只读诊断**:常规扫描零写库。只有显式带回流开关时才会把确认的切点补录进本地索引(治检测阈值漏网),无法唯一映射的会跳过并报数——**别把「跳过 N 条」读成失败**。
|
|
186
|
+
|
|
173
187
|
### 逃生门:两种信号都要认(范围 + 节奏)
|
|
174
188
|
|
|
175
189
|
上面的「别收工、顺势收口」是**默认**,但**用户表达了范围保留或节奏保留时 SHALL 停在铺完这一步、
|
|
@@ -78,6 +78,12 @@ description: "能生产 skill 的 meta skill——通过启发式访谈引导视
|
|
|
78
78
|
4. **安装**:以作坊里的 skill 目录为源,运行 `npx -y skills add "<skill正本目录>" -g -y`,让通用适配器自动探测 Agent,并以统一正本 + symlink/junction 安装;用户明确指定宿主时追加 `-a <agent-id>`(可重复),明确要求独立副本时追加 `--copy`。不要在本 skill 里维护各 Agent 宿主的安装路径表(探测归适配器)。skill README 写明**「正本→安装」单向流**:源码正本在作坊,安装位是产物,改动先改正本再重装。
|
|
79
79
|
5. **登记**:把 `{id, ref: <正本路径>, produces: <handoff 类型或自造串>}` **追加**进本地栏目配置 `style.skills`(词表进 `style.shared`)。配置文件位置以 gtrk 的 paths 口径为准(当前 `~/.gitruck/columns/<栏目id>.json`);文件不存在则创建最小骨架 `{meta:{id},style:{skills:[…]}}`。**追加,绝不清空既有条目**。产物是管线外的(封面等),登记时加 `routing:"none"`。
|
|
80
80
|
|
|
81
|
+
**顺带问一句看点准则**:访谈里若已问出「这个栏目什么样的画面才叫有看点」(哪怕只是几条口语判据),
|
|
82
|
+
把它写成一段纯文本落进同一份栏目配置的 `broll.highlight_rubric`(L2 层)。它只影响 B-roll 候选的
|
|
83
|
+
**看点评分口径**,不参与检索/过滤/剔除。配了之后该栏目跑 `gtrk matrix describe` 不必每次带
|
|
84
|
+
`--highlight-rubric`;单次要临时换一套,flag 会整体覆盖它(OVERRIDE,不拼接——两段准则拼起来
|
|
85
|
+
会产出自相矛盾的评分口径)。没问出来就别硬凑,缺省走服务端领域无关准则。
|
|
86
|
+
|
|
81
87
|
## 交付前自检(你自己的 Quality Bar)
|
|
82
88
|
|
|
83
89
|
- [ ] 访谈记录里,产出 skill 的**每一个组织维度,首次都是用户说出的**(或从他的作品评语里直接引出的),不是我提出的?
|
|
@@ -68,7 +68,16 @@ description: gtrk 单点工具与媒体转换能力的调用向导,覆盖 `gtr
|
|
|
68
68
|
|
|
69
69
|
### ⚠️ 长剪短有两条线,别选错(名字很像,产物完全不同)
|
|
70
70
|
|
|
71
|
-
|
|
71
|
+
用户说「把这条长视频剪成短片」时,**开工先问两件事、一张表一次问完**(MUST NOT 碎问、MUST NOT 代猜):
|
|
72
|
+
|
|
73
|
+
| # | 问 | 决定什么 |
|
|
74
|
+
|---|---|---|
|
|
75
|
+
| ① | 要**可编辑工程**还是**直接成片**? | 走粗剪 `gtrk long2short` 还是本 skill 的精剪——选错一次的代价是白花积分重来 |
|
|
76
|
+
| ② | 素材是不是**多人同框**(对谈 / 访谈 / 多人直播)? | 答「是」⇒ 命令带 `--split-screen`、不再追问;答「否 / 不确定」⇒ 不带。**「不确定」按「否」**:开错是分屏烧进成片不可回退 + 一段检测等待,不开只是少个点缀、看片后补一句重跑即可 |
|
|
77
|
+
|
|
78
|
+
> 分屏是**点缀不是主体**:只挑多人同框段做,单段最长 8 秒、每条最多 3 处,不会整条变分屏。
|
|
79
|
+
> 单人素材开了也不会出现分屏画面,但仍会多付一段说话人检测的等待——**不是零副作用**,别这么跟用户说。
|
|
80
|
+
> 跑完 `clips.md` 头部会回显「分屏:开/关」(只是请求态,报告不知道实际做了几处)。
|
|
72
81
|
|
|
73
82
|
| | `gtrk long2short`(粗剪,**独立命令、不在本 skill**) | `gtrk tool video_long2short_pro`(精剪,本 skill) |
|
|
74
83
|
|---|---|---|
|
|
@@ -165,6 +165,18 @@ description: 旅拍解说一站式成片图纸——输入一个旅拍素材文
|
|
|
165
165
|
> 分工是:**画面 rubric 管「这一帧值不值得看」,写稿管「这件事值不值得讲」。**
|
|
166
166
|
> 平淡的过渡帧判低分不等于不可用——降权不排除,候选稀疏时照样上(留空更难看)。
|
|
167
167
|
|
|
168
|
+
**怎么把它真的传进去**(2026-09-09 补:此前只有准则文本、没有入口,照做也传不进去,
|
|
169
|
+
`--highlight-weight` 打的一直是服务端领域无关缺省分):把上面代码块**原样**存成工程目录下的
|
|
170
|
+
`highlight-rubric.txt`,理解那一步带上它——
|
|
171
|
+
|
|
172
|
+
```bash
|
|
173
|
+
gtrk matrix describe --plan <工程>/split/broll-plan.json --highlight-rubric @<工程>/highlight-rubric.txt
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
存成文件而非内联,除了免去多行转义,还留下「这条片用的是哪套准则」的可查痕迹。跑完 `gtrk matrix lay`
|
|
177
|
+
自动读 plan 里钉存的同一个桶,不必再传;真传了而且与 plan 钉的不同源,CLI 会**硬失败**(不静默择一)。
|
|
178
|
+
⚠️ 换准则重新打分要**重新看片**(1 积分/张):客观描述缓存不被覆盖,但看点分按准则分桶,新桶没分就得重打。
|
|
179
|
+
|
|
168
180
|
## 四、检查点①(双模式共有,必停)
|
|
169
181
|
|
|
170
182
|
写完稿**必须停下**,把以下六项一次给用户拍板。**未经确认 MUST NOT 发起 TTS 与 B-roll 云端编排计费动作**。
|
|
@@ -303,7 +315,9 @@ gtrk subtitle lay --project "<工程目录>" --style default --color 雅黑 --js
|
|
|
303
315
|
|
|
304
316
|
**配方级参数口径**(打样标定):
|
|
305
317
|
- `--mark-weight 0.3`:美观度加权起步值(mark 缺失素材中性不受罚);
|
|
306
|
-
- `--highlight-weight 0.2`(260828 新增):看点加权,配 §三′ 的 rubric
|
|
318
|
+
- `--highlight-weight 0.2`(260828 新增):看点加权,配 §三′ 的 rubric——
|
|
319
|
+
**须在 describe 那一步带 `--highlight-rubric @<工程>/highlight-rubric.txt`**,
|
|
320
|
+
不带就是按服务端缺省准则打分,旅拍这一档的奇观地貌/极端天候/规模感全不算数。与 mark 正交——
|
|
307
321
|
mark 判「好不好看」、highlight 判「有没有看点」。两权之和 0.5,语义仍占一半,
|
|
308
322
|
**MUST NOT 加到语义压不住**(那会变成「专挑好看的,不管说的是什么」)。
|
|
309
323
|
⚠️ 两个权重与 blurry 降权**都依赖 `matrix describe --plan` 跑过**(编排 ⑦ 那一步);
|