消磁 · 去 AI 味
AI 写作会给文字充上一层静电:用词均匀、结构对称、态度安全、细节稀薄。 消磁就是把电放掉,让文字回到一个具体的人手上。
这个 skill 只做减法与还原,不做加法与创作。
它不负责把文章写得更好,只负责把不属于作者的那层壳剥掉。文章本身立不立得住,是另一件事。
一、三条硬约束(优先级高于所有规则)
1. 信息守恒(双向)
不许新增: 姓名、机构、职务、地名、数字、比例、金额、时长、次数、日期、先后顺序、引语、来源、链接、因果关系、动机、心理活动、原文没有的细节。
不许删减: 观点、结论、限定词和让步("可能""通常""在某些情况下""据说")。把"可能提升"改成"提升"是篡改判断强度,不是去 AI 味。
验收办法:改写后每一个实词,都要能在原文里指出来处。指不出来就是新增,撤销。
2. 最小改动
命中规则时,只改解决该问题所必需的部分。不得顺手润色,不得替换没问题的词,不得调整语气、详略或信息密度。没命中任何规则的句子,逐字保留。
文章骨架不在处理范围内:标题层级、章节顺序、段落数量与顺序、列表、表格、引用、代码块位置一律原样保留。除非用户明确要求重组,否则不概括、不扩写、不删观点、不改论证路径。
3. 语体守恒
人称、段落长度、标点体系、正式程度服从原体裁与原作者。不为"像人写的"强加第一人称、口语、短段落或错别字。
同一处特征在不同语体里的处理方式不同,动手前先定语体。 见 references/register.md。
二、五步工作流
第 1 步 · 定位
确认四件事,任何一件拿不准就问用户:
| 项 | 为什么问 |
|---|---|
| 目标语体 | 决定每条规则的门限与保护区 |
| 发布场景 | 公众号 / 技术文档 / 学术 / 公文 / 小说 / 社交平台的容忍度差别很大 |
| 有没有风格参照 | 有 语言DNA.md、作者旧作、风格指南时先读它,风格文档与本规则冲突时以风格文档为准 |
| 处理范围 | 全文 / 指定段落;是否允许重组段落 |
风格参照是最高优先级的证据。某作者本来就爱用破折号,就不该按 B2 删掉。
第 2 步 · 体检(不改字)
先扫,不改。两种方式任选:
python3 scripts/scan.py <文件或目录...> --register 公众号
# 依据规则自带的「不改」条款豁免某条,不计入浓度分
python3 scripts/scan.py <文件> --exempt A3,D5
或按 references/rules.md 逐条人工过一遍。产出:
- 每条规则的命中密度与门限比
- AI 味浓度分与分级(洁净 / 轻微 / 中等 / 重度)
- 观察项(有命中但未达门限)
- 禁改项(识别到但不动的伪 AI 味)
第 3 步 · 判定
对每一条命中做一次三选一:
- 处理 — 属 A 级规则且密度 ≥ 门限 → 按改法改
- 观察 — 属 A 级规则但密度 < 门限,或属 D 级需人工确认 → 列入观察项,默认不改,报告里问用户
- 禁改 — 属 N 级伪 AI 味清单 → 不动,见
references/negative-rules.md
单次命中通常是一种修辞选择,不是 AI 痕迹。密度才是信号。 这是本 skill 与词表式工具的最大区别。
第 4 步 · 改写
按 references/rules.md 的改法逐条执行。每条改动只在解决命中问题的最小范围内动手。
同一句命中多条规则时,按编号顺序改靠前的那条,改完不叠加处理。
第 5 步 · 复扫与交付
改写会重新引入 AI 味。 把"不是 A 而是 B"改成"与其说 A 不如说 B"是同一个动作换了件衣服。所以改完必须重扫:
python3 scripts/scan.py --compare <改前> <改后> --register 公众号
复扫最多两轮。第二轮仍有命中且降幅 < 20% 时停下,向用户说明剩余的命中项,不要为了压分继续改。
交付物固定三件:
- 改写后的全文(默认,除非用户说只要报告)
- 改动台账(每条改动的规则编号、触发标记、原文片段、改后片段)
- 未处理项说明(观察项、禁改项、原文材料稀薄之处)
台账格式:
| # | 规则 | 触发标记 | 原文 | 改后 |
|---|------|---------|------|------|
| 1 | A1 段首零回指 | 段首"听起来"无回指 | 听起来像一条功能描述,其实… | 这听起来像一条功能描述,其实… |
| 2 | B1 翻案腔 | "不是……而是……"(第 3 次) | 真正的壁垒不是技术,而是认知。 | 真正的壁垒是认知。 |
台账是给人复核和回滚用的,不能省。用户指不出对应规则的改动必须撤销。
三、规则索引
完整定义(触发标记、门限、改法、正反例、依据)在 references/rules.md。
A 级 · 有实证区分力,可依据改写
| 编号 | 规则 | 单位 | 门限 | 实测倍率 |
|---|---|---|---|---|
| A1 | 段首零回指评论 | 篇 | 1 处 | 4.4× |
| A2 | 相邻句结构同款 | 每百段 | 7 处 | 2.0× |
| A3 | 大纲式编号小标题 | 篇 | 连续 ≥3 个 | 3.1× |
| A4 | 空转句引列表 | 篇 | 1 处 | 9.4× |
| B1 | 翻案腔 | 每千字 | 0.35 | 3.4× |
| B2 | 破折号揭晓 | 每千字 | 1.2 | 3.0× |
| B3 | 提示语冒号 | 篇 | 1 处 | 3.8× |
| B4 | 顿号罗列过密 | 每千字 | 2.6 | 1.8× |
| B5 | 起手式与假坦诚 | 篇 | 1 处 | 3.2× |
| B6 | 理想化拟人喻体 | 篇 | 1 处 | 7.3× |
| B7 | 复述句与句首路标 | 每千字 | 0.5 | 2.6–5.3× |
| C1 | 过长前置定语 | 每千字 | 0.4 | 2.6× |
| C2 | 「当……时」前置从句 | 每千字 | 0.3 | 3.4× |
| C3 | 前置话题壳 | 每千字 | 0.3 | 2.7× |
| C4 | 句首结构残留 | 每千字 | 0.3 | 三类合计 |
| E1 | 助手元话语残留 | 篇 | 1 处 | 硬特征,零误报 |
| E2 | 结构模板残留 | 篇 | 1 处 | 硬特征,零误报 |
门限 = 人类基线 × 1.5,含义是"明显高于人类常态",不是"AI 平均在用"。取 1.5 倍是因为两类错误代价不对称:漏掉一处 AI 痕迹损失小,误改一处人类写法损失大。完整推导见 references/rules.md。
D 级 · 需人工确认后再改
| 编号 | 规则 | 说明 |
|---|---|---|
| D1 | 意义拔高与宣传腔 | 词表命中后须确认语境,术语不算 |
| D2 | 模糊归因 | 只能删归因或标记待补,不许自己补来源 |
| D3 | 概括表述覆盖已有数据 | 只把原文已有的具体值提上来 |
| D4 | 动作名词化 | 只处理"完成了对……的……"这类动宾框架被名词化的构式 |
| D5 | 虚假范围「从 X 到 Y」 | 跨度是否合理要人判断 |
| D6 | 万能收尾与升华段 | 学术结论章不在此列 |
N 级 · 禁止据此改写
见 references/negative-rules.md(19 条)。这是硬约束,不是参考。其中若干条的方向与流行认知相反:人类用设问、用比喻、用句内排比、用被动句都比 AI 多。 照流行清单去删,只会让文章更不像人写的。
四、什么时候不要动手
- 文章内容本身不成立(没说清一件事、材料不够)。去 AI 味救不了空文章,先说内容问题
- 用户提供风格参照,且参照里就是这么写的
- 对话体、口语体:本来就是自然表达
- 代码块、外语段落、引用他人原文
- 用户要求"帮我过 AI 检测器"。检测器判的是统计分布,不是这几个特征;本 skill 不为此服务
五、交付前自检
逐条复查,任何一条不过就回退:
- 每处改动都能指出对应的规则编号。指不出的撤销
- 未命中规则的句子逐字保留
- 标题层级、章节顺序、段落数量与顺序、列表、表格、引用、代码块位置完全保留
- 改写后每个实词都能在原文找到出处(没新增事实)
- 限定词与让步没被抹掉,判断强度没被加重
- 人称与段落长度服从原语体,没强加"我/你"或短段落
- 没有为了"制造节奏"去调句长或拆段落(句长离散度实测无差异,不是改写理由)
- 没有删掉设问、比喻、句内排比、被动句(N 级禁改项)
- 没有补虚词、换代词(不在处理范围)
- 复扫已完成,剩余命中已向用户说明
- 台账完整,可逐条回滚
六、文件
SKILL.md 本文件:流程与硬约束
PROMPT.md 单文件精简提示词,粘进任意对话框即可用
references/rules.md A/D 级规则完整定义
references/negative-rules.md N 级禁改清单(伪 AI 味)
references/register.md 语体路由表:门限与保护区
references/evidence.md 每条规则的证据来源、实测数据与已知局限
scripts/scan.py 扫描 / 评分 / 前后对比
复算与门限的完整推导见 references/evidence.md。数字有保质期,模型每次更新都在向人类文风收敛;触发标记比频率更耐用,规则以形态为准,频率只用来说明某条规则够不够格。