sloptrim plugin
A prose-checking plugin that runs a local detector after supported file saves and gives the agent editing feedback
- 424 ★ on the repository
- Last commit
- Apache-2.0
Extended access
Why this level
- Hooks run Node and Python scripts for session, prompt and supported save-tool events
- The /sloptrim init command creates or changes AGENTS.md and Cursor rules in the project
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add plugins/sloptrimDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- Hooks run Node and Python scripts for session, prompt and supported save-tool events
- The /sloptrim init command creates or changes AGENTS.md and Cursor rules in the project
This is third-party code. Review the repository files before installing.
What it does
The sloptrim plugin checks the prose an agent saves to files. The detector is written with the Python standard library, runs without a network or a model and leaves code, configs and commits alone. The catalogue holds 71 patterns of machine writing: 62 have a detector, 50 of them move the score, and the other 12 are printed as advice and add no points. Another 9 patterns need a semantic reading, which the agent works through while rewriting. The score runs from 0 to 100 and lands in one of five bands: clean, light tells, mixed, heavy tells, pervasive tells. A hook fires when a file is saved through the Claude Code write tools and asks for the named spans to be fixed when the score is above 40. In strict mode the threshold is 20. The detector reads 20 formats, among them .docx, .pptx, .xlsx, OpenDocument, .epub, .ipynb and LaTeX. The /sloptrim command switches modes: full by default, strict, lite with the rules at session start only, and off. The /sloptrim check file command scores a document without rewriting. For other agents /sloptrim init writes the same rules to AGENTS.md and a Cursor rule.
Who it is for. For people who ask an agent to write emails, reports, articles and documentation and want text free of machine tells without proofreading it all by hand.
Good fit when
- An agent writes emails, résumés or reports and the text should go through a detector before sending
- You need to check a finished .docx, .pptx or .epub document with the /sloptrim check command
- A team wants shared clean-writing rules for Claude Code, Codex and Cursor through AGENTS.md
- You want a strict mode that asks for fixes at a score above 20
- You need a check that does not send text to the cloud: the detector runs locally and without a model
Not a fit when
- You need to find out whether a human wrote a text: the score describes writing tells and does not identify an author, and the documentation explicitly forbids using it for that
- The agent creates files with a Bash command: such a file reaches disk past the write tools and the hook
- You need to check code, configs or commits: the detector works on prose only
- The document is a PDF or RTF: the detector marks these as unreadable and does not score them
Example request
/sloptrim check report.docx — score the report and name the machine writing tells, no rewrite yetLimitations
Python 3.9 or later is required, plus Node.js for hooks. The detector runs locally, but prose and feedback may still enter a cloud agent’s context. The hook gives post-save feedback; it is not a write barrier and does not guarantee coverage of shell-created files.
Analysis is limited to the first 262,144 text characters. DOCX headers and PPTX speaker notes are omitted, while PDF and RTF are unsupported. The --clean option outputs text rather than rebuilding the original document; never overwrite a DOCX or PPTX archive with it. Russian support is not separately claimed, so evaluate scores on your own material.
How to disable. The off mode of the /sloptrim command switches the check off, and the SLOPTRIM_MODE=off variable disables it for one run without touching the saved level. Remove the plugin entirely with /plugin uninstall sloptrim@sloptrim. For a manual install delete the ~/.claude/skills/sloptrim folder and the ~/.claude/commands/sloptrim.md file.
FAQ
How do I install sloptrim in Claude Code?
Add the marketplace and install using the commands in the installation section, then restart the client. `/sloptrim doctor` checks local files. To verify event handling, save prose and inspect `/sloptrim show`.
How does sloptrim compute the score?
The detector looks for 62 patterns by rules and gives 0 to 100 points, with 50 patterns able to move the score. The result lands in one of five bands from clean to pervasive tells. The hook asks for edits above 40, and above 20 in strict mode.
Can I trust sloptrim as an AI authorship check?
No. The score measures selected stylistic signals, not the probability of machine authorship. Language, formatting and genre affect it, so it should not be used to accuse an author.
Does sloptrim work in Cursor and Codex?
The documented automatic-hook workflow targets Claude Code. For other agents, `/sloptrim init` writes rules to AGENTS.md and .cursor/rules/ for the agent to follow. Save-event delivery in another client needs a separate check.
Which files does sloptrim check?
Twenty formats, including .docx, .pptx, .xlsx, OpenDocument, .epub, .ipynb and LaTeX. The detector marks PDF and RTF as unreadable. From documents it takes paragraph and cell text. Code and configs stay out of the score.
Discussion
No questions or reviews yet.
Related
PluginsA free skill that finds AI writing patterns in a draft, guides the edit and checks that the author's facts and wording survived
A local linter that finds stock phrases and flat sentence rhythm in prose so the agent can fix them, not guess who wrote it.
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
Two skills for English prose: humanize rewrites a model draft in a natural voice, and ai-check flags machine-writing tells
Humanizer (brandonwise)
humanizer
A skill and Node.js CLI that score English text for AI-writing patterns and statistics and suggest fixes on a 0 to 100 scale
A skill that finds AI writing tells, rewrites the text in a chosen voice, and optionally scores it from 0 to 100
Comparison with similar tools
Cards that share the main search query, and how they differ.
| Tool | Official | Repository stars | Main difference |
|---|---|---|---|
| sloptrim (this card) | no | 424 | |
| unslop | no | 1,048 | a skill for English prose with three separate Python scanners |
| Avoid AI Writing | no | 5,598 | a skill that rewrites text on request, without an automatic check on save |
README in short
The code uses Apache 2.0. The author publishes detector evaluation methods and separate ethical limits: scores support editing and do not establish authorship.
README badge
Original SKILL.md
--- name: sloptrim description: >- Use when the user wants to humanize text, trim slop, de-AI or de-slop writing, remove AI tells, fix robotic or ChatGPT-sounding prose, or make writing sound human and natural. Also run before delivering a CV, cover letter, email, report, or essay to be sent. Removes 71 documented AI-writing patterns with a local detector, preserves numbers, names and citations, and rebuilds toward a human voice rather than a flat husk. Mode-aware, so it never fabricates voice on factual content. version: 0.9.6 license: Apache-2.0 allowed-tools: Read, Write, Edit, Grep, Glob, Bash argument-hint: The text to trim, or a file path --- # Sloptrim Trims AI slop from text. Works a catalogue of 71 patterns: 62 machine-checked by `scripts/detect.py`, 9 requiring semantic judgment during the rewrite. Of the 62, 50 can move the score; the rest are reported as writing advice and count for nothing. Mode-aware so it does not invent voice on factual content. Preserves facts. Rebuilds the cleaned text toward a selectable human-voice **style profile** so it does not read as a sterile de-AI'd husk. ## Silence This skill never talks about itself. It hands back the cleaned text and nothing else. **Never emit:** any announcement that sloptrim ran, style/mode lines, scores or reports, drafts, self-audit notes, facts-preserved lines, change lists, preambles, closing offers. **Emit only:** - Text given inline: the final text. Nothing before it, nothing after it. - A file path given: rewrite the file in place, then one line - the path. Nothing else. - Fired as a pre-delivery pass on something you were already writing (CV, cover letter, email, report, essay): just deliver the clean text. Do not mention that a pass happened. Every internal step still runs - detector, tiering, self-audit, character scrub. Silence means nothing is *printed*, not that anything is skipped. Break silence only for: (a) a fact you cannot preserve, or an unusual word you cannot verify against the domain - one line, then the text; (b) the user explicitly asking for the score, the report, a style choice, or a diff - then answer in full; (c) a **high-stakes first-person deliverable** - a cover letter, personal statement, or bio the user is about to send - where after the text you may add exactly one line offering a voice switch (for example: "Voice here is plain-professional; say the word for warmer or more formal."). One line, only for these high-stakes cases, never for routine prose. ## Style, chosen silently Never ask. Read the content and pick: - encyclopedic / factual / technical → **2000s textbook** - first-person / opinion → **conversational essay** - docs, README, business prose → **plain / clear** - news → **journalistic** If the user names a style or pastes a writing sample, that wins (see *Matching the user's own voice*).