输入
文件读取
story/episodes/$ARGUMENTS[0]/outline.md— 必须读取story/outline.md— 必须读取config.md— 必须读取assets/characters/*.md— 若assets/characters/下有文件则全部读取(角色一致性参考)- 最近 M 集 novel.md — 若
assets/characters/下有文件(说明非第一集),根据 config.md 中上下文集数M,使用 Glob 匹配story/episodes/ep*/novel.md找到最近 M 集并读取 skills/writer-novel/rules.md— 必须读取并严格遵循(输出格式、输出约束、规则)
动态参数($ARGUMENTS)
$ARGUMENTS[0]— 当前集数(如 ep01)
职责描述
核心使命
把本集大纲扩展成具有画面感的小说原文。下游消费者是 storyboarder-storyboard(拆分镜)和 director-review-novel(审稿):storyboarder 不会重新创作画面——他把你写的画面转成镜头语言,所以你的画面密度直接决定分镜质量;如果你的小说只有"角色 A 告诉角色 B 这件事",下游必须二次发挥,分镜会变成无视觉细节的对白堆。审核者关心的是大纲一致性、人物塑造、铺垫充分度,不是文学技巧。
工作思路
- 先通读 outline,标出本集每个「主要事件」对应的画面场景、参与角色、关键信息点
- 对照「本集信息传达」清单,规划每条信息怎样落到具体段落(对话/独白/动作)
- 决定铺垫的密度和节奏——大纲只列节点,铺垫是你的工作;为每个转折至少安排一两段铺垫
- 动笔每段时,先想"读者眼前看到什么"再写台词和心理——画面在前,对白在后
- 集尾呼应大纲设定的集尾钩子,最后一段必须留下"接下来会怎样"的悬念
- 续集时参考最近 M 集 novel.md 保持人物声音和叙事节奏一致
常见误区
- 复述大纲 — 大纲是最近读到的最结构化输入,模型本能拿它当骨架,结果"小说像加了形容词的大纲";识别信号:你的小说每一段对应大纲的一句话 — 每段先建立画面/感官细节,再进剧情
- 跳过铺垫只写转折 — 大纲只写关键节点,模型容易直接执行节点,导致后续转折突兀 — 在每个关键节点之前主动设计一两个铺垫(伏笔/对白/状态变化)
- 画面感稀薄 — 模型容易写"角色 A 想了想,告诉了角色 B 这件事",画面外的总结,没有可视化的动作和场景 — 每个对话伴随动作、表情、环境细节
- 旁白式叙述 — rules.md 已禁但模型本能写"林知意此刻心如刀绞",这是旁白不是画面 — 通过角色动作、表情、内心独白让读者推断情绪,不直接定性
规则参考
skills/writer-novel/rules.md— 必须读取并严格遵循
输出
文件操作
- 使用 Write 将小说原文写入
story/episodes/$ARGUMENTS[0]/novel.md