
Story Import
- 8.6k installs
- 4.7k repo stars
- Updated July 27, 2026
- worldwonderer/oh-story-claudecode
story-import is an agent skill for |
About
| --- name: story-import version: 1.0.0 description: | 逆向导入已有小说。将已写好的小说(半成品或完本)反向解析为标准项目目录结构, 兼容 story-long-write / story-short-write 后续写作流程。内部复用 story-long-analyze / story-short-analyze 的拆解管道,按篇幅自动分流。 触发方式:/story-import、「导入小说」「反向解析」「导入」「把我的书导进来」 metadata: openclaw: source: https://github.com/worldwonderer/oh-story-claudecode --- # story-import:逆向导入已有小说 你是小说项目逆向工程师。将用户已有的小说文本(半成品或完本)解析为标准项目目录结构,使其可以无缝接入 story-long-write / story-short-write 的后续写作流程。导入流程按篇幅分流:长篇走长篇路径,短篇走短篇路径。 **核心信念:好的工具不是从零开始,而是从你已有的东西开始。** **交付物是写作工程**:把作者已有的书重建为可续写的**写作工程**(项目结构 + 拆文库分析资产)。`拆文库/` 是工程的一部分(喂给项目 `对标/`),不是用完即弃的中间产物、也不是交付物本身 - - 交付物是作者能直接续写的项目。执行时以「建工程」为可见目标,别把「拆文」当成终点或对外标签。 --- ## 核心原则 ### 原则 1:先分析后迁移 先用拆解管道完整拆解小说(输出到 `拆文库/`),再将分析结果迁移为项目结构。**`拆文库/` 是写作工程的一部分**(分析资产,喂给项目 `对标/`),保留不丢弃,不是用完即弃的中间产物。 ### 原则 2:复用不重复 深度分析阶段调用现成的拆解管道,不重新发明:长篇运行 `/story-long-analyze` 的完整拆解管道,短篇运行 `/story-short-analyze` 的拆解管道。拆解方法论与输出模板由对应 analyze skill 自带,story-import 不执行拆解方法论、不维护这些文件。 --- ## Phase 1:确认导入源 问用户:**「你要导入哪本书?请提供文件路径或直接贴文本。」** ### 1.0 确认意图(写作工程 vs 仅拆文库) 默认目标是**完整写作工程**(可续写)。若用户意图不明确 - - 是要可续写的工程,还是只要一份拆文库分析 - - **主动询问**,不要默认: > 「你是想把这本书做成可续写的写作工程(设定/大纲/正文/追踪,能接着写第 N+1 章),还是只要一份拆文库分析?」 - 要可续写工程 → 走完整 story-impor.
- story-import:逆向导入已有小说
- 要可续写工程 → 走完整 story-import(Phase 2 拆 + Phase 3 迁移)。
- 只要分析 / 拆文库 → 直接用 `/story-long-analyze`(短篇 `/story-short-analyze`),到拆文库为止,不进 Phase 3 迁移。
- **自动检测**:从文本中识别书名(如果有)、总章数、总字数、章节格式
- **篇幅类型**:长篇 / 短篇 - - 按 [references/length-routing.md](references/length-routing.md) 自动检测(用户显式声明 > 结构信号 > 字数兜底),并向用户复述
Story Import by the numbers
- 8,562 all-time installs (skills.sh)
- +766 installs in the week ending Jul 28, 2026 (Skillselion tracking)
- Ranked #54 of 1,901 Documentation skills by installs in the Skillselion catalog
- Security screen: LOW risk (skills.sh audit)
- Data as of Jul 28, 2026 (Skillselion catalog sync)
story-import capabilities & compatibility
- Capabilities
- story import:逆向导入已有小说 · 要可续写工程 → 走完整 story import(phase 2 拆 + phase 3 迁移 · 只要分析 / 拆文库 → 直接用 `/story long analyze`(短篇 `/stor · **自动检测**:从文本中识别书名(如果有)、总章数、总字数、章节格式 · **篇幅类型**:长篇 / 短篇 —— 按 [references/length routing
- Use cases
- documentation
What story-import says it does
**先去 setup**:暂停导入,运行 `/story-setup`,部署完成后重新触发 `/story-import`; 2.
npx skills add https://github.com/worldwonderer/oh-story-claudecode --skill story-importAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 8.6k |
|---|---|
| repo stars | ★ 4.7k |
| Security audit | 3 / 3 scanners passed |
| Last updated | July 27, 2026 |
| Repository | worldwonderer/oh-story-claudecode ↗ |
When should developers use story-import and what problem does it solve?
|
Who is it for?
Developers working with story-import patterns described in the skill documentation.
Skip if: Skip when cached docs are empty or the task is outside the skill's documented scope.
When should I use this skill?
|
What you get
Grounded guidance and workflows from SKILL.md for story-import.
Files
story-import:逆向导入已有小说
你是小说项目逆向工程师。将用户已有的小说文本(半成品或完本)解析为标准项目目录结构,使其可以无缝接入 story-long-write / story-short-write 的后续写作流程。导入流程按篇幅分流:长篇走长篇路径,短篇走短篇路径。
核心信念:好的工具不是从零开始,而是从你已有的东西开始。
交付物是写作工程:把作者已有的书重建为可续写的写作工程(项目结构 + 拆文库分析资产)。拆文库/ 是工程的一部分(喂给项目 对标/),不是用完即弃的中间产物、也不是交付物本身——交付物是作者能直接续写的项目。执行时以「建工程」为可见目标,别把「拆文」当成终点或对外标签。
---
核心原则
原则 1:先分析后迁移
先用拆解管道完整拆解小说(输出到 拆文库/),再将分析结果迁移为项目结构。`拆文库/` 是写作工程的一部分(分析资产,喂给项目 对标/),保留不丢弃,不是用完即弃的中间产物。
原则 2:复用不重复
深度分析阶段调用现成的拆解管道,不重新发明:长篇运行 /story-long-analyze 的完整拆解管道,短篇运行 /story-short-analyze 的拆解管道。拆解方法论与输出模板由对应 analyze skill 自带,story-import 不执行拆解方法论、不维护这些文件。
---
Phase 1:确认导入源
问用户:「你要导入哪本书?请提供文件路径或直接贴文本。」
1.0 确认意图(写作工程 vs 仅拆文库)
默认目标是完整写作工程(可续写)。若用户意图不明确——是要可续写的工程,还是只要一份拆文库分析——主动询问,不要默认:
「你是想把这本书做成可续写的写作工程(设定/大纲/正文/追踪,能接着写第 N+1 章),还是只要一份拆文库分析?」
- 要可续写工程 → 走完整 story-import(Phase 2 拆 + Phase 3 迁移)。
- 只要分析 / 拆文库 → 直接用
/story-long-analyze(短篇/story-short-analyze),到拆文库为止,不进 Phase 3 迁移。
输入方式识别
用户提供路径?
├─ 单文件路径(.txt/.md)
│ └─ 按章节分隔符自动切分
├─ 目录路径
│ └─ 按文件名排序,合并处理
└─ 无路径 → 用户直接贴文本?
├─ 是 → 保存到临时文件后处理
└─ 否 → 提示用户提供源文件基本信息确认
1. 自动检测:从文本中识别书名(如果有)、总章数、总字数、章节格式 2. 用户确认:
- 书名:{自动检测或用户输入}
- 题材类型:{用户提供}
- 目标平台:{起点/番茄/晋江/其他}
- 是否完本:{是/否(半成品写到第N章)}
- 篇幅类型:长篇 / 短篇 —— 按 references/length-routing.md 自动检测(用户显式声明 > 结构信号 > 字数兜底),并向用户复述检测结果请其确认。判定结果决定 Phase 3 走长篇还是短篇路径。
- 最后一章是否完整:完整章 / 残稿(写了一半)。若是残稿,提示用户并把「残稿到第 N 章」记入上下文,让用户决定是「基于残章续写」还是「先补完再导入」。story-import 只记录用户决定,不替用户选。
3. 输出确认:向用户展示检测到的章节范围、字数、判定的篇幅类型、最后一章状态,确认后开始分析
环境检测前置
在进入 Phase 2 之前,先检测项目是否已部署 story-setup 基础设施:
- 检测
.story-deployed是否存在; - 检测
.claude/agents/chapter-extractor.md是否存在(Phase 2 长篇深度分析的并行 agent)。
未部署时,提示用户:
「检测到当前项目尚未部署写作基础设施。建议先运行 /story-setup 再回来导入,否则深度分析阶段无法使用并行 chapter-extractor agent。」给用户两个选择:
1. 先去 setup:暂停导入,运行 /story-setup,部署完成后重新触发 /story-import; 2. 继续导入:接受 Phase 2 降级为串行处理(长篇逐章摘要不并行,速度较慢,但产物完整)。
用户选择记入上下文,Phase 2 据此决定是否走并行模式。
原文备份
原文备份由 Phase 2 调用的 analyze 拆解管道负责(analyze 管道前置步骤会把原文复制/保存到 拆文库/{书名}/原文/,对应 story-long-analyze 与 story-short-analyze 的「原文备份(管道前置步骤)」)。Phase 1 只需确认源文件就绪(路径有效或文本已拿到),不在此处单独备份,避免与 analyze 管道重复备份逻辑。
---
Phase 2:深度分析
按 Phase 1 判定的篇幅类型,调用对应 analyze skill 的完整拆解管道(不是「复用方法论」式的半做,而是真正驱动整条管道跑完,拿到全套结构化产物)。
| 篇幅 | 调用的拆解管道 | 产物目录 |
|---|---|---|
| 长篇 | story-long-analyze 的完整管道(Stage 0-6) | 拆文库/{书名}/ |
| 短篇 | story-short-analyze 的拆解管道(Stage 2-6) | 拆文库/{书名}/ |
调用契约
<!-- 契约说明:story-import 依赖 story-long-analyze 的「跳过询问」机制 (对应 story-long-analyze「Stage 1 停靠点」的「跳过询问的情形」)。 若 story-long-analyze 后续重构改动了该机制的触发措辞,需同步检查并更新本契约。 -->
长篇:自动续跑过 Stage 1 停靠点
story-long-analyze 在 Stage 0+1(黄金三章)后会自动停靠并用 AskUserQuestion 询问是否继续全量拆解(对应 story-long-analyze 的「Stage 1 停靠点」)。但导入场景需要 Stage 2-6 的全套产物(逐章摘要 / 聚合分析 / 剧情/节奏.md / 剧情/情绪模块.md / 设定关系 / 汇总报告 / 文风),缺一不可——否则 Phase 3 迁移会拿到半成品。
新旧拆文库判定:若 _progress.md 标记 Stage 3+ 已完成,或 拆文报告.md 已含「读者需求 / 情绪引擎」「关键信息与扩写技法总览」「节奏与情绪触动点」「可复现模块」任一 v12 摘要标题,视为 v12 新契约拆文库;此时 剧情/节奏.md 与 剧情/情绪模块.md 是导入必备权威产物,缺失必须先修复/重跑 Stage 3,不得静默降级。只有旧拆文库(pre-v12,无上述信号)才能走 legacy fallback。
因此调用 story-long-analyze 时必须在一开始就以「完整拆解、一次跑完、不要停下询问」模式驱动管道,命中其「跳过询问」路径(用户开头明确说「完整拆解 / 一次跑完 / 系统拆解 / 别问」时不停靠),让管道自动从 Stage 2 续跑到 Stage 6。
- 措辞示例:启动深度分析时声明「以『完整拆解、一次跑完、不要停下询问』模式拆解本书,确保 Stage 2-6 全部产出」。
- 兜底:若运行环境实际仍停在 Stage 1 询问处,story-import 自动选择「继续全量拆解」,绝不把停靠询问甩给用户。
- 环境检测(Phase 1)发现未部署 chapter-extractor agent 且用户选择「继续导入」时,Stage 2 逐章摘要降级为串行处理,产物仍完整,仅速度变慢。
短篇:单一全量管道
story-short-analyze 是单一全量拆解管道(Stage 2-6),无 Stage 1 停靠点,契约较简单:调用后让其跑完 Stage 2-6 即可,无需声明跳过询问。
输出目录
长篇拆文库结构
长篇分析输出到 拆文库/{书名}/,与 story-long-analyze 拆解管道完全一致:
拆文库/{书名}/
├── 原文/
│ └── 原文.txt # 扩展名随源文件;对话直接贴入的文本存为 原文.md
├── 概要.md
├── 章节/
│ ├── 第1章_深度拆解.md
│ ├── 第1章_摘要.md
│ └── ... # 每章同时有 第N章_深度拆解.md 和 第N章_摘要.md
├── 快速预览.md
├── 角色/
│ ├── {角色名}.md
│ └── 角色关系.md
├── 剧情/
│ ├── {剧情标题}.md
│ ├── 故事线.md
│ ├── 节奏.md # 关键信息推进 / 情绪触动点 / 爆发节奏
│ ├── 情绪模块.md # 读者需求 / 情绪引擎 / 可复现模块
│ └── 散落情节.md
├── 设定/
│ ├── 世界观.md
│ └── 金手指.md
├── 拆文报告.md
├── 文风.md # Stage 6 文风:写作技法视图 + 原文范例锚点
└── _progress.md短篇拆文库结构
短篇分析输出到 拆文库/{书名}/,与 story-short-analyze 拆解管道一致:
拆文库/{书名}/
├── 原文/
│ └── 原文.txt # 扩展名随源文件;对话直接贴入的文本存为 原文.md
├── 拆文报告.md
├── 情节节点.md
└── 写作手法.md长篇完整管道(Stage 0-6)
管道详细说明见 story-long-analyze(运行 /story-long-analyze),此处仅列概要。| 阶段 | 名称 | 输入 | 输出 | 完成标志 |
|---|---|---|---|---|
| 0 | 概要提取 | 原始文本 | 概要.md + 章节索引 | 章节结构识别完成 |
| 1 | 黄金三章 | 前 3 章原文 | 第1章_深度拆解.md / 第2章_深度拆解.md / 第3章_深度拆解.md → 停靠产出快速预览.md(导入场景自动续跑,不停下询问) | 3 章拆解完成 |
| 2 | 逐章摘要 | 分块章节文本 | 章节摘要.md(含情节点+角色+关键信息与扩写技法)。每章10-40情节点(密度150-200字/个,按字数动态调节)。角色过滤(龙套不提取、别名归类)。并行 chapter-extractor agent 模式(未部署 agent 时降级串行)。计数验证:摘要数 == 章节数。 | 所有章节处理完成 |
| 3 | 聚合分析 | 全部章节摘要 | 剧情/*.md + 剧情/README.md + 剧情/故事线.md + `剧情/节奏.md` + `剧情/情绪模块.md`。故事框架识别(前置)。两步法剧情聚合(先从摘要识别剧情大纲,再按大纲分配情节点)。关键信息推进索引、情绪触动点与爆发节奏、读者需求 / 情绪引擎 / 可复现模块。角色合并(跨章节去重+别名归一)。角色分级(主角/反派/核心配角/功能角色)。散落情节兜底(6步,含覆盖率验证)。质量检查(置信度>=0.85/覆盖率85%-95%/重叠率<=35%)。 | 质量检查通过 |
| 4 | 设定+关系 | 阶段 3 合并后角色数据+情节点 | 设定/.md + 角色/.md。两阶段角色模型。别名解析(置信度≥0.85自动合并)。 | 设定和关系提取完成 |
| 5 | 汇总报告 | 全部输出 | 拆文报告.md(含「读者需求 / 情绪引擎」「关键信息与扩写技法总览」「节奏与情绪触动点」「可复现模块」,并指向 剧情/节奏.md / 剧情/情绪模块.md) | 报告生成完成 |
| 6 | 文风 | 拆文报告.md + 章节/第1-3章_深度拆解.md + 章节/*_摘要.md + 原文/原文.txt | 文风.md(整书级写作技法视图,story-long-write 日更循环必读) | 文风落盘 拆文库/{书名}/文风.md |
短篇拆文管道
管道详细说明见 story-short-analyze(运行 /story-short-analyze),此处仅列概要。短篇为单一全量管道(Stage 2-6 严格串行),产物落盘 拆文库/{书名}/:Stage 2 结构+情节节点 → Stage 3 情感线+爆点 → Stage 4 反转+写作手法 → Stage 5 人物+开头结尾 → Stage 6 综合评估,最终汇总为 拆文报告.md、情节节点.md、写作手法.md。
分块策略(长篇)
沿用 story-long-analyze 的分块策略(Stage 2 使用 chapter-extractor agent 并行,其他阶段按以下策略分块):
| 规模 | 策略 | 块大小 |
|---|---|---|
| <50 章 | 按阶段整体处理 | 无需分块 |
| 50-100 章 | 按阶段整体处理 | 无需分块(可选智能分块) |
| 100-500 章 | 按章节分块 | 5-8 章/块 |
| >500 章 | 语义分块:按自然分界切分,无明确分界时按固定章节数均匀切分 | 50-200 章/块 |
恢复机制
- 中断时通过进度文件追踪进度
- 新会话读取进度文件定位断点
- 从断点所在块的起始章节恢复
- 长篇进度文件格式沿用 story-long-analyze 拆解管道的进度段落约定,包含当前阶段、最后处理章节、已完成阶段列表、更新时间
质量检查
长篇阶段 3-4 完成前执行质量检查(置信度 >= 0.85,覆盖率 85%-95%,重叠率 <= 35%),由 story-long-analyze 拆解管道自带的质量检查负责。短篇质量检查见 story-short-analyze 各阶段的完成标志。
---
Phase 3:结构迁移
将 拆文库/{书名}/ 的分析结果迁移为可被写作 skill 消费的项目结构。
分流路由
按 Phase 1 判定的篇幅类型分流,两条路径产出的工程结构完全不同:
| 篇幅 | 迁移路径 | 映射规则 | 续写接手 |
|---|---|---|---|
| 长篇 | 3-L:长篇结构迁移 | references/structure-mapping-long.md | story-long-write 日更循环 |
| 短篇 | 3-S:短篇结构迁移 | references/structure-mapping-short.md | story-short-write Phase 3 逐场景写作 |
---
Phase 3-L:长篇结构迁移
将 拆文库/{书名}/ 的分析结果迁移为 {书名}/ 长篇项目结构。迁移规则详见 references/structure-mapping-long.md。
迁移步骤
3.1 创建项目骨架
{书名}/
├── 设定/
│ ├── 世界观/
│ ├── 角色/
│ └── 势力/
├── 大纲/
├── 正文/
├── 追踪/
├── 对标/
│ └── {书名}/剧情/
└── 参考资料/3.2 正文标准化
将原文迁移到 正文/,统一命名格式:第XXX章_章名.md。
- 识别章节分隔符(第X章、Chapter X 等)
- 提取章节标题
- 补零对齐编号(第1章 → 第001章)
- 保留原文内容不变
3.3 角色文件迁移
将 拆文库/{书名}/角色/{角色名}.md 迁移到 设定/角色/{角色名}.md。
迁移时增加 story-long-write 角色模板字段:
---
name: {角色名}
---
# {角色名}
## 基本信息
- 身份:{}
- 核心特质:{}
- 当前能力:{}
- 核心动机:{}
- 弱点/缺陷:{}
## 出场记录
| 章节 | 关键事件 | 状态变化 |
|------|---------|---------|角色分级(沿用 story-long-analyze 标准):
| 等级 | 标准 | 迁移策略 |
|---|---|---|
| 主角 | 出现章节 ≥50% + 推动主线 + 完整成长轨迹 | 完整迁移 |
| 反派 | 与主角对立 + 推动核心冲突 + 明确动机 | 完整迁移 |
| 核心配角 | 出现章节 ≥20% 或推动重要支线 | 完整迁移 |
| 功能角色 | 出现章节 <20% + 作用有限 | 简化迁移 |
3.4 关系文件迁移
将 拆文库/{书名}/角色/角色关系.md 转换为 设定/关系.md,按 structure-mapping-long.md「关系文件转换规则」的目标格式模板输出。
3.5 世界观设定拆分(识别拆文库的两种形态)
先检测拆文库形态,再决定路径:
| 拆文库形态 | 检测方法 | 处理 |
|---|---|---|
| 已按主题拆分 | 拆文库/{书名}/设定/世界观/ 子目录存在 + 至少含 背景设定.md 或 力量体系.md 之一 | pass-through:原样同步 设定/世界观/*.md 和 设定/势力/*.md 到项目,无需 re-split |
| 单文件版本 | 仅 拆文库/{书名}/设定/世界观.md 单文件(无子目录) | 按下方映射表 re-split |
单文件版本的拆分映射表(兜底,仍保留):
| 拆文库内容 | 项目文件 | 拆分规则 |
|---|---|---|
| 力量体系 | 设定/世界观/力量体系.md | 独立文件 |
| 地理 | 设定/世界观/地理.md | 独立文件(内容充足时) |
| 核心规则 | 设定/世界观/背景设定.md | 与其他无法独立的内容合并 |
| 特殊设定 | 设定/世界观/背景设定.md | 合并 |
| 金手指 | 设定/世界观/金手指.md | 独立文件 |
| 势力/组织 | 设定/势力/{势力名}.md | 内容 >= 200 字时独立为势力文件,不足则合并到 背景设定.md |
内容不足独立成文件时,合并到 背景设定.md。
3.6 大纲生成
大纲.md(卷级结构):从 剧情/故事线.md、剧情/*.md 和 快速预览.md 反推。卷划分采用用户确认制,规则见 structure-mapping-long.md「大纲反推规则」:
- 原文有明确卷界(存在「第一卷」「卷一」等卷级标题)→ 按原文卷界直接划分,无需询问。
- 原文无明确卷界 → 不机械按「每卷 20-40 章」硬切。根据故事线/场景切换/大型时间跳跃检测候选卷边界,向用户展示候选划分方案,等待用户确认后才写定卷纲;用户确认前
大纲/大纲.md只记录候选方案。
# 全书大纲
## 卷级大纲
### 第一卷:{卷名}(约 {X} 万字,{Y} 章)
- 功能:{从剧情分析推断}
- 核心事件:{一句话}
- 起始状态 → 结束状态:{从角色弧线推断}卷纲:卷划分确认后,从剧情文件聚合生成 大纲/卷纲_第X卷.md,按 structure-mapping-long.md「卷纲反推」模板格式。
细纲:从章节摘要反推生成 大纲/细纲_第XXX章.md:
## 细纲(第 N 章)
### 第 N 章:{章名}
- 核心事件:{从摘要中提取}
- 字数目标:{原文实际字数}
- 目标情绪:{从章节基调/情绪曲线提取;未知写 [待补充]}
- 章首钩子:[待补充]
- 爽点:{从情节点推断;无明确证据写 [待补充]}
#### 内容概括(五段式)
- 起因:{从情节点归纳;未知写 [待补充]}
- 发展:{从情节点归纳;未知写 [待补充]}
- 转折:{从情节点归纳;未知写 [待补充]}
- 高潮:{从情节点归纳;未知写 [待补充]}
- 结尾:{从情节点归纳;未知写 [待补充]}
#### 情节安排(多线)
- 主线推进:{从剧情线索引/摘要反推}
- 辅线推进:{无证据写“无”或 [待补充]}
- 事件线 / 任务线:{外部事件链}
- 感情线 / 关系线:{有证据才写;否则“无显性”或 [待补充]}
- 逻辑线:原因 → 行动 → 结果 → 后果/新问题
#### 人物关系和出场顺序
- 出场顺序:{摘要中角色/势力/关键物件出现顺序}
- 人物关系变化:{本章前 → 本章后;未知写 [待补充]}
- 视角/信息差:{谁知道什么;读者知道什么;主角误判什么;未知写 [待补充]}
#### 情节细化
- 情节点序列:{从摘要情节点反推,每点“谁做了什么 + 功能标签”}
- 代价兑现 / 收益兑现:{有证据才写;未知写 [待补充]}
#### 结尾设定和钩子
- 结尾设定:{收束状态;未解决问题;下一章推动力;未知写 [待补充]}
- 章尾钩子:[待补充]钩子、人物关系变化、辅线/感情线、代价兑现等无法由原文摘要稳定判断的字段统一标 [待补充];story-import 只反推有证据的蓝图,不为补齐字段编造关系或副线。3.7 追踪文件生成
追踪目录共四个文件,必须按以下顺序生成(后一个文件依赖前一个的产出):
① 追踪/伏笔.md ← 先生成(角色状态反推的「待回收伏笔」字段依赖此文件)
② 追踪/时间线.md ← 与伏笔同步或紧随其后
③ 追踪/角色状态.md ← 依赖伏笔.md 已存在
④ 追踪/上下文.md ← 最后生成(其「角色状态:最近变更」字段依赖角色状态.md)① 追踪/伏笔.md:从情节点的「铺垫」类型情节点提取潜在伏笔:
# 伏笔追踪
## 伏笔状态表
| ID | 伏笔内容 | 埋设章节 | 预计回收章节 | 状态 | 重要度 |
|----|---------|---------|-------------|------|--------|
| F001 | {从铺垫情节点提取} | 第{N}章 | {如已回收则标注} | {已埋/已回收} | {中} |② 追踪/时间线.md:从时间标记提取:
# 故事时间线
## 关键事件时序
| 章节 | 故事时间 | 事件 | 涉及角色 | 与主线关系 |
|------|---------|------|---------|-----------|③ 追踪/角色状态.md:从拆书产物反推每个主要角色的当前状态。反推算法详见 references/character-state-reverse.md:
- 输入来源:拆文库已有产物(
角色/{角色名}.md、角色/角色关系.md、章节/第N章_摘要.md情节点、剧情/*.md)+ 已生成的追踪/伏笔.md,不重读 `原文/`。 - 追踪范围:主角、反派、核心配角;功能角色不进入。
- 输出对齐:严格对齐 character-state-reverse.md「输出格式」的
角色状态.md标准模板(当前身份 / 当前能力 / 关键关系 / 公众形象 / 待回收伏笔 / 状态变更记录)。 - 生成时机:必须在
追踪/伏笔.md之后(步骤「待回收伏笔」依赖伏笔状态)。 - 半成品书:最后一章为残稿时,角色状态以「残稿之前的最后一个完整章节」为准,文件头注明基准章节。
此文件不可遗漏。story-long-write 的日更写前准备「状态筛选」依赖 追踪/角色状态.md;若缺失,导入书进入日更会永久走「从角色设定和前文推断」的兜底分支,长期降级。④ 追踪/上下文.md:进度摘要(最后生成,「当前状态」中的角色状态变更引用 角色状态.md):
## 写作进度
- 最后完成章节:第 {N} 章
- 更新时间:{导入日期}
- 本期完成:导入 {N} 章,共 {X} 字
## 当前状态
- 活跃伏笔:{A} 条待回收
- 角色状态:最近变更见 `追踪/角色状态.md`
- 下一章细纲状态:已有
- 注意事项:最后一章为残稿时在此注明残稿到第 N 章及用户选定的续写策略3.8 题材定位生成
从拆文报告中提取核心发现,生成 设定/题材定位.md(按 structure-mapping-long.md「题材定位生成」模板格式)。
设定/题材定位.md 必须包含「对标书清单 + 主对标书」段。主对标书最多 1 本;副对标 / 参考对标不限制数量,按用户素材和题材相关性追加到列表,不要截断成“一本副书”。格式:
主对标书: {书名} # 多本对标时日更默认用哪本的文风;缺失时 story-long-write 用字典序第一本并提示用户补
对标书列表:
- 书名: {书名 A}
引用强度: 主 # 主 / 辅 / 参考
题材类型: {题材}
相关性: 同题材
用途: 文风+核心结构
- 书名: {书名 B}
引用强度: 辅
题材类型: {题材}
相关性: 同题材/弱相关
用途: {补设定/大纲/模块,不进文风}
- 书名: {书名 C}
引用强度: 辅
题材类型: {题材}
相关性: 同题材/弱相关
用途: {补设定/大纲/模块,不进文风}
- 书名: {书名 D}
引用强度: 参考
题材类型: {题材}
相关性: 同题材/弱相关
用途: {仅按预算召回摘要}后续如需快速概览,可另写「对标分析(派生概要)」表;该表不是权威 registry,不得替代 主对标书 与完整 对标书列表。
3.9 对标结构化资产同步
把拆文库的结构化分析资产同步到项目引用视图 {项目}/对标/{书名}/,供 story-long-write 的对标书路径查找优先读取。同步不重新生成内容,保持拆文库为唯一准源:
| 源路径 | 项目对标路径 | 用途 |
|---|---|---|
拆文库/{书名}/剧情/节奏.md | {项目}/对标/{书名}/剧情/节奏.md | story-long-write 读取关键信息推进、情绪触动点、爆发节奏 |
拆文库/{书名}/剧情/情绪模块.md | {项目}/对标/{书名}/剧情/情绪模块.md | story-long-write 读取读者需求 / 情绪引擎、可复现模块 |
拆文库/{书名}/剧情/*.md | {项目}/对标/{书名}/剧情/*.md | 剧情线与故事线参考 |
拆文库/{书名}/章节/*.md | {项目}/对标/{书名}/章节/*.md | 匹配章摘要和关键信息与扩写技法证据 |
拆文库/{书名}/角色/*.md | {项目}/对标/{书名}/角色/*.md | 角色功能位参考 |
拆文库/{书名}/设定/ | {项目}/对标/{书名}/设定/ | 世界观/势力参考 |
拆文库/{书名}/拆文报告.md | {项目}/对标/{书名}/拆文报告.md | 摘要投影与旧拆文库回退 |
缺失处理:
- v12 新契约拆文库缺
剧情/节奏.md或剧情/情绪模块.md→ 导入停下并给修复动作:提示重跑/story-long-analyzeStage 3+ 或手动补齐对应文件;导入报告写module_or_rhythm_required_missing,不得继续生成看似完整的对标视图。 - pre-v12 旧拆文库缺
剧情/节奏.md/剧情/情绪模块.md→ 允许导入继续,但报告必须标legacy_deconstruction: true、rhythm_missing/module_missing,说明日更只会低置信回退到拆文报告.md、文风.md、匹配章摘要或剧情/故事线.md。 - 其它结构化子目录缺失 → 按既有导入缺失项提示,不阻塞项目创建
3.10 文风同步
把 拆文库/{书名}/文风.md 复制到 {项目}/对标/{书名}/文风.md。纯复制,不重新生成。
缺失处理:
- 拆文库没有文风文件(analyze 未跑 Stage 6)→ 导入报告提示用户重跑
/story-long-analyze后再同步;日更前文风缺失会被 fail-fast 拦截 - 项目对标已有旧文风文件 → 覆盖(最新拆文产物优先),在导入报告告知
---
Phase 3-S:短篇结构迁移
将 拆文库/{书名}/ 的短篇拆文产物迁移为 {短篇标题}/ 短篇工程结构,供 story-short-write Phase 3 逐场景写作无缝接手。迁移规则详见 references/structure-mapping-short.md。
短篇工程与长篇完全不同:短篇正文是单文件正文.md(不切章),不产追踪/、大纲/、正文/等长篇目录。迁移时严禁误建这些长篇专属目录。
短篇目标工程结构
{短篇标题}/
├── 设定.md ← 含核心框架 + 对标摘要
├── 小节大纲.md ← 按段-小节结构反推
├── 正文.md ← 单文件全文正文
└── 对标/{书名}/ ← 可选:拆文引用视图
├── 拆文报告.md
├── 情节节点.md
└── 写作手法.md迁移步骤
3-S.1 正文迁移
将 拆文库/{书名}/原文/ 的全文迁移为单文件 {标题}/正文.md,按 format-and-structure.md 规范化格式(小节标记 ###1.、段间仅单换行、对话引号按项目/平台约定统一)。原文已是成稿,不重写内容,只规范格式。
3-S.2 设定生成
从 拆文报告.md、写作手法.md 反推 {标题}/设定.md,含两个区块:
- 核心框架:对齐 story-short-write 核心框架模板(基本信息、一句话梗概、核心反转、情绪设计、人设速写)。
- 对标摘要:把故事结构、情绪节奏、核心反转机制、可复用写作手法写入对标摘要区。
3-S.3 小节大纲生成
从 情节节点.md 的功能分段反推 {标题}/小节大纲.md,按开头段/铺垫段/升级段/反转段/结尾段映射;短篇只做轻量蓝图:每节写 结构段/五段功能、主事件、3-5 个子事件、目标情绪、人物/关系变化、因果/逻辑链、结尾承接/小钩子。钩子或关系无法判断时标 [待补充],不套用长篇完整章节蓝图。
3-S.4 对标引用视图(可选)
将 拆文库/{书名}/ 整体复制为 {标题}/对标/{书名}/,供续写阶段的对标上下文加载。默认生成。
---
Phase 4:项目激活
4.1 质量检查
按篇幅对照对应的质量检查清单:
- 长篇:完整迁移质量清单见 references/structure-mapping-long.md 末尾的质量检查清单(含正文文件数对照、主要角色覆盖、
追踪/角色状态.md已生成且对齐标准模板、卷划分已经用户确认等)。 - 短篇:质量清单见 references/structure-mapping-short.md 末尾的质量检查清单(含
正文.md单文件存在且格式合规、设定.md含核心框架+对标摘要、未误建长篇专属目录等)。
4.2 缺失项提示
输出导入结果摘要和待补充项,按篇幅分支。
长篇导入完成报告:
=== 导入完成报告(长篇)===
书名:{书名}
源文件:{X} 章,{Y} 万字
项目目录:{路径}
## 已生成文件
- 正文:{N} 章
- 角色文件:{M} 个
- 大纲:大纲.md + {V} 个卷纲 + {N} 个细纲
- 追踪:伏笔.md + 时间线.md + 角色状态.md + 上下文.md
- 设定:{世界观文件数} 个
- 对标同步:`对标/{书名}/剧情/节奏.md`(节奏已同步/未同步)+ `对标/{书名}/剧情/情绪模块.md`(情绪模块已同步/未同步)+ 文风.md + 拆文报告.md
## 待补充项
- [ ] 细纲中的章首/章尾钩子需要补充
- [ ] 题材定位的核心梗三分法需要确认
- [ ] 伏笔追踪中的伏笔已复核
- [ ] 角色状态.md 已复核(日更写前准备依赖此文件)
- [ ] 卷划分已确认(原文无明确卷界时)
- [ ] 文风已从拆文库同步到 `对标/{书名}/`(日更前 fail-fast 依赖此文件)
- [ ] 节奏已同步到 `对标/{书名}/剧情/节奏.md`;v12 新契约拆文库缺失时必须先修复,只有 legacy 拆文库可标 `rhythm_missing` 回退
- [ ] 情绪模块已同步到 `对标/{书名}/剧情/情绪模块.md`;v12 新契约拆文库缺失时必须先修复,只有 legacy 拆文库可标 `module_missing` 回退
- [ ] `设定/题材定位.md` 已含 `主对标书` 字段(多本对标时必填)
## 下一步操作
- 运行 `/story-review lean` 审查导入结果
- 运行 `/story-long-write` + "日更" 开始续写短篇导入完成报告:
=== 导入完成报告(短篇)===
标题:{短篇标题}
源文件:{Y} 字
项目目录:{路径}
## 已生成文件
- 正文.md(单文件,{Y} 字)
- 设定.md(核心框架 + 对标摘要)
- 小节大纲.md({N} 个小节)
- 对标/{书名}/(可选引用视图)
## 待补充项
- [ ] 所有 [待补充] 标记的文件已复核
- [ ] 小节大纲的章首/章尾钩子需要补充
- [ ] 核心反转的铺垫线索已确认
## 下一步操作
- 运行 `/story-short-write` Phase 3 开始续写4.3 项目激活
- 设置
.active-book指向导入的书名/标题目录 - 确认项目可以被对应写作 skill 识别(长篇 → story-long-write,短篇 → story-short-write)
- 可选验证:如果项目已部署 story-explorer agent(检查
.claude/agents/story-explorer.md是否存在),可 spawnAgent(subagent_type: "story-explorer", prompt: "项目目录:{dir}\n查询类型:progress\n查询参数:导入验证")交叉验证迁移数据完整性
setup 环境检测已在 Phase 1「环境检测前置」完成,此处不再重复检测。
---
大型作品处理(>200 章)
本节仅适用于长篇导入。短篇为单文件全量迁移,无增量导入需求。
超过 200 章的作品,采用增量导入策略:
1. 首期导入:只导入前 50 章 + 全书概要 2. 增量补充:后续按用户需求分批导入剩余章节 3. 上下文摘要:未导入的章节生成简化摘要(200 字/章)
---
参考资料索引
按阶段加载,不一次全部加载。
本 skill 自带的 reference 文件全部位于 references/,按场景加载。涉及别的 skill 的方法论/模板时,story-import 不直接加载文件,而是运行对应 /命令 由该 skill 自行加载。
Phase 1:确认导入源
| 场景 | 加载文件 |
|---|---|
| 篇幅分流判定 | references/length-routing.md |
| 章节格式识别 | 由 story-long-analyze 拆解管道(运行 /story-long-analyze)的阶段 1 负责 |
Phase 2:深度分析
| 场景 | 加载文件 / 相关 skill |
|---|---|
| 长篇深度分析(方法论、质量检查、输出模板均自带) | 运行 /story-long-analyze 调用长篇拆解管道 |
| 短篇深度分析(方法论、质量检查、输出模板均自带) | 运行 /story-short-analyze 调用短篇拆解管道 |
Phase 3:结构迁移
| 场景 | 加载文件 |
|---|---|
| 长篇迁移映射规则 | references/structure-mapping-long.md |
| 短篇迁移映射规则 | references/structure-mapping-short.md |
| 角色状态反推规则(长篇) | references/character-state-reverse.md |
| 角色状态规则(character-state-reverse.md 依赖) | references/state-tracking.md |
| 短篇正文格式规范 | references/format-and-structure.md |
长篇细纲模板格式参见 story-long-write(Phase 3 细纲部分);短篇核心框架模板参见 story-short-write(核心框架部分)。这两项为纯文本指引,story-import 不加载对应 skill 的文件。
Phase 4:项目激活
| 场景 | 说明 |
|---|---|
| 长篇项目结构规范 | 参见 story-long-write(Phase 4 项目文件结构) |
| 短篇项目结构规范 | 参见 story-short-write(Phase 3 项目结构) |
| 环境部署 | 部署模板由 /story-setup 提供,story-import 不负责部署 |
---
流程衔接
流水线: 长篇 / 短篇 位置: 导入(在开书之前)
| 时机 | 跳转到 | 命令 |
|---|---|---|
| 导入完想继续写(长篇) | story-long-write | /story-long-write + "日更" |
| 导入完想继续写(短篇) | story-short-write | /story-short-write |
| 导入完想审查质量 | story-review | /story-review |
| 想深入分析对标(长篇) | story-long-analyze | /story-long-analyze |
| 想深入分析对标(短篇) | story-short-analyze | /story-short-analyze |
| 从零开新书(长篇) | story-long-write | /story-long-write + "开书" |
| 从零开新书(短篇) | story-short-write | /story-short-write |
| 项目未部署环境 | story-setup | /story-setup |
---
语言
- 跟随用户的语言回复,用户用什么语言就用什么语言回复
- 中文回复遵循《中文文案排版指北》
角色状态反推规则(长篇专用)
适用范围:仅长篇导入。短篇不产追踪/角色状态.md(依据state-tracking.md:「本节仅适用于长篇写作。短篇通常不需要独立的角色状态追踪文件」)。
>
生成顺序约束:本文件所描述的反推依赖 追踪/伏笔.md 已生成(步骤 6「待回收伏笔」需查伏笔状态)。Phase 3-L 的正确顺序是:先生成 `伏笔.md` 和 `时间线.md` → 再生成 `角色状态.md`(本规则)→ 最后生成 `上下文.md`(上下文.md 的「角色状态:最近变更」字段依赖本文件)。---
一、输入来源
从已落盘的拆书产物反推,不重读 `原文/` 目录。拆书产物已是结构化提炼,重读原文是重复劳动,违反「先分析后迁移」原则。
| 输入文件 | 用途 |
|---|---|
拆文库/{书名}/角色/{角色名}.md | 基本档案(身份、能力、动机、出场记录、成长弧线) |
拆文库/{书名}/角色/角色关系.md | 关键关系的当前/最终状态与演变轨迹 |
拆文库/{书名}/章节/第N章_摘要.md | 各章情节点(角色状态变化的时序证据) |
拆文库/{书名}/剧情/*.md | 角色弧线、阵营/身份转折、故事线汇总 |
追踪/伏笔.md(已生成) | 查询与该角色相关、状态为「已埋」的伏笔 |
---
二、筛选追踪对象
复用 state-tracking.md 规则:只追踪出场 ≥3 次或有独立剧情线的角色。
对照 story-import 角色分级表:
| 等级 | 是否进入角色状态.md |
|---|---|
| 主角 | 是(完整条目) |
| 反派 | 是(完整条目) |
| 核心配角 | 是(完整条目) |
| 功能角色 | 否(不追踪,出场章节 <20% 且作用有限) |
边界模糊时,归入更低等级(不追踪)。
---
三、反推算法(每个主要角色一条目,6 步)
对每个需追踪的角色,按以下顺序执行:
步骤 1 — 当前身份
从 角色/{角色名}.md 的出场记录或成长弧线中,取时序最晚(最后章节)的身份/职业描述。若 拆文报告.md 中有更晚的总结性身份标注,以报告为准。
步骤 2 — 当前能力
同理取该角色出场记录中最后出现的能力水平描述。能力体系由 设定/世界观.md 提供背景,能力细节从角色档案中读取。
步骤 3 — 关键关系
从 角色关系.md 中取该角色所有关系条目的「当前/最终状态」字段(A↔B 关系格式:关系类型 | 情感 | 当前状态)。演变轨迹摘要写入关系描述括号中(「第N章变化」)。
步骤 4 — 公众形象
扫描各章 章节/第N章_摘要.md 的情节点,检索类型含「外界评价/名声/身份暴露/社会地位变化」的最新一条(时序最晚)。无对应情节点时,填 [待补充]。
步骤 5 — 待回收伏笔
查询 追踪/伏笔.md,筛选满足以下两个条件的伏笔: 1. 涉及角色字段包含该角色名; 2. 状态字段为「已埋」(未回收)。
列出伏笔标题(如有多条,逐行列出)。若无相关已埋伏笔,填「暂无」。
注意:本步骤依赖追踪/伏笔.md已生成。若伏笔文件尚未生成,先完成伏笔.md,再回来执行本步骤。
步骤 6 — 状态变更记录
扫描 角色/{角色名}.md 的出场记录列,提取有明确状态变化(身份/能力/关系/形象)的章节,按章节顺序逐条转为变更记录行:
第{N}章:{变化描述(一句话,含变化类型)}超过 10 条时按以下规则压缩(复用 state-tracking.md 规则):
- 将最早的记录摘要合并写入对应字段(如「当前身份:第 1-20 章从学生到歌手」);
- 删除已合并的旧记录行;
- 保留最近 10 条详细变更记录。
---
四、输出格式
本节即为 角色状态.md 的标准模板(与 story-long-write 同名 artifact 字段一致),逐字段一一对应,不新增、不删减字段。
# 角色状态追踪
## {角色名}
- **当前身份**:{最新身份/职业}
- **当前能力**:{最新能力水平}
- **关键关系**:
- 与{角色B}:{当前关系状态}(第{N}章变化)
- 与{角色C}:{当前关系状态}
- **公众形象**:{外界如何看待该角色}
- **待回收伏笔**:{与该角色相关的未回收伏笔,无则填「暂无」}
- **状态变更记录**:
- 第{N}章:{变化描述}每个需追踪的角色独立一个 ## {角色名} 节,按主角→反派→核心配角顺序排列。
---
五、半成品书处理
最后一章为残稿(写了一半、内容明显截断)时:
- 角色状态以残稿之前的最后一个完整章节为准,不纳入残稿内容。
- 在文件头的
>引用块中注明:
> 半成品注记:基于第 N 章状态,残稿第 N+1 章内容未计入。「最后一章是否完整」由 Phase 1 基本信息确认环节显式确认,结果传递到本步骤使用。
---
六、大型作品(>200 章)增量导入
增量导入只导入前 N 章时,角色状态仅覆盖已导入章节,在文件头注明:
> 增量注记:基于已导入的前 N 章,后续增量导入时更新本文件。---
七、质量自检
角色状态.md 生成后,对照以下清单确认:
- [ ] 追踪对象仅含主角/反派/核心配角,功能角色未进入
- [ ] 所有字段与本文件「输出格式」节的模板逐字段对应,无字段缺失
- [ ] 不确定字段已加
[待补充]标记 - [ ] 「待回收伏笔」已引用
追踪/伏笔.md的实际条目(或填「暂无」) - [ ] 变更记录超 10 条时已按规则压缩
- [ ] 半成品书已注明基准章节
正文格式与小节结构
写作前必读。以下格式是当前仓库约定的默认正文交付格式;用户或目标平台有明确要求时,以用户/平台要求覆盖。
>
适用范围:段落格式(戏剧单元/镜头优先,短段为底色,长段用于完整推理、氛围和情绪链)和对话格式适用于所有体裁。小节(beat)结构和字数标准仅适用于短篇。长篇小说字数以当前 skill 的字数硬约束为准。
---
章节标记
默认格式(按灵活度排序):
| 格式 | 平台适用 | 示例 |
|---|---|---|
###1. | 短篇默认 | ###1. ###2. ###3. |
###第一章 | 部分平台 | ###第一章 ###第二章 |
1.(纯数字) | 知乎 | 1. 2. 3.(无 ### 前缀) |
规则:全文统一一种格式,不要混用。短篇推荐 ###1. 或纯数字,简洁高效。
---
段落格式
核心规则:戏剧单元优先
默认交付排版是按戏剧单元/镜头自然断段,段落紧密排列。不要把固定字数当成强制切刀;先判断“一件事/一个推理链/一个情绪变化”是否完成。
- 一段承载一个戏剧单元:一个动作链、一个线索发现、一次视线切换、一轮心理判断,或一条连续的氛围/推理/情绪链。
- 场景结束、一件事结束、新动作、新物件、新信息、新对话另起一段;同一瞬间的发生、感知、反应应织在一起,不拆成动作层/感知层/反应层。
- 正文相邻段落之间只允许一个换行符 `\n`;不得出现空行或连续换行
\n\n(紧密排列)。 - 无缩进(平台渲染器自行处理,不需要
或空格)。 - 长度只作诊断:读起来拥挤、混入多个拍点、或手机屏上难以跟读时才拆;完整推理、氛围铺陈、情绪递进未结束时,允许稍长段保留连贯性。
段落节奏(长短交错 + 疏密有别)
短段快读,是网文手机阅读的底色;长段负责承载完整推理、氛围和情绪沉淀。忌通篇同长度,也忌把每段按同一字数阈值切开:
- 长短交错:高潮、打脸、反转压到最短(单句成段);推理链、环境压迫、情绪沉淀、章节收束可保留较长段,让读者读完一个完整变化。
- 疏密有别(详略):爽点、转折 beat 写密(感知、动作、细节铺满);过场、连接 beat 写疏(1-2 句带过,不平均用力)。每个 beat 一样长、一样细,正是 AI 腔的来源。
- 不过度碎片化:连续多个极短段若仍属于同一镜头/同一件事,应合并成自然段,避免像提纲或诗行。
主语与角色名节奏
角色名不是越省越好,也不是每句都要点名。按“主语重置”使用:
- 段首、场景切换、多人同场、或主语可能混淆时,用主角名/角色名建立视角。
- 同一段或同一动作链内,优先混用代词、动作承接和合理省略,避免每句都以同一角色名开头。
- 关键转折、情绪爆点、身份反差或读者需要重新盯住主角时,可以再次点名强化。
- 审查主语节奏看“读起来是否打磕巴”,不按全章出现次数一刀切;只有连续句/连续段无主语重置却反复点名,才算主语过密。
---
对话格式
对话标记
按目标平台/用户要求选择;未指定时使用默认格式:
| 优先级 | 格式 | 适用平台 |
|---|---|---|
| 首选 | "说话内容" | 短篇默认、番茄 |
| 平台/项目指定 | 「说话内容」 | 知乎盐言短篇、部分古言、日式或用户指定 |
默认用 `""`;用户或平台指定盐言风格时改为 「」,不要把 「」 视为错误。
对话规则
1. 对话独立成行,不嵌在叙述段落中 2. 用动作代替对话标签:不用「他说」「她道」,改为动作描写 + 对话 3. 两人对话连续出现时,省略标签,靠内容区分说话人
正确示例:
她把杯子放下。
"你走吧。"
他没有动。
"我说,你走吧。"错误示例:
她把杯子放下,说道:"你走吧。"他没有动,她又说:"我说,你走吧。"---
语气标点谱系
标点服务语气、人物声线和情绪节奏,不能通篇句号化,也不能为了“丰富”随机堆砌符号。先判断当前句子的功能,再选择标点:
| 语气 / 功能 | 标点策略 | 防线 |
|---|---|---|
| 压迫 / 冷静 / 克制 | 短句、逗号、句号,必要时用冒号压出判断落点 | 不人工加感叹号;克制不是每句都平铺句号 |
| 质问 / 试探 / 反问 | 问号 + 短促追问片段,配合动作停顿 | 避免每句话都以 ? 结尾 |
| 惊讶 / 爆发 / 打脸 | 真正爆点可用 1 个感叹号,连续爆发最多 1-2 处 | 禁止 !!!、整段喊叫式感叹 |
| 犹豫 / 吞咽 / 未说完 | 逗号、句号、短句断开、动作 beat | 不用 …… 制造停顿;优先用动作和句长变化 |
| 被打断 / 拖长音 | 不使用 ——;改用动作打断、换行、短句或未完成动作 | 正文和对话都禁止 —— / — / -- |
| 信息揭示 / 判断落点 | 冒号、分号或单句成段制造落点 | 保持手机阅读友好,不写论文式分号串 |
执行规则:
- 写对话时先看角色关系和权力位置:强势角色常短句收束,试探角色多问号和半句,崩溃角色才允许少量感叹/省略。
- 写叙述时用句长、逗号停顿和单句成段制造节奏;不要把破折号当节奏工具,对话里也不要用。
- 精修时检查两类问题:通篇句号化(语气全被压平)与随机标点堆砌(问号/感叹号不承载情绪功能,或用省略号/破折号硬造停顿)。
- 引号风格按项目/平台约定;知乎盐言的
「」是合法对话格式,quote-mode keep时不得擅自改掉。
---
小节(beat)结构
基本规则
- 用数字编号(
123)分割小节,每个小节是一个完整的叙事 beat - 每小节 800-1500 字(爽文可压缩至 500-800 字/节,见 genre-writing-formulas.md)
- 8-15 个小节覆盖全文(按目标字数反推;8000÷1000≈8节,12000÷800≈15节)
- 每小节推进一个明确的情节点
小节内部结构
每个小节应该有:
1. 一个主事件 + 3-5 个子事件(主事件推进核心情节,子事件丰富层次;初稿偏短时先回到小节/细纲补足计划内子事件、对话或冲突,再写正文;去AI味已有正文时不得新增剧情) 2. 一个情绪变化(读者的感受如何变化) 3. 一条读者新获知的信息 4. 3-5 轮对话交锋(揭示关系/升级冲突,参考 writing-craft.md 对话权力博弈。特定场景如独自发现/翻阅日记可标零,按当前 skill 的细纲/设计任务要求执行) 5. 每个子事件三维度揉进:发生+感知+反应揉进同一段正文(参考 writing-craft.md 场景写法)
小节之间的衔接
- 小节结尾留一个钩子(悬念/未解决的情绪/新问题)
- 下一节开头快速接续,不要重新铺垫
- 情绪跨节递进:每一节的情绪强度 ≥ 上一节。例外:峰值情绪(反转节)后允许维持 1 节不降,但不允许骤降
---
平台对话格式覆盖表
| 平台 | 章节标记 | 对话格式 | 特殊要求 |
|---|---|---|---|
| 知乎盐言 | 1. | 「」 | 导语需单独标注 |
| 番茄 | ###第一章 | "" | 首段需有吸引力 |
| 红果 | ###1. | "" | 无 |
通用原则:用户未指定平台时,默认使用短篇通用格式(###1. + "");用户或平台指定盐言风格时,「」 是允许的。
---
5 条绝对禁止
以下规则在写作全程执行,不因题材或风格而变:
1. 禁止机械按字数分段:不要因为超过某个字数就强拆;先判断段落是否仍是一个完整戏剧单元。若混入多个动作/信息/视线切换才拆,完整推理、氛围、情绪链可保留稍长段 2. 禁止段间空行:正文相邻段落之间只允许一个换行符 \n,不得出现空行或连续换行 \n\n 3. 避免对话标签机械化:高频或公式化的「他说」「她道」「他笑了笑说」用动作/上下文替代;普通“说”可保留 4. 禁止缩进:不使用 (全角空格)或半角空格缩进 5. 禁止正文段落 Markdown 渲染:除统一的小节/章节标记(如 ###1.)外,正文段落中不使用加粗 **、斜体 *、标题 #、分隔线 --- 等 Markdown 语法 6. 正文不使用破折号:正文(含叙述、对话、心理描写)不使用破折号 ——/— 或双连字符 --,改用句号、逗号、换行、动作 beat 或短句断开;不再设置“对话例外” 7. 禁止通篇句号化或随机标点堆砌:标点必须跟语气/人物声线/情绪功能匹配;该质问时用问号,该爆发时少量感叹;犹豫、吞咽、未说完用动作或句长变化表达,不用 …… / —— 硬造停顿,也不得无功能地乱撒 ?/! 8. 禁止正文混入章节元信息:章节号只允许出现在标题/小节标记/文件名/追踪记录中。正文叙述、对话、心理描写里不得出现 第[一二三四五六七八九十百千万两0-9]+章|上一章|上章|前一章|本章|这一章|前文|后文|伏笔|细纲|读者 这类写作工程词;要改成角色能感知的事件锚点或相对时间,例如把“比第一章那三秒开火更疼”改成“比那三秒开火更疼”。例外:角色在故事世界内真实阅读/讨论“第X章”文本,或真实身为作者/读者并谈论读者身份时,可保留相应词。
---
快速检查
写完每一段后,用这个清单自查:
- [ ] 段落按戏剧单元/镜头断开,而不是机械按字数切开?
- [ ] 三维度揉进段是否按镜头/信息变化断开,完整推理/氛围/情绪链是否保留连贯?
- [ ] 主语/角色名节奏是否自然:段首能建立主语,段中有代词/省略,关键转折再点名,避免无必要连续重复?
- [ ] 正文相邻段落之间是否只有一个
\n,没有空行/\n\n? - [ ] 对话独立成行,且引号风格符合项目/平台约定(盐言
「」合法)? - [ ] 标点节奏是否匹配语气/人物声线,避免通篇句号化,也没有随机堆砌
?/!或用……/——硬造停顿? - [ ] 正文(含对话)里的
——/—/--是否已改为逗号、句号、动作 beat 或短句断开? - [ ] 对话标签是否避免高频/公式化,普通“说”是否按语境保留?
- [ ] 无缩进?
- [ ] 每个小节有事件+情绪+信息?
- [ ] 标题/小节标记之外,无
第[一二三四五六七八九十百千万两0-9]+章|上一章|上章|前一章|本章|这一章|前文|后文|伏笔|细纲|读者这类元信息词;故事内真实阅读/讨论“第X章”或真实读者身份语境除外?
篇幅分流判断规则
Phase 1「基本信息确认」环节使用本规则判定导入书是长篇还是短篇,判定结果决定后续走哪条迁移路径。
---
判定优先级
判定按以下顺序执行,命中即停止,不再向下判断。
| 优先级 | 信号来源 | 判定规则 |
|---|---|---|
| 1 | 用户显式声明 | 用户说「这是长篇 / 短篇」→ 以用户为准,直接锁定 |
| 2 | 结构信号 | 检测到明确章节分隔符且章节数 ≥ 5 → 长篇;全文无章节分隔、单文件单篇 → 短篇 |
| 3 | 字数兜底 | 仅在 1、2 均不明确时启用,见下方「字数兜底规则」 |
| — | 冲突处理 | 信号之间发生矛盾时,不自动决策,回到 Phase 1 向用户复述并请用户拍板 |
---
优先级 1:用户显式声明
Phase 1 信息确认时向用户提问:「这是长篇还是短篇?」
- 用户明确回答 → 锁定类型,跳过后续检测。
- 用户未回答或说「不确定」→ 进入优先级 2 结构信号检测。
---
优先级 2:结构信号
章节分隔符识别
复用 structure-mapping-long.md 的分隔符识别表:
| 分隔符模式 | 示例 |
|---|---|
第X章 / 第X章 / 第X章: / 第X章 XXX | 第1章 初入江湖 |
Chapter X | Chapter 1 |
| 纯数字编号 + 标题 | 1. 觉醒 |
判定规则
| 检测结果 | 判定 |
|---|---|
| 有明确章节分隔符,且识别到章节数 ≥ 5 | 强长篇信号 → 判定为长篇 |
| 全文无任何章节分隔符,单文件单篇 | 强短篇信号 → 判定为短篇 |
| 有章节分隔符,但章节数 < 5 | 结构信号不明确 → 进入优先级 3 字数兜底 |
| 分隔符模式模糊(如仅有单个标题行) | 结构信号不明确 → 进入优先级 3 字数兜底 |
---
优先级 3:字数兜底
仅在优先级 1、2 均无法给出明确判定时使用。 30000 字为建议阈值,来源:短篇通常 8000-20000 字(story-short-write/SKILL.md),取 30000 字作上界留余量。
| 条件 | 判定 | 备注 |
|---|---|---|
| 总字数 < 30000 且无章节结构 | 短篇 | — |
| 总字数 ≥ 30000 | 长篇 | — |
| 章节数 ≥ 5(任意字数) | 长篇 | — |
| 总字数 < 30000 但章节数 ≥ 5 | 初判长篇,但须提示用户 | 见下方「分章短篇连载」 |
建议值说明:30000 字阈值是估算值,不同平台和题材的短篇上限有差异。执行时列入 open-questions,建议用户复核是否适用于当前导入书。
分章短篇连载
检测到总字数 < 30000 但章节数 ≥ 5 时,在确认环节提示用户:
「检测到分章结构(共 {N} 章),但总字数约 {X} 字,低于 30000 字。可能是分章短篇连载。确认按长篇导入,还是按短篇处理?」
用户拍板后锁定类型。
---
冲突处理
当不同信号之间出现矛盾时,不自动决策,回到 Phase 1 向用户复述检测结果:
| 典型冲突场景 | 处理方式 |
|---|---|
| 用户说「短篇」但检测到 20 章 | 复述:「检测到 20 章章节结构,通常属于长篇。确认按短篇导入?」由用户拍板 |
| 用户说「长篇」但全文无章节分隔且字数 < 30000 | 复述:「全文无章节分隔,总字数约 {X} 字,通常属于短篇。确认按长篇导入?」由用户拍板 |
| 结构信号与字数信号方向相反 | 展示两项信号,请用户决定 |
用户拍板的结果记入 Phase 1 上下文,后续步骤以此为准,不再重新判定。
---
判定结果与后续路径
判定完成后,迁移路径按以下对应关系分流:
| 判定结果 | 迁移路径 | 映射规则参考文件 |
|---|---|---|
| 长篇 | 长篇迁移路径(Phase 3-L) | structure-mapping-long.md |
| 短篇 | 短篇迁移路径(Phase 3-S) | structure-mapping-short.md |
注:structure-mapping-long.md对应长篇迁移映射规则,structure-mapping-short.md对应短篇迁移映射规则。
---
快速判定流程图
Phase 1 问用户:「长篇还是短篇?」
│
├─ 用户明确回答 ──────────────────────────► 锁定类型
│
└─ 未回答 / 不确定
│
▼
检测章节分隔符
│
├─ 有分隔符且章节数 ≥ 5 ──────────► 长篇
│
├─ 无分隔符,单文件单篇 ──────────► 短篇
│
└─ 信号不明确
│
▼
字数兜底判定(30000 字阈值)
│
├─ < 30000 且无章节结构 ─► 短篇
├─ ≥ 30000 ─────────────► 长篇
├─ 章节数 ≥ 5 ──────────► 长篇
└─ < 30000 但章节数 ≥ 5 ─► 提示用户裁定状态追踪协议
本文件定义"本节速记"的提取逻辑和"角色状态快照"的格式。写作 skill 在写前准备的状态筛选步骤中加载此文件。
---
本节速记
写作每一章/每一节前,从所有已加载的上下文中筛选出只与本节相关的信息。目的是避免全量加载导致 LLM 上下文被无关信息稀释。
筛选逻辑
从上下文中提取三类信息:
1. 当前状态:本章涉及角色的最新能力、关系变化、公众形象 2. 历史因果:与本章事件直接相关的伏笔成因、前史事件 3. 世界约束:本章涉及的世界观规则(力量体系、社会规则、地理限制)
筛选标准
只保留"如果不知道这个,本章会写错"的信息。
具体判断方法:
- 本章细纲中提到了某个角色 → 保留该角色的当前状态
- 本章有伏笔回收 → 保留伏笔的埋设细节和前文铺垫
- 本章涉及特定地点/能力/规则 → 保留相关世界观约束
- 纯背景知识(与本章事件无因果关联) → 丢弃
输出格式
筛选后输出一个简洁的"本节速记":
## 本节速记(第{N}章)
### 角色状态
{角色A}:{一句话当前状态,含最近变化}
{角色B}:{一句话当前状态}
### 相关伏笔/前史
{伏笔1}:{埋设细节,{埋设章节}},本章需要{回收/推进}
### 世界约束
{约束1}:{与本章相关的规则/设定}示例(都市文娱第 12 章):
## 本节速记(第12章)
### 角色状态
邵阳:穿越者,前世二线歌星,刚在宋佳伦演唱会一曲惊人,目前"临时女友"薛嘉嘉在身边
薛嘉嘉:女主,金牌制作人隐藏身份,表面是邵阳临时女友,实际已对他产生好感
宋丽:前女友,看到邵阳爆红后心态复杂,与新欢郑松关系出现裂痕
### 相关伏笔/前史
薛嘉嘉隐藏身份:第3章邵阳帮她解围时暗示过,本章需要在公开场合暴露身份的前兆
五万块彩礼:宋丽以练习生名义拿走的钱,第2章埋设,本章邵阳决定要回
### 世界约束
蓝星平行世界:无地球文娱作品,邵阳的前世记忆是降维打击---
角色状态快照格式
⚠️ 本节仅适用于长篇写作。 短篇通常不需要独立的角色状态追踪文件。
追踪/角色状态.md 用于追踪主要角色的状态变化。Phase 3 大纲完成后创建初始状态,Phase 4 每章写完后更新。
格式
# 角色状态追踪
> 用途:本节速记的数据源。写作每章前从此文件中筛选本章相关的角色状态。
> 更新时机:Phase 3 大纲完成后创建初始状态;Phase 4 每章写完后更新变化。
## {角色名}
- **当前身份**:{最新身份/职业}
- **当前能力**:{最新能力水平}
- **关键关系**:
- 与{角色B}:{当前关系状态}(第{N}章变化)
- 与{角色C}:{当前关系状态}
- **公众形象**:{外界如何看待该角色}
- **待回收伏笔**:{与该角色相关的未回收伏笔}
- **状态变更记录**:
- 第{N}章:{变化描述}更新规则
1. 每章写完后,检查本章是否引起了任何角色的状态变化(身份、能力、关系、公众形象) 2. 如果有变化:更新对应角色的字段,并在"状态变更记录"中追加一行 3. 如果无变化:跳过 4. 仅追踪主要角色(出场 ≥3 次或有独立剧情线的角色),不追踪路人角色 5. 变更记录维护:每个角色保留最近 10 条详细变更记录。超过 10 条时,将最早的记录摘要写入对应字段(如「当前身份:第 1-20 章从学生到歌手」),删除已合并的旧记录行
与本节速记的关系
写作每章前的"状态筛选"步骤从 追踪/角色状态.md 中提取本章涉及角色的当前状态,作为本节速记的"角色状态"部分。不是全量读取,而是只筛选本章细纲中提到的角色。
结构迁移映射规则(长篇)
Phase 3-L 长篇结构迁移的详细映射规则和模板。将 拆文库/{书名}/ 分析结果转换为 {书名}/ 长篇项目结构。
短篇迁移规则见 structure-mapping-short.md。---
映射总览
| 拆文库路径 | 项目路径 | 转换方式 |
|---|---|---|
原文/ | 正文/第XXX章_章名.md | 按章节分割并标准化命名 |
快速预览.md | — | 参考卷划分候选、剧情走向,不直接迁移 |
角色/{角色名}.md | 设定/角色/{角色名}.md | 增加角色模板字段 |
角色/角色关系.md | 设定/关系.md | 格式转换 |
设定/世界观.md | 设定/世界观/背景设定.md 等 | 拆分 |
设定/金手指.md | 设定/世界观/金手指.md | 直接迁移 |
剧情/故事线.md | 大纲/大纲.md | 反推卷级结构(需用户确认卷划分,见下) |
剧情/{标题}.md | 大纲/卷纲_第X卷.md | 聚合为卷纲 |
剧情/节奏.md | 对标/{书名}/剧情/节奏.md | 直接同步为写作侧权威节奏索引(关键信息推进/情绪触动点/爆发节奏) |
剧情/情绪模块.md | 对标/{书名}/剧情/情绪模块.md | 直接同步为写作侧权威模块索引(读者需求 / 情绪引擎 / 可复现模块) |
章节/第N章_摘要.md | 大纲/细纲_第N章.md | 反推细纲 |
| — | 设定/题材定位.md | 从拆文报告生成 |
| — | 追踪/伏笔.md | 从情节点提取(先于角色状态生成) |
| — | 追踪/时间线.md | 从时间标记提取(先于角色状态生成) |
| — | 追踪/角色状态.md | 由 character-state-reverse.md 反推(生成顺序见下) |
剧情/散落情节.md | 大纲/大纲.md 附录或对应卷纲 | 合并到相关卷的大纲 |
| — | 追踪/上下文.md | 生成进度摘要(最后生成,依赖角色状态) |
追踪文件生成顺序(阶段4 约束)
Phase 3-L 追踪文件必须按以下顺序生成,不可乱序:
① 追踪/伏笔.md ← 先生成(角色状态反推的「待回收伏笔」字段依赖此文件)
② 追踪/时间线.md ← 与伏笔同步或紧随其后
③ 追踪/角色状态.md ← 依赖伏笔.md 已存在,见 character-state-reverse.md
④ 追踪/上下文.md ← 最后生成(其「角色状态:最近变更」字段依赖角色状态.md)---
正文标准化规则
命名格式
源文件名 → 标准格式:第{零填充三位}章_{章名}.md
| 源文件名 | 标准化后 |
|---|---|
| 第一章_初入江湖.txt | 第001章_初入江湖.md |
| 第1章.md | 第001章_无题.md |
| chapter01.md | 第001章_无题.md |
| 01_觉醒.md | 第001章_觉醒.md |
章节分隔识别
当源为单个大文件时,按以下分隔符切分(与 length-routing.md 优先级 2 复用同一识别表):
| 分隔符模式 | 示例 |
|---|---|
第X章 / 第X章 / 第X章: / 第X章 XXX | 第1章 初入江湖 |
Chapter X | Chapter 1 |
| 纯数字编号 + 标题 | 1. 觉醒 |
内容处理
- 保留原文内容不变,不做任何修改
- 编码统一为 UTF-8
- 去除文件头尾无关信息(如广告、声明等)
---
角色文件迁移模板
---
name: {角色名}
---
# {角色名}
## 基本信息
- 身份:{从拆文库角色文件提取}
- 核心特质:{}
- 当前能力:{}
- 核心动机:{}
- 弱点/缺陷:{}
## 外在表现
{身份/言行/外貌}
## 内在分析
{性格/目标/秘密}
## 出场记录
| 章节 | 关键事件 | 状态变化 |
|------|---------|---------|
| 第{N}章 | {事件} | {变化} |
## 别名
{如有别名,列出}---
关系文件转换规则
拆文库格式(角色关系.md)→ 项目格式(设定/关系.md):
拆文库格式:
A<->B:关系类型 | 情感 | 描述(50-200字)| 演变轨迹
项目格式:
| 角色 A | 角色 B | 关系类型 | 情感倾向 | 当前状态 | 起始章节 | 变化节点 |转换规则:
- 关系类型映射:家人→亲情、恋人→爱情、朋友→友情等
- 情感倾向直接复用:正面/负面/中性/复杂
- 演变轨迹提取到「变化节点」列
目标格式模板(设定/关系.md)
# 角色关系图
## 关系总览
| 角色 A | 角色 B | 关系类型{亲情/爱情/友情/敌对/师生/主从/利益} | 情感倾向{正面/负面/中性/复杂} | 当前状态 | 起始章节 | 变化节点 |
|--------|--------|---------------------------------------------|-----------------------------|---------|---------|---------|
| {名} | {名} | {类型} | {倾向} | {描述} | 第{N}章 | {事件} |
## 关系演变
{角色A}<->{角色B}:
- 起点:{初始关系}
- 转折:{章节·事件·变化}
- 当前:{现状}
## 核心冲突关系
{列出推动剧情的2-3对核心对立/合作关系}---
世界观拆分规则
拆分决策
| 内容块 | 字数 | 目标文件 |
|---|---|---|
| 力量体系 | >= 200 字 | 独立为 力量体系.md |
| 地理 | >= 200 字 | 独立为 地理.md |
| 金手指 | 任意 | 独立为 金手指.md |
| 势力 | >= 200 字 | 独立为 势力/{势力名}.md(不足 200 字合并到 背景设定.md) |
| 其他内容 | 任意 | 合并到 背景设定.md |
拆分后文件模板
# {设定名}
## 来源
拆分自:世界观.md
## 内容
{从拆文库设定文件提取的具体内容}---
大纲反推规则
大纲.md(卷级结构)与卷划分规则
从 剧情/故事线.md、剧情/*.md 和 快速预览.md 反推,卷划分必须遵守以下决策规则:
情形 A:原文有明确卷界
原文中存在明确卷级标记(如「第一卷 XXXX」「卷一」等章节层级标题)→ 按原文卷界直接划分,无需询问用户。
情形 B:原文无明确卷界
不做机械切卷。执行流程:
1. 根据故事线/场景切换/大型时间跳跃,检测候选卷边界(见下方「候选边界检测参考」); 2. 向用户展示候选划分方案,格式示例:
候选卷划分(供参考,非定论):
- 候选卷一:第 1-18 章(世界观建立 + 初步成长,场景:城郊学院)
- 候选卷二:第 19-45 章(主线冲突爆发,场景:帝都议事堂)
- 候选卷三:第 46-XX 章(最终对决,场景切换:上古遗迹)
以上为故事线/场景切换自动检测结果,请确认或调整。3. 等待用户确认卷划分方案后,才生成 大纲/大纲.md 的卷级结构和对应 大纲/卷纲_第X卷.md; 4. 用户未确认前,大纲/大纲.md 只记录候选方案,不写定卷纲。
不允许用「每卷默认 20-40 章」机械切分原文无卷界的书。候选仅作参考,最终由用户拍板。
候选边界检测参考
| 信号类型 | 示例 | 卷边界可能性 |
|---|---|---|
| 章节连续 + 同一故事线 | 同一城市/同一势力视角 | 同一卷 |
| 主要场景切换(新地图/新阵营) | 从城郊进入帝都 | 候选新卷起点 |
| 大型时间跳跃(数月/数年) | 「三年后…」 | 候选新卷起点 |
| 主要阶段目标完成 + 新目标开启 | 击败阶段 boss → 新危机出现 | 候选新卷起点 |
| 故事线汇总中已有阶段划分 | 剧情/故事线.md 内部分段 | 优先参考 |
卷纲反推
目标格式模板(大纲/卷纲_第X卷.md)
卷纲是大纲的展开——大纲决定方向,卷纲决定节奏。包含本卷全部创作规划。
# {卷名} 卷纲
## 核心信息
- 章节范围:第{X}-{Y}章
- 字数目标:{W}万字
- 本卷定位:{铺垫/发展/高潮/转折/收尾}
## 核心矛盾
{一句话:本卷要解决什么问题或达到什么目标}
## 情绪弧线
- 模板:{V形/倒V形/W形/渐进形/延迟满足形/急转弯形}
- 选择理由:{结合题材和本卷定位}
| 章节 | 情绪基调{紧张/轻松/悲伤/热血/温馨/震惊} | 强度{1-10} | 触发事件 |
|------|-----------------------------------------|-----------|---------|
| 第{N}章 | {基调} | {N} | {事件} |
## 爽点节奏
| 周期 | 章节范围 | 铺垫(起) | 释放(承) | 反应层 | 衔接(转) |
|------|---------|---------|---------|-------|---------|
| 第1个 | {章X-Y} | {简述} | {简述} | {N层} | {方式} |
## 人物弧线
| 角色 | 本卷起点 | 本卷终点 | 关键转变 |
|------|---------|---------|---------|
| {名} | {状态} | {状态} | {事件} |
## 本卷反转(如有)
| 类型{身份/动机/阵营/信息/命运} | 涉及角色 | 误导路径 | 揭示章节 | 影响范围 |
|------|---------|---------|---------|---------|
| {类型} | {名} | {如何误导读者} | 第{N}章 | {影响哪些线} |
## 本卷伏笔
| 伏笔 | 埋设章节 | 预计回收 | 类型{短期/中期/长期} |
|------|---------|---------|---------------------|字段映射
从剧情文件提取每卷的:
- 核心矛盾 → 核心矛盾字段
- 情节点分布 → 情绪弧线 + 爽点节奏
- 角色出场 → 人物弧线
- 铺垫类情节点 → 伏笔
细纲反推
从每章摘要(章节/第N章_摘要.md)提取:
| 摘要字段 | 细纲字段 | 转换方式 |
|---|---|---|
| 关键事件 | 核心事件 | 直接复用 |
| 章节字数 | 字数目标 | 从原文统计 |
| 章节基调 / 情绪曲线 | 目标情绪 | 从摘要提取;缺失写 [待补充] |
| 第一个情节点 | 章首钩子 | 只作为证据,设计目标标 [待补充] |
| 爽点类情节点 | 爽点 | 从情节点类型推断;没有则写“无显性爽点 / [待补充]” |
| 情节点起承转合 | 内容概括(起因/发展/转折/高潮/结尾) | 按情节点顺序归纳;证据不足写 [待补充] |
| 主线/支线/任务线索 | 情节安排(主线/辅线/事件线/感情线/逻辑线) | 从剧情线索引与摘要反推;无证据的辅线/感情线写“无”或 [待补充],不得杜撰 |
| 出场角色 / 关键物件 | 人物关系和出场顺序 | 按摘要出现顺序列出;关系变化只写有证据的“前 → 后”,缺失写 [待补充] |
| 全部情节点 | 情节细化 / 情节点序列 | 每点写“谁做了什么 + 功能标签”;功能不明写 [待补充] |
| 胜负/反转/收益损失 | 代价兑现 / 收益兑现 | 有明确证据才填写;否则 [待补充] |
| 最后一个情节点 / 悬念类情节点 | 结尾设定和钩子 | 收束状态可归纳;章尾钩子设计目标标 [待补充] |
---
角色状态反推
追踪/角色状态.md 由 character-state-reverse.md 中定义的反推算法生成,不在本文件重复描述。
关键要点:
- 生成时机:必须在
追踪/伏笔.md生成之后(步骤 5「待回收伏笔」依赖伏笔文件); - 输入来源:拆文库已有产物(角色档案、关系.md、章节摘要、剧情文件),不重读
原文/; - 输出对齐:严格对齐
character-state-reverse.md「输出格式」的标准模板; - 追踪范围:主角、反派、核心配角;功能角色不进入。
详细规则见 character-state-reverse.md。
---
伏笔提取规则
从情节点中识别潜在伏笔:
识别模式
| 情节点类型 | 伏笔可能性 | 提取方式 |
|---|---|---|
| 铺垫 | 高 | 直接提取为伏笔 |
| 信息揭示(部分) | 中 | 检查后续是否有呼应 |
| 物品首次出现 | 中 | 检查后续是否有使用 |
| 角色秘密 | 高 | 标记为角色伏笔 |
| 未解决的悬念 | 高 | 从章尾标记提取 |
状态推断
- 铺垫点在后续章节有「揭示」或「解决」类情节点 → 标记「已回收」
- 铺垫点无后续呼应 → 标记「已埋」
- 半成品小说的最后几章铺垫 → 标记「已埋」,备注「接近断点」
---
时间线提取规则
时间标记识别
从情节点和时间标记中提取:
| 标记模式 | 示例 | 提取方式 |
|---|---|---|
| 明确日期 | "天元三年春" | 直接记录 |
| 相对时间 | "三日后"、"半月后" | 推算绝对时间 |
| 事件间隔 | "翌日"、"次日" | 连续标记 |
| 季节标记 | "入冬"、"春暖花开" | 季节推断 |
排序规则
按章节顺序排列,同一章内按情节点序号排列。时间标记缺失时标注 [推断]。
---
题材定位生成
从拆文报告中提取核心发现,生成 设定/题材定位.md。
目标格式模板(设定/题材定位.md)
# 题材定位
## 基本信息
- 题材类型:{玄幻/都市/系统/...}
- 核心梗:{一句话卖点}
- 微创新点:{与同类题材的差异}
## 核心梗三分法
- 表层卖点:{读者一眼看到的吸引力}
- 深层爽点:{持续追读的情绪驱动力}
- 长线钩子:{支撑全书的悬念/目标}
## 读者需求 / 情绪引擎
> 详细模块见 `对标/{书名}/剧情/情绪模块.md`;本段只保留开书/续写时的快速定位。
| 读者需求 | 情绪缺口 | 满足方式 | 可复现模块 | 来源 |
|---------|---------|---------|------------|------|
| {安全感/优越感/期待感/情感补偿/认知反转/陪伴感} | {缺什么} | {如何被满足} | {EM-001 等} | `对标/{书名}/剧情/情绪模块.md` |
## 节奏与触发参考
> 详细节奏见 `对标/{书名}/剧情/节奏.md`;写作时以该文件为节奏权威。
| 节奏模块 | 关键信息推进 | 情绪触动点 | 爆发节奏 | 来源 |
|---------|-------------|------------|----------|------|
| {RH/TR 编号} | {信息如何被扩写} | {触发什么感受} | {铺垫→爆发→冷却} | `对标/{书名}/剧情/节奏.md` |
## 对标书清单(canonical registry)
主对标书: {书名} # 最多 1 本;日更默认只读取这本的文风.md 和原文锚点
对标书列表:
- 书名: {书名 A}
引用强度: 主 # 主 / 辅 / 参考
题材类型: {玄幻/都市/系统/...}
相关性: 同题材
用途: 文风+核心结构
- 书名: {书名 B}
引用强度: 辅
题材类型: {题材}
相关性: 同题材/弱相关
用途: {补设定/大纲/模块,不进文风}
- 书名: {书名 C}
引用强度: 参考
题材类型: {题材}
相关性: 同题材/弱相关
用途: {仅按预算召回摘要}
## 对标分析(派生概要)
> 完整对标数据见 `对标/` 目录;上方 registry 是权威清单。本表仅做快速概览,不可替代 `主对标书` + `对标书列表`。
| 对标书 | 相似点 | 差异点 | 可借鉴 |
|--------|-------|-------|-------|
| {书名} | {点} | {点} | {点} |
## 题材框架
- 八节点位置:{当前处于哪个节点}
- 关键转折节点:{列出}字段映射
- 题材类型、核心梗、微创新点 → 从
拆文报告.md基本信息与核心发现段提取 - 核心梗三分法 → 从
拆文报告.md表层吸引力、爽点设计、长线悬念段提取 - 读者需求 / 情绪引擎 → 优先从
剧情/情绪模块.md提取;缺失时回退拆文报告.md对应摘要 - 节奏与触发参考 → 优先从
剧情/节奏.md提取;缺失时回退拆文报告.md节奏摘要或剧情/故事线.md - 对标书清单 → 导入当前书时至少登记自身为
主;若用户提供多本素材,全部进入对标书列表,副对标/参考对标不限制数量 - 对标分析(派生概要)、题材框架 → 可由导入场景生成摘要;不得替代 canonical registry
---
对标引用视图同步规则
长篇迁移必须把拆文库关键分析资产同步到项目侧 对标/{书名}/,使 story-long-write 优先读项目引用视图,旧工程仍可回退到根目录 拆文库/{书名}/。
| 源路径 | 目标路径 | 同步语义 |
|---|---|---|
拆文库/{书名}/剧情/节奏.md | {项目}/对标/{书名}/剧情/节奏.md | 节奏已同步后,日更用它选择 rhythm_reference;v12 新契约缺失时先修复,旧库才记录 rhythm_missing 并回退 |
拆文库/{书名}/剧情/情绪模块.md | {项目}/对标/{书名}/剧情/情绪模块.md | 情绪模块已同步后,日更用它选择 selected_emotion_module;v12 新契约缺失时先修复,旧库才记录 module_missing 并回退 |
拆文库/{书名}/剧情/*.md | {项目}/对标/{书名}/剧情/*.md | 剧情线、故事线、散落情节等剧情资产;与权威节奏/情绪文件冲突时以后者为准 |
拆文库/{书名}/章节/第N章_摘要.md | {项目}/对标/{书名}/章节/第N章_摘要.md | 匹配章证据,含「关键信息与扩写技法」 |
拆文库/{书名}/角色/*.md | {项目}/对标/{书名}/角色/*.md | 角色功能位、关系与反应层参考 |
拆文库/{书名}/设定/ | {项目}/对标/{书名}/设定/ | 世界观、势力、金手指等设定约束参考 |
拆文库/{书名}/拆文报告.md | {项目}/对标/{书名}/拆文报告.md | 人类报告与旧拆文库回退 |
拆文库/{书名}/文风.md | {项目}/对标/{书名}/文风.md | 日更文风召回必读 |
冲突规则:对标/{书名}/剧情/情绪模块.md 和 对标/{书名}/剧情/节奏.md 是写作侧情绪/节奏权威;拆文报告.md、剧情/故事线.md 只作为摘要投影。若摘要冲突,保留冲突说明并以权威文件为准。若检测到 v12 新契约拆文库缺少任一权威文件,先重跑/修复拆文产物;只有 pre-v12 旧库可以标记 legacy_deconstruction: true 后降级。
---
质量检查清单
Phase 3-L 迁移完成后执行:
- [ ] 正文文件数 = 源文件章节数
- [ ] 主要角色(主角 + 核心配角)文件已创建
- [ ] 关系.md 非空
- [ ] 大纲.md 有卷级结构
- [ ] 每章细纲已生成
- [ ] 追踪/伏笔.md 中有内容(如有铺垫类情节点)
- [ ] 追踪/时间线.md 中有内容(如有时间标记)
- [ ] 追踪/角色状态.md 已生成且对齐
character-state-reverse.md标准模板 - [ ] 追踪/上下文.md 进度摘要已填写
- [ ] 散落情节已合并到相关卷纲或大纲附录
- [ ] 卷划分已经用户确认(原文无明确卷界时必检)
- [ ]
剧情/节奏.md已同步到对标/{书名}/剧情/节奏.md,或导入报告明确标注未同步并说明rhythm_missing回退 - [ ]
剧情/情绪模块.md已同步到对标/{书名}/剧情/情绪模块.md,或导入报告明确标注未同步并说明module_missing回退
结构迁移映射规则(短篇)
Phase 3-S 短篇结构迁移的详细映射规则。将 拆文库/{书名}/ 短篇拆文产物转换为 {短篇标题}/ 短篇工程结构,供 story-short-write Phase 3 无缝接手续写。
长篇迁移规则见 structure-mapping-long.md。---
与长篇的关键差异
| 维度 | 短篇 | 长篇 |
|---|---|---|
| 正文 | 单文件 正文.md,不切章 | 正文/第XXX章_章名.md 多文件 |
| 追踪目录 | 不产 追踪/ | 产 追踪/(伏笔/时间线/角色状态/上下文) |
| 角色状态 | 不产 追踪/角色状态.md | 产,由 character-state-reverse.md 反推 |
| 大纲体系 | 不产 卷纲、细纲 | 产 大纲/卷纲_第X卷.md + 大纲/细纲_第N章.md |
| 大纲目录 | 不产 大纲/ 目录 | 产 |
| 续写衔接 | story-short-write Phase 3(逐场景写作) | story-long-write 日更循环 |
迁移时严禁误建 `追踪/`、`大纲/`、`正文/` 等长篇目录。
---
短篇目标工程结构
{短篇标题}/
├── 设定.md ← 含核心框架 + 对标摘要
├── 小节大纲.md ← 按段-小节结构反推
├── 正文.md ← 单文件全文正文
└── 对标/{书名}/ ← 可选:拆文引用视图
├── 拆文报告.md
├── 情节节点.md
└── 写作手法.md---
映射总览
| 拆书产物 | 短篇工程文件 | 转换方式 |
|---|---|---|
原文全文(拆文库/{书名}/原文/) | {标题}/正文.md | 单文件迁移,按 format-and-structure.md 规范化格式(小节标记 ###1.、段间仅单换行、对话引号按项目/平台约定统一);原文已是成稿,不重写内容,只规范格式 |
拆文报告.md 的故事核/题材/对标字段 | {标题}/设定.md(核心框架区) | 反推核心框架(见下方「设定.md 反推规则」),对齐 story-short-write/SKILL.md 核心框架模板 |
情节节点.md 的功能分段 | {标题}/小节大纲.md | 反推小节大纲(按开头段/铺垫段/升级段/反转段/结尾段,钩子字段标 [待补充]) |
拆文报告.md + 写作手法.md | {标题}/设定.md(对标摘要区) | 把结构/情绪/反转/写作手法写入对标摘要 |
拆文库/{书名}/ 整体 | {标题}/对标/{书名}/ | 可选:复制为引用视图,供续写阶段按需加载 |
---
设定.md 反推规则
目标文件格式对齐 story-short-write/SKILL.md 核心框架模板,分两个区块:
区块一:核心框架
从 拆文报告.md 的故事核、结构划分、人物分析等字段提取,填入以下模板:
## 短篇核心框架
### 基本信息
- 标题:{原书名}
- 目标字数:{原文实际字数} 字
- 目标平台:{从拆文报告提取,无则填 [待补充]}
- 情绪目标:{从拆文报告「情感线/爆点分析」提取读者预期感受}
### 一句话梗概
{主角 + 困境 + 反转 + 情绪落点(从拆文报告故事核提取)}
### 核心反转
- 反转类型:{从拆文报告反转分析提取:身份反转/视角反转/动机反转/时间线反转}
- 反转内容:{一句话描述}
- 铺垫线索:{从情节节点中的「铺垫」类节点提取,至少 3 个;不足时标 [待补充]}
### 情绪设计
- 开头情绪:{从情感曲线第一个节点提取}(强度 {1-10})
- 中段情绪:{中段情感节点}(强度 {1-10})
- 反转情绪:{反转节情感峰值}(强度 {1-10})
- 结尾情绪:{结尾节情感}(强度 {1-10})
### 人设速写
- 主角:{一句话人设,从人物分析提取}
- 关键角色:{一句话人设}
- 关系:{他们之间的关系}不确定字段一律加 [待补充] 标记,不留空字段。区块二:对标摘要
从 拆文报告.md 和 写作手法.md 提取,汇总为对标摘要区块:
## 对标摘要:{原书名}
### 故事结构
{从拆文报告「功能分段」字段提取,概述各段功能}
### 情绪节奏
{从情感曲线/爆点分析提取,描述情绪走势与峰值位置}
### 核心反转机制
{从反转机制分析提取,含铺垫路径}
### 可复用写作手法
{从写作手法.md 或拆文报告「可复用结构」字段提取,≥3 条}---
小节大纲.md 反推规则
从 情节节点.md 的功能分段结构提取,映射到短篇段-小节结构。
段级映射
| 短篇段名 | 对应情节节点功能段 | 说明 |
|---|---|---|
| 开头段 | 开端(引入主角/世界/困境) | 通常 1-2 个小节 |
| 铺垫段 | 发展前期(冲突积累/伏笔布置) | 通常 2-4 个小节 |
| 升级段 | 发展后期(冲突升级/误解加深) | 通常 2-3 个小节 |
| 反转段 | 高潮(核心反转引爆) | 通常 1-2 个小节,情绪峰值 |
| 结尾段 | 结局(收束/情绪落点) | 通常 1-2 个小节 |
小节条目模板
## 开头段
### 小节 1
- 核心事件:{从情节节点提取该分段的主要情节点}
- 情绪目标:{对应情感曲线节点的情绪词}
- 章首钩子:[待补充]
- 章尾钩子:[待补充]
- 参考字数:{按原文对应段落字数估算}钩子字段标 [待补充]——无法可靠提取,留给用户或续写时填写。小节数量推算
按原文实际字数估算:总字数 ÷ 1000 ≈ 小节数(短篇参考区间 8-15 个小节)。小节数与正文实际段落结构一致是质量清单必检项。
---
正文.md 格式规范
将原文迁移为单文件 正文.md,格式按 format-and-structure.md 规范化:
| 规范项 | 要求 |
|---|---|
| 小节标记 | ###1. ###2. ###3.(短篇通用格式;用户指定平台时按 format-and-structure.md 平台覆盖表切换) |
| 段落划分 | 按戏剧单元/镜头/一件事结束自然断段;不按固定字数强拆;完整推理、氛围、情绪链可保留稍长段,避免通篇同长度或碎成提纲 |
| 段间空行 | 正文相邻段落之间只允许一个换行符 `\n`,不得出现空行或 \n\n |
| 对话引号 | 默认 "" 半角双引号;知乎盐言平台可用 「」 |
| 缩进 | 无缩进,不用全角/半角空格 |
| Markdown | 正文段落中不使用 ** * # --- 等 Markdown 语法(仅小节标记除外) |
原文内容不改动,只做格式规范化(分段、引号统一、小节标记添加)。
---
对标引用视图(可选)
将 拆文库/{书名}/ 整体复制为 {标题}/对标/{书名}/,供续写阶段的对标上下文加载:
{标题}/对标/{书名}/
├── 拆文报告.md
├── 情节节点.md
└── 写作手法.md此视图为可选项(story-short-write/SKILL.md 中 对标/ 目录标注「可选」)。建议默认生成,以便续写时自动按「对标上下文加载」规则检索。
---
质量检查清单
Phase 3-S 迁移完成后执行:
- [ ]
正文.md单文件存在且格式符合format-and-structure.md(小节标记、段落划分/主语节奏、段间仅单换行、引号格式) - [ ]
设定.md含核心框架区块 + 对标摘要区块,且核心框架对齐story-short-write/SKILL.md模板 - [ ]
小节大纲.md节数与正文实际段落结构一致 - [ ] 所有
[待补充]标记已添加(不确定字段不留空) - [ ] 未误建
追踪/、大纲/、正文/等长篇专属目录
Related skills
FAQ
What does story-import do?
|
When should I invoke story-import?
|
Where is the source documentation?
Ground claims in SKILL.md excerpts and linked reference files from the cached docs.
Is Story Import safe to install?
skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.