7 本写作书(Story Engineering、成为作家、Writing Tools、小说面面观、 我能否相信自己、小说课、风格感觉)按 15 个创作领域全量合并成综合 skill, 丢弃 v1 压缩蒸馏的思路(案例限 3 个、引文限 2 行、文件 ≤220 行)——被审计 证实丢了原文 75% 体积。 落点:.claude/skills/<slug>/ 下,每包含 SKILL.md 入口 + references/ 全量 内容(按主题拆分)+ scripts/ 可执行清单 + _coverage.md 覆盖对照表(唯一 追溯文件)。craft/ 目录只剩 books/ 原料层与 MERGE_PLAN.md / README.md / scripts/check_craft_skills.py 等 SoT。 规范要点: - 整合规范 v2:只重复合并、不压缩抛弃;举例保留具体对话/数字/动作/原句 - 追溯分离:SKILL.md 与 references/ 内容文件无《书名》unit-slug 标记, 所有来源只在 _coverage.md(落点到文件级即可) - 门禁:覆盖闭合 + frontmatter + 包结构 + 标记扫描,craft 15 个全过 craft/skills/ 的 15 个 skill 整体搬到 .claude/skills/,新建 _index.md 统管 运行时技能(33)与方法论参照(15),后者标签【方法论参照】,明示不落库、 不进 meta/chains。AGENTS.md 同步目录树与定位段。
6.4 KiB
6.4 KiB
性格即命运:设计碰撞而非制造巧合
来源:(毕飞宇《小说课》第 7 讲,案例取自《促织》"迁讷遇猾黠" + 整本书)
「蒲松龄只给了他四个字,'为人迁讷'。'为人迁讷'能说明什么呢?什么都说明不了。没听说'为人迁讷'就必须倒霉,性格从来就不是命运。问题出就出在《促织》开头的那个'里胥'身上,'里胥猾黠'。当'迁讷'遇见了'猾黠',性格就必须是命运。」
()
方法规则
命运不是性格单独决定的——是性格 + 性格碰撞出来的
- 迁讷 + 猾黠 = 必然被欺负
- 林冲(忍)+ 高俅(恶)= 必然被逼上梁山
- 哈代式的苔丝(纯)+ 失贞 = 必然悲剧
单个性格不产生命运,碰撞才产生命运。()
核心洞察
不要让你的主人公"倒霉",让你的主人公"遇到另一个人"。
"一个人遇到另一个人"——这是小说最深的结构。()
错误的"命运":
- 主人公生来就惨
- 主人公被随机事件压垮
- 主人公被作者安排"该轮到你了"
正确的"命运":
- 主人公的特定性格
- 遇上另一个特定性格的对手
- 碰撞产生必然结果
()
案例全文
案例 1:蒲松龄《促织》成名 + 里胥
成名 = 迁讷(老实、不会说话)
里胥 = 猾黠(狡猾、贪婪)
碰撞:迁讷遇上猾黠,必然被欺压
升级链条:
- 里胥报成名做里正 → 成名不敢反抗
- 促织征收 → 成名不敢敛户口
- 抓到差促织 → 成名被打得不能行走
- 儿子自杀 → 成名只能继续"用儿子换促织"
每一步都是性格的必然。
案例 2:施耐庵《水浒》林冲 + 高俅集团
林冲 = 技术好、心稳、想留在体制内
高俅 = 权贵、霸凌、不讲理
碰撞:林冲越想体面,高俅越不让
案例 3:曹雪芹《红楼梦》王熙凤 + 贾瑞
王熙凤 = 毒辣、聪明、好玩弄人
贾瑞 = 痴情、自以为是
碰撞:王熙凤"毒设相思局",贾瑞必死
案例 4:哈代《苔丝》苔丝 + 失贞的阶级
苔丝 = 纯真、忠诚
亚雷 = 资产阶级恶少
碰撞:失贞后无法在丈夫面前自处
(以上四案例均出自)
触发场景
- 你的人物"该倒霉"但没有具体原因 → 加一个对手
- 你的情节靠"巧合"推动 → 把巧合换成"性格碰撞"
- 你的主角"觉醒"了但没说服力 → 他的对手是什么性格?那个性格决定了他的觉醒路径
- 你的悲剧"不悲" → 看看读者是否同情——同情的关键是"性格可识别"
- 你写"反派人"但他像工具人 → 反派也要有"性格",碰撞才立体
()
操作步骤
步骤 1:定义"主要碰撞"
列出主角和最重要的对手 / 环境:
主角性格:A、B、C 三个特征
对手性格:X、Y、Z 三个特征
必然碰撞:主角的 [A] 遇上对手的 [X] → 必然 [事件]
步骤 2:把"巧合"翻译成"性格碰撞"
| ❌ 巧合 | ✅ 性格碰撞 |
|---|---|
| 主角出门撞见坏人在做坏事 | 主角的好奇心(性格)→ 必然去查看 |
| 仇人正好路过 | 主角的某种执念 → 必然相遇 |
| 突然生病 | 主角的某种弱点 → 加上对手的某种利用 |
| 错认了人 | 主角的某种误解倾向(性格)+ 对方的某种特征 |
检验:把这个巧合删掉,主角还会遇到这件事吗?
- 会的(因为性格)→ 巧合换得好
- 不会 → 你还有巧合没换
步骤 3:写"性格速写"
每个主要人物用 3-5 个性格词定义:
成名:迁讷、善良、无能、坚韧(妻子替他想办法)
里胥:猾黠、贪婪、霸凌
检验:
- 删掉一个性格词 → 人物会"不像" → 这个词是关键
- 加一个性格词 → 人物会"模糊" → 加多了
(注意:这 3-5 个性格词是给作者定位用的设计工具,不是写进正文的标签——"性格要通过动作显现,不是形容词",见本条所属常见错误表,以及与 的合并说明 references/detail-mosaic.md"多书合并点"节。)
步骤 4:设计"性格链"
不是一次碰撞——是连串碰撞:
性格 A 遇性格 X → 事件 1
事件 1 改变 → 性格 A 暴露新侧面
新侧面 + 性格 Y → 事件 2
事件 2 → 性格 A 再暴露
...
林冲的链:
- 忍(性格)+ 高俅霸道 → 被陷害
- 忍 + 路上被欺 → 咬牙忍
- 忍 + 草料场 → 还在忍
- 忍 + 听到阴谋 → 忍不了——爆发
- 爆发 + 柴进 → 上山
步骤 5:写"性格判断"
每个主要人物应该有一个"判断瞬间"——读者看到他做这一个动作 / 选择,就能识别他:
- 成名:听到"迁讷" → 立刻知道这是什么样的人
- 林冲:被陷害后第一反应是"忍" → 立刻知道
- 哈代苔丝:失贞后依然要"诚实" → 立刻知道
检验:你的主角有这样一个"判断瞬间"吗?
(以上步骤均出自)
常见错误
| 错误 | 后果 | 修正 |
|---|---|---|
| 性格太"模糊"(既 A 又 B 又 C) | 读者抓不住 | 3-5 个核心性格,且要有"主要矛盾" |
| 反派性格太"扁平" | 假 | 反派也要有"性格即命运" |
| 性格没碰撞只"遭遇" | 假 | 强调"碰撞"——是性格之间的化学反应 |
| 把"性格"等于"标签" | 假 | 性格要通过动作显现,不是形容词 |
()
适用边界
- 适合:所有虚构叙事(小说、剧本、电影)
- 慎用:群像小说(需要多对碰撞)
- 不适用:纯意识流、纯抒情(它们靠情绪,不靠碰撞)
()
一句话总结
不要让你的主人公"倒霉",让他的"特定性格"遇到"另一个特定性格"——命运自己会来。
()
跨 skill 链接
- 与
bifeiyu-shakespeare同源:性格 + 现实的逻辑推演。(bifeiyu-shakespeare 归综合 skill theme-and-stance) - 与
bifeiyu-anti-norm关联:反常动作是"性格即命运"的爆发点。(同在本包,见 references/abnormal-moment.md) - 与
bifeiyu-base-temp配合:性格的"基础体温"是性格的色彩。(bifeiyu-base-temp 归综合 skill prose-craft) - 与
bifeiyu-mercy-ruth配合:作家要"心慈手狠"才能让性格碰撞产生必然命运——不能因心软去救人物。(bifeiyu-mercy-ruth 归综合 skill theme-and-stance)
(;综合 skill 归属标注为本次合并所加)