剧本创作工坊 (Screenplay Studio)
概述
本 Skill 将「创意 → 完整剧本 → 分镜头脚本表」打通为一个可复用的生产流程,面向电影、电视剧、
微电影、漫剧、歌舞剧五类视听/舞台作品。它既产出文学性的全剧本(供导演/编剧/投资人审阅),也产出
工程性的分镜头表(供摄影、美术、剪辑、AI 生成直接使用);针对歌舞剧则产出载歌载舞的剧本与
「舞台场面表」(供作曲、编舞、舞美与排练落地),并针对不同作品类型自动切换叙事结构与节奏。
本 Skill 不依赖任何外部脚本或 API,纯靠结构化提示与领域规范驱动输出;既支持单部作品,也支持
多集连续剧集:指定集数后,先构建统一的「系列圣经(世界观 + 人物总表 + 主线脉络)」,再逐集
生成「情节摘要 + 剧本(含对白) + 分镜头表」,并通过连续性规则保证集与集之间自然衔接。详细的类型
结构、景别术语、系列生成方法与模板见 references/ 下的文档,按需读取。
触发条件
出现以下任意一种意图时加载本 Skill:
- 用户明确要求「写/生成/创作 剧本、分镜、分镜头脚本、shot list、storyboard」之类。
- 用户给定了作品类型(电影 / 电视剧 / 微电影 / 漫剧 / 歌舞剧 / 短剧)并希望产出可拍摄或可作舞台排练的剧本与分镜。
- 用户提供了题材、类型、时长、风格、目标受众中的部分或全部,要求「出个本子 / 出个分镜表 / 出个歌舞本」。
- 相关短语示例:「帮我写个 3 分钟微电影剧本」「给这部漫剧出分镜」「生成一集电视剧大纲+分镜」
「写一个悬疑电影剧本并附分镜头表」「写一部载歌载舞的歌舞剧,要有歌舞编排和舞台调度」。
若用户只想做其中一步(例如只要剧本不要分镜,或只改人物设定),仍加载本 Skill,但只产出对应部分。
输入参数
按以下顺序收集参数;缺失的参数用合理默认值补齐,并在输出开头列出「采用假设」,必要时向用户确认。
| 参数 | 含义 | 是否必填 | 默认值 / 说明 |
|---|---|---|---|
作品类型 |
电影 / 电视剧 / 微电影 / 漫剧 / 歌舞剧 | 必填 | 无默认值,需先确认 |
题材 |
故事主题,如职场、校园、悬疑、科幻、家庭 | 必填 | 无 |
类型(genre) |
戏剧类型,如喜剧、悲剧、悬疑、爱情、动作 | 必填 | 无 |
时长 |
总时长或单集时长,如 90min / 45min/集 / 3min / 1min | 必填 | 决定结构与分镜颗粒度;漫剧取值区间为单集 1–5 min |
风格 |
视觉/叙事基调,如写实、黑色幽默、赛博朋克、治愈 | 推荐 | 默认「写实」 |
目标受众 |
如 18-35 都市青年、亲子家庭、二次元 | 推荐 | 默认「通用成人观众」 |
集数 |
需要生成的连续集数(电视剧/漫剧天然系列化;微电影/电影一般为 1) | 条件必填 | 若用户要求「多集/系列/连续剧」则必填;单部作品默认 1。漫剧必须支持任意集数可设(常见 6–60 集连载),总时长 = 集数 × 单集时长 |
世界观/背景设定 |
可选:时代、地点、社会规则、特殊设定(如末日/星际/校园)。用户自定义题材与风格时也在此明确 | 推荐 | 单部可从题材推导;多集强烈建议显式给出以保证连贯 |
导演风格 |
可选:完全可自定义——既可点选预设(王家卫、诺兰、是枝裕和、韦斯·安德森、张艺谋、希区柯克、奉俊昊、大卫·芬奇,以及新增的斯皮尔伯格、塔尔科夫斯基、卡伦·乔哈尔、邦达尔丘克),也可直接输入任意导演名、流派或自定义风格描述(如「手持纪实感」「高饱和糖果色」),不受预设枚举限制 | 可选 | 与 风格 互补;指定后转译为具体镜头语言(见 auteur-style.md) |
参考影片 |
可选:参考某部影片的叙事结构/视觉手法,如《盗梦空间》《花样年华》《寄生虫》《重庆森林》 | 可选 | 借鉴其 craft 手法,不复制剧情与人物 |
附加约束 |
可选:禁忌、平台(抖音/快手/B站/院线)、是否需统一片头/片尾 | 可选 | 无 |
镜头语言 |
可选:指定贯穿全片的镜头手法,如 手持纪实、一镜到底、浅景深、长焦压缩、航拍升降、对称构图、框式构图、主观镜头、运动长镜 | 可选 | 默认按 风格 推断;指定后转译为分镜的景别/运镜/构图/剪辑节奏,并贯穿全片(详见 storyboard-guide.md 第五节) |
特效 / 视觉设计 |
可选:指定视觉特效,如 子弹时间、慢动作、时间冻结、分屏、粒子光效、全息投影、故障艺术、时空跳跃、遮罩转场 | 可选 | 指定后分镜表单列「特效」列,标注每个特效的触发时机/镜头处理/实现方式(详见 storyboard-guide.md 第六节) |
自定义题材与风格:用户可直接指定任何自定义题材(如「唐朝异能」「废土甜宠」)与风格(如
「新怪谈」「胶片复古」),Skill 不限于预设枚举,按用户提供的定义构建世界观与视觉基调。
澄清策略:若 作品类型 或 题材/类型 缺失,用 AskUserQuestion 一次性最多问 2 个关键问题
(类型 + 题材/时长),不要逐条追问。若用户要求多集但未给 集数,追问集数(及世界观要点)。
其余参数直接给默认值并显式标注。
执行流程
严格按顺序执行;参数齐备时可在单轮内直接产出。先判定 集数:
- 集数 == 1 → 走「单部模式」(步骤 1–6)。
- 集数 > 1 → 走「系列模式」(步骤 S1–S5),自动生成多集连贯剧集。
风格锚定(导演 / 影片参考)—— 单部与系列模式通用
若用户指定了 导演风格 或 参考影片,在结构/剧本/分镜之前先完成风格锚定:
- 读取
references/auteur-style.md,将导演或影片映射为可执行的 craft 参数:色彩与光影、
构图与景别偏好、运镜、剪辑节奏(长镜 vs 快切)、叙事结构(线性/非线性/多线/环形)、
声音与配乐、对白密度与留白、主题气质。 - 若指定对象不在目录中,依据其已知作品风格推断,并显式标注假设。
- 将锚定结果写入输出的「风格锚定说明」,并在剧本基调与分镜(景别/运镜/音效/节奏)中
贯穿一致地体现;漫剧需把导演/影片手法转译为竖屏 9:16 可用的构图与节奏。 - 原则:借鉴其手法与视听语言,不复制剧情、人物与受版权保护的桥段;若与用户给定的
类型/风格冲突,以用户显式要求为准并说明。
单部模式
- 确认类型与参数:解析用户输入,确定
作品类型,列出采用的参数与假设(含自定义题材/风格与世界观设定)。 - 选择结构与节奏蓝图:读取
references/work-types.md,依据作品类型套用对应的叙事结构
(如电影三幕式、电视剧多线+钩子、微电影单点爆发、漫剧竖屏强钩子),确定场景数量与节奏曲线。 - 产出完整剧本:按
references/output-templates.md的「全剧本模板」输出:
- 标题 + 一行 logline
- 基本信息表(作品类型/题材/类型/时长/风格/受众/世界观/导演风格/参考影片)
- 故事梗概(扩展版,含起承转合)
- 人物设定(3-8 人,含姓名/年龄/身份/性格/外貌/核心动机/人物弧光)
- 分场剧情:每场含 场次编号、INT./EXT. 场景、时间、剧情摘要、场景描述、对白(含括号提示)
- 叙事结构与基调遵循「风格锚定」结果(如非线性叙事、独白密度、留白节奏)。 - 产出分镜头脚本表:读取
references/storyboard-guide.md,将剧本逐场拆解为镜头。
每个镜头为一行,字段见下「输出格式·分镜表」。强制约束:单镜头时长 ≤ 5 秒。
景别/运镜/音效/剪辑节奏遵循「风格锚定」结果(如长焦慢推、手持微晃、抽帧、硬切快剪)。
漫剧额外增加「角色动作与表情」列(见步骤 5)。 - 类型特化:
- 漫剧:每个镜头补「角色动作与表情」描述,并标注竖屏 9:16、建议画面比例与转场方式,
便于直接喂给 AI 绘图/视频生成。
- 电视剧:在剧本中标注「冷开场 / 第一幕 / 广告切点 / 悬念钩子」。
- 微电影 / 漫剧:全片完整分镜;电影/电视剧:至少完成关键场次(标注 KEY)的完整分镜,
其余场次给出「分镜要点」摘要,避免篇幅失控(见 work-types.md 的颗粒度规则)。
- 歌舞剧(音乐剧):按references/musical-theater.md执行——
(a) 台词写为富有节奏感的短句/对仗/押韵,并标(快板)(慢板)(渐强)(齐说)(递进重复)等节奏提示,
情绪高点用半说半唱的「引桥」通向歌曲;
(b) 情绪表达夸张外放,用强度等级(克制)→(涌动)→(爆发)→(狂欢)标注;
(c) 在剧本中插入歌曲/舞蹈标记块(曲风·时长·演唱·戏剧功能 + 歌词/编舞提示),
每首歌/每段舞必须有戏剧功能(推进/揭示/转变/升华);
(d) 视觉与动作描写以舞台调度呈现(台位·走位·灯光·队形·托举·定点造型),
并以「舞台场面表」替代分镜表(见下方输出格式第四节)。 - 自检:对照
references/storyboard-guide.md的「分镜自检清单」核对——景别术语规范、
时长≤5s、运镜可执行、音效不缺失、漫剧动作表情完整。修正后输出。
系列模式(多集连续剧集)
读取 references/series-mode.md 获取系列圣经结构与集间连续性方法,按以下流程执行:
S1. 构建系列圣经(Series Bible):基于统一的 作品类型 / 题材 / 风格 / 世界观 一次性产出:
- 世界观与背景:时代、地点、社会规则、视觉基调(与用户自定义题材/风格及「风格锚定」对齐)。
- 人物总表(跨集统一):3–8 人,含姓名/身份/性格/外貌/动机,以及跨集状态追踪项
(关系、伤势、持有物、未解心结等),作为后续每集一致性的锚点。
- 主线与支线脉络:核心冲突、分集推进节奏、悬念与反转在各集的分配。
- 分集梗概:为每一集写「一句话 logline + 起承转合落点 + 集末钩子 + 与上下集的衔接点」,
明确每集在整体弧光中的位置(建置/推进/转折/高潮/收束)。
S2. 逐集生成(循环):对第 N 集(N = 1…集数):
- 先读取上集结尾状态(人物状态、未解悬念、时间线、道具/设定),作为本集起点。
- 产出 情节摘要:3–5 句,首句明确「承接上集钩子」,末句明确「埋下集钩子」。
- 产出完整剧本:人物严格沿用圣经总表,分场 + 对白;首场须回应上集结尾。
- 产出分镜头脚本表:≤5s/镜,漫剧带「角色动作与表情」;景别/运镜/节奏遵循「风格锚定」结果。
S3. 集间连续性校验:对照 references/series-mode.md 的「集间连续性清单」核对——
人物状态/关系是否延续、时间线是否连贯、未解悬念是否推进、道具/设定是否一致、世界观无矛盾。
发现冲突立即修正后再进入下一集。
S4. 类型特化:电视剧/漫剧在每集标注集末钩子与竖屏(9:16)转场;其余类型按单部模式步骤 5 处理。
S5. 自检:逐集过 storyboard-guide 清单,并整体过系列连续性门禁(见「质量门禁」)。
> 系列模式默认「先出圣经、再逐集展开」。若用户只给总设定却未指定集数,先追问集数,
> 再启动 S1;不要凭空假设集数。
交付与呈现(默认收尾动作)
完成「自检」后,必须按「输出格式 · 零·一、自包含 HTML 渲染输出」的合同产出单一 HTML 文档:
用 Write 存为 <作品名>_剧本分镜.html,再用 present_files 直接呈现。这是默认收尾动作,
取代「返回 Markdown 文本让用户自行保存」。若用户明确只要纯文本/Markdown,可例外,但仍建议附上 HTML 版。
输出格式
零、风格锚定说明(导演 / 影片参考)
当用户指定 导演风格 或 参考影片 时,在剧本前先输出本段,把参考对象转译为可执行参数,便于
摄制/AI 生成统一贯彻:
- 参考来源:导演名 或 影片名(及若不在目录中的推断假设)。
- Craft 参数表(按
references/auteur-style.md维度):色彩与光影 / 构图与景别 / 运镜 /
剪辑节奏 / 叙事结构 / 声音与配乐 / 对白与留白 / 主题气质。 - 贯穿说明:这些参数如何落到本作的剧本基调与分镜(景别/运镜/音效/节奏)中。
- 版权边界:声明「借鉴手法,不复制剧情/人物」,若与用户给定风格冲突以用户为准。
零·一、自包含 HTML 渲染输出(默认交付物与呈现方式)
核心变更:本技能不再以「Markdown 纯文本」作为默认交付物。每次生成,必须同时产出一份
单一、自包含、可直接渲染的 HTML 文档——内联全部 CSS/JS,不发起任何外部请求(无 http(s)
外链、无 <script src>、无 <link href> 外部样式),不加载任何本地文件(图片一律内联为
SVG 或 data: URI,或用纯 CSS 绘制)。用户通过 present_files 打开该文档即见完整排版与交互
视图,无需保存、无需复制粘贴、无需任何中间步骤。
1. 必需区块与默认数据(最小完整结构)
即使输入参数极少,HTML 也必须包含以下区块;缺失信息用括号占位或合理默认补齐,并在页眉列出
「采用假设」:
- 页眉:作品名(《……》)、一行 logline、作品类型 / 题材 / 类型 / 时长 / 风格 / 受众标签。
- 风格锚定说明(仅当用户指定导演风格/参考影片时显示;否则折叠隐藏)。
- 基本信息表:作品类型、题材、类型、时长、风格、目标受众、世界观、导演风格、参考影片。
- 故事梗概:起承转合扩写。
- 人物设定:3–8 人表格(姓名/年龄/身份/性格/外貌/核心动机/人物弧光)。
- 分场剧本:每场
场次 N|INT./EXT. 场景 - 日/夜+ 场景描述 + 对白(角色名:(提示)台词)。 - 分镜头脚本表:Markdown 表格渲染为可排序/可折叠的 HTML 表(列见下文「二、分镜头脚本表」)。
- 舞台场面表(仅歌舞剧显示;其余类型折叠隐藏)。
- 系列圣经 + 逐集区块(仅集数>1 时显示;单部折叠隐藏)。
2. 基础样式规范(内联,零依赖)
- 必须内联
<style>,使用 CSS 变量定义主题色(--bg/--fg/--muted/--accent/--card/--border)。 - 默认提供明/暗双主题,优先跟随
prefers-color-scheme,并提供右上角「主题切换」按钮手动覆盖。 - 响应式:移动端单列、桌面端侧栏目录 + 主内容;正文
line-height≥1.6、字号15–17px、对比度达标。 - 分镜表使用
border-collapse网格、表头吸顶(position:sticky)、长表可横向滚动容器包裹。 - 全部字体用系统字体栈(
system-ui, "PingFang SC", "Microsoft YaHei", sans-serif),不得@import网络字体。
3. 交互行为规范(内联 <script>,原生 JS,无框架)
- 标签页 / 分集导航:顶部 Tab 在「剧本 / 分镜 / 舞台 / 系列圣经」间切换;多集时每个 Tab 内再按
「第 N 集」子标签展开,默认展开第一集。 - 分镜表折叠:每张分镜表提供「展开全部 / 收起全部」与逐场折叠,默认收起非关键场(标
(KEY)的默认展开)。 - 目录跳转:左侧目录锚点点击平滑滚动到对应区块,滚动时高亮当前章节。
- 一键复制:每个区块右上角「复制」按钮,复制该区块纯文本(便于二次编辑)。
- 主题切换:右上角按钮在明/暗间切换,状态写
localStorage(可选,离线可用即可)。 - 搜索过滤(可选增强):分镜表提供关键字过滤输入框,实时隐藏不匹配的行。
4. 自包含约束(硬性)
- 文档内不得出现任何
http:///https://资源引用(字体、图片、脚本、样式一律禁止外链)。 - 如需插图(如封面/场景示意图),用内联
<svg>或data:image/...;base64表达;否则用 CSS 色块占位。 - 不得引用技能目录下的
render.js/epub.js等本地脚本——所有渲染逻辑内联写死在文档中。 - 文档本身可被
Write工具存盘后由present_files直接打开,不依赖任何运行环境。
5. 呈现方式(消除「自行保存」环节)
生成内容后,必须用 Write 工具将完整 HTML 存为 <作品名>_剧本分镜.html(路径可用会话工作区),
随即调用 present_files 直接呈现给用户;禁止仅返回 Markdown 文本、禁止提示用户「自行复制保存」。
(若结果已以 Markdown 形式产出,可改用 assets/build_report.py 包装为内嵌 HTML 报告后再 present_files,
但优先级低于直接产出自包含 HTML。)
6. 内嵌 HTML 骨架(合同模板,AI 据此填充)
下式为最小可渲染骨架,AI 须据此扩展并填入真实内容(保留全部交互与样式):
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>《作品名》· 剧本与分镜</title>
<style>
:root{--bg:#0f1115;--fg:#e8e8ea;--muted:#9aa0a6;--accent:#7c5cff;--card:#171a21;--border:#2a2f3a;--ok:#39d98a}
@media (prefers-color-scheme: light){:root{--bg:#ffffff;--fg:#1a1a1a;--muted:#5b6066;--accent:#5b3df5;--card:#f6f7f9;--border:#e3e6ea;--ok:#1a9c5b}}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,"PingFang SC","Microsoft YaHei",sans-serif;background:var(--bg);color:var(--fg);line-height:1.65}
header{padding:20px 24px;border-bottom:1px solid var(--border)}
.logline{color:var(--muted);font-style:italic}
.tags span{display:inline-block;background:var(--card);border:1px solid var(--border);border-radius:999px;padding:2px 10px;margin:4px 4px 0 0;font-size:12px}
nav{position:sticky;top:0;background:var(--card);border-bottom:1px solid var(--border);display:flex;gap:8px;padding:10px 24px;flex-wrap:wrap;z-index:5}
nav button{background:transparent;color:var(--fg);border:1px solid var(--border);border-radius:8px;padding:6px 14px;cursor:pointer}
nav button.active{background:var(--accent);color:#fff;border-color:var(--accent)}
.layout{display:flex;gap:24px;padding:24px}
.toc{position:sticky;top:60px;align-self:flex-start;width:200px;font-size:13px;color:var(--muted)}
.toc a{display:block;padding:4px 0;color:inherit;text-decoration:none}
.toc a:hover{color:var(--accent)}
main{flex:1;min-width:0}
.panel{display:none}.panel.active{display:block}
.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px 18px;margin:14px 0}
table{border-collapse:collapse;width:100%;font-size:13px}
th,td{border:1px solid var(--border);padding:6px 8px;text-align:left;vertical-align:top}
th{position:sticky;top:0;background:var(--card)}
.table-wrap{overflow:auto;max-height:70vh}
.scene{margin:10px 0;border-left:3px solid var(--accent);padding-left:12px}
.copy{float:right;font-size:12px;color:var(--accent);cursor:pointer;border:1px solid var(--border);border-radius:6px;padding:2px 8px;background:transparent}
@media (max-width:760px){.layout{flex-direction:column}.toc{display:none}}
</style>
</head>
<body>
<header>
<h1>《作品名》</h1>
<div class="logline">一句话 logline(默认:未提供时自动生成的类型化简介)</div>
<div class="tags"><span>作品类型</span><span>题材</span><span>类型</span><span>时长</span><span>风格</span><span>受众</span></div>
</header>
<nav>
<button class="active" data-tab="script">剧本</button>
<button data-tab="story">分镜</button>
<button data-tab="stage" hidden>舞台</button>
<button data-tab="bible" hidden>系列圣经</button>
<button id="themeBtn" style="margin-left:auto">切换主题</button>
</nav>
<div class="layout">
<aside class="toc"><a href="#info">基本信息</a><a href="#synopsis">故事梗概</a><a href="#cast">人物设定</a><a href="#scenes">分场剧本</a><a href="#boards">分镜头表</a></aside>
<main>
<section class="panel active" id="script">
<div class="card" id="info"><span class="copy">复制</span><h2>基本信息</h2><table>…默认表格…</table></div>
<div class="card" id="synopsis">…梗概…</div>
<div class="card" id="cast">…人物表…</div>
<div class="card" id="scenes">…分场剧本…</div>
</section>
<section class="panel" id="story">
<div class="card" id="boards"><span class="copy">复制</span><h2>分镜头脚本表</h2><div class="table-wrap"><table>…镜号/时长/景别/运镜/画面/对白/音效/特效…</table></div></div>
</section>
<section class="panel" id="stage" hidden>…舞台场面表(仅歌舞剧)…</section>
<section class="panel" id="bible" hidden>…系列圣经 + 逐集(仅集数>1)…</section>
</main>
</div>
<script>
document.querySelectorAll('nav button[data-tab]').forEach(b=>b.onclick=()=>{
document.querySelectorAll('nav button[data-tab]').forEach(x=>x.classList.remove('active'));
document.querySelectorAll('.panel').forEach(p=>p.classList.remove('active'));
b.classList.add('active');document.getElementById(b.dataset.tab).classList.add('active');
});
document.getElementById('themeBtn').onclick=()=>{const l=document.documentElement;l.classList.toggle('light');};
document.querySelectorAll('.copy').forEach(c=>c.onclick=()=>{const t=c.parentElement.innerText.replace('复制','');navigator.clipboard.writeText(t);});
</script>
</body>
</html>
> 说明:上式仅为合同骨架;AI 须把真实剧本/分镜/人物/舞台数据填入对应区块,并按上文「交互规范」
> 补全分集子标签、分镜折叠、目录高亮、搜索过滤等。所有样式与脚本必须内联,不得外链。
一、完整剧本(全剧本)
使用 references/output-templates.md 中的「全剧本模板」。要点:
- 标题用
#,logline 用「一句话:」引导。 - 人物设定用表格或分级列表,含可视觉化的外貌与动机。
- 分场用标准剧本格式:
场次 1|INT. 咖啡馆 - 日,下接场景描述(现在时、主动语态),再接对白。 - 对白格式:
角色名:(括号提示)台词。 - 场景描述只写可见/可听内容,不写心理活动(除非旁白体)。
二、分镜头脚本表(Storyboard)
使用 Markdown 表格,列定义如下(漫剧在末尾追加「角色动作与表情」列;若指定了 特效,在「音效」后追加可选的「特效」列):
| 镜号 | 时长(s) | 景别 | 运镜 | 画面内容 | 对白/旁白 | 音效 | (可选)特效 | (漫剧)角色动作与表情 |
|---|---|---|---|---|---|---|---|---|
字段规范:
- 镜号:从 1 连续编号,跨场可加前缀(如
S3-12表示第 3 场第 12 镜)。 - 时长(s):整数或一位小数,必须 ≤ 5;若某镜头内容确实需要更长,拆成多个 ≤5s 的子镜。
- 景别:仅从规范术语中取用(大远景/远景/全景/中景/中近景/近景/特写/大特写),见 storyboard-guide.md。
- 运镜:固定/推/拉/摇/移/跟/升降/手持/旋转/航拍,可组合(如「手持+跟」)。
- 画面内容:描述构图、主体位置、关键动作、光线与色彩基调,供摄影与美术执行。
- 对白/旁白:本镜实际出现的台词或 VO;无声填「—」。
- 音效:环境声/动效/Foley/音乐起止/静默,明确标注「(无声)」或「(音乐渐入)」等。
- (可选)特效:仅在指定
特效 / 视觉设计时启用。逐镜标注特效类型(如 子弹时间/慢动作/分屏/粒子光效/全息投影/故障艺术)、触发时机、镜头处理(如 360°环绕/降格拍摄/遮罩转场)与实现方式(实拍/CG/后期)。无特效填「—」。 - (漫剧)角色动作与表情:逐镜写明人物肢体动作、神情、视线方向与微表情,作为 AI 生图/生视频的强提示。
三、系列 / 多集输出结构
当 集数 > 1 时,在单部输出之前先输出系列圣经,再按集输出。完整结构如下(详见
references/series-mode.md 与 references/output-templates.md 的「系列模板」):
- 系列圣经(一次)
- 世界观与背景设定
- 人物总表(含跨集状态追踪项)
- 主线/支线脉络
- 分集梗概(每集 logline + 衔接点) - 逐集内容(每集一块),每块含:
- 第 N 集 · 情节摘要(承接上集钩子 → 本集发展 → 埋下集钩子)
- 第 N 集 · 完整剧本(人物沿用总表,分场 + 对白)
- 第 N 集 · 分镜头脚本表(≤5s/镜;漫剧带动作表情) - 全系列衔接说明(可选):用一两段概述悬念如何在集间推进、人物弧光如何收束。
该结构保证「统一设定 → 多集连贯 → 逐集可拍」,最终返回一份结构化的完整剧集内容。
四、歌舞剧(音乐剧)的歌舞与舞台呈现
当 作品类型 = 歌舞剧 时,除「完整剧本」外,按 references/musical-theater.md 在剧本中嵌入
歌曲/舞蹈标记块,并以「舞台场面表」替代分镜表(歌舞剧不写镜头)。要点:
- 节奏台词:用短句、对仗、重复、尾字押韵制造节拍;标
(快板)(慢板)(渐强)(齐说)(递进重复);
情绪高点用半说半唱「引桥」接歌曲。 - 夸张情绪:表演幅度外放,标
(克制)→(涌动)→(爆发)→(狂欢)。 - 歌曲/舞蹈标记块(剧本内插):
【歌曲】曲名|曲风|时长|演唱|戏剧功能+ 歌词提示(主题句/副歌 hook/桥段)+ 编排提示。【舞蹈】段名|舞种|时长|人数|情绪+ 走位与编舞(环形/放射/对位/托举)+ 与音乐灯光配合。- 舞台场面表(替代分镜):列 场面号 / 时长 / 区域·台位 / 调度与走位 / 歌曲·舞蹈 / 灯光 / 情绪·动作;
仍以乐句·舞句为单位保持 ≤5s 节拍感,关键场面标(KEY 完整编排)。
四类作品的结构与节奏适配
详细蓝图见 references/work-types.md,执行时务必读取并按对应类型调整:
- 电影:三幕式(建置 25% / 对抗 50% / 结局 25%),重人物弧光与视觉隐喻;分镜以关键场次为主。
- 电视剧:单元+连续双线,含冷开场、多幕广告切点、集末悬念钩子;分镜聚焦高光场。
- 微电影:单概念、强钩子+反转,3-5 个节拍,全片短,必须全片完整分镜。
- 漫剧:单集 1–5 分钟(常见 2–3 分钟,必须换算成秒后再拆镜);竖屏 9:16,前 3 秒强钩子,
节奏极快(每分钟 12–30 镜,因单镜 ≤5s 故 1 分钟至少 12 镜),强依赖角色动作表情,
分镜即 AI 生成提示词;天然系列化,结尾留钩。 - 歌舞剧:以「歌—舞—戏」三角驱动,对话推进、歌曲外化情感、舞蹈外化群体情绪与时空转换;
曲式按 开场曲→叙事歌→冲突唱段→抒情 ballad→调味曲→终曲 布局;台词节奏化、情绪夸张外放、
载歌载舞,并以舞台场面表(台位/灯光/走位/队形)替代分镜;天然适合舞台排练与 AI 歌舞视频。
资源
references/work-types.md:四类作品的叙事结构、场景数量、节奏曲线与分镜颗粒度规则。references/storyboard-guide.md:景别/运镜/音效术语表、≤5s 拆解规则、镜头语言与特效设计口径、分镜自检清单。references/series-mode.md:系列圣经结构、集间连续性方法、跨集状态追踪与衔接清单。references/auteur-style.md:导演/影片 → craft 参数映射目录与风格转译方法。references/musical-theater.md:歌舞剧(音乐剧)的叙事逻辑、节奏台词、夸张情绪、歌舞编排提示与舞台场面口径。references/output-templates.md:全剧本、分镜头表与「系列/多集」的可复制 Markdown 模板。references/example-comic-drama.md:一部 1 分钟漫剧的完整数出样例(剧本+分镜),作为格式锚点。assets/example-消失的邻居-竖屏漫剧.html:漫剧(竖屏 9:16)单集完整产出样例——单集 3 分钟(规范区间 1–5 min),8 场 57 镜,单镜 2–4 秒(≤5s),总时长 180 秒;镜数落在规范区间180÷5=36 ~ 180÷1.5=120内。含风格锚定、基本信息、3 人设定、分场剧本、全分镜头表(含漫剧必填的「角色动作与表情」与「转场」两列)、集末钩子,以及同源连续小说版(不设章节,按场次流转)与「场↔文 对照」视图;支持导出 PDF/Markdown/HTML/复制Markdown,可直接present_files渲染。生成器assets/build_manhua_drama.py(改顶部MINUTES即可切换 1–5 分钟,脚本内自校验镜数区间)。assets/example-消失的邻居-竖屏漫剧-8集.html:漫剧「多集系列」样例(集数可设)——8 集 × 2 分钟,全季 958 秒 = 16 分钟,322 镜,每集 39–42 镜且每集均落在120÷5=24 ~ 120÷1.5=80区间内,单镜最大 4 秒、超 5s 为 0。含 系列圣经(世界观/核心规则/人物生态/分集大纲/连续性规则/视觉听觉清单)、每集集末钩子链、5 个视图(剧本/分镜/小说/集↔文对照/系列圣经)、同源连续小说版(不设章节,段尾标「第X集·场Y」)、导出全套。生成器assets/build_manhua_series.py:集数与每集分钟数均可设——python build_manhua_series.py [集数] [每集分钟数](如12 3= 12 集 × 3 分钟),集数超出内置大纲时自动按「续作」扩展,已实测 3集×1min / 8集×2min / 12集×3min / 1集×5min 全部达标。assets/example-烽火青纱帐-抗战电视剧-45min.html:系列模式(多集电视剧)时长合规完整产出样例——24 集,每集 45 分钟(30–60 分钟区间内),共 18554 个分镜且每镜 ≤5 秒(每集总分镜时长精确落在 44–45 分钟),含完整分场剧本(对白)+ 全分镜头脚本表(景别/运镜/画面/对白/音效/特效)+ 系列圣经(世界观/24 集四幕大纲/连续性规则/主题母题)。由assets/build_fenghuo_45min.py数据驱动生成(集号/场景大纲/时长权重可在脚本内改),分镜以 JS 数据懒渲染(折叠按需展开)、内置导出(打印PDF/导出Markdown/导出HTML),是「系列模式 + 零·一合同」端到端格式锚点,可直接present_files渲染。同页还含「小说版」与「剧集↔小说 对照」两个视图:24 章小说与 24 集共用同一套人物/世界观/主线,第X集 ↔ 第X章 一一对应,文学化叙事(心理+环境氛围),无剧本格式——可作为「剧集→小说同步改编」的样例。assets/example-烽火青纱帐-抗战电视剧.html:早期手写剧本版(仅作剧本行文参考,禁止作为分镜时长锚点)——价值在于 24 集共 122 场完整分场剧本(含场景描述与对白,逐场手写),可作为长篇剧集「一场戏写多厚、对白如何推进」的行文篇幅锚点。但它的分镜不合规:全剧仅 161 个分镜,折合每集约 33 秒,远低于 30–60 分钟要求(这是本技能历史上的一次真实事故——只校验了「单镜 ≤5 秒」却漏了「总时长下限」)。引用时只可借鉴其剧本文字与场次编排;分镜数量与时长必须参照上一条 45min 版,并同时通过「单镜 ≤5 秒」+「总镜数落在时长÷5 ~ 时长÷1.5」双重校验。assets/example-回声-悬疑电影.html:单部模式(电影)完整产出样例——悬疑/心理惊悚,片长 110 分钟,共 16 场 1892 个分镜,全片总时长 6599 秒(=110.0 分钟)且每镜 ≤5 秒;含风格锚定说明(视觉基调/声音设计/叙事结构/镜头语言/表演与台词)、基本信息、7 人人物设定、分场剧本、全分镜头表(景别/运镜/画面/台词/音效/特效),同样支持折叠懒渲染与导出(PDF/Markdown/HTML/复制Markdown),可直接present_files渲染。生成器见assets/build_echo_film.py。
同页还含「小说版」与「场↔文 对照」两个视图:与影片同源的连续小说(约 6700 字,共用同一套人物/世界观/主线,情节走向与分场完全一致),不设章节编号,按影片场次自然流转(* * *表示场景转换),段尾角标标注对应场次;对照视图按「场X ↔ 该场小说段落」左右分栏,便于回查。
小说化的三条硬规则(写新样例时必须遵守):① 台词与叙述按场次绑定(SCENE_PROSE/SCENE_DIALOG),严禁从全局素材池随机抽取——否则会出现第 1 场冒出第 12 场台词这类剧情错置与提前剧透;② POV 按场次锁定(默认主角,仅闪回场切换),不要用「beat 里出现了谁的名字」来判断,否则旁白视角会乱跳;③ 每场叙述须先经strip_script()去掉 KEY/括号动作/镜头术语,保证正文无剧本格式。assets/studio-ui.html:零依赖离线图形界面(参数表单 + 结果渲染查看器 + 10 套主题 + 导出 PDF/Word/EPUB/Markdown/本地报告),用于可视化操作。已与技能规范同步:63 预设/27 组(漫剧预设统一为 1–5 分钟/集)、类型联动提示、「交付格式」与「同步生成小说版」控件,生成请求自带分镜硬约束(单镜 ≤5s + 总镜数区间)与漫剧专项条款。assets/screenplay-studio-使用手册.html+assets/screenplay-studio-使用手册.md:面向用户的完整使用手册(13 章,含参数表、预设/折叠/差异预览/导出/主题/五类作品/镜头语言与特效速查/系列模式/FAQ),HTML 版可直接双击打开,Markdown 版便于归档与版本控制。assets/render.js:渲染内核(单一数据源),被 studio-ui.html 与 build_report.py 共用。assets/epub.js:EPUB 构建内核(纯函数,含自动封面图 SVG 与书籍元数据),被 studio-ui.html 的「导出 EPUB」调用,亦可在 Node 下测试。assets/report_template.html+assets/build_report.py:把生成的 Markdown 剧本打包成「内容已内嵌」的独立 HTML 报告。
UI 操作界面(可选)
当用户要求「用界面 / 填表 / 可视化」,或参数较多、结果较长时,优先打开本界面;助手也可直接
用 assets/studio-ui.html 预览。界面纯前端、离线可用,全部中文(已本地化)。
① 创作参数表单(左)
- 作品类型、题材、类型、时长、风格(含可点选风格标签)、目标受众、集数、世界观、附加约束,
以及交付格式(自包含 HTML / HTML+Markdown / 仅 Markdown)与同步生成小说版(不生成 / 按集分章 / 连续小说)。
- 导演风格完全可自定义:下方预设标签(王家卫/诺兰/…)一键填入,也可在输入框直接键入任意
导演名、流派或自定义风格描述(如「手持纪实感」「高饱和糖果色」),不受预设限制。
- 63 个一键预设(按常用题材 / 作品类型分组为 27 组):漫剧(都市悬疑/校园治愈/末日废土/赛博朋克/美食治愈,均为 1–5 分钟/集)、
电影(诺兰式科幻/悬疑推理/青春校园)、电视剧(职场群像/古装权谋/都市情感)、微电影(希区柯克/喜剧温情)、
歌舞剧(百老汇式/国风史诗)、宝莱坞(爱情歌舞电影/青春漫剧)、
战争(战争史诗电影/抗战连续剧集/战壕人性微电影)、苏联(谍战剧集/卫国战争电影/诗意文艺片)、
武侠(武侠江湖电影/武侠群像剧集/武侠侠义微电影)、仙侠(仙侠修真电影/仙侠虐恋剧集)、
异界(异界穿越电影/异界系统漫剧)、魔幻(魔幻史诗电影/魔幻成长微电影)、
科幻(硬核科幻冒险电影/近未来科幻悬疑剧集)、喜剧(都市轻喜剧电影/社区情景喜剧剧集)、
悬疑惊悚(国产悬疑正剧剧集/心理惊悚微电影)、历史正剧(古代历史正剧剧集/历史传记电影)、
恐怖(民俗恐怖微电影/密闭空间恐怖电影)、动画(国漫动画电影/末世热血动画番剧)、
甜宠(都市甜宠漫剧/校园甜宠电影)、
警匪犯罪(警匪动作电影/刑侦悬疑剧集/黑帮人性微电影)、医疗(急诊医疗剧集/医者传记电影)、
体育竞技(热血竞技电影/电竞青春剧集)、家庭伦理(代际家庭剧集/亲子温情微电影)、
灾难(灾难题材电影/末日生存剧集)、西部(西部牛仔电影/现代西部剧集)、
纪录片(自然纪录电影/人文纪实现象剧集)、美食(美食治愈电影/深夜食堂剧集)。
其中警匪犯罪类、医疗类、体育竞技类、家庭伦理类、灾难类、西部类、纪录片类、美食类为新增的按题材划分的独立方向;
并配套新增了对应的风格 chip(如「手持纪实」「温情写实」)与导演 chip(如林超贤/曹保平/陈可辛/尔冬升)。
- 镜头语言 & 特效:表单新增「镜头语言」与「特效 / 视觉设计」两组多选标签(如 手持纪实/一镜到底/浅景深、子弹时间/慢动作/分屏/粒子光效/全息投影),
点选或自由补充;套用预设时会自动带入示例镜头语言与特效,并写入生成请求,要求分镜贯穿指定的镜头手法、在分镜表单列「特效」列。
- 人性化交互(UI 优化):
- 预设搜索框:在 63 个预设里按题材/类型/关键词实时过滤,找不到时有友好空状态提示。
- 🎲 随机灵感:一键随机套用一个预设并直接生成请求,适合「随便来一个」。
- 套用即生成:点预设后右侧自动生成创作请求并跳转到该标签页,少一步操作;当前选中的预设会高亮,用户一旦手动改字段即自动取消高亮。
- 字段内联提示:题材/类型/集数等易混字段下方加了灰色小字说明(如「1 = 单部;>1 = 系列连续剧」)。
- 温柔校验:若「题材」留空,生成时仅高亮输入框并提示「先填一下『题材』吧~」,不阻断其它智能补全。
- 预设分组折叠:27 个题材分组均为可点击折叠的折叠块(点击分组标题展开/收起),并额外提供「展开全部 / 收起全部」按钮;折叠状态自动记忆到 localStorage,下次打开沿用。
- 类型联动提示:切换「作品类型」时,时长与集数字段下方的灰色提示会同步变化——选漫剧显示
「单集 1–5 分钟,如 2分钟/集;竖屏 9:16、前 3 秒强钩子、12–30 镜/分钟」与「集数可任意设定,常见 6–60 集」;
选电视剧提示「先出系列圣经再逐集」。全部漫剧预设的时长已统一到 1–5 分钟区间(原 45–90 秒已修正)。
- 「交付与小说版」表单组(与技能最新规范对齐):
- 交付格式:自包含 HTML(默认) / 自包含 HTML + Markdown / 仅 Markdown。默认项会在请求里写明
「零外链、CSS/JS 全内联、写盘后 present_files 直接呈现、无需保存或粘贴」,并列出页面必需区块。
- 同步生成小说版:不生成 / 按集分章(第X集 ↔ 第X章) / 连续小说(不设章节,按场次流转);
会随集数自动切换默认值(集数 > 1 → 按集分章;= 1 → 连续小说),用户手动选过之后不再自动覆盖。
请求里会带上「共用同一套人物/世界观/主线、情节一致、文学化叙事、禁止剧本格式、不新增冲突情节」等约束。
- 分镜硬约束(固定附加):每条请求都会写入「单镜 ≤5 秒」+「总镜数落在 时长(秒)÷5 ~ 时长(秒)÷1.5」+
「末尾列出 单镜最长时长 / 总镜数 / 总时长 三项校验」,防止再次出现「161 镜充 24 集」的时长缺口。
- 漫剧专项(选漫剧时自动附加):竖屏 9:16、单集 1–5 分钟、前 3 秒强钩子、12–30 镜/分钟、
「角色动作与表情」与「转场」两列必填、集末钩子(多集时要求跨集钩子链)。
- 生成前差异预览:点击「生成」或套用预设时,若已有上一份结果,会先展示行级 diff(绿色=新增、红色删除线=删除、灰色=未变),并标注「新增 X 行 · 删除 Y 行」;用户确认后点「应用此版本」才写入,否则「取消」保留旧结果。首次生成直接写入、不弹预览。
- 「生成创作请求」→ 拼出结构化指令,一键复制到剪贴板,发给助手即触发本技能生成。
①-附:外观主题(字体 / 配色)
- 右上角「外观主题」下拉,一键套用 10 套字体与配色主题:暗夜霓虹(默认)、羊皮纸卷、极简白、
赛博青、落日橙、墨黑期刊、莫兰迪低饱和、报纸复古黑体、森绿静谧、薰衣草柔紫。
主题切换会同步改变界面基调与结果查看器的字体/配色,并记忆到本地(localStorage),下次打开
自动沿用;导出的 PDF / Word / 本地报告 / EPUB 封面也会携带当前主题强调色。
② 结果渲染查看器(右)—— 无需手动粘贴
- 载入结果文件:拖拽或点击选择助手生成的 .md / .txt / .html 文件,直接渲染(替代复制粘贴)。
- 也可把文本粘贴进文本框点「渲染」,得到分集标签页 + 本集目录的可读视图,分镜表格、标题、
对白全部美化排版,长系列也能轻松审阅。
- 导出按钮:
- 导出 PDF:调用浏览器打印,已配置打印样式(仅输出正文、浅色省墨,配色随主题)。
- 导出 Word:生成 .doc(Word 兼容 HTML),含表格与标题层级,可直接编辑,配色随主题,并写入作者/标题元数据。
- 导出 EPUB:生成标准 .epub 电子书(按集/章节拆分,含目录导航),并自动生成封面图(SVG,套用主题强调色)
与完整书籍元数据(标题、作者/编剧、出版方、日期、主题、简介、版权声明),可直接导入阅读器/电子书 App。
- 导出 Markdown:导出生成结果的 .md 源文件,便于二次编辑或归档。
- 保存为本地报告:导出一份内容已内嵌的独立 .html(含目录、表格、分镜排版,套用当前主题色),双击即开,
无需再次粘贴。
- 书籍信息(可选):渲染结果后,可在导出栏上方填写「书名 / 作品名」「作者 / 编剧」与「丛书 / 系列名」。
- 导出文件名自动带书名与作者:所有导出(PDF / Word / EPUB / Markdown / 本地报告)的文件名会自动组合为
《书名》_作者.扩展名(书名优先取「书名 / 作品名」输入框,留空则取正文首个 # 标题;作者取「作者 / 编剧」输入框,留空则不带作者段);PDF 打印时的默认文档名也会同步更新。
- 这些字段同时会写入 EPUB 的 <dc:title> <dc:creator> <dc:publisher> <dc:subject> 与 Word 元数据;留空则自动从
正文推断作者(如「编剧:xxx」)并使用默认值。
③ 助手直接产出内嵌报告(无粘贴全流程)
当助手生成剧本后,可直接调用 assets/build_report.py,把 Markdown 打包成独立 HTML 报告并
present_files 呈现,用户打开即见完整内容(分集目录 + 排版),彻底免去「复制 → 粘贴」环节。
命令示例:
python assets/build_report.py <生成结果.md> <输出报告.html> [标题]
质量门禁(输出前自检)
单部门禁
- [ ] 已确认作品类型,参数与假设已显式列出(含自定义题材/风格与世界观)。
- [ ] 全剧本含标题/logline/梗概/人物/分场对白全部模块。
- [ ] 分镜表每镜时长 ≤ 5s,超长镜头已拆分。
- [ ] 景别、运镜、音效术语均来自规范表,无自造词。
- [ ] 漫剧已补「角色动作与表情」且为竖屏 9:16 语境。
- [ ] 若指定
镜头语言:分镜的景别/运镜/构图/剪辑节奏已贯彻其要求(如 一镜到底/手持纪实/浅景深/航拍升降 等)。 - [ ] 若指定
特效:分镜表已启用「特效」列,逐镜标注特效类型/触发时机/镜头处理/实现方式,无特效填「—」。 - [ ] 歌舞剧已体现载歌载舞:节奏化台词(带节奏提示)、夸张情绪(强度等级)、歌曲/舞蹈标记块(含戏剧功能与编排提示)、舞台场面表(台位/灯光/走位/队形)。
- [ ] 四类作品的结构特征(如电视剧广告切点、微电影反转、漫剧强钩子、歌舞剧歌—舞—戏三角)已体现。
- [ ] 若指定导演风格/参考影片:已输出「风格锚定说明」,craft 参数已转译并贯穿剧本与分镜。
- [ ] 风格借鉴限于手法与视听语言,未复制剧情/人物,版权边界已声明。
- [ ] 总时长达标(两条同时查,缺一不可):① 单镜 ≤5s;② 每集/全片总镜数落在
时长(秒) ÷ 5 ≤ 总镜数 ≤ 时长(秒) ÷ 1.5区间内(漫剧按 1–5 min 单集换算:1min 12–40 镜、3min 36–120 镜、5min 60–200 镜)。
⚠ 只查①不查②会漏掉「每镜合规但总时长严重不足」的数量缺口(历史事故:24 集仅 161 镜,每集不到 1 分钟)。 - [ ] 内容可直接用于拍摄或 AI 制作,无占位符、无「此处略」。
- [ ] 默认交付物为单一自包含 HTML 文档:已用
Write存盘并经present_files直接呈现,用户打开即渲染;未以纯 Markdown 文本交付,也未要求用户自行保存。 - [ ] HTML 完全自包含:无任何
http(s)外链(字体/图片/脚本/样式),无<script src>/<link href>外部资源,插图均为内联 SVG 或data:URI,未引用技能目录下的render.js/epub.js等本地脚本。 - [ ] HTML 已含默认数据(即使输入极少,也含页眉/logline/基本信息表/梗概/人物/分场/分镜等全部必需区块,缺失项以占位或合理默认补齐并标注「采用假设」)。
- [ ] HTML 已含基础样式(明/暗双主题、响应式、可读排版、表头吸顶、分镜表横向滚动)与交互行为(Tab 切换剧本/分镜/舞台/圣经、分镜折叠、目录跳转、一键复制、主题切换)。
系列门禁(集数 > 1 时追加)
- [ ] 已先输出「系列圣经」:世界观、人物总表(含跨集状态追踪项)、主线脉络、分集梗概。
- [ ] 每集均含「情节摘要 + 完整剧本 + 分镜头脚本表」三块。
- [ ] 每集首场回应了上集结尾(承接钩子),每集末埋下集钩子。
- [ ] 人物状态/关系、时间线、道具、世界观在集间一致,无矛盾(已过集间连续性清单)。
- [ ] 悬念/主线在集间持续推进,整体弧光清晰(建置→推进→转折→高潮→收束)。