Let a script do the boring half
About a third of proofreading is mechanical. Write it once, run it forever, and never get bored at article thirty.
7 min read
Curious
0 XPA human gets tired at article three. A script does not. It applies the same standard to article forty as it did to article one, in about a second.
Everything in pass 2 that can be counted, should be counted by a script.
article-check.py checks ONE draft em dashes must be 0 curly quotes must be 0 spelling variant consistent throughout body lists <= 3 (guides) list items <= 10, plain, no bold labels tables >= 2 FAQs exactly 5 section starts/ends never on a list or table anchor text <= 5 words key takeaways present, 3-4 bullets batch-check.py checks a BATCH against itself repeated 8-word runs across every pair sources cited more than once case studies reused missing CTA or link set system-audit.py checks the RULES against each other every file the map names actually exists the pass count agrees everywhere, including spelled out no client file restates a global rule
The third one is the one people never build
A rule audit checks that your rules agree with each other. It sounds unnecessary until the first time two files disagree and you spend an afternoon on it.
The number that was spelled out
The system moved from three passes to five. Every file was updated. A search for the numeral "3" came back clean. But the proofreading skill's own completion gate still had the old count written as a word, so the file that enforced the rule was telling itself the old number.
Cost: Caught by an audit script, not by a person. It would have quietly under-checked every future article.
The rule that came out of it. Write an audit that checks the pairs that must agree, and include the spelled-out forms. Then extend the audit every time you add a rule. An audit only protects what it checks.
You do not need to write these yourself
Describe the checks in plain English and ask Claude to write the script. Then break each check on purpose and confirm it fails. A check you have never seen fail is not a check, it is a decoration.
Do this now
- 1
Pick your five most boring, most repeated corrections.
The ones you have fixed more than twice. Those are already rules, they just are not written down yet.
- 2
Ask for the script.
> Write a Python script that checks a markdown article for: > [your five checks]. Print the line number for each finding. > Exit 0 if clean, 1 if anything fails.
- 3
Negative-test every single check.
> Break each check on purpose, one at a time, confirm the script > catches it, then restore the file and confirm it goes clean again.
This is the step everyone skips, and it is the only thing that proves the script works. A green run on a clean file proves nothing.
Finished reading?
Mark it done to bank the XP and keep your streak alive. Any challenges on this page score separately, so you can come back for a perfect run later.