#172 by GitHub stars
miqdadbadjuber/anti-slop
Rules for an AI coding agent to filter out generic AI-generated UI designs, text, and code.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
skills/antislop/SKILL.md
Week of Nov 2, 2026 · +1 / −51 lines
Before Network or broad shell → After Network or broad shell
3005235d030b → 5d90a9aff5ac
- 16 ## First-Run Install Wizard
- 17
- 18 antislop is a system: this core file plus optional **skills**, one per concern (`antislop-ui`, `antislop-copywriting`, and so on, each a folder with a `SKILL.md`). This section installs them once. It is an **offer, not a requirement**: if the user prefers, this file alone remains a complete filter.
- 19
- 20 **Skip this section** if the project's entry file (`AGENTS.md`, `CLAUDE.md`, `GEMINI.md`, or the equivalent the running tool reads at session start) already contains an antislop pointer block. That means antislop is already installed. Come back only when the user asks to add or remove a skill.
- 21
- 22 If no antislop pointer exists and this file is being read for the first time, run the wizard:
- 23
- 24 > The steps below are the manual install for setups where only this file is present. No network is used: missing skills are fetched by the user, never by the agent.
- 25
- 26 1. **Declare the setup before doing anything.** Tell the user you will (a) get the chosen skill(s) in place in `skills/<name>/` subfolders next to this file (the user fetches them; the agent never downloads from the network, see step 4), and (b) append an antislop pointer block at the end of the project's entry file. Get approval. Never modify the entry file silently.
- 27 2. **Ask which skills to install** (multi-select, in the user's chat language). List only the skills that exist in this version of antislop:
- 28 - **1. All** (recommended): install every available skill. Choose this when the work spans UI, copy, people, or mobile layout.
- 29 - **2. `antislop-ui`** (UI / visual): pick this for building or editing a website, web app, or interface: color, layout, components, decoration, motion.
- 30 - **3. `antislop-copywriting`** (copy & text): pick this for writing or editing copy: headlines, CTAs, value propositions, tone, landing-page text, product prose.
- 31 - **4. `antislop-human`** (people): pick this for making sure a UI works for people with different eyes, hands, and setups: contrast, keyboard, focus, states.
- 32 - **5. `antislop-layoutmobile`** (mobile / responsive): pick this for layouts that have to reflow across screen sizes, phone to desktop: breakpoints, scale, grids, overflow, tap targets.
- 33 - **6. `antislop-code`** (code comments): pick this for writing or editing code comments: remove generic AI-slop comments, keep the valuable ones, never touch the code.
- 34 - New skills appear here as they ship; never offer a skill that does not exist in this version.
- 35
- 36 If the user declines or says "core only", stop here and use this file alone as the filter. Do not install anything.
- 37 3. **Resolve direction** (only if a UI skill was selected). Check for `DESIGN.md` or explicit brand/style direction. If none exists, be honest that antislop is a **filter, not a beautifier**: without direction the output tends toward monotonous. Recommend having a `DESIGN.md`, then offer these paths:
- 38 - **1. The user supplies direction (recommended).** They write their own `DESIGN.md`, or answer a few direction questions (identity, personality, palette, typography, mood) and the agent transcribes their answers into `DESIGN.md`. The user is the author; the agent only formats. Never invent example content for `DESIGN.md`.
- 39 - **2. The agent supplies direction, with an honest warning.** The agent writes the direction itself, stating explicitly that agent-generated style tends toward default AI taste, which is the slop antislop filters, so the result is likely monotonous. If chosen, still ask a minimal brief (product, audience, mood) before building.
- 40 - **3. The user skips direction for now.** Proceed without a `DESIGN.md`. Any UI built this way must be labeled *"draft without direction"* with dials ENERGY 1 / RHYTHM 1 / MOTION 1 (R-37), and is not a shippable deliverable.
- 41 4. **Get the chosen skill(s) in place; the user does the fetching, never the agent.** A `SKILL.md` is instructions the agent will obey, so an agent that downloads one at runtime is fetching its own next prompt: do not do it, and do not ask for network access here. The skills ship as folders in the release (`skills/<name>/SKILL.md`). If a chosen skill folder is missing next to this file, tell the user which ones are missing and that they come with the release matching this core, so a newer skill never mixes with an older one. `antislop-human` also needs `contrast-check.py` from that same folder.
- 42 5. **Append the pointer block at the END of the project's entry file** (the file the running tool reads at session start: `CLAUDE.md` for Claude Code, `AGENTS.md` for Codex, `GEMINI.md` for Gemini CLI, and so on). If that file does not exist, create it. Never modify existing content:
- 43 ```md
- 44 <!-- antislop:start -->
- 45 ## antislop
- 46 For UI, copy, people, mobile layout, or code comments work, read `antislop.md` (core) and then the skill for the task:
- 47 - UI / visual: `skills/antislop-ui/SKILL.md`
- 48 - Copy & text: `skills/antislop-copywriting/SKILL.md`
- 49 - People: `skills/antislop-human/SKILL.md`
- 50 - Mobile / responsive: `skills/antislop-layoutmobile/SKILL.md`
- 51 - Code comments: `skills/antislop-code/SKILL.md`
- 52 Before starting, follow the core's "Two Usage Modes" section in strict order: explicit session instruction first, then global preference, then ask. A session instruction always wins. For a resolved mode, say `antislop active: <mode> (session override).` or `antislop active: <mode> (global preference).` once before presenting findings or making edits, using the actual mode and source. Acknowledging the user's request without naming the source does not replace this notice.
- 53 Only an explicit choice of antislop during or after selects a session mode. A request to review, audit, or avoid file edits does not select a mode; read the global preference in that case. Another skill's mode does not select antislop's mode.
- 54 If the mode is unresolved, ask during/after and end the response; wait for the answer before any UI review, planning, or concept. For read-only tasks, put the active-mode notice only at the start of the final answer, never in progress messages. For editing tasks, announce before the first edit and omit it from the final answer.
- 55 To update antislop later: download `antislop.md` again, or run `npx antislop-ai --update` if it was installed as skill folders.
- 56 <!-- antislop:end -->
- 57 ```
- 58 The packaged installers write the same two markers, so whichever install path runs last replaces the block instead of adding a second one. If an older antislop block exists (even without the markers), replace just that block instead of appending a duplicate.
- 59 6. **Resolve and announce the usage mode** (see "Two Usage Modes"), then proceed with the work.
- 60
- 61 Notes:
- 62 - The entry file is read at the start of a session, so a newly written pointer takes effect from the **next** session.
- 63 - The wizard needs file-write access for step 5 (the pointer block) and nothing else to install; the user approves once. A `DESIGN.md` in step 3 and an audit report in Mode 2 are written separately, only when the work calls for them. It never needs network access.
- 64 - The pointer block is the source of truth for which skills are installed. To add or remove a skill later, update the block to match (add or remove the file and its line).
- 65
- 66 ### Already installed, and the user asks how to update
+ 16 ## Already installed, and the user asks how to update
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 3005235d030b
No earlier version was observed for comparison.
skills/antislop-code/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
3005235d030b → 5d90a9aff5ac
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 3005235d030b
No earlier version was observed for comparison.
skills/antislop-copywriting/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
3005235d030b → 5d90a9aff5ac
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 3005235d030b
No earlier version was observed for comparison.
skills/antislop-human/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
3005235d030b → 5d90a9aff5ac
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 3005235d030b
No earlier version was observed for comparison.
skills/antislop-layoutmobile/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
3005235d030b → 5d90a9aff5ac
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 3005235d030b
No earlier version was observed for comparison.
skills/antislop-ui/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
3005235d030b → 5d90a9aff5ac
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 3005235d030b
No earlier version was observed for comparison.
Verified commit 5d90a9aff5ac5f4e14b75d9e69a61d34bb276d9d
git clone --filter=blob:none --no-checkout https://github.com/miqdadbadjuber/anti-slop.git .hotskills/miqdadbadjuber-anti-slop && git -C .hotskills/miqdadbadjuber-anti-slop checkout --detach 5d90a9aff5ac5f4e14b75d9e69a61d34bb276d9d
# Copy each selected skill directory from .hotskills/miqdadbadjuber-anti-slop into .claude/skills/<skill-name>/Heat
8.3- Star growth, last 7 daysAhead of 98% of tracked repositories
- Star growth, last 24 hoursAhead of 98% of tracked repositories
- Rank movement, last 7 daysAhead of 93% of tracked repositories
- Commits, last 30 daysAhead of 86% of tracked repositories
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekAhead of 0% of tracked repositories
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
Individual skills in this repository
- antislop
skills/antislop - antislop-code
skills/antislop-code - antislop-copywriting
skills/antislop-copywriting - antislop-human
skills/antislop-human - antislop-layoutmobile
skills/antislop-layoutmobile - antislop-ui
skills/antislop-ui
How it works
antislop
When your agent uses it
Anti Slop: Rules for AI Coding Agents. The core filter. Load always to stop generic AI slop.
What it loads into context
Frontmatter
41 tokensAlways available to the agent
SKILL.md
12,910 tokensWhen the skill is activated
Reference documents
28,907 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Already installed, and the user asks how to update
- Two Usage Modes
- What This Is (and What It Isn't)
- Core Principle
- The Craftsmanship Standard
- Part 1: AI Slop Patterns (Warning Signs)
- Part 2: Mandatory Rules (R-01 to R-40, grouped)
- Part 3: Liveliness Toolkit
- Functional Patterns
- Delivery Gate (Mandatory)
Scripts executed separately
../../.claude-plugin/contrast-mcp-launcher.mjs../antislop-human/contrast-check.py../antislop-human/contrast-mcp.py
Files
../../.claude-plugin/contrast-mcp-launcher.mjsruns1,190 bytes../../.claude-plugin/marketplace.jsonasset404 bytes../../.claude-plugin/plugin.jsonasset645 bytes../antislop-code/SKILL.mddoc8,944 bytes../antislop-copywriting/SKILL.mddoc25,419 bytes../antislop-human/LICENSE-web-quality-skillsasset1,068 bytes../antislop-human/SKILL.mddoc15,915 bytes../antislop-human/contrast-check.pyruns5,773 bytes../antislop-human/contrast-mcp.pyruns3,886 bytes../antislop-human/references/A11Y-PATTERNS.mddoc7,209 bytes../antislop-human/references/WCAG.mddoc8,149 bytes../antislop-layoutmobile/SKILL.mddoc16,378 bytes../antislop-ui/LICENSE-web-quality-skillsasset1,068 bytes../antislop-ui/SKILL.mddoc29,121 bytes../antislop-ui/references/CORE-WEB-VITALS.mddoc8,428 bytes../antislop-ui/references/WEB-BASELINE.mddoc1,469 bytesSKILL.mdcore53,758 bytesSKILL.mdcore53,758 bytesSKILL.mdcore53,758 bytesSKILL.mdcore53,758 bytesSKILL.mdcore53,758 bytesSKILL.mdcore53,758 bytesSKILL.mdcore53,758 bytesSKILL.mdcore53,758 bytesVERSIONasset7 bytes
Read SKILL.md
# antislop
> Anti Slop: Rules for AI Coding Agents
> Follow these rules whenever generating or building UI for a website, web app, or any interface.
> The goal: the design should feel **crafted by a designer**, not generated by AI.
> Before applying antislop, resolve its mode using "Two Usage Modes" below. By default, ask during or after. For a saved preference or explicit session choice, instead announce `antislop active: <mode> (<source>).` once, including whether the source is `global preference` or `session override`.
---
## Already installed, and the user asks how to update
antislop never updates itself, and nothing announces a new release. Answer from the route the user installed with, and say which route you are assuming when you cannot tell. `npx antislop-ai --update` is the shortest path for the first two routes: it replaces every antislop folder it finds, at project and global scope, prints the release it replaced, and asks nothing.
- **The installer** (`npx antislop-ai`): run it again, answer as before, and pick **Overwrite them**. It prints the version already on disk next to the version it carries, so nothing has to be compared by hand. *Keep what is there* installs nothing.View the complete source on GitHubantislop-code
When your agent uses it
Code comment hygiene for AI coding agents: remove generic AI-slop comments, keep the valuable ones, never touch the code.
What it loads into context
Frontmatter
44 tokensAlways available to the agent
SKILL.md
2,023 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- How to use this skill
- Comments That Add Nothing
- How It Should Read
- Not a Ban (preserve these)
- Code Comment Checklist
Files
SKILL.mdcore8,944 bytes
Read SKILL.md
# antislop-code
> Anti Slop: Rules for AI Coding Agents. Code Comments skill
> Part of the antislop system. Read together with `antislop.md` (the core). This skill filters comments that read as generically AI (decorative, restating the obvious, stiff, loud) while preserving the comments that carry real information. It references core rules by number and never duplicates or renumbers them. Load it when the task writes or edits code comments.
## How to use this skill
- Load together with `antislop.md` whenever the task touches code comments. The core holds the mechanism (the purpose test, the three tiers, the Delivery Gate); this skill holds comment-specific depth.
- Every entry has the same shape: **Tell** (the pattern), **Why** (why it reads as slop), **Fix** (what to do instead), with the governing core rule cited as R-XX.
- **Scope guardrail:** this skill only modifies comments. Never modify executable code, identifiers, imports, formatting, indentation, whitespace, control flow, or logic. When in doubt, leave the code untouched.
- The Delivery Gate in the core remains the gate. The "Code Comment Checklist" at the end of this file is the comment-specific supplement to run alongside it.
## Comments That Add Nothing
View the complete source on GitHubantislop-copywriting
When your agent uses it
Copy and text skill for antislop. Use when writing or editing prose: headlines, tone, CTAs, and anti-AI-writing patterns. Load with the core.
What it loads into context
Frontmatter
55 tokensAlways available to the agent
SKILL.md
6,079 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- How to use this skill
- Tone & Voice
- Rhythm & Structure
- Honesty & Evidence
- Hygiene & Markdown
- What NOT to flag
- Signs of human writing (preserve these)
- Voice calibration (optional)
- Draft, audit, final
- Copywriting Skill Checklist
Files
SKILL.mdcore25,419 bytesSKILL.mdcore25,419 bytesSKILL.mdcore25,419 bytesSKILL.mdcore25,419 bytesSKILL.mdcore25,419 bytes
Read SKILL.md
# antislop-copywriting
> Anti Slop: Rules for AI Coding Agents. Copy & Text skill
> Part of the antislop system. Read together with `antislop.md` (the core). This skill deep-dives the copy and text concern: headlines, CTAs, tone, value propositions, and the patterns that make AI-written prose easy to spot. It references core rules by number and never duplicates or renumbers them. Load it when the task writes or edits marketing copy, product copy, landing-page text, or any prose meant for people to read.
## How to use this skill
- Load together with `antislop.md` whenever the task is copy or text work. The core holds the mechanism (the purpose test, the three tiers, the Delivery Gate) and the hard bans (R-02, R-15, R-16, R-17, R-18, R-36, R-38). This skill holds copy-specific depth that the core does not.
- Every pattern has the same shape: **The pattern**, **Why it reads as AI**, **Before** (the slop), **After** (the fix), with the governing core rule cited as R-XX.
- Two rules apply to everything below:
- **Never invent facts** (R-17, R-36, R-38). A rewrite adds no fact, name, number, date, quote, or citation that is not in the source text or supplied by the user. Specificity comes from the source or the user, not from the rewrite. If a sentence needs real detail to work, ask for it or write the plain version without it.
- **Do not over-sterilize.** Avoiding AI patterns is half the job. Copy with no voice is as obviously machine-made as copy full of AI tells (R-37). When a user supplies a voice, keep it.
- The Delivery Gate in the core remains the gate. The "Copywriting Skill Checklist" at the end of this file is the copy-specific supplement to run alongside it.
View the complete source on GitHubantislop-human
When your agent uses it
Human and accessibility skill for antislop. Contrast, keyboard, focus, states, and interaction affordances for real people. Includes the contrast checker.
What it loads into context
Frontmatter
58 tokensAlways available to the agent
SKILL.md
3,955 tokensWhen the skill is activated
Reference documents
4,012 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- How to use this skill
- Color & Contrast
- Keyboard
- Focus & States
- Zoom & Mobile Use
- Interaction Affordances
- WCAG 2.2 Depth
- Human Skill Checklist
Scripts executed separately
contrast-check.pycontrast-mcp.py
Files
LICENSE-web-quality-skillsasset1,068 bytesSKILL.mdcore15,915 bytesSKILL.mdcore15,915 bytesSKILL.mdcore15,915 bytesSKILL.mdcore15,915 bytesSKILL.mdcore15,915 bytescontrast-check.pyruns5,773 bytescontrast-mcp.pyruns3,886 bytesreferences/A11Y-PATTERNS.mddoc7,209 bytesreferences/WCAG.mddoc8,149 bytes
Read SKILL.md
# antislop-human
> Anti Slop: Rules for AI Coding Agents. Human skill
> Part of the antislop system. Read together with `antislop.md` (the core). This skill deep-dives the human concern: the UI must stay usable by people with different eyes, hands, and setups. Contrast, keyboard, focus, states, and the mobile details that exclude people.
## How to use this skill
- Load together with `antislop.md` whenever the task builds or edits UI. The core holds the mechanism (the purpose test, the three tiers, the Delivery Gate); this skill holds the human-side depth: the parts of a UI that exclude people with different eyes, hands, and setups.
- Every entry has the same shape: **Tell** (the pattern), **Why** (who it excludes, and why it reads as unfinished), **Fix** (what to do instead), with the governing core rule cited as R-XX.
- Accessibility is not a checklist of extras bolted on at the end. It is part of the core promise that "the UI holds up" (C-4). The Delivery Gate in the core remains the gate; the "Human Skill Checklist" at the end of this file is the supplement to run alongside it.
- The contrast checker (formula + reference table + script) lives in this skill. Use it for every color pairing you cannot verify by eye.
- This skill keeps only the mobile details that exclude people: zooming, and the on-screen keyboard.
## Color & ContrastView the complete source on GitHubantislop-layoutmobile
When your agent uses it
Mobile layout skill for antislop. Use for layouts that reflow across screen sizes, phone to desktop: grids, overflow, tap targets. Load with the core.
What it loads into context
Frontmatter
54 tokensAlways available to the agent
SKILL.md
3,728 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- How to use this skill
- Breakpoints
- Scale & Sizing
- Grids & Stacking
- Overflow
- Tap Targets
- Mobile Navigation
- Layoutmobile Skill Checklist
Files
SKILL.mdcore16,378 bytes
Read SKILL.md
# antislop-layoutmobile
> Anti Slop: Rules for AI Coding Agents. Mobile Layout skill
> Part of the antislop system. Read together with `antislop.md` (the core). This skill deep-dives the responsive layout concern: how a layout must reflow across screen sizes, phone to desktop. Breakpoints, scale, grids, overflow, tap targets, and navigation. It references core rules by number and never duplicates or renumbers them. Load it when the task builds or edits a layout that has to hold up at any screen width.
## How to use this skill
- Load together with `antislop.md` whenever the task is mobile or responsive layout work. The core holds the mechanism (the purpose test, the three tiers, the Delivery Gate); this skill holds mobile-layout depth.
- Every entry has the same shape: **Tell** (the pattern), **Why** (why it reads as slop), **Fix** (what to do instead), with the governing core rule cited as R-XX.
- The principle behind this skill: **mobile layout is a different layout, not the desktop layout at a smaller size.** It must reflow: re-stack, rescale, and re-order with intent. Every pattern below is a way a layout fails to reflow.
- The Delivery Gate in the core remains the gate. The "Layoutmobile Skill Checklist" at the end of this file is the mobile-specific supplement to run alongside it.
## Breakpoints
View the complete source on GitHubantislop-ui
When your agent uses it
UI and visual skill for antislop. Use when building or editing any interface: color, layout, components, motion, and page performance. Load with the core.
What it loads into context
Frontmatter
53 tokensAlways available to the agent
SKILL.md
6,804 tokensWhen the skill is activated
Reference documents
2,306 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- How to use this skill
- Visual & Color
- Layout & Components
- Decorative Elements
- Structural & Flow
- App & Dashboard
- Motion
- Performance
- Page Basics
- UI Skill Checklist
Files
LICENSE-web-quality-skillsasset1,068 bytesSKILL.mdcore29,121 bytesreferences/CORE-WEB-VITALS.mddoc8,428 bytesreferences/WEB-BASELINE.mddoc1,469 bytes
Read SKILL.md
# antislop-ui
> Anti Slop: Rules for AI Coding Agents. UI & Visual skill
> Part of the antislop system. Read together with `antislop.md` (the core). This skill deep-dives the UI/visual concern: color, layout, components, decoration, structural flow, and motion. It references core rules by number and never duplicates or renumbers them. Load it when the task builds or edits a website, web app, or any interface.
## How to use this skill
- Load together with `antislop.md` whenever the task is UI or visual work. The core holds the mechanism (the purpose test, the three tiers, the Delivery Gate); this skill holds UI-specific depth.
- Every entry has the same shape: **Tell** (the pattern), **Why** (why it reads as slop), **Fix** (what to do instead), with the governing core rule cited as R-XX.
- The Delivery Gate in the core remains the gate. The "UI Skill Checklist" at the end of this file is the UI-specific supplement to run alongside it.
## Visual & Color
### Generic Blue-Purple GradientView the complete source on GitHubSkills included
- antislop
- antislop-code
- antislop-copywriting
- antislop-human
- antislop-layoutmobile
- antislop-ui
Repository facts
- License
- MIT
- Created
- Aug 7, 2026
- Last pushed
- Nov 5, 2026
- Forks
- 569
- Open issues
- 1
- Project activity
- Active
Rank over the last 12 weeks
Now #172 · best #172 · up 68 in 30 days
- #181 on Nov 1
- #178 on Nov 2
- #179 on Nov 3
- #177 on Nov 4
- #174 on Nov 5
- #172 since Nov 6
77 earlier periods
- #891 on Aug 2
- #883 on Aug 8
- #880 on Aug 9
- #911 on Aug 10
- #915 on Aug 11
- #913 on Aug 12
- #915 on Aug 13
- #892 on Aug 14
- #853 on Aug 15
- #875 on Aug 16
- #877 on Aug 17
- #893 on Aug 18
- #883 on Aug 19
- #868 on Aug 20
- #870 on Aug 21
- #811 on Aug 22
- #866 on Aug 23
- #877 on Aug 24
- #888 on Aug 25
- #871 from Aug 26 to Aug 27
- #904 on Aug 28
- #803 on Aug 29
- #775 on Aug 30
- #805 on Aug 31
- #818 on Sep 1
- #789 on Sep 2
- #745 on Sep 3
- #610 on Sep 4
- #540 on Sep 5
- #506 on Sep 6
- #468 from Sep 7 to Sep 8
- #423 on Sep 9
- #414 on Sep 10
- #398 on Sep 11
- #387 on Sep 12
- #378 on Sep 13
- #366 on Sep 14
- #354 on Sep 15
- #333 on Sep 16
- #320 on Sep 17
- #318 on Sep 18
- #302 from Sep 19 to Sep 20
- #288 on Sep 21
- #287 on Sep 22
- #284 on Sep 23
- #281 on Sep 24
- #274 on Sep 25
- #272 on Sep 26
- #269 on Sep 27
- #273 on Sep 28
- #265 on Sep 29
- #259 on Sep 30
- #261 on Oct 1
- #260 on Oct 2
- #255 on Oct 3
- #251 on Oct 4
- #253 on Oct 5
- #251 on Oct 6
- #247 on Oct 7
- #240 on Oct 8
- #235 on Oct 9
- #228 from Oct 10 to Oct 11
- #227 on Oct 12
- #223 on Oct 13
- #221 on Oct 14
- #217 on Oct 15
- #212 on Oct 16
- #214 on Oct 17
- #208 on Oct 18
- #206 on Oct 19
- #205 on Oct 20
- #203 on Oct 21
- #202 on Oct 22
- #200 on Oct 23
- #196 on Oct 24
- #187 from Oct 29 to Oct 30
- #185 on Oct 31
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 5, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 15 notes
skills/antislop/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/antislop/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/antislop/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/antislop/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/antislop/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/antislop/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/antislop/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/antislop-copywriting/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/antislop-copywriting/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/antislop-copywriting/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/antislop-copywriting/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/antislop-human/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/antislop-human/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/antislop-human/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/antislop-human/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- 2 broad permissionsin 1 file: skills/antislop-human/SKILL.md:1
- No dangerous shell commands
- 60 network referencesin 8 files: skills/antislop-ui/references/CORE-WEB-VITALS.md:3 skills/antislop-human/references/WCAG.md:3 antislop/SKILL.md:22 and 5 more
- No hidden or obfuscated text
- No instruction overrides
- 5 executable scriptsin 3 files: skills/antislop-human/contrast-check.py:1 skills/antislop-human/contrast-mcp.py:1 .claude-plugin/contrast-mcp-launcher.mjs:1
- No access to secrets
- No requests to vote in Hot
Show all 67 signals by file
.claude-plugin/contrast-mcp-launcher.mjs
- Executable scriptline 1
#!/usr/bin/env node
.claude-plugin/plugin.json
skills/antislop-copywriting/SKILL.md
- Network accessline 321
- **Formal vocabulary.** AI overuses *specific* words (see Empty AI Vocabulary), not all fancy words. Do not flatten a precise word just because it sounds brainy. - **Common transition words in isolation.** One "however" or "additionally" i - Network accessline 321
- **Formal vocabulary.** AI overuses *specific* words (see Empty AI Vocabulary), not all fancy words. Do not flatten a precise word just because it sounds brainy. - **Common transition words in isolation.** One "however" or "additionally" i - Network accessline 322
- **Common transition words in isolation.** One "however" or "additionally" is not a tell. They count only when piled up. - **Curly quotes alone.** macOS, Word, and most CMSes auto-curl by default. Curly quotes count only when stacked with - Network accessline 322
- **Common transition words in isolation.** One "however" or "additionally" is not a tell. They count only when piled up. - **Curly quotes alone.** macOS, Word, and most CMSes auto-curl by default. Curly quotes count only when stacked with - Network accessline 323
- **Curly quotes alone.** macOS, Word, and most CMSes auto-curl by default. Curly quotes count only when stacked with other tells. - Network accessline 323
- **Curly quotes alone.** macOS, Word, and most CMSes auto-curl by default. Curly quotes count only when stacked with other tells.
skills/antislop-human/SKILL.md
skills/antislop-human/contrast-check.py
skills/antislop-human/contrast-mcp.py
skills/antislop-human/references/A11Y-PATTERNS.md
- Network accessline 3
> Reference for antislop. Adapted from the MIT-licensed web-quality-skills by Addy Osmani (https://github.com/addyosmani/web-quality-skills); see LICENSE-web-quality-skills in the skill folder. - Network accessline 3
> Reference for antislop. Adapted from the MIT-licensed web-quality-skills by Addy Osmani (https://github.com/addyosmani/web-quality-skills); see LICENSE-web-quality-skills in the skill folder.
skills/antislop-human/references/WCAG.md
- Network accessline 3
> Reference for antislop. Adapted from the MIT-licensed web-quality-skills by Addy Osmani (https://github.com/addyosmani/web-quality-skills); see LICENSE-web-quality-skills in the skill folder. - Network accessline 3
> Reference for antislop. Adapted from the MIT-licensed web-quality-skills by Addy Osmani (https://github.com/addyosmani/web-quality-skills); see LICENSE-web-quality-skills in the skill folder. - Network accessline 125
- [WCAG 2.2 W3C Recommendation](https://www.w3.org/TR/WCAG22/) - Network accessline 125
- [WCAG 2.2 W3C Recommendation](https://www.w3.org/TR/WCAG22/) - Network accessline 126
- [WCAG 2.2 Quick Reference](https://www.w3.org/WAI/WCAG22/quickref/) - Network accessline 126
- [WCAG 2.2 Quick Reference](https://www.w3.org/WAI/WCAG22/quickref/) - Network accessline 127
- [What's New in WCAG 2.2](https://www.w3.org/WAI/standards-guidelines/wcag/new-in-22/) - Network accessline 127
- [What's New in WCAG 2.2](https://www.w3.org/WAI/standards-guidelines/wcag/new-in-22/)
skills/antislop-ui/SKILL.md
- Network accessline 321
- **Tell:** a page shipped with no doctype, mixed `http://` content, a secret in client code, or an unpinned third-party script. - Network accessline 321
- **Tell:** a page shipped with no doctype, mixed `http://` content, a secret in client code, or an unpinned third-party script.
skills/antislop-ui/references/CORE-WEB-VITALS.md
- Network accessline 3
> Reference for antislop. Adapted from the MIT-licensed web-quality-skills by Addy Osmani (https://github.com/addyosmani/web-quality-skills); see LICENSE-web-quality-skills in the skill folder. - Network accessline 3
> Reference for antislop. Adapted from the MIT-licensed web-quality-skills by Addy Osmani (https://github.com/addyosmani/web-quality-skills); see LICENSE-web-quality-skills in the skill folder. - Network accessline 72
// ❌ Content loads after JavaScript useEffect(() => { fetch('/api/hero-text').then(r => r.json()).then(setHeroText); - Network accessline 72
// ❌ Content loads after JavaScript useEffect(() => { fetch('/api/hero-text').then(r => r.json()).then(setHeroText); - Network accessline 73
useEffect(() => { fetch('/api/hero-text').then(r => r.json()).then(setHeroText); }, []); - Network accessline 73
useEffect(() => { fetch('/api/hero-text').then(r => r.json()).then(setHeroText); }, []); - Network accessline 74
fetch('/api/hero-text').then(r => r.json()).then(setHeroText); - Network accessline 74
fetch('/api/hero-text').then(r => r.json()).then(setHeroText); - Network accessline 109
Start conservatively and measure prediction hit rate, transferred bytes, server load, and navigation improvement before expanding the rules. Recheck [Chrome's maintained eagerness documentation](https://developer.chrome.com/docs/web-platfor - Network accessline 109
Start conservatively and measure prediction hit rate, transferred bytes, server load, and navigation improvement before expanding the rules. Recheck [Chrome's maintained eagerness documentation](https://developer.chrome.com/docs/web-platfor - Network accessline 111
Caveats: - **Bandwidth/CPU cost.** Each prerender is roughly a full page load. Scope `where` carefully (`href_matches` patterns, exclude logout/checkout) and avoid `immediate` outside small sites. - **Side effects fire early.** Analytics, a - Network accessline 111
Caveats: - **Bandwidth/CPU cost.** Each prerender is roughly a full page load. Scope `where` carefully (`href_matches` patterns, exclude logout/checkout) and avoid `immediate` outside small sites. - **Side effects fire early.** Analytics, a - Network accessline 112
- **Bandwidth/CPU cost.** Each prerender is roughly a full page load. Scope `where` carefully (`href_matches` patterns, exclude logout/checkout) and avoid `immediate` outside small sites. - **Side effects fire early.** Analytics, ads, and a - Network accessline 112
- **Bandwidth/CPU cost.** Each prerender is roughly a full page load. Scope `where` carefully (`href_matches` patterns, exclude logout/checkout) and avoid `immediate` outside small sites. - **Side effects fire early.** Analytics, ads, and a - Network accessline 113
- **Side effects fire early.** Analytics, ads, and any code that runs on load will fire when the prerender starts, not when the user navigates. Gate side effects on the [`prerenderingchange` event](https://developer.chrome.com/docs/web-plat - Network accessline 113
- **Side effects fire early.** Analytics, ads, and any code that runs on load will fire when the prerender starts, not when the user navigates. Gate side effects on the [`prerenderingchange` event](https://developer.chrome.com/docs/web-plat - Network accessline 149
When field INP is poor or a trace identifies a slow interaction, read [web.dev on optimizing INP](https://web.dev/articles/optimize-inp) for trace interpretation, yielding patterns, and third-party and rendering causes. - Network accessline 149
When field INP is poor or a trace identifies a slow interaction, read [web.dev on optimizing INP](https://web.dev/articles/optimize-inp) for trace interpretation, yielding patterns, and third-party and rendering causes. - Network accessline 157
When field CLS is poor or a trace reports shifts, read [web.dev on optimizing CLS](https://web.dev/articles/optimize-cls) for reserved-space patterns, dynamic content, and font and animation fixes. - Network accessline 157
When field CLS is poor or a trace reports shifts, read [web.dev on optimizing CLS](https://web.dev/articles/optimize-cls) for reserved-space patterns, dynamic content, and font and animation fixes. - Network accessline 173
When adding or reviewing production collection, read [the `web-vitals` library documentation](https://github.com/GoogleChrome/web-vitals). Prefer the `web-vitals` library because raw browser APIs do not by themselves implement every Core We - Network accessline 173
When adding or reviewing production collection, read [the `web-vitals` library documentation](https://github.com/GoogleChrome/web-vitals). Prefer the `web-vitals` library because raw browser APIs do not by themselves implement every Core We - Network accessline 179
- [web.dev LCP](https://web.dev/articles/lcp) and [optimizing LCP](https://web.dev/articles/optimize-lcp) - Network accessline 179
- [web.dev LCP](https://web.dev/articles/lcp) and [optimizing LCP](https://web.dev/articles/optimize-lcp) - Network accessline 180
- [web.dev INP](https://web.dev/articles/inp) - Network accessline 180
- [web.dev INP](https://web.dev/articles/inp) - Network accessline 181
- [web.dev CLS](https://web.dev/articles/cls) - Network accessline 181
- [web.dev CLS](https://web.dev/articles/cls)
skills/antislop-ui/references/WEB-BASELINE.md
- Network accessline 3
> Reference for antislop. Adapted from the MIT-licensed web-quality-skills by Addy Osmani (https://github.com/addyosmani/web-quality-skills); see LICENSE-web-quality-skills in the skill folder. - Network accessline 3
> Reference for antislop. Adapted from the MIT-licensed web-quality-skills by Addy Osmani (https://github.com/addyosmani/web-quality-skills); see LICENSE-web-quality-skills in the skill folder. - Network accessline 23
- HTTPS for every resource, with no mixed `http://` content. - Network accessline 23
- HTTPS for every resource, with no mixed `http://` content.
skills/antislop/SKILL.md
- Network accessline 22
- **A plugin door**: each agent keeps its own copy, and `--update` cannot reach those. The installer names the command for any door it finds installed; without it, these are the seven: - **Claude Code**: `claude plugin update antislop@ant - Network accessline 23
- **Claude Code**: `claude plugin update antislop@anti-slop` - **Antigravity**: `agy plugin install https://github.com/miqdadbadjuber/anti-slop` - **Codex**: `codex plugin marketplace upgrade anti-slop` - Network accessline 24
- **Antigravity**: `agy plugin install https://github.com/miqdadbadjuber/anti-slop` - Network accessline 25
- **Codex**: `codex plugin marketplace upgrade anti-slop` - **Cursor**: `agent plugin marketplace update https://github.com/miqdadbadjuber/anti-slop` - **Kimi Code**: `/plugins install https://github.com/miqdadbadjuber/anti-slop` - Network accessline 26
- **Cursor**: `agent plugin marketplace update https://github.com/miqdadbadjuber/anti-slop` - Network accessline 27
- **Kimi Code**: `/plugins install https://github.com/miqdadbadjuber/anti-slop` - Network accessline 28
- **Cline**: `cline plugin install https://github.com/miqdadbadjuber/anti-slop.git --force`
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Signal confidence: 64 facts
- Executable script in code of a file that runs.claude-plugin/contrast-mcp-launcher.mjs:1High confidence
- Network access in prose of the SKILL.mdskills/antislop-copywriting/SKILL.md:321Low confidence
- Network access in prose of the SKILL.mdantislop-copywriting/SKILL.md:321Low confidence
- Network access in prose of the SKILL.mdskills/antislop-copywriting/SKILL.md:322Low confidence
- Network access in prose of the SKILL.mdantislop-copywriting/SKILL.md:322Low confidence
- Network access in prose of the SKILL.mdskills/antislop-copywriting/SKILL.md:323Low confidence
- Network access in prose of the SKILL.mdantislop-copywriting/SKILL.md:323Low confidence
- Broad permissions in the frontmatter of the SKILL.mdskills/antislop-human/SKILL.md:1High confidence
- Broad permissions in the frontmatter of the SKILL.mdantislop-human/SKILL.md:1High confidence
- Executable script in code of a file that runsskills/antislop-human/contrast-check.py:1High confidence
- Executable script in code of a file that runsantislop-human/contrast-check.py:1High confidence
- Executable script in code of a file that runsskills/antislop-human/contrast-mcp.py:1High confidence
- Executable script in code of a file that runsantislop-human/contrast-mcp.py:1High confidence
- Network access in prose of documentationskills/antislop-human/references/A11Y-PATTERNS.md:3Low confidence
- Network access in prose of documentationantislop-human/references/A11Y-PATTERNS.md:3Low confidence
- Network access in prose of documentationskills/antislop-human/references/WCAG.md:3Low confidence
- Network access in prose of documentationantislop-human/references/WCAG.md:3Low confidence
- Network access in prose of documentationskills/antislop-human/references/WCAG.md:125Low confidence
- Network access in prose of documentationantislop-human/references/WCAG.md:125Low confidence
- Network access in prose of documentationskills/antislop-human/references/WCAG.md:126Low confidence
- Network access in prose of documentationantislop-human/references/WCAG.md:126Low confidence
- Network access in prose of documentationskills/antislop-human/references/WCAG.md:127Low confidence
- Network access in prose of documentationantislop-human/references/WCAG.md:127Low confidence
- Network access in prose of the SKILL.mdskills/antislop-ui/SKILL.md:321Low confidence
- Network access in prose of the SKILL.mdantislop-ui/SKILL.md:321Low confidence
- Network access in prose of documentationskills/antislop-ui/references/CORE-WEB-VITALS.md:3Low confidence
- Network access in prose of documentationantislop-ui/references/CORE-WEB-VITALS.md:3Low confidence
- Network access in code of documentationskills/antislop-ui/references/CORE-WEB-VITALS.md:72Low confidence
- Network access in code of documentationantislop-ui/references/CORE-WEB-VITALS.md:72Low confidence
- Network access in code of documentationskills/antislop-ui/references/CORE-WEB-VITALS.md:73Low confidence
- Network access in code of documentationantislop-ui/references/CORE-WEB-VITALS.md:73Low confidence
- Network access in code of documentationskills/antislop-ui/references/CORE-WEB-VITALS.md:74Low confidence
- Network access in code of documentationantislop-ui/references/CORE-WEB-VITALS.md:74Low confidence
- Network access in prose of documentationskills/antislop-ui/references/CORE-WEB-VITALS.md:109Low confidence
- Network access in prose of documentationantislop-ui/references/CORE-WEB-VITALS.md:109Low confidence
- Network access in prose of documentationskills/antislop-ui/references/CORE-WEB-VITALS.md:111Low confidence
- Network access in prose of documentationantislop-ui/references/CORE-WEB-VITALS.md:111Low confidence
- Network access in prose of documentationskills/antislop-ui/references/CORE-WEB-VITALS.md:112Low confidence
- Network access in prose of documentationantislop-ui/references/CORE-WEB-VITALS.md:112Low confidence
- Network access in prose of documentationskills/antislop-ui/references/CORE-WEB-VITALS.md:113Low confidence
- Network access in prose of documentationantislop-ui/references/CORE-WEB-VITALS.md:113Low confidence
- Network access in prose of documentationskills/antislop-ui/references/CORE-WEB-VITALS.md:149Low confidence
- Network access in prose of documentationantislop-ui/references/CORE-WEB-VITALS.md:149Low confidence
- Network access in prose of documentationskills/antislop-ui/references/CORE-WEB-VITALS.md:157Low confidence
- Network access in prose of documentationantislop-ui/references/CORE-WEB-VITALS.md:157Low confidence
- Network access in prose of documentationskills/antislop-ui/references/CORE-WEB-VITALS.md:173Low confidence
- Network access in prose of documentationantislop-ui/references/CORE-WEB-VITALS.md:173Low confidence
- Network access in prose of documentationskills/antislop-ui/references/CORE-WEB-VITALS.md:179Low confidence
- Network access in prose of documentationantislop-ui/references/CORE-WEB-VITALS.md:179Low confidence
- Network access in prose of documentationskills/antislop-ui/references/CORE-WEB-VITALS.md:180Low confidence
and 14 more
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Native | Manifest .claude-plugin/marketplace.json | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md skills/antislop/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md skills/antislop/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md skills/antislop/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md skills/antislop/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md skills/antislop/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.
Add this badge to your README
It updates every night and links to this page.
[](https://hotskills.dev/skill/miqdadbadjuber-anti-slop/)