init: story-skill - standardized novel continuation agent workflow

- Agent identity + mandatory workflow (AGENTS.md)
- Style continuation skill (SKILL.md)
- 5 reference file templates (characters/world_building/timeline/style/plot_state)
- Batch reading protocol with sequential sub-agents + spot-check review
- Bridge script for Gateway API calls with auto novel copy
- METHODOLOGY.md explaining the three pillars
- README.md with installation guide
This commit is contained in:
root
2026-05-31 17:45:01 +08:00
commit cf8f68533c
11 changed files with 1003 additions and 0 deletions

View File

@ -0,0 +1,242 @@
---
name: novel-style-continuation
description: 小说风格续写。当用户提供小说原文(任意章节)时,提取其语言风格、叙事节奏、角色语气和世界观设定,并以相同的文风继续创作后续内容。触发场景包括:"续写小说"、"继续这个故事"、"模仿这个风格写作"、"帮我写下一章"。
---
# Novel Style Continuation
## 铁律(写前必读)
### 🔴 角色铁律
1. **绝不可以混淆人物名字与特质**。张三的性格不能写成李四,张三的过去不能安在李四头上。
2. **绝不可以给角色编造原文中不存在的设定**。角色有没有多重人格、有几个、分别叫什么——全部以原文为准。
3. **角色的说话方式必须与原文一致**。原文中说话简短有力的人,不能变成长篇大论的哲学家。
4. **每一次出场都必须问:这个角色在这里会这样表现吗?** 如果不会,重新写。
5. **角色关系网必须在原文中可验证。** 谁认识谁、谁不知道谁、谁和谁是恋爱关系——原文没写过的关系就是不存在。
### 🔴 世界观/战力铁律
6. **绝不可以自创法则/技能/境界名称。** 原文没有出现过的法则名称、招式名称、境界划分,一律不能写。
7. **绝不可以混用体系。** 以原文设定的体系为准,不能把不相关的体系设定混入。
8. **战力提升必须有原文依据的铺垫。** 不能一句话让角色从普通觉醒到法则级。升级要有过程。
9. **敌我双方的力量对比必须基于原文。** 不能为了让主角方赢而降低敌人战力,也不能为了让场面精彩而拔高敌人。
### 🔴 写作铁律
10. **通读原文最近50章后才能动笔。** 只读几章就写,等于盲写。
11. **写前必须查阅所有 references/ 文件。** 人物数据库、世界观、情节状态,缺一不可。
12. **人物内心独白不能违背角色设定。** 原文中从不多愁善感的角色,在续写里不能突然变成感时伤怀的诗人。
---
## 常见误区(已踩过的真实翻车记录)
**① 把角色A的性格安到角色B身上**
→ 表现:A明明冷静寡言,续写里让他热血澎湃地喊口号;B明明冲动直率,续写里让他冷静分析局势。
→ 解决:写每个角色出场时,先在人物数据库里核对一句话:这个角色在原文中是什么性格?他/她会这样说话吗?
**② 给敌人编造原文不存在的属性/称号**
→ 表现:原文敌人没有某些称号/能力,续写里硬加上去。
→ 解决:所有敌人名称/称号/能力,必须是「原文中出现过的」。没出现过的就是编的,编的就不能写。
**③ 编造不存在的新法则**
→ 表现:原文从未出现的法则名称,续写里让角色喊一声就觉醒。
→ 解决:法则名称、觉醒方式、效果全部以原文为准。原文没写过的法则,续写里不能出现。
**④ 过度心理描写,角色变"文青"**
→ 表现:原文杀伐果断的角色,续写里花三页纸描述内心挣扎。
→ 解决:心理描写的篇幅和深度必须与原文一致。原文里角色从不纠结的事,续写里不能让她纠结。
**⑤ 把战友情写成浪漫感情**
→ 表现:原文是互相信赖的战友关系,续写里写成暧昧或恋爱。
→ 解决:角色间的关系性质(战友/恋人/敌对/利用)严格遵循原文。原文没有暧昧暗示的,续写不能无中生有。
**⑥ 无视当前的剧情位置**
→ 表现:明明角色正在生死决战中,续写让她停下来做哲学思考。
→ 解决:动笔前先在 plot_state.md 确认:这个角色现在在哪里?在做什么?当前有没有迫在眉睫的威胁?
---
## 核心原理
续写的本质是**风格复现 + 情节延续**。模型需要:
1. 从原文提取风格特征(不是总结剧情)
2. 在后续写作中严格遵循这些特征
3. 主动追踪人物状态和剧情走向,避免前后矛盾
---
## 工作流程
### Step 0:读取参考文件
每次动笔前,**必须先读**以下五个文件(一个不能少):
📍 `references/characters.md` — 人物关系网
📍 `references/world_building.md` — 世界观与战力体系
📍 `references/timeline.md` — 时间锚点
📍 `references/style.md` — 风格分析
📍 `references/plot_state.md` — 情节状态
---
### Step 0.5:文件不存在时的处理(批次阅读法 — 正确使用子代理)
**🔴 铁律:禁止子代理平行阅读。** 多个子代理同时读不同章节会导致关系网错乱。
**✅ 正确方式:子代理依次序读。** 每批一个子代理,读完就丢,下批拉起新子代理。
**🔴 铁律:禁止根据章节标题推断剧情。** 必须读原文正文。
**🔴 铁律:禁止引用自生成的续写内容作为参考来源。唯一合法来源是原文。**
如果上述文件不存在,按以下方式建立:
```
回合1:子代理A → 读第1~50章 → 更新 characters/world_building/timeline → 丢弃
回合2:子代理B → 先读现有参考文件 → 读第51~100章 → 在前人基础更新 → 丢弃
回合3:子代理C → 先读现有参考文件 → 读第101~150章 → 更新 → 丢弃
……
```
**关键规则:**
- 🔴 **子代理必须读正文,不能只读标题。** 告知子代理`novel_source.txt`在工作区,让它直接 `read()` 正文
- 🔴 每个新子代理**必须先读现有的参考文件**,再读新章节
- ✅ 每批必须按章节顺序,不得跳过
- ✅ 每批读完当场更新到磁盘
- ✅ **主agent必须抽查验收**:每个子代理完成后,随机挑2~3个事件与原文比对。发现错误 → 拉起新子代理,给更小批次(10~15章),重新读、重新生成。不修正。
### Step 1:批次阅读 & 更新参考文件
**🔴 禁止子代理平行阅读。** 阅读必须在当前会话中按顺序完成。
**🔴 禁止根据标题推断剧情。** 必须读原文正文。
**🔴 禁止引用自生成的续写内容作为参考来源。唯一来源是原文。**
通读原文最新章节(至少最近50章),**不是为了记住故事,而是为了更新参考文件**。推荐每30~50章一批,读一批就更新一批。
#### 1a. 更新 characters.md
每次通读后,核对并更新角色数据库:
- 新增角色加入数据库
- 现有角色的性格/关系有变化的,更新
- **特别注意**:角色姓名 100% 正确。每个出场角色的名字核对一遍,确认没写错人。
#### 1b. 更新 world_building.md
- 更新已出现的法则名称、效果
- 更新当前战场、势力分布
- **删除你自己上次写时添加的任何自行编纂的内容**
#### 1c. 分析/更新 style.md
分析以下维度,每项用 1-2 句话描述:
**语言层面**
- 句式偏好
- 用词风格
- 修辞习惯
**叙事层面**
- 视角
- 节奏
- 氛围
**对话层面**
- 角色说话方式
- 对话占比
- 潜台词风格
#### 1d. 更新 plot_state.md
格式:
```
# 情节状态
## 当前章节位置
- 上一章是:第X章 [标题]
- 当前场景:地点/战场
- 当前时间线:与主线的关系
## 角色状态(活跃角色)
| 角色名 | 当前位置 | 当前状态 | 目标/任务 |
|--------|---------|---------|-----------|
## 各角色关系当前状态
- A 知道 B 的秘密吗?
- C 和 D 目前是敌对还是联手?
## 已在场物品/地点
- [地点]:描述
- [重要道具]:[用途]
## 已埋伏笔(原文已有的)
- [伏笔1]:[原文埋设的位置]
## 待解决冲突
- [冲突1]
- [冲突2]
```
### Step 2:续写前的强制自检
**动笔之前,逐项自检以下问题。一项一项说清楚。不过不要输出给用户,自己心里有数就行。**
#### 角色一致性检查
- [ ] 这一章出场的每个角色,名字是否正确?(而不是写成了另一个人的名字)
- [ ] 这个角色的性格/说话方式,是否与原文该角色的性格 100% 一致?
- [ ] 这个角色的当前心境,是否与原文中他/她当前处境的合理反应一致?
- [ ] 这个角色和其他角色的关系性质(是战友/恋人/敌人/利用),是否与原文一致?
- [ ] 有没有给角色添加原文中不存在的背景/特质/能力?
#### 世界观一致性检查
- [ ] 本章中出现的所有法则/技能/境界名称,是否在原文中出现过?
- [ ] 有没有把不相关的体系混进来?
- [ ] 敌人名称和设定是否来自原文?
- [ ] 战力升级是否有足够铺垫,不突兀?
#### 情节连续性检查
- [ ] 本章从上一章结尾的位置开始吗?
- [ ] 是否接住了上一章留下的悬念/冲突?
- [ ] 新引入的情节/事件,是否与原文已有的设定不冲突?
### Step 3:续写
严格遵循参考文件和自检结果。写作过程中,**每写一个角色出场,暂停一次,在脑子里过一遍**:这个角色的名字、性格、关系、当前状态——全部和 characters.md 核对过。
**写作规范:**
- 章节长度:2000-4000 字(与原文相当)
- 每章至少一个情节点推进
- 避免在第一章就引入太多新角色
- 保持既有角色的说话方式一致
- 合理埋设新伏笔,留住读者
**角色出场自问(每一段对话/动作前):**
1. 这个角色叫什么名字?(确认不是叫另一个角色的名字)
2. 这个角色目前在哪里?在做什么?
3. 这个角色的性格核心特质是什么?
4. 以他/她的性格,此情此景下会说什么、做什么?
5. 这段对话/动作与原文角色关系网矛盾吗?
**输出格式:**
续写内容直接输出为 Markdown,使用二级标题 `## 续写内容` 包裹,后接正文。不需要额外说明"以下是续写"。
### Step 4:写完后二次检查
写完一整章后,再把 Step 2 的自检逐项过一遍。发现不一致的地方立刻修改。
### Step 5:更新 plot_state.md
续写完成后,询问用户是否满意:
- 满意 → 自动更新 `references/plot_state.md`(添加新章节的情节状态)
- 不满意 → 询问需要修改的具体方向,针对性重写
---
## 资源说明
### scripts/
本 skill 不需要脚本。风格分析和续写完全由模型本身完成。
### references/
- `characters.md` — 人物关系网(角色名/性格/关系/说话方式)
- `world_building.md` — 世界观与战力体系(法则/势力/背景)
- `timeline.md` — 时间锚点(关键事件时间线)
- `style.md` — 从原文分析得出的风格特征
- `plot_state.md` — 当前情节状态追踪文件
---
**核心原则:不编造,只延续。一切从原文来,一切回原文去。**

View File

@ -0,0 +1,34 @@
# 人物关系网
> **使用说明**:每个角色一段,记录姓名、别名、性格核心特质、关系、说话风格、当前状态。
> 续写前必须通读最近章节确认角色当前状态是否有变化。
## 主角(信息从原文提取)
### [角色名]
- **别名**:
- **身份**:
- **性格核心特质**:
- **角色关系**:
- [相关角色A]:[关系描述]
- [相关角色B]:[关系描述]
- **说话风格/专属口头禅**:
- **战力/能力**:
- **当前状态**:
## 重要配角
### [角色名]
- **别名**:
- **身份**:
- **性格核心特质**:
- **角色关系**:
- **说话风格**:
- **当前状态**:
## 敌方/其他势力
### [角色名]
...
*(按需扩展,一个角色只写一处)*

View File

@ -0,0 +1,29 @@
# 情节状态
> 每次续写后更新,记录当前剧情位置。
## 当前章节位置
- 上一章:第X章 [标题]
- 当前场景:
- 时间线:
## 角色状态(活跃角色)
| 角色名 | 当前位置 | 当前状态 | 目标/任务 |
|--------|---------|---------|-----------|
| | | | |
## 各角色关系当前状态
-
## 已在场物品/地点
-
## 已埋伏笔(原文已有的)
-
## 待解决冲突
-
## ⚠️ 注意
- **敌人设定**:以原文最新描述为准。续写前必须通读原文确认
- **法则体系**:原文尚未明确展示的法则名称,续写中不能自创

View File

@ -0,0 +1,23 @@
# 风格分析(模板)
> 每次续写前分析原文风格,填写以下维度。**不预设任何写作风格偏好。**
## 语言层面
- 句式偏好:
- 用词风格:
- 修辞习惯:
## 叙事层面
- 视角:
- 节奏:
- 氛围:
## 对话层面
- 角色说话方式:
- 对话占比:
- 潜台词风格:
## 世界观与设定
- 题材类型:
- 主角当前处境:
- 主要配角及关系:详见 `characters.md`

View File

@ -0,0 +1,33 @@
# 时间锚点(Timeline)
> **使用说明**:记录小说的关键时间节点,确保续写时的情节推进不违反已有时间线。
> **不预设任何写作风格或世界观偏向。所有内容以原文描述为准。**
---
## 主线时间线
| 时间/章节 | 事件 | 备注 |
|-----------|------|------|
| | | |
---
## ⚠️ 时间锚点规则
1. **本条时间线记录所有已发生的关键事件**。续写时新增的事件必须发生在最新章节之后
2. **不能回溯改写已发生的事件。** 已标记为"已发生"的事件,在后续任何章节中不能被推翻或改变
3. **不能跳过当前时间锚点去写更后面的情节。** 续写必须从最新锚点的位置开始,按顺序推进
4. **更新规则:**
- 每次续写完成后,在表格中新增一行记录本续写章节的事件
- 新添加的事件必须与已有时间线合理衔接
- **任何与已有时间线矛盾的新事件都不能被添加**
5. **多线叙事处理:** 如果小说有并行时间线(如A和B在不同地点同时发生事件),需在备注中标注"与XX章并行"
---
## 附录:角色时间锚点
| 角色 | 最新时间点 | 当时状态 |
|------|-----------|---------|
| | | |

View File

@ -0,0 +1,46 @@
# 世界观(World Building)
> **使用说明**:从原文提取世界观设定。所有内容以原文描述为准。
> **不预设任何写作风格或世界观偏向。**
## 时代背景
(从原文中提取:时代名称、纪元、科技水平等)
## 政治格局
### 我方阵营
(势力名称、核心人物、领地/范围)
### 敌方阵营
(势力名称、核心人物、领地/范围)
### 中立/其他
(名称、立场)
## 力量体系
### 修炼/战斗方式
(从原文提取)
### 等级划分
(境界名称、顺序、突破方式——全部来自原文)
### 已知法则/能力
| 名称 | 持有者 | 效果(原文描述) |
|------|--------|-----------------|
| | | |
## 关键地点
| 地点 | 特征 | 出现章节 |
|------|------|---------|
| | | |
## 世界观铁律
1. **不要乱编新设定** — 所有世界观设定、规则、名称必须以原文为准
2. **不要混用体系** — 小说本身的体系是什么就以什么为准,不要把不相关的体系设定混入
3. **敌人名称和属性必须来自原文** — 原文中不存在的敌人称号、能力不能自创
4. **所有设定变更必须有原文依据** — 不能凭空新增原文中不存在的法则、境界、势力
5. **战力升级要有过程** — 不能一句话就让角色从当前等级跳到更高层级,升级需要铺垫