Human Voice
Human Voice · standard and checker

Making machines sound human.

Stop sounding like a machine, you dumb machine.

01

The tells worth knowing

01

The antithesis reflex

Budget applies

"Not X. Y." Rhythmically satisfying, costs no thought, and it turns up in clusters. A person reaches for it once, when the contrast is the point. A model reaches for it whenever a sentence needs shape.

BeforeIt is not a place to track work. It is a place to do it.
AfterOther tools keep track of the work. This one does it.
02

Participial benefit tails

Budget applies

A benefit bolted onto a sentence with no subject committed to it. Search for , ensuring , allowing , enabling , driving and rewrite each as its own sentence, or cut it.

BeforeThe gate records every approval, ensuring compliance across the estate.
AfterThe gate records every approval. Compliance holds across the estate.
03

Non-ASCII punctuation

Fix it

Em dash, en dash, smart quotes, ellipsis. The most cited tell and the easiest to over-correct: swapping every em dash for a semicolon reads as evasive. Prefer a full stop. Watch the HTML entity forms too, since ’ slips past a check written for the raw character.

BeforeThe review lands late — usually after the budget is gone.
AfterThe review lands late. Usually after the budget is gone.
04

Flat rhythm

Measured, not matched

Every sentence between 15 and 25 words. Every paragraph three to four sentences. Human writing swings hard, and a four-word sentence after a thirty-word one is a choice a model rarely makes unprompted. Read a paragraph aloud: if your breath falls in the same place every time, the rhythm is flat.

05

Corporate abstraction

Budget applies

leverage, robust, seamless, streamline, holistic, cutting-edge, tapestry, delve, foster, underscore, pivotal, testament, unlock, empower, elevate, transformative, synergy, paradigm, myriad, bespoke, curated, actionable. None are banned. Each has to survive one question: would a practitioner say this out loud to a colleague?

06

Signposting filler

Judgment call

"It is worth noting that", "Importantly", "That said", "At the end of the day", "Ultimately". Nearly all of it deletes with no loss. If a point is important, its position in the paragraph should say so.

07

Vague attribution

Fix it

"Studies show", "experts agree", "research suggests". Name the source and the date, or cut the claim. This one is not only a voice problem.

08

The tricolon habit

Budget applies

Three items, every time. Three sections, three bullets, three adjectives. Three is a good number, which is why the habit hides. The tell is when everything is three, including the things that are naturally two or five.

02

The checker

voice_check.py PYTHON 3 · NO DEPENDENCIES · STANDARD LIBRARY ONLY

Save it anywhere on your path. It takes one file or many, and --summary gives one line per file for scanning a whole set at once.

Human_Voice_Standard.md MARKDOWN · SKILL READY FRONTMATTER

The rules behind every check. Section 04 covers what is in it.

Running it

No terminal

Put both files, voice_check.py and Human_Voice_Standard.md, into a Claude project alongside your document, then ask Claude to run the checker. The report comes back in the chat. With the standard in there too, it can say why a hit matters and rewrite against the rules instead of guessing at them.

Terminal

Six steps below. Worth it if you check a lot of files, or want to scan a whole folder at once.

01

Open a terminal

Terminal on a Mac, in Applications, Utilities. PowerShell on Windows, from the Start menu. Everything below is typed at the prompt and run with Enter.

02

Check you have Python

A version of 3 or higher and you are set. If the command is not found, try python --version and use python throughout. If neither works, install it from python.org.

python3 --version
03

Put the file next to your writing

Download voice_check.py into the same folder as the document you want to check.

04

Go to that folder

cd is change directory. Type cd and a space, then drag the folder from Finder or File Explorer onto the terminal window to fill in the path.

cd /Users/you/Documents/drafts
05

Check one document

Use your own file name and extension. The report prints into the terminal.

python3 voice_check.py my-draft.md
06

Check the whole folder

*.md means every markdown file. One line per file, so you know which ones to open. --only chases a single pattern.

python3 voice_check.py --summary *.md
python3 voice_check.py --only antithesis,tails my-draft.md
03

Reading the output

In a terminal, you see this.

Example output
$ python3 voice_check.py product-update.md

==============================================================================
voice_check: product-update.md
155 words of visible copy
==============================================================================

[FIX   ] Non-ASCII punctuation                2 hit(s)
          Em dash, en dash, smart quotes, ellipsis. House rule is pure ASCII.
          Do this: Replace with plain ASCII. A full stop usually beats a dash.
          L9     In order to reduce failures, we added retries — three of them.
                 use a full stop, or a comma
          L19    It’s the SDK that slipped.
                 use '
          tokens: — x1, ’ x1

[OK    ] Antithesis reflex                    2 hit(s)  budget 2
          "Not X. Y." The strongest machine cadence. Budget two per document.
          Do this: Say the positive thing straight. Drop the "not X" half, or split it in two.
          L5     The scheduler is not just faster. It is a different system.
          L21    Reporting is not the point.
          tokens: is not just faster. it is x1, is not the point x1

[OK    ] Participial benefit tails            1 hit(s)  budget 2
          ", ensuring/allowing/enabling..." Attaches a benefit without a subject.
          Do this: Give the benefit its own sentence, or cut it.
          L6     so jobs run in parallel, ensuring throughput scales with the worker pool rather than

[OK    ] Soft contrast connectives            2 hit(s)  budget 3
          "rather than", "instead of". Fine in ones, a tell in volume.
          Do this: Keep the sharpest one or two. Rewrite the rest as plain statements.
          L6     so jobs run in parallel, ensuring throughput scales with the worker pool rather than
          L16    Instead of asking teams to change how
          tokens: rather than x1, instead of x1

[OK    ] Corporate abstraction vocabulary     2 hit(s)  budget 2
          Would a practitioner say this out loud to a colleague?
          Do this: Swap for the word you would use out loud with a colleague.
          L15    Our platform is robust and seamless.
          L15    Our platform is robust and seamless.
          tokens: robust x1, seamless x1

[CLEAN ] Signposting filler                   0 hit(s)  budget 0

[CLEAN ] Hedging stacks                       0 hit(s)  budget 0

[FIX   ] Vague attribution                    1 hit(s)
          Name the source and date, or cut the claim. Proof discipline, not just voice.
          Do this: Name the source and the date, or cut the claim.
          L10    Studies show that retry logic recovers most transient

[REVIEW] Wordiness                            2 hit(s)  budget 0
          Shorter form exists and means the same thing.
          Do this: Use the shorter form shown.
          L9     In order to reduce failures, we added retries — three of them.
                 use to
          L9     The fact that a job failed once
                 use that
          tokens: in order to x1, the fact that x1

[CLEAN ] Three-item lists                     0 hit(s)  budget 4

[REVIEW] Unexplained acronyms                 2 found
          Pinker, the curse of knowledge. Spell it out on first use.
          L19    API    The API is stable.
          L19    SDK    It’s the SDK that slipped.

[REVIEW] Rhythm                              16 sentences
          mean 5.9 words, spread 2.0, variation 0.33, short sentences 94%, longest flat run 1
          variation is low, sentences are too uniform
          Human writing swings. Break a long sentence, or cut one short.

------------------------------------------------------------------------------
12 total hits across 5 pattern(s) needing a look.
Each hit shows the whole sentence it sits in. Search for that sentence
in your document, or open the file at the line number. Nothing is
changed for you.

TO GET REWRITES: paste this whole report into a chat that has
Human_Voice_Standard.md loaded, and ask it to rewrite the flagged
sentences. Keep the meaning, show before and after, leave the good ones.
------------------------------------------------------------------------------

What the four states mean

FIX
Change it.
[FIX ] Non-ASCII punctuation 2 hit(s) L14 The review lands late — after the budget is gone. use a full stop, or a comma
REVIEW
More than the budget allows. Two antitheses in a document is craft. Nine is a habit.
[REVIEW] Antithesis reflex 3 hit(s) budget 2 Do this: Say the positive thing straight. L3 Our platform is not just a dashboard. It is a decision engine.
ok
Present, within budget. Worth a look, not a problem.
[OK ] Soft contrast connectives 3 hit(s) budget 3
clean
Nothing found.
[CLEAN ] Participial benefit tails 0 hit(s) budget 2
04

Making the changes

Each check says what to do about it. Where there is only one right answer, like in order to becoming to, it prints the swap. Where judgment is needed it names the move instead, because a canned replacement would be wrong too often. It never edits your file.

In a Claude project holding both files, you see this. The check and the rewrites arrive together.

Claude project
You
Run voice_check.py on the draft I just uploaded.
Claude
Ran it. Nine checks clean, one over budget. Rhythm is healthy. [REVIEW] Antithesis reflex 3 hit(s) budget 2 Do this: Say the positive thing straight. L3 Our platform is not just a dashboard. It is a decision engine. L4 Reporting is not the point. L5 This is not software you configure. It is software that adapts. Three of the same construction in three lines. Suggested rewrites:

L3 Our platform makes the decision.
L4 Decisions are the point.
L5 It adapts instead of waiting to be configured.

Take whichever land, and tell me which to try again.
You
Use L4 and L5. Take another pass at L3.
Claude
L3 Our platform decides. The dashboard is how you watch it happen.
You
Apply those changes.
Claude
Done. Three lines changed, nothing else touched. Your original is where you left it. product-update.md updated copy

Pick the ones that land and say so in a sentence. All three, two of them, one of them, none of them. Then ask for the updated draft. You get a new copy back, and the file you uploaded stays as it was.

Three ways to work through them

By hand

Every hit prints the whole sentence it sits in. Copy that sentence, paste it into Find in Word, Docs, or wherever you are drafting, and rewrite it there.

With Claude

In a project holding both files, ask Claude to run the checker. The report and the suggested rewrites come back together, because the standard is right there. Read them: every rewrite is a judgment somebody made, and you decide which ones land.

In a code editor

Open the file at the line number. Works for markdown and plain text. On HTML the line holds markup as well, so the sentence is still the faster way in.

05

The standard

Three parts.

Detection covers sixteen patterns in full, including the ones no regex will ever find. Narrative is StoryBrand applied to real work: the reader is the hero, you are the guide, and a problem has three levels rather than one. Mechanics is concision, heading conventions, house rules, and a nine step check pass.

Those last two parts have nothing to do with machines. Brevity is power. Every word earns its place. If a thing can be said shorter and simpler, it has to be. Being understood by everyone in the room beats sounding like the smartest person in it.

Writing resources

Steven Pinker
The Sense of Style, 2014

The curse of knowledge. You cannot imagine not knowing what you already know, so you skip the step that seemed obvious and use the word your team uses. Pinker calls it the best single explanation of why good people write bad prose. It is our most common failure by a distance.

Donald Miller
Building a StoryBrand, 2017, second edition 2025

The customer is the hero and you are the guide. Three levels of problem, not one. The grunt test, the BrandScript, the one-liner. His rule: if you confuse, you lose. Most companies are beaten on being understood, not on product.

Gary Provost
100 Ways to Improve Your Writing, 1985

Sentences all the same length drone, and the ear stops listening. Vary the length and the writing finds a rhythm. His demonstration passage is why the checker measures sentence variance at all.

George Orwell
Politics and the English Language, 1946

If a word can come out, take it out. Never reach for a long word where a short one does the job, or a figure of speech you are used to seeing in print. Most of the concision rules trace back here.

Strunk and White
The Elements of Style, 1959

Omit needless words. Vigorous writing is compact, in the way a drawing has no unnecessary lines. The subtraction pass is theirs.

06

Where the tool stops

It finds patterns and flags what might be a problem. You are the human in the loop. It is ultimately up to you to polish your art, craft, and content.