Tooluck logoTooluck
SKILL.md

chengfeng-subtitle

Agent skill fromAgentchengfeng/chengfeng-videocut-skills

给剪好的口播做字幕:直接用已有的逐词稿加账本算出剪后时间(不必导出、不必重新转录)、用词典和作者文稿改写听错的专名、按句子分屏、在 Studio 里逐屏复核。用户说做字幕、加字幕、改字幕、重新分屏、字幕不对时使用。不要用于删词剪辑、物理剪切、分镜动画或成片渲染。

How to install chengfeng-subtitle

install chengfeng-subtitle
# install the chengfeng-videocut-skills pack with the skills CLI
npx skills add Agentchengfeng/chengfeng-videocut-skills

# or add only this skill to Claude Code: copy the folder

plugins/chengfeng-videocut/skills/chengfeng-subtitle/

# into

~/.claude/skills/chengfeng-subtitle/ (all projects)

.claude/skills/chengfeng-subtitle/ (one project)

plugins/chengfeng-videocut/skills/chengfeng-subtitle/SKILL.md

Apache-2.0Full file
1# 字幕
2
3**这是一件事,不是流程的一段。** 用户什么时候喊它就什么时候做——刚剪完可以做,
4做完又删了两句可以再做一遍。
5
6它只有一个前提:**账本已经存在**。不是因为它排在剪辑后面,而是因为没有账本,
7它不知道哪几句留着、各自落在成片的第几秒。
8
9```text
10需要 edit-list.json(账本)、transcript.json(逐词稿)
11产出 subtitles.json
12```
13
14干完就停,**不指挥用户下一步**。
15
16先读取并执行 [业务 Skill 的阶段合同](../../references/business-workflow-contract.md),
17判据见 [字幕校对规则](references/subtitle-correction.md),专名写法见
18[AI 用词词典](../../references/ai-term-dictionary.md)。
19
20## 谁说了算什么
21
22这是这一段的地基,其余都从这里推出来。
23
24```text
25剪口播 说了算「留哪些话、在什么时候」 ← 时间的唯一真相
26字幕 说了算「屏幕上显示什么字」 ← 显示的唯一真相
27```
28
29一屏字幕存的是**词 id 列表 + 显示文字**,**不存秒数**。时间每次从账本现算。
30于是两本账没有第二份时间可以走偏,失效也能精确到屏:「第 7、第 12 屏的词被剪掉了」,
31而不是那句谁也点不动的「字幕可能已过期」。
32
33**字幕存自己的文字是故意的。** 转录回答「他说了什么」,字幕回答「给人看什么」——
34标点、去掉的口头禅、专名的正式写法,这些本来就该不一样。逼一份字符串同时干两件事,
35字幕就永远加不了逗号。
36
37## 0. 就绪
38
39先执行 [检查更新](../chengfeng-check-updates/SKILL.md) 的「就绪检查」——skills 是否
40最新、Runtime 是否配套;**插件根**也在那里定位(本文命令里的 `<插件根>` 都代入
41那个字面路径)。只有「就绪」才继续;「需新会话」或「停」按它的处置执行
42(含「禁止自制替代界面」禁令),业务 Skill 不自带环境逻辑。
43
44若就绪结果为 `runtime.kind=desktop-managed`,直接复用桌面 App 已安装的稳定 CLI 与
45同一 `launchd/windows-task` 服务;不要解析 Electron 路径、另装依赖或起第二个
46Runtime。
47
48## 1. 入口断言
49
50```bash
51node "<插件根>/scripts/ensure-running.cjs" --json
52node "<插件根>/scripts/videocut-cli.cjs" inspect "<项目目录>" --json
53```
54
55| 断言 | 不成立时 |
56| --- | --- |
57| `edit-list.json` 存在且有片段 | 说清楚缺账本,让用户先喊剪口播。**不要自己去剪。** |
58| `transcript.json` 存在 | 项目没准备好,停止。不要自己造一份。 |
59
60**不要断言 `source_cut.mp4`,也不要去转录。** 字幕两样都不需要——见下一节。
61
62## 2. 改字:先词典,后文稿
63
64**不需要重新转录。** 原来那份逐词稿已经带着时间戳,账本知道哪几段留着——
65每个词落在成片的第几秒是**算出来的**,不是再听一遍听出来的:
66
67```text
68词在源片的第几秒 转录里就有
69…

Excerpt shown under the repository's Apache-2.0 license.

More skills in chengfeng-videocut-skills

Newsletter

Join the Community

Subscribe to our newsletter for the latest news and updates