The AI-style rulepack
writinglint-rulepack-ai-style is the first rulepack. recommended enables every rule below at
warn. Rules are namespaced ai-style/<name>, so you override any of them in a config, e.g.
'ai-style/rule-of-three': 'off'.
The ★ structural rules match over the dependency graph — the ones a regex or POS-only linter cannot express. The rest are lexical / idiom / formatting rules.
Structure & cadence
Section titled “Structure & cadence”| Rule | Category | What it catches |
|---|---|---|
★ corrective-antithesis | parallelism | The “X, not Y” staged contrast (“the graph, not the vibes”). |
★ negative-parallelism | parallelism | ”Not (only) X but (also) Y” — a signature LLM cadence. |
★ copula-avoidance | significance | ”stands/serves as a …” dressing up a plain “is a …”. |
★ light-verb-role | significance | ”plays a … role” — importance asserted, not shown. |
★ participial-appendage | significance | Trailing “-ing” clause that editorialises the main clause. |
★ rule-of-three | rule-of-three | Reflexive triads of coordinated adjectives or adverbs. |
★ vague-attribution | vague | A bare, generic subject asserting a “that …” clause (“Studies suggest…”). |
★ throat-clearing | meta | ”It is important to note that …”. If it matters, just say it. |
Vocabulary & idioms
Section titled “Vocabulary & idioms”| Rule | Category | What it catches |
|---|---|---|
ai-vocabulary | ai-vocab | Words LLMs over-use relative to human writers (delve, tapestry, …). |
significance-idioms | significance | Fixed “inflated significance” idioms (rich tapestry, testament to …). |
promo-idioms | promo | Travel-brochure / press-release idioms (nestled in the heart of …). |
chatbot-idioms | meta | Editorialising / chatbot filler (“it’s worth noting…”). |
opening-conjunction | conjunctions | Formulaic sentence-opening transitions (“Moreover,”, “Ultimately,”). |
Formatting tells
Section titled “Formatting tells”| Rule | Category | What it catches |
|---|---|---|
em-dash-overuse | formatting | Heavy em-dash use relative to sentence count. |
curly-quotes | formatting | Curly “smart” quotes, common in chatbot output. |
markdown-bold | formatting | Markdown **bold** left in the text. |
markdown-heading | formatting | Markdown # headings in prose. |
emoji | formatting | Decorative emoji in formal prose. |
The score is not a rule
Section titled “The score is not a rule”Separately from the lints, the pack ships a stylometric score — a document-level 0–100 estimate of how AI-shaped the writing reads, from a small data-free classifier. It is deliberately not a rule: flags are local and structural; the score is global and statistical. See Consume as a library.