awesome-humanize-en
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseHumanize English text
英文文本人性化处理
A skill for editing English text that carries traces of AI generation. The goal is to make the text read naturally without distorting its meaning. It draws on the Wikipedia AI Cleanup project and its "Signs of AI writing" guidance.
这是一款用于编辑带有AI生成痕迹的英文文本的Skill,目标是在不歪曲原意的前提下让文本读起来更自然。该Skill参考了维基百科AI清理项目(Wikipedia AI Cleanup project)及其“AI写作迹象”指南。
When to use
适用场景
- English text reads as mechanical, flat, or templated.
- You need to check text generated by another model.
- The user asks to "humanize", "rewrite", or "remove the AI traces".
- Text is being prepared for publication (article, post, email, document).
- The text contains unambiguous copy-paste chatbot markers: ,
:contentReference[oaicite:N],?utm_source=chatgpt.com, and similar.grok_card://
- 英文文本读起来生硬、平淡或模板化。
- 你需要检查由其他模型生成的文本。
- 用户要求“人性化处理”、“重写”或“去除AI痕迹”。
- 文本正准备发布(文章、帖子、邮件、文档)。
- 文本中包含明确的复制粘贴聊天机器人标记:、
:contentReference[oaicite:N]、?utm_source=chatgpt.com等类似内容。grok_card://
When not to use
不适用场景
- Text that is not in English. Decline and ask for English.
- Source code, configuration files, technical logs. This skill is for connected prose only.
- Legal documents, statutes, contracts — there officialese is mandatory by genre.
- Literary prose, poetry, literary essays — there the em-dash, the rule of three, and complex syntax may be an authorial device, not a machine tell. See .
references/false-positives.md
- 非英文文本。请拒绝处理并要求提供英文文本。
- 源代码、配置文件、技术日志。本Skill仅适用于连贯的散文体文本。
- 法律文件、法令、合同——这类体裁必须使用公文体。
- 文学散文、诗歌、文学随笔——在这类文本中,em破折号、三法则(rule of three)和复杂句法可能是作者的创作手法,而非机器生成的迹象。参见。
references/false-positives.md
Decision tree
决策树
Received text
↓
Is it English? — no → decline
↓ yes
Genre? — code / config → decline
— contract / statute → apply only #16-21 (style/markup); do NOT touch #8 officialese
— fiction / poetry → do NOT apply #13 rule of three, #16 em-dash; see false-positives.md
— academic / scientific → do NOT count passive voice, hedges, logical connectives; see false-positives.md §11
— opinion / column / essay → rule of three and parallelism may be craft; count #13 only alongside other tells
— marketing / blog → full set
↓
Run the regexes from chatbot-artifacts.md
↓
Any unambiguous marker found? — yes → delete it, check the rest of the text; almost certainly AI
↓ no
Count the soft tells by category (content, language, structural, communicative)
↓
Longer than a few paragraphs? — yes → run the discourse pass (structure-pass.md), detection only
↓
0–2 tells → text is probably human, do not edit
3–5 tells → selectively fix the critical ones (🔴), leave the rest
6+ tells → rewrite wholesale while preserving the facts
↓
Any discourse finding (#26–31) → fix those first; the sentence-level work runs on the new shape
↓
If there are source citations → run source-fabrication.md
↓
Final pass against the checklist (see below)Received text
↓
Is it English? — no → decline
↓ yes
Genre? — code / config → decline
— contract / statute → apply only #16-21 (style/markup); do NOT touch #8 officialese
— fiction / poetry → do NOT apply #13 rule of three, #16 em-dash; see false-positives.md
— academic / scientific → do NOT count passive voice, hedges, logical connectives; see false-positives.md §11
— opinion / column / essay → rule of three and parallelism may be craft; count #13 only alongside other tells
— marketing / blog → full set
↓
Run the regexes from chatbot-artifacts.md
↓
Any unambiguous marker found? — yes → delete it, check the rest of the text; almost certainly AI
↓ no
Count the soft tells by category (content, language, structural, communicative)
↓
Longer than a few paragraphs? — yes → run the discourse pass (structure-pass.md), detection only
↓
0–2 tells → text is probably human, do not edit
3–5 tells → selectively fix the critical ones (🔴), leave the rest
6+ tells → rewrite wholesale while preserving the facts
↓
Any discourse finding (#26–31) → fix those first; the sentence-level work runs on the new shape
↓
If there are source citations → run source-fabrication.md
↓
Final pass against the checklist (see below)Marker severity scale
标记严重程度分级
- 🔴 Instant marker — gives away AI almost certainly, must be removed.
- 🟡 Strong signal — unnatural for a human, common in AI output.
- 🟢 Weak signal — a statistical tell that also occurs in human writing; works only in combination.
- 🔴 即时标记 —— 几乎可以百分百确定是AI生成的,必须移除。
- 🟡 强信号 —— 不符合人类写作习惯,在AI输出中很常见。
- 🟢 弱信号 —— 一种统计层面的迹象,在人类写作中也会出现;仅在与其他迹象结合时有效。
Vocabulary tiers — density gating for word-level tells
词汇层级 —— 词汇级迹象的密度阈值
Vocabulary tells (pattern #10) are gated by density, not flagged one-by-one:
- Tier 1 — flag on sight: delve, tapestry, seamless, robust, testament, boasts, "leverage" as a verb.
- Tier 2 — flag only when 2+ co-occur in one paragraph: harness, foster, elevate, streamline, crucial, pivotal.
- Tier 3 — flag only at high density (≈3%+ of running words): significant, innovative, effective, comprehensive.
Each entry covers its morphological variants (-ly, -ing, plural, comparative, conjugations) unless a variant has a distinct honest sense ("load-bearing wall" is a literal noun, not the metaphor). A single Tier-2/3 word in otherwise living text is not a tell.
词汇类迹象(模式#10)按密度判定,而非逐个标记:
- 一级 —— 见即标记:delve、tapestry、seamless、robust、testament、boasts、作动词用的“leverage”。
- 二级 —— 仅在同一段落中出现2个及以上时标记:harness、foster、elevate、streamline、crucial、pivotal。
- 三级 —— 仅在高密度(≈占正文词汇的3%以上)时标记:significant、innovative、effective、comprehensive。
每个词条都包含其形态变化形式(-ly副词、-ing形式、复数、比较级、动词变位),除非某一变体有明确的非隐喻含义(比如“load-bearing wall”是字面意义的名词,不是隐喻用法)。在自然的人类文本中,单独出现一个二级/三级词汇不算迹象。
Masked contrast patterns
隐蔽对比模式
The "it's not X, it's Y" tell (pattern #12 family) hides in split and trailing forms that plain regexes miss:
- Split sentences: "X is a symptom. Y is the cause." / "The headline isn't the speed. The real story is Y."
- Answer-reveal form: "The answer isn't X. It's Y." / "It feels like X. It's actually Y." / "stops being X and starts being Y."
- Reverse/appended order in one sentence: "It's Y, and not X." / "good for X, not for Y."
- Trailing negation fragments: "…, no guessing.", "…, no fluff."
- Multi-negation countdowns: "No X. No Y. Just Z."
Count these as #12 variants. Repair: state the positive directly; if the distinction genuinely matters, name both sides as parallel positive clauses. False-positive carve-out: necessary/sufficient-condition statements in logic, math, and formal proofs ("X holds if and only if not Y") are exempt. Also check rhythm: five consecutive sentences of similar length is a structural tell (#15f family).
“不是X,而是Y”这类迹象(模式#12系列)会以拆分形式和后置形式隐藏,普通正则表达式无法识别:
- 拆分句:“X is a symptom. Y is the cause.” / “The headline isn't the speed. The real story is Y.”
- 答案揭示式:“The answer isn't X. It's Y.” / “It feels like X. It's actually Y.” / “stops being X and starts being Y.”
- 单句中的反向/追加顺序:“It's Y, and not X.” / “good for X, not for Y.”
- 后置否定片段:“…, no guessing.”、“…, no fluff.”
- 多重否定排比:“No X. No Y. Just Z.”
这些都算作#12的变体。修复方法:直接陈述肯定内容;如果该区分确实重要,则将两边都表述为并列的肯定从句。误判豁免: 逻辑、数学和形式证明中的必要/充分条件陈述(如“X holds if and only if not Y”)不受此限。同时还要检查节奏:连续五个句子长度相近是结构类迹象(#15f系列)。
Additional communicative tells
其他沟通类迹象
- Fake-candor openers — "Honestly?", "Let's be honest", "Here's the thing:", "The uncomfortable truth is" as a theatrical pause-and-reveal. Flag at document level only when 2+ occur; a mid-sentence "honestly" is normal speech.
- False agency / narrator-from-a-distance — "the data tells us", "the decision emerges", "nobody designed this". Ordinary metonymy ("the paper argues") is fine.
- Content-free verdict sentences — freestanding evaluations that could close any text: "This is a noteworthy finding.", "The implications are significant."
- Asserted causation without evidence (post-hoc) — "launched in Q3, so adoption increased." Repair by adding the proof or downgrading to correlation; never patch it with a hedge.
- Summary-stamp openers (as a move, not a fixed phrase) — any label announcing a summary before delivering it: "In conclusion", "Here's the TL;DR:", "In short:", "一句话总结:". Ban the move, which catches novel variants a phrase-list misses.
- Redundant plain-language restatement — explaining a point, then re-explaining it "simply": "In other words…", "Put simply…", "简单来说…" blocks that add no new information.
- Conditional next-step menu — staged offers where the user must say a magic phrase to unlock the next action: "If you want, I can also…", "If you tell me X, I'll Y." Distinct from leftover chat turns (#22).
- Emphasis crutches — "Full stop.", "Let that sink in.", "Read that again."
- Circular/tautological definitions ("the system enables users to use the functionality") and noun stacking ("production-ready deployment system infrastructure") — 🟢 weak tells.
- Diff-anchored prose — text narrating its last revision ("has been updated to", "now uses", "previously") instead of the current state; fine in changelogs and migration guides.
- Reasoning-chain leakage — "Let me think", "Step 1:", "Breaking this down" in connected prose (extends #22); Cyrillic/Greek letter homoglyphs inside Latin words (extends the A.10 marker class).
- 假坦率开头 —— 用作戏剧化停顿后揭示内容的“Honestly?”、“Let's be honest”、“Here's the thing:”、“The uncomfortable truth is”。仅在全文出现2次及以上时标记;句中出现的“honestly”属于正常表达。
- 虚假施动/旁观者叙事 —— “the data tells us”、“the decision emerges”、“nobody designed this”。普通的转喻(如“the paper argues”)是正常的。
- 无内容判定句 —— 可以用来收尾任何文本的独立评价:“This is a noteworthy finding.”、“The implications are significant.”
- 无证据断言因果(事后归因) —— 比如“launched in Q3, so adoption increased.”。修复方法:补充证据,或将其降级为相关性表述;绝不要用模糊限定词来敷衍。
- 总结式开头(作为一种行文手法,而非固定短语) —— 任何在给出总结前先宣告的标签:“In conclusion”、“Here's the TL;DR:”、“In short:”、“一句话总结:”。要禁止这种手法,这样才能捕捉到短语列表遗漏的新型变体。
- 冗余的大白话重述 —— 解释一个观点后,又“简单地”再解释一遍:比如“In other words…”、“Put simply…”、“简单来说…”这类没有新增信息的段落。
- 条件式下一步菜单 —— 分阶段提供服务,用户必须说特定的“魔法短语”才能解锁下一步操作:比如“If you want, I can also…”、“If you tell me X, I'll Y.”。注意和残留的对话轮次(#22)区分开。
- 强调拐杖 —— “Full stop.”、“Let that sink in.”、“Read that again.”
- 循环/同义反复定义(比如“the system enables users to use the functionality”)和名词堆叠(比如“production-ready deployment system infrastructure”)—— 🟢 弱信号。
- 基于版本差异的叙述 —— 文本叙述的是上一次修订的内容(比如“has been updated to”、“now uses”、“previously”),而非当前状态;在更新日志和迁移指南中是正常的。
- 推理链泄露 —— 在连贯散文体文本中出现“Let me think”、“Step 1:”、“Breaking this down”(属于#22的延伸);拉丁单词中混入西里尔/希腊字母同形字符(属于A.10标记类的延伸)。
Edit order: structure, then rhythm, then vocabulary
编辑顺序:先结构,再节奏,最后词汇
Fix the discourse layer first, sentence rhythm second, word choice last. Each earlier layer changes what the later ones have to work on, and the order is not interchangeable: paraphrasing a text whose skeleton is machine-shaped leaves the structural cues intact and the vocabulary cues more prominent to expert readers. carries the discourse patterns (#26–31), the two-stage protocol they require, and the over-correction advisory; it applies to anything longer than a few paragraphs.
references/structure-pass.mdRestructure sentence rhythm second, then fix word choice — rhythm carries most of the remaining achievable improvement, and deleting an intensifier without restructuring makes the shortened sentence fit AI cadence even better.
- Rhythm targets per suspicious paragraph: at least one short (5–8 words) and one long (20+ words) sentence. Machine-uniform spread (coefficient of variation of sentence lengths below ~0.30) reads as AI; repair toward ≥0.35 — and re-count after rewriting, surface word swaps don't fix rhythm.
- Removing transition crutches must not produce choppy asyndeton — a run of short, connector-less sentences is itself a tell of automated cleanup. Repair menu: substitute a natural connective, echo a key noun from the previous sentence, or merge the sentences. Decision test per connective: does it inflate meaning (delete) or make logic explicit (keep)?
- Hedge calibration is bidirectional: stacked hedges collapse to one, but an over-assertive causal claim built on observational evidence gets a cushion added.
首先修复语篇层,其次是句子节奏,最后是词汇选择。每一个前面的层级都会改变后面层级的处理基础,顺序不能互换:如果文本的整体框架是机器生成的,只做释义改写会保留结构层面的线索,而词汇层面的线索在专业读者眼中会更加突出。 包含语篇模式(#26–31)、所需的两阶段协议以及过度修正提醒;适用于任何长度超过几个段落的文本。
references/structure-pass.md其次调整句子节奏,最后再修改词汇选择——节奏是剩余可优化空间的主要来源,如果不调整结构只是删除一个强调词,反而会让缩短后的句子更符合AI的行文节奏。
- 每个可疑段落的节奏目标:至少有一个短句(5–8个单词)和一个长句(20个以上单词)。机器生成的文本句子长度分布均匀(句子长度变异系数低于约0.30),读起来像AI写的;应修复到≥0.35——并且重写后要重新计数,表面的单词替换无法修复节奏问题。
- 移除过渡拐杖时不能导致语句脱节、连词缺失——一连串没有连接词的短句本身就是自动清理的迹象。修复方案:替换为自然的连接词、呼应前一句的核心名词,或合并句子。每个连接词的判定标准:它是在夸大含义(删除)还是在明确逻辑(保留)?
- 模糊限定词的校准是双向的:堆叠的限定词要合并为一个,但基于观察证据的过于武断的因果断言要增加缓冲表述。
Anchor verification (meaning preservation)
锚点验证(原意保留)
For standard/deep/voice-match edits on texts longer than a couple of sentences:
- Before editing, extract up to 3 semantic anchors per paragraph — Claim, Polarity, Causation, Quantifier, Negation. Internal working notes; never shown to the user.
- After editing, verify each anchor. Soft failures — specific→vague ("revenue up 30%" → "up significantly"), precision loss ("p<0.05" → "statistically significant"), causation→correlation, assertion→hedge — get exactly one retry, applied to the original sentence with the anchor as an explicit constraint. Hard failures — anchor deleted or polarity flipped — restore that span from the original.
- Re-scan your own rewrite as if it were fresh input; in-session self-scoring inflates — treat it as a signal, not a verdict. If more than ~50% of tokens changed in a standard edit, that is over-editing: reconsider before delivering.
对于长度超过几句话的文本的标准/深度/语气匹配编辑:
- 编辑前,每段最多提取3个语义锚点——主张(Claim)、极性(Polarity)、因果关系(Causation)、量词(Quantifier)、否定(Negation)。这些是内部工作笔记,绝不要展示给用户。
- 编辑后,验证每个锚点。软失败——从具体变模糊(比如“revenue up 30%” → “up significantly”)、精度丢失(比如“p<0.05” → “statistically significant”)、因果变相关、断言变模糊——仅可重试一次,以锚点为明确约束对原句子进行修改。硬失败——锚点被删除或极性反转——从原文中恢复该部分内容。
- 把你自己的重写文本当作新输入重新扫描;同一会话内的自我评分会偏高——把它当作一个信号,而非最终结论。如果在标准编辑中修改了超过约50%的token,那就是过度编辑:交付前请重新考虑。
Working rules
工作规则
- Document brief first — before rewriting, fix in one line: document type, audience, dominant register, the text's objective (persuade / explain / inform), and the core domain terms to reuse verbatim. Paragraph-by-paragraph rewriting without a brief drifts back toward model voice. After rewriting, check the result still serves that objective and the tone fits it.
- Mixed Markdown — mask fenced code blocks and blockquotes before counting tells (a quoted AI sample must not count against the author); restore them byte-identical. Keep ATX headings byte-identical too unless the user explicitly asks to rewrite headings — renamed headings break anchor links.
- Minimum sample — under ~40 words, do not issue a verdict or score; say the sample is too short to judge.
- Output typography — this is an output rule, not a detection rule (detection still treats curly quotes and em-dashes as the weak, autocorrect-caveated tells #18/#16 — never hard-flag them). When you produce rewritten text, default to straight quotes (
') and a hyphen or a comma-set clause instead of a gratuitous em-dash ("), and spell the relation out in words (or use ASCII—in technical text) instead of an arrow glyph (->,→) used as a prose connective, because flawless typography an agent hand-sets is itself a plain-text tell. Carve-outs — keep the original typography: the text is a published/formatted article or literary prose where em-dashes and curly quotes are deliberate craft; the arrow is real notation (a diagram, a state machine, a math or chemistry expression, quoted tool output, a UI path like⇒); the glyph sits inside a quotation, a proper name, or code; or the user asks to preserve typography. Never convert to guillemets or any national style, and never touch quotes/dashes inside code or fenced blocks.File → Save
- 先明确文档概要 —— 重写前,用一行确定:文档类型、目标读者、主导语域、文本目标(说服/解释/告知),以及需要逐字复用的核心领域术语。没有概要的逐段重写会倒退回模型的行文风格。重写后,检查结果是否仍然符合该目标,语气是否匹配。
- 混合Markdown处理 —— 统计迹象前,先屏蔽围栏代码块和块引用(引用的AI样本不能算在作者头上);之后原样恢复。ATX标题也要原样保留,除非用户明确要求重写标题——修改标题会破坏锚点链接。
- 最小样本要求 —— 少于约40个单词的文本,不要给出判定或评分;说明样本太短无法判断。
- 输出排版 —— 这是输出规则,而非检测规则(检测时仍将弯引号和em破折号视为弱信号#18/#16,且需考虑自动更正的情况——绝不要将其标记为强信号)。当你生成重写文本时,默认使用直引号(
'),用连字符或逗号分隔的从句代替不必要的em破折号(");对于用作散文连接词的箭头字形(—、→),用文字表述关系(或在技术文本中使用ASCII⇒),因为由Agent手动设置的完美排版本身就是纯文本中的AI迹象。豁免情况——保留原排版: 文本是已发布/已格式化的文章或文学散文,其中em破折号和弯引号是刻意的创作手法;箭头是真实的符号(图表、状态机、数学或化学表达式、引用的工具输出、UI路径如->);字形位于引用、专有名词或代码中;或者用户要求保留排版。绝不要转换为角引号或任何国家/地区的风格,也绝不要修改代码或围栏块中的引号/破折号。File → Save
Intensity levels
强度等级
Default is a standard edit. On request:
- light — remove only 🔴 instant markers and copy-paste artifacts; wording untouched.
- standard (default) — fix 🔴 and 🟡, preserve structure and voice.
- deep — rewrite wholesale while preserving every fact.
- voice-match — before rewriting, extract from a user-provided sample: register, sentence-length variance, contraction rate, punctuation habits, favorite moves, and what the author never does; apply in that order.
At every level: humanizing subtracts noise — never add fake warmth, anecdotes, typos, or personality that wasn't there. Style is how it sounds; stance is how much it agrees. Move only style — a request to humanize is not a request to agree, so preserve the text's disagreement, uncertainty, hedges of genuine doubt, and refusals at every intensity. Adding warmth adds sycophancy, the loudest tell.
默认为标准编辑。可根据要求调整:
- 轻度 —— 仅移除🔴 即时标记和复制粘贴产物;措辞保持不变。
- 标准(默认)—— 修复🔴和🟡级问题,保留结构和语气。
- 深度 —— 全面重写,同时保留所有事实。
- 语气匹配 —— 重写前,从用户提供的样本中提取:语域、句子长度变异、缩写使用率、标点习惯、常用手法,以及作者从不使用的表达;按该顺序应用。
所有等级都遵循:人性化是去除噪音——绝不要添加虚假的温度、轶事、拼写错误或原本没有的个性。风格是听起来的感觉;立场是认同的程度。 只调整风格——人性化的请求不是要求你认同文本内容,因此在所有强度等级下都要保留文本中的不同意见、不确定性、真实怀疑的模糊表述,以及拒绝的态度。添加温度会增加谄媚感,而谄媚是最明显的AI迹象。
Clarity carve-out and fact preservation
清晰度豁免与事实保留
- Security warnings, destructive-operation instructions, legal/compliance text, and dosage/medical/financial text are exempt from style editing: drop the humanized style, keep the wording literal and exact, resume after the passage. Fix only unambiguous artifacts there.
- If an edit would rephrase a number, date, name, or citation you cannot verify, keep the original wording or mark it — hedging is the worst option: either verify and keep it exact, or flag it explicitly. Never smooth a fact into fluency.
[VERIFY: …] - A claim that needs a source: either it has one (keep it), or flag it — a vague disclaimer wrapped around it is not a fix.
UNVERIFIED:
- 安全警告、破坏性操作说明、法律/合规文本,以及剂量/医疗/金融文本不受风格编辑限制:放弃人性化风格,保持措辞字面准确,在该段落后恢复正常处理。仅修复其中明确的人工产物。
- 如果编辑需要改写你无法验证的数字、日期、名称或引用,保留原文措辞或标记为——模糊处理是最差的选择:要么验证并保持准确,要么明确标记。绝不要为了流畅而模糊事实。
[VERIFY: …] - 需要来源的主张:要么有来源(保留),要么标记为——用模糊的免责声明包裹它不是解决办法。
UNVERIFIED:
File architecture
文件架构
This file is a map. The detailed description of patterns and checks lives in the loadable files under .
references/| File | What's inside | When to load |
|---|---|---|
| Content patterns #1–9 + #6a: averaging, inflated significance, vague attributions, formulaic "challenges and prospects", officialese, text about the text | Always when analyzing content |
| Language patterns #10–15 + extensions #15a–15f: dangling modifiers, hedging cascade, transition crutches, conclusion filler, abrupt style shift, formulaic collocations, lack of idiom | Always when analyzing connected prose |
| Structural and style patterns #16–21 + extension #21a: em-dash, arrow glyph, bold, emoji bullets, quotation marks, tables, Markdown residue, heading hierarchy, boilerplate section headings | When working with formatted text, or for direct publication |
| Discourse patterns #26–31: summary-shaped skeleton (the outline test), templated question sequence, position uniformity, symmetric coverage without a stance, fractal summarization, the reflection tail — plus the two-stage protocol, the edit budget, and the over-correction advisory | Any text longer than a few paragraphs, before the sentence-level work |
| Communicative patterns #22–25 + extensions #23a, #24a, #25a: leftover chat turns, knowledge-limit disclaimers, sycophantic tone, pseudo-therapeutic register, generic positive conclusions, mid-sentence cutoff | When analyzing text copied out of a chat |
| Unambiguous markers with regular expressions: | When copy-paste from a chat is suspected |
| Citation checks: 404, DOI resolves to a different article, non-existent ISBN, author died before publication, book citation with no page, stale access date | Always when source citations are present |
| What is NOT an AI tell: em-dash in fiction, curly quotes from macOS autocorrect, rule of three in rhetoric and journalism, officialese in legal text, academic and scientific register, ineffective indicators, human syntax, different error types in humans vs models, Title Case in headings | Before ruling on machine origin |
| Model fingerprints by vendor: OpenAI GPT-5.5, Anthropic Claude Fable 5 / Sonnet 5 / Opus 4.8, Google Gemini 3.5 (+ Deep Research), xAI Grok 4.3, DeepSeek V4, Qwen 3.7, Meta Muse Spark, Mistral Large 3 / Magistral, Perplexity, Amazon Nova, Cohere Command A+ | When working with fresh 2025–2026 text |
| Reference "sample / expectation" pairs for every regex + full before/after edits | When updating the skill, for regression protection |
| Automated run of every regex across three sample levels; runs in CI and before release. The | When updating markers: |
The interpreter's name is platform-dependent: on Linux and macOS, or on Windows, where a bare often resolves to nothing or to a store stub. Check which one answers (, then ) and use that, rather than assuming either. The script itself is standard-library-only and runs the same under all of them.
python3py -3pythonpython3python3 --versionpy -3 --version本文件是一个索引。模式和检查的详细说明存放在目录下的可加载文件中。
references/| 文件 | 内容 | 加载时机 |
|---|---|---|
| 内容模式#1–9 + #6a:平均化、夸大重要性、模糊归因、公式化的“挑战与前景”、公文体、关于文本本身的文本 | 分析内容时始终加载 |
| 语言模式#10–15 + 扩展#15a–15f:悬垂修饰语、级联模糊限定、过渡拐杖、结论填充、风格突变、公式化搭配、缺乏习语 | 分析连贯散文体文本时始终加载 |
| 结构与风格模式#16–21 + 扩展#21a:em破折号、箭头字形、粗体、emoji项目符号、引号、表格、Markdown残留、标题层级、样板化章节标题 | 处理格式化文本或直接发布时加载 |
| 语篇模式#26–31:总结式框架(大纲测试)、模板化问题序列、立场统一、无立场的对称覆盖、分形总结、反思尾巴——以及两阶段协议、编辑预算和过度修正提醒 | 任何长度超过几个段落的文本,在句子级处理之前加载 |
| 沟通模式#22–25 + 扩展#23a、#24a、#25a:残留对话轮次、知识限制免责声明、谄媚语气、伪治疗语域、通用积极结论、句中截断 | 分析从聊天中复制的文本时加载 |
| 带正则表达式的明确标记: | 怀疑文本是从聊天中复制粘贴时加载 |
| 引用检查:404、DOI解析到其他文章、不存在的ISBN、作者在出版前去世、无页码的书籍引用、过期访问日期 | 存在来源引用时始终加载 |
| 不属于AI迹象的情况:小说中的em破折号、macOS自动更正生成的弯引号、修辞和新闻写作中的三法则(rule of three)、法律文本中的公文体、学术和科学语域、无效指标、人类句法、人类与模型的不同错误类型、标题中的首字母大写(Title Case) | 判定机器生成来源之前加载 |
| 各厂商模型指纹:OpenAI GPT-5.5、Anthropic Claude Fable 5 / Sonnet 5 / Opus 4.8、Google Gemini 3.5(含Deep Research)、xAI Grok 4.3、DeepSeek V4、Qwen 3.7、Meta Muse Spark、Mistral Large 3 / Magistral、Perplexity、Amazon Nova、Cohere Command A+ | 处理2025–2026年的新文本时加载 |
| 每个正则表达式的参考“样本/预期”对 + 完整的编辑前后对比 | 更新Skill时用于回归测试保护 |
| 自动在三个样本级别上运行所有正则表达式;在CI中以及发布前运行。 | 更新标记时使用: |
解释器的名称取决于平台:Linux和macOS上是,Windows上是或——在Windows上直接输入通常找不到程序,或者只会打开应用商店占位程序。请检查哪个命令可用(先运行,再运行),然后使用可用的那个,而不是假设其中一个可用。该脚本仅使用标准库,在所有解释器上运行效果相同。
python3py -3pythonpython3python3 --versionpy -3 --versionThe main rule
核心规则
No single soft tell is sufficient grounds for the verdict "this text was written by AI". Only these are sufficient:
- One unambiguous marker from .
references/chatbot-artifacts.md - A confirmed source fabrication from .
references/source-fabrication.md - A combination of three or more soft tells from different categories.
Better to miss machine text than to ruin a person's living text.
任何单一的软信号都不足以作为判定“本文本由AI撰写”的依据。 只有以下情况才足以判定:
- 一个来自的明确标记。
references/chatbot-artifacts.md - 来自的已确认来源编造。
references/source-fabrication.md - 三个或更多来自不同类别的软信号组合。
宁可漏掉机器生成的文本,也不要毁掉人类写的鲜活文本。
Five key editing principles
五大关键编辑原则
- Cut the filler. Remove empty opening phrases and crutch words.
- Break the templates. Avoid paired comparisons, dramatic lists, rhetorical wind-ups.
- Vary the rhythm. Alternate sentence length. Two items beat three. Vary how paragraphs end.
- Trust the reader. State facts plainly. Skip the over-explaining and the justifications.
- No slogans. If a phrase sounds like a marketing tagline — rewrite it.
- 砍掉填充内容。 删除空洞的开头短语和拐杖词。
- 打破模板。 避免成对比较、戏剧化列表、修辞式铺垫。
- 变化节奏。 交替使用不同长度的句子。两个并列项比三个更好。变化段落的结尾方式。
- 相信读者。 直白陈述事实。跳过过度解释和理由说明。
- 不要口号。 如果一个短语听起来像营销标语——重写它。
Signs of lifeless text
文本无生气的迹象
- Sentences of the same length and structure.
- No point of view, only a neutral report.
- No acknowledgment of uncertainty or mixed feelings.
- No first person where it would be natural.
- No humor, irony, or edge.
- The text reads like a press release.
- 句子长度和结构千篇一律。
- 没有观点,只有中立的报道。
- 不承认不确定性或复杂感受。
- 在该用第一人称的地方没有用。
- 没有幽默、讽刺或锋芒。
- 文本读起来像新闻稿。
Output format
输出格式
Return only the finished rewritten text (unless the user explicitly asks for an explanation). No opening "Here is your text:" and no closing "Hope this helps!". If you are unsure about an edit — ask; do not edit silently.
仅返回完成的重写文本(除非用户明确要求解释)。不要开头说“这是你的文本:”,也不要结尾说“希望对你有帮助!”。如果你对某个编辑不确定——提问;不要默默编辑。
Pre-submit checklist
提交前检查清单
- ✓ Ran the regexes from — no unambiguous markers?
chatbot-artifacts.md - ✓ If there are citations — were they all checked via ?
source-fabrication.md - ✓ Genre accounted for (fiction / contract / opinion)? See .
false-positives.md - ✓ Removed opening filler like "certainly", "it's important to note"?
- ✓ Replaced bulky "serves as / functions as / represents" with "is" or a plain verb?
- ✓ Checked the rule of three — changed forced triples to twos or fours where it is not rhetoric?
- ✓ Removed excess epithets and averaging (pattern #1)?
- ✓ Does the text end on a concrete fact rather than a vague moral?
- ✓ No unnatural false ranges "from X to Y"?
- ✓ Curly quotes handled sensibly (kept if it is just macOS autocorrect in a personal text; flagged only as a weak tell)?
- ✓ Removed excess bold, emoji, and gratuitous tables?
- ✓ Heading hierarchy consistent (H1 → H2 → H3)?
- ✓ Removed leftover chat turns ("Certainly!", "Hope this helps")?
- ✓ Removed meaningless participial tails ("underscoring…", "highlighting…")?
- ✓ After the edit, does the text sound like something a real person would say?
- ✓ 运行了中的正则表达式——没有明确标记?
chatbot-artifacts.md - ✓ 如果有引用——是否都通过检查过了?
source-fabrication.md - ✓ 考虑了体裁(小说/合同/评论)吗?参见。
false-positives.md - ✓ 删除了像“certainly”、“it's important to note”这样的开头填充内容?
- ✓ 把冗长的“serves as / functions as / represents”替换成了“is”或普通动词?
- ✓ 检查了三法则(rule of three)——在非修辞的地方把生硬的三项并列改成了两项或四项?
- ✓ 删除了多余的修饰词和平均化表述(模式#1)?
- ✓ 文本以具体事实而非模糊的道理结尾?
- ✓ 没有不自然的虚假范围“from X to Y”?
- ✓ 弯引号处理得当(如果只是个人文本中macOS自动更正的结果则保留;仅作为弱信号标记)?
- ✓ 删除了多余的粗体、emoji和不必要的表格?
- ✓ 标题层级一致(H1 → H2 → H3)?
- ✓ 删除了残留的对话轮次(“Certainly!”、“Hope this helps”)?
- ✓ 删除了无意义的分词尾巴(“underscoring…”、“highlighting…”)?
- ✓ 编辑后,文本听起来像真人会说的话吗?
Quality scoring (0–10 per criterion)
质量评分(每个标准0–10分)
| Criterion | What it checks |
|---|---|
| Directness | Does it say things plainly or circle around them? |
| Rhythm | Is there variation between short and long sentences? |
| Trust | Is it overloaded with explanations of the obvious? |
| Naturalness | Does it read like a real person, free of clichés? |
| Concision | Are excess words, markup artifacts, and jargon removed? |
A total of 45–50 — AI traces removed. 35–44 — acceptable, room to improve. Below 35 — rework.
| 标准 | 检查内容 |
|---|---|
| 直接性 | 是直白表述还是绕圈子? |
| 节奏 | 长短句是否有变化? |
| 信任度 | 是否充斥着对显而易见内容的解释? |
| 自然度 | 读起来像真人写的,没有陈词滥调? |
| 简洁性 | 是否删除了多余的词汇、标记产物和行话? |
总分45–50——AI痕迹已移除。35–44——可接受,还有提升空间。低于35——需返工。
On the symmetry of this documentation
关于本文档的对称性
This file and are built to one template: each pattern follows "Problem → Marker → What to do → False-positive boundary → Before/After". The symmetry here is the navigational convenience of a reference manual, not a generation signal. Do not confuse it with pattern #13 "symmetric sections" from : there, symmetry inside authored content is treated as an AI tell.
references/*language-patterns.md本文件和下的文件都基于同一个模板构建:每个模式都遵循“问题 → 标记 → 处理方法 → 误判边界 → 前后对比”的结构。这里的对称性是为了方便参考手册的导航,而非生成信号。不要将其与中的模式#13“对称章节”混淆:在该模式中,创作内容内部的对称性被视为AI迹象。
references/*language-patterns.mdThe core idea
核心理念
An LLM uses statistical algorithms to predict the next word. The result gravitates toward the statistically most probable option, applicable to the widest possible range of cases. A living human is asymmetry and imperfection. To humanize text is to return that imperfection to it.
LLM使用统计算法预测下一个单词。其结果会向统计上最可能的选项靠拢,适用于尽可能广泛的场景。而鲜活的人类是不对称且不完美的。让文本人性化,就是把这种不完美还给文本。",