mcpbeat

Short Drama Video Prompts

worldwonderer/short-drama-video-prompts

为已接受的短剧镜头和关键帧编写或修改可复制的通用视频提示词与运动规格。用户提到视频提示词、文生视频、图生视频动作、人物表演过程、运镜、对白口型、环境运动、镜头时长、起止状态或把分镜转成视频提示词时直接使用;只描述单个已编镜头内的运动、表演、摄影与声音,不生成视频,不调用模型或供应商接口,也不改写分镜边界。

37k tokens
context cost
the whole folder, loaded on every use
16
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
466
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/worldwonderer/drama-skills --skill short-drama-video-prompts

The instruction itself

6 sections, as written by the author

短剧视频提示词

把分镜已经决定的一个镜头,写成按时间执行的动作、表演、摄影和声音。运动说明只实现起止边界,不能改写边界。

先定位套件

从本技能目录读取 suite-ref.json,按其中相对 core_manifest 定位唯一同级主技能与

套件清单;确认声明的 core、contract、recipe 和清单 hash 一致后再读写项目。

随后执行 阶段契约 的运行时预检:先恢复事务、读取状态,再进入本阶段。

该文件同时给出本阶段的所有权边界、需要从制作形态取得哪些输入,以及本阶段规则表;本技能不读取其他技能的文件。

进入条件与权属

  • 可从已接受的镜头或关键帧直接进入,无需重新开发故事;先定位项目和版本一致的主技能。
  • 所有权、下游文件何时变为 stale 或项目状态不清时,读

阶段契约 的所有权边界;需要定位规则 ID

或解释审查问题时,读同一文件的本阶段规则表。

  • 输入至少包含状态为 accepted 的镜头、起始关键帧/边界、时长、连续性终点与对白/声音引用;未接受或 stale 时退回 $short-drama-storyboard
  • 若创作者明确要求全链预览,可对状态为 provisional、但没有 unresolved 问题的镜头/关键帧

写候选运动说明;保留 authority:candidate,禁止声称已经 acceptedapproved

delivery-ready

  • 镜头的起点、终点、时长、对白、资产绑定和下一镜状态全部只读。运动规格只负责有序动作、表演过程、摄影与声音实现,以及派生的结束报告。
  • 视觉、声音和口型等审美选择读取 short-drama.json#/creator_authority/{visual_direction,production_profile}

直接从本环节开始的项目若为 unset,就保留选择,不把默认配置写成已接受事实。

  • 先写不绑定供应商的通用文本。不得生成视频或音频、上传参考帧、创建远程执行任务、调用模型接口、轮询状态或宣称成片质量。

按任务加载资料

| 任务 | 必读资料 |

|---|---|

| 任意镜头运动说明/提示词 | 起点—变化—终点配方 |

| 动作、表演、节奏或超载 | 表演弧与动作预算 |

| 运镜、环境、对白、声音、边界冲突 | 摄影声音与连续性 |

| 自检、独立复核、正反案例 | 审查量表与合成案例 |

| 生产端提示词写法、台词绑定、负面清单 | 生产提示词语法惯例 |

| 分段交付、槽位职责、时长分配 | 交付档案与槽位语义 |

| 多张参考图的用途、补拍或替代版范围 | 阶段契约 的参考媒体与补拍 |

规格使用 运动规格模板;末镜或下一集记录尚未建立时参考

末镜定位示例;可复制交付使用

Markdown 模板。只加载本次问题需要的资料。

工作流

1. 先写“不能动的边框”

建立只读的起止边界清单:

  • 镜头/关键帧准确的 artifact/hash/field 引用;
  • 时长,以及起点姿态、重心、目光、双手、持物和空间关系;
  • 分镜负责的结束姿态/状态与连续性终点;
  • 准确的对白、画外音、音效和声音引用;
  • 镜头目的、信息/情绪变化和下一镜交接(只用于核对)。

任何来源冲突先停止。如果创作者要求延长时长、换结尾站位、删对白或改变下一镜开场,

就向负责该内容的技能提出修改请求;不要在运动规格中覆盖。

2. 决定这个镜头真正发生什么变化

用一句话写镜头内的运动目的:“观众在这几秒内看到或感到什么变化?”然后选择少量有因果顺序的事件:主体行动 → 可见反应或注意转移 → 到达终点。只加活动会冲淡表演。

  • reviewed_invariant:动作量必须让演员有时间完成镜头的故事变化;是否能完成由审查者结合当前资料判断,不用动词数或固定秒/动作公式硬挡。
  • craft_default:短镜头优先一个主要动作,加一个必要反应;复杂过程请求分镜拆镜或延长。
  • taste_option:克制、爆发、停顿、喜剧节奏等取决于角色和导演意图。

3. 按七部分编写运动说明

  • 起点 start_anchor:只重述开动所需的姿态、重心、目光、手、持物和空间关系。
  • 有序动作 ordered_subject_motion:谁先做什么、方向/路径、物理接触与先后;不要用一串“同时”。
  • 表演过程 performance_arc:触发 → 内在处理的外在迹象 → 决定/行动 → 到达结束状态。
  • 摄影机 camera:一次有动机的移动,写起点、速度/节奏和终点;或明确固定机位。
  • 环境与声音 environment_motion/audio:只写有剧情和连续性依据的环境运动、对白、画外音、环境声、音效和音乐意图。
  • 时间 timing_plan:用阶段/顺序为主;需要精确时间时,明确段落总和必须正好等于镜头时长——超出会被截断,不足的余量会被执行端用未经批准的动作填满。
  • 结束报告 end_report:说明当前描述怎样到达分镜负责的连续性终点;它只用于比较,不是新的权威来源。

4. 不重复参考帧已经说明的内容

如果绑定的参考帧已经说明人物外貌、服装、场景构图和光线,正文就聚焦“从此刻开始怎么变”。只重复动作执行中容易出错的局部事实,如“右手仍握住铜夹”。不要复制完整人物/场景设定,也不要用“与参考一致”替代必要的起点信息。

每条参考绑定还要声明 role / may_control / must_not_control。身份参考不自动决定

构图,构图或尺度参考不自动带入图中人物、服装、文字、道具和故事状态;先做像素/文字

检查,再使用允许参考的内容。只有创作者/参考图权利人的可核对说明,或运行环境获授权

后形成的输入参考图检查记录,才能给出结论;说明记录写 creator_described,视觉检查写

visually_inspected,两者都没有时保持 unverified。这不是媒体生成

或成片验收。

5. 检查冲突与单镜头边界

  • structural_invariant:明确时间段相加正好用完镜头时长(既不超出也不留余量);同一时间区间不能既固定机位又摇、移、手持,除非写清切换;引用必须可解析;end_report 必须匹配来源终点。
  • reviewed_invariant:动作物理可行、表演弧可见、摄影有动机、没有语义发明。
  • craft_default:环境和摄影只支持注意、压力、揭示、结盟或转场,不用来装饰每一镜。
  • taste_option:固定或移动机位、焦段语汇、口型精度和音乐密度由项目配置决定。

一个已经设计好的镜头只保持一个剪辑边界。不要在镜头内部偷藏未声明的切镜;打包也不改变源镜头可以单独审查的要求。

若创作者声明了多镜交付容器,一个容器可以按来源顺序承载若干连续镜头:此时切换只允许出现在成员镜头边界上,容器时长必须等于成员镜头已接受时长之和,镜头目的与逐镜可审查性不变。容器分层、成员资格与两级算术见 delivery-profile.md。

写完容器记录后用 container_check.py 做一次全集对账

python3 <skill-dir>/scripts/container_check.py \
  剧集/EP001/storyboard/delivery-containers.jsonl \
  --shots 剧集/EP001/storyboard/shots.jsonl

逐个容器都正确不代表全集的账是对的:一个镜头同时进两个容器会让全集时长凭空多一段,

一个镜头谁都没装会让它无声消失——两种错误在单容器视角下都看不见。脚本做的是集合

与算术比对:成员是否重复认领、成员是否属于本集、容器时长是否等于成员之和、容器加散镜

是否正好等于全集总时长。

未装容器的散镜是合法的,脚本只报告不判错;时长尚未确定的镜头列在 unmeasured_shots

并排除在总和之外,这样"还没做完"不会被当成"做错了"。

timing_plan 写的是显式秒段,再用

motion_timing_check.py 核 VID-04 的算术:

python3 <skill-dir>/scripts/motion_timing_check.py \
  剧集/EP001/storyboard/motion-specs.jsonl \
  --shots 剧集/EP001/storyboard/shots.jsonl

超出与不足都算违约,且不足的后果更重:未分配的余量不会渲染成静止画面,执行端会用

没有上游来源的动作、表情或运镜把它填满。脚本还会报未声明的区间重叠、declared_total

与实际覆盖不一致,以及 boundary_refs.duration 相对镜头已接受时长过期。

relative 计时不做算术断言,列在 relative_plans 里报告而不是判过。

若当前版本是局部补拍或替代实现,在 coverage_scope 标明 `master | pickup |

alternate`,用同一文件内稳定的运动记录 ID 说明母版和补充关系;每项原文要求都要对应到

当前运动字段或说明去向。补拍默认只补充、不替代母版;运动规格只能提出替代请求,

独立审查者在下游审查结论中绑定固定 hash 后决定,不能回写运动规格形成循环引用。

6. 预览、接受与发布

先向创作者展示起止边界摘要、动作/表演顺序、摄影/声音选择、时长警告和可复制提示词。接受后写:

  • 剧集/<EP>/storyboard/motion-specs.jsonl:运动规格字段和只读来源引用;
  • 剧集/<EP>/storyboard/delivery-containers.jsonl仅当项目声明了多镜交付容器时

记录容器成员顺序、各成员已接受时长的只读引用与容器时长,模板见

delivery-container.jsonl.md;

  • 剧集/<EP>/storyboard/video-prompts.md:由已接受规格、容器记录和配方 hash 生成的文本版本。

自然语言改提示词时,先展示规格字段怎样变化和重新生成的文本预览;若改动触碰分镜或

剧本负责的内容,保持当前文件不变,并把修改请求交给对应技能。跨文件发布遵循主技能的

提交与恢复流程。

完成标准

  • 提示词从准确的 start_anchor 出发,以明确顺序实现已确认终点,不改变时长、对白或下一镜;
  • 表演有触发、处理与可见变化,动作量可行,摄影与环境/声音服务镜头目的;
  • 参考帧已知外观不被重复描述淹没,通用提示词可独立复制;
  • 交付文本只含要拍出来的画面内容:没有参考图文件名、版本号、内部标记、草图指代或任务备注;同一角色的参考绑定在每次提及处一致,不出现只绑一半的写法;
  • 本地结构检查后交 $short-drama-review 结合来源资料审查是否可执行、是否改写原意;
  • 没有媒体文件、供应商接口或远程任务字段、远端 ID 或“视频已生成”声明。

How to use it

Copy the folder

Take worldwonderer/short-drama-video-prompts from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.