Zed 内部品牌写作规范:从 taboo-phrases.md 看如何构建一套可落地的“反 AI 腔”写作检测清单
Zed 仓库的 .factory/skills/brand-writer/ 目录内置了一组面向 AI 助手的品牌写作技能,其中 taboo-phrases.md 是这套体系的“负面清单”:它系统列出了 22 个营销浮夸词、5 类暴露 AI 生成痕迹的句式结构、10 条空洞热情开场、9 组模糊收益表述、5 条标点禁令、14 个企业黑话以及 10 个应直接删除的填充短语,并给出了逐条的判定理由和可执行的检测清单。本文完整继承该文档的全部规则表与示例,并结合仓库中同目录的 SKILL.md、rubric.md、voice-examples.md 以及技能加载机制源码,说明这份清单在真实工作流中如何被使用、如何与评分体系联动。读完后你可以直接把这套清单移植到自己团队的发布说明、官网文案或 LLM 提示词规范中。
清单的定位:为什么需要一份“负面清单”
SKILL.md 开篇定义了 Zed 的品牌声音:“thoughtful, technically grounded, and quietly confident”,写作要像一个为开发者造工具的资深开发者那样说话,陈述事实、解释机制,而不是推销。而 taboo-phrases.md 解决的是另一侧的问题:哪些模式一旦出现,就暴露出“AI 生成的营销腔”。文档第一句就点明立场:这些模式是 AI 生成文本或重营销文案的信号,必须消除所有实例。
从仓库的目录结构看,这份清单不是孤立的。它和三个参考文件构成一套完整的“诊断—评分—改写”工具包:
| 文件 | 角色 |
|---|---|
| taboo-phrases.md | 负面清单:模式识别,出现即标记 |
| rubric.md | 8 项评分标准,每项 1 到 5 分,全部达到 4 分才通过 |
| voice-examples.md | 10 组前后对照的改写范例,附带事实保留规则 |
SKILL.md 的工作流明确把三者串成流水线:Phase 2 “Gather Context” 自动加载这三个参考文件;Phase 3 的 “Pass 2: Diagnosis” 要求对初稿按 8 项标准打分,并 “Scan for taboo phrases. Flag each with line reference”(扫描禁忌短语并逐行标注);任何标准低于 4 分或发现任一禁忌短语,就必须进入 Pass 3 的重写循环,直到全部达标。也就是说,taboo-phrases.md 在流程中扮演的是硬性门槛:rubric 的分数是软性质量维度,而禁忌短语是“一票否决”项。
这套技能在 Zed 内部的运行方式也值得了解。crates/agent_skills/README.md 解释了技能加载机制:模型在系统提示中只看到每个技能的名称与描述构成的目录,当它调用 skill { name: "brand-writer" } 或用户输入 /brand-writer 时,SKILL.md 正文才会被包装进 <skill_content> 信封注入对话,技能目录中的相对路径按该目录解析。README 的示例恰好就以 brand-writer 为例。因此 taboo-phrases.md 这类参考文件属于“按需加载的捆绑资源”,只在技能被激活后才进入上下文,这正是 Agent Skills 规范中渐进式披露(progressive disclosure)的体现。
第一层:浮夸词(Hype Words)
文档的第一张表列出了 22 个“除非引用他人发言,否则永远不用”的词,并给出每个词失败的直接原因:
| 词/短语 | 失败原因 |
|---|---|
| revolutionary | 无依据的最高级 |
| game-changing | 无依据的最高级 |
| cutting-edge | 模糊的技术buzzword |
| next-generation | 脱离语境时毫无意义 |
| blazingly fast | 陈词滥调,无量化 |
| lightning-fast | 陈词滥调,无量化 |
| powerful | 模糊:它具体能做什么? |
| robust | 模糊:它如何 robust? |
| seamless | 几乎从不成立 |
| frictionless | 几乎从不成立 |
| effortless | 掩盖了真实存在的复杂性 |
| leverage | 企业黑话 |
| unlock | 营销操纵 |
| supercharge | 营销操纵 |
| turbocharge | 营销操纵 |
| best-in-class | 无法验证的声明 |
| world-class | 无法验证的声明 |
| state-of-the-art | 模糊的技术buzzword |
| groundbreaking | 无依据的最高级 |
| innovative | 应该展示,而不是宣称 |
| intuitive | 往往等于“我们没解释清楚” |
| elegant | 自我表扬 |
这张表的分类逻辑值得注意,它把“坏词”分成了四种病因:无依据的最高级(revolutionary、groundbreaking)、不可验证的声明(best-in-class、world-class)、不可量化的性能宣称(blazingly fast、lightning-fast)、以及掩盖机制的模糊形容词(powerful、robust、seamless、effortless)。对应的修复手段在 voice-examples.md 中有完整示范。例如示例 1 “Hype to Specifics”:
改前:Zed delivers blazingly fast performance that will revolutionize your coding experience.
改后:Zed is written in Rust with GPU-accelerated rendering. Keystrokes register in under 8ms. Scrolling stays at 120fps even in large files.
改写原则可以浓缩为文档末尾的“Transformation Patterns Summary”表:浮夸词替换为测量值,模糊收益点名具体功能,抽象声明补上机制或数字。rubric.md 中的 “Earned Claims”(已挣得的声明)标准与此呼应:5 分要求 “Every claim can be demonstrated or verified”,1 分是 “Bold claims with no backing”。
第二层:AI 结构性模式(AI Structural Patterns)
这是文档中信息密度最高的一节。它指出五种句式结构会直接暴露 AI 作者身份,每种都给出“❌ 错误 / ✅ 正确”的对照示例(示例引自文档原文,均为 Zed 文案语境):
1. 破折号链(Em Dash Chains)
❌ "Zed is fast — really fast — and it shows in every interaction."
✅ "Zed is fast. You'll feel it in every interaction."
修复方式是拆分成独立句子,删掉重复的自我强调。
2. “It's not X, it's Y” 反转句式
❌ "It's not just an editor — it's a complete development environment."
✅ "Zed combines editing, collaboration, and AI assistance in one workspace."
voice-examples.md 的示例 6 给出了更彻底的处理:消除全部三次出现的该句式,用肯定句陈述产品“是什么”,并补上技术理由(“Everything runs in the same process, so switching between tasks has no context-switch overhead”)。
3. 三段并列列表(Triple Parallel Lists)
❌ "Fast. Focused. Collaborative."
❌ "Write code. Ship faster. Stay in flow."
✅ "Zed is built for speed and collaboration."
值得注意的是修复后的示例只保留了两个并列项。这说明规则针对的是“刻意凑三的标语节奏”,而非并列本身。rubric.md 把这类模式归入 “Natural Syntax” 标准的红旗项:“Obvious structural patterns (parallel triplets, em dash chains)”。
4. 冒号引入的散文列表(Colon-Introduced Lists in Prose)
❌ "Three things make Zed different: speed, collaboration, and AI."
✅ "Zed prioritizes speed, real-time collaboration, and AI integration."
问题在于“先报数量、再列清单”的预告式写法。改写后句子直接陈述,不再把列表当成悬念。
5. 修辞性问句开场(Rhetorical Questions as Openers)
❌ "What if your editor could keep up with your thinking?"
✅ "Zed renders every keystroke instantly."
修辞性问句被要求转换为陈述句。这条规则同时出现在两处:本节的句式规则,以及后文标点禁令中的 “? as hook: No rhetorical questions as openers”。
这五种结构与 rubric.md 的 “Natural Syntax” 评分表形成了可操作的对应关系:5 分是 “Varied sentence structure, natural rhythm, reads aloud smoothly”,2 分正是 “Obvious structural patterns (parallel triplets, em dash chains)”。SKILL.md 的 Tone 段落也用同样的措辞再次强调:“No choppy fragments, no rhythmic marketing patterns, no overuse of em dashes or 'it's not X, it's Y' constructions”,并要求 “Every line should sound like something a senior developer would say in conversation”。
第三层:空洞热情(Empty Enthusiasm)
这一节的指令是 “Remove all emotional manipulation”(删除所有情感操纵),清单包含 10 条模式及其病灶:
| 模式 | 问题 |
|---|---|
| "We're excited to announce..." | 没人关心你的情绪 |
| "We're thrilled to share..." | 同上 |
| "We can't wait for you to try..." | 自以为是 |
| "You'll love..." | 替读者决定感受 |
| "Get ready to..." | 营销造势 |
| "Say goodbye to..." | 陈词滥调式铺垫 |
| "Say hello to..." | 陈词滥调式收尾 |
| "Finally, an editor that..." | 暗示其他所有产品都失败了 |
| "The wait is over" | 预设了读者的期待 |
| "Introducing..."(单独使用) | 弱势开场 |
voice-examples.md 的示例 5 “Enthusiasm to Confidence” 给出了端到端示范。改前的 “We're thrilled to announce Zed 1.0! ... You're going to love it!” 在 rubric 的 “Quiet Confidence” 标准下只能得 1 分;改后变成 “Zed 1.0 is available today. This release includes GPU text rendering, multi-buffer editing, and native collaboration. Download it at zed.dev.”,逐条删除了 thrilled、can't wait、You're going to love it,用实质内容(版本号、功能清单、下载入口)替代情绪。
这一层与 SKILL.md 写作原则第 6 条完全一致:“No emotional manipulation — Never use hype, exclamation points, or 'we're excited.' Don't tell the reader how to feel.”
第四层:模糊收益(Vague Benefits)
文档要求把模糊收益“Replace with specific outcomes”,并给出一张“看到 X 就问 Y”的追问表:
| 模糊表述 | 应该追问 |
|---|---|
| "enhanced productivity" | 快了多少?在什么任务上? |
| "improved workflow" | 具体改进了什么? |
| "better experience" | 好在哪?可测量吗? |
| "streamlined process" | 删掉了哪些步骤? |
| "optimized performance" | 哪个指标提升了? |
| "increased efficiency" | 什么花的时间或力气更少了? |
| "modern development" | 具体是什么能力? |
| "next-level coding" | 毫无意义 |
| "superior quality" | 以什么标准衡量? |
这张表的实用价值在于它不是给结论,而是给出诊断问句。写作时遇到左列任何短语,右列的问句就是改写的起点。对照 voice-examples.md 的示例 7 “Vague Benefits to Specific Outcomes”:
改前:Zed's AI integration enhances your productivity and streamlines your workflow, helping you code smarter and ship faster.
改后:Zed runs AI completions inline as you type. Suggestions appear in 200ms. Accept with Tab, reject by continuing to type. The model runs locally or connects to your preferred API.
改写同时命中了本清单的三条规则:删除浮夸词(对应 Hype Words 表)、用具体交互流程替换模糊收益(对应 Vague Benefits 表)、补上了技术选项(本地模型 vs API)。这也说明清单各层规则在真实改写中是叠加触发的,而非孤立检查项。
第五层:标点禁令(Forbidden Punctuation)
标点层面的五条硬性规则:
| 模式 | 规则 |
|---|---|
! |
永远不用。零个感叹号 |
... |
禁止戏剧化省略号 |
| ALL CAPS | 禁止用全大写表示强调 |
? 作为钩子 |
禁止用修辞性问句开场 |
— 滥用 |
每段最多一个破折号 |
这里破折号规则值得单独强调:“Max one em dash per paragraph” 是一个可机器检查的数值上限。配合后文 Quick Reference 的自动失败条件 “Em dash used 2+ times in one paragraph”,构成了一对首尾呼应的量化判据:写作时按 1 个上限控制,检测时超过 2 个直接判不通过。感叹号规则同理,Quick Reference 把 “Any exclamation point” 列为自动失败项。
第六层:企业黑话(Corporate Euphemisms)
14 个企业黑话及其替换策略,比 Hype Words 更强调“换成什么”:
| 短语 | 问题 |
|---|---|
| move the needle | 黑话 |
| synergy | 梗级别的企业词 |
| ecosystem | 通常毫无意义 |
| paradigm shift | 过时的buzzword |
| holistic approach | 模糊 |
| scalable solution | 什么在扩展?如何扩展? |
| actionable insights | 企业腔 |
| value proposition | 面向客户的文案中永不出现 |
| leverage(作动词) | 改用 "use" |
| utilize | 改用 "use" |
| facilitate | 用更清晰的动词 |
| empower | 居高临下 |
| enable | 常常模糊;要具体 |
注意 “leverage” 同时出现在 Hype Words 表(标为 Corporate jargon)和本表(给出替换词 "use"),两处标注互相补全。这种“双表交叉”不是冗余:前者负责识别(写作时禁用),后者负责替换(知道改成什么)。对移植这份清单的读者来说,这是最值得保留的表格设计。
第七层:填充短语(Filler Phrases)
与黑话不同,这 10 个填充短语的处置方式是 “Delete without replacement”(直接删除,不需要替代内容):
- "In today's fast-paced world..."
- "As developers, we know..."
- "Let's face it..."
- "The truth is..."
- "At the end of the day..."
- "When it comes to..."
- "In order to..."
- "It goes without saying..."
- "Needless to say..."
- "As you may know..."
这些短语的共同点是零信息量:删掉之后句子不损失任何内容,只是更短。这一规则与 humanizer 技能 的第 22 条模式 “Filler Phrases” 互补:humanizer 给出的对照表是替换式("In order to achieve this" → "To achieve this"、"Due to the fact that" → "Because"),而本清单更激进,直接要求整段删除。两者放在一起看,可以理解为同一问题在不同严格度下的处理:humanizer 面向通用去 AI 味,brand-writer 面向 Zed 品牌文案的更严标准。
检测清单:定稿前的五类扫描
文档的 “Detection Checklist” 要求在最终定稿前扫描五类词,每类给出具体词条:
- 最高级(Superlatives):best、most、fastest、only、first、ultimate
- 绝对化(Absolutes):always、never、every、all、completely、totally
- 模糊化(Hedging):might、could、potentially、possibly、may help
- 强化副词(Intensifiers):very、really、extremely、incredibly、absolutely
- 模糊量词(Vague quantifiers):many、numerous、significant、substantial
最后一条总规则是整份文档的核心判据:"If you can't prove it or measure it, rewrite it."(如果你无法证明或无法测量它,就重写它。)这句话把所有分类统一到一个可执行的标准下:可验证性。
需要指出的是,第 3 类 Hedging(模糊化)与前六层存在表面张力:前面要求删掉情绪和模糊收益,而这里又把 might、could 列为需扫描项。从上下文看,这里的含义是“过度对冲”:一段文案如果处处用 “might”“possibly” 包裹声明,既无法验证(因为没有做出任何具体声明),又暴露了作者对内容没把握。这与 humanizer SKILL.md 第 23 条 “Excessive Hedging” 的示例一致:把 “It could potentially possibly be argued that the policy might have some effect” 压缩为 “The policy may affect outcomes.”,即保留单一、明确的限定,删除堆叠的限定。
快速参考:红旗分级
文档结尾的 “Quick Reference” 把前面所有规则压缩成两级检测,这是整份清单中最适合直接抄进 CI 检查或提示词的部分:
自动失败项(出现即不通过,Instant red flags)
- 任何一个感叹号
- "We're excited / thrilled"
- "Revolutionary" 或 "game-changing"
- 一段内破折号使用 2 次以上
- "It's not X, it's Y" 句式
人工复核项(Yellow flags,出现需仔细审查)
- Hype Words 列表中的任何词
- 以 "And" 或 "But" 开头的句子
- 标题中的问句
- 恰好三个条目的列表
这个分级设计很实用:自动失败项都是可机器精确匹配的(感叹号计数、短语匹配、破折号计数、句式模板),适合写成正则或脚本;黄色项则需要语义判断(比如“以 And 开头的句子”多数是好的节奏变化,但在此语境下是 AI 腔的信号,需要结合上下文)。SKILL.md 的 Review Mode(/brand-writer --review "paste copy")正是按这个分级输出诊断的:逐行列出禁忌短语(如 Line 2: "revolutionary" (hype word)、Line 5: "—" used 3 times (em dash overuse)),给出 8 项评分表,最后输出 Verdict(是否通过)。
完整工作流:清单如何嵌入 brand-writer 技能
把 SKILL.md 的五个阶段与三份参考文件对照,可以还原这份禁忌清单的完整使用路径:
- Phase 1 Understand the Ask:先问清用途(主页/发布说明/文档/社交)、受众、核心信息、格式约束。
- Phase 2 Gather Context:自动加载 rubric.md、taboo-phrases.md、voice-examples.md 三个参考文件,按需从文档或代码中查找功能的技术细节。
- Phase 3 Draft(两遍式):Pass 1 写初稿并用
[FACT]标记所有事实声明(技术规格、专有名词、版本号、快捷键、URL、引用);Pass 2 按 8 项标准打分并扫描禁忌短语、逐行标注;Pass 3 对低于 4 分的标准或任一禁忌短语所在段落重写,且必须验证[FACT]标记全部存活,循环直到全部达标。 - Phase 4 Humanizer Pass:对高价值内容追加运行
/humanizer,按 24 种 AI 写作模式再扫一遍(其中第 13 条 Em Dash Overuse、第 10 条 Rule of Three Overuse、第 22 条 Filler Phrases 与本清单的条目直接重叠),回答 “What makes this obviously AI generated?” 后再修订一次。 - Phase 5 Validation:输出终稿加记分卡(8 项标准 × 5 分,满分 40,通过线为每项 4 分即总分 32),并附 “Facts Verified” 清单,逐条确认
[FACT]保留。
voice-examples.md 的 “Fact Preservation Rules” 为 Pass 3 的重写划定了不可越过的边界:技术规格("120fps"、"8ms latency"、"Rust")、专有名词、版本号、键盘快捷键、URL、署名、日期、引语这八类内容在任何改写中不得变动。验证步骤是对照原始 [FACT] 标记逐条 diff:事实被删除要给出理由,事实被改动则直接判错。这条规则解释了为什么“删掉 AI 腔”不会变成“删掉信息”:语气可以全部重写,事实必须原样存活。
不同场景还有对应的输出格式约定(来自 SKILL.md 的输出格式表):
| 场景 | 格式 |
|---|---|
| 主页 | H1 + H2 + 一段支撑性文字 |
| 产品页 | 带解释性文案的小节标题 |
| 发布说明 | 改变了什么、如何工作、为何重要 |
| 文档引言 | 清楚说明这是什么、何时使用 |
| 社交 | 简洁、无话题标签、附进一步了解链接 |
这套清单的可移植价值
taboo-phrases.md 虽然是为 Zed 的品牌文案写的,但它的结构本身就是一种可复制的工程资产。从仓库内容可以提炼出三层设计:
- 识别层:名词清单(Hype Words、Filler Phrases)加句式模板(五种 AI 结构),全部给出“为什么失败”的一行理由,而不只是罗列词条。
- 判定层:可机器化的阈值(感叹号为 0、破折号每段 ≤1、自动失败项列表)加可追问的诊断问句(Vague Benefits 表的右列),把“感觉像 AI”这种模糊判断拆成了可勾选的条目。
- 流程层:负面清单(taboo)负责否决,正向标准(rubric 的 8 项 × 5 分)负责质量,改写范例(voice-examples 的 10 组前后对照加事实保留规则)负责提供改法。三者缺一不可:只有黑名单会产出“干净但空洞”的文字,这正是 humanizer SKILL.md 提醒的 “Sterile, voiceless writing is just as obvious as slop”。
如果你要在自己的项目中落地类似的规范,仓库中可以直接引用的起点是这三个文件:.factory/skills/brand-writer/taboo-phrases.md(负面清单本体)、.factory/skills/brand-writer/rubric.md(评分标准与决策规则:全部 4 分通过、任一项 3 分重写、任一项 2 分以下整体重构)、.factory/skills/brand-writer/voice-examples.md(改写校准样例与事实保留规则)。技能在 Zed agent 中的加载、目录格式与安全边界,则见 crates/agent_skills/README.md 的说明。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0624
Hy4-previewHy4 preview 是由腾讯混元团队研发的新一代混合专家(MoE)旗舰模型。模型总参数量 770B,每个 token 激活 49B,主干共包含78层,第一层采用标准 FFN,其余 77 层均为 MoE 结构,每层包含 256 个路由专家与 1 个共享专家,每个 token 激活 top-8 路由专家及共享专家。主干之外原生内置 1 层 MTP(总参数量 10B,激活 0.7B)以支持投机解码。Python00
GLM-5.3GLM-5.3 与 GLM-5.2 使用相同的基座模型——所有提升均来自后训练。与 GLM-5.2 相比,它在复杂编程和长程任务上的表现显著提升。Jinja00
GLM-5.3-FlashGLM-5.3-Flash (320B-A18B),是GLM-5系列的首个原生多模态模型。320B总参数,能力超过GLM-5.2Jinja00
Spark-X2.5-4BSpark-X2.5-4B 旨在让强大的 AI 更实用、更高效、更易获得。在广泛日常任务中表现强劲,涵盖对话、写作、翻译、推理、编码、工具调用以及智能体工作流,并在同等规模的开源模型中取得领先成绩。Spark-X2.5 将面向效率的架构与最高 1M tokens 的原生上下文窗口相结合,并支持 200 多种语言。Python00
Spark-X2.5-1.7BSpark-X2.5-1.7B 旨在让强大的 AI 更加实用、高效且易于获取。这些模型在广泛的日常任务中表现出色,涵盖对话、写作、翻译、推理、编程、工具调用和智能体工作流,并在同等规模的开源模型中取得领先结果。Spark-X2.5 将面向效率的架构与最高 1M tokens 的原生上下文窗口相结合,并支持 200 多种语言。Python00