← ClaudeAtlas

bl-scrublisted

Strip the machine residue out of any draft and score it on five gauges before it goes out - invisible characters, em dashes, stock vocabulary, flat rhythm, hedging. Use whenever text needs to sound human, when the user says "humanize", "de-slop this", "does this read as AI", "will this get flagged", and automatically before any BylineKit draft, comment, reply or message is shown to the user.
ehteshambuildagents/automatedlinkedIn · ★ 1 · AI & Automation · score 72
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