Skip to content

The AI-style rulepack

writinglint-rulepack-ai-style is the first rulepack. recommended enables every rule below in confidence-aware auto mode, reporting medium- and high-confidence findings by default. 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.

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.
hedging-seesaw balance Relentless “While X… However, Y” balancing, density-gated — a position never taken.
comma-splice rhythm Two complete clauses stapled with a bare comma (“Thanks for the demo, I enjoyed it.”) — clipped parataxis performing breeziness.
agentless-opener agency “Notes attached, and they are …” — a verbless fragment that circles back with a pronoun instead of naming the doer.
setup-fragment performance “One thing I wanted to put on the table …” — a noun-rooted fragment staging a point instead of making it.
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,”).
performed-candor performance Announced honesty (“to be fully transparent”, “I’ll be honest”) in place of the honest sentence itself.
filler-intensifiers performance Sincerity adverbs on first-person stance adjectives (“I am genuinely open”), plus density-gated intensifier spray.
Rule Category What it catches
em-dash-overuse formatting Heavy em-dash use relative to sentence count (density-gated — a few em dashes never fire).
mixed-quotes formatting Straight and curly quotes mixed in one document — a paste seam.
generation-artifacts formatting Leftover chatbot citation tokens (oaicite, turn0search0, utm_source=chatgpt.com).
emoji formatting Decorative emoji in formal prose.

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.