AI Writing Anti-Patterns
Field guide for detecting and revising AI-generated content indicators based on Wikipedia's "Signs of AI writing" guide.
When to Use
Invoke this skill:
- Before finalizing ANY AI-assisted writing
- When reviewing text for AI writing indicators
- When editing content to sound more natural
- After completing writing tasks (automatic via hooks)
The Iron Law
Check every piece of AI-assisted writing against these patterns before submission.
This is not optional. AI writing patterns are detectable and undermine credibility.
Quick Screening Order
Start with the most objective indicators:
| Priority |
Section |
What to Check |
| 1 |
ChatGPT Artifacts |
turn0search0, oaicite, contentReference |
| 2 |
Citation Problems |
Hallucinated DOIs, dead links, non-existent sources |
| 3 |
Prompt Refusals |
"As an AI language model...", "I hope this helps" |
| 4 |
Puffery |
"stands as", "plays a vital role", "rich tapestry" |
| 5 |
Structure |
Section summaries, "Despite challenges", rule of three |
Critical Patterns to Avoid
CRITICAL Severity (Immediate Revision Required)
These patterns are unambiguous AI artifacts:
ChatGPT-Specific Artifacts:
turn0search0, turn1search2 (internal search references)
oaicite:X (citation placeholders)
contentReference[oaicite:X] (unresolved references)
- JSON attribution blocks in output
Prompt Refusals:
- "As an AI language model..."
- "I cannot provide..."
- "I hope this helps!"
- "I hope this email finds you well"
HIGH Severity (Strong Revision Recommended)
Puffery and Exaggeration:
- "stands as" (a testament/example/beacon)
- "plays a vital/crucial/pivotal role"
- "rich tapestry of"
- "nestled in/among"
- "it's important to note that"
- "delves into"
- "the landscape of"
Promotional Language:
- "groundbreaking", "transformative", "revolutionary"
- "unparalleled", "unprecedented"
- "cutting-edge", "state-of-the-art"
MEDIUM Severity (Review and Consider)
Structural Patterns:
- Section summaries that repeat the heading
- "Despite [challenge], [positive outcome]" formula
- Negative parallelisms: "However... Nevertheless..."
- Rule of three: exactly three examples every time
- Weasel wording: "some experts say", "it is believed"
Stylistic Quirks:
- False precision — a summarising figure carried to spurious decimal places
("a rate of 1.3771 percent", "covering 85.63 percent of the universe").
Prefer a high-level fraction in the abstract and introduction, where a figure
summarises rather than reports; keep the exact value next to the exhibit that
backs it. Enforced as
style·false_precision.
- Elegant variation (synonym cycling to avoid repetition)
- False ranges ("from X to Y" without real data)
- Title Case In All Headings
- Em dash overuse (—)
- Excessive boldface for emphasis
User-Voice Preferences (NOT AI tells — corpus-checked 2026-08-05)
This section is a personal style preference, not a linter, and the name it used to carry
("User-Voice Lint") was doing real damage. Nothing here was ever in an executable table, so a
writing-verify pass ran every scorer and knew none of these phrases — while the heading implied
four enforced rules. Three of the four have now been measured against 14,294,148 sentences of human
scholarship (8.73M finance/accounting + 5.56M law review) and they are normal human prose:
| phrase |
finance |
law |
verdict |
has bite / have more bite |
1.9/M |
5.2/M |
human — incl. a law review title, "Do the SEC's New Rating Agency Rules Have Any Bite?" |
the cut (regulatory reduction) |
8.7/M |
4.7/M |
human — "the cut in the corporate tax rate" |
Of course, |
299.9/M |
523.7/M |
human |
To be sure, ← this section used to recommend it |
11.5/M |
194.0/M |
human, and 3× commoner in law reviews than what it replaces |
Admittedly, |
15.5/M |
63.3/M |
human |
cuts against |
0.9/M |
13.1/M |
human |
Keep these as voice preferences if you like them — they are unfalsifiable and that is fine. Do not
present them as AI detection. Full record: docs/investigations/2026-08-05_emphasis-enforcement.md.
What DID survive the gate, and is now enforced as a span:
ai-tic·sev3·rule-bites — "the reform should bite hardest". The verb is unattested
(1/14.29M, and that hit is a cited Financial Times headline in a footnote). The noun above
is not. That noun/verb split is the whole rule.
ai-tic·sev2·sharpest-version — "the sharpest version of the objection". 0/14.29M, while all
four hits of <superlative> version of are "the strongest version of" and the sharpest <noun> at large is 86 hits. The word is ordinary; the collocation is the tell.
Bridge repetitions remain the one genuinely enforced entry from the old list —
skills/writing-verify/scripts/bridge_repetition_check.py, invoked from
workflows/writing-verify.js. It is real logic over section openings, not a phrase table.
To check a phrase yourself: /ai-tic <phrase> — it runs the FP-hunt against both corpus halves
and refuses to add anything over the eligibility gate.
How to Revise
For Puffery
| AI Pattern |
Human Alternative |
| "stands as a testament to" |
"shows" or "demonstrates" |
| "plays a vital role in" |
"affects" or just state the effect |
| "rich tapestry of" |
describe specifically what it contains |
| "nestled in the heart of" |
"in" or "located in" |
| "delves into" |
"examines" or "covers" |
For Structure
| AI Pattern |
Human Alternative |
| Section summary of heading |
Start with substance, not meta-commentary |
| "Despite challenges..." |
State the reality directly without formula |
| Exactly three examples |
Use the number that fits: 2, 4, 5, or just 1 |
| "It's important to note" |
Just state the important thing |
For False Precision
A figure in the abstract or introduction is SUMMARISING; a figure beside its table is REPORTING.
Only the second earns its decimal places. Carrying four of them into a summary implies a precision
the estimate does not have and reads as machine output.
| AI Pattern |
Human Alternative |
| "a rate of 1.3771 percent" |
"about one and a half percent" |
| "roughly ten times the 2.7361 percent rate" |
"roughly ten times the abstention-wide rate" |
| "6,612 of 575,553 testable items — 1.15 percent — fall below" |
"about one percent of testable items fall below" |
| "covering 85.63 percent of the testable universe" |
"covering roughly six in seven of the testable universe" |
| "the 28.3328 percent figure" |
"that figure" |
Exceptions the rule already carries, and which must stay exceptions: exact values inside a table,
figure caption, code block or footnote; years, statutory and rule cites, docket, page and version
numbers; and money where the cents are the point.
For Promotional Language
| AI Pattern |
Human Alternative |
| "groundbreaking" |
describe what it actually does |
| "revolutionary" |
compare to what came before |
| "cutting-edge" |
specify the technology |
| "transformative" |
show the transformation with evidence |
Reference Files
For detailed patterns and extensive examples, consult:
THE "ENFORCED BY" COLUMN IS THE POINT OF THIS TABLE. Eleven chapters listed as reference
material reads as eleven chapters of coverage; it is not. Four of them have no executable module
and are marked reference-only here so nobody has to rediscover the gap by shipping a draft through
a clean review pass. (That is exactly how chapter 05's boldface entry went unenforced until
v5.134.0 — see docs/investigations/2026-08-05_emphasis-enforcement.md.)
| File |
Contents |
Enforced by |
references/_index.md |
Overview and quick screening guide |
— |
references/01-puffery-and-exaggeration.md |
"Stands as", superficial analyses |
wikipedia-puffery |
references/02-promotional-language.md |
"Rich tapestry", disclaimers |
wikipedia-promotional |
references/03-structural-patterns.md |
Section summaries, negative parallelisms |
wikipedia-structural |
references/04-stylistic-quirks.md |
Elegant variation, false ranges |
reference only — regexable, but must clear the ai-tic corpus gate first |
references/05-formatting-and-typography.md |
Boldface, em dashes, emojis |
emphasis, formatting, em-dash (boldface/emoji since v5.134.0); inline-header lists partly |
references/06-communication-patterns.md |
Subject lines, "I hope this helps" |
wikipedia-communication |
references/07-template-artifacts.md |
Mad Libs patterns, placeholders |
wikipedia-template-artifacts |
references/08-markup-issues.md |
Markdown vs wikitext confusion |
reference only — wikitext-specific; no in-repo analogue |
references/09-chatgpt-specific-artifacts.md |
turn0search, oaicite |
wikipedia-chatgpt-artifacts |
references/10-citation-problems.md |
Hallucinated DOIs, dead links |
reference only — covered better by skills/cite-check + skills/source-verify and the cite-fidelity-* constraints, which check citations against sources rather than pattern-matching them |
references/11-meta-indicators.md |
Abrupt cutoffs, style discrepancies |
reference only — judgement; lives in the user-agents/writing-reviewer.md rubric |
Every named system is a scripts/prose-audit.py system, so a finding from it carries a span id.
A chapter marked reference only produces no span, which by THE READER'S RULE means anything it
surfaces is judgement, not a deterministic finding.
Automatic Detection
This plugin includes PostToolUse hooks that automatically scan Write/Edit output for anti-patterns. When patterns are detected:
- Hook emits a warning with specific patterns found
- Claude immediately revises the content
- Revision removes or replaces flagged patterns
The hook checks for all CRITICAL and HIGH severity patterns automatically.
Review Facts
- A user's style request ("make it punchy", "professional tone") is a request for an outcome, not for AI-smell — delivering it with puffery, hedges, or bold-emphasis patterns intact ships text that reads as obviously AI-generated and damages the user's credibility.
- Skimming is not checking. The check is sentence-by-sentence against the pattern list; a skim that lets puffery pass because flagging it felt pedantic presents unreviewed text as reviewed — an unverified claim.
Key Principles
From Wikipedia's guide:
- These are signs, not proof - Multiple indicators strengthen the case
- Context matters - Some patterns appear in human writing too
- Focus on deeper issues - Surface defects point to synthesis and quality problems
- Don't rely on detection tools - Human judgment required
Related Skills
/writing - Core writing principles from Elements of Style
/writing-legal - Legal writing (Phase 2)
/writing-econ - Economics writing (Phase 2)
1---2name: ai-anti-patterns3description: ALWAYS load before finalizing ANY written prose, and whenever text is suspected of being machine-written - "does this sound like AI", "make this sound human", "clean up the AI-isms", "did a bot write this", "check this draft before I send it", "review this for AI tells", "this reads like ChatGPT", "is this student paper AI-generated", or before handing back any draft, memo, email, or article you wrote. Use proactively even if the user never mentions AI writing.4---56# AI Writing Anti-Patterns78Field guide for detecting and revising AI-generated content indicators based on Wikipedia's "Signs of AI writing" guide.910## When to Use1112Invoke this skill:13- Before finalizing ANY AI-assisted writing14- When reviewing text for AI writing indicators15- When editing content to sound more natural16- After completing writing tasks (automatic via hooks)1718## The Iron Law1920**Check every piece of AI-assisted writing against these patterns before submission.**2122This is not optional. AI writing patterns are detectable and undermine credibility.2324## Quick Screening Order2526Start with the most objective indicators:2728| Priority | Section | What to Check |29|----------|---------|---------------|30| 1 | ChatGPT Artifacts | `turn0search0`, `oaicite`, `contentReference` |31| 2 | Citation Problems | Hallucinated DOIs, dead links, non-existent sources |32| 3 | Prompt Refusals | "As an AI language model...", "I hope this helps" |33| 4 | Puffery | "stands as", "plays a vital role", "rich tapestry" |34| 5 | Structure | Section summaries, "Despite challenges", rule of three |3536## Critical Patterns to Avoid3738### CRITICAL Severity (Immediate Revision Required)3940These patterns are unambiguous AI artifacts:4142**ChatGPT-Specific Artifacts:**43- `turn0search0`, `turn1search2` (internal search references)44- `oaicite:X` (citation placeholders)45- `contentReference[oaicite:X]` (unresolved references)46- JSON attribution blocks in output4748**Prompt Refusals:**49- "As an AI language model..."50- "I cannot provide..."51- "I hope this helps!"52- "I hope this email finds you well"5354### HIGH Severity (Strong Revision Recommended)5556**Puffery and Exaggeration:**57- "stands as" (a testament/example/beacon)58- "plays a vital/crucial/pivotal role"59- "rich tapestry of"60- "nestled in/among"61- "it's important to note that"62- "delves into"63- "the landscape of"6465**Promotional Language:**66- "groundbreaking", "transformative", "revolutionary"67- "unparalleled", "unprecedented"68- "cutting-edge", "state-of-the-art"6970### MEDIUM Severity (Review and Consider)7172**Structural Patterns:**73- Section summaries that repeat the heading74- "Despite [challenge], [positive outcome]" formula75- Negative parallelisms: "However... Nevertheless..."76- Rule of three: exactly three examples every time77- Weasel wording: "some experts say", "it is believed"7879**Stylistic Quirks:**80- False precision — a summarising figure carried to spurious decimal places81 ("a rate of 1.3771 percent", "covering 85.63 percent of the universe").82 Prefer a high-level fraction in the abstract and introduction, where a figure83 summarises rather than reports; keep the exact value next to the exhibit that84 backs it. Enforced as `style·false_precision`.85- Elegant variation (synonym cycling to avoid repetition)86- False ranges ("from X to Y" without real data)87- Title Case In All Headings88- Em dash overuse (—)89- Excessive boldface for emphasis9091### User-Voice Preferences (NOT AI tells — corpus-checked 2026-08-05)9293**This section is a personal style preference, not a linter, and the name it used to carry94("User-Voice Lint") was doing real damage.** Nothing here was ever in an executable table, so a95`writing-verify` pass ran every scorer and knew none of these phrases — while the heading implied96four enforced rules. Three of the four have now been measured against 14,294,148 sentences of human97scholarship (8.73M finance/accounting + 5.56M law review) and they are **normal human prose**:9899| phrase | finance | law | verdict |100|---|---|---|---|101| `has bite` / `have more bite` | 1.9/M | 5.2/M | **human** — incl. a law review title, *"Do the SEC's New Rating Agency Rules Have Any Bite?"* |102| `the cut` (regulatory reduction) | 8.7/M | 4.7/M | **human** — *"the cut in the corporate tax rate"* |103| `Of course,` | 299.9/M | 523.7/M | **human** |104| `To be sure,` ← *this section used to recommend it* | 11.5/M | **194.0/M** | **human**, and 3× commoner in law reviews than what it replaces |105| `Admittedly,` | 15.5/M | 63.3/M | **human** |106| `cuts against` | 0.9/M | 13.1/M | **human** |107108Keep these as voice preferences if you like them — they are unfalsifiable and that is fine. Do not109present them as AI detection. Full record: `docs/investigations/2026-08-05_emphasis-enforcement.md`.110111**What DID survive the gate**, and is now enforced as a span:112113- `ai-tic·sev3·rule-bites` — *"the reform should bite hardest"*. The **verb** is unattested114 (1/14.29M, and that hit is a cited *Financial Times* headline in a footnote). The **noun** above115 is not. That noun/verb split is the whole rule.116- `ai-tic·sev2·sharpest-version` — *"the sharpest version of the objection"*. 0/14.29M, while all117 four hits of `<superlative> version of` are *"the **strongest** version of"* and `the sharpest118 <noun>` at large is 86 hits. The word is ordinary; the collocation is the tell.119120**Bridge repetitions** remain the one genuinely enforced entry from the old list —121`skills/writing-verify/scripts/bridge_repetition_check.py`, invoked from122`workflows/writing-verify.js`. It is real logic over section openings, not a phrase table.123124**To check a phrase yourself:** `/ai-tic <phrase>` — it runs the FP-hunt against both corpus halves125and refuses to add anything over the eligibility gate.126127## How to Revise128129### For Puffery130131| AI Pattern | Human Alternative |132|------------|-------------------|133| "stands as a testament to" | "shows" or "demonstrates" |134| "plays a vital role in" | "affects" or just state the effect |135| "rich tapestry of" | describe specifically what it contains |136| "nestled in the heart of" | "in" or "located in" |137| "delves into" | "examines" or "covers" |138139### For Structure140141| AI Pattern | Human Alternative |142|------------|-------------------|143| Section summary of heading | Start with substance, not meta-commentary |144| "Despite challenges..." | State the reality directly without formula |145| Exactly three examples | Use the number that fits: 2, 4, 5, or just 1 |146| "It's important to note" | Just state the important thing |147148### For False Precision149150A figure in the abstract or introduction is SUMMARISING; a figure beside its table is REPORTING.151Only the second earns its decimal places. Carrying four of them into a summary implies a precision152the estimate does not have and reads as machine output.153154| AI Pattern | Human Alternative |155|------------|-------------------|156| "a rate of 1.3771 percent" | "about one and a half percent" |157| "roughly ten times the 2.7361 percent rate" | "roughly ten times the abstention-wide rate" |158| "6,612 of 575,553 testable items — 1.15 percent — fall below" | "about one percent of testable items fall below" |159| "covering 85.63 percent of the testable universe" | "covering roughly six in seven of the testable universe" |160| "the 28.3328 percent figure" | "that figure" |161162Exceptions the rule already carries, and which must stay exceptions: exact values inside a table,163figure caption, code block or footnote; years, statutory and rule cites, docket, page and version164numbers; and money where the cents are the point.165166### For Promotional Language167168| AI Pattern | Human Alternative |169|------------|-------------------|170| "groundbreaking" | describe what it actually does |171| "revolutionary" | compare to what came before |172| "cutting-edge" | specify the technology |173| "transformative" | show the transformation with evidence |174175## Reference Files176177For detailed patterns and extensive examples, consult:178179**THE "ENFORCED BY" COLUMN IS THE POINT OF THIS TABLE.** Eleven chapters listed as reference180material reads as eleven chapters of coverage; it is not. Four of them have no executable module181and are marked reference-only here so nobody has to rediscover the gap by shipping a draft through182a clean review pass. (That is exactly how chapter 05's boldface entry went unenforced until183v5.134.0 — see `docs/investigations/2026-08-05_emphasis-enforcement.md`.)184185| File | Contents | Enforced by |186|------|----------|-------------|187| `references/_index.md` | Overview and quick screening guide | — |188| `references/01-puffery-and-exaggeration.md` | "Stands as", superficial analyses | `wikipedia-puffery` |189| `references/02-promotional-language.md` | "Rich tapestry", disclaimers | `wikipedia-promotional` |190| `references/03-structural-patterns.md` | Section summaries, negative parallelisms | `wikipedia-structural` |191| `references/04-stylistic-quirks.md` | Elegant variation, false ranges | **reference only** — regexable, but must clear the ai-tic corpus gate first |192| `references/05-formatting-and-typography.md` | Boldface, em dashes, emojis | `emphasis`, `formatting`, `em-dash` (boldface/emoji since v5.134.0); inline-header lists partly |193| `references/06-communication-patterns.md` | Subject lines, "I hope this helps" | `wikipedia-communication` |194| `references/07-template-artifacts.md` | Mad Libs patterns, placeholders | `wikipedia-template-artifacts` |195| `references/08-markup-issues.md` | Markdown vs wikitext confusion | **reference only** — wikitext-specific; no in-repo analogue |196| `references/09-chatgpt-specific-artifacts.md` | turn0search, oaicite | `wikipedia-chatgpt-artifacts` |197| `references/10-citation-problems.md` | Hallucinated DOIs, dead links | **reference only** — covered better by `skills/cite-check` + `skills/source-verify` and the `cite-fidelity-*` constraints, which check citations against sources rather than pattern-matching them |198| `references/11-meta-indicators.md` | Abrupt cutoffs, style discrepancies | **reference only** — judgement; lives in the `user-agents/writing-reviewer.md` rubric |199200Every named system is a `scripts/prose-audit.py` system, so a finding from it carries a span id.201A chapter marked **reference only** produces no span, which by THE READER'S RULE means anything it202surfaces is judgement, not a deterministic finding.203204## Automatic Detection205206This plugin includes PostToolUse hooks that automatically scan Write/Edit output for anti-patterns. When patterns are detected:2072081. Hook emits a warning with specific patterns found2092. Claude immediately revises the content2103. Revision removes or replaces flagged patterns211212The hook checks for all CRITICAL and HIGH severity patterns automatically.213214## Review Facts215216- A user's style request ("make it punchy", "professional tone") is a request for an outcome, not for AI-smell — delivering it with puffery, hedges, or bold-emphasis patterns intact ships text that reads as obviously AI-generated and damages the user's credibility.217- Skimming is not checking. The check is sentence-by-sentence against the pattern list; a skim that lets puffery pass because flagging it felt pedantic presents unreviewed text as reviewed — an unverified claim.218219## Key Principles220221From Wikipedia's guide:2222231. **These are signs, not proof** - Multiple indicators strengthen the case2242. **Context matters** - Some patterns appear in human writing too2253. **Focus on deeper issues** - Surface defects point to synthesis and quality problems2264. **Don't rely on detection tools** - Human judgment required227228## Related Skills229230- `/writing` - Core writing principles from Elements of Style231- `/writing-legal` - Legal writing (Phase 2)232- `/writing-econ` - Economics writing (Phase 2)