# Character Distillation

> 从小说原文中蒸馏角色人格——提取角色的说话方式、心智模型、决策逻辑、 道德边界与盲区，输出结构化人格档案。改编自女娲.skill 五层架构和 forge-skill 两阶段工作流，专用于小说改写中的人物一致性保障。

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

---


# 人物蒸馏——从小说原文提取角色人格

## 来源
改编自两个开源项目：
- **女娲.skill** (`alchaincyf/nuwa-skill`)：五层认知蒸馏架构
- **Forge Skill** (`YIKUAIBANZI/forge-skill`)：两阶段人格引擎（Forge + Use）

## 触发条件
- 改写小说前需要分析人物
- 用户反馈"人物写崩了""性格不一致"
- 需要确保跨章节的角色行为一致性

## 五层蒸馏架构

蒸馏一个小说角色，不是提取他的工作习惯，而是提取他的**认知操作系统**：

| 层次 | 说明 | 示例问题 |
|------|------|----------|
| **怎么说话** | 表达DNA——语气、节奏、用词偏好、句式特征 | 他说长句还是短句？有口头禅吗？用什么比喻？ |
| **怎么想** | 心智模型、认知框架 | 他用什么框架理解世界？他的核心信念是什么？ |
| **怎么判断** | 决策启发式 | 面对两难他会怎么选？优先级是什么？ |
| **什么不做** | 反模式、道德边界、价值观底线 | 他绝对不做什么？什么情况下会破例？ |
| **知道局限** | 诚实边界——他意识不到自己的什么问题？ | 他的盲区是什么？什么事他对自己撒谎？ |

> **一个不告诉你角色局限在哪的分析，不值得信任。**

## 工作流程（四阶段）

### Phase 1: 六路并行采集

从原文中按六个维度并行提取角色的所有痕迹：

1. **对话记录**：所有该角色说的话（直接引语+间接引语）
2. **行为记录**：所有该角色做的动作（尤其是关键决策场景）
3. **他人评价**：其他角色如何评价、描述他
4. **内心独白**：如果原文有该角色的心理描写（第一人称或第三人称有限视角）
5. **关键决策**：角色人生中的重大选择——他选了A没选B，为什么
6. **关系动态**：他对不同人的态度差异（这是探测人格的最快方法）

### Phase 2: 三重验证提炼

一个特质要被收录为角色的核心人格，须满足：

- **跨场景一致性**：该特质在 2+ 个不同场景中显露（不是单次偶然行为）
- **预测力**：用该特质能推断角色在未发生场景中的反应（有解释力）
- **排他性**：不是所有类似角色都会如此（有区分度）

### Phase 3: 构建人格档案

输出结构化人格档案，包含：

```
角色名：
原型标签：（1-3个关键词，如"猎食者""殉道者""背叛者"）
核心动机：（他最想要什么——不是表面的想要，是深层驱动）
情感模式：（如何表达/压抑情感？如何对待亲密关系？）
决策优先级：（碰到冲突时价值排序是什么？）
道德边界：（底线在哪里？什么情况会破例？）
盲区清单：（他意识不到自己的什么问题？）
表达DNA：
  - 句式特征：（长短句偏好、问句/陈述比例、打断倾向）
  - 用词偏好：（高频词、习惯比喻、情绪词选择）
  - 语气范围：（愤怒时/温柔时/恐惧时的语气变化）
关系模式：（对强者/弱者/平等者/异性的不同行为模式）
发展弧线：（角色的起点→转折→终点，人格是否可改变）
```

### Phase 4: 边界测试

- 用 3 个该角色在原文中明确做过的事回溯验证，人格档案能解释其行为才通过
- 用 1 个原文未发生但可能发生的假设场景测试，人格档案应产生符合逻辑但非显而易见的预测

## 蒸馏示例

### 输入：从卡特的行为中蒸馏

**Phase 1 采集的信号**：
- 对话："程太太，你老公出轨了。你要报复。" → 直接、不绕弯、利用弱点
- 行为：操完递矿泉水"喝慢点" → 功能性关怀，把猎物当资产维护
- 关系动态：手机分类标签"大学生""骚妇""站街" → 去人性化的收藏品心态
- 关键决策：父亲死后做得很用力但不说话 → 情感表达通道只有性和沉默

**Phase 2 验证**：
- 跨场景一致：功能性关怀（倒水、盖外套）出现在 5+ 场景，无一次口头安慰
- 预测力：他绝对不会说"我爱你"→ 验证通过（全书无此行为）
- 排他性：程刚也会倒水——但程刚倒水+说"辛苦了"，卡特倒水+沉默。区分成立。

**Phase 3 输出人格档案**：

> **角色名**：卡特
> **原型标签**：猎食者、殖民者、收藏家
> **核心动机**：征服与控制——不是性本身，是"占有另一个人的所有洞穴"
> **情感模式**：情感表达仅通过性和沉默。不说爱，说"用不腻"。最高评价是工具性的。
> **道德边界**：会威胁、会强迫、会同时睡多个女人——但不欺骗（"你又不是我老婆"是真话）
> **盲区**：他不认为自己的收藏品模式有任何问题。他分不清"需要"和"爱"。
> **表达DNA**：短句为主，陈述句多，从不反问。不解释。愤怒时行动而非言语。
> **⚠️ 写作中不可违背**：不会为任何人改变生活方式、不会承诺未来、不会因猎物痛苦而停止猎食、不会说"我爱你"

## 与改写工作流的集成

蒸馏完成后，人格档案在改写中的使用方式（Use阶段）：

1. **每次写该角色出场前，调取人格档案检查**：他的行为是否在边界内？
2. **写对话时对照"表达DNA"**：句式、用词、语气是否一致？
3. **写关键决策时用"决策优先级"验证**：他选A不选B是因为什么？
4. **新增场景（原文没有但改写需要）时**：用人格档案推断，不凭空捏造

## 常见陷阱

1. **用单次行为定义角色**：他在某个场景做了X ≠ 他的性格是X。需要跨场景验证。
2. **忽略关系动态**：他对A和对B的态度差异往往比他的"一般性格"更有信息量。
3. **把自己代入角色**：蒸馏是提取他的认知系统，不是套用自己的。
4. **把"好人"写成没有阴暗面**：有道德边界≠没有盲区。每个角色都有不自知的局限。
5. **蒸馏完了但不用于写作**：人格档案的价值在使用，不是存档。

