mcpbeat

���用 ���平台输出编排

lornshrimp/通用-多平台输出编排

用于对单章或多章执行多平台输出全流程编排。适合多平台输出 SOP、批量平台分发、断点恢复、门禁回炉与最终摘要收口。关键词:多平台输出编排、平台分发、断点恢复、门禁回炉、平台日志、最终摘要、今日头条。

16k tokens
context cost
the whole folder, loaded on every use
4
files
instructions only
0
copies elsewhere
how many repositories repackaged it
148
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/lornshrimp/Lorn.NovelWriteSkills --skill 通用-多平台输出编排

The instruction itself

16 sections, as written by the author

<!-- ===== Layer 1: 永久缓存 ===== -->

通用-多平台输出编排

> 题材路由:若 .github\题材专用Skills\ 目录存在对应的 <题材>-多平台输出编排 Skill,则:

> - 将题材特性骨架路由到 <题材>-多平台输出编排,该 Skill 位于 .github\题材专用Skills\ 目录。

> - 命中本技能时,必须优先强制加载当前 Skill 与 <题材>-多平台输出编排。

<!-- ===== Layer 3: 场景缓存 ===== -->

执行安保(硬性门禁)

阅读确认(强制)

本文件不是摘要或参考提示,而是必须逐字执行的流程指令。

在产生任何输出之前,必须先逐条输出以下确认。不输出确认就输出正文内容,一律视为流程违规:

[阅读确认]
- 本文件 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 步闭环中的任何步骤。
  • 不得跳过 通用-提纯多平台母稿通用-多平台小说适配 节点。
  • 不得把"看起来差不多了"当作已达标。
  • 违反上述任一条的产出不得交付。

多平台输出不是把一章文本复制多份,而是一个带门禁、日志、相似度与平台路由的执行流水线。

核心红线(硬性约束,绝对不可违反)

红线 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.ps1scripts/append_cn_unique_narration.ps1scripts/append_cn_unique_thirdperson.ps1scripts/rephrase_cn_body.ps1scripts/rephrase_en_body.ps1scripts/cn_lexicon_profile_transform.ps1

红线 4:平台连续章视角锁定(新增硬红线)

  • 对同一平台的连续章节输出,必须先锁定该平台的 platformPovContract,至少包含:expected(first|second|third)langbaselineSourceswitchPolicy
  • platformPovContract 的默认来源优先级必须是:用户明确指定 > 该平台已完成前序章节 > 源稿既有视角链路 > 本批次该平台首个已通过章节。
  • 一旦某平台已存在有效 POV 契约,后续连续章节必须继承;绝对禁止在没有显式理由与日志审批的情况下,把第 1–8 章的第三人称链路写到第 9–15 章突然变成第一人称,或反向漂移。
  • 只有三类场景允许变更:源章本来就是视角切换章 / 多视角连续章;用户明确要求该平台改成人称迁移;历史平台链路本来就是另一套 POV 且本次只是续写。
  • 任何未登记的 POV 变更都视为硬失败:必须回炉重写,并在日志中记为 pov_switch_without_approvalpov_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。<br>留存门禁(新增):质量门禁通过后,增加留存风险自检。每个平台版本的正文检查"情绪刺激密度是否因改写而降低"——若改写后连续 300 字无情绪刺激,标记为该平台的留存风险,回炉到对应通用-输出{平台名}版重新改写。<br>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 之前,必须先完成以下三项审计。任一项不满足 → 不得宣告完成,必须回到对应阶段补做:

| 审计项 | 检查内容 | 通过条件 |

|--------|---------|---------|

| 调用完整性审计 | 对比 requiredCalledSkillscalledSkills,识别 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 门禁
  • 最后执行分语言终检、日志收口与摘要输出

<!-- ===== Layer 2: 项目级缓存 ===== -->

平台 POV 契约与连续性门禁(强制)

  • 批量多章任务中,每个平台都必须先锁定一份 platformPovContract;不得让每一章在分平台改写时临时重新决定“这章用第一人称还是第三人称更顺手”。
  • platformPovContract 至少要写清:expectedlangbaselineSourceswitchPolicy;需要断点恢复时,还应补充 inheritedFromChapterNo 或等价来源。
  • 若目标平台目录下已经存在同书、同分部 / 分卷的已完成前序章节,必须先读取最近一个已通过章节;必要时补看最近 2–3 章,确认该平台既有 POV 链路后再续写。
  • 若目标平台此前没有历史链路,则允许用“本批次该平台首个已通过章节”建立契约;一旦建立,后续连续章节全部继承,直到命中合法切换条件。
  • 只有三类场景允许切换:源章本来就是视角切换章 / 多视角连续章;用户明确要求该平台做人称迁移;历史平台链路本来就是另一套 POV,本次只是沿既有链路续写。
  • 命中合法切换时,必须把 switchApproved=trueswitchReasonswitchPlan 写入日志;没有这些字段,就一律按未授权漂移处理。
  • 第三人称链路若在正文区块里出现对话外 我 / 你 / 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 次对应 通用-输出*版
  • 只要 missingCalledSkills 非空,本次任务必须判定为未完成并继续回炉;不得进入“完成摘要”。

先推演后落笔(强制)

  • 每个“章节 × 平台”节点,在真正写入平台正文前,都必须先形成一份平台化推演草图
  • 这份草图只服务执行,不得写进最终正文文件;其最低内容至少包括:
  • 原章主信息清单(极短要点)
  • 平台风格约束清单
  • 本平台当前 POV 契约(第一 / 第二 / 第三人称、叙述距离、是否允许切换)
  • 标题倾向与钩子倾向
  • 计划采用的降重动作(如结构重排、对白改写、承载方式替换、节奏改造)
  • 哪些信息必须保留,哪些表达必须换壳
  • 禁止跳过推演直接落笔;也禁止先写一份中性底稿,再批量轻改成各平台版本。
  • 推演可以通过顺序思考、结构草图、平台差异清单或等价的内部执行方式完成,但都必须满足“先锁平台风格,再进入正文改写”。

执行纪律(强制)

  • 一旦开始执行,必须按“输入归一化 → 任务队列 → 平台化推演 → 分平台落盘 → 门禁回炉 → 分语言终检 → 摘要收口”的顺序一气跑完。
  • 若源稿明显带重平台腔或关键事件 / 情绪主轴不稳,必须先插入“母稿提纯”节点,不得把问题原样复制到所有平台分支。
  • 除非命中“无法解析 chapterNo / 无法稳定推断 分部目录分卷目录 / 用户只给正文且必要元数据缺失 / 真实执行错误导致下一步无法推进”这四类场景,否则禁止中途停下来等用户说“继续”。
  • 若一次处理多章,必须先完成批量预检与任务队列,再按“章节为外层、平台为内层”滚动推进;不得把所有章节 × 平台分支一次性全部铺开。- 多章编排的逐章完整性门禁:多章编排允许分相位推进(批量预检→逐章提纯→逐章适配→逐章落盘→逐章门禁),但每章必须独立完整执行全部 15 步闭环。禁止用一份提纯母稿覆盖多章、禁止用一次性适配推演代替逐章推演、禁止把多章平台版本的一次性落盘当作门禁已通过。任一章的任一"章节×平台"节点漏执行任一环节,整批不得宣告完成。- 默认并发上限必须保守:最多同时推进 2 个章节任务、每章最多 2 个平台分支、全局活跃平台分支总数不超过 4;一旦环境拥塞或日志冲突风险升高,必须自动降级。
  • 断点恢复的最小复用单位必须是“章节 × 平台”节点;已写入且门禁完整通过的节点应直接跳过,不得整批重做。
  • 同一平台连续章的 POV 一旦锁定,必须优先继承最近一个已通过节点;不得让不同章节各自“重新选择更顺手的人称”。
  • 每个平台节点在进入相似度终检前,必须先通过“模板句污染清零检查”;若命中污染短语族,禁止进入相似度终检。
  • 若命中“AI 生成能力不可用”场景,必须执行:停止正文生产 -> 记录阻塞原因 -> 输出最小恢复动作;不得继续“先脚本生成再补救”。

本层职责

  • 统一承接多平台输出 SOP 的共性编排逻辑。
  • 统一承接章节队列、并行边界、断点恢复、日志字段、门禁脚本、相似度规则与摘要模板。
  • 统一锁定并维护各平台连续章节的 POV 契约,阻止未授权的人称漂移与叙述主体漂移。
  • 统一要求“先平台化,再降相似度;先风格门禁,再相似度终检”。
  • 统一要求“先锁平台风格,再做风格内降重”,禁止先写中性底稿再批量轻改分发。

平台正文命名规则(强制)

  • 各平台派生正文文件名默认不带日期,沿用既有章节号、平台目录和路径映射规则命名。
  • 日期只用于与这些平台正文配套的审阅报告、书评等派生产物,不用于多平台正文文件本体。
  • 除非用户明确要求另存日期归档副本,否则不得把平台正文批量改成日期版文件名。

强制要求

  • 默认必须落盘,不得只给聊天稿。
  • 默认必须写执行日志,并支持从未完成日志续跑。
  • 相似度只按语言内比较;禁止跨语言对比。
  • 平台化风格必须先于降重,不允许先写中性底稿再轻改分发。
  • 任一目标平台未通过门禁,不得宣称本次 SOP 完成。
  • 日志字段、门禁报告路径、失败节点与下一步动作必须能直接支撑断点恢复;不得把关键状态只留在聊天输出里。
  • 反注水、文本质量与风格一致性都是终检前置门禁;任一不通过,都必须先回到对应平台分支回炉。
  • POV 连续性也是终检前置门禁;任一平台出现未授权的人称漂移,都必须先回到该平台分支修复,之后才允许进入终检。
  • 标题门禁必须同时满足:不与源章同名、同章平台间不重名、不得跨章复用旧标题骨架只改编号。
  • 任一平台分支不得只凭“看起来够长”或“作者有话说应该差不多”放行;正文与作者有话说字数必须通过脚本实测并写入日志字段。
  • 命中本 Skill 时,通用-提纯多平台母稿通用-多平台小说适配 都是必经节点;不得跳过。
  • 章节定位必须兼容“路径输入”和“部/卷/章输入”两种模式;部/卷/章输入默认定位到 小说正文/
  • 默认平台集合必须从项目根目录 Agents.md平台POV基线表 章节动态读取,不得把固定平台列表写死在执行器里;若 Agents.md 或其 平台POV基线表 章节不存在,必须提示用户创建后停止,不得继续执行。
  • 反注水与无意义字符检查属于硬门禁;任一异常必须回炉,不得以“相似度已过线”为由放行。
  • 流程停止条件必须满足:全部指定平台落盘 + 全部门禁通过 + 可续跑日志完整。
  • 调用完整性属于硬门禁:requiredCalledSkillscalledSkills 必须对齐,且 missingCalledSkills 为空。
  • POV 契约字段属于硬门禁:日志中必须能直接回答“这个平台当前应使用哪套 POV、继承自哪里、是否允许切换”;答不出来就视为不可恢复、不可放行。
  • 模板句污染属于硬门禁:凡出现“抽象自述 + 动词模板 + 口径名词”句群或污染短语族,必须判定失败并回炉;不得作为“风格差异化”手段保留。
  • token 使用纪律属于硬门禁:禁止用脚本批量改写正文去“节省调用”或“绕过限额”;该行为应直接记为违规,不得进入完成摘要。

完成检查

  • 是否已读取 3 份 references
  • 是否已建立单章 / 多章任务队列
  • 是否已在平台分发前完成字数可行性判断,并对不足平台提前写入 blocked_word_count_insufficient
  • 是否已为每章维护日志并记录平台门禁
  • 是否已为每个平台节点显式运行 scripts/platform_validate.ps1,并把正文 / 作者有话说门禁结果写回日志
  • 是否已为每个平台锁定 platformPovContract,并确认其继承来源或批准切换理由
  • 是否已对每个平台节点执行 POV 门禁(或对视角切换章做了人工复核),并把结果写回日志
  • 是否已完成分语言相似度终检
  • 是否已按“中文平台两两 + 中文对源章、英文平台两两”完成 < 0.20 相似度门禁
  • 是否已执行反注水与无意义字符质量门禁,并在失败时回炉
  • 是否已确认每章每平台均为独立 .md 文件,且仅包含标题、正文与 ## 作者有话说
  • 是否已输出调用审计:requiredCalledSkillscalledSkillsmissingCalledSkills
  • 是否已确认 missingCalledSkills 为空(否则不得宣告完成)
  • 是否只输出摘要而未泄露正文
  • 是否已确认所有平台稿不存在污染短语族(如“对照项落在”“先把同一句话拆碎”“先把顺滑的解释拆开”“只求能追溯/复核/对得上”)
  • 是否已确认不存在未授权的“前几章第三人称、后几章突然第一人称”式 POV 漂移
  • 若执行中出现 AI 不可用,是否已按 blocked_ai_unavailable 中止并写入恢复指引(而不是脚本兜底生成)

How to use it

Copy the folder

Take lornshrimp/通用-多平台输出编排 from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.