开源项目

humanizer

将 AI 生成文本改写成更接近真人写作风格的 Agent 技能,基于维基百科 35 种「AI 写作痕迹」特征做两轮改写和校验。亮点是规则可溯源可解释,不胡编事实,支持用个人写作样本匹配风格,适合内容运营和需要处理 AI 文本的团队。注意:依赖 Agent Skills 生态,需要 Claude Code 等支持该格式的 agent。

README

Humanizer

skills.sh installs

Humanizer 重写听起来 AI 味十足的文本,使其读起来像人写的一样,同时不改变原文要表达的意思。由于它本质上就是 Markdown,因此可与任何支持技能(skills)的 agent 配合使用。

工作原理

Humanizer 使用了维基百科上由 WikiProject AI Cleanup 维护的 "Signs of AI writing" 一文中的 35 种模式。它会先进行第一轮改写,此轮不会把原始结构视为不可改变。随即它会针对这些模式以及原文的核心主张对草稿进行核查,再对那些仍不合格的内容进行二次改写。

"LLM(大语言模型)使用统计算法来猜测接下来应该生成什么内容。结果往往会倾向于适用于各种情况的最具统计可能性的结果。"

它不会无中生有编造内容。任何姓名、数字、日期、引语、引文出处或其他事实细节,都必须来自原文或作者本人。对于个人化写作,Humanizer 会保留作者的风格。技术和参考文献类行文则保持中性、简洁。若你提供一段写作样例,Humanizer 会以该样例的风格为准,而不是套用默认的文体规则。

当你直接粘贴文本时,Humanizer 会先展示它的工作过程,然后再给出最终版本。你可以看到第一轮改写的结果,以及任何仍显生硬之处的简短点评。如果是针对某个文件,它只改写其中的行文,代码、数据、frontmatter 和链接目标都会原样保留。

用法

直接调用技能:

/humanizer

[paste your text here]

或用自然语言提出请求:

Please humanize this text: [your text]

若要改写某个文件,请将文件路径交给 Humanizer:

Humanize the prose in docs/launch-post.md

匹配你的个人风格

如果你想让改写后的文章更像你自己所写,请提供一份样例:

/humanizer

Here's a sample of my writing for voice matching:
[paste 2-3 paragraphs of your own writing]

Now humanize this text:
[paste AI text to humanize]

Humanizer 会遵循样例中的行文节奏、用词习惯、标点方式以及在有意为之的特殊表达倾向。

35 种模式

内容模式

# 模式 写改前 写入后
1 夸大重要性和传承影响 “marking a pivotal moment in the evolution of...” “was established in 1989 as part of a wider decentralization”
2 过度攀附权威名号来证明其重要性 “cited in NYT, BBC, FT, and The Hindu” 仅保留有实际作用且标明来源的背景信息
3 肤浅的 -ing 式分析 “symbolizing... reflecting... showcasing...” 仅保留来源信息支持的内容
4 广告推销式语言 “nestled within the breathtaking region” “is a town in the Gonder region”
5 来源含糊 “Experts believe it plays a crucial role” 指出真实来源,或删除该论断
6 格式化的困难和展望套路 “Despite challenges... continues to thrive” 保留事实,去掉广告式吹捧

语言与语法模式

# 模式 写改前 写入后
7 AI 味文字高频用词 “Actually... additionally... gated on... quietly... testament... landscape... showcasing” “also... needs... remain common”
8 刻意绕开 is 和 are “serves as... features... boasts” “is... has”
9 "不是 X 而是 Y"句式与戛然而止式结尾 “It's not just X, it's Y”, “..., no guessing” 直接点出意思
10 堆砌三连词 “innovation, inspiration, and insights” 根据实际需要的含义决定列几项
11 同一对象反复换个说法 / 用同一主语不断开篇 “protagonist... main character... hero” 或 “She noted... She noted... She filed...” 统一使用一个称呼,或合并重复的句子
12 虚假的从 X 到 Y 范围罗列 “from the Big Bang to dark matter” 直接列出所涉主题
13 被动语态和主语缺失 “No configuration file needed” 只要能说清是谁在做,就写明行为主体

风格模式

# 模式 写改前 写入后
14 大量使用破折号(em/en dash) “institutions—not the people—yet this continues—” 去掉破折号:可用句号、逗号、冒号或括号替代
15 过度使用粗体 “OKRs, KPIs, BMC” “OKRs, KPIs, BMC”
16 列表套粗体小标头 “Performance: Performance improved” 若列表没有实际增加信息量,就改成规范行文
17 标题字号全大写式处理 (Title case) “Strategic Negotiations And Partnerships” “Strategic negotiations and partnerships”
18 Emoji 表情符号 “🚀 Launch Phase: 💡 Key Insight:” 去掉 emoji
19 弯引号 said “the project” said "the project"
26 连字符词组过度密集 “cross-functional, data-driven, client-facing” 只保留语法上必须的那些连字符
27 看似深刻的伪哲理 “At its core, what matters is...” 直接点明观点本身
28 宣布下一个内容点的写法 “Let's dive in”,或 “one thing that bit me” 直接进入正题
29 标题后又在正文里重复标题的意义 “## Performance” + “Speed matters.” 让标题完成它应承担的表达作用
30 写旧版本中更新的过程 “This function was added to replace...” 描述它现在本身具备什么功能即可
31 强行制造冲击感与片段化短句 “It had no preference. No prior. No nostalgia.” 使用自然的句子长度,写有实质内容的陈述
32 格言式套路语言 “Symmetry is the language of trust” 直接陈述具体的论点
33 假装坦诚或直白的开头 “Honestly? It depends...” 直接给出答案
34 去回应没人反驳过的挑战 “This isn't mainly about prompt length...” 删掉这种没有受众的防御性说法,留下确有依据的论断
35 先假装某个选择在前,再否定之 “A tempting option would be to..., but” 不要写这种看似却毫无意义的假选项,保留真实的抉择

聊天机器人模式

# 模式 写改前 写入后
20 正文结束后仍留下聊天机器人应对语言 “I hope this helps! Let me know if...” 删去
21 表达知识有限或干脆是猜测的附注 “While details are limited in available sources...” 写上已知的事实,若本就不知道则宁可缺失该句论断
22 语气过于迎合 “Great question! You're absolutely right!” 直接做出有内容的答复

填充词与闪烁其辞

# 模式 写改前 写入后
23 冗余的填充表达 “In order to”, “Due to the fact that” “To”, “Because”
24 过分堆砌程度限定词 “could potentially possibly” “may”
25 千篇一律的正能量结尾 “The future looks bright” 用有依据的事实或计划作结

完整示例

原文中的月份与街区等细节由作者自行提供。如果缺少这些要素,Humanizer 应主动询问,而不是自行编造。

写改前(AI 味十足):

我最近在里斯本度过了难以忘怀的五天,容我说一句——这座城市彻底征服了我的心。从我抵达那一刻起,我就知道自己来到了一个非同一般的地方。

里斯本坐落于特茹河河畔,是葡萄牙那日久弥新之精神的鲜活见证,这里丰厚的历史与现代动能每时每刻都揉和在一起。的确,那些远近知名的小山丘充满挑战性——我的双腿可深深领教过!——但每爬上一层,那种景色豁然开朗、全景尽收眼底的感觉,总让人觉得一切辛苦都值了。

此次旅行的一大重头戏无疑是乘坐标志性的 28 路电车,一路穿梭过这座城市中最有历史气息的多片街区。而美食呢?更是令人神魂颠倒。贝伦区 Pastéis de Belém 店里那最正宗的葡式蛋挞,是一份举国钟爱的珍贵宝藏。当它还透着热乎气时便咬下一口,那种瞬间我永生难忘。

不过,真正让里斯本如此特别的不仅是风景本身——更是一种氛围。只要你从主要广场往外多走几步,就能发现这里更安静、也更有本真魅力的一面:阳光铺满的巷子、瓷砖装饰的迷人门面,以及街头巷尾照常过着日子的热情当地人。这所有的一切,宛如一声慢下脚步、细细品味每时每刻的邀请。

当然,必去打卡的圣乔治城堡从高处望下去,能看到铺展在脚下屋顶之上壮丽非凡的景象。那里排队可能颇长,但对每位历史发烧友或只是好奇的旅行者来说,这一段体验也绝对物有所值。

我会再次前往吗?一定会。里斯本不是一个“到此一游”的地方——它会让你一次又一次地爱上它。如果你正在憧憬下一次逃离日常的远行,那么这个目的地就是能为你奉上一生难忘回忆的不二之选。✨

写入后:

我去里斯本待了五天,大约是去年十月,到如今对它仍然有种说不清道不明的复杂情绪。那地方确实美。但也比我听过的所有提醒都更伤膝盖。

这座城市的主题其实就是那上上下下的坡,而所有旅行手册对此都只字不提。我住的旅馆在阿尔法玛区,那边拍照的确漂亮,但实际情况就是每天去买杯咖啡,都像在爬一座六层高的大楼梯。到了第二天,我的小腿就已经开始抗议了。之后我每设计一段步行路线时,首先考虑的是哪里是下坡道。对于认识一座城市而言这也许算不上聪明方式,但恐怕是最诚实的。

人人都说一定要坐一次 28 路电车,于是我去坐了。结果整整四十分钟,我被挤得贴在一个陌生人的背包上,同时还有三个旅行团在对着同一个路口录像。如果还有下次,我宁可沿着路线步行,又或者趁早餐前人流还没上来时去坐。不过,这里出品的葡式蛋挞确实值得排场。我是在格拉萨区一家平淡无奇的小店里买了一个,拿到手里还带着温热。那一刻大约有三十秒钟时间,我完全理解了为什么有人会为一份甜点而计划一场旅行。

而真正出乎我意料的是,只要稍微偏离主广场一带,整座城市就进入了一种十分安静的状态。从任何一处中心广场往坡上多走两个街区,你看到的就是晾衣绳、残缺的瓷砖、敞开的窗子,以及几个把电视音量开到最大在看球赛的老人。到现在仍常在我脑海里浮现的,正是这个里斯本,而不是那座城堡。

城堡本身倒也不错。景色很好,可队伍也长得离谱。老实说,我排着队往前挪的时间,比进去后看任何东西的时间都长。如果我只剩两天在里斯本,我会把那趟城堡行换成一下午漫无目的地到处迷路。

我还是愿意再去的,只不过会选择春天,也会穿一双更舒服的鞋。里斯本不会热情过了头来让你事事方便。我想我喜欢的恰恰是这一点——即使我的双腿并不这么认为。

来源

版本历史

查看版本发布记录
  • 2.11.2 - 移除了插件符号链接以及针对 Claude Desktop 的单独安装包。当前版本的 Claude Code 可直接读取根目录下的 SKILL.md,现在 GitHub 的源码 ZIP 包可在 Claude Desktop 中直接使用。35 种模式无改动。
  • 2.11.1 - 增加了一个可直接用于 Claude Desktop 的发布包,其中含有一个普通 humanizer/SKILL.md 文件。GitHub 的源码归档仍保留插件符号链接(修复 #224)。35 种模式无改动。
  • 2.11.0 - 将所有仓库指南、描述、检查逻辑和技能说明改写为 Plain Language。沿用全部 35 种模式及原有行为。
  • 2.10.2 - 为 Claude Desktop 和旧版加载器新增了标准的 skills/humanizer/ 插件路径。由于该路径链接到根技能,因此仍然只有一份提示语(修复 #202)。
  • 2.10.1 - 在 §7 中增加了对 gate、gated、gating 一词比喻性用法的处理。同时保留了其实实在在的技术含义,如 feature gating 和 CI quality gates。
  • 2.10.0 - 新增模式 #34 和 #35,用于清除遗留于终稿段落中的草稿式思路。为各种真实的限制、反驳和备选方案增加了相应保障(修复 #198)。另外改进了 §24 和最终的改写步骤。当前共 35 种模式。
  • 2.9.2 - 将“句子开头重复”判定逻辑归入模式 #11,同时给刻意为之的排比重复留出保护空间(修复 #206)。将 §28 扩大了范围以覆盖更多随笔式的预告语。模式共 33 种。
  • 2.9.1 - 改进安装流程与包校验机制。移除了不受支持的 metadata、工具授权机制和一处重复的过长示例。模式共 33 种。
  • 2.9.0 - 新增了禁止虚构事实的规则,并逐一更新所有示例以符合该规则(修复 #187)。将“信息真实性”提升到“段落结构”之上;写作样例现在可以覆盖 §14;并新增了三种输出模式。共 33 种模式。
  • 2.8.3 - 将版本号迁移到 metadata.version 以保证对 Agent Skills 的兼容性。共 33 种模式。
  • 2.8.2 - 将主要示例替换为一段第一人称里斯本游记,且保留了原文的主题、视角与细节。共 33 种模式。
  • 2.8.1 - 增加了跨 agent 安装方式、Claude 插件文件,以及对引文内容的保护。共 33 种模式。
  • 2.8.0 - 新增模式 #31-33,并扩展模式 #20 以覆盖聊天机器人的主动提供帮助型话语。共 33 种模式。
  • 2.7.0 - 新增模式 #30,强化对破折号的规则,并扩展模式 #21 以包含无任何依据的推测。此时共 30 种模式。
  • 2.6.0 - 合并了重复的工作流描述;将“个性特征”建议限定于适用的内容;不再在文档中作任何模型能力上的猜测;同时精简了主要的完整示例。共 29 种模式。
  • 2.5.1 - 新增对被动语态及主语的缺失的核查项。共 29 种模式。
  • 2.5.0 - 增加对伪深刻结论、预告式开场、重复标题及省略式否定结尾的识别。收紧了破折号规则,并修正了 frontmatter。共 28 种模式。
  • 2.4.0 - 增加写作样例对口匹配功能。
  • 2.3.0 - 增加对连字符堆叠词组的核查。
  • 2.2.0 - 增加一次草稿复核及第二轮改写。
  • 2.1.1 - 修正了弯引号的示例写法。
  • 2.1.0 - 为当时的全部 24 种模式添加了示例对照。
  • 2.0.0 - 依据维基百科该来源条目重写了本技能。
  • 1.0.0 - 首个正式版本。

许可证

MIT

安装

通过 Skills CLI 安装 Humanizer:

npx skills add blader/humanizer --global

若希望仅安装于当前项目中,请去掉 --global 参数。使用 --agent <name> 或 --agent '*' 指定希望安装到的 agent。完成后请重新载入对应 agent 的技能列表。

Claude Code 2.1.142 及以上版本可直接安装此插件:

/plugin marketplace add blader/humanizer
/plugin install humanizer@humanizer

插件调用命令为 /humanizer:humanizer。

在 Claude Desktop 中,请将本仓库下载为 ZIP 文件,再将其作为技能上传。

如需手动安装,将 SKILL.md 放入对应 agent 的 skill 目录即可。

开源项目blader2026-09-02原文

相关内容