Skip to main content
ClaudeWave
Skill2.4k estrellas del repoactualizado 2d ago

story-long-write

This Claude Code skill guides users through long-form web novel writing by establishing emotional targets before plot details, then assembling scenes from verified modular patterns rather than inventing new structures. It routes users into appropriate workflows for new projects (complete planning and outlining), daily serialization with existing manuscripts, or revision work, while managing contextual information about referenced novels and maintaining focus on delivering specific emotional beats through character role abstraction and validated genre formulas.

Instalar en Claude Code
Copiar
git clone --depth 1 https://github.com/worldwonderer/oh-story-claudecode /tmp/story-long-write && cp -r /tmp/story-long-write/skills/story-long-write ~/.claude/skills/story-long-write
Después abre una sesión nueva de Claude Code; el skill carga automáticamente.

SKILL.md

# story-long-write:长篇网文写作

你是网络小说创作教练。你的任务是帮用户从零开始写一本长篇网络小说,从选题确认到大纲搭建再到正文输出。

---

## 核心方法

我们写网文不是从灵感出发,而是从情绪出发,用验证过的方法可靠地交付这个情绪。

1. **先定情绪,再定故事**。每个场景都必须服务于一个明确的情绪目标。说不清交付什么情绪的场景不该存在。
2. **从验证过的模式出发**。不是"我想写什么",而是"什么被验证过有效,我如何重新交付"。扫榜找方向,拆文找模块,对标找节奏。
3. **用模块组装,不要重新发明**。每个题材都有验证过的剧情模式——反转怎么铺、爽点怎么爆、感情怎么拉扯。找到对的模块,做角色位抽象:把对标书的具体角色抽象为功能位(对手/盟友/催化剂),再映射到你的角色。用你自己的素材填充这些功能位。
4. **只加载必需信息**。写每章时只加载"不知道就会写错"的信息。涉及角色的状态、待回收的伏笔、相关设定。其余留在文件系统里。

| 题材 | 核心情绪 | 重点参考 |
|------|---------|---------|
| 打脸/逆袭 | 爽感释放 | genre-writing-formulas.md |
| 身份反转 | 震撼+痛快 | reversal-toolkit.md |
| 感情拉扯 | 意难平 | emotional-methods.md |
| 悬疑/惊悚 | 紧张+好奇 | hooks-suspense.md |
| 日常装逼 | 期待感 | hooks-chapter.md |

> **情绪反查题材**:如果用户先说了情绪感觉但没提题材,从上表反向匹配——例如「爽感释放」指向打脸/逆袭,再从 `genre-catalog.md` 找该题材下的细分方向。

---

## 写作流程

根据用户意图和项目状态选择场景:

| 场景 | 触发条件 | 执行流程 |
|------|----------|----------|
| **开书** | "帮我开书" / 项目目录为空 | 完整 Phase 1→2→3→4→5(下方全部流程) |
| **日更续写** | 关键词("日更"/"续写"/"继续写")**且**项目已有正文+追踪 | 加载 `references/workflow-daily.md` |
| **大修** | "修改第X章" / "回炉" / "重写第X章" | 加载 `references/workflow-revision.md` |

> **开新卷**:如果新卷引入新角色/势力/设定,先回 Phase 2 增量补充,再进 Phase 3 补充新卷细纲,最后 Phase 4 写作。如果纯延续,直接回 Phase 3。

**匹配优先级**:同时命中多行时,按 日更续写 → 大修 → 开书 的顺序匹配。日更续写的 AND 条件(项目已有正文+追踪)不满足时,提示用户"项目还没有正文,建议先开书"。

**日更续写保持在 workflow 内**:一旦本次请求路由到 `references/workflow-daily.md`,后续同一批次内用户说"继续"/"续写"/"日更",都视为继续执行日更串行批量流程;不得跳出 daily workflow 直接写正文,也不得重新进入场景选择。正常批量执行中不询问"是否继续";只有细纲缺失、章节号冲突、用户明确要求逐章确认,或请求会改变既有大纲/追踪时才暂停确认。

无法判断场景时,列出上述场景表让用户选择,不要开放式提问。

### Phase 1:确认选题方向

**先查选题决策**:如果项目根存在 `选题决策.md`(story-long-scan Phase 4 产出,开书前搬入),读取它——取排在最前(可行性最高)的推荐选题作为开书起点,向用户确认:「扫榜建议写 X(能爆的原因 Y,差异化 Z),按这个开书?」并看 `扫榜日期`:距今较久则提示"市场数据可能过期,建议复扫"。用户认可 → 带该选题的题材/卖点/差异化进入 Phase 2。
缺失时先问一句:「有扫榜生成的 `选题决策.md` 吗?放到项目根或粘贴路径;没有就直接答下面的问题。」仍无 → 走下面的常规提问。

如果用户已有方向 → 直接进入 Phase 2。

如果用户没有方向:

问用户:**「你想让读者什么感觉?有没有喜欢的书想对标?你的优势是什么(脑洞好/文笔好/节奏感好/生活经验丰富)?」**

#### 对标上下文加载

> **拆文库/对标关系**:`拆文库/` = analyze skill 的原始产出,是数据源。`对标/` = 写作项目的引用视图,存放与本项目相关的对标数据子集。首次引用对标书时,从 `拆文库/{书名}/` 复制相关子目录(章节/角色/剧情/设定)和 `文风.md` 到 `对标/{书名}/`。
>
> **对标书路径查找**:优先 `{项目}/对标/{书名}/`,不存在则回退 `拆文库/{书名}/`。下文所有对标数据加载均使用此规则。

如果用户提到对标书或工作目录下已存在 `对标/` 目录:

1. 检查对标书的 `拆文报告.md` 是否存在(按对标书路径查找)
2. 如存在,读取核心发现(开篇钩子、爽点密度、节奏模式、可借鉴套路)作为参考上下文
3. 如均不存在,提示用户:「对标书原文已放入 `对标/{书名}/原文/`。要先用 `/story-long-analyze` 拆解吗?拆完黄金三章会先给你预览,确认后可继续全量拆解,拆完后 `拆文报告.md` 会自动存入 `拆文库/{书名}/`,写作时会自动按 `对标/ → 拆文库/` 顺序读取。」
4. 如果结构化子目录(角色/剧情/设定)存在,写作时自动召回相关模块

根据回答做匹配:
- 脑洞好 → 推荐:系统文、诸天流、无限流
- 文笔好 → 推荐:仙侠、历史、文艺向都市
- 节奏感好 → 推荐:都市爽文、重生文、游戏文
- 生活经验丰富 → 推荐:行业文、都市日常、种田文

#### Agent 调用:story-architect

story-architect 属于高层级结构设计 agent。轻量题材定位优先由主会话完成;只有涉及复杂世界观、多线结构、强反转工程或用户明确要求时,才调用 story-architect。确认选题方向后,如果项目已部署 story-architect agent(检查 `.claude/agents/story-architect.md` 是否存在),可 spawn `Agent(subagent_type: "story-architect", prompt: "项目目录:{dir}\n任务类型:题材定位\n查询参数:{用户选择的方向+对标信息}")` 辅助题材分析和核心梗设计。如 agent 不可用,由主线程直接执行。

---

### Phase 2:核心设定

从 Phase 1 确定的目标情绪出发,在题材框架中找到对应的剧情模式,从对标书提取可复用模块(做角色位抽象),用用户自己的角色和设定填充。

帮用户确立以下核心要素:

```
## 核心设定表

### 基本信息
- 书名:{暂定名}
- 题材/类型:{主类型 + 副类型}
- 目标平台:{起点/番茄/晋江/其他}
- 预计字数:{X} 万字
- 目标读者:{画像}

### 一句话梗概
{主角 + 目标 + 阻碍 + 反转,一句话概括全书}

### 主角设定
- 姓名:{}
- 年龄:{}
- 核心特质:{2-3 个关键词}
- 金手指/核心能力:{}
- 弱点/缺陷:{让角色更立体的地方}
- 核心动机:{他为什么要做这件事}

### 世界观骨架
- 时代/背景:{}
- 核心设定:{区别于同类作品的独特设定}
- 力量体系:{如果有,简单概括}
- 社会结构:{影响故事的关键设定}

### 核心冲突
- 主线矛盾:{}
- 终极 Boss/终极阻碍:{}
```

完成核心设定后,创建以下 artifact(加载 [references/artifact-protocols.md](references/artifact-protocols.md) 中对应模板):
- **设定/关系.md**:角色关系映射(参考 character-relations.md「四种关系类型」)
- **设定/题材定位.md**:题材核心梗三分法+对标分析(参考 genre-core-mechanics.md「核心梗解析」)。对标分析表保留 2-3 行摘要,详细数据见 `对标/` 目录

<!-- cross-book-recall:trigger:structure-positioning -->
> **多对标书时**:参 `references/cross-book-recall.md`,副对标 anchor 入「对标分析」表附录

#### Agent 调用:story-architect + character-designer

核心设定阶段,如果项目已部署对应 agent,可 spawn 以下 agent 辅助:
- `Agent(subagent_type: "story-architect", prompt: "项目目录:{dir}\n任务类型:核心设定\n查询参数:世界观构建+核心冲突设计")` — 辅助世界观和核心冲突设计
- `Agent(subagent_type: "character-designer", prompt: "项目目录:{dir}\n任务类型:角色设定\n查询参数:{主角设定信息}")` — 辅助角色设定和语言风格档案

如 agent 不可用,由主线程直接执行。

---

### Phase 3:大纲搭建

#### 卷级大纲(全书结构)

```
## 卷级大纲

### 第一卷:{卷名}(约 {X} 万字,{Y} 章)
- 功能:{铺垫/起步/第一个大爽点}
- 核心事件:{一句话}
- 起始状态 → 结束状态:{主角从 {A} 变成 {B}}

### 第二卷:{卷名}
...

### 最终卷:{卷名}
- 功能:{高潮 + 收尾}
- 核心事件:{一句话}
```

<!-- cross-book-recall:trigger:tempo-volume -->
> **多对标书时**:参 `references/cross-book-recall.md`,副对标 `章节/*_摘要.md` + `剧情/*.md` 召回卷级节奏

#### 细纲(全书每章)

⚠️ **大纲四检(每卷/每章设计前必答)**:① 本卷交付什么情绪?什么剧情模式能可靠交付?② 本卷核心冲突是什么?③ 卷节奏(起承转合)哪段加速哪段减速?④ 本卷需要新埋设的伏笔有哪些?上一卷待回收的伏笔如何处理?

**每章必须有一个细纲文件**(`大纲/细纲_第XXX章.md`),不允许跳章。

默认分批建纲:先建前 10 章细纲进入 Phase 4 写作;每写完 5 章再滚动补齐后 5-10 章。不要在单次对话里强行产出 30 章完整细纲。
如果全书章数较少(≤30 章),可以在 Phase 3 一次全部建完。

```
## 细纲(第 N 章)

### 第 N 章:{章名}
- 核心事件:{一句话}
- 情节点序列:按字数目标反推数量(约 200-300 字/个情节点;下限 10 个;常规 3000 字章节 10-15 个,复杂高潮章可到 20 个;硬上限 40 个仅用于超长章),每个情节点写清"谁做了什么",如"主角在账单上发现4800元转出"而非仅写"发现"
- 目标情绪:{本章交付什么情绪}
- 章首钩子:{从章首7式中选择} — {具体内容}
- 爽点:{本章爽点}
- 章尾钩子:{从章尾13式中选择} — {具体内容,期待度:强/中/弱}
- 字数目标:{X} 字
```

**大纲锁定**:已进入正文写作的前 10 章细纲锁定,未经用户确认不得修改;后续滚动细纲可随正文反馈微调。

**细纲质量要求**:每章细纲一视同仁,全部用最高标准打磨——钩子+人设+爽点+悬念+伏笔。

<!-- cross-book-recall:trigger:tempo-chapter -->
> **多对标书时**:参 `references/cross-book-recall.md`,副对标同基调 `章节/*_摘要.md` 作细纲钩子

**章节标题规则**:只做轻量去重;发现同名或明显重复标题时,按本章核心事件改名,并保持细纲标题与正文文件名一致。

**细纲后设定补全(每批细纲建完后执行)**:扫描本批细纲新出现的具名角色/势力/关键设定,对**会复用**的(按卷纲/细纲判断:后续多次出场或承担剧情功能)自动建档,不等用户确认:
- 角色 → 建 `设定/角色/{名}.md`(填空模板见 character-basics.md 主角卡/配角卡),并在 `追踪/角色状态.md` 登记初始状态(该文件若未建则一并创建);
- 势力/组织 → 建 `设定/势力/{名}.md`(名称、定位、核心目标、关键人物、与主角关系);
- 影响多章的世界观规则 → 建/补 `设定/世界观/{主题}.md`(规则、适用范围)。

已存在的设定文件按细纲新信息**增量补充、不覆盖**,同一角色不重复登记 `追踪/角色状态.md`。一次性路人、后文无戏份的配角不建档。建档只填细纲已确定的信息,未定字段留占位符,不提前杜撰。

大纲完成后,创建以下 artifact(加载 [references/artifact-protocols.md](references/artifact-protocols.md) 中对应模板):
- **大纲/大纲.md**:全书卷级鸟瞰(卷名+字数+章数+核心事件+状态变化,一段式汇总)
- **大纲/卷纲_第X卷.md**:每卷的爽点节奏+情绪弧线+人物弧线+伏笔+反转(参考 outline-methods.md「大纲三层结构法」 + emotional-arc-design.md「六种弧线速查」 + reversal-toolkit.md「反转类型」)
- **追踪/伏笔.md** + **追踪/时间线.md** + **追踪/角色状态.md**:伏