Skip to content

Repository files navigation

Zero Slop

MIT tests dependencies privacy version Listed in the HOL plugin registry Listed in awesome-ai-plugins This README scores 12.0 out of 100 on the slop score, inside the human range

Less slop, more pop in your writing.

Zero Slop finds stock phrasing, mechanical rhythm, vague claims, and canned formatting, then gives your AI assistant or agent harness an editing workflow on guardrails. Its MIT-licensed local checks run offline; your existing AI assistant or harness does the editing. Score a draft at zero-slop.ai/try; benchmark at zero-slop.ai.

npx zero-slop install

Scoring a launch post at 100.0, rewriting it to 9.5, with the 40% figure held by the fact gate

What it does, on a real draft

A launch post, as AI wrote it:

We're thrilled to announce that our team has leveraged cutting-edge AI to deliver a seamless onboarding experience. It's not just a redesign, it's a fundamental reimagining of how users engage with our platform. In today's fast-paced landscape, the ability to iterate quickly is crucial. By harnessing the power of machine learning, we've been able to reduce setup time by 40%. Here's the thing nobody tells you: onboarding is where most products lose their users. We're excited to continue this journey with you.

slopscore.py --explain on that paragraph, unedited:

Writing score: 100.0/100  [major rewrite]
  Flagged phrases : 11 across 83 words
  Sentence variety: too even
  Main issues     : canned LinkedIn phrase, promotional language, manufactured
                    stakes, two-part contrast used as a formula, performed
                    writer's voice, buzzword used as promotion

  Flagged phrases (11), strongest first:
    "In today's fast-paced"  manufactured stakes; start where the reader needs to start
    "We're thrilled to"      canned LinkedIn phrase; say what happened without the stock opening
    "It's not just a redesign, it's"
                             two-part contrast used as a formula; state the claim once, plainly
    "Here's the thing"       performed writer's voice; say the thing plainly
    'cutting-edge'           promotional language; name what it does; cut the adjectives
    'leveraged'              buzzword used as promotion; use the plain word

The rewrite, limited to the draft's stated claims:

We used machine learning to reduce onboarding setup time by 40%.

Writing score: 9.5/100  [clear]
  Flagged phrases : 0 across 10 words

Problem

AI-assisted writing often converges on the same constructions: "It's not X. It's Y." "Here's the thing nobody tells you." One emdash is fine. Multiple emdashes, definitely slop. The same effect can come from repetition in the wording or the structure. Mechanical rhythm and overworked formatting can do it too.

Zero Slop is an Agent Skill and ships no model. Claude, GPT, or another compatible model edits; local tools check names, numbers, quotations, links, code, tables, and paths. Your AI compares meaning because matching words cannot catch every changed claim. It runs in any harness that reads SKILL.md.

How to install Zero Slop

Paste this into Claude Code, Codex, Cursor, OpenCode, Warp, or Zed:

Install the Zero Slop skill globally from https://github.com/manavmishra/ZeroSlop

Or install it with npx:

npx skills add manavmishra/ZeroSlop --global

Or from the registry, which also installs the scorer as a command. Zero Slop is listed in awesome-ai-plugins and carries a public profile in the HOL plugin registry, where its trust score and scanner results are published:

npx zero-slop install          # add --harness codex|cursor|opencode|zed
npx zero-slop score draft.md   # score without installing anything

ChatGPT users can download dist/zero-slop-single-file.md. Claude.ai users can upload the latest release ZIP. npx skills update zero-slop --global updates a skills CLI installation later.

How to use Zero Slop

/zero-slop (your writing)

You get the edited draft, before-and-after scores, and quoted flagged phrases. /zero-slop inspect (your writing) reviews without rewriting. For a folder, slopscore.py --batch drafts/ --gate 25 fails above the threshold.

Show your score

The badge above is this README's own, from npx zero-slop score README.md. Put yours up the same way:

[![Slop score](https://img.shields.io/badge/slop%20score-12.0%2F100-0f7d55)](https://zero-slop.ai/try/)

Colours are the scorer's bands: 0f7d55 under 25, b8860b under 60, b0502c above.

The slop that Zero Slop catches

290 weighted patterns and a 96-term lexicon, including:

  1. Binary contrasts: "It's not X. It's Y."
  2. Throat-clearing openers: "Here's the thing," "Let me be clear"
  3. Faux-insight setups: "What nobody tells you," "The part everyone misses"
  4. Colon reveals: "The best part: it learns."
  5. Dramatic fragments: "That's it. That's the whole thing."
  6. Superficial analysis: "highlighting the team's commitment to innovation"
  7. Importance puffery: "marks a pivotal moment," "a testament to"
  8. Weasel attribution: "experts agree," "studies show"
  9. Synonym cycling: the agent, the assistant, the tool, all one thing.
  10. Marketing riders: "robust" and "leverage" score only beside a marketing trigger, so a runbook stays quiet.

A reading pass covers document-wide problems: repeated shapes, crowded statistics, and paragraphs that shuffle without loss. references/eval.md has all 80 checks.

Human writing scored 9 to 21 in data/corpus/must-not-flag/; unedited AI drafts averaged 77 across bench/examples.json.

How it works

Eight editorial roles, a private learning loop, and a separate release review

Eight roles form one workflow. Each is a job rather than a service, run as its own pass so nothing grades its own output. The research supports the checks, not the number eight, which is an engineering choice.

Role Who does it What happens
1. Scorer Local tools Finds the exact phrases behind the writing score, then checks pacing and readability. It also catches overworked formatting.
2. Interpreter Your AI assistant Reads the claims, purpose, audience, structure, and voice before changing anything.
3. Rewriter Your AI assistant Removes stock language and rebuilds order, rhythm, and tone without inventing detail.
4. Fact gate Local tools Rejects any version that changes names, numbers, quotations, links, code, tables, paths, or structure.
5. Copy desk Fresh AI pass Corrects grammar, spelling, usage, and consistency in the actual deliverable.
6. Read-aloud editor Fresh AI pass Fixes stumbles, repetition, weak transitions, and awkward flow.
7. Verifier Local tools and your AI assistant Compares text with source for facts, meaning, qualifiers, voice, format, structure.
8. Fresh-eyes finalizer Fresh AI pass Reads the verified text as a first-time reader, applying only safe polish. Any final polish restarts the final checks; the same text must return unchanged before release.

Studies find predictable wording and overused vocabulary in machine text, and authorship detectors can misclassify non-native English. Local tools use only Python's standard library.

Private learning from your edits

Learning starts only when you provide the original output and your edited version. Zero Slop does not monitor files, browsers, or publishing tools.

Private data stays under $ZERO_SLOP_HOME.

This human-in-the-loop learning never retrains the model. A profile selected by name can exempt existing watchlist words; it does not learn cadence, tone, or a complete style.

What's inside

SKILL.md has the workflow and references/eval.md the 80 checks. scripts/slopscore.py is the meter and fact gate, with scripts/register.py running the reading pass. bench/README.md documents every benchmark with its limits. zero-slop.ai has the same reference as browsable pages, plus the benchmark in full.

Testing and limits

Against other tools, same model, same drafts

The saved replay ran Zero Slop, avoid-ai-writing, no-ai-slop and humanizer on the same 18 drafts, each with GPT-5.4, high reasoning, batches of three, and pinned instructions. The Zero Slop outputs came from v2.5.9; later releases rescore those frozen outputs but do not pretend to have regenerated them.

Method Mean writing score ↓ Passed Zero Slop's local gates Source check passed Average length change
Original drafts 76.3 0/18
Zero Slop 12.8 18/18 18/18 -8.9%
avoid-ai-writing 23.3 15/18 18/18 -14.6%
no-ai-slop 28.4 12/18 17/18 -13.7%
humanizer 35.4 9/18 17/18 -7.2%

Fresh same-model editing replay on 18 drafts

Method-hidden editorial preference on 18 drafts

Cross-checks the tools didn't build: the AIStoryHub checker's clean rates, and a method-hidden quality ranking.

External checker clean rates per method

Method-hidden quality ranking, lower is better

This is a small LLM-reviewed regression study. It measures neither field accuracy nor a universal ranking. Drafts, mappings, verdicts, hashes, version records, and limits are in bench/README.md. The separate method-hidden two-way replay used Zero Slop v2.6.0 and is preserved in bench/incumbent-blind-replay/.

For the 38-item editorial panel, the current scorer matched the prior 84.2% result. All frozen scores stayed unchanged, all 18 human controls remained below the gate, and all 18 obvious search cases remained above it. These fixed-sample checks are not proof of general accuracy. We recorded 6.51% higher median throughput across 12 interleaved local runs; treat that as machine noise, not a speed claim.

Speed

On one busy Apple silicon Mac: 1,000 documents in 3.2233 seconds (310.2 per second), a 15,201-word document in 0.4757 seconds, the slowest stress case in 3.3487 seconds, and an 8,000-word learning pass in 0.2284 seconds. Editing time is excluded; expect different results on other machines and loads.

Current models

The pinned RAID+ sample yielded 7,627 usable generations:

Model Texts scored Mean writing score ↓ At or above 25
DeepSeek V3 1,995 14.5 10.1%
Gemini 3.1 Pro 1,998 17.0 18.2%
Gemma 3 27B 1,634 21.6 30.4%
Llama 3.3 70B 2,000 25.5 41.7%

RAID+ labels capture which model produced a text, not how well it reads. In Beemo, raw responses averaged 30.2, expert edits 25.3, human answers 20.0. Neither dataset has quality labels.

Where Zero Slop came from

Zero Slop builds on work by no-ai-slop, humanizer, de-slop, stop-slop, unslop-text, and avoid-ai-writing. It adds a writing score, source protection, separate editorial passes, private learning, portfolio analysis, and release tests.

Documented capabilities at pinned repository versions

The chart records which features each project documents. It says nothing about writing quality and is not a claim about which tool writes better. Reproduce by using these tests:

python3 tests/test_all.py
python3 scripts/calibrate.py --selftest
python3 scripts/register.py --selftest
python3 bench/make_charts.py --check

License

MIT

About

An open-source skill that finds AI slop in your writing and strips it out without changing the facts, scoring the draft before and after.

Topics

Resources

Security policy

Stars

24 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages