holaOS 内置 stop-slop 技能:系统化清除 AI 腔写作结构的完整指南

原创2026-10-03 23:21:261,433 阅读
文章标签:AI 应用AI Agent人工智能本地部署大模型后端

holaOS 内置 stop-slop 技能:系统化清除 AI 腔写作结构的完整指南

导读

holaOS 在运行时(runtime)的 harness 层内置了 stop-slop 写作技能,用于在撰写、编辑和审阅散文时消除可预测的 AI 写作痕迹。本指南以该技能的核心参考文档 structures.md 为主干,逐类拆解 AI 高频使用的"问题写作结构"(二元对立、负面清单、戏剧性碎片化、修辞铺垫、虚假能动性、被动语态等),并给出可执行的改写规则、判分维度与实战示例。读完本文,你将获得一套可直接套用的"去 AI 腔"检查清单,以及 holaOS 中该技能从嵌入、发现到策略管控的完整工作原理。


1. 技能定位:stop-slop 在 holaOS 中的角色

stop-slop 是 holaOS 预置于 harness 的一组 embedded skills 之一,与 skill-installer、skill-creator、mcp-configurator、interface-design、frontend-design 等并列存放于 embedded-skills 目录。它被设计为"在起草、编辑或审查文本时触发"的写作类技能,其元数据在 SKILL.md 中声明为:

  • 技能名称:stop-slop
  • 触发场景:撰写散文、编辑草稿、审阅内容以剔除 AI 模式化痕迹
  • 授权协议:MIT

从源码结构看,holaOS 的 harness 通过 skill-policy.ts 维护技能的别名映射与"受管工具/受管命令"绑定,将每个技能与其可用的工具、命令关联起来;技能元数据随后经 workspace-skills.ts 暴露给运行时,供各类 agent(Claude Code、Codex 等)按需加载。因此,stop-slop 在 holaOS 中不是一份孤立的写作规范,而是作为可被任意 agent 调用的运行时能力存在的:任何产出散文的环节(撰写文档、生成回复、编写博客)都可以在交付前调用它完成一轮"去 AI 腔"审查。

stop-slop 的知识体系由四份文件组成,阅读顺序建议为:

  1. SKILL.md:八条核心规则、交付前快速检查清单与十分制评分维度;
  2. structures.md:本文核心,按结构类型给出"问题模式→成因→替代写法";
  3. phrases.md:按词汇类别列出需删除的短语与副词;
  4. examples.md:五组改写前后对照样例。

2. 十大问题结构:模式、成因与替代写法

structures.md 将 AI 腔写作归纳为十类结构问题。下面逐一展开,并完整保留文档中的模式对照表。

2.1 二元对立(Binary Contrasts)

这类结构制造虚假的戏剧张力。AI 习惯先否定一个选项、再抛出真正的观点,形成"预告式反转"。文档列出的典型模式如下:

模式 问题
"Not because X. Because Y." / "Not because X, but because Y." 预告式反转
"[X] isn't the problem. [Y] is." 公式化重述
"The answer isn't X. It's Y." 可预测的转折
"It feels like X. It's actually Y." 铺垫/揭晓式俗套
"The question isn't X. It's Y." 修辞性误导
"Not X. But Y." / "not X, it's Y" / "isn't X, it's Y" 机械式对比
"It's not this. It's that." 换汤不换药的同一公式
"stops being X and starts being Y" 虚假的转变弧线
"doesn't mean X, but actually Y" 否定-断言拐杖
"is about X but not Y" 虚假区分
"not just X but also Y" 附加式缓冲

替代写法:直接陈述 Y。 例如把 "Not because the technology is complex. Because people are complex." 改写为 "Technology is manageable. People aren't." 完全去掉否定句,让核心断言自然浮现。文档给出的原则是:直接说 "The problem is Y." 或 "Y matters here.",彻底丢弃否定结构。

2.2 负面清单(Negative Listing)

在揭示事物"是什么"之前,先罗列它"不是什么"——文档称之为"修辞脱衣舞"(rhetorical striptease)。

模式 问题
"Not a X... Not a Y... A Z." 通过否定制造戏剧性铺垫
"It wasn't X. It wasn't Y. It was Z." 同一结构,换成过去时

替代写法:直接陈述 Z。 读者不需要这条"跑道"。负面清单浪费篇幅,且让正文显得在刻意吊胃口。

2.3 戏剧性碎片化(Dramatic Fragmentation)

用短句碎片制造强调,读起来像"刻意为之的深刻"(manufactured profundity)。

模式 问题
"[Noun]. That's it. That's the [thing]." 表演式简洁
"X. And Y. And Z." 断奏式戏剧
"This unlocks something. [Word]." 人工揭示

替代写法:使用完整句子。 相信内容本身,而不是依赖排版效果。例如 "Speed. Quality. Cost. You can only pick two. That's it. That's the tradeoff." 应压缩为一句 "Speed, quality, cost; pick two."

2.4 修辞铺垫(Rhetorical Setups)

这类句式"宣布洞察"而非"交付洞察",用提问或预告代替直接论证。

模式 问题
"What if [reframe]?" 苏格拉底式装腔
"Here's what I mean:" 冗余预告
"Think about it:" 居高临下的指令
"And that's okay." 不必要的许可

替代写法:直接说出观点,让读者自行得出结论。 "What if I told you that the best teams don't optimize for productivity?" 这类开场白应改写为 "The best teams optimize for learning, not productivity.",一次到位。

2.5 公式化构造(Formulaic Constructions)

模式 问题
"By the time X, I was Y." 叙事模板
"X that isn't Y" 间接表达,应直接说 "X is broken"

公式化构造的本质是"回避直接断言"。与其绕弯,不如给出判断。

2.6 虚假能动性(False Agency)

给无生命的事物赋予人类动词。投诉不会"变成"修复方案,赌注不会"生死攸关",决策不会"浮现"——是人做了某件事才让这些发生。AI 偏爱此类表达,因为它可以回避点名行动者。

模式 问题
"a complaint becomes a fix" 投诉什么都没做,是人修好了它
"a bet lives or dies in days" 赌注没有生命周期,是人放弃或交付了项目
"the decision emerges" 决策不会浮现,是人做出了决定
"the culture shifts" 文化不会自己转变,是人改变了行为
"the conversation moves toward" 对话不会自己移动,是人在引导
"the data tells us" 数据静静地待在那里,是人阅读并得出结论
"the market rewards" 市场不会奖励,是买家在付款

替代写法:点出具体的人。 "The team fixed it that week" 胜过 "the complaint becomes a fix"。如果找不到具体的人,就用 "you",把读者放进场景中。这条规则是 AI 文本最典型的识别特征之一——凡出现"抽象名词 + 人类动词"的组合,几乎必然出自自动生成。

2.7 远方叙事者(Narrator-from-a-Distance)

叙述者悬浮在场景之上,而不是把读者放进场景之中。

模式 问题
"Nobody designed this." 无实体的观察
"This happens because..." 讲师腔
"This is why..." 同上
"People tend to..." 扶手椅社会学家

替代写法:把读者放进房间里。 "You don't sit down one day and decide to..." 胜过 "Nobody designed this." 具体的人称和场景,远胜抽象的社会学观察。

2.8 被动语态(Passive Voice)

每个句子都需要一个"做某事的主语"。被动语态隐藏行动者并抽干能量。

模式 修复
"X was created" 点出创建者
"It is believed that" 点出相信者
"Mistakes were made" 点出犯错者
"The decision was reached" 点出决策者

替代写法:找到行动者,把他放在句首。 被动语态的修复往往与"虚假能动性"互补:要么物做主语,要么无人做主语,两者都是行动者缺位。

2.9 应避免的句子开头(Sentence Starters to Avoid)

模式 修复
以 What、When、Where、Which、Who、Why、How 开头的句子 重构句子,让主语或动词先行
以 "So" 开头的段落 直接写内容
以 "Look," 开头的句子 删除

Wh- 开头会变成拐杖。例如 "What makes this hard is..." 应改为 "The constraint is...",或者更好——直接点名那个具体约束。文档特别强调:要命名具体的约束,而不是停留在抽象的"困难"层面。

2.10 节奏模式(Rhythm Patterns)

模式 修复
三项并列清单 改用两项或一项
立即自答的设问 让问题呼吸,或直接删掉
每段都以"金句"收尾 变换结尾方式
破折号(em dashes) 删除,改用逗号或句号;完全不使用
断奏式碎片化 不要堆叠短促有力的句子
"Not always. Not perfectly." 伪装成安慰的模糊化

节奏问题的本质是"可预测性"。AI 生成文本有强烈的节拍偏好:三连、设问自答、段尾金句、破折号强调。文档要求逐一打破这些节拍,让散文回归人的自然呼吸。

2.11 词汇模式(Word Patterns)

模式 问题
懒惰极端词(every、always、never、everyone、everybody、nobody) 虚假权威;用具体细节替代笼统断言
所有副词(-ly 结尾词,"really"、"just"、"literally"、"genuinely"、"honestly"、"simply"、"actually") 空洞强调;完整清单见 phrases.md

3. 配套词汇清单:与结构问题联动的删除表

structures.md 在词汇模式一节指向 phrases.md,两者配合构成完整的"结构 + 词汇"双层过滤。phrases.md 将需删除的短语分为七类:

  • 清嗓式开场(Throat-Clearing Openers):"Here's the thing:"、"Here's what [X]"、"The uncomfortable truth is"、"It turns out"、"The real [X] is"、"Let me be clear"、"The truth is,"、"I'll say it again:"、"I'm going to be honest"、"Can we talk about" 等。任何 "here's what/this/that" 构造都是"点题之前的清嗓",删掉并直接陈述观点。
  • 强调拐杖(Emphasis Crutches):"Full stop." / "Period."、"Let that sink in."、"This matters because"、"Make no mistake"、"Here's why that matters"。
  • 商业黑话(Business Jargon):Navigate→Handle/address;Unpack→Explain/examine;Lean into→Accept/embrace;Landscape→Situation/field;Game-changer→Significant/important;Double down→Commit/increase;Deep dive→Analysis/examination;Take a step back→Reconsider;Moving forward→Next/from now;Circle back→Return to/revisit;On the same page→Aligned/agreed。
  • 副词(Adverbs):全部删除,包括 -ly 词与 "really"、"just"、"literally"、"genuinely"、"honestly"、"simply"、"actually"、"deeply"、"truly"、"fundamentally"、"inherently"、"inevitably"、"interestingly"、"importantly"、"crucially"。同时删掉 "At its core"、"In today's [X]"、"It's worth noting"、"At the end of the day"、"When it comes to"、"In a world where"、"The reality is"。
  • 元评论(Meta-Commentary):"Hint:"、"Plot twist:" / "Spoiler:"、"You already know this, but"、"But that's another post"、"X is a feature, not a bug"、"Dressed up as"、"The rest of this essay explains..."、"Let me walk you through..."、"In this section, we'll..."、"As we'll see..."、"I want to explore..."。文章应该向前推进,而不是预告自己的结构。
  • 表演式强调(Performative Emphasis):"creeps in"、"I promise"、"They exist, I promise"。
  • 说教代替展示(Telling Instead of Showing):"This is genuinely hard"、"This is what leadership actually looks like"、"This is what X actually looks like"、"actually matters"。
  • 模糊断言(Vague Declaratives):"The reasons are structural"、"The implications are significant"、"This is the deepest problem"、"The stakes are high"、"The consequences are real"。若一个句子声称某事重要/深刻/结构性,却未指明具体事物,就删掉它或替换为具体事物。

注意词汇层与结构层是递归的:phrases.md 里被禁的 "Here's what I mean:" 在 structures.md 的"修辞铺垫"中同样出现。这说明 stop-slop 的设计是先按"结构骨架"过滤句式,再按"词面"过滤填充物。


4. 改写前后对照:五种典型场景的完整演示

examples.md 提供了五组可复用的改写样例,与 structures.md 中的结构类型一一对应:

示例 1:清嗓 + 二元对立

  • 改前:"Here's the thing: building products is hard. Not because the technology is complex. Because people are complex. Let that sink in."
  • 改后:"Building products is hard. Technology is manageable. People aren't."
  • 改动点:删除开场白、二元对立结构与强调拐杖,全部改为直接陈述。

示例 2:填充词 + 多余安抚

  • 改前:"It turns out that most teams struggle with alignment. The uncomfortable truth is that nobody wants to admit they're confused. And that's okay."
  • 改后:"Teams struggle with alignment. Nobody admits confusion."
  • 改动点:删掉模糊词("most")、清嗓短语与"给许可"的结尾。

示例 3:商业黑话堆叠

  • 改前:"In today's fast-paced landscape, we need to lean into discomfort and navigate uncertainty with clarity. This matters because your competition isn't waiting."
  • 改后:"Move faster. Your competition is."
  • 改动点:黑话清零,核心信息压缩到六个词。

示例 4:戏剧性碎片化

  • 改前:"Speed. Quality. Cost. You can only pick two. That's it. That's the tradeoff."
  • 改后:"Speed, quality, cost; pick two."
  • 改动点:合并为单个句子,去掉表演式强调。

示例 5:修辞铺垫

  • 改前:"What if I told you that the best teams don't optimize for productivity? Here's what I mean: they optimize for learning. Think about it."
  • 改后:"The best teams optimize for learning, not productivity."
  • 改动点:直接断言,无修辞脚手架。

这五个样例覆盖了 structures.md 中"二元对立、负面清单、戏剧性碎片化、修辞铺垫"四类结构,以及 phrases.md 中"清嗓、黑话、填充词"三类词汇问题,是检验自改稿是否达标的黄金参照。


5. 八条核心规则与交付前快速检查

stop-slop 的完整工作流以 SKILL.md 的八条核心规则为总纲,structures.md 与 phrases.md 分别是其第 2 条与第 1 条的展开:

  1. 删除填充短语:删掉清嗓式开场、强调拐杖与所有副词(详见 phrases.md)。
  2. 打破公式化结构:避免二元对立、负面清单、戏剧性碎片化、修辞铺垫与虚假能动性(详见 structures.md)。
  3. 使用主动语态:每个句子都需要一个做某事的人类主语,禁止被动构造,禁止无生命物体执行人类动作。
  4. 保持具体:禁止模糊断言("The reasons are structural"),点名具体事物;禁止懒惰极端词("every"、"always"、"never")做模糊工作。
  5. 把读者放进房间:不使用远方叙事者腔调。"You" 胜过 "People",具体胜过抽象。
  6. 变化节奏:混用句子长度;两项胜过三项;段落结尾各不相同;不使用破折号。
  7. 信任读者:直接陈述事实,跳过软化、辩护与手把手引导。
  8. 删掉"金句":如果一句话听起来像拉页引言(pull-quote),就重写它。

交付散文前,SKILL.md 要求执行一轮快速检查(每一条都直接对应 structures.md 的某个小节):

  • 有任何副词?杀掉。
  • 有任何被动语态?找到行动者,让其成为主语。
  • 无生命物体执行人类动词("the decision emerges")?点出人。
  • 句子以 Wh- 词开头?重构。
  • 有任何 "here's what/this/that" 清嗓?直接切到论点。
  • 有任何 "not X, it's Y" 对比?直接陈述 Y。
  • 连续三个句子长度相同?打破其中一个。
  • 段落以"金句式独行"收尾?变换它。
  • 任何地方出现破折号?删除。
  • 模糊断言("The implications are significant")?点名具体影响。
  • 远方叙事者("Nobody designed this")?把读者放进场景。
  • 元连接语("The rest of this essay...")?删除,让文章自然推进。

6. 十分制评分:五维度量化"AI 腔残留"

为了让审查从定性走向定量,SKILL.md 定义了五个评分维度,每个维度按 1~10 分打分,总分 50 分,低于 35 分必须修改:

维度 评分问题
Directness(直接度) 是在陈述,还是在预告?
Rhythm(节奏) 是变化的,还是节拍器式的?
Trust(信任度) 是否尊重读者智力?
Authenticity(真实感) 听起来像人写的吗?
Density(密度) 有任何可删的内容吗?

这套评分可以直接嵌入 agent 的自我审查流程:对一段草稿,agent 先跑快速检查清单(12 项布尔判断),再按五个维度打分,总分不达标则依据 structures.md 与 phrases.md 定位具体问题结构并重写。从 holaOS 的角度看,这正是"技能"区别于"提示词"的价值——它携带了可执行的评分逻辑与判分阈值,而非一段松散的建议。


7. 在 holaOS 中启用与扩展 stop-slop

stop-slop 作为 embedded skills 随 harness 一起分发,在 holaOS 中可通过以下方式使用与扩展:

  1. 直接调用:在写作类任务的提示中声明使用 stop-slop 技能,agent 会读取 SKILL.md 及三份 references 作为约束。
  2. 随 harness 自动注入:holaOS 的 harness 启动时会扫描 embedded-skills 目录,将技能元数据纳入 skill-policy.ts 的别名映射与受管工具/命令注册,再经 workspace-skills.ts 暴露给运行时——也就是说,技能在运行时是一个可被发现、可被约束的系统级能力,而非粘贴进 prompt 的文本。
  3. 二次开发参照:若需定制写作规范,可参照 stop-slop 的目录结构(SKILL.md + references/ 拆分主规则与明细表)建立自己的技能;holaOS 仓库中的 sync-embedded-skills.mjs 展示了 embedded skills 的同步机制,可供理解技能如何进入运行时捆绑包。

需要说明的适用前提:本技能的目标是"人读的散文"(prose),而非代码注释、日志或结构化数据;对追求高效信息传递的技术文档,规则的力度可酌情调整(例如保留必要的三项并列以维持列表语义),但"删除破折号、删除副词、点出行动者"三条基础规则在绝大多数技术写作场景下仍然成立。


8. 结语:用结构审查替代风格感觉

stop-slop 最可贵的点在于把"AI 腔"从不可言说的"风格感觉"还原为可枚举的结构清单:二元对立、负面清单、戏剧性碎片化、修辞铺垫、公式化构造、虚假能动性、远方叙事者、被动语态、Wh- 开头、节奏模式、词汇模式。任何 agent(Claude Code、Codex,或 holaOS 内的任意 harness)都可以拿着这份清单做确定性检查——命中即改写,不依赖主观品味。

在 holaOS 的运行时架构中,它以 MIT 协议随 harness 嵌入分发,通过 skill-policy.ts 进入受管工具/命令体系。对希望在自身项目中复用这套方法论的开发者,直接以 structures.md、phrases.md、examples.md 三份文件为基准建立写作检查清单即可——把"听起来像 AI"变成"逐项对照、逐项清零"的工程问题。

登录后查看全文
holaOS