swan7-py/minimax-h3-skills-local/h3-video-prompt-cn
Claude Code and agent skill by swan7-py/minimax-h3-skills-local
- community
Checking that the SKILL.md file is still in the repository.
为 T2VA / I2VA / FL2VA / L2VA / Ref2VA 编写 MiniMax H3 视频生成提示词(中文产出版 · 默认中文)。当需要将多模态需求改写为 H3 提示词结构、撰写 integrated_multimodal_description / overall_soundscape / non_diegetic_music、对齐关键帧、或为图像/视频/音频定义参考标签时使用。产出语言默认中文——描述内容(动作/场景/光影/声音)用中文书写,字段名、标签、占位符保持英文;仅当用户明确要求英文时才走英文产出。
Install
npx vskill@latest install swan7-py/minimax-h3-skills-local/h3-video-prompt-cnSKILL.md
H3 视频提示词撰写
产出语言默认中文(中文产出版):描述内容用中文书写,字段名、标签、占位符保持英文。核心机制:结构以官方英文规范references/base-en.txt(基础模式)/references/ref-en.txt(全参考模式)为准——它们是 H3 格式的权威契约,不翻译。中文产出版=按英文规范的要求,用中文散文去"填空";字段名、[Shot N]、At MM:SS.mmm、<Picture N>/<Video N>/<Subject N>、保留标记、标签、固定对齐句一律保持英文。base.txt/ref.txt仅为人可读的中文渲染版,结构以-en英文文件为准。
工作流 (Workflow)
- 识别输入模式:T2VA、I2VA、FL2VA、L2VA,还是全参考 Ref2VA。
- 对于基础文本 / 关键帧模式,阅读
references/base-en.txt并遵循其最终提示词结构。 - 对于全参考模式,阅读
references/ref-en.txt并遵循其六段改写格式。 - 保留所选指南中的准确字段名、段落顺序、标签与计时标注。
- 产出语言默认中文(内容中文、结构标签英文);仅当用户明确要求英文时才走英文产出。
基础模式 (Base Modes)
- T2VA:从文本构建完整的视听时间线。
- I2VA:从首帧开始,并由此向前发展。
- FL2VA:描述首帧与末帧之间的连续路径。
- L2VA:推断一个合理的开头,并收束到给定的末帧。
按 references/base-en.txt 所示顺序使用 integrated_multimodal_description、overall_soundscape、non_diegetic_music。
全参考模式 (Full-Reference Mode)
Ref2VA 改写依次使用 subject_definitions、summary、retention_analysis、detailed_description、overall_soundscape、non_diegetic_music。参考标签在各段之间保持一致。
触发词(挂在任务 LoRA 上,2026-11-04 补):motion_transfer_v1.0_ref2va 要求首行 `motion_transfer:`;ffp_v1.0_ref2va 要求首行 `vfx_edit:`(写 motion_transfer: 完全不触发)。这类触发词是 LoRA 训练时的契约,删掉等于没挂 LoRA;触发词不计入六段、紧跟在正文第一行之前。
两段例外(MT / Guide Latents 路线,2026-11-04):overall_soundscape 与 non_diegetic_music 都写 `N/A` —— 该路线的工作流复制源片音轨、不生成对白与音乐(官方原话 Audio copies the source soundtrack; no dialogue/music is generated.)。此时不要写环境声与配乐描述。
三条硬规则(2026-10-08 用户纠正 · 曾三次翻车,务必先读)
① `summary` 只讲剧情与参考关系。镜头走向只允许一句「层级概括」(如「一条连续长镜」「三镜交换」「约第 5 秒凝滞」);镜头运动细节——焦距 / 半径 / 高度 / 角度 / 速度 / 景别 / 摇幅 / 推拉变焦——一律只写进 `detailed_description`。
- ✓(官方示例)
[reference generation + audio reference] 目标视频展示 <Subject 3> 在 <Subject 1> 中吃饼干。<Subject 4> 带着 <Subject 2> 走进来,萨摩耶扑向饼干。这三镜的互动以 <Audio 1> 作为音色参考,并以一段罐头笑声收尾。 - ✗(把 summary 写成镜头说明)
…机位随即以恒定半径、恒定高度、恒定焦距、恒定速度顺时针绕完全冻结的她转满一整圈… - 自检:summary 内出现 DSL 直译的镜头变量 → 删掉、挪进
detailed_description。
② 参考图角色判据(正向):图片作首帧 / 末帧 / 关键帧 / 构图锚 → 独立成 `<Picture N>`;图片作角色 / 服装 / 环境 / 风格来源 → 内联进对应 `<Subject N>` 的定义里("…是 `<Picture N>` 中的…")。
- 四视图角色卡属后者:写进
<Subject 1>,retention_analysis只列<Subject 1>/<Subject 2>这两行。 - ✗(把角色卡独立成条并当成视角)
<Picture 1> ([Shot 1] 环绕的起点与终点视角): fully_preserved - 环绕自该正面视角起、回到该正面视角止。
——独立成条=把它声明成构图锚;角色卡承载的是角色,镜头起点由 detailed_description 的文字交代。
- 详解见
references/reference-image-roles.md;镜头层纪律见references/camera-and-lora.md§一。
③ 参考标签的编号一经指定就全局不变;四个段落都可以用 `<Picture N>`,但不得在某一段里新起编号。
- 官方依据(
references/ref-en.txt):summary「uses the previously defined<Subject N>,<Picture N>,<Video N>,<Audio N>labels…Do not introduce new reference labels in this section」;detailed_description「Inserts<Subject N>,<Picture N>,<Video N>,<Audio N>at their first appearance and where their roles apply」。 - 即:
<Picture 1>在subject_definitions里定义成什么,后面所有段落里就还是那个东西,不换号、不重排。编号漂移(同一张图在不同段落变成<Picture 2>)才是真错误。 - 写法上仍建议:讲剧情与状态优先用
<Subject N>(它是"人/物/环境",语义更贴),讲帧本身(这里是首帧、那里是末帧、构图对齐这张)才用<Picture N>。这是可读性偏好,不是禁令。 - ✗ 反例(真正的错误):
subject_definitions里写<Picture 1>是首帧,detailed_description里却出现<Picture 2>指同一张图。 - ✓
<Subject 1> 立在床边的地板上/<Subject 1> 的面容与整套汉服在这一刻清晰可见;参考关系在subject_definitions(<Subject 1> 是 <Picture 1> 四视图角色卡中的少女…)与retention_analysis里说清。 - ⚠️ 一条实测备注,不是规则:把
<Picture N>写进正在描述运镜的句子里,个别批次会让模型把构图往那张图拽。如果出现构图被拽住,先试着把该处换成<Subject N>;这是排障手段,不要反过来升格成禁令。
阅读 references/ref-en.txt 了解标签规则、保留分析与完整示例。创意机制可从 references/creative-dna-library.md 提取。
当目标是「把定稿技能卡做成招式动画」时,另读 references/card-derived-animation.md(卡片锚点取中间高点帧、锚点写"经过"不写"构成"、不写定格与放缓、主体与法术同频、连续演化写一段)。
当一段里要打多个目标(多块目标物、多个方向、需要明确布局与可读性)时,另读 references/multi-target-and-hit.md(数量写死、方位写死、布局落到空间关系、露出主体忌遮挡)。
当目标是「把这批参考素材的运动迁到自建的角色 / 场景上」时(保留参考视频的动作、机位、硬切与节奏,外观是新建的),另读 references/motion-transfer.md。该文件按通道分两条互斥路线,动笔前先判接线:
- 路线 A|原生 `ref_videos`(不挂任务 LoRA / 挂 TARA)→ 零动作白描 + 运动几何七维归属 +
<Video N>定义升格 + 收口句 - 路线 B|MT LoRA + Guide Latents(
motion_transfer_v1.0_ref2va+AddGuide,ref_videos断开)→ 首行 `motion_transfer:` + 按「先/接着/然后/随后/最后」把动作写出来 +<Video N>只标attribute_transfer+ 音效/配乐两段写N/A+ 源片外观件完全不提
判错方向的后果:在 B 里写零白描 = 丢掉官方要求的动作顺序;在 A 里写动作顺序 = 文字压过视频,模型照文字演。另有续接(链式长视频)与链式验收三判据。注意它与下一类的区别:成片出来后源视频的画面内容不在里面。
当目标是「把源视频里的某个对象替换 / 修改成参考图的样子」时(人物身份、整个人物、服装配饰、手持物体、场景背景、画内文字 Logo、材质表面、光照影调,以及移除与新增),另读 references/editing-and-replacement.md(三归属维度——外观 / 运动几何 / 光学——、遮罩形态检测、七个不可省模块、目标类型→槽位速查表、可见行为四组、R1/R2/R3 尺寸规则、摘要固定首句与任务类型标记)。成片出来后源视频的画面内容仍然在里面。
整条「定稿卡 → 招式动画」管线(六步 + 崩坏症状速查)见 xianxia-cinematic-video-director 的 references/skill-card-animation-pipeline.md。
视频参考(<Video N>)三玩法 —— 2026-10-22 实测
挂了参考视频(`<Video N>`)时,先读 `references/video-reference-modes.md`。 三玩法的官方定义与四种保留标记语义以 references/ref-en.txt 为准;那份文件只补实测判据与写法模板,不重复官方定义。
| 你要做的事 | 前缀 | 关键纪律 | |
|---|---|---|---|
| 直接改源片(换人 / 换装 / 换风格 / 换渲染) | [video editing] | 保守定律:保留必须限定到几何与运动,外观明确写"重新绘制";风格类改动必须挂关键帧参考,否则失效 | |
| 从源片末帧往后接 | [video continuation] | 必须挂末帧关键帧锚,否则生成段开头多出约 1 秒前置片段;续写只改动作与内容,改机位无效 | |
| 只借机位 / 剪辑 / 节奏 | [reference generation] | <Video 1> 标 weak_reference | |
| 把源片动作迁移到新主体 | [reference generation] | <Video 1> 标 `attribute_transfer` 并声明"运动与机位唯一来源",逐镜写"逐帧沿用" | |
| 换人物(character swap) | [video editing] | 见该文件 §六:guide-latent 路线一致性最好;源片强特征(头发)会回流,发型必须几何可执行句 + 逐镜点名 |
⚠️「风格转换」一词两义:给源片换皮= video editing;拿源片风格造新片= reference generation。开写前先问清是哪种。
合规:上表提到的关键帧锚可以 <Picture N> 独立成条(属首帧 / 末帧 / 关键帧锚用途);后续段落的写法见硬规则 ③(编号全局不变,不新起编号)。
镜头 / 参考图 / 交付格式 —— 四条 2026-10-05 实测补充
做运镜类镜头(推拉摇移环绕航拍 POV 双人机位…)时,按这个顺序读:
| 文件 | 什么时候读 | 核心内容 | |
|---|---|---|---|
| `h3-camera-motion-lib`(独立 skill) | 要写镜头运动的句子时,第一个读它 | ⭐ H3 运镜提示词库:7 个运镜族 + 核心纪律 + LoRA 台账 + 现实边界,每条给可直接粘贴进 `detailed_description` 的中文镜头句与实测状态(✅/🟡/❌)。不依赖 camera DSL——DSL 降级为可选校验,两者冲突时以库的「实测」一栏为准 | |
references/camera-and-lora.md | 要决定挂不挂 LoRA,或查变量纪律速查 | 变量纪律(摇镜不写焦距 / 推拉必写焦距锁定 / 变焦用"变焦");LoRA 优先级:专用 > 不加 > Jojocodex(仅特定情况)+触发词台账;起手景别的现实预期(镜头句本体见上一行的库) | |
references/reference-image-roles.md | 有多张参考图时 | 构图锚 vs 内联定义(独立成条=构图锚,会被拉回它的构图);环境一律 weak_reference;环境写"描述式"不写"清单式"(清单会把画面推宽);<Picture N> 只进 subject_definitions;首帧锚定的取舍 | |
references/writing-order.md | 每条提示词动笔第一句之前 | 书写顺序铁律:画面里"先出现的东西"写在最前面;遮挡/揭示、跨越/甩镜/航拍、POV 三类起手写法 | |
references/output-template.md | 每次交付 | 交付格式模板(参考图映射 / 生成设置 / 推荐 LoRA / 节拍 / 六段提示词 / 提交前须知 / 待跑后核对) | |
references/negation-guard.md | 交付前自检 | 否定式两级闸门(L1 词表 + 白名单)、正向化替换表、落地方式与脚本接口 | |
references/audio-reference.md | 挂 `<Audio N>` 参考音频时 | ⭐ 角色形象先验 > 音色参考(`reference` 的根本机制)+「F0 对了 ≠ 音色被复刻」的判定陷阱;四种关系标记的实测基线(含 partially_copy 区间控制失效);Sx 编号须与接线顺序一致(三线同号);台词约束不可省;过肩镜头与正向单人约束;<d> 豁免白名单 | |
| `references/video-reference-modes.md` | 挂 `<Video N>` 参考视频时(editing / continuation / reference generation 三种) | ⭐ 三玩法判据与选型表;editing 保守定律(保留限定到几何与运动 + 外观"重新绘制");风格类改动必须挂关键帧参考否则失效(纯文字无效,杠杆:关键帧 > 风格图内联 > 风格 LoRA);动作迁移 `attribute_transfer` 写法模板("运动与机位唯一来源" + 逐镜"逐帧沿用");continuation 必挂末帧锚(否则开头多约 1s 前置片段)+机位重构无效;换人两路线(guide-latent v1.1 推荐 / 适配器 v1.5 需更强约束)+源片强特征回流的四条写法;`retention_analysis` 括号写法(括号只属该段、<Audio N> 不带、只放「范围」不放「角色」、括号内禁全角冒号、A/B 四套须完全一致) | |
| `references/cut-and-timing.md` | 源片有硬切 / 叠化,要定镜数与切点时 | 逐帧 124 帧定五件事(几镜 / 切点在第几帧 / 过渡方式 / 每镜机位 / 每镜景别写数字);`At MM:SS.mmm` 必写且写真实值不补偿(省掉 At 第二刀会整刀丢失);每个切点都要 cut on action(紧贴 At 之后第一句,按源片实际状态写、不绑"第一帧");转场语法(硬切五种动词 / 叠化与划像需明说 / 闪光切等无语法位 / 只改距离优先用镜头运动)——这部分与任务类型无关,任何 H3 提示词都适用;节拍稀疏优先(多个 cut on action 时自然稠密);失败模式速查 | |
references/motion-transfer.md | 要把参考视频的动作 / 机位 / 硬切迁到别的角色或场景上时 | ⭐ 先判通道再定写法(两条路线互斥):A 原生 `ref_videos` → 零动作白描(别把动作写成可表演的台词)+运动几何七维逐镜归属+<Video N> 定义升格+收口句+字数配额 2622→1701→1416 字(运动能量 0.73→1.52→1.65、r 0.14→0.44→0.50 单调,但砍场景外观会让赛博朋克退化成普通公园);B MT LoRA + Guide Latents → 首行 motion_transfer:+按先/接着/然后/随后/最后写动作链+<Video N> 只标 attribute_transfer+音效配乐 N/A+源片外观件完全不提+场景必须彻底重建(B1–B7);续接链式(1 帧重叠、<Picture 2> 首帧锚、禁「承接上一段」、曝光漂移会饱和且不可用提亮锚帧去修);验收=光流四判据+链式三判据(锚点 NCC≥0.9 / 占幅差≤2% / 大色块通道极差≤18);「峰值帧错位≠动作错位」需抽帧复核 | |
references/editing-and-replacement.md | 要替换 / 编辑源视频里的某个对象时(换脸换人换服装换物体换背景换文字换材质换光照、移除、新增) | 三归属维度(外观←参考素材/运动几何←源视频/光学←源视频环境);遮罩形态检测(半透明 R≈80 为默认路径);七个不可省模块(REBUILD / LIGHT / SYNC / PERFORMANCE / OCCLUSION / FIT / SEAM / NO_ADDED_EVENT);目标类型→槽位速查表;可见行为四组必须带同节奏约束;尺寸冲突 R1 保持占位(默认)/ R2 忠于参考 / R3 折中;摘要固定首句与任务类型标记 |
镜头句精简纪律 —— 没装运镜库时的兜底(2026-10-09 更新)
⭐ 写任何镜头运动的句子时,第一个查 `h3-camera-motion-lib`(H3 运镜提示词库,专家包内的独立 skill)。它按运镜族给出可直接粘贴进 `detailed_description` 的中文镜头句+实测状态(✅/🟡/❌)+推荐 LoRA+坑,不依赖 camera DSL——DSL 降级为可选校验,两者冲突时以库的「实测」一栏为准。本文只保留精简核心纪律(够你在没装那个库时不踩坑),完整版一律以库为准。
精简核心纪律(六条,2026-10-09 校准):
- 变量纪律:摇镜不写焦距;推拉必写「焦距全程锁定在同一档位」;变焦用"变焦"表达 + 机位恒定;横移写「镜头朝向全程锁定」;升降写「镜头姿态全程保持水平」;翻滚必写方向。
- 书写顺序:画面里先出现的东西写在最前面(遮挡 / 揭示先写前景遮挡物;跨越甩镜航拍先写门洞枝叶高空全景;POV 主体不入画、不写景别区间)。
- 时刻与配速:用官方语法
At MM:SS.mmm,配速=`At` 起点–结束点两个时刻;禁止「在 3 秒时间内…」这类自造时长短语;时刻会漂移约 ±1s,动作先后次序要用文字兜底。 - 整圈环绕:圈数与时长必须同时给——圈数靠「转满一整圈 + 末了回到正面」的收束句,配速靠起止时刻。只给圈数→转多圈或中途停;只给时长→不转或转不完。(写"快速"会让速度词压过收尾句,实测冲过正面转第二圈。)
- 环境写"描述式"不写"清单式":逐一点名"柱列 / 地砖 / 宫灯必须可见"会把画面推宽;改成一句"主体所处的环境是什么"即可。它是止损手段不是锁半身手段(实测主体放大 2.4–3×,仍 0/3 达腰部以上);真要锁取景 → 用 I2VA 真实首帧。
- `<Picture N>` 编号全局不变:编号一经在
subject_definitions指定,四段里就都是同一张图,不换号、不新起编号。summary与detailed_description都可以引用它(官方规范允许);讲剧情与状态优先用<Subject N>是写法偏好,不是禁令。
LoRA 一句话:专用 > 不挂 > Jojocodex(仅特定情况)。 ⚠️ Dutch Angle Slider 权重即倾角:1 ≈ 20°,常用 2.0(旧记"1.0≈1°、要 10–20"是错的)。
构图可执行性 —— 把形容词变成模型能执行的东西(2026-10-26 实跑沉淀)
共同根源:模型会把形容词当事实渲染。你对它说的每个修饰语,它都要想办法画出来,而它理解的"画法"往往是你没预料的那一种。下面五条是同一原理的五个实例。
① 开写前先声明运行模式
本批跑的是 Ref2VA(六段) 还是基础模式(三字段 `integrated_multimodal_description`)?写错整套作废。 批次文件开头写一行 模式:Ref2VA [keyframe completion],与工作流节点对齐后再落笔。
② 两套命名空间,起始编号不同
| 命名空间 | 起始 | 实例 | 出现在哪 | |
|---|---|---|---|---|
| 提示词标签 | 1 | <Picture 1> <Subject 1> <Audio 1> | 六段正文里 | |
| 接线端口 | 0 | ref_image_0 ref_audio_0 | 工作流 JSON 的 inputs 键 |
写提示词从 1 数,接端口从 0 数。混用会导致挂图错位且报错信息不指向真正原因。
③ 比喻动词会被按字面执行
写 hovering(悬停)→ 指针真的浮在盘面上方,尖端落在两格刻度之间。要表达"即将触碰",只能用物理证据:
- 贴平:
lies flush against the surface - 底面接触:
its underside in contact with it - 影子:
throws a shadow directly beneath itself, and that shadow touches X at its own tip
影子相接是"两者共面"的硬证据,比任何形容词都可靠。判据:想表达"挨着 / 贴着 / 即将碰到",就写"接触 + 影子落在正下方"。
④ 微距必须锁"画面里只有什么"
只写"极限微距"而不锁边界,模型会自己补背景——实测把一块表盘补成了带地平线和落日的白墙。
固定句式:The frame contains only X and Y.
⑤ 含人物的镜必须写景别锁
- 只写"略前倾" → 被放大成深鞠躬(首帧相似度 0.549)
- 只写"取到胸口" + 一堆微距式细节 → 被推成大特写,天空全丢(0.404)
- 补上景别锁后:0.9986 / 0.9950
固定句式:取景与首帧一致:他全身入画,自头顶到鞋底完整可见,头顶距画面上缘约一成,脚下与画面下缘之间留出一段空地,地平线横在中景。
推论:描述视线与姿态的词会直接决定体态。写"视线落在身前地面"会诱导前倾弯腰——想让他站着,就别提"看地面"。
⑥ 有读数的物体必须写角度关系
写"两根针以不同角度放射" → 模型给任意角度。实测四张钟面里三张读不出目标时刻(11:20 / 12:18 / 10:15)。
必须写:离竖直方向偏几度、谁在谁的左边、收成多窄的 V。
⑦ 跨镜连续性清单(交付前逐镜核对,任一项不符即穿帮)
| # | 项 | 本项目实例 | |
|---|---|---|---|
| 1 | 同一道具的结构件数 | 巨钟两根针,五个含钟镜头必须一致 | |
| 2 | 有无可读文字 | 盘面无数字,只有一圈放射刻度 | |
| 3 | 读数状态 | 所有钟面都停在午夜前一分(窄 V 落在盘顶) | |
| 4 | 全片唯一的例外 | 只有铯钟一场是冷调,其余全暖橙 |
音频时间线对齐(带对白音频的 Ref2VA)
当输入包含对白 / 人声音频(<Audio N>)时,先转写音频,再设定分镜时间戳——这是 Ref2VA 带音频时最常见的失败点:说话人错位(角色 A 在画面中说话,而音频已切到角色 B)。
- 音频优先(Audio-first):运行 Whisper(
faster-whisper,模型small)获取每条语料的起止时间戳与说话人 ID(可区分时用 S1/S2)。将同一说话人连续的语料合并为"话轮";话轮之间的间隙即自然的切分点。将每个[Shot N] At MM:SS.mmm锚定到这些话轮边界——不要凭空猜测。注意:Whisper 可能听错数字 / 人名(如"心之星"→"星之星");时间戳可靠,内容请用用户原始文本。 - 粗对齐,不要紧对齐:分镜切点应大致匹配音频中说话人切换的边界(±0.5–1s 即可),但不要逐帧精确绑定。在每句中间的停顿处切、或删掉所有时间戳让模型自由发挥,都会让节奏变差。
- 硬规则——禁止说话人错位:绝不让"角色 A 在画面中说话的分镜"与"音频中角色 B 实际在说话的片段"重叠。核对每个
[Shot N]的时间区间与在该区间内实际发声的说话人(S1/S2)一致。
挂 `<Audio N>` 参考音频时,另读 `references/audio-reference.md` —— 那里有四种关系标记的实测基线、Sx 编号与接线顺序必须三线同号(Subject N = S N = Audio N)、台词约束不可省(简化 <Audio N> 定义时最易踩)、以及正向单人约束与过肩镜头两种「锁定单一说话人」的写法。
输出规则 (Output Rules)
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingh3-video-prompt-cn/SKILL.md
Popularity
- Repository stars
- 54
- Repository forks
- 4
- 7-day trend score
- 0
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/swan7-py/minimax-h3-skills-local/h3-video-prompt-cn)