小而美天宫漫剧:把完整小说蒸馏成上、中、下三集、每集约3.5分钟的原创可拍漫剧包。适用于“小说蒸馏漫剧”“三集天宫漫剧”“上中下三集”“小而美漫剧”“把小说压成精华完整剧情”等请求。 借鉴女娲式六维并行蒸馏,吸收叙事诊断、原作事实账本、可拍动作链、资产交接和国风视觉证据方法;不做连续长剧,不逐章改编,不直接提交生图/生视频。
--- name: mini-tiangong-drama description: | 小而美天宫漫剧:把完整小说蒸馏成上、中、下三集、每集约3.5分钟的原创可拍漫剧包。适用于“小说蒸馏漫剧”“三集天宫漫剧”“上中下三集”“小而美漫剧”“把小说压成精华完整剧情”等请求。 借鉴女娲式六维并行蒸馏,吸收叙事诊断、原作事实账本、可拍动作链、资产交接和国风视觉证据方法;不做连续长剧,不逐章改编,不直接提交生图/生视频。 --- # 小而美天宫漫剧 · 小说蒸馏术 > 大而全的改编是流水线,小而美的蒸馏是手术刀。 ## 1. 定位与硬规格 目标不是把小说“缩写”,而是从全书中挑出一条最强主线,重构为一部十分钟左右、三集完成、可以独立观看的短漫剧。 | 项 | 锁定值 | |---|---| | 集数 | 上、中、下 3 集 | | 单集时长 | 约 210 秒(3.5 分钟) | | 容量预算 | 6 个约30秒剧情段 + 1 个约30秒收束/尾钩段;不足时优先删信息,不压爆动作和对白 | | 画幅 | 9:16 竖屏 | | 目标 | 抖音主发布,小红书做审美与幕后沉淀 | | 结果 | 三集完成一条主线;可以有余韵,但不能依赖第二季才能理解结局 | ## 2. 吸收的方法与不吸收的内容 ### 必须吸收 - **女娲式蒸馏**:六维并行、各自落盘、章节证据、蒸馏检查点。 - **叙事转影视开发读本**:先快速诊断;分开原文事实、强推断和影视化建议;抓人物链、动作链、物件链、空间链;正式产物落盘,不把长文塞进聊天。 - **小说转天宫漫剧**:`source_fact / adaptation_keep / adaptation_merge / adaptation_trim / 影视化补强 / unverified` 六类事实;原文定位;改编边界;一集样片闭环优先。 - **小说转AI短剧**:目标—阻碍—选择—后果;钩子矩阵;伏笔的埋设载体与回收位置;关键道具状态。 - **冠军交接契约**:统一维护 `project_state`、`asset_manifest`、`continuity_ledger`、`accepted_clip`;候选不升级为事实;阻塞项必须留证。 - **国风/天宫视频方法**:画面目的先于形容词;动作遵循触发→执行→结果→反应;人物、空间、道具、光线和声音必须互相有因果;每个镜头只设一个主奇观和一个主运镜。 ### 不吸收 - 长篇连载的12集/100集分集流水线。 - 直接生成图片、视频、提交付费任务或替用户发布。 - 在没有已验收资产、镜头和连续性事实时编写最终 I2V 提示词。 - 用“宏大、电影感、仙气、史诗”等空泛词替代可观察的建筑、尺度、材质、光线和动作证据。 - 把第三方作品、人物、台词或独特画面当作无授权素材直接继承。 ## 3. 工作流 ### Phase 0:输入与蒸馏合同 先建立 `01_input_packet.md` 与 `00_distill_contract.md`,登记: - 小说路径、版本、作者/版权状态、已读范围; - 目标观众、平台、画幅、时长和三集规格; - 母本候选范围、主角、核心欲望、核心冲突、终局候选; - 用户明确保留、删除、改名和替换项; - 第三方 IP、敏感内容、版权和发布风险; - 当前只做蒸馏/结构/剧本/资产需求中的哪一个阶段; - `project_state`、阻塞项、唯一下一动作和是否触及外部费用。 长篇小说先做章节地图,再读开头、中段、关键转折和结尾;不能只凭前几章推断全书。 ### Phase 1:六维并行蒸馏 启动六个独立蒸馏维度,各自写入 `references/research/`: 1. `01-主线因果.md`:起点→触发→升级→不可逆选择→高潮→结局;每一步写章节依据和删掉后的后果。 2. `02-人物弧线.md`:主角目标、阻碍、策略、选择、代价、关系变化、终点;配角只保留改变主线的人。 3. `03-高光场面.md`:3–8个可视化名场面,标注钩子/反转/高潮/余韵用途和最低资产需求。 4. `04-情感曲线.md`:三集各自的主情绪、爽点、笑点、紧张点、情感回收点;不堆同一种情绪。 5. `05-最小世界观.md`:观众理解主线所需的最少规则、势力、能力、时间限制和代价。 6. `06-删减清单.md`:支线、重复、灌水、不可拍段落、版权风险、情色/血腥/敏感内容和替换方案。 每条结论必须标注:`章节依据 / 原文事实或推断 / 改编动作 / 置信度 / 未解决冲突`。发现冲突保留冲突,不擅自调和。 ### Phase 1.5:蒸馏检查点 六维完成后必须暂停,输出不超过一页的检查摘要: ```text 主线:一句话因果链与终局 人物:主角弧线 + 最多3个关键配角 高光:保留的3–8场名场面 情绪:上/中/下主情绪 世界:观众必须知道的规则 删减:删什么、为什么、是否影响因果 风险:版权、敏感、终局、事实冲突 ``` 未获用户确认,不能进入三集编译;用户若已明确授权“直接完成三集”,仍须把检查摘要写入项目文件并作为内部门,不跳过审计。 ### Phase 2:三集重蒸馏 三集不是按章节平均切三刀,而是三个有独立节拍的完整小节: | 集 | 任务 | 必须完成 | |---|---|---| | 上集 | 立世界、立人物、第一次选择 | 开场钩子、主角目标、阻碍、至少两次推进、可见结果、集尾改变 | | 中集 | 放大代价、升级冲突、关系反转 | 承接上集、策略升级、一次实质反转、更高风险、集尾新目标 | | 下集 | 决战、回收、落主题 | 回收主线与关键伏笔、最终选择、不可逆结果、情感闭环、余韵 | 每集必须填写:标题、章节范围、开场可见钩子、主角目标、阻碍、推进1/2、策略变化、反转、可见结果、关系变化、关键道具状态、埋设/回收项、结尾钩子、段位预算。 **结局规则:**可以在最后留下世界更大的余韵,但本组三集的主问题必须已经解决。光门、天书新字、未知敌人只能作为片尾意象,不能替代主角本集的胜负和情感结果。 ### Phase 2.5:三集结构检查点 暂停展示: - 三集一句话梗概; - 每集目标—阻碍—选择—结果; - 三集主线因果图; - 3–8个高光如何分配; - 每集时长预算; - 当前最危险的删减或终局问题。 确认后才写三集剧本。若三集结构不能在一句话说清,退回重蒸馏,不进入资产。 ### Phase 3:三集可拍剧本 每场只设一个主要地点和时间窗口,必须写: ```text 场次目的 / 开场状态 / 触发事件 / 主角目标 / 阻碍 / 初始站位 动作因果 / 信息变化 / 情绪转折 / 道具状态 / 场尾钩子 / 镜头需求 ``` 动作统一为: ```text 起始状态 → 触发 → 身体先反应 → 选择/策略 → 主动作 → 结果 → 微反应 → 新状态 ``` 内心独白必须转为视线、呼吸、手部、重心、站位、道具、光线或声音。对白必须标明原文锁定、影视化补强或建议稿。伏笔必须有可见载体,不写无法拍出的抽象伏笔。 ### Phase 4:资产、视觉与连续性 只为重复角色/状态、关键场景、剧情道具、首帧职责和主奇观建立资产,避免一次性背景资产膨胀。每项使用稳定 `asset_id`,至少写:用途、来源事实、状态、依赖、所属场/镜头、参考职责、禁止改变项。 建立 `asset_manifest` 与 `continuity_ledger`,锁定: - 角色脸、发型、服装、身份状态; - 道具外观、位置、朝向、损坏/变化时点; - 建筑主结构、空间轴线、人物左右关系; - 云海层级、尺度证据、主光方向、风向; - 声音、对白、音乐进入/退出状态; - 每段首帧与末帧状态。 每集指定2个主奇观,并写明建筑结构、云海职责、尺度证据、色彩节奏、主光和辅助意象。视觉锚点落盘为 `06_中式美学天庭视觉锚点.md`。若引用的视觉 DNA 文件不存在,必须标记 `blocked_missing_reference`,不能假装已读取。 ### Phase 5:小而美质量门 全部通过才允许交接资产或分镜: 1. 三集合计能讲完一个完整主问题,结局不依赖续作。 2. 每集都有钩子、目标、阻碍、推进、选择、结果和改变。 3. 任何删减都不会破坏因果、人物动机或结局回收。 4. 主角弧线能用“起点信念→关键选择→付出代价→终点状态”说清。 5. 高光至少3个且各自承担剧情功能,不是纯壁纸。 6. 资产数量与3.5分钟容量匹配,核心资产可复用。 7. 原文事实、影视化补强、推断、待确认项分层可追溯。 8. 第三方 IP、台词、歌曲、敏感内容有明确处理结论。 9. 视觉奇观能落到结构、尺度、材质、光线和机位,不靠形容词。 10. `project_state` 有唯一下一动作;未确认资产和候选片段不得升级为事实。 ## 4. 交付物 ```text 00_distill_contract.md 01_input_packet.md references/research/01-06.md references/distill-rubric.md references/evidence-and-state.md references/three-episode-beat-sheet.md references/quality-gates.md 02_精华剧情.md 03_三集结构.md 04_三集剧本.md 05_资产需求与连续性.md 06_中式美学天庭视觉锚点.md project_state.yaml ``` ## 5. 输出与停止规则 - 只给小说:完成 Phase 0–1.5 后停在检查点,不擅自写三集成品。 - 用户说“继续”:先回读 `input_packet`、`project_state`、最近产物和最早未完成阶段,再执行一个最小动作。 - 用户指定阶段:只推进到指定阶段,不提前生产下游。 - 发现终局、版权、事实或视觉参考冲突:写入 `blockers`,只问一个最窄裁决题。 - 需要真实出图、重做、生成视频或公开发布:只输出准备包并标注需用户当次授权。 - 编剧完成后,下一责任节点是资产师;本 Skill 不代替资产、分镜、视频编译或成片验收。
This skill should be used when adapting a Chinese fantasy, Honghuang, xianxia, or other novel into a high-quality Chinese celestial-palace 3D animated micro-drama. It preserves the source novel's characters, world, cultural names, main plot, and core relationships while improving screenability, short-drama pacing, episode hooks, visual storytelling, asset continuity, and Seedance 2.5 image-to-video delivery.
--- name: novel-to-tiangong-manju description: This skill should be used when adapting a Chinese fantasy, Honghuang, xianxia, or other novel into a high-quality Chinese celestial-palace 3D animated micro-drama. It preserves the source novel's characters, world, cultural names, main plot, and core relationships while improving screenability, short-drama pacing, episode hooks, visual storytelling, asset continuity, and Seedance 2.5 image-to-video delivery. agent_created: true --- # 小说转天宫漫剧 ## 定位 将已有小说改编为天宫风格 3D 国漫漫剧,不把原作改写成另一套原创世界。优先保留原作事实、人物、天庭/洪荒文化名词、主线和核心关系;只做必要的删减、合并、节奏强化、对白影视化、场景视觉化、人物反应补强和漫剧钩子优化。 默认工作对象包括小说 TXT、DOCX、Markdown、章节大纲、人物设定和用户提供的参考图。该 Skill 负责从原作到可拍漫剧剧本及生产输入包,不直接提交付费生图或生视频任务。 ## 总原则 - 原作事实优先:原作明确写出的角色、关系、事件、设定和结局不得擅自改写。 - 影视化增强而非原创替换:新增内容标记为 `影视化补强`,不能冒充原文事实。 - 国风文化名词默认保留:玉帝、太白金星、天庭、凌霄殿、天兵天将、天功、地府、妖王等不因“原创化”要求被机械改名。 - 只推进最早缺口:没有完整剧情事实时不跳写分镜或视频提示词;没有资产与走位事实时不让视频节点猜测。 - 一集样片闭环优先:先完成一集从改编、资产、分镜、I2V 提示词到候选验收的闭环,再扩展整季。 - 只吸收参考图和课程的可执行方法,不复刻受保护人物、具体画面、对白、logo、水印或逐帧构图。 ## 改编边界 ### 原作事实 建立改编事实账本,至少记录: ```text 原作事实 / 章节定位 / 是否不可改 / 漫剧用途 / 当前状态 ``` 将内容分为: - `source_fact`:小说明确写出的事实。 - `adaptation_keep`:为保证原作辨识度而保留的内容。 - `adaptation_merge`:多个重复事件合并后的影视化结构。 - `adaptation_trim`:不改变主线、仅压缩节奏的删减。 - `影视化补强`:新增的动作、对白、转场、情绪反应、集尾钩子或视觉承接。 - `unverified`:原文或用户材料无法确认的内容,不得自行升级为事实。 ### 允许优化的范围 - 合并重复战斗、闭关、领奖、解释和观战段落。 - 把内心独白改成眼神、手部、重心、道具、站位、光线和声音。 - 将修炼说明压缩为可见的训练、法宝变化、战斗结果或蒙太奇。 - 为每集补足开场冲突、目标、阻碍、升级、反转、可见结果和结尾钩子。 - 调整对白顺序和长度以适应表演,但原作锁定台词不得擅自改写。 - 提前或延后信息揭示,但不得破坏原作因果、人物关系和关键伏笔。 - 用天宫视觉语言强化宫殿、云海、天门、军营、战场、法宝和尺度关系。 ### 必须先询问的情况 仅在以下情况暂停询问一个窄问题:用户未说明的终局;改动会改变主角身份或核心关系;原作事实互相冲突;需要删除用户明确喜欢的关键剧情;多个合格季终点有明显不同的观看结果;涉及外部付费生成、重做或发布。 ## 工作流程 ### S0 输入与改编合同 读取用户提供的小说和项目上下文,先确认:原作范围、目标漫剧平台、画幅、单集时长、改编忠实度、是否保留原名词、当前需要交付的最小阶段。建立 `01_input_packet.md` 和 `00_champion_node_contract.md`;没有项目目录时先创建项目工作目录,不直接批量写成片。 ### S1 原作事实与素材审计 通读目录、简介、人物初登场、关键冲突、阶段结尾和用户指定章节。长篇小说先建立章节地图,不凭前几章推断全书终局。输出: - 改编事实账本。 - 主要人物与关系表。 - 世界、修炼、势力、时间线和道具规则。 - 主线、支线、重复结构和可压缩段。 - 原作不可改项、待确认项和影视化补强候选。 ### S2 故事总纲与阶段重构 不改变原作主线的前提下,将章节按“人物目标—阻碍—选择—后果”重组为漫剧阶段。每个阶段说明: ```text 阶段承诺 / 起点状态 / 核心冲突 / 升级方式 / 关系变化 / 阶段高潮 / 阶段结尾钩子 / 原作章节范围 ``` 总纲必须包含故事核心承诺、主线、副线、主角弧线、主要敌对升级、关键伏笔与回收、第一季范围和季终悬念。不要为了“更原创”替换原作世界。 ### S3 人物与关系弧线 为主要角色记录: ```text 原名 / 身份 / 出场阶段 / 外貌与服装锚点 / 声音方向 / 当前目标 / 阻碍 / 行动策略 / 与主角关系 / 转折 / 结果 / 不可改项 ``` 保留原作人物关系;只补足漫剧中必须可见的关系行为。关系变化必须通过站位、距离、递交/收回道具、阻挡路线、救援、隐瞒、对视和台词反应呈现。 ### S4 分集大纲 先按阶段拆集,再写每集。每集必须包含: ```text 集标题 原作章节范围 开场钩子 本集主角目标 主要阻碍 至少两次有意义的推进 策略升级或反转 可见结果 人物关系变化 关键道具状态 结尾钩子 未解问题 下一集承接 影视化补强清单 ``` 开场钩子必须在最前几镜可见;结尾钩子必须改变下一集的目标、关系、信息或风险,不能只写“危机未解”。避免每集重复“出征—杀敌—领奖—闭关”,应轮换战场、军营、天宫权力场、宝库、训练、救援、审讯和人物关系场。 ### S5 场次细纲与可拍剧本 每场只设一个主要地点和时间窗口,写清: ```text 场次目的 / 开场状态 / 触发事件 / 人物目标 / 阻碍 / 初始站位 / 动作因果 / 信息变化 / 情绪转折 / 道具状态 / 出场状态 / 场尾钩子 / 镜头需求 ``` 将小说语言改为摄影机和声音可执行的内容: ```text 起始状态 → 触发 → 身体先反应 → 选择/策略 → 主动作 → 结果 → 微反应 → 新状态 ``` 不写“他很愤怒”,写握剑、收回手、视线锁定、呼吸变化、站位压迫和道具结果。不用空泛的“电影感、宏大、高级、仙气”代替画面证据。原作对白逐字锁定;影视化补强对白必须标明为建议稿。 ### S6 天宫资产与视觉编译 继承 `sd2.5-tiangong-manju` 与 `chinese-celestial-palace` 的规则: - 可信中国古典木构:柱网、开间、斗拱、深远出檐、宽缓屋面、台基和承托关系可读。 - 云海作为高空空间和体积介质,至少承担托举、遮挡、分隔远近、穿廊、承接瀑布或捕捉逆光中的两项。 - 单一主构图、单一主奇观、稳定的尺度链和明确的前中远层次。 - 人物作为身份与尺度锚,必须有落脚面、接触阴影和连续服装状态。 - 高明度云白/浅石/天空为基底,朱砂、青灰、暖金作局部结构和受光,不做全局灰雾或满屏红金。 - 3D 国漫人物保持稳定脸型、发型、服装、配饰和材质,不使用真人摄影语义。 按镜头列出 `asset_id`、角色状态、场景母板、道具状态、首帧职责、参考图职责和禁止改变项。未验收资产不得进入视频参考。 ### S7 分镜与连续性 先做资产差异,再做 blocking。每个镜头必须写景别、机位、动作链、空间关系、镜头目的、静止/运动理由、光线和声音动机。建立 `continuity_ledger`,锁定脸、发型、服装、道具、建筑主结构、云海层级、主光方向、空间轴线、人物左右关系和末帧状态。 天宫镜头默认慢、稳、庄严;每段只设一个主运镜。动态镜头写起始机位、主体相对位置、运动路径、运动目的、停止点和终帧关系。建筑不变形,人物不漂浮/滑步/穿模,衣摆、云、瀑布共享主风向但延迟和幅度不同。 ### S8 Seedance 2.5 I2V 提示词 只输出图生视频 I2V 正式提示词,不输出纯文生视频版。每个 `@图片` 写“参考什么/不参考什么”:角色图锁人物身份,场景图锁建筑布局与光线,首帧或尾帧锁构图和承接状态,道具图锁状态与材质。 正式提示词结构: ```markdown # 天宫漫剧|Seedance 2.5 图生视频提示词 ## 参考图职责 ## 全局连续性约束 ## 场景与人物事实 ## 动作段一 ## 动作段二 ## 对白与声音 ## 现场声 ## 局部硬约束 ``` 动作段不重复完整台词。对应台词只在“对白与声音”中补充:角色、触发动作节点、原文、固定音色、语气/情绪、语速、停顿、换气、重音和口型同步。不要另设庞大的声音字段。 内部校验台词容量、动作准备/执行/结果、道具变化、镜头承载、开场冲突、不可逆结果和段尾钩子;正式正文不写秒数、时间戳、帧号或时间区间。 ### S9 片段验收与返工 候选片段必须检查:角色身份、人物动作、对白口型、声音执行、建筑结构、云海物理、光线方向、道具连续性、空间轴线、镜头目的、字幕/水印/随机文字和画面质量。只重做最早失败变量,保留候选和返工原因;通过后登记 `accepted_clip`,未验收候选不得反写连续性事实。 ## 推荐交付顺序 ```text 改编事实账本 → 阶段总纲 → 人物关系弧线 → 分集大纲 → 场次细纲 → 第一集可拍剧本 → 第一集资产需求 → 第一集分镜/连续性 → 第一集 Seedance 2.5 I2V 提示词 → 候选片段验收 ``` ## 质量门 未同时满足以下条件,不进入下一阶段: - 原作事实与影视化补强清楚区分。 - 主线、人物关系和关键设定没有被无授权替换。 - 每集有可见开场钩子、目标、阻碍、升级、结果和结尾钩子。 - 每场有单一空间/时间和可执行动作因果。 - 角色、道具、场景、光线和空间轴线可连续。 - 天宫视觉通过建筑结构、云海物理、尺度证据、主光和材质成立。 - I2V 参考职责清楚,正式提示词不虚构素材、不写纯文生版本。 - 候选片段通过质量验收后才登记为事实。 ## 输出行为 用户只给小说时,先做原作审计和改编范围说明,不擅自把全书写完。用户要求“继续”时,先回读当前项目文件和最早未完成阶段,再执行最小动作。用户明确要求某一阶段时,只推进到该阶段,不提前生成下游资产或视频提示词。
This skill should be used when creating or updating a Chinese celestial-palace moodboard from multiple reference images or video frames, especially when the task involves人物、远景巨构、中近景日常、素材道具分类, extracting visual style/cinematography/color-lighting/character/material responsibilities, or compiling reusable prompts for celestial-palace image and video generation. It coordinates the moodboard layer with the authoritative celestial-megastructure DNA and routes the result to MJ image prompts or Seedance video prompts without copying protected characters, dialogue, logos, watermarks, or exact frames.
--- name: tiangong-moodboard description: This skill should be used when creating or updating a Chinese celestial-palace moodboard from multiple reference images or video frames, especially when the task involves人物、远景巨构、中近景日常、素材道具分类, extracting visual style/cinematography/color-lighting/character/material responsibilities, or compiling reusable prompts for celestial-palace image and video generation. It coordinates the moodboard layer with the authoritative celestial-megastructure DNA and routes the result to MJ image prompts or Seedance video prompts without copying protected characters, dialogue, logos, watermarks, or exact frames. agent_created: true --- # 天宫情绪板 Skill ## 目标 建立参考图到可执行提示词之间的中间层。先按职责分类参考图,再提取视觉风格、摄影语言、色彩光影、人物方向和道具材质,最后与天宫四类 DNA(远景巨构/人物/中近景日常/素材道具)合并,供静态生图和视频提示词共同使用。 **四类 DNA 独立、不可互相替代**。每张参考图必须先确定属于哪一类,再读对应类别的 DNA 提取规则。 ## 四类 DNA 对应关系 | 参考图类别 | DNA 类别 | DNA 文件中的节 | 情绪板提取重点 | |-----------|---------|--------------|--------------| | 人物/ | B 人物 DNA | B1-B9 | 体态、面部、发型、服饰、动作、情绪、光材质 | | 远景巨构/ | A 远景巨构 DNA | A1-A15 | 建筑形制、尺度、云海、天瀑、门洞、视角 | | 中近景日常/ | C 中近景日常 DNA | C1-C7 | POV/OTS/中近景构图、空间遮挡、门窗光 | | 素材道具/ | D 素材道具 DNA | D1-D6 | 材质系统、道具形制、使用状态、光响应 | ## 触发场景 在以下任务中调用本 Skill: - 用户提供多张天宫、仙侠、3D 国漫参考图或视频帧; - 用户要求制作天宫情绪板、视觉板、参考图学习板; - 用户要求提取人物、中近景、远景巨构、材质道具风格; - 用户要生成天宫人物、场景、道具图片或 Seedance 视频,且已有参考素材; - 用户要求“参考这些图的质感”,但不要求复制原图。 ## 权威关系 按以下优先级工作: 1. **剧本/资产事实**:确定人物、地点、动作、道具和镜头目标; 2. **本 Skill**:确定参考图职责和情绪板提取结果; 3. **四类 DNA**:`C:/Users/lsb/.codex/skills/mj-tiangong-imagegen/references/celestial-megastructure-dna.md` - 远景巨构需求 → 读 A 类(建筑、云海、尺度、主光、视角) - 人物需求 → 读 B 类(体态、面部、发型、服饰、动作、情绪) - 中近景需求 → 读 C 类(POV/OTS/遮挡/窗光/门光) - 素材道具需求 → 读 D 类(材质系统、道具形制、使用状态) 4. `C:/Users/lsb/.codex/skills/mj-tiangong-imagegen/references/celestial-megastructure-prompts.md`:静态提示词模板; 5. `C:/Users/lsb/.workbuddy/skills/sd2-5-guofeng-skill/SKILL.md`:Seedance 2.5 动作链、镜头目的、参考职责和视频负向约束。 完整方法、分类规则、情绪板摘要模板和用户提示词框架见 `references/moodboard-method.md`。 ## 四类目录 使用以下四类整理参考图: - `人物/`:人物气质、体态、发型、服饰、面部方向; - `远景巨构/`:天宫尺度、建筑群、云海、天瀑、门洞和空间纵深; - `中近景日常/`:中近景、POV、OTS、人物与门窗栏杆/宫檐/雾气关系; - `素材道具/`:木构、玉石、瓦、丝绸、云、光、雾、水、金属及道具使用状态。 一张图可被多个类别引用,但每次调用必须标明当前职责。 ## 编译流程 1. 读取剧本事实和镜头目标,不从参考图推断剧情。 2. **判断当前任务属于四类中的哪一类**(远景巨构/人物/中近景日常/素材道具),选对应类别的 DNA 进行校验。 3. 读取参考图目录,给每张图登记来源、类别、可继承维度和不可继承项。 4. 输出内部"天宫情绪板摘要":视觉风格、摄影风格、色彩光影、人物参考、素材道具和不继承项。 5. **用对应类别的 DNA 校验**: - 远景巨构 → A 类:建筑身份、云海物理、尺度、视角体系 - 人物 → B 类:体态、面部、发型、服饰、动作、情绪、五大原则 - 中近景日常 → C 类:POV/OTS 规则、前景遮挡、窗光/门光 - 素材道具 → D 类:材质系统、道具形制、使用状态、光响应 6. 需要静态图片时,调用 `mj-tiangong-imagegen`,人物/中近景优先考虑模板 6C/6E,POV 优先考虑 6D。 7. 需要视频时,调用 `sd2-5-guofeng-skill`,把情绪板转成画面目的、机位、景别、动作链、光线、材质和参考职责,不把静态提示词机械复制进视频正文。 8. 交付提示词时区分:剧本事实、情绪板继承项、DNA 硬约束、平台参数和负向约束。 9. 生成结果按情绪板一致性与对应类别 DNA 质量门双重验收。 ## 硬边界 - 不复制参考图人物身份、具体脸、对白、logo、水印、可读文字、版权角色或逐帧构图; - 不让情绪板覆盖已确认剧本事实; - 不把远景图的人物自动当作角色锁定图; - 不凭空增加参考图没有的剧情、道具或空间; - 不用情绪板绕过平台安全词、资源权限或资产验收; - 没有真实参考素材时,不声称已读取参考图。 ## 参考文件 - `references/moodboard-method.md`:情绪板制作与调用规范、用户提示词框架、输出模板和硬边界。 - `references/moodboard-results.md`:四类情绪板提取结果,基于实际视频帧的视觉风格/摄影/色彩/人物/道具综合提取。
统筹一项原片短剧转绘任务,从用户提交素材到可播放视频持续推进。用于新线程启动、跨步骤恢复、并发调度、渠道执行或现有转绘 Skill 路由出现缺口时;加载 mx-shortdrama-00-router 作为唯一专业路由,并将真正需要用户判断或需要补全路由的卡点压缩为最多三道选择题。
--- name: mx-shortdrama-production-harness description: 统筹一项原片短剧转绘任务,从用户提交素材到可播放视频持续推进。用于新线程启动、跨步骤恢复、并发调度、渠道执行或现有转绘 Skill 路由出现缺口时;加载 mx-shortdrama-00-router 作为唯一专业路由,并将真正需要用户判断或需要补全路由的卡点压缩为最多三道选择题。 --- # 短剧转绘生产主控 把本 Skill 当作执行主控,不当作第二份转绘方法论。专业步骤、资产规则、提示词规则、渠道规则均以 `$mx-shortdrama-00-router` 和它指向的编号 Skill 为准。 ## 启动 按以下顺序读取,随后立即开始最早未完成的生产步骤: 1. 当前项目的 `AGENTS.md`。 2. `$mx-shortdrama-00-router`。 3. `D:\codex-work\zhuanhui\skills\mx-shortdrama-00-router\references\full-chain-dag-contract.md`。 4. 本次任务已给出的原片、已验收产物、用户决定和渠道状态。 为本次任务建立一个 job-local `harness_state.json`。只记录:原片精确路径和 SHA-256、目标地区/语言、渠道、当前最早未完成节点、各节点精确输入输出路径、真实 blocker、下一动作和用户决定。它用于恢复,不替代真实产物、镜头事实或渠道结果。 ## 主控线程与置顶任务管理线程 用户启用本 Harness 后,当前线程就是唯一生产主控。读取并执行 [线程控制合同](references/thread-control-contract.md),它定义主控创建置顶管理线程、单一写入者、动作租约、管理线程调度、统一终态回传和 App 接口修复。 摘要:主控是唯一可以修改生产状态和提交渠道的线程;管理线程接收主控的有界工作请求,调用子智能体并发完成独立支线,自动通过既有路由已允许的步骤,收齐统一终态后通过原生任务消息主动送达主控,并回读主控确认同一五字段 payload 已真实出现。没有这个送达回执时,管理线程自己的最终回答只算中间结果,主控不得据此推进。启动时先调用 `codex_app__set_thread_title` 命名当前主控,再调用 `codex_app__set_thread_pinned` 置顶主控并用 `codex_app__list_threads` 回读确认;随后按合同创建、命名、置顶并回读一个独立管理线程。 目标未交付前,主控和管理线程不得以“等待中”结束任务。它们必须等待子任务/渠道事件并在事件到达后继续最早节点;不使用周期性心跳替代持续执行。创建或置顶管理线程遇到真实 App 错误时,进入合同规定的接口修复路径,直到取得真实 `threadId`、置顶回读和首条状态回传;不得伪造成功、静默跳过或把失败降级为普通状态展示。 缺少下列任一用户输入时,只问必要项;A 必须是推荐项,且一次最多三题: - 原片精确路径或用户提供的可访问素材。 - `target_region` 和 `target_language_locale`。 - 当前任务图片/视频渠道。每个新任务都主动问,不能默认上个任务渠道。 除上述输入与真实创作异常外,直接按路由判断并执行。Step04 生产包 Word 是唯一常规中途创作确认点;Word 已确认后,不询问资产卡、首帧、故事板、提示词或单个视频组的确认,持续自动推进。不要问用户模板细节、术语细节或已由权威 Skill 决定的常规问题。 ## 主循环 每次获得新输入、子智能体终态、渠道状态变化或用户作答后,执行: ```text 读取 harness_state + 当前节点精确产物 -> 找到最早未完成、依赖已满足的节点 -> 立即执行或派发该节点 -> 写入真实路径和下一动作 -> 继续,直到视频已交付或出现真实用户决策/外部阻塞 ``` 不要将计划、提示词、已提交渠道任务或“等待子智能体”称为视频交付。渠道提交后主动轮询;完成后下载、检查可播放性并把实际视频、参考图和实际提示词展示给用户。所有图像、声音和视频参考均用代码上传,绝不要求用户手动上传。 Step04 恢复必须细化到输入放行门和 A/B/C/D 层,不得把一个“Word 已存在”当作 Step04 完成:`Step02 语义放行 -> A 镜头人物实例与证据绑定 -> B 资产与连续性合同 -> C 事件型毫秒提示词 IR -> D Word/Markdown/渠道交付`。恢复时先读取 job-local `step04_input_gate_report.json`、`step04_layers` 或对应 JSON 的精确路径和 SHA,找到最早缺失层;Step02 输入门失败、A/B/C 任一层缺失、哈希不匹配或语义质量门失败,直接从该层接管,不能用旧 Word 反推事实。Step02 只有 `status=accepted`、`semantic_status=accepted`、`acceptance_mode=semantic`、`semantic_alignment.status=accepted`、其 `mapping_policy` 为 `continuous_observation_local_interval_plus_segment_start; never_ordinal_shot_mapping`,且逐卡 `verdict=pass`、`needs_targeted_recheck=false` 才算可生产输入;结构完整旧卡必须保持阻塞。`semantic_alignment` 缺失、旧 Gemini 响应没有局部时间、或卡片没有回指 `semantic_unit_ids` 时,Harness 当前节点同样必须为 `step04a_input_gate`,下一动作是仅重跑对应连续视频段并执行项目唯一的 `tools/step02_interval_alignment.mjs`。只要 `terra_audit.needs_targeted_recheck=true`、`verdict=conflict` 或 `verdict=uncertain`,Harness 当前节点必须为 `step04a_input_gate`,下一动作是回到 Step02 对指定镜头补证/重拆;D 层只在 A/B/C 通过后渲染,Word 不能参与身份推断、角色替换、镜头计数或冲突消解。 Step04 的实际恢复顺序固定为:读取 `step04_input_gate_report.json` -> 运行 `tools/step04_abcd_compiler.py` 生成或回读 `step04_abcd_contract.json` -> 校验 A/B/C 层 SHA 与真实资产路径/SHA -> 仅从 C 层渲染 D。Harness 不得调用旧 Python Word 编译器绕过 A/B/C,也不得用旧 Word、旧提示词或旧资产表反推缺失事实。D 层失败只重渲染 D;A/B/C 失败必须从最早失败层接管,并保留原失败证据。 Step04 恢复还必须执行实例集合、中文显示名、事件证据和参考槽位四项同构门禁:A 层卡片实例集合与绑定集合必须完全相等;同镜头重复资产没有显式实例边界必须回到 Step02;B 层只接受纯中文 `@` 显示名并验证真实文件 SHA;人物、场景和关键道具都必须由 Step02 明确的 `asset_requirements` 声明 `kind/purpose/evidence_ids/required_shot_ids`,不得从构图、剧情或提示词文本猜资产;每个已声明资产都生成镜头级真实参考槽位。C 层事件和对白必须分别有证据 ID,人物参考槽位由事件消费,场景和道具参考槽位由该镜头上下文显式消费。Python 与念念 AI bridge 任一端失败,都保留 `step04_input_gate_report.json` 或结构化错误码并停在最早失败层,不生成表面完整 Word。 B 层还必须检查每个已验收资产存在结构化 `generation_prompt`(或兼容的 `image_prompt`/`prompt`),并将其与真实图路径、SHA-256、证据和参考槽位一起传给 D。C 层事件必须同时有起始状态、变化/动作、结束状态;对白必须显式提供独立毫秒区间,禁止用父事件区间回填。资产提示词缺失、事件状态缺失或对白时间缺失时,Harness 只输出结构化阻塞,不进入 Word。 ### S-011 商业资产生命周期与最终资产门禁(20260805) 人物、场景和道具不再只以 `status=accepted` 判断可用性。每个 job 初始化 `asset_production_registry.json` 保存完整过程;`asset_registry.json` 只导出能被 Step04、首帧、故事板和视频消费的最终资产。历史资产不得删除,先进入 `legacy_pending_reconciliation`;没有补齐阶段、路径/SHA、QA 和来源链时不能进入任何新合同。 ### 当前任务已通过资产复用(S-025) 触发条件是当前用户明确要求复用既有通过资产,且当前 job 有 `user_approved_asset_reuse_manifest.json`(或等价的当前任务用户决定)逐项绑定 `asset_id`、纯中文 `@` 显示名、精确原图路径、SHA-256 与可读回执。Harness 必须在任何同 `asset_id` 的图片渠道提交前先读取该清单、校验文件与 SHA,并把这些精确原图写入当前 job 的参考槽位;不得因它来自历史 job、旧 Word 或旧目录而重做、换脸、放大后冒充 2K,或用新图覆盖用户已通过图。 只有清单逐项通过“当前用户授权 + 文件存在 + SHA 一致 + 回执明确允许当前任务复用”四项验证,才可作为当前任务的用户授权复用资产进入 Step04、首帧、故事板和视频参考。仅凭文件名、目录、旧 `accepted` 状态或截图仍是 `legacy_pending_reconciliation`,不得自行晋级。若任一项缺失,恢复到该资产最早缺失阶段;若完整,则跳过该资产的身份母图、角色卡或单阶段重做,直接复用精确原图。已在本次错误提交但尚未消费的新图必须保留审计并标记 `archived_not_consumable`,不能替代复用资产,也不能被后续 Provider 扫描或上传。 ### S-026 Step04 商业生产恢复与防错闭合(20260805) 已观察到的触发:旧 Word 曾在人物实例、资产阶段、台词 locale 和提示词正文错误时仍可生成。保护动作:渲染 Step04 Word、生成资产、首帧/故事板和上传视频。Owner:Harness 主控。退出条件:最早失败的 A/B/C/D 层通过其真实报告,且用户可见 Word 与 B/C 合同一致。 Harness 在 Step04 前依次运行四个本地、无 Provider 的门:`compile_semantic_step02.py` 的人物事实分区门、A 层实例/事件门、B 层 `step04_asset_prompt_contract.py`、C/D 层 `step04_word_contract_qa.py`。A 门要求可见人物、动作主体、口型说话人、画外说话人分离;B 门要求 B 提示词 SHA 与渠道 `actual_prompt` 一致、人物是最终角色卡或当前用户复用例外;用户复用例外先走 `step04_reuse_adapter.py`,视觉批准、路径、SHA 和允许使用回执齐全但缺同图 `actual_prompt` 时标为 `historical_visual_reference_only`,不得借用旧/新同 ID 提示词进入 B 或 Step05。C 门要求本地化 locale 闭合、每个 VG 从 0 计时、参考优先且无静态复述/字幕生产语句;D 门要求 Word 只展示 B/C、无 OCR/HTML、无内部资产 ID、无空白资产预览项。任一门失败时不生成/更新 Word、不提交任何渠道。 恢复顺序固定为:A 失败写 `step04_input_gate_report.json` 并只回 Step02 对指定镜头复核;B 失败写 `step04b_asset_prompt_gate.json` 并只恢复对应资产生命周期、实际提示词或回执;C 失败只重编译 C;D 失败只重渲染 D。旧 Word、旧合同、历史 accepted、渲染截图和目录扫描不能越过这些门。Harness 将旧输出标为 `stale_reference_not_consumable`,保留审计但从首帧、故事板、视频和新 Word 输入中排除。 人物资产固定走:`identity_master_prepared -> identity_master_submitted -> identity_master_downloaded -> identity_master_qa_passed -> character_sheet_prepared -> character_sheet_submitted -> character_sheet_downloaded -> character_sheet_qa_passed -> final_character_asset_accepted`。最终合同同时写 `asset_stage=character_sheet` 与 `lifecycle_state=final_character_asset_accepted`;身份母图是内部中间资产,永远不能写入最终 registry、B 层、Word 正式预览或任何下游上传列表。角色设定卡必须把已通过母图的精确原图和 SHA 上传到当前图生图渠道;没有上传回执、母图 SHA、母图 QA、角色卡 QA 或 16:9 约 2K 最终原图,严格失败关闭。 场景和道具采用各自的一阶段卡生产,但同样必须完成“提交、下载、SHA、结构/视觉 QA、最终验收”;最终合同除原图路径/SHA 与 `final_qa` 外,必须有实际 `generation_prompt`、真实 `evidence_path`、`asset_submission_receipt`(声明 `scene` 或 `prop` 阶段并含渠道任务 ID)和 `asset_download_receipt`(同一任务 ID、精确原图路径/SHA、字节/尺寸/文件 QA)。缺任一项分别报 `STEP04_ASSET_PROMPT_MISSING`、`STEP04_ASSET_EVIDENCE_MISSING`、`STEP04_ASSET_SUBMISSION_RECEIPT_MISSING`、`STEP04_ASSET_TASK_ID_MISSING` 或 `STEP04_ASSET_DOWNLOAD_RECEIPT_MISSING`;它们不能以旧文件名、Word 预览、计划提示词或渠道 HTTP 成功代替最终资格。 人物角色设定卡 QA 固定检查文件可解码/2K/16:9、多宫格与中文边缘标签、正侧背/头肩/表情组、同脸/同年龄/同发型/同服装/同配饰、全身比例与四肢、无原片演员/文字泄漏。QA 结果必须由 `tools/character_sheet_qa.py` 写入 job-local 生命周期:首次不通过时只准备同一母图、同一 SHA、同一渠道、带失败原因的定向重做;不得换脸、换母图、换身份、换渠道或重复提交成功任务。第二次失败时该工具返回 `external_blocked` 并保留两次实际结果;无依赖的资产组继续。 角色最终资产的机器准入字段必须逐项存在:`asset_stage=character_sheet`、`lifecycle_state=final_character_asset_accepted`、真实 `exact_path`/SHA-256、`identity_master_path`/SHA-256、母图 QA、`character_sheet_prompt`、角色卡实际提交回执、角色卡 `task_id`、`asset_download_receipt`(同任务 ID、最终原图路径/SHA 与文件 QA)、`display_name`、`purpose`、`evidence_path`、`allowed_instance_ids` 和角色卡 QA。角色卡提交回执必须声明 `asset_stage=character_sheet`,并绑定同一母图路径与 SHA;只含母图任务、Word 预览或文件名的记录一律报 `STEP04_CHARACTER_SHEET_SUBMISSION_RECEIPT_MISSING`。Harness 在进入 Step04 B 层前调用唯一生命周期校验器,按以下错误码失败关闭:`STEP04_CHARACTER_ASSET_STAGE_INVALID`、`STEP04_CHARACTER_SHEET_PARENT_MISSING`、`STEP04_CHARACTER_SHEET_PARENT_SHA_MISMATCH`、`STEP04_CHARACTER_SHEET_PROMPT_MISSING`、`STEP04_CHARACTER_SHEET_SUBMISSION_RECEIPT_MISSING`、`STEP04_CHARACTER_SHEET_TASK_ID_MISSING`、`STEP04_ASSET_DOWNLOAD_RECEIPT_MISSING`、`STEP04_CHARACTER_SHEET_QA_MISSING`、`STEP04_CHARACTER_SHEET_QA_FAILED`、`STEP04_FINAL_ASSET_REFERENCES_IDENTITY_MASTER`。任何一个错误都不生成/更新 Word、不导出首帧或故事板参考、不提交视频;恢复动作只指向该资产最早缺失阶段。 Harness 恢复时先运行 `tools/reconcile_asset_lifecycle.py` 读取 `asset_production_registry.json`,找到每个资产的最早缺失阶段;母图、角色卡、渠道上传、下载、QA 和最终登记必须各有精确路径、SHA 和非秘密回执。首帧、故事板和视频提交前必须用 `tools/prepare_downstream_references.py` 从最终 registry 导出精确路径/SHA,禁止从 Word 或母图库取图。旧 Word、截图和旧 `accepted` 状态不能反推资格。`tools/asset_lifecycle.py` 是资产阶段合同和历史隔离/最终 registry 导出的唯一实现;`tools/step04_abcd_compiler.py` 必须拒绝任何中间人物母图、父图来源不闭合或 QA 未通过的最终人物资产。 Step04 输入审计的参考帧必须按连续观察窗口的绝对毫秒从同一原片重新抽取首/中/尾,不得按旧切点编号找图;审计脚本必须使用真正异步的批次传输,禁止在并发调度中嵌套同步阻塞子进程。遇到帧时间错位或旧缓存,先切换到版本化审计目录并修正证据生成边界,再重跑受影响批次。Harness 只把同一窗口的 Gemini 卡、绝对时间帧和 Terra 结果合并,绝不把不同时间轴的结果拼成一个 Step02 卡。 对已生成视频不得自动重做。展示问题和建议,只在用户明确决定后重做指定生产组;其他没有依赖关系的工作继续。 全部视频组完成前,不进入字幕、完整剪辑、背景音乐或 Suno。完成后先问用户当次剪辑方案。 ## 并发与协作 仅为彼此独立且写入范围不重叠的工作调用多个子智能体。优先并发: - Step01 的音频、镜头/基础帧、文字/OCR 三支线。 - 不同关键道具卡、场景卡、角色卡和声音身份。 - 首帧、故事板、提示词和视频中彼此不连续的生产组。 - 已提交渠道任务的轮询、下载和独立结果检查。 连续镜头链、同一个锁定提示词、同一首帧职责、用户决定和付费提交由主控串行负责。不要让两个子智能体同时修改同一文件、同一生产组或同一渠道任务。 ### 并发槽位与低价值任务削减(S-003) 当前线程最多使用 `3 个子 agent + 1 个主控`。存在三个或以上互不依赖、写入范围独立的工作单元时,主控应尽量占满三个子 agent;不足三个时不创建虚假任务,不把同一文件或同一生产组拆给多个 agent。子 agent 不得为了“占满槽位”重复读取同一审计结果、重复生成同一帧或只做可由本机脚本完成的字段类型检查。 Step01/Step02 默认采用轻量首轮 -> 风险触发补证:先并发音频、轻量帧、字幕候选和 Gemini 连续视频;仅将冲突镜头、边界不一致、字幕变化不明、年龄/身份冲突和会影响下游身份绑定的对白派发给密集帧/语义复核。contact sheet、Markdown 预览、raw response 整理、重复哈希和结构性 JSON 检查作为旁路或主控本地检查,不得阻塞外部观察、轮询或下一节点。 所有子任务仍必须以固定五字段终态回传;主控回读真实产物后再合并,不因 agent idle、已发消息或 HTTP 成功提前结束。合并写入者只有主控。 ### 外部视觉审计速度合同(S-002) 适用范围:Gemini/Yunwu 视觉证据交给 GPT 做事实审计。默认模型为 `gpt-5.6-terra`;不得沿用旧批次的 `gpt-5.6-luna`、`gpt-5.6-sol` 或其他未声明模型。已成功的批次不重复提交,失败批次按镜头 ID 精确恢复。 主控先一次性准备全部独立批次和本地证据路径,再并发提交彼此独立批次;提交后的轮询、下载、JSON 合并和 QA 并发执行。单批次建议 4 个镜头,批次数量受实际额度和渠道并发限制约束;Word 生成、压缩预览、哈希和结构检查全部旁路执行,不得阻塞外部提交或轮询。 Step04 A/B/C 编译是本地确定性工作,不为 Word 生成再次调用 Provider。只有 Step02 已确认的冲突窗口才补证;没有冲突的镜头不重复提交 Gemini/Terra、不重复 OCR、不重复抽取 start/mid/end 帧。D 层结构检查、哈希和截图 QA 与外部轮询旁路执行,不能阻塞已提交批次。 仅对 HTTP `503`、`502`、`504`、`429` 和明确的瞬时网络错误自动重试,最多 3 次,使用 2/4/8 秒指数退避并记录每次开始/结束、状态码和尝试次数。`401`、`403`、参数错误、内容策略拦截和持续失败不重试;重试仍失败时只保留该批次为 `external_blocked`,不重跑成功批次,也不把原始 Gemini 卡伪装成 GPT 审计结果。 每次审计必须记录 `model`、`endpoint`、`batch_id`、`shot_ids`、`submit_at`、`completed_at`、`retry_count`、`http_statuses`、`status` 和 `evidence_path`,最终报告区分本地活动耗时与外部等待耗时。质量结论只消费同一批次的 Gemini 卡、精确原始帧和审计输出。 每个子智能体任务必须包含:`task_id`、唯一读写范围、预期产物或证据路径、主控接续条件,并以且仅以以下格式结束: ```text result_type: final_delivery | external_blocked task_id: evidence_path_or_url: verified_result: next_action_or_blocker: ``` 子智能体超时或没有终态时,主控先读取其唯一写入范围:存在可核验产物就接管并继续最早缺口;没有产物则对同一子智能体补发一次固定终态请求。仍无结果时主控自己执行,不创建重复工人或无限等待循环。 ## 卡点与路由迭代 只有以下情况可以暂停等待用户: - 缺少原片、目标地区/语言、渠道或当前渠道所需的真实授权。 - 本土化没有可信等价形式,且会改变剧情关系、冲突或用户创作方向。 - 渠道实际失败且需要用户决定是否换渠道、删除渠道或等待恢复。 - 已生成视频的重做、改参考、改提示词或是否进入剪辑。首帧、故事板或资产卡不单独形成用户确认阻塞;仅当用户主动否决已生成结果时才暂停该依赖范围。 - 已验证的路由缺口,无法依据既有权威 Skill 做出不改变创作结果的判断。 出现路由缺口时,先用已有原片证据、当前产物和错误信息定位在最窄步骤;给出最多三道可理解的选择题。收到答案后: 1. 立即修改最窄的权威 Skill 或 reference,不能只记在聊天中。 2. 同步当前 Codex 发现的对应 Skill 副本。 3. 回读关键词并运行最小验证;报告“改前行为 -> 改后行为”。 4. 从原卡点继续,而不是重新开始全链路。 不要因假设性风险设置降级、额外审批或第二条流程。真实 provider 错误的修复只能落在报错边界,不能替代或绕过用户已选渠道。 ## 基于实际结果的自进化 把用户对已展示的首帧、故事板、声音参考或实际视频的具体反馈,与对应原片证据、实际上传参考图和实际提示词一起作为“优化证据包”。不要仅凭抽象偏好、一次渠道波动或未经展示的候选结果修改 Skill。 先将问题定位到最窄责任步骤,再向用户申请本次优化许可。默认映射如下: - 身份、服装、关键道具、文字资产、本土化事实或参考图职责错误:Step04 / 对应资产或风格 Skill。 - 首帧机位、构图、站位、开场动作或连续边界错误:首帧节点及其提示词合同。 - 故事板顺序、调度、转场或镜头信息错误:正式故事板节点及其提示词合同。 - 已锁定参考和提示词正确,但视频人物、动作、口型、声音或镜头执行偏差:Step05 / 当前渠道执行规则。 - 明确的 API、上传、模型参数、轮询或下载问题:当前渠道的最窄 Skill 或脚本。 申请许可时只说明:观察到的实际问题、推荐修改位置、修改后会影响的未生成生产组,以及是否同时按该改动重做当前指定组。把推荐项放在 A;一次最多三题。没有本次明确许可,只记录问题并继续不依赖的工作,不修改 Skill,不重做视频,不消耗新的渠道额度。 获得许可后: 1. 只修改最窄、最权威的 owner;单个生产组的创作选择只写入当前 job,不升级 Skill。 2. 将规则写成可复用的“触发条件 -> 权威输入 -> 正确动作 -> 适用范围”,不记录凭据、临时任务 ID 或一次性 URL。 3. 同步当前 Codex 发现副本,回读变更并运行最小验证。 4. 只将修改应用到用户许可范围内尚未生成的生产组;已生成视频仍由用户逐组决定是否重做。 5. 在下一次同类实际产物中检查该规则是否减少同类问题;若没有,保留任务证据但撤回或收窄该规则,不把它扩大为默认。 每次获准优化后向用户简短回传:`实际问题 -> 修改的 Skill/步骤 -> 改后会怎样 -> 已验证证据 -> 尚未验证部分`。这是一条有用户许可的学习闭环,不是自动修改所有路由的权限。 每次 Skill 迭代产生了新的默认模板、Word、提示词包或其他会替代旧版本的 job-local 产物后,主动问用户一次是否归档被替代版本;没有用户同意不得自动移动或删除。用户同意后只归档被新版本替代的同类产物,先生成并校验可恢复 ZIP,再移出活跃生产目录,最后把任务状态中的活跃路径和 SHA-256 统一指向新版本。若文件被占用,继续处理可归档项并如实报告唯一待归档文件,不强关用户应用、不把部分归档说成全部完成。 ### Skill 路由版本与回退 修改权威 Skill、Harness 或路由参考前,先把本次会消费的完整路由目录复制到版本化快照目录,生成 `snapshot_manifest.json` 和 SHA-256,再压缩为 ZIP。快照必须包含主路由、Harness、当前编号节点、故事板、资产、渠道辅助和其直接引用的 references;不得只备份正在修改的单个 `SKILL.md`。修改后将快照路径、ZIP SHA-256 和变更版本写入当前任务状态。 回退只使用快照 manifest 校验通过的文件。执行覆盖前先备份当前目标目录;默认只覆盖快照列出的 Skill 文件,不自动删除后来新增的文件。标准回退脚本为 `skill_route_snapshots/restore_skill_route.ps1`;回退完成必须输出恢复报告和新的当前目录备份路径。任何路由修改都必须能沿“当前版本 -> 修改前快照 -> 修改前目录备份”三层链路恢复,不允许直接覆盖后无来源可追溯。 ## 交付与恢复 每次对用户只报告会改变决定的内容:实际视频/产物位置、真实卡点、当前需要的选择题或下一自动动作。网站或画布有变化时给出 URL 与一行实际效果说明。 恢复任务时,读取 `harness_state.json`、当前精确产物和渠道状态,从最早未完成节点继续;禁止根据 `latest`、旧 zip、浏览器历史或同名文件猜测输入。若已验收产物不足以判断从哪一步接续,展示已有产物和缺口,问用户从哪一步开始。 当本次请求的视频全部可访问且已展示给用户时,返回:交付视频路径/URL、每个生产组状态、已验证内容、未执行的后期剪辑事项。除真正的用户决定或外部阻塞外,不停在中间状态。 ### Step04 单一恢复入口(20260804) Step04 的本地恢复入口固定为 `tools/run_step04_abcd.py`。它在编译前把 Harness 节点写为 `step04a_input_gate`,成功后只推进到 `step04d_render_pending`;失败时保留 `step04_input_gate_report.json` 或编译器结构化错误,不会因为旧 Word、旧合同或历史资产目录存在而推进。它不调用任何图片/视频 Provider,也不重新推断 Step02 事实。 DOCX 渲染和真实截图 QA 完成后,统一使用 `tools/finalize_step04_abcd.py` 回写 `step04_word_delivered`;该入口必须核对合同 SHA、DOCX 实际路径、渲染回执和 `docx-preview + Chromium` QA 截图,任何一项缺失都保持 `step04d_render_pending`。 ### S-004.5 实例唯一性与文档运行时封口(20260804) 同一镜头的多人物必须使用结构化唯一 `instance_id`;同一资产可被多个实例共用,但只生成一个镜头级参考槽位,并列出全部 `allowed_instance_ids`。Harness 只接受 A 层实例集合与 Step02 完全一致的合同,不得用角色名、衣服、身体局部或资产名补回缺失实例。 渲染 D 层前由运行时探针选出可执行的真实 Python,明确排除 WindowsApps 占位命令和 LibreOffice Python;探针失败就保持 `step04d_render_pending` 并返回结构化阻塞,不能切换到未经验证的系统别名或重复生成 Word。 ### S-004.6 提示词压缩恢复规则(20260804) Step04 的提示词压缩在 C 层完成,D 层只读渲染。按 MiniMax H3 使用手册的可执行结构,正文顺序固定为:实际参考图、场景/环境身份、核心创意与构图、毫秒级变化过程、镜头/光线/声音。已上传参考图锁定的脸、发型、服装、空间几何、道具材质和静态文字不重复描述;连续小分镜只写相对上一段的新变化。台词必须留在对应事件并绑定独立对白时码,不能同时复制到细节或环境声。 Harness 恢复时必须读取 C 层的 `prompt_compression`,验证压缩前后字符统计、参考图声明、事件/对白/实例回指和 `prompt_policy`;压缩只允许删除精确套话和重复句,不得依据字数硬截断或改写事实。`compressed_chars > raw_chars`、台词重复、事件/对白/参考槽位缺失、出现泛称或英文资产 ID时,保持 `step04a_input_gate`/C 层阻塞并回传结构化错误。Python 编译器、念念 AI bridge 与 Word 渲染器必须使用同一 C 层 `prompt_text`,禁止 D 层重新拼成长提示词。 ### S-027 念念 AI 一键转绘生产代理边界(20260806) 念念 AI 工作台把整条 `mx-shortdrama-production-harness -> mx-shortdrama-00-router` 作为一个可恢复的**转绘生产代理**调用,而不是把各 Step 的提示词、Word 或渠道脚本暴露成独立生产入口。网站唯一可提交对象是 job-local `niannian_redraw_agent_job_v1` 任务包:`job_id`、原片精确路径/SHA-256/时长、目标地区/locale、渠道选择、用户复用决定、当前允许的 Provider 范围,以及 Step04 所需的已验收结构化输入路径。不得把 API Key、Cookie、媒体字节或自由 Prompt 写入网站任务包。 工作台 -> 任务包 -> `tools/run_shortdrama_redraw_agent.py` -> Harness 最早缺失节点 -> Router 编号 Step -> typed final result。代理先校验原片路径和 SHA-256,只把任务包与 `harness_state.json` 写到本 job,绝不复制原片;然后由 `tools/run_step04_abcd.py` 执行唯一的 Step04 A/B/C/D 路径。网站不得再调用 `niannian_step04_abcd.js` 的独立语义编译、旧 Word/目录解析或 `run_current_ar_prevideo_images.py`;后者只保留取证,生产调用固定返回 `LEGACY_STEP05_ENTRYPOINT_DISABLED`。 图片渠道的每次生产调用必须带 `job_id`、`asset_id`、`asset_stage`,并将提交的同一文本写入不可变 `actual_prompt` 与 `actual_prompt_sha256`,随后写提交回执、下载回执、精确路径、SHA-256、文件 QA 和阶段 QA。`identity_master`、`character_sheet`、`scene`、`prop`、`first_frame`、`storyboard` 不得使用 generic 阶段;角色设定卡仍必须先通过同一母图的图生图上传与角色卡 QA。只有阶段化 Step05 执行器能调用渠道;它只接收已验证的 B/C 合同与最终资产 registry。 代理每次只回写五字段 typed result:`result_type`、`task_id`、`evidence_path_or_url`、`verified_result`、`next_action_or_blocker`。网站只展示该真实终态;`Word 已存在`、目录有图、HTTP 200、旧 accepted 或旧截图均不是成功。默认 `provider_calls_allowed=false`:无明确生产授权时,代理完成本地合同和 Word 后在 Step05 返回精确阻塞,而不是隐式调用图片或视频渠道。 ### S-028 工作台 Step01/Step02 同源闭环(20260806) 念念 AI Agent 从新 job 开始时,`tools/run_step01_step02_agent.py` 是唯一早期调度入口:先执行当前 job-local 原片的 Mimo 音频/镜头与基础帧,再由主控根据这些真实帧生成连续视频计划;Yunwu Gemini 连续视频观察与 Paddle OCR 在独立目录并发执行。三者均成功后,主控才写唯一 `step01_evidence_manifest.json`,其中每条支线必须有同 job_id、同 source SHA-256、精确清单路径/SHA 和给 Step02 使用的显式导出;不得从旧 Word、旧任务清单、目录扫描或帧序号补齐任一支线。 证据渠道的授权独立于图片/视频生产授权:只有当前任务同时声明 `execution.evidence_provider_calls_allowed=true` 和对应受保护 Provider 配置时,Agent 才调用 Mimo、Yunwu、Paddle 及 Step02 Terra/GPT 审计。仅有 `provider_calls_allowed=true` 不得隐式授权这些证据调用。任一支线失败时,保持该支线精确 blocker;另外两条已完成支线保留并可恢复,不重跑。 Step02 语义编译器必须把每一个 `entity_instances` 与一条唯一的 `identity_bindings.bindings[]` 对齐:同 `shot_id + instance_id + asset_id + 纯中文@名` 一一对应,且 binding 有 `resolved`、证据 ID、镜头集合与实例映射。集合不相等、重复绑定或把视觉不同人物合并到同一资产时,事实包失败关闭,不能进入 Step04、资产、Word 或渠道。 ### S-029 计划资产合同与可推进生命周期(20260806) 新 job 的中段固定为:`Step02 已验收事实 -> run_step04_planned_assets.py -> planned B 合同 + asset_production_registry.json -> Step05A 阶段化资产生产 -> final asset_registry -> Step04 A/B/C/D`。计划 B 只保存第五步将逐字消费的资产提示词及 SHA、证据、使用镜头、人物母图/角色卡两阶段意图和生命周期起点;它是 `planned_asset_generation`,禁止进入最终资产 registry、Word、首帧、故事板和视频。 `asset_production_registry.json` 是可恢复过程状态:阶段化执行器只能追加/推进提交回执、下载回执、精确路径/SHA、QA、一次角色卡定向重做和最终验收;不得改写 job/source 归属、资产集合、资产种类、证据来源或锁定提示词 SHA。计划 B 合同不可变;注册表可推进但不能被重新初始化覆盖。恢复时先验证不可变锚点,再只执行每项资产的最早缺失阶段。最终角色卡/场景/道具均通过生命周期和 QA 后,才导出最终 registry 并允许最终 Step04 B/C/D、Word、首帧、故事板和视频。 ### S-030 下载后视觉 QA 与无重复付费恢复(20260806) 已观察到的触发:若在图片生成前要求 QA,系统只能伪造“通过”或无法推进;若生成完成后因 QA 授权缺失直接从 `*_prepared` 重启,又会重复提交同一付费图片任务。保护动作:将图片渠道结果写入最终资产 registry、进入 Step04 B/C/D、首帧、故事板或视频。Owner:Harness 主控和唯一阶段化图片适配器。退出条件:当前 job 的同一操作已有真实下载图、SHA、下载回执和文件/视觉 QA;失败时完成唯一允许的角色卡定向重做或保留精确 blocker。 每个 Step05A 图片操作固定按:`锁定 actual_prompt -> 当前 job/stage 提交 -> 轮询下载原图 -> 精确路径/SHA/16:9 2K 文件检查 -> 下载后视觉 QA -> 生命周期回写` 执行。视觉 QA 是与图片渠道独立的当前 job 授权;它只读取已下载的 job-local 原图和锁定资产职责,不能读取原片人物帧、旧 Word 或目录扫描。视觉 QA 没有授权、凭据或有效结论时,适配器保留确定性 `pending_visual_qa_operation_result.json`,下一次只从该下载结果继续 QA,严禁再次提交图片。 角色卡视觉 QA 失败时,`character_sheet_qa.py` 仅允许同一身份母图路径/SHA、同一渠道和同一角色资产的一次定向重做;不得换脸、换母图、换身份或静默切换渠道。第二次失败严格阻断该资产,场景/道具等无依赖资产继续。只有视觉 QA 和文件 QA 都通过的最终角色卡、场景或道具,才可导出最终 `asset_registry.json`;渠道 HTTP 成功、下载目录存在或 QA 请求已创建均不是验收。 ## Step04 Runtime Delivery Harness 在 Step02 通过后只调用 A/B/C/D 合同编译入口,不再调用历史 `build_step04*.py`、`recover_ar_step04.py` 或自由文本 Word 生成器;这些入口视为已禁用的旧实现。网站 Step04 compile 成功后必须在受控工作器中调用 `render_step04_abcd_docx.py`,再调用 `qa_step04_abcd_docx_preview.js`,回读合同 SHA、Word SHA、截图 QA 状态和输出路径。任一渲染、回读或视觉检查失败,返回 `external_blocked`,不能只返回“合同已保存”。Step04 API 的 Word 下载必须指向这次合同的实际 DOCX,不能从历史 job 或旧 Word 恢复。 ### S-004.4 不可变编译边界与发布闭合(20260804) Step04 是确定性编译层,不是第二次视觉理解层。只接受 Step02 已通过语义门的不可变合同;禁止根据服装、身体局部、字幕姓名、自由文本、旧镜头号或历史资产表补写人物、说话人、动作、场景、道具和参考图。A/B/C 每个字段必须能回指证据和前一层,D 只能读取同一合同的规范化摘要并渲染,不得重新读取原始 cards 或改写事实。 恢复时必须同时确认语义闭合和资产闭合:连续区间、实体实例、事件、对白和冲突状态全部 accepted;镜头实例、参考槽位、真实路径、SHA-256、职责与实际消费关系全部一一对应。任一闭合链失败,停在最早层并返回结构化 `external_blocked`,不生成表面完整 Word。双男镜头、局部手臂、同镜头多人物和重复服装词必须按 `instance_id` 分离,只出现中文 `@` 名称不算参考图消费。 发布恢复还要验证 D 依赖闭合:隔离发布包必须携带 D 层 Python 渲染器、截图 QA 脚本和 `docx-preview/jszip` vendor;服务端优先使用包内路径,开发环境才使用工作区回退路径。compile 成功但 D 工具、合同回读、Word SHA 或真实截图 QA 缺失时,保持 `external_blocked`,不得把合同保存误报成 Word 交付。 ### S-031 Step04 提示词合同验证与 H3 提交前封口(20260807) 本规则由真实失败触发:Step02 曾把画面中的男配与男主对白错绑;“保证?”曾只有 17ms;同一句台词在相邻小镜头重复;C 层还出现人物泛称以及显示字幕/禁止新增字幕的互斥要求。Harness 在 Step04 A 入口和 C 层输出后都必须运行 `scripts/validate_step04_prompt_contract.py`,不能只检查 JSON 字段存在。 校验器固定检查:每条口型对白的视觉发言人闭合、Step02/Step04 说话人一致、对白独立区间和最小 120ms 可执行时长、相邻重复台词、生产组源区间与小镜头区间、纯中文 `@` 参考名、泛称/英文资产 ID、字幕策略冲突和当前组参考图实际消费。失败时写 `step04_prompt_contract_gate_report.json`,当前节点停在最早缺失的 Step02 或 C 层;不得生成/更新 Word,也不得创建 RunningHub 任务。 恢复只修复报告指向的最早证据缺口。H3 提交器在真实提交前必须接收 `--step02-manifest --step04-ir --group-id` 并先调用同一校验器;校验失败在上传文件和付费提交之前返回 `H3_SEMANTIC_CONTRACT_BLOCKED`。`--dry-run` 可以不携带合同用于检查通道映射,但携带合同时必须实际执行语义校验。 ### 视频参考组聚合与 H3 提交合同(20260807) 真实任务已经证明:Step04 C 层为了保留证据可以有很多细粒度子段,但 MiniMax H3 的实际提交单元必须是完整的 5–15 秒视频组。Harness 在视频参考编译边界执行一次确定性聚合:按原片绝对时间排序,只合并相邻且连续的子段;组内保留 `source_group_ids`、`source_start_ms`、`source_end_ms` 和每个子段相对于组起点的秒级时间/提示词变化,不伪造动作、不补造时长、不丢失证据。 聚合后的每组必须满足 `5 <= duration_seconds <= 15`,并按最终资产 ID 去重后携带不超过 9 张最终资产原图。尾段不足 5 秒时,只能在与前组连续、合并后不超过 15 秒且参考图仍不超过 9 张时并入前组;否则停在视频参考组合节点并写结构化阻塞。组内参考图只能来自当前镜头实际消费的最终资产槽位,不能从 Word、原片抽帧、身份母图、故事板或旧版本目录反推。 参考编译允许先生成本地 `prepared` 清单;5 图/6 图等未发布候选通道只能标记 `channel_status=unpublished_candidate` 并停留在待提交参考组合,不能上传文件、创建 H3 任务或扣费。只有进入真正的 H3 提交节点时,才检查参考图数量对应的 RunningHub 工作流是否已发布;未发布时保持 Harness 当前节点为 H3 提交边界,修复或发布该通道后从该节点恢复,不重跑 Step01–Step05,也不重复生成已经验收的资产。 ## H3 画布授权与质量恢复封口(S-032,20260807) 视频节点不得把环境中的 RunningHub API Key 当作用户当前账户授权。H3 多图任务的正式提交入口是用户当前 RunningHub 画布:先绑定最终资产原图和 Step04 提示词,画布以 `Ultra` 成功运行后才允许发布 API。Harness 必须保存画布工作流 ID、输入资产数量、运行任务回执、实际账户范围和发布回执;无法证明这些字段时保持 `h3_provider_authorization` 阻塞。 `consumeMoney` 非空、`consumeCoins` 缺失、账户范围不一致或使用企业级 Key 直连时,返回 `H3_BILLING_SCOPE_MISMATCH`,不重提、不换 Key、不发布 API。视频下载后还必须检查 MP4 可读取、H.264/AAC、9:16、生产组时长、参考图未使用占位图以及人物/场景/道具与最终资产一致;失败返回 `H3_OUTPUT_QUALITY_BLOCKED`,保留真实文件和 QA 原因,不能登记正式通道。 恢复顺序固定为:`画布资产上传 -> 画布 Ultra 运行 -> 视频 QA/结算回读 -> 发布 API -> 通道登记`。只从最早缺失节点继续,不重新跑已完成的 Step01–Step05,不从 Word 反抽图,不把候选 workflow ID 当成正式 API。
Build or run a storyboard-director workflow that reads a script, reviews the beat structure, plans professional storyboard shots, validates action timing, expression, and object state, critiques and scores the plan, and outputs detailed storyboard prompts or screenplay-style shot lists. Use when the user wants script-to-storyboard prompts, shot-by-shot visual planning, storyboard review, or a professional breakdown before video generation.
--- name: storyboard-director description: Build or run a storyboard-director workflow that reads a script, reviews the beat structure, plans professional storyboard shots, validates action timing, expression, and object state, critiques and scores the plan, and outputs detailed storyboard prompts or screenplay-style shot lists. Use when the user wants script-to-storyboard prompts, shot-by-shot visual planning, storyboard review, or a professional breakdown before video generation. --- # Storyboard Director Turn a script, treatment, outline, scene, or brand short into a professional storyboard plan and detailed shot prompts. Use this skill when the user wants: - `剧本 -> 分镜脚本` - `剧本 -> 详细分镜提示词` - storyboard review before video generation - shot-level prompt structure for Jimeng, Seedance, image boards, or human storyboard artists - rhythm, expression, blocking, or visual readability checks before final prompt writing This skill is storyboard-first, not model-first. Do these in order: 1. understand the script 2. review the beat and rhythm 3. decide how the scene should be expressed visually 4. build storyboard shots 5. validate action timing, expression, and object state 6. critique and score the result 7. output storyboard-ready prompts ## Source Policy Prefer official and professional-team sources over generic prompt folklore. Use this order: 1. professional team and research-team open-source projects for shot planning and storyboard logic 2. official product material when the user also needs model-specific prompt constraints 3. practical storyboard workflow tools for review expectations 4. your own fallback reasoning only when the sources above do not answer the question See [open_source_foundations.md](./references/open_source_foundations.md) and [source_map.md](./references/source_map.md). ## What This Skill Is Based On This skill is intentionally built from these open-source directions: - `ViMax` for script-to-shot orchestration and shot-level storyboard planning - `FilmAgent` for director/screenwriter/cinematographer role decomposition and critique-correct-verify - `MovieAgent` for hierarchical multi-scene and multi-shot planning - `Story2Board` for panel-level prompt shaping - `TaleCrafter` for story-to-layout and multi-character consistency - `Storyboarder` for practical human storyboard workflow expectations - `screenplay-parser` and screenplay interchange tools for script normalization Do not claim this skill is an official release from those teams. It is a new skill built by combining their strongest reusable ideas into one workflow. ## Workflow ### 1. Parse the script before you invent shots Extract: - scenes or user-provided segments - who is present - what changes - what the audience must understand - emotional turns - objects whose state matters - location, time, weather, and period clues Use [screenplay_parsing.md](./references/screenplay_parsing.md). Use `scripts/normalize_script.py` for a deterministic first pass. ### 2. Review the script as a visual problem Before writing any shots, ask: - what is this scene trying to express - what must the audience understand without explanation - which beats will read fast - which beats need more hold time - which beats want long takes - which beats should cut - which objects or transformations need state control - which performances depend on expression rather than action Use [script_review.md](./references/script_review.md). Do not force the original written second marks if they conflict with readable action. The script timing is a reference. Readability is the release gate. ### 3. Build a story bible Before final storyboard writing, build a compact internal representation: - premise - theme cues - protagonist hierarchy - character identity anchors - location anchors - continuity risks - object-state risks - style and audience Use `scripts/build_story_bible.py`. See [assets/example_story_bible.json](./assets/example_story_bible.json). ### 4. Resolve style and presentation mode Choose one: - `script_inferred_style` - `user_locked_style` - `hybrid_style` Record both: - `style_mode` - `style_rationale` See [style_inference.md](./references/style_inference.md). ### 5. Plan the storyboard by scene objective, not by camera decoration For each scene or beat, decide: - scene objective - protagonist priority - how the scene should be expressed - whether it wants restraint, intimacy, tension, wonder, comedy, clarity, or release Then decide shots from that. Use: - [storyboard_workflow.md](./references/storyboard_workflow.md) - [director_decision_framework.md](./references/director_decision_framework.md) ### 6. Design each shot with six required layers Every storyboard shot must explicitly resolve: 1. `narrative_purpose` 2. `audience_focus` 3. `blocking_plan` 4. `composition_goal` 5. `expression_plan` 6. `movement_motivation` Also resolve: - `tempo` - `focus_shift` - `transition_reason` If any of these are vague, the shot is not ready. See: - [expression_design.md](./references/expression_design.md) - [lighting_design.md](./references/lighting_design.md) - [sound_design.md](./references/sound_design.md) ### 7. Run action timing validation Do not approve a shot because the total seconds look plausible. Validate whether the available duration can clearly carry: - setup - execution - result - reaction This applies to long takes too. If one character fails and another character then prepares to try, those are separate readable units. Do not collapse the second performer into a sudden already-moving state. See [action_timing_validation.md](./references/action_timing_validation.md). ### 8. Run expression validation Do not rely only on body motion. Check whether the audience can read: - what the character feels before the action - how that feeling changes during the action - whether the result changes the expression - whether the reaction lands clearly If the scene depends on emotion but the face, posture, wing/hand gesture, or eye direction are unspecified, revise it. See [expression_design.md](./references/expression_design.md). ### 9. Run object-state control If an object has story-critical state, record it explicitly. Examples: - unripe cotton boll vs full bloom - closed box vs opened box - intact sword vs shattered sword - empty cup vs filled cup For each critical object, record: - required state now - visible markers - forbidden markers - when state transition is allowed See [object_state_control.md](./references/object_state_control.md). ### 10. Critique, correct, and verify Do not trust the first pass. For each shot: - identify the likely failure mode - make the smallest useful correction - verify that the revised shot improves clarity, protagonist priority, and controllability See [critique_correct_verify.md](./references/critique_correct_verify.md). ### 11. Score before final output Use at least: - narrative fidelity - protagonist priority - blocking clarity - composition logic - camera motivation - rhythm control - action timing readability - expression readability - object state control - generation controllability See [evaluation_rubric.md](./references/evaluation_rubric.md). Use `scripts/score_storyboard_plan.py`. ### 12. Render the storyboard output Default Chinese final output should be a screenplay-style storyboard script: ```text 全局风格: ... 【00-12s|第一幕:标题】 镜头1:0-4s [中景] ... 镜头2:4-7s [近景] ... 镜头3:7-12s [特写] ... 音效:... ``` Use sparse front labels. Keep movement in the shot sentence body. Keep sound at the end of the scene block. Do not expose internal review layers unless the user explicitly asks for analysis. Use: - [storyboard_prompt_format.md](./references/storyboard_prompt_format.md) - `scripts/render_storyboard_prompt.py` ## Output Modes Use these output modes: - `storyboard_script` Default final Chinese output. Scene header, shot lines, scene-level sound. - `prompt_only` Compact prompt blocks with no internal review lines. - `review` Analysis mode. May include director decision, action timing validation, critique, and scoring. ## Output Contract Use the schema in [storyboard_schema.json](./assets/storyboard_schema.json). Each shot should capture: - `narrative_purpose` - `audience_focus` - `director_decision` - `expression_plan` - `action_timing_validation` - `object_state_control` - `subject` - `action` - `setting` - `mood` - `shot_size` - `angle` - `lens` - `composition` - `lighting` - `sound_design` - `critique_pass` - `evaluation` - `timecoded_beats` ## Prompt Rules - Do not dump the whole screenplay into one giant prompt. - Do not design shots before understanding the script objective. - Do not let support characters steal the protagonist beat unless the story truly shifts focus. - Do not overload front labels with too much technical data. - Do not approve a shot whose action chain is unreadable in the available seconds. - Do not approve an emotional shot whose expression chain is vague. - Do not approve an object-transformation shot without explicit object-state control. - Do not expose internal review layers in final output unless the user explicitly asks for review mode. - When a user shows a preferred storyboard prompt structure, mirror it closely. ## Resources ### scripts/ - `normalize_script.py` - `build_story_bible.py` - `validate_storyboard_plan.py` - `score_storyboard_plan.py` - `render_storyboard_prompt.py` ### references/ Read only the files you need: - `open_source_foundations.md` for where the workflow came from - `storyboard_workflow.md` for the main planning pipeline - `script_review.md` for pre-shot review logic - `storyboard_prompt_format.md` for final output structure - `expression_design.md` for character expression planning - `object_state_control.md` for state-gated objects - `action_timing_validation.md` for readable action timing ### assets/ - `storyboard_schema.json` - `example_storyboard_plan.json` - `example_story_bible.json`