在 ScreenKite 中打开 .skbundle 录制文件,然后向 AI Agent(Claude Code、Codex、Gemini CLI 或任何支持 ScreenKite MCP 工具的 Agent)发送指令。Agent 负责两件事:剪切转录文本和生成带场景布局的 B-Roll。你负责审阅和确认,它负责执行。
社区工作流、提示词和技能包:github.com/ScreenKite/awesome-ai-video-editing
预检:本地模型就绪状态
在 Agent 使用 WhisperKit 进行转录之前,模型文件必须已存在于磁盘上。Agent CLI 在启动时会进行此检查——如果所选模型路径不存在或已失效,你会看到:
WhisperKit transcription is not configured. Open Settings → Transcription and download a WhisperKit model. Stop here and ask the human to configure a transcription provider before continuing.
解决方法:
- 打开 Settings(设置)→ Transcription(转录)。
- 选择 Word-Level(词级) 子标签。
- 将 Provider(提供商)设置为 Local(本地)(或 Automatic(自动),优先使用 ElevenLabs,并将 WhisperKit 作为备选)。
- 在 WhisperKit model(WhisperKit 模型) 部分,从菜单中选择一个模型,然后点击 Download Selected Model(下载所选模型)。
- 等待进度条完成;标签会变为 Model downloaded(模型已下载)。
- 重新运行 Agent 命令——就绪检查将会通过。
向 Agent 发送指令
你不需要写代码,只需写一句话。Agent 会代你调用 ScreenKite 的 CLI 和 MCP 工具。
Claude Code
# 在项目文件夹中启动交互会话 claude # 然后输入: Open ~/Desktop/Recording.skbundle and do a transcript cut. Plan the cuts first.
# 或从终端一次性运行 claude "Open ~/Desktop/Recording.skbundle, transcribe the mic with ElevenLabs, plan all cuts before executing"
Codex CLI
codex "Open ~/Desktop/Recording.skbundle and do a transcript cut — plan first, then wait for my approval"
# 一次性完成 B-Roll codex "Open ~/Desktop/Recording.skbundle, transcribe and cut, then add medium-density B-roll with a centered layout"
Gemini CLI
gemini "Open ~/Desktop/Recording.skbundle. Transcribe the mic, plan the cuts, and show me the list before touching the timeline."
Agent 实际调用的内容
在底层,每个会话都从以下内容开始:
# 打开项目
'/Applications/ScreenKite.app/Contents/MacOS/ScreenKite' agent project open \
--path ~/Desktop/Recording.skbundle --json
# 读取项目状态
'/Applications/ScreenKite.app/Contents/MacOS/ScreenKite' agent tool call \
--name getProjectState --input-json '{"scope":"summary"}' --json
你可以随时自行运行这些命令来检查状态。每次调用时加上 --json 可使输出便于机器读取。
技能包(Skills)
技能包是预构建的提示词集合,可以教会 Agent 完整的工作流程,这样你就不必每次从头描述。安装一次,在任何会话中按名称引用即可。
安装
npx skills add ScreenKite/awesome-ai-video-editing
可用技能
use-screenkite-advanced-b-roll — 完整流水线:使用 ElevenLabs 转录、打包为短语视图、校对专有名词、提供带密度选项的视觉菜单、并行生成 Hyperframes 合成内容、渲染为 MP4,并使用 magicMove 过渡应用 setSceneLayout DSL。
claude "use the use-screenkite-advanced-b-roll skill on ~/Desktop/Recording.skbundle. Cute visuals, centered layout, medium density."
video-use — 以转录文本为核心的编辑:转录、打包、规划剪辑、确认、执行。在 ScreenKite 之外工作时,还可以通过 FFmpeg 处理调色、字幕和动画叠加。
claude "use the video-use skill. Transcribe ~/Desktop/Recording.skbundle and plan a cut."
在 Claude Code 中调用技能
如果你已交互式打开 Claude Code,可以将技能名称作为斜杠命令输入:
/use-screenkite-advanced-b-roll
技能加载后会提示你输入录制文件路径。
第一部分——基于转录文本的剪辑
Agent 的工作流程
- 使用 ElevenLabs Scribe 转录麦克风音轨——词级时间戳,并缓存结果,不会重复上传相同文件
- 将原始 JSON 打包为可读的短语视图(短语在静音 ≥ 0.5s 处断开)
- 通过网络搜索校对每个产品名或专有名词——ASR 经常会误听名称(例如将 "ScreenKite" 转录为 "Screencast");错误的名称会传播到所有下游字幕和视觉素材中
- 提出剪辑列表,包含精确的时间范围和每次剪辑的通俗说明
- 在接触时间轴之前等待你的确认
相同的词级时间戳还能驱动字幕生成。当 Agent 在 ScreenKite 中创建字幕时,它使用已配置的 Word-Level(词级) 转录提供商,并为每个口语单词导入一个字幕提示,而非长句子块。请参阅 Word-Level Generated Captions(词级生成字幕) 了解应用端的设置。
示例提示词
Open ~/Desktop/Recording.skbundle and transcribe + cut. Show me the cut plan first, don't touch the timeline yet. ElevenLabs key is in ~/.config/env/elevenlabs.env
Agent 会返回类似以下内容:
[000.06–000.66] "HelloPro." → false start [002.14–002.56] "Hello." → second false start --- CUT [0 → 2.98s] --- [011.84–012.18] "Uh," → filler CUT [8.72–10.00] [043.60–045.16] "And let's see." → transition CUT [40.48–42.60] Result: 58.8s → 51.2s Apply these 3 cuts?
回复 yes,所有剪辑将通过 editTimeline(action: "cut", {ranges: [...]}) 一次性应用。
会被剪掉的内容
- 假开始 — 真正第一句话之前的所有内容(测试麦克风、重复的问候语)
- 填充词 — 两侧有足够静音的孤立 "呃"、"嗯"、"那个"
- 过渡短语 — "好,让我看看"、"那么"、"总之" 等节奏之间的填充语
Agent 绝不会从单词中间剪切,每个剪辑边缘会距离词语边界填充 100–150ms,并优先选择 ≥ 400ms 的静音处作为剪辑目标。
第二部分——自动 B-Roll 生成
剪辑完成后,Agent 将转录文本映射到节拍点,并使用 Hyperframes(HTML + GSAP → MP4)为每个节拍点生成动画视觉素材。每个视觉素材以带有 magicMove 过渡的场景布局形式放置在 ScreenKite 中。
布局样式
Corner PiP(角落画中画) — 屏幕录制充满画布,B-Roll 作为角落点缀出现(宽度 40–42%)。适合以屏幕内容为主要叙事的教程。
Centered B-roll(居中 B-Roll) — 屏幕录制缩小至左上角(约 38%),B-Roll 居中播放(约 56% 宽度)。适合以视觉效果为主的产品介绍。
# 角落画中画(默认) claude "add B-roll with corner layout" # 居中 claude "add B-roll — minimize the screen to top left, B-roll centered, medium density, cute visuals"
Agent 的工作流程
- 节拍映射 — 将剪辑后的转录短语映射到节拍:产品名称、核心功能、工作流程、行动号召
- 密度选择 — 提议稀疏(4)、中等(7)或密集(10);显示插槽菜单;等待你选择
- 并行生成 — 同时分发每个插槽的子 Agent;每个 Agent 生成完整的 1920×1080 Hyperframes 合成内容
- 串行渲染 — 按顺序将每个插槽渲染为 MP4(并行 Chrome 实例会导致帧损坏)
- DSL 应用 — 使用你选择的布局为每个时间窗口调用
setSceneLayout
视觉素材规范
每个生成的视觉素材遵循以下规则:
- 全帧内容 — 1920×1080 的 MP4 即为画中画帧;内容填满边缘(将小卡片放在大片空白视频中会让它"角上角"地被埋没)
- 入场 → 停留 → 无内部退出 — 视觉素材动态进场(0–1.5s),稳定为可读的停留状态,然后停止。
magicMove处理退出。内部淡出会产生破损的双重退出效果。 - 大号排版 — 展示文本 160–220px,正文 48–72px;在 40–56% 宽度下,这样的字号在屏幕上仍清晰可读
密度方案
| 方案 | 插槽数 | 间距 | 风格 |
|---|---|---|---|
| 稀疏 | 4 | 约 13s 间隔 | 简洁、纪录片感 |
| 中等 | 7 | 约 7s 间隔 | 均衡(默认) |
| 密集 | 10 | 约 5s 间隔 | 讲解型节奏感 |
示例提示词
Recording is cut. Add B-roll: - Centered layout (screen top-left, B-roll center) - Medium density - Cute, warm visuals - All text in English
对单个插槽进行迭代
Slot 3 should show a Swift logo instead of the Apple emoji. Re-render slot 3 and re-apply.
Agent 只会重新生成该插槽并重新应用其 DSL 窗口,其他所有内容保持不变。
整合在一起
# 1. 在项目文件夹中启动 Claude Code claude # 2. 转录剪辑 "Open ~/Desktop/Recording.skbundle. Transcribe and plan cuts. ElevenLabs key at ~/.config/env/elevenlabs.env" # → 审阅剪辑列表 → "yes" # 3. B-Roll "Add B-roll — centered layout, medium density, cute English visuals" # → 审阅 7 插槽节拍菜单 → "Medium, looks good" # → Agent 并行生成,串行渲染,应用 DSL(约 3 分钟) # 4. 抽查 "Show me slot 4 at 18s" # → 在 ScreenKite 中拖动查看 # 5. 如需调整 "Slot 4 — change the node diagram to use mint green for all nodes"
实际操作时间:不到 5 分钟。渲染时间:7 个插槽约 2–3 分钟。
更多工作流、示例提示词和社区技能包:github.com/ScreenKite/awesome-ai-video-editing