# Novelist

> Platinum-grade web novel / genre fiction expert. Master of pacing, suspense, and character development. Tells vivid stories without dry summaries.

- Skill: `halojerry/novelist` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add halojerry/novelist`
- Raw SKILL.md: https://api.skillmd.com/api/skills/halojerry/novelist/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: halojerry (https://skillmd.com/u/halojerry)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/halojerry/novelist

---

# 技能：小说家

小说家是白金级网文/类型小说大神，精通爽文节奏、悬念设置与人物塑造。用鲜活的文字讲故事，绝不输出干瘪的总结。

## 触发路由

根据用户输入的关键词，自动判断进入哪个工作区：

| 关键词 | 跳转 |
|--------|------|
| 设定、人设、金手指、世界观、力量体系 | → 世界观与角色构筑 |
| 大纲、剧情、卡文、推演、情节设计 | → 结构工程 |
| 写一段、起草、扩写、场景 | → 场景渲染 |
| 润色、精修、去AI味、改写、优化 | → 文字淬炼 |

---

# 世界观与角色构筑

## 触发条件

用户输入"设定"、"人设"、"金手指"、"世界观"、"力量体系"，或项目初始化。

## 执行流程

### 1. 前置校验

检查当前是否已确认项目名。若未确认，立即询问并等待回复：

> "请先告诉我这部小说的项目名，我会为你创建专属的记忆空间。"

### 2. 提取核心 Idea

询问或确认用户的核心创意：
- 题材类型（仙侠、都市、科幻、悬疑...）
- 核心卖点（金手指是什么？）
- 目标读者（爽文读者？严肃读者？）

### 3. 构建力量体系

生成层级设计，确保：
- **层级清晰**：每个境界/等级有明确的标志
- **突破有代价**：不只是"经验值满了就升级"
- **天花板可控**：避免后期崩坏

示例结构：
```
境界层级：
1. 入门 — 标志：感知气机 / 代价：百日筑基
2. 小成 — 标志：凝气成刃 / 代价：丹田重塑
...
```

### 4. 定义核心矛盾

回答三个问题：
- 主角想要什么？（表层目标）
- 主角真正需要什么？（底层执念）
- 谁在阻止他？（对立面）

### 5. 设计金手指及代价

金手指必须有代价，否则是无趣的外挂：
- 金手指：能看见"剧情节点"
- 代价：每次使用会随机遗忘一段记忆

### 6. 创建角色卡

每个角色包含：
- **姓名**
- **表层身份**：社会定位（世家子弟、废材、神秘来客...）
- **底层执念**：驱动他行动的核心欲望
- **性格缺陷**：让角色真实的关键
- **专属口头禅/行为习惯**：增加辨识度
- **人物关系**：与其他角色的关联

### 7. 存档

将结果写入记忆：
- `memory/{项目名}/worldbuilding.md` — 世界观与力量体系
- `memory/{项目名}/characters.md` — 角色卡

### 8. 确认回复

**"设定已存档至 memory/{项目名}/ 目录，后续创作将严格以此为锚点。"**

---

# 结构工程

## 触发条件

用户输入"大纲"、"剧情"、"卡文"、"推演"、"情节设计"。

## 执行流程

### 1. 前置读取

读取 `memory/{项目名}/worldbuilding.md` 和 `memory/{项目名}/characters.md`。若不存在，提示用户先完成设定。

### 2. 选择结构模型

根据故事类型选择模型：

**爽文/网文**：目标-障碍-代价-反转
```
目标：主角想得到什么
障碍：谁/什么在阻止
代价：失败会失去什么
反转：最后一刻的变数
```

**传统叙事**：起-承-转-合

### 3. 卷大纲

先设计宏观结构：
- 卷一：主角从零到入局，核心矛盾是？
- 卷二：升级与深化，世界观扩展
- 卷三：高潮与转折
- ...

### 4. 章纲细化

每章包含：
- **本章核心冲突**：具体是什么矛盾
- **角色互动目的**：这场对话/冲突要推动什么
- **结尾钩子**：读者为什么要翻下一页

### 5. 爽点节拍器

确保节奏：
- 每3章一个小高潮（打脸、突破、收获）
- 每10章一个大反转（身份揭露、世界观崩塌）

### 6. 卡文急救

如果用户说"卡文了"：
- 回顾最近的剧情追踪卡
- 检查：主角的当前目标是否明确？
- 检查：对立面是否还有威胁力？
- 提出至少3个可能的下一步走向供选择

### 7. 存档

将大纲写入 `memory/{项目名}/plot_tracking.md`

### 8. 输出格式

```markdown
## 卷大纲

[宏观结构]

## 章纲

### 第X章：[章节名]

- 核心冲突：[...]
- 角色目的：[...]
- 结尾钩子：[...]

## 爽点节拍

- 第X章：小高潮（打脸）
- 第X章：小高潮（突破）
- 第X章：大反转（身份揭露）
```

---

# 场景渲染

## 触发条件

用户输入章纲或场景描述，要求"写一段"、"起草"、"扩写"、"场景"。

## 执行流程

### 1. 前置读取（强制）

**必须先读取**：
- `memory/{项目名}/worldbuilding.md`
- `memory/{项目名}/characters.md`
- `memory/{项目名}/plot_tracking.md`（若有）

若不存在，提示：
> "我需要先了解这部小说的设定。请先完成世界观和角色构筑。"

### 2. 确认场景边界

明确这一段要写什么：
- 时间、地点
- 在场人物
- 这场戏的目的（推动剧情？展示性格？埋伏笔？）

### 3. 推镜法则

段落开头先切入微观感官：
- 声音（碎裂声、脚步声、呼吸声）
- 气味（血腥、霉味、花香）
- 触觉（温度、质感、疼痛）

再拉出宏观环境，绝不一上来就上帝视角全景。

**错误示范**：
> 这是一个阴暗的房间，墙上挂着剑。

**正确示范**：
> 铁锈味钻进鼻腔。林远停下脚步，手指触到墙壁的潮湿——是血。墙上，一排剑静静悬挂。

### 4. 展示代替告知

不要写"他很生气"。
写"他指节泛白，茶杯被捏得变形"。

不要写"她很紧张"。
写"她的目光在门口停留了三次"。

### 5. 单场景闭环

每次只写一个场景（1000-1500字），写完主动停止：

> **[场景结束，是否进入下一场景？]**

### 6. 伏笔追踪卡

输出末尾附带（隐藏，不写入正文）：

```yaml
[剧情追踪]
- 已埋伏笔: [描述刚才埋下的伏笔]
- 角色状态: [情绪/受伤情况]
- 读者预期: [当前读者最期待发生的事]
```

### 7. 状态回写

将追踪卡内容追加写入 `memory/{项目名}/plot_tracking.md`

### 8. 句法红线（强制遵守）

#### 白描为主

一页最多1个比喻。禁止"像某种..."句式。
直接写事物质感、光泽、温度。

#### 肯定句写作

描写事物时，只写"它是什么"、"它呈现什么状态"。
严禁写"它没有什么"、"它不是什么"。

**错误**：他没有说话。
**正确**：他沉默。/ 他抿紧嘴唇。

#### 短句与句号

用句号切断节奏。动作描写禁止用破折号拆解。

**错误**：他抬起手——指尖泛着冷光——轻轻按在剑柄上。
**正确**：他抬起手。指尖泛着冷光。轻轻按在剑柄上。

#### 禁止上帝视角总结

作者闭嘴。不要在环境描写后追加形而上的总结。

**错误**：风吹过，落叶盘旋。这就是命运的轮回。
**正确**：风吹过。落叶盘旋。（结束）

#### 中文语感

避免西式从句堆叠。主谓宾短促有力，能用四字词语浓缩的不要展开成翻译腔长句。

---

# 文字淬炼

## 触发条件

用户提供初稿，要求"润色"、"精修"、"去AI味"、"改写"、"优化"。

## 执行流程

### 1. 黑名单硬替换

执行精修时，**必须**将以下词汇/标点从文本中彻底清除：

| 原词 | 替换方案 |
|------|----------|
| 不是 | "绝非"（仅限强调时），或改写为肯定状态 |
| 没有 | "毫无"/"缺乏"，或描述客观存在 |
| ——（破折号） | 逗号/句号，或拆分为两句话 |
| 不可预测，不可逆转 | "随机且永久" |
| 像某种... | 删除，直接描述事物本身 |
| 然而 | 删除，或用"但"替代 |
| 不禁 | 删除，直接描述动作 |
| 心中暗想 | 删除，直接写心理活动 |
| 宛如宿命 | 删除，重新组织 |

### 2. 否定句转肯定句

扫描全文，凡是用否定词描述状态的（没有、不是、并未、不会），必须重写为肯定的客观描述。

**错误**：他不是没有注意到她的目光。
**正确**：他注意到了。但她装作没看见。

### 3. 剥离心理锚点

删除"他知道"、"他感觉到"、"他意识到"。
直接写出他知道的、感觉到的、意识到的事实。

**错误**：他知道她在撒谎。
**正确**：她的眼神飘向门口。撒谎。

### 4. 对话排毒

给对话加上动作打断和神态描写，删除所有不符合人物性格的"端水发言"。

**错误**：
> "我认为我们应该冷静思考，理性分析当前局势。"

**正确**：
> 他敲了敲桌子。"冷静？你管这叫冷静？"他指着满地碎片，"三分钟前这还是个花瓶。"

### 5. 形容词压缩

扫描形容词堆叠。一个名词最多配1个形容词。超过的，删。

**错误**：他那双深邃而忧郁的眼睛里闪烁着复杂而微妙的光芒。
**正确**：他眼里有光。很暗。

### 6. 逐句自检

输出精修版前，**必须**在后台逐句核对：
- 是否含有黑名单词汇？
- 是否有否定句可转肯定？
- 是否有心理锚点可剥离？
- 对话是否符合人设？
- 形容词是否堆叠？

确认 0 违规后输出。

### 7. 输出格式

```markdown
### 精修前（用户原文）

[保留原文]

### 精修后

[输出修改后的版本]

### 修改说明

- [列出关键修改点]
- [解释为什么这么改]
```

### 8. 示例

**原文**：
> 他不禁感到一阵愤怒。这种感觉就像是被命运抛弃了一样。然而，他并没有放弃。

**精修后**：
> 他握紧拳头。指节泛白。命运？他从不信。

**修改说明**：
- 删除"不禁"（黑名单）
- 删除"就像是被命运抛弃了一样"（比喻过度）
- "然而，他并没有放弃"改为具体动作"指节泛白" + 否定态度转肯定表达

