zero-slop 2.12.1 → 2.12.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,46 +1,19 @@
1
- <p align="center">
2
- <a href="https://zero-slop.ai">
3
- <picture>
4
- <source media="(prefers-color-scheme: dark)" srcset="assets/logo/zero-slop-logo-reversed.svg">
5
- <img src="assets/logo/zero-slop-logo-primary.svg" width="360" alt="Zero Slop">
6
- </picture>
7
- </a>
8
- </p>
9
-
10
- Zero Slop is installed about 1,600 times a week on npm.
11
-
12
- <p align="center"><strong>Find AI-sounding tells and slop in your writing.</strong></p>
13
-
14
- <p align="center">
15
- Zero Slop finds slop- stock phrasing, mechanical rhythm, vague claims, and canned formatting in writing.<br>
16
- Your existing AI assistant edits the draft; local checks guard its names, numbers, links, quotations, code, tables, and paths.
17
- </p>
18
-
19
- <p align="center">
20
- <a href="https://zero-slop.ai/try/"><strong>Try it in your browser</strong></a>
21
- ·
22
- <a href="#install">Install the skill</a>
23
- ·
24
- <a href="#evidence-and-limits">See the evidence</a>
25
- ·
26
- <a href="https://github.com/manavmishra/ZeroSlop/releases/latest">Latest release</a>
27
- ·
28
- <a href="https://zero-slop.ai/brand/">Brand assets</a>
29
- </p>
30
-
31
- <p align="center">
32
- <a href="https://github.com/manavmishra/ZeroSlop/actions/workflows/validate.yml"><img alt="Validate" src="https://github.com/manavmishra/ZeroSlop/actions/workflows/validate.yml/badge.svg"></a>
33
- <img alt="Version 2.12.1" src="https://img.shields.io/badge/version-2.12.1-72528F?color=C15732">
34
- <a href="https://www.npmjs.com/package/zero-slop"><img alt="npm version" src="https://img.shields.io/npm/v/zero-slop?color=C15732"></a>
35
- <a href="https://www.npmjs.com/package/zero-slop"><img alt="npm downloads" src="https://img.shields.io/npm/dm/zero-slop?color=17634F"></a>
36
- <a href="https://github.com/manavmishra/ZeroSlop/stargazers"><img alt="GitHub stars" src="https://img.shields.io/github/stars/manavmishra/ZeroSlop?style=flat&color=C15732"></a>
37
- <a href="LICENSE"><img alt="MIT license" src="https://img.shields.io/badge/license-MIT-141412"></a>
38
- <a href="https://hol.org/registry/plugins/manav-mishra%2Fzero-slop"><img alt="Listed in the HOL plugin registry" src="https://img.shields.io/badge/HOL%20registry-listed-2C6E8F"></a>
39
- </p>
1
+ <picture>
2
+ <source media="(prefers-color-scheme: dark)" srcset="assets/logo/zero-slop-logo-reversed.svg">
3
+ <img src="assets/logo/zero-slop-logo-primary.svg" width="180" alt="Zero Slop">
4
+ </picture>
40
5
 
41
- ```sh
42
- npx skills add manavmishra/ZeroSlop --global
43
- ```
6
+ # Zero Slop
7
+
8
+ Find the canned phrases in an AI-assisted draft, then edit them without losing what you meant to say.
9
+
10
+ Zero Slop is a free, open-source agent skill. Your AI assistant reads and edits the writing; local tools score the result and check names, numbers, links, quotations, code, tables, and paths against the original. [Try it in your browser](https://zero-slop.ai/try/) or [install the skill](#quick-start).
11
+
12
+ <img alt="Version 2.12.4" src="https://img.shields.io/badge/version-2.12.4-72528F?color=C15732">
13
+
14
+ ## Problem
15
+
16
+ AI can give you a grammatically clean draft that still sounds like everybody else's: the same opening, the same tidy contrasts, the same closing thought. Asking for a rewrite can make things worse if the assistant quietly changes a number or smooths away your point. Zero Slop gives it an editing brief and checks the details afterward. A writing score helps you spot familiar patterns, but it cannot tell who wrote the text.
44
17
 
45
18
  <a href="assets/zero-slop-demo.mp4?v=dark-shell-restored-20260906">
46
19
  <picture>
@@ -50,18 +23,16 @@ npx skills add manavmishra/ZeroSlop --global
50
23
  </picture>
51
24
  </a>
52
25
 
26
+ ## See an edit
53
27
 
54
-
55
- ## Before and after
56
-
57
- A launch post, as AI wrote it:
28
+ Here is a short launch draft:
58
29
 
59
30
  > We're thrilled to announce that our team has leveraged cutting-edge machine learning to deliver a seamless onboarding experience, reducing setup time by 40%.
60
31
 
61
- The scorer rates that draft 99.3/100 and flags four phrases: “We're thrilled
32
+ The local scorer gives it 99.3/100. Lower is better. It flags “We're thrilled
62
33
  to,” “leveraged,” “cutting-edge,” and “seamless.”
63
34
 
64
- The rewrite, limited to the draft's stated claims:
35
+ An edit that keeps the stated result:
65
36
 
66
37
  > We used machine learning to reduce onboarding setup time by 40%.
67
38
 
@@ -70,71 +41,61 @@ Writing score: 9.5/100 [clear]
70
41
  Flagged phrases : 0 across 10 words
71
42
  ```
72
43
 
73
- The rewrite retains the draft's stated result. See four complete, reproducible pairs in [`examples/`](examples/).
74
-
75
- Use it for launch posts, changelogs, emails, research summaries, or batch checks.
76
- Scores describe writing patterns, not authorship.
44
+ The result still claims a 40% reduction in setup time. See four complete pairs in [`examples/`](examples/).
77
45
 
78
- ## Install
46
+ Use it on launch posts, changelogs, emails, or research summaries. You can score drafts without editing.
79
47
 
80
- [Try the free browser editor](https://zero-slop.ai/try/), or install:
48
+ ## Quick start
81
49
 
82
- | Environment | Fastest route |
83
- |---|---|
84
- | Claude Code, Codex, Cursor, OpenCode, Warp, Zed | `npx skills add manavmishra/ZeroSlop --global` |
85
- | Gemini CLI | `gemini extensions install https://github.com/manavmishra/ZeroSlop --auto-update` |
86
- | Claude Code plugin | `/plugin marketplace add manavmishra/ZeroSlop`, then `/plugin install zero-slop@zero-slop` |
87
- | Any assistant with file uploads | Download the [single-file bundle](https://github.com/manavmishra/ZeroSlop/releases/latest/download/zero-slop-single-file.md) |
88
- | Claude.ai | Upload the [latest skill ZIP](https://github.com/manavmishra/ZeroSlop/releases/latest/download/zero-slop.zip) |
89
- | ChatGPT, Claude, Grok, Gemini, Cursor, or another MCP client | Connect the optional [hosted MCP server](mcp/README.md) |
50
+ Install it in an assistant that supports skills:
90
51
 
91
- Ask your assistant to edit:
52
+ ```sh
53
+ npx skills add manavmishra/ZeroSlop --global
54
+ ```
92
55
 
93
56
  ```text
94
57
  /zero-slop (your writing)
95
58
  ```
96
59
 
97
- Inspect without editing:
60
+ To find problems without rewriting, use `/zero-slop inspect (your writing)`. You can also [try the browser editor](https://zero-slop.ai/try/) before installing anything.
98
61
 
99
- ```text
100
- /zero-slop inspect (your writing)
101
- ```
62
+ ### Other ways to install
102
63
 
103
- Score locally:
64
+ The `npx skills add` command works with Claude Code and Codex; [other compatible clients](DISTRIBUTION.md) have install notes. Gemini CLI users can run `gemini extensions install https://github.com/manavmishra/ZeroSlop --auto-update`. For Claude.ai, upload the [skill ZIP](https://github.com/manavmishra/ZeroSlop/releases/latest/download/zero-slop.zip); for file-upload assistants, use the [single-file bundle](https://github.com/manavmishra/ZeroSlop/releases/latest/download/zero-slop-single-file.md).
65
+
66
+ For a local score without a model call:
104
67
 
105
68
  ```sh
106
69
  npx zero-slop score draft.md
107
70
  ```
108
71
 
109
- From a cloned checkout, gate a folder:
72
+ From a cloned checkout, check a folder against the review threshold of 25:
110
73
 
111
74
  ```sh
112
75
  python3 scripts/slopscore.py --batch drafts/ --gate 25
113
76
  ```
114
77
 
115
- Installed checks run locally. Skill editing follows your assistant's privacy settings; [MCP editing is remote](mcp/README.md).
78
+ Installed checks run locally; editing through the skill follows your assistant's privacy settings. The [hosted MCP service](mcp/README.md) and browser editor process drafts remotely with Workers AI.
116
79
 
117
- ### Hosted MCP
80
+ For an MCP client, use this endpoint:
118
81
 
119
82
  ```text
120
83
  https://mcp.zero-slop.ai/mcp
121
84
  ```
122
85
 
123
- [Connection options and listing status](DISTRIBUTION.md).
86
+ The MCP connection options are in [`mcp/README.md`](mcp/README.md).
124
87
 
125
- ## CLI
88
+ ## Edit from the command line
126
89
 
127
- Edit a file through MCP:
90
+ The CLI sends a file to the hosted editor without changing the file on disk:
128
91
 
129
92
  ```sh
130
- npx --yes zero-slop@2.12.1 deslop draft.md --genre professional
93
+ npx --yes zero-slop@2.12.4 deslop draft.md --genre professional
131
94
  ```
132
95
 
133
- Use `-` for stdin and `--json` for structured output. `--require-approved` exits nonzero
134
- when review is needed; the result is still printed. Files stay unchanged. Node.js 22+;
135
- offline `score` also needs Python 3. [CLI reference and privacy](docs/cli.md).
96
+ Use `-` for stdin and `--json` for structured output. `--require-approved` prints the result but exits nonzero when review is needed. Requires Node.js 22+; offline `score` also needs Python 3. [CLI options and privacy](docs/cli.md).
136
97
 
137
- ## REST API
98
+ ## Call the REST API
138
99
 
139
100
  ```sh
140
101
  curl --fail-with-body --max-time 75 https://mcp.zero-slop.ai/v1/deslop \
@@ -142,50 +103,34 @@ curl --fail-with-body --max-time 75 https://mcp.zero-slop.ai/v1/deslop \
142
103
  --data '{"text":"Maya owns the pricing review.","genre":"professional"}'
143
104
  ```
144
105
 
145
- Same pipeline and result as MCP. Check `status` before using the edit. Free, shared
146
- capacity; up to 20,000 Unicode code points per draft after trimming. Hosted CLI
147
- editing and REST process drafts remotely without storing them.
148
-
149
- [API reference](docs/rest-api.md) · [OpenAPI contract](https://mcp.zero-slop.ai/openapi.json)
106
+ REST returns the same result as MCP. Check `status` before using an edit. Shared free capacity accepts up to 20,000 Unicode code points after trimming. [API reference](docs/rest-api.md) · [OpenAPI contract](https://mcp.zero-slop.ai/openapi.json)
150
107
 
151
- ## What the workflow adds
108
+ ## What it does
152
109
 
153
- | A prompt alone | Zero Slop |
154
- |---|---|
155
- | “Make this sound human” leaves the target vague. | A 0–100 meter points to exact phrases and structural problems. |
156
- | One rewrite can quietly alter source details. | A local fact gate checks protected strings before the edit is returned. |
157
- | The model tends to overcorrect into fragments or forced casualness. | An overcorrection pass checks readability, rhythm, grammar, and voice. |
158
- | Each session starts from scratch. | Optional, reason-labelled preferences can be learned privately. |
110
+ The installed skill ships no model. Your AI assistant, whether Claude, GPT, or another compatible model, reads and edits the draft. The skill supplies the workflow and local tools: a 0 to 100 writing score, source-detail checks, and a final comparison with the original.
159
111
 
160
- Zero Slop ships no model. Your AI assistant reads and edits the draft in context,
161
- using Claude, GPT, or another compatible model. The repository supplies the
162
- workflow and local tools for scoring and source checks.
112
+ Use the score to locate passages worth reviewing. Optional private learning records reason-labelled corrections you provide; it does not learn a complete writing style.
163
113
 
164
114
  ## What it catches
165
115
 
166
- The scorer combines 294 weighted patterns with a 96-term lexicon. Examples include:
116
+ The scorer uses 294 weighted patterns and a 96-term lexicon. It checks for:
167
117
 
168
118
  - binary contrast formulas: “It's not X. It's Y.”
169
119
  - canned openers: “We're thrilled to…” and “Here's the thing…”
170
120
  - vague attribution: “experts agree” and “studies show”
171
121
  - significance inflation: “marks a pivotal moment” and “a testament to”
172
- - promotional riders: “robust,” “seamless,” and “leverage” when used as hype
122
+ - promotional wording: “robust,” “seamless,” and “leverage” when used as hype
173
123
  - repeated sentence shapes, crowded statistics, and overworked formatting
174
124
 
175
- Marketing terms are scored in context, so an ordinary technical use of a word need not trigger the same penalty. [`references/eval.md`](references/eval.md) documents all 80 checks.
125
+ Context matters: a technical use of “robust” need not trigger the same penalty as sales hype. [`references/eval.md`](references/eval.md) describes all 80 checks.
176
126
 
177
- Unedited AI drafts averaged 77 in [`bench/examples.json`](bench/examples.json).
178
- Human writing scored 9 to 21 in
179
- [`data/corpus/must-not-flag/`](data/corpus/must-not-flag/). These are reference
180
- points for the scorer, not authorship boundaries.
127
+ Unedited AI drafts averaged 77 in [`bench/examples.json`](bench/examples.json). Human writing scored 9 to 21 in [`data/corpus/must-not-flag/`](data/corpus/must-not-flag/). Use these to calibrate the scorer; they cannot establish authorship.
181
128
 
182
- ## How it works
129
+ ## The editing workflow
183
130
 
184
131
  ![Zero Slop's eight editorial responsibilities, private learning loop, and separate release review](assets/engine.svg)
185
132
 
186
- Eight responsibilities form one workflow. They are jobs, not separate models.
187
- Research supports the checks, not the number eight, which is an engineering
188
- choice.
133
+ Eight responsibilities form one workflow. Each stage is a job; several can share a model. Research informed the checks. We chose eight stages as an engineering convention.
189
134
 
190
135
  | Stage | Job |
191
136
  |---|---|
@@ -198,29 +143,19 @@ choice.
198
143
  | 7. Verifier | Compare the edit with the source for meaning, qualifiers, voice, and format. |
199
144
  | 8. Fresh-eyes finalizer | Apply only safe final polish, then run one last local check. |
200
145
 
201
- The free web editor combines the five AI responsibilities into one response and
202
- makes at most one live model call. A single response does not provide independent review.
203
- Any final change receives one final local recheck.
146
+ The free web editor combines five AI jobs in at most one live model call. This is not independent model review. Any final change receives one final local recheck.
204
147
 
205
- If repair fails, return the safest edit with a warning. No open-ended rewrite loop.
148
+ If repair fails, the editor returns the safest edit with a warning and stops there.
206
149
 
207
- ### Review the reader's side
150
+ ### Optional reader review
208
151
 
209
- Ask: **“Review this for backend engineers. Where would they stop reading?
210
- Don't rewrite it.”** Optional skim, passage reactions, and notes-only recall
211
- produce comments and revision strips. Simulations cannot establish human behavior;
212
- sequential review requires isolated contexts. The [workflow](references/reader-review.md)
213
- explains privacy, limits, and reporting. Hosted calls are unchanged.
214
-
215
- Inspired by [First Reader](bench/first-reader/), a review-only skill. Zero Slop
216
- also rewrites and checks source details. Neither has established human-reader
217
- accuracy; First Reader gets no invented rewrite score.
152
+ You can ask the skill where a particular audience might stop reading without requesting an edit. The [reader-review guide](references/reader-review.md) explains the limits: simulated reactions are not evidence of what real readers prefer. This optional mode adds no hosted model calls.
218
153
 
219
154
  ## Evidence and limits
220
155
 
221
- ### Same model, same 18 drafts
156
+ ### A saved, same-model editing test
222
157
 
223
- A saved replay ran Zero Slop and three comparable open-source instruction sets over the same drafts with GPT-5.4, high reasoning, and pinned instructions. The outputs are frozen and reproducible.
158
+ We ran Zero Slop and three open-source instruction sets on our AI Slop test corpus (18 samples), using GPT-5.4, high reasoning, and pinned instructions. Saved outputs are reproducible. The test partly uses Zero Slop's checks.
224
159
 
225
160
  | Method | Mean writing score ↓ | Passed local gates | Source check passed | Mean length change |
226
161
  |---|---:|---:|---:|---:|
@@ -230,16 +165,14 @@ A saved replay ran Zero Slop and three comparable open-source instruction sets o
230
165
  | no-ai-slop | 28.4 | 12/18 | 17/18 | -13.7% |
231
166
  | humanizer | 35.4 | 9/18 | 17/18 | -7.2% |
232
167
 
233
- ![Fresh same-model editing replay on 18 drafts, with lower scores better](assets/bench-search-rewrites.png)
168
+ ![Writing scores and local checks for a saved, same-model replay of the AI Slop test corpus; lower scores are better](assets/bench-search-rewrites.png)
234
169
 
235
- This small LLM-reviewed regression study measures repeatable behavior; it does not establish universal writing quality. The drafts, hashes, method versions, prompts, and limitations are in [`bench/README.md`](bench/README.md).
170
+ Zero Slop's saved rewrites cleared the listed checks. We have not shown that readers prefer them or that the result generalizes. Drafts, hashes, versions, prompts, and limitations are in [`bench/README.md`](bench/README.md).
236
171
 
237
- Zero Slop's frozen outputs came from v2.5.9; newer versions only rescore those
238
- saved outputs. The current scorer matched the prior 84.2% result on the fixed
239
- 38-item editorial panel. These fixed-sample checks are not field accuracy.
172
+ Zero Slop's outputs came from v2.5.9; newer versions only rescore them. The current scorer matched the prior 84.2% result on a fixed 38-item editorial panel. That is not field accuracy.
240
173
 
241
174
  <details>
242
- <summary>More validation</summary>
175
+ <summary>Other tests and their limits</summary>
243
176
 
244
177
  - A method-hidden editorial preference replay: [`bench/incumbent-blind-replay/`](bench/incumbent-blind-replay/)
245
178
  - External-checker clean rates: [`assets/bench-external-checker.png`](assets/bench-external-checker.png)
@@ -247,23 +180,11 @@ saved outputs. The current scorer matched the prior 84.2% result on the fixed
247
180
  - Current-model corpus measurements: [`assets/bench-raid-plus.png`](assets/bench-raid-plus.png)
248
181
  - Antithesis regression set: [`assets/bench-antithesis.png`](assets/bench-antithesis.png)
249
182
 
250
- On the 75 labelled antithesis pairs, the current reading pass reached 91.2% recall across the full set, 100% recall on shapes in reach, and 100% precision. The labels are maintainer-authored and the pairs are constructed, so this is a regression floor rather than field accuracy.
251
-
252
- Local speed measurements cover the checks, with editing time excluded. On one
253
- Apple silicon Mac, the scorer processed 1,000 documents in a median of 1.9929
254
- seconds (501.8 per second); the five runs ranged from 1.9614 to 2.0945 seconds.
255
- It scored a 15,201-word document in a median of 0.3223 seconds. The slowest
256
- stress case took 2.2932 seconds, and learning from an 8,000-word edit took
257
- 0.1592 seconds. The measurements and machine details are in
258
- [`bench/performance-results.json`](bench/performance-results.json).
183
+ On 75 labelled antithesis pairs, the reading pass reached 91.2% recall across the full set, 100% recall on shapes in reach, and 100% precision. We constructed and labelled them; this is a regression test, not field accuracy.
259
184
 
260
- Across 12 interleaved runs against 2.7.7, we measured 0.26% lower median throughput,
261
- within the 5% regression limit. Local timing, not an SLA. The two-way replay used
262
- Zero Slop v2.6.0.
185
+ Local timings exclude AI editing. On one Apple silicon Mac, the scorer checked 1,000 documents in a median 1.9929 seconds (501.8 per second). Across 12 interleaved runs against 2.7.7, it had 0.26% lower median throughput, within the 5% regression limit. The two-way replay used Zero Slop v2.6.0. [Machine and results](bench/performance-results.json). These timings are not a service-level guarantee.
263
186
 
264
- The [RAID+ audit](bench/raid-plus-corpus/README.md) checks how the scorer responds
265
- to output from different models. Its pinned sample contains 7,627 usable
266
- generations:
187
+ The [RAID+ audit](bench/raid-plus-corpus/README.md) asks a different question: how often does the scorer flag writing from different models? The pinned sample contains 7,627 usable generations:
267
188
 
268
189
  | Model | Texts scored | Mean writing score ↓ | At or above 25 |
269
190
  |---|---:|---:|---:|
@@ -272,31 +193,25 @@ generations:
272
193
  | Gemma 3 27B | 1,634 | 21.6 | 30.4% |
273
194
  | Llama 3.3 70B | 2,000 | 25.5 | 41.7% |
274
195
 
275
- RAID+ labels record which model produced each text; they do not grade writing
276
- quality. The [Beemo paired-edit audit](bench/beemo-corpus/README.md) checks how
277
- scores change after human editing: raw responses averaged 30.2, expert edits
278
- 25.3, and human answers 20.0. Beemo also lacks writing-quality labels.
196
+ RAID+ records which model wrote each passage, not whether it reads well. The [Beemo paired-edit audit](bench/beemo-corpus/README.md) asks how scores change after human editing: raw responses averaged 30.2, expert edits 25.3, and human answers 20.0. Beemo has no writing-quality labels either.
279
197
 
280
198
  </details>
281
199
 
282
- ### Documented capability audit
200
+ ### Documented features
283
201
 
284
202
  ![Documented capabilities at pinned repository versions](assets/competitor-capabilities.png)
285
203
 
286
- This chart says nothing about writing quality or which tool writes better. It
287
- records documented features at pinned commits; the data and reproduction notes
288
- are in [`bench/README.md`](bench/README.md).
204
+ The chart compares features documented at pinned commits. It does not measure how well any tool writes. See [`bench/README.md`](bench/README.md) for data and reproduction notes.
289
205
 
290
- The design follows research on [predictable wording in machine text](https://arxiv.org/abs/2301.11305) and [overused vocabulary](https://arxiv.org/abs/2406.07016). It deliberately avoids authorship claims because detectors can [misclassify non-native English](https://arxiv.org/abs/2304.02819).
206
+ The checks draw on research into [predictable machine wording](https://arxiv.org/abs/2301.11305) and [overused vocabulary](https://arxiv.org/abs/2406.07016). Zero Slop cannot identify an author: detectors can [misclassify non-native English](https://arxiv.org/abs/2304.02819).
291
207
 
292
208
  ## Private learning
293
209
 
294
- Learning begins only when you provide an original output and your reason-labelled edit. Zero Slop does not monitor files, browsers, or publishing tools. Private data stays under `$ZERO_SLOP_HOME`; it is not committed to this repository and does not retrain the model.
210
+ You decide whether to teach Zero Slop a preference. Give it an original output, your edited version, and the reason for the change. It does not watch your files, browser, or publishing tools. Private data stays under `$ZERO_SLOP_HOME`; it is not committed to this repository or used to retrain a model.
295
211
 
296
- A profile selected by name can exempt existing watchlist words. It does not
297
- learn cadence, tone, or a complete writing style.
212
+ A profile selected by name can exempt existing watchlist words. It does not learn your cadence, tone, or entire writing style.
298
213
 
299
- ## Repository map
214
+ ## Find the source
300
215
 
301
216
  | Path | Purpose |
302
217
  |---|---|
@@ -309,15 +224,15 @@ learn cadence, tone, or a complete writing style.
309
224
  | [`mcp/`](mcp/) | Optional hosted MCP server documentation |
310
225
  | [`DISTRIBUTION.md`](DISTRIBUTION.md) | Direct installs, marketplace submissions, and release synchronization |
311
226
 
312
- ## Contributing and support
227
+ ## Contribute or get help
313
228
 
314
- Bug reports, false positives, examples, and carefully tested pattern improvements are welcome. Read [`CONTRIBUTING.md`](CONTRIBUTING.md) before opening a pull request, use the structured [issue forms](https://github.com/manavmishra/ZeroSlop/issues/new/choose), or start a [Discussion](https://github.com/manavmishra/ZeroSlop/discussions).
229
+ Found a false positive, a broken check, or a better example? Use the [issue forms](https://github.com/manavmishra/ZeroSlop/issues/new/choose) or start a [Discussion](https://github.com/manavmishra/ZeroSlop/discussions). If you want to change a pattern, read [`CONTRIBUTING.md`](CONTRIBUTING.md) and include tests with your pull request.
315
230
 
316
- For setup help and responsible disclosure, see [`SUPPORT.md`](SUPPORT.md) and [`SECURITY.md`](SECURITY.md).
231
+ For setup help, see [`SUPPORT.md`](SUPPORT.md). Report security issues through [`SECURITY.md`](SECURITY.md).
317
232
 
318
233
  ## Credits
319
234
 
320
- Ideas from [First Reader](https://github.com/Shubhamsaboo/awesome-llm-apps/tree/f56f4febaac4eb869c2e98859e78612889913d3e/agent_skills/first-reader), [no-ai-slop](https://github.com/petergyang/no-ai-slop), [humanizer](https://github.com/blader/humanizer), [de-slop](https://github.com/isatimur/de-slop), [stop-slop](https://github.com/hardikpandya/stop-slop), [unslop-text](https://github.com/JCarterJohnson/vibecoded-design-tells/tree/main/unslop-ai-text), and [avoid-ai-writing](https://github.com/conorbronsdon/avoid-ai-writing).
235
+ Zero Slop builds on ideas from [First Reader](https://github.com/Shubhamsaboo/awesome-llm-apps/tree/f56f4febaac4eb869c2e98859e78612889913d3e/agent_skills/first-reader), [no-ai-slop](https://github.com/petergyang/no-ai-slop), [humanizer](https://github.com/blader/humanizer), [de-slop](https://github.com/isatimur/de-slop), [stop-slop](https://github.com/hardikpandya/stop-slop), [unslop-text](https://github.com/JCarterJohnson/vibecoded-design-tells/tree/main/unslop-ai-text), and [avoid-ai-writing](https://github.com/conorbronsdon/avoid-ai-writing).
321
236
 
322
237
  ## License
323
238
 
package/SKILL.md CHANGED
@@ -2,7 +2,7 @@
2
2
  name: zero-slop
3
3
  license: MIT
4
4
  metadata:
5
- version: "2.12.1"
5
+ version: "2.12.4"
6
6
  author: manavmishra
7
7
  description: Edit drafts into natural prose, inspect AI-sounding patterns, or review how a specified audience might respond passage by passage. Zero Slop runs inside the user's existing AI assistant with local tools that protect source details. Use for humanizing or de-slopping writing, polishing outward-facing prose, social drafts, final editorial checks, or an explicit simulated reader review. Preserve facts, voice and format; reader simulations are hypotheses, not human feedback.
8
8
  ---
package/docs/cli.md CHANGED
@@ -3,7 +3,7 @@
3
3
  Use `deslop` for hosted editing with MCP parity. Use `score` for offline checks.
4
4
 
5
5
  ```sh
6
- npm install --global zero-slop@2.12.1
6
+ npm install --global zero-slop@2.12.4
7
7
  zero-slop deslop draft.md --genre professional
8
8
  zero-slop deslop - --genre email < draft.txt
9
9
  zero-slop deslop draft.md --json --require-approved
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zero-slop",
3
- "version": "2.12.1",
3
+ "version": "2.12.4",
4
4
  "description": "Find and fix canned AI writing while preserving the facts, voice, and format.",
5
5
  "mcpServers": {
6
6
  "zero-slop": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zero-slop",
3
- "version": "2.12.1",
3
+ "version": "2.12.4",
4
4
  "description": "An editing skill, offline writing checks, and a CLI for the hosted Zero Slop MCP pipeline. Find stock AI phrasing, rewrite, and check source details.",
5
5
  "bin": {
6
6
  "zero-slop": "bin/zero-slop.mjs"
package/plugin.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
3
3
  "name": "zero-slop",
4
- "version": "2.12.1",
4
+ "version": "2.12.4",
5
5
  "description": "Find and fix canned AI writing while preserving the facts, voice, and format.",
6
6
  "author": {
7
7
  "name": "Manav Mishra",