![]()
slop-chop¶
Chop the slop.
Emails. Resumes. Blog posts. Docs. LinkedIn. READMEs.
Paste text that sounds like a bot, get back text that sounds like you. Em-dashes, buzzwords, stock phrases, and the newer tells models switched to once everyone learned the old ones: the double hyphen, the "The best part?" reveal, emoji bullets. All chopped in one pass, right in your browser. Plug in a model when you want a deeper rewrite.
Paired with your AI, it is the rails. It runs after the model to catch what drifted, gates a build on the score, and bosses the agent into cleaning its own work to your standard, not its whim.
The density of AI-writing tells, with sentence shapes counted double, plus hedging, the on-the-one-hand register, sentences that keep closing on an -ing clause, a sentence rhythm that never varies, and the evidence a long document accumulates that a rate on its own would dilute. High means many machine-writing patterns, not proof of authorship.
- Tells
- Words
- Density
- Evidence
- Rhythm
Rules
Spelling dialect
Presets
Your voice
Your rules
Model rewrite
brew install dcadolph/tap/slop-chop
How it works¶
--max to gate a build."Can't my AI just do this?"¶
A model has the brains for it. Point one at your draft and it will spot the buzzwords and fix a clumsy line better than any fixed list can. What it will not do is behave the same way twice. It cuts a phrase on this run and keeps it on the next, forgets half your rules by the third paragraph, and nudges your meaning while you look away. Ask the model that wrote the slop to take it back out and you get the same model guessing a second time. Nothing to pin down, nothing to diff.
slop-chop is a fixed list, not a mood. The same text gives the same result every run, with or without a model in the loop. On its own it is a deterministic clean that costs nothing. Paired with your AI it becomes the rails: it runs after the model to catch what drifted, gates a build on the score, and bosses the agent into cleaning its own work to your standard, not its whim. You keep the model's brains and add the bumpers that hold it honest.
There is a second problem a model cannot solve for you. Every tell that gets famous gets trained away, and the writing simply moves somewhere else. The em-dash gave way to a double hyphen. "Delve" gave way to "crucial" and "vibrant". The stock opener became the fragment reveal, "The best part?", and the bold-label bullet list. A list only works if someone keeps watching what changed. That is the work here, and the benchmark in the repo is the receipt.
Why slop-chop¶
-
Deterministic and free
No model, no cost, and the exact same output every run, predictable enough to diff in review and trust in a pipeline. It knows markdown, so code, links, and front matter pass through untouched.
-
Drop it in CI
checkfails a pull request when it finds slop, andfixcan push the cleanup straight back to the branch. A ready-made GitHub Action wires both into your pipeline in a few lines. -
Claude Code plugin
The repo is its own marketplace. Install the plugin for a
slop-chopskill and a/slop-chopcommand, so the assistant runs the tool and cleans its own output for you. -
Reads like you
Profiles and presets say what to cut and what to put in its place. Bring your own keep, prefer, and avoid lists so the result sounds like you, not a chatbot.
-
Tuned for today's models
Models trained away "delve" and the em-dash, then picked up new habits: the double hyphen, the "The best part?" reveal, bold-label bullets, emoji headings. The default profile tracks what models write now, with 161 buzzwords, 46 stock phrases, and 61 sentence shapes.
-
Measured, not guessed
The engine ships with a labeled corpus of AI, human, and technical passages. AI text averages 85 of 100 on the slop score, human text 2, and technical prose raises no false flags. The benchmark runs with the tests, fails on any regression, and its numbers, methods, and limits are documented. And the tool eats its own cooking: every guide on this site passes slop-chop's own check in CI. This front page is the one exception, since its demo text is slop on purpose.
Install it anywhere¶
The same engine, wherever you write. Everything is local and free unless noted.
-
This page
The web app above. Nothing to install, nothing leaves the browser.
-
Command line
brew install dcadolph/tap/slop-chop, orgo install github.com/dcadolph/slop-chop@latest. -
Claude Code
/plugin marketplace add dcadolph/slop-chop, then/plugin install slop-chop@slop-chop. See Claude plugin. -
Claude Desktop, Cursor, any MCP client
slop-chop mcpserves chop and check as tools, over stdio and local. See MCP server. -
CI and automation
The GitHub Action, Raycast, macOS, and pre-commit. See integrations.
-
VS Code, Cursor, VSCodium
Search slop-chop on Open VSX.
-
JetBrains and LSP editors
The JetBrains Marketplace plugin, or
slop-chop lspfor Neovim, Helix, and the rest. See Editor (LSP). -
Obsidian
Search slop-chop in Settings, Community plugins.
-
Node
npm install slop-chop-wasm.
Start here¶
-
Install and clean your first file in a couple of minutes.
-
Every field, the presets, the spelling dialects, and the allow list.
-
How the rules pass works under the hood.
-
The full catalog of what gets chopped or flagged, and why.
-
Install, the skill, the command, backends, and troubleshooting.