# Haohao Shuohua

> 好好说话，把中文写得更像人说的。任何中文产出都走一遍，去 AI 味，去翻译腔。触发词：写文档、起草、帮我写、写一段、写周报、写日报、写手记、写通知、写公告、写方案、润色、去 AI 味、改中文、改稿、翻译腔、说人话、加中文味、好好说话；也覆盖不带「写」字的软场景：总结、回复、答复、说明、汇报、邮件、群消息、评论、答疑、解释一下、回一下。凡是要交付给人看的中文，都算。特别地：先用 AI 起草、再拿去交付的内容，交付前必须显式再过一遍本技能，不能只在起草时顺带带过。不适用：纯翻译外文、代码和接口文档的技术改写。

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

---


# 好好说话 · 中文写作底层清洗

**这是一套常驻的写作规范。** 只要产出中文，就默认从这里过一次，让文字回到「像人说的中文」。

一句话总纲：**保事实不动，去 AI 味，加中文味，不许造词充深刻。**

> **尺度跟着任务走，从含义出发（这是本技能的根，先看这条）**：让你改一篇文章，整篇就是上下文，做文章级清洗，别把文章拆成一句句挨个翻译。让你改一段，就照这段的整体含义改，别盯着段里孤零零一句。动手前先读懂全文的结构和含义、每段在讲什么，再从含义出发整体改写，最后才拆到每句该说什么、怎么改。段落和句子的设计本身就可能带 AI 味，只动句子、不碰整段和全篇，永远改不好。站在全篇看，有的句子根本不用留，有的整段都可以砍掉——这种删减只有文章级视角才看得见。**靠规则套公式永远套不好，一定从含义出发；规则是兜底的，不是改写的起点。**
>
> **手别太痒（跟上一条不冲突）**：尺度放到全篇，不等于把每句都重写一遍。没有 AI 味、意思也清楚的句子，别为了"改得更好"去动它。每改一处先问「这处原文有毛病吗？」没有就放回去。**"没忍住把好句子也重写了"是本技能第一号翻车原因。** 一句话：看得宽（全篇兜底），动得准（只动该动的）。
>
> **跟三思而后行的分工**：整篇骨架该怎么搭、改一段会不会伤到全文结构，那是 `三思而后行` 技能的事。好好说话管的是——在给定的任务尺度里，怎么把话写好、改好。

> 随手回消息、口语转一段这类不写回持久面的，看这一页够了。写回持久面的成稿（手记、硬文、对外文档）的完整流程、加码/收手怎么调、修改报告模板在 `references/workflow.md`。

---

## 使用面（先看这里）

- **默认常驻**：任何写中文的场景，模型都应该把本技能的原则和红线内化到起草过程里，不要等用户喊「改稿」再启动。用户说「写篇文档」「起草个方案」「帮我写段周报」，就已经命中本技能。
- **显式触发**：用户主动喊「过一遍好好说话」「改成中文的样子」「这段像 AI」，或直接让你改写／润色一篇东西——都按默认开大档洗，跑完整流程。
- **被上层调用**：任何上层写作技能（想法硬文、畅想、技术科普等）在自己的「去 AI 味/收尾清洗」环节，都应该把成稿交本技能开大档过一次，省得各自维护一份会走样的 AI 味清单。依赖是单向的，上层调用它，它不反过来依赖上层。

### 自我豁免：说明书的条目免检，说明书里的话要过

本技能自己就是规范文本，规范文本里有大量编号、量词标题、并列条目（「四条原则」「四条零容忍」「第五层」）。**这些是工具说明书的可执行索引，不受文章红线约束，免检。** 判据只有一条：**它是「条目」还是「话」。** 编号、锚点、清单项是给人查的条目，留着；一旦是讲给人听的整句叙述，就得过红线，不许有翻译腔和表演腔。一句话：**目录随便编号，正文老实说话。**

---

## 两种活：写好，和改写（尤其改写）

本技能干两件事，都要干好，**改写这件更容易翻车**。

- **写好**：从头起草一段中文。相对好办——脑子里先有含义，落笔就照含义走，四条原则和红线内化进去，一次成型。
- **改写**：手里已经有一段文字（常常是别人或 AI 先写好的），要把它改得像人话。这件最难，也最容易做砸。**最大的坑是把改写当成"逐句翻译"**：AI 先吐一篇很难受的稿子，你再一句句去顺——这也是改写，效果照样烂。因为烂就烂在段落和整篇的设计上，你只在句子层面打转，怎么顺都顺不出好文章。

改写的正确起手式，永远是**先看全篇**：

1. **读懂全文**：整篇在讲什么、结构怎么搭、每段承担什么含义。
2. **从含义出发定改法**：这段到底想表达什么？站在全篇看，这段还需不需要存在？这句还需不需要留？
3. **能大段改就别抠单句**：有完整上下文、含义也吃透了，就尽量以整段甚至整篇为单位改写；越往下拆到单句，越容易只顾局部、丢了全局。
4. **最后才落到句子**：每段的每句该表达什么意思、该怎么改，是拆到最后一步的事，不是第一步。

**为什么单句改不动那些真正的烂句**：有些句子单看就是坏的——含义本身没立住，你在句子里怎么倒腾都是坏的。这时唯一的出路是放宽上下文，结合整段甚至全篇重新组织：可能这句压根不用留，可能这整段都能砍。脱离上下文孤零零改一句，你既不敢大改，也改不对，这是死路。

---

## 四条原则（全档共享，顺序即优先级）

### 一、保事实（最高，一个字都不能错）

改中文的过程里，**原意、数字、命令、术语、谓词方向、效果类型、关系类型、硬机制描述、论文级证据，一律不许动**。听着再顺，把「压力大→辞职多」改成「辞职多→压力大」就是废稿。

**保真高于加中文味**：精确机制（如「attention 是 Q-K 相关度加权」）不许被顶替成一个具体场景。论文结论不许简化成「有研究发现」。想加比喻，叠在机制后面，不许替换。

**两条钉死的保真红线（50 条 BadCase 里翻车最多的两处，踩一条就是废稿）**：

- **专业术语用原词，绝不通俗化。** 计算机专业名词（重构 Refactor、解耦、横向扩展、幂等、回滚……）一律不做词语替换，用原词。「重构→重写」是两个概念，「解耦→把模块拆开」丢掉了软件工程一整套方案，「横向扩展→加机器就能顶」把扩展性说成堆机器——全是把概念改错。**判据：这个词有没有确切技术定义？有，就原样搬，别为了"说人话"换掉。**
- **绝不做原文没有的承诺 / 数字 / 场景 / 身份。** 这是竞品最脏、我们偶尔也犯的病：替作者许「第一时间同步」「改天请客」「下周给时间点」这类原文没有的承诺；补「响应降了一半」「问题率降到 1%」这类原文没有的数字；顺着想象编「大促时经常卡」「已扩连接池」这类原文没有的场景；给作者安「后端」「高并发经历」这类原文没有的身份。**原文没有的，一个字都不许加。**

这条底线靠**关系账本**兜底（账本 8 项 + 落地流程见 `references/workflow.md` 第一段。受保护跨度定义见 `references/protected-spans.md`。BadCase 全谱 A–G 见 `haohao-eval/references/badcase-taxonomy.md`）。

### 二、去 AI 味

翻译腔加表演腔的组合病。**主自检 = 症状库五层扫描**（标点/句式/词汇/结构/结构排比），机械可枚举，命中即改。扫不出但读着别扭的疑难句，再用**回译测试**兜底（默读翻英文：一次成型 = AI 味，别扭需意译 = 中文）。回译也管单个可疑词——像「死线」翻回去正好是 deadline、中文另有「截止时间」更顺，就是照英文硬拼的借译词，换掉；但已归化的通用词和计算机标准术语（软件、进程、指针）不动，细则见 `references/workflow.md` 第二段。清单和例子全在 `references/symptom-dictionary.md`。

**边界：欧化不必一律洗掉。** 欧化里有过头的，也有真给中文长本事的：「她」「它」这套代词分工、「与其说……不如说」这类连词，都是欧化带进来、如今没人觉得别扭的写法，留着。真正要动的是恶性那种：中文一句话本来说得清，偏要套一层英文架子。该洗还是该留，朱光潜给过一把尺：中文顺着自己的习惯就能说得一样准、一样有劲，那就别欧化；只有中文实在说不清、非借英文骨架不可，才用它。拿不准是善是恶，先照这把尺量，别见「化」就删、见长句就拆。

**密度红线**：某段命中超过 5 处，单点改救不回来，整段重写；用户点了「别大改」时，整段进删除清单交作者。

#### 第五层扫描：结构排比病（强约束）

现在这些 AI（靠人打分一点点调教出来的）特别喜欢生成有编号感、有对仗感的内容，看着条理清晰，读着像机器打印出来的。本层抓两大族。**核心判据：数量和对仗本身不是判断，只是形式。用数量和对仗给内容贴标签，就是排比病。**

- **显性族**：A1 量词标题序列（「第一刀·第二刀」「三板斧」「五个维度」）；A2 分号或破折号串三连及以上子句。
- **隐性族**（更容易漏）：B1「X 不 X」三连以上；B2「不是 X 而是 Y」变体族（含「这不是 X」「A 不是病，B 才是病」「管的是 A 不管 B」「不在 A，而在 B」，及翻案体「你以为 X 其实 Y」「看似 X 实则 Y」「回头才发现」「真正 X 的是 Y」）；B3 二连对仗（「就该 A，就该 B」一段两处以上）；B4 段内三连罗列的名词/动词串。

**统一判据**：把这几个并列项都盖住，只留一个最要紧的判断，读者理解会不会少？不会 = 排比病，删或改陈述句。会 = 保留，节奏上补一处停顿。**A1/A2/B1–B4 的反例、改法、改后详例见 `references/symptom-dictionary.md` 第五层。**

**触发反应**：命中即标出，默认直接动刀；用户点了「别大改」时，进「建议删除清单」交作者拍板。

### 三、加中文味

减完稿子会瘦一圈，可能瘦成空壳。加法把中文本来的写法补回来，落成下面几个问题（原理和标杆见 `references/chinese-four-principles.md`）：

1. **动词扛住这句没？** 动词是「进行/作出/实现/完成/导致/构成/属于/存在/具有」这类没肉的万能动词（余光中的提法，说「作出」「进行」几乎吃掉一半正规动词），回炉，把真动作拎出来。
2. **有具体顶替抽象没？** 「效果显著」不如「页面打开从 3 秒降到 800 毫秒」。找不到具体，那句判断本身没想清楚。
3. **有喘不上气的长句没？** 念一遍，一口气顶到底、中途倒不上气 = 憋气句。
4. **段末多说读者已懂的话没？** 「综上所述/由此可见/换言之」，删。

**光看这几问还是不会改的，去 `references/before-after-worktext.md`**：周报/汇报/方案/通知/答复五类工作文本的「AI 起草 → 修好」前后对照，每对标了改的动作。**学的是从左改到右那个动作，不是右边的文风**（右边只是把事说清的一种，别照抄腔调）。

**减法有底，节奏无顶。** 逐句查症状能削干净，顶多「没病」。「好」落在句与句之间（长短错落、停顿、调子），只能靠**念出声**。落成四个字面指标由机器粗筛，人念终审，细则见 `references/rhythm-check.md`。

**一条要先划死（最容易被带偏）：节奏管的是句子顺不顺、能不能喘上气，不管够不够口语。长句本身不算病，病在从头到尾没有一个停顿。首选补逗号断句，别急着拆句，更别掰成大白话。**

### 四、造词红线（绝不能破）

**能用现成词就用现成词，禁止为了显得凝练自造新词。** AI 造的词一眼假、看着深刻、读者一脸懵。

硬约束：**一稿不超过一个自造词**。必须造的地方，同段内必须用一句大白话翻译一次（「XX，说白了就是……」）。判定五问、例外三条、常见造词模式表见 `references/word-coining-checklist.md`。

---

## 附加红线（和四条原则同优先级，单列因为最容易翻车）

### 比喻红线

**比喻只有一个合法用途：把一个读者本来不理解的概念讲明白。除此之外，一律不打比方。**

- **判据一句话：比喻是拿读者熟悉的意象去解释陌生概念。如果你的比喻比原概念还陌生，那就是帮倒忙，删掉，直接说。** 像「语义透镜」「照片喂养的水堵不住」「那条筋」「从存储到理解的坎」「拍扁成一维符号串」这种，读者见了更懵——原概念反而更好懂。这类一律删，换成准确直白的表述。
- 精确的东西直接说。「iOS 的动态性」「并发调度」「上下文窗口」「AST」有确切定义，直接用准确表述。**用不准确换准确，就是降专业性。**
- **门槛型、装饰型比喻主动删。** 给外行降阅读门槛是科普/费曼式讲解的活，不是清洗中文的活；纯为了"显得生动"贴上去的比喻，也删。别等它碍事才删，看见就删。
- 比喻不承担论证。「这就好比……所以……」是拿类比顶替推理，回去补机理。
- 合法比喻也从省，全篇最多一两个当锚点。
- **例外**：面向外行的科普/费曼式讲解豁免。那种场景比喻是命根子，以它自己的规则为准。判断：读者是同行（硬约束）还是外行（科普豁免）？

### 反车轱辘话红线

车轱辘话在句子、段落、乃至整篇三个尺度都会犯——两句各说半句同一个意思是句子级，一整段绕来绕去说一件事是段落级。以任务尺度为准去删（整篇改就允许砍多余段），能一句说清的绝不用三句：

- **同义反复即删。** 判据用**并句检验，而且必须扫到相邻句**：把相邻的这几句合并成一句，信息量会不会变少？不会少 = 车轱辘话，合并成一句；会少 = 排比/并列/递进，是有效表达，留着。**车轱辘最常见的形态是相邻两句各说半句同一个意思**（后半句完全能删的那种），只在单句内查根本抓不出来，必须把相邻句拉到一起看。**别用删句检验**——删哪句读着都会不通顺，而且两句凑一个车轱辘时单看每句都正常，删句根本抓不出来。这是「有损压缩」的镜像：那头是「删了会丢信息所以别删」，这头是「合了不丢信息所以该合」，两头都拿信息量增减当尺子，不拿通不通顺当尺子。
- **过渡句从省**（「顺着这个思路」「说到这里」）。**例外**：面向外行的科普/费曼式讲解里，「那么/于是/但是/所以」是逻辑链关节，不许删。
- **禁「铺垫—展开—小结」三段式。** 一句能说清的判断，直接讲。

### 用词精准红线（词不配位，中文写作的通用硬伤）

**动词、形容词必须配得上它的主语。** 随手抓一个听着有力的词，套到一个它根本不该形容的对象上，读着别扭、经不起推敲，专业人士一眼看穿没想清楚。这不是文风问题，是**用错了词**，跟保真同级。

- **一个词能不能用，先问「这个词本来是形容什么的，眼前这个对象属不属于那一类」。** 皮筋、弦会「绷」，堤坝、防线会「崩」；**账**只会亏空、算不过来、亏、补不上，不会「绷」也不会「崩」；**趋势**会延续、会逆转，不会「塌陷」；**情绪**会崩、会绷，**制度**会失灵、会松动却不「生锈」。词和物对不上，就是硬伤，换一个配得上的。
- **别为了「有力」牺牲「准确」。** 越想写得狠、写得有张力，越容易抓一个夸张的词硬套。张力靠事实和判断本身，不靠生扯猛词。宁用平实精准的词，不用带劲但不搭的词。
- **拿不准就把词的本义念一遍。** 「绷到崩」——绷的是有弹性、被拉紧的东西，账没有弹性、不能被拉紧，所以不成立。凡是自己都觉得「这么说好像怪怪的」，就是词不配位，别放过。
- **判据**：逐句把动词/形容词和它的主语拎出来配一遍，问「这个动作/状态，这个东西真做得出来吗」。做不出来，就是错词，换。这条和「造词红线」是两回事：那条禁自造新词，这条禁给现成词配错对象。

### 姿态红线

- **禁**任何宣称式：「很多人没搞懂而我……」「大厂/硅谷都没想明白，但我……」「我早就看透了……」。
- **也禁**反方向的谄媚讨好：「好问题！」「您说得太对了」「这是一个很好的观点」「希望这对您有帮助」这类捧场垫话，是把聊天机器人腔当内容粘了进来。删干净，有话直接说。
- **只做**：呈现观察、摆机理、给证据，让读者自己得出「这人想明白了」。
- 平视。**两头都要平**：飘出一丝居高临下，或塌下去一味讨好，前面所有硬货都打折。

### 场合口语化红线（不是所有场合都要说人话）

**"说人话"是去翻译腔，不是一律往大白话怼。口语化的档位由文体定，不是越白越好。**

- **官方对外场合**（危机公关、落地页文案、招聘 JD、内部信、slogan、活动宣传）：把话说清、说准就行，不必强行口语化。过度口语反而掉准确性、掉气势、掉分寸。
- **敬语场合**（客服话术、感谢信、寄语、年会主持、颁奖词）：那些看着"多余"的客套，是这个文体的**功能件**，不是车轱辘话。删之前先问：删了之后这个文体还成立吗？客服太平淡会被投诉，感谢信没了敬语就失了礼。
- **要气势的场合**（slogan、寄语、颁奖词）：适度排比、四字句是壮气势的正当手段，别当"排比病"一律削平——判据仍是「盖住并列项，理解会不会少」，纯壮声势的合法，凑数贴标签的才删。
- **私人/软场合**（朋友圈、群消息、随手一段）：这里才是口语化的主场。

一句话：**先认文体，再定口语化档位。** 危机公关和朋友圈不是一个说话方式。

---

## 默认开大档，洗干净

**基线只有一个：把稿子洗干净。** 用户让你改一篇文章、写一段东西，默认就使足劲——句子、段落全洗到位，从含义出发整体改写，该删的多余句、多余段照删，跑硬闸、出修改报告。不用等用户点「档位」，也别反问要多狠——**要多狠这件事默认已经拉满**。没人会说「用中档」「跑重档流程」，他说「帮我改改这篇」，意思就是洗干净。

基线之上，用户只会用大白话往两个方向加码或收手，你照着调，但都别越保真那条线：

- **往狠里加**（「改彻底点」「大改」「放开手」）：连结构都能动——合并重组段落、调章节顺序、大段砍。默认不主动动结构（怕伤全文骨架，那是 `三思而后行` 的活），用户明确点了才放手。
- **往轻里收**（「别大改」「只挑最刺眼的」「轻点动」）：退回只换词、不拆句、不动段，只把最扎眼的 AI 味摘掉。

**一条硬边界，加多狠都不许越：保真 8 项红线**（数字、命令、术语原词、谓词方向、效果／关系类型、硬机制、论文级证据、不造原文没有的承诺／数字／场景／身份）。开多大档都是在这条线以内洗，越线就是废稿。

**还有一类不归「洗干净」管：随手回消息、口语转书面这种不写回持久面的话。** 心里把四条原则和红线过一遍就行——不跑命令行、不出报告、不套流程，别为一句群回复上硬闸。**判据是「落不落持久面」，不是「档位高低」**：要写回飞书、要对外发的成稿（文档、表格、多维表、公众号稿），自动进硬闸走全套；随手一段就心里过。

洗成稿时的完整动作：先吃透全文结构和每段含义，从含义出发整体改写，再拆到每句；三遍回读（查事实／查 AI 味残留／查节奏）；入口和第二遍各跑一次「改前逐字扫」——这是除了凭感觉之外，唯一靠机器把关的一步。发现整段可删，动手删（用户点了「别大改」时改成列「建议删除清单」交作者）。

### 改前逐字扫（四条零容忍，洗中文都要过）

跟"心里过原则"分开单列。四条**逐字机械扫**，不靠"读着别扭"，扫到即改：

1. **章节序号 + 量词标题**：章节标题用「一、二、三、四」「第一章/第二节」「1. / 2. / 3.」这类机械编号，或「其一/其二/其三」「N 刀/N 步/N 条/N 板斧/N 维度」这类拿数量当标签的——零容忍。数量不是判断，给章节按顺序编号是 AI 手感最稳的一处，人写字很少这么干。改法：把编号删掉，让每个小标题自己是一句能立住的话。(可执行索引、给人查阅的清单编号除外，判据见 `references/quick-scan-regex.md` A1 豁免)
2. **B2「不是 X 是 Y」变体族**：含「这不是 X」「A 不是病，B 才是病」「管的是 A 不管 B」「不在 A，而在 B」，及翻案体「你以为 X 其实 Y」「看似 X 实则 Y」「回头才发现」「真正 X 的是 Y」「A 不重要，重要的是 B」——密度红线全文 ≤ 2 处，超即改成正着说。**改法写死**：① 直接只留 Y，正着陈述（「真正 X 的是 Y」→「Y」）；② 如果 X 这半句上文已经说过，删掉 X，只说 Y；③ 确实要保留对比语气，用「先肯定后否定」的顺序（先说成立的，再说不成立的），别用「不是……而是……」这个模子。
3. **元话语**（就是那些拿来抬调子、其实没给信息的话）：「值得深思」「值得关注」「值得玩味」「不禁让人思考」「引人深思」「发人深省」——零容忍，删或改成具体判断。
4. **中文正文里的半角标点**：中文句子里出现半角逗号 `,`、句号 `.`、分号 `;`、冒号 `:` 夹在中文字符之间——零容忍，强制换成全角「，。；：」。这是 AI 最物理、最好验的一条：模型直接吐出来没做全半角转换，人手打中文极少这么混。**例外**：代码块、命令、英文原文、数字千分位(如 `1,000`)、文件名/URL 里的半角标点是对的，不动。

**为什么单列**：起草的手和审稿的眼是同一双，AI 手感形成的表达在回读里会被同一双眼放过。这四条**跳过感觉、逐字扫**——不是加防线，是在原有回读里补一步机器把关。随手一段心里扫，写回持久面的成稿用命令行扫（`references/quick-scan-regex.md` 给正则和一键命令）。

**跟其他检查的关系**：
- 跟症状库四层（symptom-dictionary.md）：前三条本就在症状库里，这里只是抬到"入口先看"的位置，不重复；半角标点是新增的机械项，症状库不专列，以这里为准。
- 跟节奏检查（rhythm-check.md）：两条各管各的，一个查形式一个查气口，不冲突。
- **半角标点这条进交付硬闸**（下一节），要写回飞书的成稿必须真跑命令、清零、留记录；其余三条仍是体检报告，交人判。

---

## 交付硬闸（强卡口，最容易被跳过，单列）

本技能原来通篇是「常驻软自律」，全靠模型自觉去扫。自觉是能跳过的——模型一旦「感觉自己过了」，扫描就没真跑，半角标点、破折号成串地漏进成稿，技能就形同虚设。所以对**要写回飞书、要对外发布的中文成稿**（文档、表格、多维表、公众号稿这类落到持久面的东西），加一道硬闸，把「体检」从自觉改成必做。

硬闸只管**机器能判净、零误报**的那层，两层各归各：

**硬闸层（不跑不交，必须清零）**：半角标点、破折号滥用这类纯字面毛病，机器一扫一个准，能改到零。三条规矩：
- 提交前必须**真跑一遍**机械扫描命令（`references/quick-scan-regex.md` 里那行 grep），不许「心里过」「感觉过」顶替。
- 命令跑出来的命中数，连同处理结果，贴进修改报告。**没有这段记录，视同没跑，不许提交**——这是唯一能证明扫描真跑过的凭据。
- 半角标点命中要清到零（代码、英文原文、数字千分位、URL 这些例外照旧不动）才算过闸；确有要留的，在修改报告里逐条写豁免理由。

**建议层（只标不改，作者拍板）**：B2「不是 X 是 Y」、车轱辘、疑似玩梗这类，机器只能看形式、判不了意图——是故意的梗还是废话，是真对比还是空心翻案，机器分不出来（实测误报能到九分之八）。这层**永远只出建议清单，绝不自动改**，一条条摆给作者，由作者拍板。宁可漏报，不可误杀原文。

一句话分工：**字面能判死的，硬卡到净；意图要人判的，只提示不动手。**

> 随手回消息、口语转书面这类不写回持久面的场景，不进硬闸，心里过一遍即可，别为一句群回复套命令行。

**用户加码 / 收手怎么落**：默认已经开大档、使足劲，用户一般不用点。他真开口，也只会用大白话：「改彻底点 / 大改 / 放开手」＝连结构都放开动（合并重组段落、调章节顺序、大段砍）；「别大改 / 只挑最刺眼的」＝退回只换词、不拆句、不动段。两个方向都在保真红线以内调，越线不算。

**写回持久面的成稿，完整五段流程、"只换词/可动结构"两种范围的硬约束、三遍回读、修改报告模板、主线反思三问，全部见 `references/workflow.md`。**

---

## 标题红线（单列，最容易露 AI 味）

总要求：**平实、深刻，是什么就写什么。默认直给，把判断直接摆进标题，让读者一眼看到结论。** 要往公众号投、想留一点悬念也行，但底线是**「信」：标题许诺什么，正文就得给什么**。带钩子可以，空心钩子不行。

### 硬规则（踩一条就重起）

0. **直给优先（最高）。** 默认能一句话摆结论就摆，不绕、不藏。**例外**：投公众号等确需一点悬念的场合，可留钩子，但必须过下一条的「信」，勾起来的，正文照数兑现。
1. **禁破折号。** 标题出现「——」基本就是 AI 味，零容忍。
2. **禁超长。** 一行、约 20 字内。
3. **禁空心钩子。** 钩子本身不是病，勾了不兑现才是。「你绝对想不到」「真相是」「背后的秘密」这类只造悬念、正文给不出对应干货的，删。判据：标题许诺的信息，正文第一屏能不能兑现？兑现 = 合法钩子；兑现不了 = 空心钩子，删。
4. **禁「不是 X，而是 Y」及其变体族。** 头号 AI 味句式，标题零容忍。变体族包括「这不是 X」「A 不是病，B 才是病」「管的是 A 不管 B」「不在 A，而在 B」，以及翻案体「你以为 X 其实 Y」「看似 X 实则 Y」「回头才发现」「真正 X 的是 Y」。
5. **禁三连罗列。** 「A、B、C」三名词堆成标题 = 逢三凑数无立场。
6. **一句陈述 + 一个判断。** 落地成一句平实陈述句，里面藏一个可被反驳的判断。
7. **章节标题不搞机械编号**（不用「一、二、三」），也不用「N刀/N步/N条」等量词做段落标题。数量不是判断，用数字给内容贴标签是结构排比病的隐蔽版。每个小标题自己就是一句能立住的话。
8. **标题也做回译测试。** 翻回英文一次成型 = 翻译腔。
9. **题眼落在读者已知的锚点上，别用陌生术语当题眼（最要命）。** 好奇心靠「你已经知道一点」勾起，不是「你完全不知道」。标题塞一个读者没听过的词，缺口太大，直接划走。修法：陌生术语撤下题眼，换成全文反复建立、读者一眼认得的概念，新东西留正文里揭。

**信达雅落地**：信 = 名副其实不骗点击（带钩子也要兑现）。达 = 一眼看懂不设门槛（关键词是已知锚点）。雅 = 留一个恰好的缺口（懂了大半还差一口）。**达和雅打架时达优先**，宁可直白，不为余味把话说到读者看不懂。

**章节小标题跟主标题不同**：主标题决定读者点不点进来，留个恰好的缺口没问题。章节小标题是读者已经在读了，不用再勾，直接陈述这一节的观点即可。别写「XX 那点别扭，根子是同一个」这类只卖关子、不给结论的句式。

### 标杆与反例

**对**：
- 「打开这个工程，和打开一个 txt 没区别」（直给一个反直觉判断，题眼都是已知词）
- 「AI 写代码为什么质量还是不太行」（朴素直问，不设扣子）
- 「『AI 味』的病根，一百年前就诊断过」（带一点钩子，但「病根」是读者已有的锚，缺口恰好，正文真的兑现了这个诊断）
- 「为了根除『AI 味』，我翻回了一百年前的语言学」（带钩子，留了「翻回语言学」的悬念，但正文照数兑现，是合法钩子的样板）

**错**：
- 「AI 说的中文，是欧化中文的工业版」。「是 X 的 Y 版」是英文骨架加钩子味。
- 「AI 味就是欧化中文，一百年前就诊断过」。**曾以为是标杆，其实踩了硬规则 9**：「欧化中文」是读者陌生术语，当题眼没人 get，缺口太大。换成读者已知的「病根」才成立。同一篇文章，只换题眼落在哪个词，标题就从「读不懂」变成「想读下去」。
- 「A 化、B 化、C 化：一次彻底的重构」。三连名词堆砌，无判断。
- 「这条路的尽头，是一个新深渊」。空心钩子，只造悬念，勾了不兑现。

---

## 评测 / 打分 · 已拆出去，不在本技能

**日常写作绝不打分——写字靠四条原则和红线，不靠分数。** 这条不变。

需要评测(A/B 比稿、比不同工具、给技能做回归、看一批稿子洗前洗后差多少)时，走独立技能 **`haohao-eval`**(好好说话·评测调优台)。评分尺、残留分脚本、权重拟合/回归、50 条金标准语料、BadCase 母表都收在那里。评测的四条红线仍然钉死：**只测不改、盲评、命中明细可复算、不做把命中压到 0 的重试循环**。

---

## 用起来就照这几步

1. **先认落不落持久面，再认任务尺度**：随手回消息、口语转一段，心里过一遍就行，不套流程；要写回飞书/对外发的成稿，默认开大档洗干净、跑全套。**任务尺度跟着任务走**：让你改整篇就是文章级，让你改一段就按这段整体含义——尺度是任务给的，不是默认句子级。
2. **锁住不能改的**（写成稿才要）：动手前先把不许动的东西列出来——数字、命令代码术语专名、谓词方向、效果类型、关系类型、模态、硬机制、论文级证据，一共 8 项。怎么落地看 workflow。
3. **先读懂再动手**：写成稿先通读，弄清全文结构、每段在讲什么含义，从含义出发想清楚这段/这篇该怎么改；顺手拿症状库五层过一遍看密度，重点盯第五层的结构排比（量词标题、分号串三连、「X 不 X」、「不是 X 而是 Y」这些）。一段里超过 5 处，别单点改了，整段重写或者进删除清单。
4. **从含义出发动手改**：以任务尺度为单位，能大段改就别抠单句；站在全篇看，多余的句子、多余的段落可以删。再用加中文味那几问补一遍。**手别太痒**：没毛病的好句子放回去，别为了"更好"重写。用户点了「别大改」才收回只换词、不动结构。
5. **回头读三遍**（写成稿时）：三遍分开做，别合并——头一遍对账本，第二遍抓 AI 味残留，第三遍读节奏（憋气句、句子长短一个样、软尾巴、调子单一，只补停顿别改成口语）。
6. **再问自己三句**（软性）：主线是什么？每节都在替它说话吗？比没改之前更清楚了吗？
7. **过交付硬闸**（写回飞书/对外发布的成稿）：真跑一遍机械扫描命令，半角标点清零，命中数和处理结果贴进修改报告；B2/车轱辘/疑似梗只列建议清单，交作者拍板，不自动改。
8. **出稿**：写回持久面的成稿附一份修改报告（模板在 workflow），随手一段直接给正文。

## 出稿前自检

- 事实账本对齐了吗（含硬机制/论文证据）？
- **改写后逐句回读闸**：拿改后每句和原文对一遍，六项逐一确认「等价没」——① 信息有没有增/减 ② 数字/条件对不对 ③ 程度词、范围词（显著↔顺、全面↔关键、更重要↔更麻烦）等价吗 ④ 主动/被动、"我主动做"vs"自然发生"没调换吧 ⑤ 专业术语是不是原词 ⑥ 语气/文体档位没降格（顶尖专家没变一线、圆满收官没变顺利收尾）。**任一项不等价，就把这句退回原文重来，别硬留改法。**
- 症状库五层都扫过了吗？命中的都动刀了吗？几个问题答完了吗？
- **节奏跑过了吗？憋气句补停顿了吗（别拆好长句、别改口语）？**
- 有没有偷偷造新词？
- **比喻是不是都在讲清难懂概念，没有一个给精确概念套壳降门槛？**
- **动词/形容词都配得上主语吗（词不配位）？把每句的动词和它的主语拎出来配一遍，有没有「账绷到崩」这种做不出来的搭配？**
- 有没有同义反复、废过渡句、铺垫—小结三段式？
- 有没有飘出「我懂你们不懂」的姿态？
- **改前逐字扫四条过了吗**：章节标题有没有「一二三四」机械编号或量词序列？「不是 X 是 Y」变体全文 ≤ 2 处吗？元话语清干净了吗？**中文正文里有没有夹半角逗号/句号/分号/冒号(代码、英文、数字千分位除外)？**
- **交付硬闸过了吗（写回飞书/对外发布才要）**：机械扫描命令是真跑的、不是心里过吗？半角标点清到零了吗？命中数和处理结果进修改报告了吗（没这段记录=视同没跑，不许提交）？B2/车轱辘/疑似梗是只列了建议清单、没自动改吗？
- **本次输出自检（结构排比，双族都要扫）**：
  - 显性族：有没有用分号串联三个以上子句？段落标题有没有「N刀/N步/N条」量词序列或机械编号？
  - 隐性族：有没有「X 不 X」三连以上？有没有「不是 X 而是 Y」及其变体？有没有二连对仗（「就该 A，就该 B」/「不必 A，更不必 B」）超过一处？有没有段内三连罗列的名词/动词串？
- 标题过了红线九条吗？题眼是读者已知锚点（不是陌生术语）吗？
- 主线反思三问答完了吗？

任何一条答不上，回去补。

