What problem does it solve? Prose written or edited by AI models carries recognizable cues (em dashes, "it's not just X, it's Y" cadences, assistant boilerplate, diction memes like "delve") that readers flag as machine-generated. This Skill identifies those specific tells, ranked by how often real readers cite them, and guides their removal without swapping one default voice for another. ## Core Features & Use Cases - Deterministic scanner: A standalone Python script (standard library only) scans .md, .markdown, .mdx, .txt, .rst, and .html files, reporting each finding with file, line, matched text, data share, and fix, plus a slop score and density per 1,000 words. The exit code equals the high-severity count, so CI pipelines can gate on it. - Data-grounded tell catalog: references/tells.md ranks 21 tells by cited share from an analysis of 89,239 Reddit posts (7,984 on-topic, ~50 subreddits, 2021-2026), including structural tells a regex cannot see (uniform rhythm, sycophancy, empty fluency) for a human pass. - Deliberate-voice method: references/writing-with-intent.md pins one of four registers (casual, conversational-professional, expository, formal) plus a speaker, so fixes replace defaults with chosen voice rather than the over-corrected "anti-AI" register. - Use Case: Run the scanner on a blog draft before publishing, fix the flagged em dashes and boilerplate, then read the draft aloud against the structural catalog to catch uniform rhythm the scanner cannot see. ## Quick Start Ask the AI to audit your draft for AI-writing tells by running scripts/unslop_text_scan.py on the file, then fix the flagged lines in priority order.