zero-slop 2.12.36 → 2.12.38
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 +2 -2
- package/SECURITY.md +6 -4
- package/SKILL.md +1 -1
- package/docs/cli.md +5 -1
- package/docs/rest-api.md +14 -3
- package/gemini-extension.json +1 -1
- package/package.json +1 -1
- package/plugin.json +1 -1
package/README.md
CHANGED
|
@@ -14,7 +14,7 @@ It finds AI slop and workslop, guides the edit, and checks that the key details
|
|
|
14
14
|
|
|
15
15
|
<p align="center">
|
|
16
16
|
<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>
|
|
17
|
-
<img alt="Version 2.12.
|
|
17
|
+
<img alt="Version 2.12.38" src="https://img.shields.io/badge/version-2.12.38-72528F?color=C15732">
|
|
18
18
|
<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>
|
|
19
19
|
<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>
|
|
20
20
|
<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>
|
|
@@ -176,7 +176,7 @@ python3 scripts/slopscore.py --batch drafts/ --gate 25
|
|
|
176
176
|
The CLI sends a file to the hosted editor without changing the file on disk:
|
|
177
177
|
|
|
178
178
|
```sh
|
|
179
|
-
npx --yes zero-slop@2.12.
|
|
179
|
+
npx --yes zero-slop@2.12.38 deslop draft.md --genre professional
|
|
180
180
|
```
|
|
181
181
|
|
|
182
182
|
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).
|
package/SECURITY.md
CHANGED
|
@@ -56,10 +56,12 @@ stdlib-only Python runtime.
|
|
|
56
56
|
|
|
57
57
|
The optional public MCP at `https://mcp.zero-slop.ai/mcp` is a separate remote
|
|
58
58
|
service. A draft sent to that endpoint must leave the client to be edited. It is
|
|
59
|
-
processed in memory
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
59
|
+
processed in memory and excluded from the demo cache. Cloudflare Workers AI is the
|
|
60
|
+
primary editor. If it cannot return a usable edit, Zero Slop may send the draft and
|
|
61
|
+
editing inputs through OpenRouter to a free model provider that may keep the draft and
|
|
62
|
+
the edit or use them to train models. See the [privacy policy](https://zero-slop.ai/privacy/)
|
|
63
|
+
for details. Zero Slop does not log or retain the draft or rewrite. The gateway
|
|
64
|
+
requires `stored: false` from Zero Slop's editor, which reports storage by that editor.
|
|
63
65
|
|
|
64
66
|
The REST endpoint `https://mcp.zero-slop.ai/v1/deslop` calls this same pipeline.
|
|
65
67
|
It accepts at most 128 KiB of UTF-8 JSON and one trimmed draft of 20,000 Unicode code
|
package/SKILL.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name: zero-slop
|
|
3
3
|
license: MIT
|
|
4
4
|
metadata:
|
|
5
|
-
version: "2.12.
|
|
5
|
+
version: "2.12.38"
|
|
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
|
@@ -19,7 +19,7 @@ are not authentication or provenance evidence.
|
|
|
19
19
|
Use `deslop` for hosted editing with MCP parity. Use `score` for offline checks.
|
|
20
20
|
|
|
21
21
|
```sh
|
|
22
|
-
npm install --global zero-slop@2.12.
|
|
22
|
+
npm install --global zero-slop@2.12.38
|
|
23
23
|
zero-slop deslop draft.md --genre professional
|
|
24
24
|
zero-slop deslop - --genre email < draft.txt
|
|
25
25
|
zero-slop deslop draft.md --json --require-approved
|
|
@@ -44,6 +44,10 @@ Homebrew update. Linux Homebrew has not been tested.
|
|
|
44
44
|
It never edits a source file in place. Warnings go to standard error. Capture
|
|
45
45
|
standard output only when you intend to save it.
|
|
46
46
|
|
|
47
|
+
The hosted editor can send the draft to Cloudflare Workers AI and, if needed,
|
|
48
|
+
through OpenRouter to a free model provider that may keep the draft and edit or
|
|
49
|
+
use them to train models. See the [privacy policy](https://zero-slop.ai/privacy/).
|
|
50
|
+
|
|
47
51
|
## Options and results
|
|
48
52
|
|
|
49
53
|
| Option | Purpose |
|
package/docs/rest-api.md
CHANGED
|
@@ -12,6 +12,11 @@ Use the [API sandbox](https://zero-slop.ai/sandbox/) to inspect a simulated resu
|
|
|
12
12
|
before sending a draft. Its live mode requires an explicit request and uses this
|
|
13
13
|
same endpoint.
|
|
14
14
|
|
|
15
|
+
Cloudflare Workers AI handles hosted editing first. If it cannot return a usable edit,
|
|
16
|
+
Zero Slop may send the draft and editing inputs through OpenRouter to a free model
|
|
17
|
+
provider that may keep the draft and the edit or use them to train models. Zero Slop does not
|
|
18
|
+
store the draft or rewrite. See the [privacy policy](https://zero-slop.ai/privacy/).
|
|
19
|
+
|
|
15
20
|
## Send a draft
|
|
16
21
|
|
|
17
22
|
```sh
|
|
@@ -115,17 +120,19 @@ The optional `editorDiagnostics` field contains only bounded operational metadat
|
|
|
115
120
|
| Field | Meaning |
|
|
116
121
|
|---|---|
|
|
117
122
|
| `endpointHttpStatus` | Observed HTTP status from the gateway's editor endpoint, from 100 to 599; distinct from this REST response's status |
|
|
123
|
+
| `failureReason` | Fixed gateway outcome when it could not use the model reply |
|
|
118
124
|
| `providerAttempts` | Up to two ordered attempts reported by the endpoint; each has a fixed `provider` and `outcome` |
|
|
119
125
|
| `providerAttempts[].failureStage` | Optional `invoke`, `fetch`, `http`, or `body` stage reported for a failed attempt |
|
|
120
126
|
| `providerAttempts[].httpStatus` | Optional observed provider HTTP status, from 100 to 599, for an `http` or `body` failure |
|
|
127
|
+
| `providerAttempts[].outputStage` | Optional `response_shape`, `empty_output`, `source_preservation`, or `implausible_edit` check that rejected invalid output |
|
|
121
128
|
|
|
122
129
|
Providers are `workers-ai` or `openrouter`. Outcomes are `success`, `timeout`,
|
|
123
130
|
`cancelled`, `capacity`, `invalid_output`, `configuration`, or `unavailable`.
|
|
124
131
|
Missing metadata remains unknown. Absence does not prove that an editor request or
|
|
125
132
|
provider attempt never started. These fields contain no drafts, response bodies,
|
|
126
|
-
headers, credentials, model names, or arbitrary error messages.
|
|
127
|
-
|
|
128
|
-
|
|
133
|
+
headers, credentials, model names, or arbitrary error messages. The aggregate
|
|
134
|
+
report records only the fixed failure reason, stage, and provider. Already-clear
|
|
135
|
+
results omit `editorDiagnostics`.
|
|
129
136
|
|
|
130
137
|
`scoreChange` is after minus before, so a negative value means the measured score fell.
|
|
131
138
|
The writing score is not a probability that AI wrote the draft.
|
|
@@ -177,6 +184,10 @@ For example, a usage-limit response has this shape; values here are illustrative
|
|
|
177
184
|
The `Retry-After` response header gives the minimum delay in seconds. Read it
|
|
178
185
|
from the header rather than parsing `detail`. Keep the problem code and request
|
|
179
186
|
ID for troubleshooting without logging the draft or result.
|
|
187
|
+
A `usage_limit` problem can include `capacityScope`. `client_daily` and
|
|
188
|
+
`client_minute` refer to the client IP limits, `workers_daily` and
|
|
189
|
+
`openrouter_daily` to shared provider limits, and `day_reset` to the rollover
|
|
190
|
+
window. Older responses can omit this detail.
|
|
180
191
|
|
|
181
192
|
Allow 75 seconds on the client. The service makes at most one editing-model request;
|
|
182
193
|
scoring and source checks add their own bounded work. A client timeout or cancellation
|
package/gemini-extension.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zero-slop",
|
|
3
|
-
"version": "2.12.
|
|
3
|
+
"version": "2.12.38",
|
|
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.
|
|
4
|
+
"version": "2.12.38",
|
|
5
5
|
"description": "Find and fix canned AI writing while preserving the facts, voice, and format.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Manav Mishra",
|