by MrGeDiao
说人话|中文优先的去 AI 味改写 skill:保事实、分场景、改完可直接发。Chinese-first rewrite skill for Codex / Claude Code / Cursor / ChatGPT — removes AI tone, preserves facts.
# Add to your Claude Code skills
git clone https://github.com/MrGeDiao/shuorenhuaLast scanned: 5/26/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-05-26T07:46:30.051Z",
"semgrepRan": false,
"npmAuditRan": true,
"pipAuditRan": true
}shuorenhua is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by MrGeDiao. 说人话|中文优先的去 AI 味改写 skill:保事实、分场景、改完可直接发。Chinese-first rewrite skill for Codex / Claude Code / Cursor / ChatGPT — removes AI tone, preserves facts. It has 1,022 GitHub stars.
Yes. shuorenhua passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/MrGeDiao/shuorenhua" and add it to your Claude Code skills directory (see the Installation section above). shuorenhua ships a SKILL.md manifest, so compatible agents can discover and load it automatically.
shuorenhua is primarily written in Python. It is open-source under MrGeDiao on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh shuorenhua against similar tools.
No comments yet. Be the first to share your thoughts!
把文本从”像模型在表演写作”拉回”像具体人在当前场景下表达”。
这份 skill 不是敏感词替换器,也不是反技术、反抽象、反专业。它的目标是减少模板感、表演感和语域漂移,同时保住事实、术语和责任主体。
在下面这些需求里使用:
chat、status、docs、public-writing在下面这些需求里不要硬套:
in-place scope,就只做句内改写。按固定顺序做,不要跳步:
chat / status / docs / public-writingprotected spans,并在心里记一份事实 / 关系账本:实体类型、数字修饰对象、主体与各自动作 / 目标、实现关系;看有没有必须保留的术语、系统主语、引用原文、命令或正式语体Tier 1 / Tier 2 / Tier 3,按问题命中强度判断,不要把 Tier 当作改写力度minimal / standard / aggressivestructural / bounded / in-place,判断这次能删到什么程度——自由删并重排、只把整句空话进删除清单、还是一句都不删references/,默认继续按问题类型补看 Protected Spans、Positive Style Contract、微操作手册、结构反模式 和相关短语表;如果目标是“改完能直接发”,或文本明显属于 README、release note、论坛帖、issue 回复,再补看 Scene Packs、场景样本评测 和 改写示例annotation mode执行第 6 步时,先按“模式”处理,再按“词条”兜底:
先判主场景,再处理局部问题。混合文本只保留一个主语域,其他语域只在必要信息层面留下。
chat信号:
默认档位:minimal
status信号:
默认档位:minimal 或 standard
docs信号:
默认档位:minimal
public-writing信号:
默认档位:standard
更细的下限限制见 场景禁改表。
如果文本本身命中下面任一子场景,不依赖用户是否明说,也不受主场景初判限制,都要补看 Scene Packs:
README:出现项目介绍、快速开始、安装方式、功能列表、README intro 等信号时,第一屏要说清“这是什么、给谁用、解决什么问题”release-note:出现版本标题、Release Highlights、Added / Changed / Fixed / Tested、changelog 列表等信号时,列清本版变更、验证和限制,不写发布宣言forum-post:出现 Linux.do / V2EX / 社区帖 / 发帖复盘等信号时,保留维护者的真实观察和社区语气,不改成公告issue-reply:出现 issue / PR 回复、bad case、复现、下一版补 benchmark 等信号时,先确认问题和下一步,不做客服式安抚子场景只负责发布目的和语气收束,不覆盖 protected spans、Tier、档位和回读规则。完整策略见 Scene Packs。
只加载 SKILL.md 时,也必须能完成基础改写。下面这些规则默认直接生效:
值得注意的是、让我来为你解释、希望这对你有帮助、Great question!综上所述、归根结底、本质上、At the end of the day不是 X,而是 Y、与其 X,不如 Y 多数删前半句,直接说 Y研究表明、数据显示、studies show、experts say 默认按场景选择 rewrite-safe 或 audit-only;只有用户明确要保留原论证骨架时才用 rewrite-with-placeholder;不要补虚构来源赋能、抓手、闭环、收窄、兜住、落盘、leverage你不是敏感、你只是太久没被稳稳接住了、你问到了问题的核心、顶刊作者的素养,默认删姿态层,改回低承诺回应或具体判断;不要硬演“我懂了”。方向/进度认证(走在正确的路上、完全不用担心)只能删除或标注“现有信息不足以判断”,不要降格成 方向没问题 / 不用太担心 这类弱安抚继续替对方下结论基于……、通过……来……code-context 里的真实运行行为、适用条件和边界说明也属于 protected spans;清理注释、docstring 或 commit message 时,只去姿态词并保留这些信息,不能因为相邻行已有指标或结果就认定它们重复、整行删除方案 不能改成 工具 / 产品,目标 不能改成 产品,描述某种架构的潜力不能改成“系统基于该架构构建”。数字与它修饰的对象、主体与各自动作 / 目标的配对关系要一起保留;不能把 两个团队 写成“换过两个团队”,也不能把只属于企业的目标顺手并给开发者。谓词的方向、完成态、强度和效果类型也属于关系:性能提升 / 体验改善 / 安全性加强 不能弱化成“涉及这些方面”,提升效率 也不能顺势扩写成“节省时间 / 成本”;删掉 显著 / 大幅 等渲染词时,仍要保留原文实际声称发生了什么。背景、主题或相邻句共现不等于能力关系:同段提到 AI 和中文表达工具,不能据此写成“处理 AI 生成文本”;任何 X 用来做 Y / X 基于 Y / X 处理 Y 都必须能在原文谓词里找到依据。目的、适用条件、风险和限制即使对象仍然抽象,也属于信息:为了解决这一痛点 可以压成 为了解决这个问题,不能因为没写具体问题就把“解决问题”这一目的删掉。原文没有具体能力、实现关系或对象时,允许保留原来的抽象层级、缩短或标注缺口,不能用看似合理的新事实补落点单文件模式只是兜底,不是完整模式。只要环境里能读 references/,默认就继续补看对应文件;只有在 system prompt 真的只给了 SKILL.md 时,才退化为只按本文件做基础清理。
处理无源引用时,固定只在这 3 种模式里选一种:
rewrite-safe
研究表明 / studies show / 业内人士认为 后,只有不依赖该来源也能独立成立的判断才保留40% 后改成“会更快”,也不要把 未来十年 改成“未来几年”chat 和 public-writingaudit-only
docs 和 statusrewrite-with-placeholder
如果用户没指定模式,就按场景默认值走;如果文本跨场景,优先取更保守的 audit-only。
minimal适用于:文本本身基本自然,只需去掉局部模板感、收尾腔和多余修辞。
默认动作:
standard适用于:有明显 AI 腔或语域混搭,但信息骨架是好的。
默认动作:
aggressive适用于:Tier 1 命中密集,或 Tier 1 + Tier 2 叠加后整段呈现强模板感或强表演感。
限制:
Tier 1 明显密集,或多类结构问题叠加时才允许docs 默认不要升到 aggressiveScope 表示这次能不能改动句子和段落结构,和 minimal / standard / aggressive 是两条轴。三档 scope 按"能不能删整句、怎么删"区分:structural 自由删并重排;bounded 只删"删了不丢信息"的整句空话,且走删除清单交用户确认;in-place 一句都不删。
structural默认 scope。适用于短文本、明确要求重写的文本、AI 味密度很高且不需要保留原节奏的文本。
允许动作:
bounded中文 public-writing 长文(约 1000 字以上)的默认 scope。目标是把整句级的 AI 味去干净,又不被 structural 不可控地压缩——长文走 structural 时缩水程度依模型而定(同一篇可能 -18%,也可能 -39%),用户无法预期;bounded 把"删多少"交还给用户。
和另两档的关系:
structural 克制:不合并相邻句、不重排段落、不删承担节奏的实句或有意重复in-place 能去味:允许删"整句都是空话"的句子,但不直接删,而是进删除清单交用户拍板一句能进删除清单,必须同时满足三条:
两类动作分开走(实测依据:长文里句首引导词模型能句内清掉,但整句空话在 in-place 下删不掉,只会被软化成另一种说法):
值得一提的是 / 归根到底 / 这说明)后面还跟着实质内容 → 直接句内洗,删引导词留骨架,不进清单不仅仅是……更是…… 的价值拔高)→ 进删除清单,不擅自软化成另一种说法输出:正文给句内洗后的稿,末尾附「建议删除(待确认)」清单,每条写 原文 + 为什么删了不丢信息。用户点头才删,长度由用户拍板。
in-place适用于用户明确要求"完全原样 / 一句都别删 / 严格保句数"的情况,比 bounded 更严:整句空话也不删,只做句内降调。
默认触发条件:
bounded 仍删多了禁止动作:
允许动作:
删短语前先做语义独立性检查:删掉短语后,剩余部分必须仍是完整、可读、没有悬空指代的陈述句。否则改用句内替换,不要硬删。遇到整句空话,保留原句并标注 [空句,建议人工确认是否删除],不擅自软化成新说法。
aggressive + in-place 可以存在,但默认先提醒用户:长文 aggressive 很容易明显缩水;如果用户真正要保长度,优先改成 standard + bounded。用户明确坚持时,再执行 aggressive + in-place,但仍遵守不删整句、不并句、不重排的边界。
Tier 表示问题命中强度,与 严重度分级 保持一致,不表示改写力度。
默认替换。命中这类词或句式时,通常直接删掉或换成更具体的表达。常见类型:
默认处理:局部命中用 minimal 或 standard,密集命中时可升到 aggressive
单独出现可以放行,但同段聚集时是 AI 味信号。常见类型:
长度参考:短段落(< 100 字/词)同段 2+ 个即标记;长段落(≥ 100 字/词)同段 3+ 个再标记。
默认处理:保留最贴切的一个,其余改写;通常用 minimal 或 standard
常见词本身不构成问题,只在全文密度明显过高时才处理。常见类型:
重要 / 关键 / 核心 / 提升significant / innovative / effective默认处理:只替换一部分重复命中,通常用 minimal,必要时不改
以下内容默认优先保留,除非用户明确要求改风格且改动不损害信息:
不要为了“像人”把文本改得更假。专业文本可以专业,关键是别模板化、别表演化。
完整的保护清单见 Protected Spans。
改写后的文本应尽量满足:
更完整的正向目标、分场景校准和“cleaner vs more human”对照见 Positive Style Contract。
默认输出一个推荐版本,不默认输出审稿过程、多版本比稿或逐条点评。
只有在用户明确要求下面这类事情时才启用:
先别改,先标问题这段哪里像 AI只做诊断 / 审稿 / 标注先告诉我该不该改annotation mode 不直接给整段改写稿,默认只输出最重要的 1-5 个问题点。每个问题点固定包含这 4 个字段:
问题族:例如 开场套话 / 无源引用 / 工程师腔 / 语域混搭触发点:点明命中的词、结构或局部句子建议动作:删掉、换成具体表达、补来源、保持不动是否建议改写:是 / 否额外约束:
是否建议改写:否annotation mode 时,仍然按默认改写合同输出单一推荐版本遇到无源引用时,输出必须符合所选模式:
annotation mode 下,只输出对应的处理建议,不直接给整段改写稿rewrite-safe:建议删掉无法独立成立的整条无源论断;如果去掉权威铺垫后仍有不依赖来源的判断,再保留该判断。不要去掉数字后留下更泛的同向断言;如果不是 annotation mode,再给改写结果,不补虚构来源audit-only:优先点明缺来源、缺归属,而不是假装已经证实rewrite-with-placeholder:允许保留论证位置,但要显式暴露“此处待补来源”;如果不是 annotation mode,可以给带占位提示的改写结果只有在高风险误杀时,才额外补一行极短说明,例如:
保留了系统主语和术语,避免失真。这里只做轻改,避免把正式公告写成口语贴。提交改写前,把回读固定拆成两步,不要混着做:
先检查这 5 项:
再做一次分析—输出一致性检查:如果前面的判断是“原文没有具体对象、能力、实现或依据”,最终结果里就不能出现新工具、产品、平台、功能、实现关系或指标;输出里的每个 X 做 Y / X 基于 Y / X 处理 Y 关系都要能回指原文中的同一谓词关系,不能只靠同段共现推断;同义改写也不能改变谓词的方向、完成态、强度或效果类型,不能把“已经改善”写成“涉及”,也不能把“提升效率”扩成“节省时间”;如果命中项列出了数量—对象、主体—目标等保护关系,处理结果必须逐项对得上。
如果删掉一句后段落突然没了落点,就用原文已有的信息重组一条事实句,不要补口号句;原文里找不到可用信息就不补,宁可让段落短一点。
bounded / in-place scope 下额外检查:
in-place:输出字数低于原文 85% 时,回退检查是否误删整句、并句或压段落(in-place 不该删任何整句)bounded:字数会因删整句空话而下降,不设硬下限;但要确认删除清单里每条都是"删了不丢信息"的纯空句,没混进实句或承担节奏的重复只有在第一遍已经保住事实、但读起来还有轻微 AI 味时,才做第二遍。第二遍固定只查这 5 件事:
结论先说 / 直接说结论 / 值得注意的是 这类提示层总的来说 / 归根结底 / 最终来看 这类空收尾方向是对的 / 意义重大 / 真正理解了用户不是 X,是 Y)反复到能预判下一句形状时,按 结构反模式 第 1 条和第 18 条的密度判据处理第二遍只允许做轻量修正:
第二遍不要做的事:
场景保守策略:
public-writing 和 AI 味偏重的 chat,第二遍更常需要docs / status / code-context 默认更保守;如果第二遍会让语气变口语、变广告、或影响保真,就停在第一遍SKILL.md + references/ 一起工作Tier 1 / 2 / 3 校准命中规则:看 严重度分级annotation mode 的对照:看 改写示例默认做法是:先用本文件完成“场景、Tier、档位、输出合同”的主判断,再按问题类型补读 references/;只有在单文件安装场景里,才停留在本文件的兜底规则。
说人话 专治那种“每个字都对,但一看就不是你写的”中文。它清理过度承接、工程师腔、小红书 AI 腔、翻译腔和无源权威铺垫,同时锁住版本、命令、责任和证据。它不替你编新事实,也不把空话包装得更漂亮。改完你敢直接发。
它适合这些场景:
| 场景 | 它会做什么 |
|---|---|
| 日常聊天 | 删掉过度承接、推销式结尾和工程汇报腔,保留口语感 |
| 技术状态同步 | 保住事实、版本、命令、报错和责任归属,压低套话 |
| README / release note | 第一屏说清这是什么、给谁用;变更、验证和限制列全 |
| 论坛帖 / issue 回复 | 像维护者在认真沟通,不像客服公告或营销稿 |
| 中文长文 | 句内清理保住节奏,整句空话列「建议删除」清单交你确认,不让长文越改越短 |
改写前
你说的很对,这个问题一针见血。一句话总结:核心逻辑是先把流程跑通,再谈优化。我可以直接给你一版绝对没问题的最终方案,已经测试通过了,稳得很。要不要我顺手把文档也整理了?你一句话的事。
改写后
对,问题就在这:先把流程跑通,再谈优化。方案我发你。文档要不要一起弄?
开头发奖状、结尾追着卖,中间「一句话总结」「核心逻辑」轮着上——这条姿态链社区早就逐个点过名(Linux.do 句式征集帖、「对象说我说话一股子AI味」)。文本为合成示例,把被点名最多的口癖压进了一段。
改写前
v1.8.0 Release Highlights
本次版本是一次面向真实场景的系统性升级。我们不仅全面优化了改写体验,更通过全新的能力矩阵稳稳兜住了用户在 README、release note、论坛长帖和 issue 回复里的核心表达诉求。感谢所有用户的持续支持,让我们共同见证中文 AI 写作体验的全新跃迁。
改写后
v1.8.0
- 新增
references/scene-packs.md,覆盖 README、release note、forum post 和 issue replyevals/benchmark.md增加 8 条 scene pack 回归用例evals/real-samples.md增加 4 条整段样本,继续按自然 / 保真 / 可直接发评分这版不做 Voice Calibration;相关方向推迟到 v1.9 评估。
release note 的读者要的是变更清单,不是发布宣言。上面这条改写保住了版本号,拆掉了发布宣言那层,还把「这版不做 Voice Calibration」这种没做的事也写了出来。完整样本见 evals/real-samples.md RS-16。
改写前
本次优化在性能方面取得了显著成效,有效改善了接口响应问题,p95 延迟从 480ms 降到 160ms,充分体现了团队持续优化的能力。
改坏示范
这次优化明显降低了接口延迟。
渲染词是没了,但 p95、480ms、160ms 也跟着没了——空话只是换成了更泛的空话。
改写后
这次优化把接口 p95 延迟从 480ms 降到 160ms。
清完落在哪是有合同的:原文给了具体信息,改写后就得把它落回去,不能拿更泛的说法顶替。这条对应评测集里的硬约束用例(evals/benchmark.md SF-46)。更多例子见 references/examples.md 和 evals/real-samples.md。
先试效果,什么都不用装 — 说人话 GPT(ChatGPT,需 Plus / Pro),完整规则已内置,贴文本就能改。
Claude Code — 对话里两条命令装完,之后自动触发:
/plugin marketplace add MrGeDiao/shuorenhua
/plugin install shuorenhua@shuorenhua
装好后在对话里说「把这段去 AI 味」就会命中。手动安装(cp / 软链跟随更新)见 install/claude-code.md。
Codex — clone 后单次使用:
git clone https://github.com/MrGeDiao/shuorenhua.git && cd shuorenhua
codex exec -C . "读取 ./SKILL.md,按其中规则改写以下文本:……"
其他 agent / skill CLI — 支持 skills 命令时可以直接安装完整包:
npx skills add MrGeDiao/shuorenhua
更多安装选项见 npx skills add --help。
项目内长期使用建议把 skill 文件拷进项目并在 AGENTS.md 写明触发条件,见 install/codex.md。
只想先看问题、不要改稿:指令里加一句「按 annotation mode 只标注不改写」。
Cursor、OpenClaw 和自建 agent 见安装。
去 AI 味工具最常见的翻车不是没清干净,是清完事实变了:数字漂了、关系换了、原文没有的补出来了。说人话 把这些“不许变”写成可以逐条判分的合同:
p95 从 480ms 降到 160ms 删掉渲染词后必须原样在,不许概括成“明显降低”。展示了云原生架构的潜力 不能改成 采用了云原生架构(潜力不是实现);两个团队 不能扩成“换过两个团队”(先后关系是原文没有的)。未来十年 不能缩成“未来几年”,也不能糊成“未来”。status / docs 缺依据时标注“原文缺具体依据”,不硬填。每条合同在评测集里都有对应的硬约束用例(SF-07、SF-08、SF-46、SNF-36 等),双模型盲测逐条判分。规则细节见 references/positive-style.md 的「清理后的落点」和 references/protected-spans.md。
说人话 不是见词就替换。
先保信息,再谈风格。
完整流程固定六步:
chat / status / docs / public-writing;命中 README、release note、论坛帖、issue 回复时,再进对应的 Scene PackTier 1 / 2 / 3),再分别定改写力度(minimal / standard / aggressive)和 scope(structural / bounded / in-place);Tier 只描述问题命中多重,不直接等于力度| 识别信号 | 默认动作 | 例 |
|---|---|---|
| 开场套话、总结提示(“好问题”“结论先说”) | 删提示层,直接进入事实或回答 | 好问题!让我来解释 → 直接回答 |
| 商业黑话、价值拔高(“赋能”“闭环”“系统性升级”) | 换成普通动作;没有具体信息就删空壳 | 赋能开发者 → 帮开发者 |
| 工程师姿态腔(“收口”“兜住”“落盘”) | 按宾语判断;姿态层换成确认、核对、写入等动作 | 把结论落盘 → 把结论写进文档 |
| 过度接住、心理判断、身份认证 | 去掉抚慰和发证书,只保留低承诺回应 | 你不是敏感,你只是…… → 具体回应 |
| 翻译腔、句式过满 | 缩短主语和动作,保留术语和责任主体 | 基于……通过……来…… → 直接说动作 |
| 标点腔(破折号密集或首句起手) | 按密度和位置改回逗号、冒号或断句;单次合理用法放行 | 连续 —— → 分句 |
| 无源权威(“研究表明”“业内人士认为”) | chat / public-writing 删除无法独立成立的整条论断;docs / status 标注缺来源 |
不把裸 40% 留成事实,也不降格成“会更快” |
详细边界见 references/、场景规则 和 评测集。
英文去 AI 味已经有 stop-slop 和 humanizer。说人话 补的是中文这一层:这些腔调在中文里长什么样、按发布场景分档处理、改写前先锁住事实。
四个场景的默认力度:
| 大场景 | 默认强度 | 处理策略 |
|---|---|---|
chat |
轻 | 只砍明显套话,不把聊天改成公文 |
status |
中 | 保留动作、状态、阻塞点和下一步 |
docs |
中 | 技术表达优先,二次回读更保守 |
public-writing |
重 | 全规则扫描,并按需要触发 Scene Packs |
可发布文本再按「发到哪里」细分。这不是换语气,是按发布目的决定改法:README 第一屏要说清这是什么、给谁用;release note 要列清变更、验证和限制;论坛帖像维护者分享观察和取舍,不像公司公告;issue 回复先确认问题和下一步。每个子场景的目标和常见病灶见 references/scene-packs.md。
长文按默认动作改写,删句、并句会叠加,1800 字可能被压到 1000 字;反过来一句不删,整句的空话又留在文里。所以长文把「删到什么程度」单独分成三档,和力度档位正交:
| scope | 删整句吗 | 适用 |
|---|---|---|
structural |
自由删并重排 | 短文、明确要重写 |
bounded(长文默认) |
整句空话列成「建议删除(待确认)」清单,删多少你拍板 | public-writing 长文 |
in-place |
一句都不删,只句内降调 | 明确要求「完全原样」 |
三档的取舍过程见 #4,structural 缩水不可控的双模型对照实跑见 evals/results-v1.8.6.md。后续各版的 scope 回归结果登记在 evals/run-manifest.md,最近一轮是 v2.2.1 的两条 in-place 长文误杀防护(evals/results-v2.2.1.md §7)。
清理不只是删词,它也会把文本往这些方向拉:
规则层覆盖 210+ 中文短语、96 条英文短语、20 类结构反模式。
当前评测集共 84 条:
| 类型 | 数量 | 目标 |
|---|---|---|
| SF | 47 | 应该改的文本必须命中并改掉主要问题 |
| SNF | 37 | 不该误杀的文本必须放行或轻提示 |
| 场景样本 | 19 | 整段样本按自然、保真、可直接发三项评分,长文加 长度节奏 |
| Scene Packs | 8 | README / release note / forum post / issue reply 的正反样本 |
| Long-form In-place | 4 | 长文保长度场景,检查字数留存、句数对齐和关键转场 |
| Bounded | 3 | 长文整句空话进删除清单,但不误删实句和节奏句 |
怎么算及格:v2.1.0 起发布门槛分三层(判据单源:evals/benchmark-tiers.md):
| 层 | 管什么 | 进不进门槛 |
|---|---|---|
| L1 硬约束 | 编造事实、受保护片段漂移、责任归属改变、scope 越界 | 进:失败 0 才允许发布 |
| SNF 误杀 | 不该改的文本被改了 | 进:误杀率 < 10% |
| L2 风格目标 | 明显套路清没清干净 | 按模型分别报告趋势,不设统一线 |
| L3 风格观察 | 两位合格编辑可能合理分歧的用例 | 不进,只记录 |
v2.1.0 实跑(82 条全量盲测、双模型交叉判分,完整归档见 evals/results-v2.1.0.md):
| 被测输出 | L1 硬失败 | SNF 误杀 | 门槛 |
|---|---|---|---|
| Codex 最终全量 | 0 | 2/36 | 通过 |
| Claude 最终全量首轮 | 1(SF-07) | 3/36 | 未通过 |
| Claude 完整确认轮 | 0 | 1/36 | 通过 |
Claude 首轮那 1 个 L1 不是规则缺口:判定链已经写明“不得补实现关系”,输出还是补了,属分析—输出自相矛盾。按事先声明不改规则、只做一次完整确认复跑;失败轮与确认轮并列归档,不宣称所有运行全绿。旧口径 SF 通过率继续并列报告(Codex 87.0%、Claude 84.8%),保持历史可比,不再作为发布依据。
评测怎么跑:被测模型只看匿名乱序、不含预期的 evals/benchmark-blind.md,judge 按映射表判分;每次实跑的评测集版本、模型和口径登记在 evals/run-manifest.md。完整用例集见 evals/benchmark.md,整段场景样本(高拟真合成)见 evals/real-samples.md。
v2.2.0 起,改写输出落盘后先用零依赖硬判脚本 python3 automation/eval/hard_metrics.py --run <批次目录>/ 批量算出字数留存率、破折号密度和 protected spans 粗核(自动配对 evals/benchmark-blind.md 原文),judge 不再自己数长文留存,缺失报警仍由 judge 复核;使用口径见 automation/eval/README.md。
| 平台 | 文档 |
|---|---|
| Codex | install/codex.md |
| Claude Code | install/claude-code.md |
| Cursor / Windsurf | install/cursor.md |
| OpenClaw | install/openclaw.md |
| ChatGPT / Custom GPT | install/chatgpt.md |
核心只需要 SKILL.md 一个文件(lite);长期项目、公开文本和需要误杀防护的场景,建议带上 references/ 完整包(full)。
项目内长期使用时,可以在 AGENTS.md 加一段触发规则:
## 写作风格
当任务涉及“去 AI 味”“说人话”“自然一点”“别像模板”这类改写时,遵循 `shuorenhua/SKILL.md`。
对外文本优先按它处理;代码、日志、配置和命令输出不套这个 skill。
shuorenhua (说人话) is a Chinese-first AI writing humanizer for Codex, Claude Code, Cursor, and ChatGPT. It removes AI-flavored patterns in Chinese text — sycophantic openers, performative engineer-speak, translationese, unsourced authority claims — under a fidelity contract: numbers stay attached to what they measure, relations and attribution never drift, and missing facts are never invented. It ships with an 84-case benchmark (blind inputs, dual-model judging, false-positive guards) and a long-form mode that clea