Skip to content
lawlint
Esc
navigateopen⌘Jpreview
On this page

Rules

Every built-in rule, what it catches, and whether it charges the human-likeness score.

57 built-in rules ship enabled. 28 are detection rules that charge the score; 29 are style rules that report and fix without moving it.

lawlint rules --json     # this table, as JSON

Detection rules

Corpus-validated to distinguish AI-generated from authentic human legal prose.

Rule Flags Tier Severity
empty-hedge Flags hedges that carry no information about actual uncertainty. inferential warning
no-ai-cliches Flags common AI-writing clichés. static warning
no-binary-contrast Flags formulaic binary-contrast constructions. static warning
no-colon-reveal Flags dramatic colon reveals at sentence starts. static warning
no-contrasting-pairs Flags formulaic contrasting pairs static warning
no-doublets Flags legal doublets and triplets static suggestion
no-dramatic-fragment Flags dramatic fragments and negative-listing constructions. static warning
no-em-dash-overuse Flags excessive em dashes statistical warning
no-empty-emphasis Flags overused empty emphasis words statistical warning
no-faux-insight Flags faux-insight setups that posture before making a claim. static warning
no-hedging Flags excessive hedging language statistical warning
no-importance-puffery Flags inflated claims about importance or status. static error
no-marketing-language Flags marketing language, hype, and filler. static error
no-negative-parallelism Flags repeated negative parallelism static warning
no-not-only Flags not-only/but-also constructions static warning
no-passive-overuse Flags likely passive-voice overuse statistical warning
no-performed-enthusiasm Flags performed enthusiasm static warning
no-repetitive-openers Flags repeated sentence openings. statistical warning
no-rhetorical-setups Flags rhetorical setups that delay the substantive point. static warning
no-robotic-transitions Flags overuse of formulaic transitions statistical warning
no-rule-of-three Flags dense repeated triplet constructions statistical warning
no-superficial-analysis Flags trailing participial clauses that pretend to explain significance. static warning
no-sycophantic-openers Flags sycophantic openers static error
no-throat-clearing Flags throat-clearing openers static error
no-weasel-attribution Flags vague attributions without a named source. static warning
padded-elaboration Flags sentences that restate the previous point without adding new information. inferential warning
triad-overuse Flags documents dense with three-part parallel constructions. statistical warning
uniform-sentence-rhythm Flags documents whose sentence lengths barely vary. statistical warning

Style rules

Writing advice that says nothing about provenance. Reported and fixable; never scored.

Rule Flags Tier Severity
no-achievement-language Flags achievement language and hype in reports, PRs, and docs. static warning
no-actually-as-filler Flags “actually” when it adds emphasis instead of a fact. static warning
no-anaphoric-openers Flags repeated sentence openers across a document statistical warning
no-antithesis Flags rhetorical antithesis that balances one idea against another. inferential warning
no-corporate-register-verbs Flags corporate-register verbs static warning
no-corrective-negation Flags corrective-negation constructions static warning
no-dead-metaphors Flags worn-out metaphors and figures of speech. static warning
no-em-dash Flags em dashes static error
no-en-dash Flags en dashes outside numeric ranges. static error
no-filler-intensifiers Flags filler intensifiers static warning
no-foreign-phrases Flags decorative foreign phrases with an everyday English equivalent. static suggestion
no-landing-sentence Flags short closing sentences written for rhetorical effect. inferential warning
no-legalese Flags archaic or unnecessarily formal legalese. static warning
no-metronomic-cadence Flags predictable sentence-length cadence statistical suggestion
no-nominalization Flags weak verbs paired with nominalized nouns statistical warning
no-paired-phrasing Flags excessive paired phrasing statistical suggestion
no-paragraph-pinning Flags paragraphs that open and close by repeating the same theme. inferential warning
no-parallel-sentence-structure Flags repeated syntactic templates across sentences in a paragraph. inferential warning
no-parataxis Flags marches of short coordinate clauses and sentences. inferential warning
no-parenthetical-asides Flags frequent parenthetical asides statistical warning
no-semicolons Flags semicolons. static error
no-setup-payoff Flags staged questions or tensions resolved by the next sentence. inferential warning
no-stacked-noun-phrases Flags stacked noun phrases before abstract head nouns statistical warning
no-summary-beat Flags closing sentences that recap a paragraph without adding information. inferential warning
oxford-comma Flags lists that omit the Oxford comma. static warning
prefer-concise-phrases Flags padded phrases that a shorter word or nothing replaces. static suggestion
prefer-short-words Flags long words that have a short everyday equivalent. static suggestion
prefer-spoken-voice Flags prose that works on the page but not in a spoken explanation. inferential warning
sentence-length Flags sentences that are difficult to read. statistical warning

Writing your own

Rules are Markdown files with YAML frontmatter, exactly like the built-ins. See Authoring rules.