unslop skill
A skill that finds AI tells in English prose and edits them surgically; three Python scanners run on their own and the teach command learns your voice
- 551 ★ on the repository
- Last commit
Minimal access
Why this level
- The skill reads and edits the texts you hand it
- The Python scanners run locally and send no data anywhere
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add skills/unslopDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewMinimal accessThe tool runs nothing and makes no network calls.
- The skill reads and edits the texts you hand it
- The Python scanners run locally and send no data anywhere
This is third-party code. Review the repository files before installing.
What it does
unslop checks English text for AI tells and edits them while keeping meaning and voice. It works through four commands. /unslop cleanup only flags findings as suggestions and changes nothing. /unslop rewrite diagnoses a draft and rebuilds it under guard rules, the default mode. /unslop teach builds a reusable voice from your writing samples, and /unslop mimic drafts or rewrites in that voice. Detection rests on three deterministic scanners in plain Python 3.8+ with no third-party dependencies. The phrase layer catches clichés such as throat-clearing openers and empty intensifiers, fires only in context and masks quotes and code blocks. The structure layer measures rhythm: uniform sentence length, staccato lines, moralizing codas. The silhouette layer scores how paragraphs are arranged and whether opening vocabulary returns at the end. The scanners emit JSON and exit non-zero on a flag, so you can wire them into CI or a pre-publish check. The author warns that a clean scan does not prove who wrote a text.
Who it is for. For writers, editors and content marketers who draft in English with AI help and want to remove formulaic phrasing before publishing.
Good fit when
- An English ChatGPT draft sounds formulaic and needs a targeted review with suggested edits
- You want to check blog posts in a repository from CI with scanners that set an exit code
- You want text in your own voice: teach from samples first, then mimic
- You need to check a longread for moralizing codas, staccato rhythm and identical paragraph openers
- Social or docs copy gets checked with the genre flag --genre social or --genre docs
Not a fit when
- The text is in Russian or another language: the skill is English only and gives cheap detection and a clear decline otherwise
- You need a guarantee the text will not be flagged as AI: the author states there are none
- You need fact changes or a house style: the skill preserves meaning and facts and does not fact-check
- You need rules for another language: Russian-language sets are listed in the pairs below
Example request
/unslop cleanup draft.md — flag the AI tells in this English draft and change nothingLimitations
English text only. The author calls the latest independent public benchmark result a no-ship: the skill clearly improved recall and repair over a plain model but did not clear the bar for precision, damage and whole-document safety. The scanners suggest candidates and the agent checks each use in context. There is no LICENSE file in the tree; MIT is stated in SKILL.md and the README.
How to disable. Delete the unslop link or folder from ~/.claude/skills (and ~/.claude/commands/unslop.md if you wired a command). For an npx install, delete the skill folder from the agent's directory.
FAQ
How do I install unslop in Claude Code?
With npx skills add theclaymethod/unslop -g -a claude-code. For several agents add the flags -a cursor and -a codex, and --list shows the skills. Manually: clone the repository and link it into ~/.claude/skills/unslop.
How is cleanup different from rewrite?
Cleanup only flags AI tells as suggestions and changes nothing itself. Rewrite diagnoses a draft and rebuilds it under guard rules that preserve meaning.
Can I run the scanners without an agent?
Yes. The scripts in the scripts folder run on Python 3.8+ with no third-party packages: banned_phrase_scan.py, structure_scan.py and silhouette_scan.py. They print JSON and exit non-zero on a flag.
What does the teach command give me?
The agent gathers your writing samples, you approve the selection, and the skill builds a voice profile and a layered card with a scored demo. Then mimic writes in that voice under the same gates.
Which languages does unslop support?
English only. For text in another language the scanners return non_english: true and stop, and the skill declines politely.
Discussion
No questions or reviews yet.
Related
SkillsA skill that finds AI writing tells, rewrites the text in a chosen voice, and optionally scores it from 0 to 100
Avoid AI Writing
avoid-ai-writing
A skill that finds typical machine-writing patterns in text and rewrites them, with detect-only and edit-in-place modes
A de-AI writing skill: it repairs the narrative architecture of fiction and edits professional documents by their venue rules
A skill that edits English drafts: strips AI boilerplate, keeps the author's voice, and can also just list what it found without rewriting
A skill that strips AI writing tells from text using Wikipedia's list, without adding invented facts
An editor for AI-written Russian text: removes bureaucratese, cliches and 38 AI patterns while keeping facts intact
Comparison with similar tools
Entries that share the main search query, and how they differ.
| Entry | Official | Repository stars | Main difference |
|---|---|---|---|
| unslop (this entry) | no | 551 | |
| Stop Slop | no | 18,197 | a short skill with strict rules for cleaning English prose, with no scanners or voice mode |
| Humanizer | no | 58,899 | removes AI tells from the Wikipedia list without adding facts, with no separate scanners |
| Humanizer RU | no | 190 | edits Russian text, while unslop handles English only |
README in short
The page opens with the four commands and a plain statement of what counts as proof: a set of benchmark metrics split into core, voice and engineering scoreboards. Installation, the three scanner layers in detail and a list of tell families with examples follow. Near the end it says only English works, and it closes with requirements: Python 3.8+ and the MIT license.
README badge
Original SKILL.md
--- name: unslop description: Remove AI writing patterns from prose using either audit-only detection or a two-pass rewrite flow (diagnosis then reconstruction). Use this skill when editing, reviewing, or rewriting AI-generated content to make it sound human. Triggers on requests to "humanize", "de-slop", "fix AI text", "make it sound human", "remove AI patterns", or when reviewing text that contains obvious AI tells like "Here's the thing:", "Let that sink in", or "In today's fast-paced landscape". Also use when the user pastes text and says it "sounds like ChatGPT", "sounds robotic", "needs to sound more natural", or asks you to "clean up" drafted content before publishing. license: MIT user-invocable: true argument-hint: "[teach · cleanup · rewrite · mimic] [input]" metadata: author: claytonkim version: "2.3.0" --- # Unslop Humanize AI-generated prose. Audit first. Rewrite only when the user asks for a rewrite. For every audit or rewrite, read [references/core-contract.md](references/core-contract.md). It is the single behavior contract. Command files define routing and mechanics; presets supply optional voice, but neither can override the core contract. ## Routing **When the user invokes a sub-command (`/unslop teach ...`, `/unslop cleanup ...`), you MUST read `references/commands/<command>.md` before acting. Non-optional — the command file defines the flow, and skipping it drops steps the user expects.** A bare `/unslop <text>` with no leading command word defaults to `rewrite`. If the first word does not match a command but the intent clearly maps to one (e.g. "flag the AI tells, don't change anything" → `cleanup` report-only), load that command file and proceed as if invoked. | Command | Purpose | File | |---------|---------|------| | `rewrite` | Default two-pass de-slop: diagnose, reconstruct under the guards, validate. | [references/commands/rewrite.md](references/commands/rewrite.md) | | `cleanup` | Co-writer: cheap detection, reviewable suggestions with contract gates; includes report-only "flag, change nothing". | [references/commands/cleanup.md](references/commands/cleanup.md) | | `teach` | Agent-driven voice building: harvest, approve, profile, layered card, scored demo. | [references/commands/teach.md](references/commands/teach.md) | | `mimic` | Voiced drafting or rewriting under the full gates; refine loop when one pass falls short. | [references/commands/mimic.md](references/commands/mimic.md) | | _maintenance_ | Turn a wild AI-ism into an eval row and a PR (not a top-level verb). | [references/commands/contribute.md](references/commands/contribute.md) | ### Routing by phrase Sub-flows are reachable by their natural names without being top-level verbs. When the user says any of these, load the named file and jump to the flow: | The user says | Go to | |---------------|-------| | `audit` / "just flag it" / "don't change anything" | [references/commands/cleanup.md](references/commands/cleanup.md#report-only) |