deslop
NewDetect and remove the tells that make writing read as AI-generated — robotic transitions, hype vocabulary, "it's worth noting" filler, the "not just X, it's Y" cliche, emoji-led bullets, and the rest. Use this skill whenever you write or edit any prose that a human will read — blog posts, emails, READMEs, docs, landing-page copy, essays, social posts, product descriptions, cover letters — and especially when the user asks to make text "sound human", "less AI", "less corporate", "punchier", or to "clean up" a draft. Run it before delivering any nontrivial piece of writing, even if the user didn't explicitly ask, because AI tells creep in by default and the fix is cheap.
Overview
deslop
Make writing read like a person wrote it, not a model.
LLM prose has a recognizable accent: stock openers that say nothing, hype verbs, formal transitions stacked at the top of paragraphs, the "not just X, it's Y" pivot, rule-of-three padding, and an emoji on every bullet. Readers now pattern-match these instantly, and the text loses trust. This skill removes the accent without flattening the writing.
The core move is rewrite, don't delete. A tell usually marks a sentence that is doing too little work. Cutting the phrase and leaving a stub is worse than the original. Fix the underlying sentence so the point survives in plainer words.
Workflow
- Scan. Run the linter on the draft to get a map of tells with line numbers:
``bash python scripts/slopcheck.py path/to/draft.md ` It prints each hit (category, severity, the matched text, a fix note) and a **slop score** = weighted tells per 1,000 words. Use --json for structured output, --min-severity medium` to focus on the worst.
- Triage. Read the flags as questions, not commands. High-severity hits (
!!) are near-always worth fixing. Medium (!) depends on register — "leverage" is fine in a contract, fatal in a blog post. Low are density signals; one is fine, five in a row is a pattern.
- Rewrite each flagged sentence using the principles below. Say the concrete thing the sentence was gesturing at. If a flagged phrase genuinely carries meaning in context, keep it — judgment beats rules.
- Re-scan to confirm the score dropped and you didn't introduce new tells while rewriting. Aim for a score under ~5 for human-facing prose, but don't chase zero — naturalness matters more than the number.
- Read it aloud in your head. The final test isn't the linter; it's whether a sharp friend would believe a person wrote it.
The principles (these matter more than the word list)
Cut the throat-clearing. "It's worth noting that", "it's important to understand", "in today's fast-paced world" — these are warm-up reps before the actual sentence. Delete them and start at the point.
One claim, stated plainly. The "not just X, it's Y" / "not only… but also" structure manufactures false depth. Pick the claim you mean and make it once.
- •Before: It's not just a database, it's a foundation for everything you build.
- •After: The database is where the rest of your stack hangs.
Concrete verbs over hype verbs. Unlock, unleash, supercharge, elevate, harness, leverage, utilize — swap for what literally happens.
- •Before: This lets teams leverage data to unlock new efficiencies.
- •After: Teams can see which steps waste time and drop them.
Kill the metaphor inflation. Tapestry, testament, beacon, symphony, realm, landscape (figurative), delve, dive in. Say the plain thing; the plain thing is usually more vivid.
- •Before: The codebase is a testament to years of careful work.
- •After: You can tell people sweated over this codebase for years.
Vary transitions and avoid stacking formal ones. Furthermore / Moreover / Additionally / Consequently at the head of consecutive paragraphs is a dead giveaway. Use plain connectors (and, but, so) or none — short sentences don't always need glue.
Drop the assistant boilerplate. "I hope this helps", "feel free to reach out", "Certainly!", "Great question", "In conclusion". None of it belongs in standalone writing.
Em-dashes aren't banned — clustering is the tell. A model sprinkles them everywhere. Use them when they earn it; otherwise commas, periods, or parentheses. The linter flags density, not individual dashes.
Emoji in body prose and on every bullet reads as AI. Fine in a casual chat or a playful social post if the user wants that voice; wrong in a README intro, an essay, or business copy.
Keep the author's voice and the meaning. Deslopping is not "make every sentence short and blunt." Don't strip nuance, hedge legitimate uncertainty into false confidence, or homogenize a distinctive style. If the input is technical or formal, keep it technical or formal — just remove the tells.
When NOT to flag
- •Direct quotes, song lyrics, citations, and text the user explicitly wants preserved verbatim.
- •Domain terms where the "tell" word is the correct term (e.g. "robust" in statistics, "realm" in auth/Kerberos, "harness" in testing).
- •Deliberate voice the user asked for (an upbeat marketing tone may legitimately want some energy).
When in doubt, surface the tradeoff to the user rather than silently rewriting their voice.
Output
When you've deslopped a piece, give the user: the rewritten text, the before/after slop score, and a one-line note on the main patterns you fixed (e.g. "cut 6 filler openers, replaced 'leverage/utilize' throughout, broke up stacked transitions"). Don't lecture — show the cleaner draft.
Reference
references/tells.md — the full catalog: every category the linter checks, why each is a tell, and a before/after fix. Read it when you want the complete list or to extend the linter with new patterns.
Install & Usage
mkdir -p .claude/skillsmkdir -p .claude/skills && curl -o .claude/skills/deslop.md https://raw.githubusercontent.com/ozdemircili/deslop/main/SKILL.md/deslopSecurity Audits
Frequently Asked Questions
What is deslop?
Detect and remove the tells that make writing read as AI-generated — robotic transitions, hype vocabulary, "it's worth noting" filler, the "not just X, it's Y" cliche, emoji-led bullets, and the rest. Use this skill whenever you write or edit any prose that a human will read — blog posts, emails, READMEs, docs, landing-page copy, essays, social posts, product descriptions, cover letters — and especially when the user asks to make text "sound human", "less AI", "less corporate", "punchier", or to "clean up" a draft. Run it before delivering any nontrivial piece of writing, even if the user didn't explicitly ask, because AI tells creep in by default and the fix is cheap.
How to install deslop?
To install deslop: create the skills directory (mkdir -p .claude/skills), then run: mkdir -p .claude/skills && curl -o .claude/skills/deslop.md https://raw.githubusercontent.com/ozdemircili/deslop/main/SKILL.md. Finally, /deslop in Claude Code.
What is deslop best for?
deslop is a skill categorized under General. Created by ozdemircili.