Loading
Loading
written by ForgeCat

Review UI, copy, accessibility, responsive layouts, and code comments with six coordinated anti-slop skills.
| Server | Transport | URL |
|---|---|---|
antislop-contrast | stdio | node |
| Field | Value |
|---|---|
| Author | Miqdad Badjuber |
| Original repository | https://github.com/miqdadbadjuber/anti-slop |
| Version | 0.1.0 |
| Original commit | 3c6cdd7f0dc5423e02b9a0bf70a3d9f1c0da644a |
| License | MIT |
| Source platform | multi-host |
| Platform | Status |
|---|---|
| Claude Code | Tested |
| Cursor | Tested |
| Codex | Tested |
| OpenClaw | Partial |
| Hermes | Partial |
SKILL.md files.This conversion packages the complete six-skill set from upstream 3.2.13. Load antislop and the skill for your task, then choose whether to apply it during the work or audit a completed result. The upstream rules, consent questions, numbered audit approvals, and final Delivery Gate stay intact. Supply your design direction separately.
The bound operating instruction provides the existing-install pointer and resolves the upstream source paths to the installed skills. ForgeCat adds its managed @AGENTS.md import for Claude Code; existing user instructions remain owned by the user. OpenClaw and Hermes receive the instruction in their home bootstrap files. A fresh session is needed to load new instructions.
The Python contrast checker remains beside antislop-human/SKILL.md. Its MCP server and Node launcher retain their original bytes and relative layout under a shared reference directory. Node and Python 3 are needed for MCP; the direct checker needs only Python 3 and the standard library. No account, API key, network request, or package download is used by these helpers.
Upstream registers MCP only in its Claude plugin. This profile additionally delivers that same local server through the standard Cursor and Codex MCP adapters. OpenClaw and Hermes use the upstream Python checker rather than automatic MCP registration. The private release candidate targets complete delivery on Claude Code, Cursor, and Codex. OpenClaw and Hermes remain Partial because automatic MCP registration is not delivered. Native installation and runtime receipts must verify these claims before public release.
This is a local conversion candidate, not a published Registry version. After an approved release, install/update/remove it through ForgeCat as @forgecat/anti-slop. Do not run the upstream npm/plugin installers over this managed copy. Upstream's VERSION identifies its source release and is separate from the future ForgeCat Registry version.
The source guide, roadmap, security document and core filter are bundled for reference. Their upstream installation and removal sections describe other distribution routes. Repository navigation and presentation image links point to the pinned upstream commit; npm installer code, development tests, CI, marketplace metadata and artwork are intentionally excluded from the installed package.
written by original source
Anti Slop: Rules for AI Coding Agents. It stops them from generating generic "AI slop" UI and copy, without letting the result turn sterile. It is a filter, not a style guide: no prescribed colors, fonts, or layouts. It is not only for building pages: it also writes and audits copy, so AI text stops reading like AI. And it never beautifies on its own;
DESIGN.md(yours) is where beauty and direction come from.
New here? Start with the GUIDE.md. It explains what antislop is and how to install it, from zero.
The core prevents slop but cannot invent direction. DESIGN.md (yours) supplies it; a sterile result means the direction was missing, not that the filter failed (R-37).
The same brief, the same page, generated four times over. antislop filters; DESIGN.md supplies direction. They are two different jobs, and these are the four results. Copy and code follow as before-and-after pairs instead of four separate builds, because nothing else has to supply direction there.
Three of the four builds. The first uses neither tool, the second only antislop, the third only DESIGN.md.
The fourth uses both, and it is the only one of the four that is clean and directed at the same time:
One prompt, run twice.
One file, run twice.
Every image in this section opens full size if you click it.
antislop ships as a set of standard agent skills (one folder per skill, holding a SKILL.md). The core is always loaded; the other skills load only when the task needs them. This section is the reference: every install command, in one place. GUIDE.md walks through them from zero, and its Update and Remove sections cover every route the same way.
One command, then answer the prompts. It asks which extra skills you want, where to install (this project or everywhere), and which agents you use, then copies the folders. It is also the only route that writes the pointer reloading antislop every session on a project install; a global install relies on the skills loading themselves by description.
npx antislop-ai
To update later, run the same command and choose Overwrite them when it finds the existing folders. See Update.
antislop is listed on skills.sh, the open directory for agent skills:
npx skills add miqdadbadjuber/anti-slop
This copies the same folders as path 1 and nothing else: no pointer, so antislop reloads by description alone. GUIDE.md covers adding the pointer afterwards, and updating or removing this route.
Add the marketplace once, then install the plugin:
/plugin marketplace add https://github.com/miqdadbadjuber/anti-slop
/plugin install antislop@anti-slop
The same repo is an Antigravity plugin. Install it with the Antigravity CLI:
agy plugin install https://github.com/miqdadbadjuber/anti-slop
The same repo is a Codex plugin and marketplace. Add the marketplace once, then install the plugin:
codex plugin marketplace add miqdadbadjuber/anti-slop
codex plugin add antislop@anti-slop
The same repo is a Cursor plugin. Add it as a plugin marketplace with the Cursor Agent CLI:
agent plugin marketplace add https://github.com/miqdadbadjuber/anti-slop
Then open Customize in Cursor, find antislop, and select Install, choosing project or user scope.
The same repo is a Kimi Code plugin. Install it in a Kimi Code session, then start a new one:
/plugins install https://github.com/miqdadbadjuber/anti-slop
The URL resolves to the latest release. Kimi Code installs plugins per user, so this covers every project.
Every skill is a folder of the open Agent Skills standard (<name>/SKILL.md), so it drops into any agent that reads the standard. The installer (path 1) installs into whichever of these you use, creating the folder if it is missing:
| Agent | Reads antislop from |
|---|---|
| Claude Code | .claude/skills/ |
| Codex | .codex/skills/ |
| Antigravity | .agents/skills/ |
| OpenCode | .opencode/skills/ |
| Cursor | .cursor/skills/ |
| Gemini CLI | .gemini/skills/ |
| Hermes | .hermes/skills/ |
| GitHub Copilot | .agents/skills/ |
| Kimi Code | .agents/skills/ |
The Gemini CLI row is legacy support: Antigravity replaced it, but the installer still writes there for existing setups.
Antigravity, Copilot, and Kimi Code share one folder. Copilot also reads .github/skills/ and .claude/skills/, and Kimi Code also reads .kimi-code/skills/, but the installer writes the folder they have in common, so picking them together installs antislop once.
Those are the project paths. A global install writes the same folder under your home directory, with three exceptions: OpenCode writes to ~/.config/opencode/skills/, Antigravity to ~/.gemini/config/skills/, and Codex to ~/.agents/skills/, the user-level folder Codex documents in place of its own ~/.codex/skills/. Copilot, OpenCode, and Kimi Code read that home-level folder too, so it is where a global install reaches them.
Hermes needs one extra step after a project install: it will not load skills out of a cloned repository until you run hermes skills trust once in that project.
The core antislop.md alone is a complete filter you can paste into any chat window. Download it and tell your agent to read it; the First-Run wizard inside it installs skills the manual way:
curl -o antislop.md https://raw.githubusercontent.com/miqdadbadjuber/anti-slop/main/antislop.md
antislop does not update itself and nothing tells you a release is out. Every route updates by running its own command again:
| Route | Update it with |
|---|---|
| The installer | npx antislop-ai, then Overwrite them. It prints the version on disk next to the one it carries. |
| The skills directory | npx skills add miqdadbadjuber/anti-slop |
| The plugin (Claude Code) | claude plugin update antislop@anti-slop |
| The plugin (Antigravity) | agy plugin install https://github.com/miqdadbadjuber/anti-slop |
| The plugin (Codex) | codex plugin marketplace upgrade anti-slop |
| The plugin (Cursor) | agent plugin marketplace update https://github.com/miqdadbadjuber/anti-slop |
| The plugin (Kimi Code) | /plugins install https://github.com/miqdadbadjuber/anti-slop |
| Manual | download antislop.md again |
Skills load when a session starts, so start a new one afterwards. To see which version you are on, open the VERSION file in the installed antislop folder, or ask your agent. GUIDE.md covers each route step by step.
| Skill | What it covers | Ships in |
|---|---|---|
| antislop | The core filter: rules, tiers, Delivery Gate, liveliness | v3.0.0 |
| antislop-ui | UI / visual: layout, color, components, decoration, motion, structure | v2.2.0 |
| antislop-copywriting | Copy & text: headlines, CTAs, tone, fake stats, anti-AI-writing patterns, markdown hygiene | v2.3.0 |
| antislop-human | Human: contrast (with the checker), keyboard, focus, states | v2.4.0 |
| antislop-layoutmobile | Responsive / mobile: reflowing across screen widths (phone to desktop), breakpoints, grids, overflow, tap targets | v2.5.0 |
| antislop-code | Code comments: remove generic AI-slop comments, keep the valuable ones, never touch the code | v3.1.0 |
Pick what matches the work:
antislop is used one of two ways, chosen at the start of a session:
v3.2.13 is the current release.
VERSION file inside the antislop folder, so an update can name what you already have instead of asking you to look it up.js, was read as the end of the block it sat inside, so the example lost its text on install. A closing fence may carry only spaces or tabs.Every earlier release, and what comes next, is in ROADMAP.md.

The same four images from See the difference, in motion.
No, a filter. It does not prescribe colors, fonts, or layouts. It rejects technique without purpose and requires liveliness; direction is yours.
All of them, but the install paths differ:
antislop.md) works with any agent that reads plain Markdown, including a plain chat window.The packaged skills use the open Agent Skills standard (folder per skill), so they drop into any tool that reads the standard.
A folder that goes deeper into one concern (UI, copywriting, accessibility, and so on), holding a SKILL.md with its rules. It references the core rules by number and never duplicates them, so adding a skill does not change the core.
Thanks to everyone who helps make antislop better.
Found a new AI slop pattern, a rule that missed something, or a bug in the installer? Open an issue. PRs are welcome for new AI slop patterns, clarifications, or checklist items out of sync with their rule.
“antislop is a filter, not magic.
It clears the slop from your UI, text, and code.
A beautiful UI is DESIGN.md's job, and yours.”
MIT: LICENSE