# Xiaoci

> 中文成稿的去 AI 味清理工具（消磁）。识别并清除中文文本里的模型写作痕迹：翻案腔、 破折号揭晓、提示语冒号、空转句引列表、段首零回指评论、相邻句结构同款、大纲式编号小标题、 理想化拟人喻体、翻译腔、宣传腔、模糊归因、助手元话语残留。 当用户说「去 AI 味」「改得说人话」「太像 AI 写的」「像 ChatGPT 写的」「润色得自然点」 「过一遍 AI 痕迹」「humanize 中文」「deslop」「这稿子读着假」时使用。 也可在 AI 参与写作的稿件定稿发布前主动调用。 Use to remove AI writing tells from Chinese text while preserving facts, register and voice.

- Skill: `evoworkai/xiaoci` (Agent Skill, multi-file: 6 files)
- Install (CLI): `npx skillmds@latest add evoworkai/xiaoci`
- Raw SKILL.md: https://api.skillmd.com/api/skills/evoworkai/xiaoci/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: evoworkAI (https://skillmd.com/u/evoworkai)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/evoworkai/xiaoci

---


# 消磁 · 去 AI 味

> AI 写作会给文字充上一层静电：用词均匀、结构对称、态度安全、细节稀薄。
> 消磁就是把电放掉，让文字回到一个具体的人手上。

**这个 skill 只做减法与还原，不做加法与创作。**

它不负责把文章写得更好，只负责把不属于作者的那层壳剥掉。文章本身立不立得住，是另一件事。

---

## 一、三条硬约束（优先级高于所有规则）

### 1. 信息守恒（双向）

**不许新增：** 姓名、机构、职务、地名、数字、比例、金额、时长、次数、日期、先后顺序、引语、来源、链接、因果关系、动机、心理活动、原文没有的细节。

**不许删减：** 观点、结论、限定词和让步（"可能""通常""在某些情况下""据说"）。把"可能提升"改成"提升"是篡改判断强度，不是去 AI 味。

> 验收办法：改写后每一个实词，都要能在原文里指出来处。指不出来就是新增，撤销。

### 2. 最小改动

命中规则时，只改解决该问题所必需的部分。不得顺手润色，不得替换没问题的词，不得调整语气、详略或信息密度。**没命中任何规则的句子，逐字保留。**

文章骨架不在处理范围内：标题层级、章节顺序、段落数量与顺序、列表、表格、引用、代码块位置一律原样保留。除非用户明确要求重组，否则不概括、不扩写、不删观点、不改论证路径。

### 3. 语体守恒

人称、段落长度、标点体系、正式程度服从原体裁与原作者。不为"像人写的"强加第一人称、口语、短段落或错别字。

**同一处特征在不同语体里的处理方式不同，动手前先定语体。** 见 `references/register.md`。

---

## 二、五步工作流

### 第 1 步 · 定位

确认四件事，任何一件拿不准就问用户：

| 项 | 为什么问 |
|---|---|
| 目标语体 | 决定每条规则的门限与保护区 |
| 发布场景 | 公众号 / 技术文档 / 学术 / 公文 / 小说 / 社交平台的容忍度差别很大 |
| 有没有风格参照 | 有 `语言DNA.md`、作者旧作、风格指南时**先读它**，风格文档与本规则冲突时以风格文档为准 |
| 处理范围 | 全文 / 指定段落；是否允许重组段落 |

风格参照是最高优先级的证据。某作者本来就爱用破折号，就不该按 B2 删掉。

### 第 2 步 · 体检（不改字）

先扫，不改。两种方式任选：

```bash
python3 scripts/scan.py <文件或目录...> --register 公众号

# 依据规则自带的「不改」条款豁免某条，不计入浓度分
python3 scripts/scan.py <文件> --exempt A3,D5
```

或按 `references/rules.md` 逐条人工过一遍。产出：

- 每条规则的命中密度与门限比
- **AI 味浓度分**与分级（洁净 / 轻微 / 中等 / 重度）
- 观察项（有命中但未达门限）
- 禁改项（识别到但不动的伪 AI 味）

### 第 3 步 · 判定

对每一条命中做一次三选一：

1. **处理** — 属 A 级规则且密度 ≥ 门限 → 按改法改
2. **观察** — 属 A 级规则但密度 < 门限，或属 D 级需人工确认 → 列入观察项，默认不改，报告里问用户
3. **禁改** — 属 N 级伪 AI 味清单 → 不动，见 `references/negative-rules.md`

> 单次命中通常是一种修辞选择，不是 AI 痕迹。**密度才是信号。** 这是本 skill 与词表式工具的最大区别。

### 第 4 步 · 改写

按 `references/rules.md` 的改法逐条执行。每条改动只在解决命中问题的最小范围内动手。

同一句命中多条规则时，按编号顺序改靠前的那条，改完不叠加处理。

### 第 5 步 · 复扫与交付

**改写会重新引入 AI 味。** 把"不是 A 而是 B"改成"与其说 A 不如说 B"是同一个动作换了件衣服。所以改完必须重扫：

```bash
python3 scripts/scan.py --compare <改前> <改后> --register 公众号
```

复扫最多两轮。第二轮仍有命中且降幅 < 20% 时停下，向用户说明剩余的命中项，不要为了压分继续改。

交付物固定三件：

1. **改写后的全文**（默认，除非用户说只要报告）
2. **改动台账**（每条改动的规则编号、触发标记、原文片段、改后片段）
3. **未处理项说明**（观察项、禁改项、原文材料稀薄之处）

台账格式：

```markdown
| # | 规则 | 触发标记 | 原文 | 改后 |
|---|------|---------|------|------|
| 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`。数字有保质期，模型每次更新都在向人类文风收敛；**触发标记比频率更耐用**，规则以形态为准，频率只用来说明某条规则够不够格。

