bl-scrublisted
Install: claude install-skill ehteshambuildagents/automatedlinkedIn
# bl-scrub
Two programs live in this folder and they both actually run. Use them. Do not
judge a draft by reading it - the whole point is that the tells are the things
you stop seeing.
```bash
python3 scrub.py draft.txt --explain # clean it, itemise every change
python3 scrub.py draft.txt --diff # see exactly what moved
python3 score.py draft.txt # score it on five gauges
python3 score.py before.txt after.txt # prove the delta
python3 scrub.py draft.txt --check # exit 1 if it still needs work
```
Both read `profile.json`, which holds every rule. No dependencies, no network,
nothing uploaded. Python 3.9 or newer.
## What scrub.py changes, and what it refuses to
Four rule kinds run in order.
**strip** deletes characters a keyboard does not produce: zero-width spaces and
joiners, word joiners, soft hyphens, byte-order marks, directional marks. These
survive copy-paste, they are invisible in every editor the user owns, and they
are the single most mechanical tell in generated text.
**map** swaps a character for a plain one: em dash to comma, en dash to hyphen,
curly quotes to straight, ellipsis to three dots, non-breaking space to space.
**phrase** swaps stock language for plain language, preserving capitalisation.
URLs, email addresses and code spans are shielded and never touched.
**flag** reports a structure and refuses to touch it. This split is the design:
deleting an invisible character is unambiguous, so it happens