Skip to content
Content
Skill

/short-drama-edit

将已生成的短剧镜头剪成成片,记录入出点、镜序、声音、字幕与交付规格。用于套剪、加字幕、统一响度、调整节奏或导出精修素材;需要补素材或修改故事时转回对应创作阶段。

BOOST
From plugin
zenstory-ai-drama-skills-2
2.5k12 skills
Install
$ npx -y skills add zenstory-ai/drama-skills --skill short-drama-edit --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/short-drama-edit

Context preview

The summary Claude sees to decide when to auto-load this skill.

将已生成的短剧镜头剪成成片,记录入出点、镜序、声音、字幕与交付规格。用于套剪、加字幕、统一响度、调整节奏或导出精修素材;需要补素材或修改故事时转回对应创作阶段。

SKILL.md

short-drama-edit.SKILL.md
name: short-drama-edit
description: 将已生成的短剧镜头剪成成片,记录入出点、镜序、声音、字幕与交付规格。用于套剪、加字幕、统一响度、调整节奏或导出精修素材;需要补素材或修改故事时转回对应创作阶段。
license: MIT

短剧剪辑与成片

把 `剧集/<EP>/制作成果/` 里的逐镜素材装配成一条成片,取舍写进 `剧集/<EP>/剪辑单.md`。 每段使用二级标题 `## CUT-...`,各自绑定一个来源 ID 和一个真实媒体文件:视频段是 `MOTION-...`, 静态漫剧的关键帧段是 `SHOT-...` 或 `IMG-...`。

根据实际素材选择可用片段,按剧本与分镜核对叙事。素材与意图不一致时,记录取舍和缺口。

Quick Start

用 $short-drama-edit 把 EP001 已生产的镜头剪成成片

入口

进入条件是**素材已经存在且可读**:`剧集/<EP>/制作成果/` 里有本次要用的视频文件; 静态漫剧是已接受的关键帧和配音文件。 提示词写完、job 确认过、adapter 返回成功,都不等于素材可用;本阶段只认当前能打开的文件字节。

素材不全时可以先剪已有连续段落;用户要求完整成片时,将这一版标为片段并列出缺口。 在「未采用镜头」说明缺文件、质量不可用或叙事取舍。

`剧集/<EP>/分镜.md` 与 `视频提示词.md` 是镜序和职责的来源。剪辑可以**取舍**它们,不能**改写** 它们:删一镜、缩一镜、换顺序都属于本阶段;改台词、改镜头职责、改起终状态要回上游发修订请求。

内置渲染直接拼接编码后的分段,输入素材的画幅与帧率须一致。`check` 在可探测媒体时核对; 不同规格先通过外部工具按交付要求统一,保留构图并记录裁切或留边,再更新剪辑单的路径与时间。

渲染与测量需要 `ffmpeg` / `ffprobe` 在 PATH 上。没有时 `edit_tool.py` 直接失败并说明, 不用别的手段近似,也不把「没测」写成「通过」。

工作流

1. **逐段看完整素材,先标可用带,再谈剪辑。** 每个文件从头到尾看一遍,写下它实际能用的时间 区间,以及区间之外发生了什么(起势静止、结尾漂移、发白、动作回弹、多余的重复表演)。 这一步的产出是事实,不是决定。做法见 [生成素材的可用带](references/generated-footage.md)。 2. **有台词的镜先定位发声区间。** 保留完整字音和所需停顿。内置工具同步切画面与声音; 需要在连续对白上换画面时,使用外部剪辑工具分开处理。 3. **在可用区间内选叙事入出点。** 按动作、反应或停顿的需要选择入点,出点取信息完成之后、缺陷 开始之前。逐段写清入点理由和出点理由。做法见 [入出点与镜序](references/cut-craft.md)。 4. **排镜序并检查相邻关系。** 检查动作、空间、揭示与声音是否连贯;重复信息没有新增作用时再删。 5. **比较相邻段的画面。** render 会在同一场景内自动接镜;按同场景、同光态比较可比区域, 自动接镜不够或不该动的段写 `画面`。做法见 [接镜与色彩一致性](references/generated-footage.md#接镜与色彩一致性)。 6. **处理声音接缝与响度。** 拼接后回听;需要混音时通过外部工具执行并记录。 做法见 [声音、字幕与音乐](references/sound-and-subtitles.md)。 7. **写字幕、画面文字与音效。** 字幕的每一个字都取自 `剧本.md` 的台词原文,不取自转写结果; 标点照抄剧本,字不能改。转写只用来定位时间。画面留白给后期的 `[画面文字]` 写成 `画面文字` 行, 需要落在画面文字出现时的提示音写成 `音效` 行。 8. **写出 `剪辑单.md`,再渲染。** 先有文档后有成片:文档是可审查、可修订、可复现的那一份, 成片是它的产物。 9. **按可测项验收成片,再交付。** 见 [交付与验收](references/delivery-verify.md)。

剪辑单要求

  • 正文开头写交付规格:`成片目标时长`、`画幅与帧率`、`交付响度`、`字幕`。目标时长是意图,

实际时长与目标的差写在报告里。用户明确要求固定时长时,应满足要求或报告缺少的素材。

  • 每段一个 `## CUT-<EP>-<序号> · <中文名称>`,块内逐行写:
  • `- 来源:<MOTION-...> · <项目相对路径>`——`MOTION-...` 必须是 `视频提示词.md` 里真实存在

的条目,路径必须是当前可读的文件。静帧段写 `- 来源:<SHOT-...> · <图片路径>`(`分镜.md` 的镜头) 或 `<IMG-...> · <图片路径>`(`图片提示词.md` 的条目),图片为 png / jpg / jpeg / webp; 入点写 `0.00`,出点等于时长,至少 `0.50` 秒。静帧按交付规格的画幅与帧率铺满出画, 有静帧时交付规格必须写 `画幅与帧率`。

  • `- 入点:<秒>` / `- 出点:<秒>` / `- 时长:<秒>`——三者必须自洽,`出点 - 入点 == 时长`。

全部用秒,保留两位小数,不写时间码,不写帧号。

  • `- 取舍:入点=<理由>;出点=<理由>`——理由写画面上发生了什么,不写「节奏需要」。

理由应能对应实际素材与本镜叙事需要。

  • `- 声音:<本段声音怎么处理>`——记录保留原声或外部处理。此行不驱动内置 render 的混音。
  • `- 画面:<接镜校正>`、`- 画面:无` 或 `- 画面:不校`——校正是「亮度 <数>」「饱和 <数>」「色温 <数>」

三项的任意组合,用 `;` 分隔,写了就替代这一段的自动接镜;`无` 表示不另写校正;`不校` 表示连自动接镜 也不做。详见 [接镜与色彩一致性](references/generated-footage.md#接镜与色彩一致性)。

  • `- 字幕:<逐字台词原文>` 或 `- 字幕:无`。本段有多句台词时改用编号写法,

每句自带时间:`- 字幕 1:0.20-1.50 请进`、`- 字幕 2:2.30-4.30 门没有锁`。 编号从 1 连续,时间相对本 CUT 入点,且不得重叠;止可以超过本段时长(跨切点见 [静帧段](references/still-cuts.md#配音))。句末可加 `(重点:<词>|<词>)`, 这些词须出现在本句里,烧录时标黄。字色按 `剧本.md` 里这句的来源决定:对白白色, `[VO] 系统:` 青色,其他 `[VO]` 浅青,剪辑单里不另写。

  • `- 画面文字 N:<起>-<止> <样式> <项>|<项>…`——视频模型写不对字,系统面板、倒计时、屏幕上的

粉丝数在画面里留白,由 render 叠上去。每一项都要能在 `剧本.md` 的 `[画面文字]` 行里找到。 单条可不编号;编号与时间规则同字幕。三种面板共用画面顶部,角标在右上角,同一位置不得重叠。

| 样式 | 各项的位置 | |---|---| | `卡片` | 每项一行:第一个词是名称,最后一个词是数值,中间的词是单位(`主号 粉丝 2|小号 1`) | | `系统面板` | 第一项是状态行,逐字打出;其余是奖励行 | | `任务面板` | 标题、目标(逐字打出);其后写成 `<数> / <数>` 的一项是进度,其余是奖励标签 | | `角标` | 各项连成一行标签 |

奖励可在项末写稀有度 `(传说)` `(史诗)` `(稀有)`,不写按稀有;稀有度不是文字,不参与核对。 `任务面板` 和 `角标` 末尾可加 `(倒计时:<秒>)`,显示成 `4天 23:59:58` 并逐秒走动; `(倒计时:接续)` 接着成片里上一个倒计时走。相邻两段写同一条角标且首尾相接时, 成片里是同一个角标,切镜时不重新入场。面板自带的 `【系统提示】` `【新任务】` `进度` 属于样式,不写进剪辑单。

  • `- 音效 N:<起>-<止> <项目相对路径>(起点:<秒>;增益:<dB>)`——从声音文件的起点(默认开头)

取 `止 - 起` 秒,混进本段该时刻的原声;括号里两项都可省、顺序不限,增益范围 -40 到 +6。单条可不编号。

  • `- 运镜:<固定|推近 n%|推近 r%/秒|…>`——只写在静帧段上,方向另有拉远、左移、右移、上移、下移;

n 为 1–30 的幅度,r 为 0.1–10 的速度(可带小数),不写按固定。两种写法怎么动、怎么接见 [静帧段](references/still-cuts.md#运镜)。

  • `- 配音 N:<起> <项目相对路径>(起点:<秒>;增益:<dB>)`——从本段 `起` 秒开始,把声音文件从起点

放到结尾;括号规则同音效。`起` 可以为负,声音可以跨过切点;跨切点、核对与后期配音的规则见 [静帧段](references/still-cuts.md#配音)。

  • `- 环境声:[<起>] <项目相对路径>(起点:<秒>;增益:<dB>)` 或 `- 环境声:[<起>] 无`——从本段 `起` 秒

(默认 0,可为负)起循环铺一层环境声,直到下一条 `环境声`;`无` 让它停下。见 [静帧段](references/still-cuts.md#环境声)。

  • 素材里没有被采用的镜头,在正文开头写一行 `- 未采用镜头:<MOTION-...>(理由:……)`,

多项用 `;` 连接。理由区分两类:**文件缺失**(还没生产 / 生产失败)和**质量不可用** (生成结果不能用),也可说明叙事取舍。补素材前先判断需要重出还是修订上游。 有静帧段时也可写 `SHOT-...`;哪些镜头要有下落见 [静帧段](references/still-cuts.md#每一镜的下落)。

  • 同一个 `MOTION-...` 可以拆成多个 `CUT-...`(同一段素材的两处分别使用),也可以整段不用。

不能凭空出现没有素材来源的 `CUT-...`。

  • 一段素材被用两次时,两个 `CUT-...` 的区间不得重叠:同一批帧在成片里出现两次是重复镜头,

不是复用。确需重复出现(闪回、强调)时写明它是有意重复,并说明第二次为什么仍然成立。

边界

  • **不生成新素材。** 需要补拍、重出、换参考图,回 `$short-drama-produce`;需要改提示词,

回 `$short-drama-video-prompts` 或 `$short-drama-image-prompts`。

  • **不改上游语义。** 剪辑单可以让某句台词不出现在成片里(整镜未采用),不能改这句台词是什么。

发现剧本层面的问题就点名报告,交回 `$short-drama-write`。

  • **沿用剧本的声音设计。** 保留已有对白、VO 和 OS,不自行增加解说;需要新增叙述时回写作阶段。
  • **不把技术成功写成质量结论。** 渲染完成、时长对上、文件存在,都不是「这条片子能看」。

成片质量的判断交给 `$short-drama-review`,或交给创作者本人。

  • **按已授权目标完成。** 继续修复影响交付的问题;新增创作方向或补素材需求交给创作者决定。

命令

命令由 [edit_tool.py](scripts/edit_tool.py) 提供:

python3 <本技能目录>/scripts/edit_tool.py check <剧集/EP001> --project-root <project>
python3 <本技能目录>/scripts/edit_tool.py render <剧集/EP001> --project-root <project> [--no-subtitles] [--subtitles ffmpeg|remotion] [--remotion-concurrency N]
python3 <本技能目录>/scripts/edit_tool.py verify <剧集/EP001> --project-root <project>

`check` 只核对不渲染:素材是否比剪辑单新(重出之后字幕、画面文字与音效时间必须重测)、区间自洽、 来源 ID 解析与每一镜的下落、文件存在、区间不越过素材时长、同源区间不重叠、字幕文字能在 `剧本.md` 里找到、 画面文字能在 `[画面文字]` 行里找到、「接续」之前确有倒计时、音效文件存在且落在本段内、 字幕与配音在整条片里不越过结尾、互不重叠。 其中「区间不越过素材时长」需要 `ffprobe`,配音的两项需要 `ffmpeg`;缺哪个就报哪几项「未测」并说明原因, 不静默跳过。 `render` 按剪辑单切段、静帧按运镜出画、同场景自动接镜、拼接、混入音效与配音、烧字幕与画面文字、统一响度, 输出 `剧集/<EP>/制作成果/成片/`。 `verify` 只测量已经渲染出来的成片并回报数字,另列出画面文字、音效与配音在成片里的起止秒、切点亮度变化和疑似坏帧, 供抽帧和回听;不改文件、不给质量结论。

字幕默认由带 libass 的 ffmpeg 烧录。`--subtitles remotion` 换成一条排版可调的 路线,代价是装一次 Node 依赖,而且叠层要**逐帧过无头浏览器**渲整部成片——慢且吃内存, 并发默认压在 2(`--remotion-concurrency` 可调,调高前先量本机)。画面文字只有 Remotion 一条路线: 剪辑单里有画面文字时,无论字幕走哪条路线 render 都需

Read more
Ships withzenstory-ai-drama-skills-2

开源 AI 短剧/漫剧创作 skill 合集:剧本、角色资产、分镜 storyboard、图片/视频提示词、审查,适配 Claude Code 与 Codex | Open-source AI short drama / micro-drama skills for Claude Code & Codex: script, assets, storyboard, image & video prompts, review. MIT.

Get the whole plugin
Stats
2,596
Stars
561
Forks
Active
Maintenance
Python
Language
MIT
License
4d ago
Last commit
2mo ago
Created
11h ago
Added

Repo: zenstory-ai/drama-skills