Deslop
Skill ozdemircili/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.From its SKILL.md
npx -y skills add ozdemircili/deslopAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
5.7 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it
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:
python scripts/slopcheck.py path/to/draft.mdIt prints each hit (category, severity, the matched text, a fix note) and a slop score = weighted tells per 1,000 words. Use
--jsonfor structured output,--min-severity mediumto 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.
What ships with it: 3 files
17.5 KB alongside SKILL.md, 1 of them executable
- README.md4.0 KB
- slopcheck.pyruns8.1 KB
- tells.md5.4 KB