{"slug":"short-drama-storyboard","title":"short-drama-storyboard","summary":"把中文短剧剧本和视觉设定写成有戏剧职责、连续性边界与冻结关键帧提示词的分镜 Markdown。用户提出“拆分镜/设计镜头/做镜头表”“场次视觉计划/调度故事板”“比较导演方案”“写首帧/关键帧提示词”或检查轴线、站位、视线、持物连续性时使用；不生成媒体。","platform":"Claude","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-09-01T21:33:21.965848Z","repo":{"url":"https://github.com/zenstory-ai/drama-skills","stars":2572,"forks":556,"license":"MIT","updatedAt":"2026-10-03T08:56:29Z"},"bodyHtml":"<hr>\n<h2>name: short-drama-storyboard\ndescription: 把中文短剧剧本和视觉设定写成有戏剧职责、连续性边界与冻结关键帧提示词的分镜 Markdown。用户提出“拆分镜/设计镜头/做镜头表”“场次视觉计划/调度故事板”“比较导演方案”“写首帧/关键帧提示词”或检查轴线、站位、视线、持物连续性时使用；不生成媒体。\nlicense: MIT</h2>\n<h1>短剧分镜与冻结关键帧</h1>\n<p>把剧本和视觉事实转成有镜头职责、空间连续性和可冻结起点的 <code>剧集/&lt;EP&gt;/分镜.md</code>。\n每镜使用二级标题 <code>## SHOT-...</code>，同镜下用 <code>### 冻结关键帧提示词</code> 写起始帧正文。</p>\n<h2>Quick Start</h2>\n<pre><code>用 $short-drama-storyboard 完成 EP001 的正式分镜和每镜冻结关键帧\n</code></pre>\n<h2>入口</h2>\n<p>当前剧本加必要视觉事实即可直接进入。资产图片提示词与分镜是兄弟分支，不互相等待。只有关键场次\n真的存在多个成立导演方案时，才在上下文比较覆盖方案；普通场次直接设计。</p>\n<p>创作者可读说明跟随项目语言；冻结关键帧的可复制正文跟随\n<code>short-drama.json#/format/prompt_language</code>。没有 <code>short-drama.json</code> 时正文默认使用 <code>en</code>。\n分配镜头时长前读取\n<code>short-drama.json#/creator_authority/production_profile/choices/native_duration_seconds</code>。已声明目标模型但\n没有原生时长时先补这一个选择；目标模型也未声明时照常按叙事节奏设计，不猜供应商限制。</p>\n<h2>工作流</h2>\n<ol>\n<li>读取已接受的目标模型原生时长区间，再确认每个场景动作、对白、声音、画面文字和转折由哪些镜头承载。</li>\n<li>确定观众何时知道什么、对齐谁、空间如何揭示、转折落在哪个可见动作。\n剧本或 Brief 用“前半段 / 后半段 / 前三分之一 / 最后 N 秒”等相对时间限定首次出现、释放或禁止时，\n先用已接受集长换成明确时间边界再分镜；例如 60 秒作品的“后半段首次出现”不得早于 30 秒。</li>\n<li>每镜写清唯一职责、来源、时长、景别/机位、起点、唯一主要动作、终点、声音和视觉依据；用\n<code>起点 → 唯一动作 → 终点</code> 直接说明人物、双手与持物怎样完成本镜状态转换。</li>\n<li>锁定人物朝向、位置、视线、持物、出入口、屏幕方向和必要状态；上游已有会限制动作空间的持续关系时，把关系投影进本镜起点与终点。</li>\n<li>冻结关键帧只投影镜头起点；删除终点才出现的文字、动作、姿态或道具状态。</li>\n<li>整集请求完成整集，末端一次报告覆盖、节奏和真实未决选择。</li>\n</ol>\n<h2>镜头要求</h2>\n<ul>\n<li>每镜有唯一职责、明确来源、可见起止状态和合理时长。</li>\n<li>已声明原生时长时，每个一镜一生成的镜头都落在其最短与最长秒数内。短于下限的叙事动作在合法\n镜长内完成后保持终点；长于上限的动作按可见状态闭合点拆镜，拆出的每镜仍各有唯一职责与可信交界。</li>\n<li>「唯一动作」写从本镜起点到终点的那条可见状态链；涉及交接、换手、放置或取回时，把接触者、\n接触方式和物件落点写在同一链里，不能让合法终点之间靠镜外瞬移衔接。</li>\n<li>切镜必须带来信息、权力、情绪、空间或节奏变化；同义重复镜头删掉。</li>\n<li>相对时间词约束的是事件首次可见或可听的时刻，不因前置动作已经完成就提前释放；分镜时间轴直接\n写出该边界，不把“稍后”“交接后”等叙事顺序当成数值时间的替代。</li>\n<li>同一动作不跨镜重复发生；终点应能成为下一镜可信起点。</li>\n<li>关键信息的可读性优先于装饰性运镜，竖屏构图优先保证主体和反应可见。</li>\n<li>复杂群戏先锁空间锚点和屏幕方向，再决定景别变化。</li>\n<li>起终边界除了逐人姿态，还要写清本镜依赖的身体—物件—空间关系。关系在镜内不变时两端都保留；确需改变时，过程与终点必须有剧本依据。</li>\n<li>冻结关键帧只写该瞬间能看见的内容；文字、手指、反射和遮挡要可生成。</li>\n<li>《视觉设定.md》的连续性锁在生效镜头上原样写进冻结关键帧正文；锁面不因“参考图会交代”而省略。</li>\n<li>检查发现遗漏就直接修正文档，不生成覆盖表来证明自己检查过。</li>\n</ul>\n<h2>视觉依据与图片</h2>\n<ul>\n<li><code>IMG-...</code> 是《图片提示词.md》里的<strong>提示词条目 ID</strong>，不代表图片已生成、已提供或可用。</li>\n<li>已有《图片提示词.md》且本镜需要其中条目时，写「图片提示词项」：ID 必须匹配该文档的可见二级标题，同时写中文名称和它控制的身份、造型、地理、构图或其他边界。ID 只用于查找，不让英文 slug 承担含义。</li>\n<li>没有《图片提示词.md》或没有合适条目时，写「图片提示词项：无」，再以中文指向《视觉设定.md》的人物、地点或道具项及控制范围。这是正常直接入口；不为继续分镜而编造 ID，也不补造另一个阶段。</li>\n<li>冻结关键帧成稿后，按实际画面反查需要保持身份、造型或地理的可见人物、地点和道具；每项都应由「图片提示词项」或《视觉设定.md》依据覆盖。小比例或背景人物只要需要认出身份仍在范围内，画外人物和不可识别局部不算。</li>\n<li>「输入参考图」是独立的另一条轴：创作者已提供，或经确认生产且当前可读的实际图片，用不同于 <code>IMG-...</code> 的稳定 <code>REF-...</code> 槽位引用。每个槽位同时写显式顺序、仅用 <code>/</code> 分隔的项目相对路径、中文名称、「控制」和「不得控制」范围；没有就写「输入参考图：无」。不得把提示词条目、计划生成的图或对话中的描述写成已有图片。</li>\n<li>两条轴可以独立组合：有合法的图片提示词项时，输入参考图仍可为「无」；创作者给了真实参考图时，图片提示词项也可为「无」。</li>\n</ul>\n<h2>按需知识</h2>\n<p>默认只读本 SKILL、当前剧本和必要视觉事实。遇到对应问题时只打开一份：</p>\n<ul>\n<li>阶段边界与规则分级：<a href=\"references/stage-contract.md\">阶段契约</a></li>\n<li>镜头职责、切镜理由和边界：<a href=\"references/shot-craft.md\">镜头手艺</a></li>\n<li>实际制作所需的镜头语法：<a href=\"references/production-shot-grammar.md\">生产镜头语法</a></li>\n<li>关键场次比较导演方案：<a href=\"references/scene-visual-plan.md\">场次视觉计划</a></li>\n<li>检查原文是否都有画面承载：<a href=\"references/coverage-audition.md\">Coverage Audition</a></li>\n<li>多人、群体和复杂空间调度：<a href=\"references/blocking-playbooks.md\">调度手册</a></li>\n<li>冻结瞬间、注意中心和可读性：<a href=\"references/keyframe-craft.md\">关键帧手艺</a></li>\n<li>漫剧/二维漫画形态的共享画风词汇：<a href=\"references/comic-keyframe-lexicon.md\">漫剧关键帧词表</a></li>\n<li>剧本事实到关键帧的完整示例：<a href=\"references/screenplay-to-keyframe-example.md\">剧本到关键帧</a></li>\n<li>拆镜、并镜和稳定镜头 ID：<a href=\"references/shot-revision-identity.md\">镜头修订身份</a></li>\n<li>完成前的连续性检查：<a href=\"references/review-and-fixtures.md\">审查与示例</a></li>\n</ul>\n<h2>修订</h2>\n<p>保留未受影响的镜头 ID。拆镜、并镜或改变镜头职责时，说明哪些下游视频提示词需要刷新，但不自动\n重写用户没点名的文件。</p>\n<h2>完成</h2>\n<p>点名范围的原文都有镜头落实，每镜职责不重复、空间与状态连续、起止边界可制作、关键帧可冻结，即\n完成。本次请求同时修改《图片提示词.md》与《分镜.md》时，当轮刷新受影响镜头的引用；不另建覆盖表。\n视频提示词、生产和审查只有用户点名时开始。\n五份创作文档齐备后，可转 <code>$short-drama</code> 对跨文档结构做一次机械核对；内容质量仍由创作者审查。</p>\n<h2>安装维护</h2>\n<p>只有安装、升级或排障时运行 <code>python3 scripts/selftest.py</code>。</p>\n","files":[{"path":"agents/openai.yaml","sizeBytes":273,"isText":true},{"path":"assets/coverage-audition.example.jsonl","sizeBytes":1985,"isText":false},{"path":"assets/coverage-template.json","sizeBytes":1195,"isText":true},{"path":"assets/keyframe-prompts.md","sizeBytes":1840,"isText":true},{"path":"assets/keyframe-template.jsonl","sizeBytes":2401,"isText":false},{"path":"assets/revision-lineage.fragment.json","sizeBytes":277,"isText":true},{"path":"assets/scene-visual-plan.example.jsonl","sizeBytes":2837,"isText":false},{"path":"assets/shot-template.jsonl","sizeBytes":3590,"isText":false},{"path":"references/blocking-playbooks.md","sizeBytes":12676,"isText":true},{"path":"references/comic-keyframe-lexicon.md","sizeBytes":11301,"isText":true},{"path":"references/coverage-audition.md","sizeBytes":2128,"isText":true},{"path":"references/keyframe-craft.md","sizeBytes":10255,"isText":true},{"path":"references/lighting-craft.md","sizeBytes":2118,"isText":true},{"path":"references/production-shot-grammar.md","sizeBytes":21788,"isText":true},{"path":"references/review-and-fixtures.md","sizeBytes":3326,"isText":true},{"path":"references/scene-visual-plan.md","sizeBytes":1826,"isText":true},{"path":"references/screenplay-to-keyframe-example.md","sizeBytes":7882,"isText":true},{"path":"references/shot-craft.md","sizeBytes":22545,"isText":true},{"path":"references/shot-revision-identity.md","sizeBytes":1732,"isText":true},{"path":"references/stage-contract.md","sizeBytes":12575,"isText":true},{"path":"scripts/selftest.py","sizeBytes":6933,"isText":true},{"path":"scripts/storyboard_check.py","sizeBytes":31133,"isText":true},{"path":"SKILL.md","sizeBytes":19365,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"clean","suspicious":0,"notes":0,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-10-07T15:24:34.429254Z","sha256":"3BF4FA7BC04795C317E7C33B7E523998891934100A13CB9C5F845196DB4CAF70","sizeBytes":86486},"review":null,"source":{"repositoryUrl":"https://github.com/zenstory-ai/drama-skills","path":"skills/short-drama-storyboard","license":"MIT","commit":"c2426e03c0e7722bebcc6a488b6658dc38c65ac3","subtreeSha":"FA1B48D8BF6FA6C6AAF5FB96277DADA80FCCD27B9BA10173B684C638C17E9467","lastSyncedAt":"2026-10-07T15:23:47.1684Z"},"reviewedAt":"2026-10-07T15:26:37.60187Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/zenstory-ai/drama-skills/tree/main/skills/short-drama-storyboard"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install zenstory-ai-drama-skills@llmmart"},{"target":"git","command":"git clone https://github.com/zenstory-ai/drama-skills.git"}]}