DEV Community

hao li
hao li

Posted on Originally published at github.com

Your AI draft sounds like AI. I built a linter that scores how plain it is.

You can spot AI-written text in three seconds: the 60-word sentence that never lands, "leverage the robust tapestry," the "furthermore / moreover / additionally" drumbeat, the hedge pile ("might arguably perhaps be"). Grammar checkers catch none of this — the grammar is perfect. The register is the problem.

plain-speak is a tiny readability linter that scores text on plainness and flags the offending lines, so you (or your agent) can de-slop a draft before it ships.

git clone https://github.com/hahahahahahahahah6/plain-speak
cd plain-speak
python3 plain_speak.py check draft.txt
Enter fullscreen mode Exit fullscreen mode
$ python3 plain_speak.py check draft.txt
plainness: 45/100 (slop)
sentences: 3  words: 80  reading ease: 30.7
long sentences: 2  buzzwords: 24  hedges: 2

findings:
LINE   RULE           DETAIL
----   ----           ------
1      long-sentence  Sentence has 32 words (limit 25)
1      buzzword       AI-tell buzzword: "In today's fast-paced"
1      buzzword       AI-tell buzzword: "leverage"
2      buzzword       AI-tell buzzword: "tapestry"
2      hedge          Hedge word: "arguably"
Enter fullscreen mode Exit fullscreen mode

Four checks: sentences over 25 words, ~45 built-in AI-tell buzzwords (delve, robust, furthermore, in today's fast-paced, …), a Flesch-style reading-ease score folded into the total, and hedge density. --json and --fail-under 80 make it a CI gate for generated docs.

It's also built for agents: the repo ships a SKILL.md agent skill with a reading-level ladder (ELI5 / engineer / one-liner). The CLI detects; the skill rewrites. Loop them — check, rewrite, check again — until the score passes.

One file, stdlib only, Python 3.9+ (grab it via curl if you don't want the clone). 13/13 tests pass. MIT licensed.

Repo: https://github.com/hahahahahahahahah6/plain-speak

What's your favorite AI-tell word — the one that instantly gives a draft away?

Top comments (0)