通用-多平台输出编排
题材路由:若 .github\题材专用Skills\ 目录存在对应的 <题材>-多平台输出编排 Skill,则:
- 将题材特性骨架路由到 <题材>-多平台输出编排,该 Skill 位于 .github\题材专用Skills\ 目录。
- 命中本技能时,必须优先强制加载当前 Skill 与 <题材>-多平台输出编排。
执行安保(硬性门禁)
阅读确认(强制)
本文件不是摘要或参考提示,而是必须逐字执行的流程指令。
在产生任何输出之前,必须先逐条输出以下确认。不输出确认就输出正文内容,一律视为流程违规:
[阅读确认]
- 本文件 SKILL.md → [已完整读取,完全理解全部硬规则与强制要求]
- references/多平台输出执行总流程与断点恢复.md → [已读取并理解]
- references/多平台输出门禁与相似度规则.md → [已读取并理解]
- references/多平台输出摘要与日志规范.md → [已读取并理解]
若项目根目录存在 Agents.md → 追加确认已完整读取(含 平台POV基线表 章节)。
执行器定位(硬性)
- 本 Skill 是"执行器",不是"规划器":目标是把 15 步闭环真实跑完,而不是输出计划、平台列表或阶段汇报。
- 一气呵成:一旦开始执行,必须一气跑完 A→E 五个阶段,中途不得暂停询问与任务无关或可由既有规则推断的问题。
- 禁止"等你说继续"式暂停:除非命中硬性缺参(如章节路径无法解析、Agents.md 中缺少平台POV基线表),否则不得停下来等用户回复。
- 步进式输出:每一步开始时输出
[进度] 阶段 X / 步骤 N:当前动作描述;在完成全部 15 步之前,不得输出"多平台输出完成"或最终摘要。
禁止擅自跳步与禁止不加载 Skill(硬性新增)
- 每个步骤的"调用 skill"声明是强制门禁,不是建议 — 步骤中标注了
调用 skill:通用-提纯多平台母稿等声明的,必须通过skill()工具实际加载对应 Skill 的 SKILL.md 并逐字执行其指令,不得跳过加载直接凭"已有知识"替代执行。 - 禁止擅自跳过任何步骤 — 从步骤 1 到步骤 15 的所有步骤必须逐项执行,不得以"该步骤不适用"、"旧平台已执行过"、"相似度已达标"为由跳过。若某步骤确实不适用(如该平台无独立的输出 Skill),必须在日志中显式记录
skipped_{stepName}_reason=xxx,且需有明确规则依据。 - 禁止用"手动替代"跳过 skill 加载 — 不得以"我已经知道这个 Skill 的内容了"为由不通过
skill()工具加载。每一次步骤执行都必须由skill()重新加载对应 Skill 文件,以获取最新版本。 - 禁止用"文件已存在"代替"步骤已执行" — 必须以本次执行中是否实际读取、修改、覆盖写回并更新日志为准。
- 阶段 D 门禁的五步骤必须按顺序执行 — 步骤 10→11→12→13→14 的顺序不可颠倒、不可合并、不可跳过。任一门禁失败必须进入回炉(步骤 12)后再顺序重测。
禁止违规的情形(硬性)
以下任一情况都构成违规,必须回炉或重新执行:
- 禁止跨章跳步或合并步骤 — 每章必须独立完整执行 15 步闭环。允许按相位流水线编排(如批量预检→逐章提纯、适配、落盘、门禁),但不得用一份推演/一次落盘/一次门禁覆盖多章。逐章独立执行全部平台门禁后再移入下一章。
- 禁止用脚本生成正文 — 脚本只用于门禁验证/字数统计/相似度检测,正文内容必须由 AI 模型生成。
- 禁止模板句污染 — 不得出现"抽象自述+动词模板+口径名词"的机械句群或指定污染短语。
- 禁止剪切视角锁定 — 已锁定的
platformPovContract不得在连续章中自行更改人称。 - 禁止跳过提纯或适配节点 — 不得跳过
通用-提纯多平台母稿或通用-多平台小说适配。 - 禁止跳过推演直接落笔 — 每个"章节×平台"节点必须先生成平台化推演草图,再进入正文改写。
- 禁止回炉扩大化 — 单一平台回炉不得把其他已通过平台一起拖回。
- 禁止失范放行 — 字数/POV/相似度/质量任一门禁不达标,不得宣告完成。
语气规则(硬性)
以下为不可协商的硬约束:
- 不按本流程执行,不是"工作不到位",而是违规。
- 不得跳过 references 文件的读取;不得"根据已有知识"代替实际读取。
- 不得裁剪 15 步闭环中的任何步骤。
- 不得跳过
通用-提纯多平台母稿或通用-多平台小说适配节点。 - 不得把"看起来差不多了"当作已达标。
- 违反上述任一条的产出不得交付。
多平台输出不是把一章文本复制多份,而是一个带门禁、日志、相似度与平台路由的执行流水线。
作者风格画像嵌入(自动,只读)
- 若项目根注册了"作者风格进化"数据源(见
Agents.md):**执行中(只读,不提问)**读取作者风格画像.md的 叙述句法层 + 作者语言库——平台撞车修复与相似度门禁回炉时,保留"作者味底稿"(母稿提纯阶段保住的作者原声金句 / 母题显影点不得在平台版被洗掉);未注册则回退默认,不报错,不阻断
核心红线(硬性约束,绝对不可违反)
红线 0:字数门禁(动态读取,优先项目级覆盖)
- 字数门禁不再使用全局硬编码值。字数目标按以下优先级确定(由高到低):
- 项目级覆盖:读取项目根目录
Agents.md,若该文件中有针对具体平台的字数要求(如起点:{ bodyCJK: 3000-5000, afterwordCJK: 200-300 }),则以此为准。 - 主平台默认:若
Agents.md中未指定具体平台但设定了主输出平台的字数要求,则由主输出平台对应的通用-输出*版/SKILL.md中的"平台默认字数范围"确定。 - 目标平台默认:读取本次目标平台对应的
通用-输出*版/SKILL.md中的"平台默认字数范围"。
- 项目级覆盖:读取项目根目录
- 在任何平台分发开始前,必须先为每个章节 × 每个平台建立字数可行性判断;正文与
## 作者有话说未达到该平台的字数目标时,建议先补足再进入平台正文写作阶段。 - 若源稿本身偏短,必须先调用
通用-提纯多平台母稿后判断是否需要做源稿补强;若源稿补强后仍远低于目标平台的字数门槛,可停止该平台分支,记录blocked_word_count_insufficient,不得用平台后处理"凑字数"。 - 字数不足的处理顺序必须是:先补信息与场景 → 再补正文 → 再补作者有话说 → 最后才允许进入平台门禁与相似度终检。禁止把字数不足留到平台分支里临时修补。
- 平台化草图阶段必须显式写明该平台的字数余量判断,字数目标来源(项目覆盖 / 平台默认)一并注明。
- 若任一平台版本在首次落盘后仍未达字数目标,建议回炉扩写,不得先保留"能跑门禁"的短稿再后补。
事故复盘回写(2026-05-11,强制执行)
- 已发生过违规行为:在子代理额度受限时,错误切换到本地脚本链路做正文改写与批量生成。
- 该行为本质上违反“红线 2”,并造成无效生成与 token 浪费;后续必须视为一级流程事故。
- 本条复盘不是说明性文字,而是执行约束:凡出现同类路径,一律判定为流程失败并中止。
红线 1:逐章完整执行(允许多章编排,禁止跨章跳步与降质)
多章编排允许提高上下文复用效率,但不得减少或跳过任何一章的任一环节。
- 每一章都必须独立完整执行 15 步闭环(从提纯、适配、分平台改写、门禁验证、相似度终检、完成判定)。多章编排改变的是执行顺序(按相位流水线推进),而不是每章的执行深度。
- 允许的多章编排:一次性完成批量预检与任务队列建立 → 按"平台推演→平台落盘→门禁终检"的相位流水线滚动推进,每章在每个相位中独立执行该相位覆盖的全部子步骤。
- 禁止的跳步行为:
- 禁止用一份推演草图覆盖多章 — 每章都必须独立做平台化推演
- 禁止用一份 POV 契约默认覆盖所有章 — 每章都必须独立确认 POV 继承或切换
- 禁止把多章的一次性落盘当作"已完成" — 每章在落盘后都必须独立通过全部四道门禁
- 禁止先批量写完所有平台版本再批量跑门禁 — 每章必须完成全部平台门禁后才能移入下一章
- 正确做法:批量预检(一次性)→ 第 1 章提纯→适配→全平台落盘→全平台门禁→通过 → 第 2 章提纯→适配→全平台落盘→全平台门禁→通过 → ……
- 错误做法:一次性对所有章执行提纯,再一次性对所有章执行适配,再一次性对所有章执行分平台改写,最后一次性跑门禁。
- 违反此红线导致的任何内容质量问题、相似度混乱、门禁失效,全部由执行者负责。
红线 2:多平台版本必须由 AI 生成(禁止脚本垃圾字符,禁止批量模板)
- 绝对禁止使用脚本来生成随机字符、垃圾内容或无意义字符填充。
- 绝对禁止使用批量替换规则、模板库或自动化工具来批量改写正文。
- 每个平台的多平台版本内容必须由 AI 模型直接调用生成,保证高质量、高创意、符合平台风格。
- AI 生成的内容必须是原创、有逻辑、有文学质感的作品文本,不是字符垃圾或低质量替换。
- 脚本的唯一用途是:门禁验证、字数统计、相似度检测、质量检查。脚本不得用于内容生成。
- AI 生成完成后,必须进行人工复核(检查逻辑、一致性、出戏风险),但内容本身由 AI 负责生成。
- 违反此红线的输出(包括脚本垃圾、批量模板、低质量 AI 生成)不得交付,必须全部回炉重新调用 AI 生成。
- 当 AI 生成能力不可用(如子代理限额、模型不可用、调用失败)时,唯一允许动作是:写日志标记
blocked_ai_unavailable并停止正文生产;绝对禁止改走任何脚本改写或模板替换兜底。
红线 3:模板句污染零容忍(新增硬红线)
- 绝对禁止在平台正文中出现“抽象自述 + 动词模板 + 口径名词”的机械句群(如“我这边…对齐/校准…,说到底…口径/日志…,只求…”)。
- 绝对禁止出现污染短语族:
对照项落在、先把同一句话拆碎、先把顺滑的解释拆开、只求能追溯、只求能复核、只求对得上。 - 一旦命中上述模板句污染,必须判定为硬失败并回炉重写;不得以“字数达标”或“相似度达标”放行。
- 下列脚本不得进入正文生产链路:
scripts/append_cn_unique_monologue.ps1、scripts/append_cn_unique_narration.ps1、scripts/append_cn_unique_thirdperson.ps1、scripts/rephrase_cn_body.ps1、scripts/rephrase_en_body.ps1、scripts/cn_lexicon_profile_transform.ps1。
红线 4:平台连续章视角锁定(新增硬红线)
- 对同一平台的连续章节输出,必须先锁定该平台的
platformPovContract,至少包含:expected(first|second|third)、lang、baselineSource、switchPolicy。 platformPovContract的默认来源优先级必须是:用户明确指定 > 该平台已完成前序章节 > 源稿既有视角链路 > 本批次该平台首个已通过章节。- 一旦某平台已存在有效 POV 契约,后续连续章节必须继承;绝对禁止在没有显式理由与日志审批的情况下,把第 1–8 章的第三人称链路写到第 9–15 章突然变成第一人称,或反向漂移。
- 只有三类场景允许变更:源章本来就是视角切换章 / 多视角连续章;用户明确要求该平台改成人称迁移;历史平台链路本来就是另一套 POV 且本次只是续写。
- 任何未登记的 POV 变更都视为硬失败:必须回炉重写,并在日志中记为
pov_switch_without_approval或pov_drift_detected。
红线 5:字数目标不得后置(修订为软推荐)
- 不建议把"先落盘、再补字数"作为流程策略;这会让平台门禁、相似度门禁和 POV 门禁都建立在错误长度上。
- 不建议把短稿先分发到所有平台,再期待某个平台的作者有话说或平台后修补到位。
- 若当前章节在某平台上远低于该平台字数目标,可在日志中标记该平台分支为
blocked_word_count_insufficient,并考虑中止该平台分支后续分发。 - 字数目标是参考门槛,不是硬性阻断;它与 POV 契约门禁同级,但不达标不会自动阻断,需由审阅者判断是否继续。
继续读取的 references(强制读取门禁)
以下所列 references 文件必须通过 read_file 工具逐文件读取,不得因"已有相关知识"、"之前执行时已读过"、"该文件只是参考"为理由跳过任何一条。 命中本 Skill 时,除本文件外,以下文件必须继续读取:
标注 必读 的文件:必须读取,少一条即视为流程违规,不得开始步骤 1。
未标注必读的文件:必须读取,但读取后可仅提取与当前任务直接相关的段落,不要求逐字通读。
若文件路径指向的文件不存在(如引用的外部路径未就位),必须在日志中显式记录
reference_missing_{refName},不得静默跳过。references/多平台输出执行总流程与断点恢复.md— 必读references/多平台输出门禁与相似度规则.md— 必读references/多平台输出摘要与日志规范.md— 必读../../写作研究/网文留存模型.md— 留存基线../../写作研究/GEO小说项目核心参考.md(新增 — GEO 基础框架,支撑步骤 10-14 门禁中新增的 GEO 门禁),定义多平台分发阶段的留存门禁与平台留存策略映射
题材包装层路由规则
题材目录下的包装层 Skill(如 都市悬疑-提纯多平台母稿)是本 Skill 所调用的子 Skill 的题材特化扩展。调用规则:
- 在调用
通用-提纯多平台母稿、通用-多平台小说适配或任一通用-输出{平台名}版之前,先检查当前项目题材目录下的.github/skills/中是否存在同名题材包装层 - 若存在:先加载题材包装层 Skill,再由其路由到通用 Skill 叠加题材规则
- 若不存在:直接调用通用 Skill,不报错,不阻断
- 本编排器不直接消费题材包装层;路由责任由被调用的子 Skill 承担
默认模型温度参考
本 Skill 作为编排器不直接调用模型,但将以下温度约束传递给被调用的下游子 Skill 执行:
| 子 Skill / 阶段 | 推荐温度 | 说明 |
|---|---|---|
| 通用-提纯多平台母稿(提纯阶段) | 0.40 | 信息保真为主,保持判断稳定 |
| 通用-提纯多平台母稿(提纯阶段) | 0.40 | 信息保真为主,保持判断稳定 |
| 通用-多平台小说适配(推演阶段) | 0.45 | 策略推演,适度约束 |
| 通用-输出{平台名}版(分平台改写) | 0.55–0.70 | 需要创造性与平台适配,中文英文共用 |
| 字数/POV/相似度门禁(终检) | — | 脚本检测,不调用模型 |
何时使用
- 用户要求把单章或连续多章输出到多个平台。
- 需要统一处理
chapterPath / chapterPaths / inline source、默认平台集合、日志续跑、门禁脚本与分语言相似度质检。 - 需要一个真正能落盘、能恢复、能批量滚动执行的多平台输出 SOP。
不适用情形
- 只想做平台差异推演、不落文件:优先使用
通用-多平台小说适配。 - 只改某一个平台版本:优先使用对应平台输出 Skill。
- 只写原始章节正文、不做平台派生稿:优先使用
通用-章节创作闭环或通用-创建小说正文。
常见触发词 / 用户说法速查
- 把这章分发到多个平台
- 批量跑多平台输出
- 帮我做多平台输出 SOP
- 这几章按平台批量落盘
- 带日志续跑多平台分发
多平台输出流程(15 步闭环强制)
命中本 Skill 时,必须按以下闭环执行,禁止裁剪关键步骤。每段标注角色视角,步骤末尾标注完成标记。
为降低执行负担,先把本闭环记成 5 段:定位输入 → 建任务队列 → 提纯与适配 → 分平台落盘 → 门禁回炉与收口。
阶段 A:输入定位(步骤 1–3)
扮演角色: 编排器 / 项目经理角色。只做路径解析与归一化,不代入任何平台创作或审阅视角。不加载 .github/agents/小说作者.agent.md。
| 步骤 | 动作 | 调用 skill / 脚本 | 完成标记 |
|---|---|---|---|
| 1 | 接收任务,输入可以是 chapterPath / chapterPaths 或部/卷/章定位 | 无(编排器自执行) | 章节输入已归一化 |
| 2 | 若用户直接给文件路径则按给定路径处理;若给部/卷/章定位则映射到小说正文/下对应文件 | 无,自动在小说正文/下完成定位 | 章节路径已解析 |
| 3 | 当用户只给"第几部第几卷第几章"时不得反向要求用户手填路径,主动完成发现 | 无,主动完成发现 | 章节文件已确认 |
阶段 B:平台范围与任务队列(步骤 4–6)
扮演角色: 编排器 / 项目经理角色。读取平台配置、建立任务队列与 POV 建档,不进入正文改写。不加载 .github/agents/小说作者.agent.md。
| 步骤 | 动作 | 调用 skill / 脚本 | 完成标记 |
|---|---|---|---|
| 4 | 平台参数解析:①用户指定 platforms 则按指定子集执行;②未指定时读取 Agents.md 中平台POV基线表章节;③不存在则提示创建并停止;④识别主输出平台(只做门禁终检不重复改写);⑤非主平台写入 {平台名}/ 目录 | 读取 Agents.md | platformList 已确定;主输出平台:{name} |
| 5 | 建立每个源章节文件的正文上下文,形成可追溯的章节任务队列 | 无(编排器自执行) | 任务队列已建立 |
| 6 | 每章完成 POV 建档:判定源稿 POV 形态 → 为每个平台建立/继承 platformPovContract → 未获批不得自行改人称 | 可参考 通用-管理连续性冷热线 | platformPovContract 已锁定 |
阶段 C:母稿与分平台改写(步骤 7–9)
扮演角色:
- 步骤 7:小说作者角色(提纯视角)。参考
.github/agents/小说作者.agent.md的作者立场,调用通用-提纯多平台母稿对源稿做信息稳、事件链稳、情绪主轴清的精修。 - 步骤 8:平台策略师角色。不做正文创作,只做平台差异推演。不加载
.github/agents/小说作者.agent.md。 - 步骤 9:小说作者角色(平台改写视角)。参考
.github/agents/小说作者.agent.md的作者立场,逐一调用对应通用-输出{平台名}版(及对应的题材包装层),每切换一个平台就代入该平台的读者期待与风格约束。
| 步骤 | 动作 | 调用 skill / 脚本 | 完成标记 |
|---|---|---|---|
| 7 | 对每个章节调用通用-提纯多平台母稿(及对应的题材包装层),得到可分发母稿。不得跳过 | 必须通过 skill() 加载:通用-提纯多平台母稿(及对应的题材包装层) |
母稿已落盘 |
| 8 | 调用通用-多平台小说适配(及对应的题材包装层),获取平台差异矩阵 | 必须通过 skill() 加载:通用-多平台小说适配(及对应的题材包装层) |
平台差异矩阵已生成 |
| 9 | 按目标平台逐一调用对应通用-输出{平台名}版(及对应的题材包装层)。必须继承已锁定的 platformPovContract。每平台产物为独立 .md 文件,按平台目录落盘 | 必须通过 skill() 加载:对各平台逐一调用通用-输出{平台名}版(及对应的题材包装层) |
各平台版本已落盘 |
阶段 D:门禁、终检与回炉(步骤 10–14)—— 强制顺序执行卡
扮演角色: 质检员 / 审阅者角色(门禁终检视角)。完全退出创作视角,只做门禁检查与回炉调度。不因"感觉差不多了"降低标准。不加载 .github/agents/小说作者.agent.md。
【强制门禁执行顺序】 阶段 D 的 5 个步骤必须按以下顺序严格执行每个"章节 × 平台"节点,不得跳跃、合并或调序:
步骤 10(字数门禁)→ 通过 → 步骤 10(POV 门禁)→ 通过 →
步骤 11(相似度终检)→ 通过 → 步骤 13(质量门禁)→ 通过 → 步骤 14(终判)
↓ 失败 ↓ 失败 ↓
步骤 12(回炉)←──────────┘───────────────┘
↓
回到步骤 10(重测)
| 步骤 | 动作 | 调用 skill / 脚本 | 强制完成前提 |
|---|---|---|---|
| 10 | 平台内门禁:①先过字数门禁(必须使用 count-chapter.ps1,不得用 Len/NoWhitespaceLen/编辑器字符数或目测代替,正文门禁只看 BodyCJK/MeetsMinCJK/WithinRange,MeetsMinCJK 必须为 True,WithinRange 最好为 True)。字数通过后②再过 POV 门禁(pov_validate.py / run_pov_gate.ps1)。字数门禁未通过不得进入 POV 门禁 | count-chapter.ps1、count-afterword.ps1、pov_validate.py | 字数门禁 BodyCJK/MeetsMinCJK 实测过关 + POV 门禁实测过关 |
| 11 | 所有目标平台通过平台内门禁后,统一进入分语言相似度终检:中文组内两两+中文各平台对源章阈值<0.20;英文组内两两阈值<0.20。相似度终检未通过不得进入步骤 13 | chapter_similarity_check.ps1 / run_similarity_from_platform_config.ps1 | 中文组 {pass} + 英文组 {pass} |
| 12 | 回炉闸口:步骤 10/11/13 中任一失败 → 必须进入该平台自己的回炉循环,不得扩大到其他平台。回炉顺序固定:字数门禁 → POV 门禁 → 相似度门禁 → 质量门禁。回炉后再顺序重测步骤 10→11→13。回炉修改阶段,若需调用对应平台的输出 Skill(如通用-输出{平台名}版),也必须通过 skill() 工具重新加载,不得直接用旧版本替换。 |
回炉时回到对应步骤的修改链路(若需调用输出 Skill 则通过 skill() 加载) |
该平台已执行回炉修改 |
| 13 | 每次相似度回炉后显式运行质量门禁(run_quality_gate.ps1 / scan_text_quality.ps1)。禁止插入无意义字符或模板噪声压相似度。质量门禁未通过不得进入步骤 14。留存门禁(新增):质量门禁通过后,增加留存风险自检。每个平台版本的正文检查"情绪刺激密度是否因改写而降低"——若改写后连续 300 字无情绪刺激,标记为该平台的留存风险,回炉到对应通用-输出{平台名}版重新改写。GEO 门禁(新增):留存门禁通过后,可选增加 GEO 自检——检查平台版正文是否包含 AI 可引用的结构化元数据(检查项:① 是否含作品信息块 ② 是否含平台标签 ③ 是否含发布年份标签)。此为可选门禁,不影响主流程完成,但若启用则标记 [GEO门禁已执行]。详见 ../../写作研究/GEO小说项目核心参考.md。 |
run_quality_gate.ps1、scan_text_quality.ps1 | 质量门禁已通过 + 留存风险自检通过 |
| 14 | 终判闸口:若回炉降相似度后又导致字数/POV/质量任一门禁失效 → 必须继续回到该平台分支回炉(步骤 12),直到四者同时达标。四者未同时达标不得宣告该平台完成 | 循环执行步骤 10–13 对应子集 | 字数+POV+相似度+质量全达标 |
阶段 E:完成判定(步骤 15)—— 强制调用完整性 + IF/THEN 收口闸门
扮演角色: 编排器 / 项目经理角色。只做数据汇总、调用完整性审计与格式化输出。不加载 .github/agents/小说作者.agent.md。
【强制完成前提】 在进入步骤 15 之前,必须先完成以下三项审计。任一项不满足 → 不得宣告完成,必须回到对应阶段补做:
| 审计项 | 检查内容 | 通过条件 |
|---|---|---|
| 调用完整性审计 | 对比 requiredCalledSkills 与 calledSkills,识别 missingCalledSkills |
missingCalledSkills 为空 |
| 门禁审计 | 每个"章节 × 平台"节点的字数/POV/相似度/质量四门禁是否全部过关 | 四门禁全部达标 |
| 日志审计 | 所有平台节点的门禁结果、POV 契约、回炉记录是否已写入日志 | 日志可续跑 |
【强制 IF/THEN 收口闸门】
IF missingCalledSkills 非空:
→ 你 MUST 回到对应平台分支补调缺失 Skill,不得输出完成摘要
IF 存在任一平台节点四门禁未同时达标:
→ 你 MUST 回到该平台分支继续回炉(步骤 12→10→11→13→14),不得输出完成摘要
IF 日志不可续跑(关键状态缺失):
→ 你 MUST 补写日志后再进入步骤 15
IF 以上三项同时满足:
→ 允许输出完成摘要
→ status = completed
| 步骤 | 动作 | 调用 skill / 脚本 | 强制完成前提 |
|---|---|---|---|
| 15 | 执行调用完整性审计 + 门禁审计 + 日志审计 → 按 IF/THEN 收口闸门判定 → 满足条件时输出完成摘要 | 无(编排器自执行) | missingCalledSkills 为空 + 四门禁全达标 + 日志可续跑 |
默认执行顺序
- 先判断源稿是否需要前置提纯;若有单平台腔、事件链松动或钩子失温,先调用通用-提纯多平台母稿(及对应的题材包装层)
- 再做平台差异推演:通用-多平台小说适配(及对应的题材包装层)
- 再按平台子集路由到对应通用-输出*版(及对应的题材包装层)
- 每个平台写入后先显式运行字数门禁:正文与 ## 作者有话说 必须同时达标。字数参数优先级:①Agents.md 中该平台的字数指定 → ②该平台通用-输出*版/SKILL.md 的平台默认字数范围 → ③回退通用软参考。若只补测作者有话说,中文用 count-afterword.ps1,英文用 count-afterword-words.ps1
- 在字数达标的前提下,再按已锁定的 platformPovContract 运行 POV 门禁
- 最后执行分语言终检、日志收口与摘要输出
平台 POV 契约与连续性门禁(强制)
- 批量多章任务中,每个平台都必须先锁定一份
platformPovContract;不得让每一章在分平台改写时临时重新决定“这章用第一人称还是第三人称更顺手”。 platformPovContract至少要写清:expected、lang、baselineSource、switchPolicy;需要断点恢复时,还应补充inheritedFromChapterNo或等价来源。- 若目标平台目录下已经存在同书、同分部 / 分卷的已完成前序章节,必须先读取最近一个已通过章节;必要时补看最近 2–3 章,确认该平台既有 POV 链路后再续写。
- 若目标平台此前没有历史链路,则允许用“本批次该平台首个已通过章节”建立契约;一旦建立,后续连续章节全部继承,直到命中合法切换条件。
- 只有三类场景允许切换:源章本来就是视角切换章 / 多视角连续章;用户明确要求该平台做人称迁移;历史平台链路本来就是另一套 POV,本次只是沿既有链路续写。
- 命中合法切换时,必须把
switchApproved=true、switchReason、switchPlan写入日志;没有这些字段,就一律按未授权漂移处理。 - 第三人称链路若在正文区块里出现对话外
我 / 你 / I / you等代词,或第一人称链路在正文区块里完全缺失第一人称锚点,都应优先视为失败;不得解释成“只是文风更灵活”。 - 视角切换章 / 多视角连续章不等于可以放弃契约:它们只是把契约从“全章单一 POV”升级成“按已登记切换方案执行”,仍然禁止临场随意换壳。
相似度门禁执行口径(强制)
- 中文组:必须覆盖“中文平台两两比较 + 每个中文平台对源章比较”,阈值
< 0.20(建议0.199)。 - 英文组:必须覆盖“英文平台两两比较”,阈值
< 0.20(建议0.199)。 - 可使用
scripts/chapter_similarity_check.ps1直接对路径组进行计算,或使用scripts/run_similarity_from_platform_config.ps1基于平台配置执行;但最终报告必须明确区分中文组与英文组。 - 任一组存在超阈值 pair,不得放行,必须回炉并复检直到全部达标。
调用完整性门禁(强制)
- 每次执行都必须产出“调用审计记录”,至少包含:
requiredCalledSkills:本次任务应调用的 Skill 清单(按章节与平台展开)calledSkills:实际调用到的 Skill 清单(含调用顺序)missingCalledSkills:应调未调清单
requiredCalledSkills至少应包含:- 每个章节 1 次
通用-提纯多平台母稿 - 每个章节 1 次
通用-多平台小说适配 - 每个“章节 × 目标平台”1 次对应
通用-输出*版
- 每个章节 1 次
- 只要
missingCalledSkills非空,本次任务必须判定为未完成并继续回炉;不得进入“完成摘要”。
先推演后落笔(强制)
- 每个“章节 × 平台”节点,在真正写入平台正文前,都必须先形成一份平台化推演草图。
- 这份草图只服务执行,不得写进最终正文文件;其最低内容至少包括:
- 原章主信息清单(极短要点)
- 平台风格约束清单
- 本平台当前 POV 契约(第一 / 第二 / 第三人称、叙述距离、是否允许切换)
- 标题倾向与钩子倾向
- 计划采用的降重动作(如结构重排、对白改写、承载方式替换、节奏改造)
- 哪些信息必须保留,哪些表达必须换壳
- 禁止跳过推演直接落笔;也禁止先写一份中性底稿,再批量轻改成各平台版本。
- 推演可以通过顺序思考、结构草图、平台差异清单或等价的内部执行方式完成,但都必须满足“先锁平台风格,再进入正文改写”。
执行纪律(强制)
- 一旦开始执行,必须按“输入归一化 → 任务队列 → 平台化推演 → 分平台落盘 → 门禁回炉 → 分语言终检 → 摘要收口”的顺序一气跑完。
- 若源稿明显带重平台腔或关键事件 / 情绪主轴不稳,必须先插入“母稿提纯”节点,不得把问题原样复制到所有平台分支。
- 除非命中“无法解析
chapterNo/ 无法稳定推断分部目录与分卷目录/ 用户只给正文且必要元数据缺失 / 真实执行错误导致下一步无法推进”这四类场景,否则禁止中途停下来等用户说“继续”。 - 若一次处理多章,必须先完成批量预检与任务队列,再按“章节为外层、平台为内层”滚动推进;不得把所有章节 × 平台分支一次性全部铺开。- 多章编排的逐章完整性门禁:多章编排允许分相位推进(批量预检→逐章提纯→逐章适配→逐章落盘→逐章门禁),但每章必须独立完整执行全部 15 步闭环。禁止用一份提纯母稿覆盖多章、禁止用一次性适配推演代替逐章推演、禁止把多章平台版本的一次性落盘当作门禁已通过。任一章的任一"章节×平台"节点漏执行任一环节,整批不得宣告完成。- 默认并发上限必须保守:最多同时推进 2 个章节任务、每章最多 2 个平台分支、全局活跃平台分支总数不超过 4;一旦环境拥塞或日志冲突风险升高,必须自动降级。
- 断点恢复的最小复用单位必须是“章节 × 平台”节点;已写入且门禁完整通过的节点应直接跳过,不得整批重做。
- 同一平台连续章的 POV 一旦锁定,必须优先继承最近一个已通过节点;不得让不同章节各自“重新选择更顺手的人称”。
- 每个平台节点在进入相似度终检前,必须先通过“模板句污染清零检查”;若命中污染短语族,禁止进入相似度终检。
- 若命中“AI 生成能力不可用”场景,必须执行:
停止正文生产 -> 记录阻塞原因 -> 输出最小恢复动作;不得继续“先脚本生成再补救”。
本层职责
- 统一承接多平台输出 SOP 的共性编排逻辑。
- 统一承接章节队列、并行边界、断点恢复、日志字段、门禁脚本、相似度规则与摘要模板。
- 统一锁定并维护各平台连续章节的 POV 契约,阻止未授权的人称漂移与叙述主体漂移。
- 统一要求“先平台化,再降相似度;先风格门禁,再相似度终检”。
- 统一要求“先锁平台风格,再做风格内降重”,禁止先写中性底稿再批量轻改分发。
平台正文命名规则(强制)
- 各平台派生正文文件名默认不带日期,沿用既有章节号、平台目录和路径映射规则命名。
- 日期只用于与这些平台正文配套的审阅报告、书评等派生产物,不用于多平台正文文件本体。
- 除非用户明确要求另存日期归档副本,否则不得把平台正文批量改成日期版文件名。
强制要求
- 默认必须落盘,不得只给聊天稿。
- 默认必须写执行日志,并支持从未完成日志续跑。
- 相似度只按语言内比较;禁止跨语言对比。
- 平台化风格必须先于降重,不允许先写中性底稿再轻改分发。
- 任一目标平台未通过门禁,不得宣称本次 SOP 完成。
- 日志字段、门禁报告路径、失败节点与下一步动作必须能直接支撑断点恢复;不得把关键状态只留在聊天输出里。
- 反注水、文本质量与风格一致性都是终检前置门禁;任一不通过,都必须先回到对应平台分支回炉。
- POV 连续性也是终检前置门禁;任一平台出现未授权的人称漂移,都必须先回到该平台分支修复,之后才允许进入终检。
- 标题门禁必须同时满足:不与源章同名、同章平台间不重名、不得跨章复用旧标题骨架只改编号。
- 任一平台分支不得只凭“看起来够长”或“作者有话说应该差不多”放行;正文与作者有话说字数必须通过脚本实测并写入日志字段。
- 命中本 Skill 时,
通用-提纯多平台母稿与通用-多平台小说适配都是必经节点;不得跳过。 - 章节定位必须兼容“路径输入”和“部/卷/章输入”两种模式;部/卷/章输入默认定位到
小说正文/。 - 默认平台集合必须从项目根目录
Agents.md的平台POV基线表章节动态读取,不得把固定平台列表写死在执行器里;若Agents.md或其平台POV基线表章节不存在,必须提示用户创建后停止,不得继续执行。 - 反注水与无意义字符检查属于硬门禁;任一异常必须回炉,不得以“相似度已过线”为由放行。
- 流程停止条件必须满足:全部指定平台落盘 + 全部门禁通过 + 可续跑日志完整。
- 调用完整性属于硬门禁:
requiredCalledSkills与calledSkills必须对齐,且missingCalledSkills为空。 - POV 契约字段属于硬门禁:日志中必须能直接回答“这个平台当前应使用哪套 POV、继承自哪里、是否允许切换”;答不出来就视为不可恢复、不可放行。
- 模板句污染属于硬门禁:凡出现“抽象自述 + 动词模板 + 口径名词”句群或污染短语族,必须判定失败并回炉;不得作为“风格差异化”手段保留。
- token 使用纪律属于硬门禁:禁止用脚本批量改写正文去“节省调用”或“绕过限额”;该行为应直接记为违规,不得进入完成摘要。
完成检查
- 是否已读取 3 份 references
- 是否已建立单章 / 多章任务队列
- 是否已在平台分发前完成字数可行性判断,并对不足平台提前写入
blocked_word_count_insufficient - 是否已为每章维护日志并记录平台门禁
- 是否已为每个平台节点显式运行
scripts/platform_validate.ps1,并把正文 / 作者有话说门禁结果写回日志 - 是否已为每个平台锁定
platformPovContract,并确认其继承来源或批准切换理由 - 是否已对每个平台节点执行 POV 门禁(或对视角切换章做了人工复核),并把结果写回日志
- 是否已完成分语言相似度终检
- 是否已按“中文平台两两 + 中文对源章、英文平台两两”完成
< 0.20相似度门禁 - 是否已执行反注水与无意义字符质量门禁,并在失败时回炉
- 是否已确认每章每平台均为独立
.md文件,且仅包含标题、正文与## 作者有话说 - 是否已输出调用审计:
requiredCalledSkills、calledSkills、missingCalledSkills - 是否已确认
missingCalledSkills为空(否则不得宣告完成) - 是否只输出摘要而未泄露正文
- 是否已确认所有平台稿不存在污染短语族(如“对照项落在”“先把同一句话拆碎”“先把顺滑的解释拆开”“只求能追溯/复核/对得上”)
- 是否已确认不存在未授权的“前几章第三人称、后几章突然第一人称”式 POV 漂移
- 若执行中出现 AI 不可用,是否已按
blocked_ai_unavailable中止并写入恢复指引(而不是脚本兜底生成)