Install any skill in seconds. Free to start, no credit card required.
Get Started Free →拿到任意剧本(网文/自由格式/四幕混排),自动分析爽感、提修改意见、敲定后拆锚点(角色/场景/道具)与分镜,并用 libtv CLI 在画布上批量创建好生图/生视频节点并写好提示词。生成按钮留给人类。适用于竖屏短剧/漫剧从文本到可生成节点的全流程自动化。与具体剧情无关——填入任意剧本即可复用。
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-03 | ✗→✓ | ▲ Improved | 47% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 23% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 26% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 39% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 13% | 0% |
把一段剧本变成 LibTV 画布上建好的分镜节点:分析爽感 → 提修改意见 → 敲定 → 拆锚点 → 拆分镜 → 自动建节点。本文件是自包含的执行入口;配套知识库在 prompts/,详细流程在 AGENT_WORKFLOW.md。
> ⚠️ 本 skill 不含任何具体剧情。所有示例均为占位符(见 examples/template/),填入任意剧本即可复用。
libtv ... -r/--run。建完节点列清单交人类点生成。--left 连边 / {{Node <id>}} 占位符)。人脸场景不跳变。Lib Image,生视频 Seedance 2.0 VIP(音画同步)。无 VIP 时在 manifest 换可用模型。① 输入剧本 ──→ ② 分析引擎(提题材/冲突/弧线/角色/场景/道具 + 提修改意见)
↓ 等人敲定
③ 锚点清单(anchors) ──→ ④ 分镜表(storyboard) ──→ ⑤ 批量建节点(CLI)bashlibtv login web # 登录(首次) libtv account info # 确认登录 libtv project list # 找目标画布 uuid # 建锚点图节点: libtv node create -p <project> -t image --name "<A1-角色:{{主角名}}>" --prompt "<描述+后缀>" -s model="Lib Image" -s ratio="9:16" # 建分镜视频节点(连锚点确保一致性): libtv node create -p <project> -t video --name "<分镜01-...>" --prompt "<{{Node <id>}}...>" -s model="Seedance 2.0 VIP" -s ratio="9:16" -s duration=10 --left <anchorNodeId1> --left <anchorNodeId2>
> 批量建节点请直接调用 python3 scripts/create_nodes.py --project <uuid> --manifest <nodes_manifest.json>,不要手敲每个命令。
| 文件 | 用途 | |------|------| | prompts/analyzer.md | 分析引擎:从自由文本提取结构化信息的规则 A-E(题材/角色/场景/道具/弧线) | | prompts/anchor_template.md | 锚点清单模板 + 角色/场景/道具定妆描述写法 | | prompts/storyboard_template.md | 分镜表模板 + 6 元素镜头公式 | | prompts/node_prompts.md | 生图/生视频 prompt 组装规则 + 拍摄手法词库(景别/运镜/光影/情绪映射) | | examples/template/ | 占位符模板:剧本→分析→锚点→分镜→manifest 全齐,填空即用 |
json{ "project_name": "{{项目名}}", "visual_style_suffix": "9:16竖幅+电影级光影+写实风格+无字幕无水印", "image_model": "Lib Image", "video_model": "Seedance 2.0 VIP", "anchors": [ {"id":"A1","type":"character","name":"A1-角色锚点:{{主角名}}(主角)","prompt":"{{年龄}}{{性别}},{{服装细节}},{{面部三要素}},{{反差感}}。强侧光,15-30°侧拍,中近景,浅景深。禁止文字水印。","ratio":"9:16"}, {"id":"B1","type":"scene","name":"B1-场景锚点:{{主场景}}","prompt":"{{具体环境描述}},{{色调}},空旷无人物。","ratio":"9:16"}, {"id":"C1","type":"prop","name":"C1-道具锚点:{{核心道具}}","prompt":"{{微距特写}},{{材质/色泽}},顶部强光,背景纯黑。","ratio":"9:16"} ], "shots": [ {"id":"01","name":"分镜01-{{第一幕铺垫}}","prompt":"{{主场景}}{{Node B1}},{{主角名}}{{Node A1}}...","duration":10,"anchor_refs":["B1","A1"]} ] }
脚本会:先建所有 anchor 拿到真实 node id → 把 shot.prompt 里的 {{Node <anchorId>}} 替换为真实 id → 建 shot 节点并用 --left 连对应锚点 → 输出节点清单。
> 防护:若 shot.prompt 里引用了某锚点但 anchor_refs 漏写,脚本会自动补连,避免建节点被拒。
libtv CLI 本身没有读取/创建「skill」的命令。台词掷地有声:"..."),靠 Seedance 2.0 的 enableSound 合成,无独立配音节点。Other measured skills in the registry, with their headline benchmark lift.