Skip to content
Copylint

Rules reference

Every rule the scanner applies. The open-source unmachined CLI, the web app, and the API share this catalog, and a parity check scores the same fixtures through both implementations on every commit.

Last updated 2026-09-15

Scoring

Each finding adds its weight. The score is the sum, capped at 100. A draft passes below 40 and fails at 40 or above, so one critical finding and two major findings are enough to fail. Code spans and fenced code blocks are masked before scanning, and the same input gets the same score on every run.

SeverityPoints per findingCatalog entries
Critical+2051
Major+1063
Minor+319

Critical phrases

Each adds 20 and counts once per draft, however often it appears. Matching ignores case, respects word boundaries, and also catches simple plural and past forms.

Major phrases

Each adds 10: inflated adjectives, corporate filler, and padded constructions that say less than they take to read.

Hedge and filler words

Each adds 3, and at most eight are counted per draft.

Structure and openers

These rules look at the shape of the draft instead of single phrases. The rule name is the one that appears in a finding from the app, the CLI, and the API.

RulePointsTriggers on
em/en dash+20Any em dash or en dash, or a double hyphen between words. Counted once for the whole draft.
negation-redefinition+20The "not just X, it's Y" and "it's not about X, it's about Y" constructions.
echo opener+20The text opens by agreeing with someone: "exactly right", "spot on", "well said", and the rest of the echo list.
template artifact+20Leftovers from a template or prompt: unfilled {placeholders}, TODO or TBD, lorem ipsum, raw field names, bracket scaffolds, separator lines, dangling ellipses.
unsupported claim+20Fastest, #1, number one, guaranteed, or unbeatable, with no measurement, benchmark, or methodology in the same draft.
sweeping categorical claim+10Absolutes such as "every single team", "100% of", or "no one is".
personified abstraction+10An abstraction given agency, such as "the market doesn't care" or "the data doesn't lie".
repetitive sentence opener+10The same first word opens three or more sentences (more in long drafts). "The", "a", "I", and "it" are exempt. Needs four or more sentences.
rhythm monotony+10One pattern of short, medium, and long sentences covers more than half of the draft's cadence. Short is 8 words or fewer, long is over 20.
emoji decoration+10An emoji inside a heading or bullet line.
exclamation budget+3More than one exclamation mark in the draft.
rhetorical questions+3More than two question marks. Skipped in chat mode.
curly quotes+3Typographic quotes in a plain-text surface.
possible false range+3A "from X to Y" phrase that may not describe a real scale.
banned sentence opener+3A sentence that opens with a stock transition from the banned openers list.

Echo openers

Checked at the start of the text.

Banned sentence openers

Template artifacts

Voice profile

A Team voice profile relaxes four budgets toward what your team measurably writes: exclamation marks, rhetorical questions, sentence-length monotony, and the openers your team favors. The phrase catalogs, the dash rule, template artifacts, and unsupported claims never relax, so a score with a profile is never higher than the score without one.