短剧项目生成 — 主代理手册
多代理流水线,从用户想法到完整短剧项目文件。
目录
1. 项目结构
{workspace}/
├── 创意草稿_{剧名}.md
└── {剧名}/
├── 创意原点.md
├── 基础信息.md
├── 世界观与运行规则.md
├── 人物小传.md
├── 故事概要.md
├── 逐集概要/EP_{起始}-{结束}.md
├── 剧本/EP_{X}.md
└── 质检报告/{环节标识}_质检报告.md
{workspace}= 运行时工作目录(通常为 OpenClaw workspace),所有路径使用绝对路径,由运行时环境自动提供创意草稿存于 workspace 根目录,立项期间实时记录用户确认内容,创意原点保存成功后删除
2. 启动与模式
2.1 项目扫描
扫描 {workspace}/,查找子文件夹(包含 创意原点.md)和 创意草稿_*.md 文件。
| 检测结果 | 行为 |
|---|---|
| 无项目文件夹,无创意草稿 | 进入立项 |
| 有项目文件夹 | 列出所有项目,让用户选择继续、恢复或新建 |
| 无项目文件夹,有创意草稿 | 读取草稿恢复上下文,提示用户有未完成的立项,可继续或废弃 |
2.2 模式检测
检查当前环境是否支持子代理委派(子代理创建工具可用)。
- 支持 → 子代理模式,直接进入立项,无需用户确认
- 不支持 → 提示用户子代理不可用,询问是否使用主代理直出模式,并提醒:10集以上的项目在直出模式下存在上下文溢出风险
- 用户明确确认后才能以主代理直出模式启动项目
- 用户未确认或拒绝 → 停止,等待用户指示
模式确定后贯穿整个项目,不可中途切换。
2.3 模式定义
子代理模式 — 主代理是调度者,所有内容生成和质检委派子代理完成,主代理不直接编辑项目文件。立项除外,由主代理直接执行,但必须先完整读取立项手册再开始。
主代理直出模式 — 主代理兼任生成者。自行读取对应子代理手册执行生成和质检。所有「委派子代理」操作改为「主代理自行执行」。
后文用以下标记区分适用范围:
子代理模式— 仅子代理模式下执行,主代理直出模式跳过直出模式— 仅主代理直出模式下执行,子代理模式跳过- 无标记 — 两种模式通用
3. 子代理模式规则
3.1 即时响应
主代理必须保持对用户消息的即时响应,不得因子代理在跑而静默不回。
3.1.1 文件发送(强制)
每个环节质检通过后,必须发送文件给用户审核。
-
未发送文件 → 不得进入下一环节
-
用户未回复「通过」或等效确认 → 不得进入下一环节
-
违反本规则属于执行失误,须在用户指出后立即补发
-
用户发消息 → 立即回复,无论子代理是否在执行
-
用户问进度 → 立刻报告当前环节、批次、状态(生成中 / 质检中 / 已通过 / 已打回)
3.2 紧急中断
用户发出中断指令(「停」「停止」「停工」「等等」「先别」「暂停」等)时:
- 中止子代理 — 使用子代理管理工具终止正在执行的子代理,已完成的产出保留不删
- 暂停后续调度 — 流水线中所有排队任务暂停
- 确认用户意图 — 等待明确指示后再决定是重新生成、修改参数、还是继续原流程
用户喊停即停,不预判、不自行决策。
3.3 超时处理
使用流水线环节定义中的超时值作为子代理任务的超时参数。
- 有报错/异常(网络或系统故障)→ 立即重新委派,不计入重试次数
- 静默超时(无报错)→ 按原超时时间重试,最多 2 次;2 次仍超时 → 停止,通知用户该环节执行异常
- 超时重试期间,主代理必须继续响应用户消息(见 3.1)
4. 流水线
4.1 环节总览
路径前缀 {ref} = 本技能目录下的 references 文件夹,{proj} = {workspace}/{剧名}。
4.1.1 立项
仅在新建项目时触发。 主代理全程直接执行,禁止委派子代理。进入立项前,主代理必须先完整读取立项手册({ref}/master-setup.md),理解全部流程和规则后再开始执行,禁止未读完手册就自行设计提问或流程。
4.1.2 人物小传
合并了原人物规划的逻辑,直接从创意原点产出含人物架构的小传。
- 超时:600s | 粒度:整体
- 生成手册:
{ref}/agents/agent-character-profile.md - 质检手册:
{ref}/qa/qa-character-profile.md - 生成必读:
{proj}/创意原点.md - 质检必读:
{ref}/common-qa-rules.md、{proj}/创意原点.md、{proj}/人物小传.md
4.1.3 故事概要
- 超时:360s | 粒度:整体
- 生成手册:
{ref}/agents/agent-story-bible.md - 质检手册:
{ref}/qa/qa-story-bible.md - 生成必读:
{proj}/创意原点.md、{proj}/人物小传.md - 质检必读:
{ref}/common-qa-rules.md、{proj}/创意原点.md、{proj}/人物小传.md、{proj}/故事概要.md
4.1.4 逐集概要
批量串行,每批 10 集(批次数 = ceil(总集数 / 10),总集数读自 基础信息.md)。
合并了原人物小传补充,每批输出除逐集概要外还追加过场人物,追加在批文件末尾。
- 超时:1500s | 粒度:每批
- 生成手册:
{ref}/agents/agent-episode-outline.md - 质检手册:
{ref}/qa/qa-episode-outline.md - 生成必读:
{proj}/故事概要.md、{proj}/人物小传.md、{proj}/逐集概要/EP_{上一批起始}-{上一批结束}.md(第 2 批起,上一批含人物补充信息) - 质检必读:
{ref}/common-qa-rules.md、{proj}/故事概要.md、{proj}/人物小传.md、{proj}/逐集概要/EP_{当前批起始}-{当前批结束}.md、{proj}/逐集概要/EP_{上一批起始}-{上一批结束}.md(第 2 批起)
4.1.5 剧本
逐集串行。合并了原分镜脚本,剧本文件中包含分镜表格。
- 超时:1500s | 粒度:每集
- 生成手册:
{ref}/agents/agent-screenplay.md - 质检手册:
{ref}/qa/qa-screenplay.md - 生成必读:
{proj}/逐集概要/EP_{所属批次起始}-{所属批次结束}.md、{proj}/世界观与运行规则.md、{proj}/人物小传.md - 质检必读:
{ref}/common-qa-rules.md、{proj}/故事概要.md、{proj}/世界观与运行规则.md、{proj}/人物小传.md、{proj}/逐集概要/EP_{所属批次起始}-{所属批次结束}.md、{proj}/剧本/EP_{X}.md
4.2 执行流程
对每个环节(步骤 2~5),按以下循环执行直到环节结束:
生成 → 质检 → 发送 → 用户裁决 → (修改 / 重新生成 / 通过)
4.2.1 生成
按环节定义的「生成必读」委派生成代理(子代理模式)或主代理自行执行(直出模式),保存到对应路径。
4.2.2 质检
按环节定义的「质检必读」委派质检代理(子代理模式)或主代理自检(直出模式),保存质检报告。
- 质检通过 → 按 4.2.3 发送规则执行
- 质检打回 → 按质检报告指出的问题范围修改,改完重新质检;累计打回达 5 次 → 停止,提交用户裁决(附带质检报告)
4.2.3 发送
发送时机:
| 步骤 | 环节 | 产出 | 时机 |
|---|---|---|---|
| 1~3 | 立项/人物小传/故事概要 | 单文件 | 质检通过后立即发送 |
| 4 | 逐集概要 | 多文件 | 全部批次通过后打包压缩发送 |
| 5 | 剧本 | 多文件 | 全部集数通过后打包压缩发送 |
- 步骤 4~5 中间批次/集数质检通过时,仅记录进度,不发送,不通知用户审核
发送方式(按当前渠道自动适配):
- 支持附件的渠道 → 以当前渠道支持的文件发送方式交付(如附件标签、文件上传等)
- 仅文本的渠道 → 将文件内容以代码块形式粘贴到消息中,并在开头标注文件名
禁止行为:
- 禁止质检通过后不发送文件就自动进入下一环节
- 禁止只口头告知用户"文件已生成"而不实际发送文件
- 禁止多文件环节在中间批次/集数通过时发送文件
- 必须等用户裁决后才能继续下一环节
4.2.4 用户裁决
- 审核通过 → 环节结束,进入下一环节
- 要求修改 → 按下方修改规则执行,改完重新质检并发送
- 重新生成 → 从头执行本环节的生成与质检
4.2.5 修改规则
主代理基于会话中的已有上下文(质检报告、已发送的文件内容、用户意见)评估,不需要额外读取项目文件。
用户意见是确认类的("这段什么意思")→ 解释说明,不触发修改;用户明确要求改动 → 按以下流程处理:
- 确定修改范围:用户指定了明确范围 → 从指定节点开始;用户给出笼统意见("整体节奏太慢""人物不够立体")→ 主代理评估后给出建议修改范围,让用户确认后再执行
- 执行修改:单文件环节直接修改该文件;批量串行环节从确定范围的批次开始修改;逐集串行环节从确定范围的集数开始修改
- 联动判断:改了人物设定/关系/性格/动机、剧情走向/事件结果/关键转折、世界观规则/设定边界 → 联动后续所有批次/集;只改了措辞/描写细节/对话润色、格式/结构/规范问题 → 不联动
每修改一个批次/集,必须重新质检通过后才能继续下一个。
4.3 委派规范
4.3.1 子代理铁律
适用:子代理模式
每次委派 prompt 的第一段必须原样写入:
你是子代理,收到委派后必须立即执行以下操作:
1. 逐个读取下方「必读文件」中列出的每一个文件路径(使用 read 工具)
2. 读取完所有文件后,输出一行确认:"已读取全部必读文件,共 N 个"
3. 然后才能开始执行任务
[注意] 未完成第2步确认前,禁止生成任何内容。
直出模式:主代理自行读取必读文件后执行,跳过铁律。
4.3.2 任务 prompt 模板
生成任务
{子代理铁律}
【任务】{环节名}(首次生成)
【必读文件】
- {代理手册绝对路径}
- {项目文件绝对路径列表}
【保存到】{输出文件绝对路径}
直出模式:主代理读取必读文件,按代理手册规范生成,保存到输出路径。
修改任务
质检打回或用户要求修改时,委派对应生成代理(非质检代理)。修改计数 = 该环节(该批次/该集)累计质检打回次数。
{子代理铁律}
【任务】{环节名}(第{N}次修改)
【修改规则】
1. 基于现有文件精确修改,只改问题部分,不重新生成
2. 未涉及内容原样保留,不擅自增删或改变格式结构
3. 修改后对照代理手册格式要求进行自检
4. 只修改目标文件,不修改质检报告
5. 如果修改意见不涉及本文件内容,不要强行修改
【必读文件】
- {代理手册绝对路径}
- {被修改文件绝对路径}
- {质检报告绝对路径}
- {其他依赖文件,与首次生成相同}
【保存到】{被修改文件绝对路径}
直出模式:主代理读取上述必读文件,按修改规则执行。
质检任务
{子代理铁律}
【任务】{环节名}质检(第{N}次)
【必读文件】
- {质检手册绝对路径}
- {被检文件绝对路径}
- {依赖文件绝对路径列表}
【保存报告到】{质检报告绝对路径}
质检子代理返回格式:【质检结论】通过 / 打回 + 【内容摘要】 3-5句话概述生成内容的要点,打回时补充问题说明。
直出模式:主代理参照质检手册自行检验,自行给出上述格式的结论,生成质检报告。
5. 约束与红线
5.1 主代理禁令(子代理模式下)
- 禁止自行生成任何项目内容(规划、小传、剧本等)
- 禁止直接编辑项目文件(即使觉得子代理改得不好,也只能重新委派)
- 禁止将子代理产出粘贴到 prompt 再生成
- 禁止绕过子代理直接操作项目文件
唯一例外:立项阶段。
直出模式:主代理直出模式自动解除以上全部禁令。
5.2 删除项目
- 随机生成 6 位数字验证码
- 告知用户:「请回复验证码
XXXXXX以确认删除项目《{剧名}》」 - 数字完全匹配 → 将项目目录整体移动到回收目录(如
{workspace}/.trash/deleted-{时间戳}/),保留可恢复性,禁止不可逆删除;不匹配或超时 → 取消
5.3 删除文件
- 列出文件名和完整路径
- 告知用户:「请确认要删除以下文件:{路径},回复「确认」执行」
- 用户确认 → 将文件移动到回收目录(如
{workspace}/.trash/deleted-{时间戳}/,保持原目录结构,禁止不可逆删除)
6. 断点续跑
读取 references/checkpoint-resume.md,按检查链定位断点,从缺失/未完成的环节继续。
断点续跑遵循当前会话的执行模式(子代理模式或主代理直出模式)。