Slop Eval
Overview
Section titled “Overview”Evaluate a design the way skill-evaluation evaluates a skill: every finding cites concrete evidence, every axis gets a 0–100 score, arithmetic runs through a script, and the output is a structured report — never a vibe check.
Based on The pols.dev anti-slop design law — the tell catalog, absolute rules, and signature formula are distilled from it.
When to Use
Section titled “When to Use”- Evaluate whether a design looks generic/AI-generated
- Requests like “slop report”, “is this AI slop”, “audit this landing page design”, “de-slop review”
- Objective score of how templated/machine-made a design looks
- CI quality gate (block PR if Slop Index > threshold)
- Before delivering design to client or publishing
- Track design evolution over time (Tracking Mode)
For text (not design), use
human-ai(EN) orhumanizar(PT-BR).
Installation
Section titled “Installation”npx skills add https://github.com/fabricioctelles/skills -s slop-evalWhat’s New in v1.1.0 (Aug 2026)
Section titled “What’s New in v1.1.0 (Aug 2026)”Section Ledger
Section titled “Section Ledger”Per-section verdicts with tell density bands:
| Verdict | Tells | Meaning |
|---|---|---|
| CLEAN | 0–1 | Ship as-is |
| SUSPICIOUS | 2–3 | Review before shipping |
| INFLATED | 4–6 | Redesign section |
| CRITICAL | ≥7 or any crit | Rebuild from scratch |
Design Contexts
Section titled “Design Contexts”Context-aware evaluation for 4 design types:
| Context | Priority Tells | Tolerances |
|---|---|---|
| Landing Page | L1, L2, S1, C1, K9, L4 | K2, K14 (if real deadline), L9 |
| SaaS Dashboard | X1, X3, K6, K22, L3, L15 | K1, K13, T4, K7 (if real UI) |
| Editorial | T1, T2, T3, L7, W2, L10 | C7, L5, K21, T6 |
| E-commerce | X3, X5, K23, W3, M8, L3 | K14, K22, K17, L12 |
Exclusion System
Section titled “Exclusion System”Formalized tags for documenting excluded tells:
| Tag | When to use |
|---|---|
// BRIEF: |
Client/stakeholder explicitly directed |
// DESIGN DECISION: |
Documented design decision with reasoning |
// CONTEXT: |
Design context makes pattern acceptable |
// PREMIUM PAIR: |
This is the premium version, not slop |
Tracking Mode
Section titled “Tracking Mode”Temporal evolution analysis with:
- Score progression table with trends (✅/⚠️)
- Tells resolved (what got fixed)
- New tells (what got introduced)
- Regressions (axes/sections that got worse)
- Velocity metrics (tells resolved per week)
- Recommendations for next iteration
# First evaluation — establishes baselineslop-eval --target https://site.com --output ./reports/baseline.md
# Later evaluation — tracks evolutionslop-eval --target https://site.com --output ./reports/week-2.md \ --compare ./reports/baseline.mdAdding Soul Guide
Section titled “Adding Soul Guide”Prescription-oriented guide for injecting personality into each axis — not just “remove tell X” but “replace with premium alternative Y”:
| Axis | Generic | With soul |
|---|---|---|
| Color | UI kit palette | One unexpected color with a reason |
| Typography | Inter/Space Grotesk | A face with opinion (Gambarino, Reckless) |
| Components | Lucide icons in tiles | Bespoke icons in house style |
| Layout | Centered hero stack | Asymmetric composition |
| Motion | Fade-in on scroll | Authored micro-interaction |
Expanded Quality Checklist
Section titled “Expanded Quality Checklist”25+ checks across 6 phases:
- Pre-sweep: evidence inventory, brief documented, context identified
- During-sweep: cite-or-cut, premium pair checked, portability and defense tests
- Exclusion: tags documented, genuine exclusions, reasonable count
- Post-sweep: unverifiable checks marked, absolute rules, gates applied
- Report: template followed, fixes ranked by impact
- Self-audit: “What still looks like obvious slop that I didn’t flag?”
8 Scored Axes
Section titled “8 Scored Axes”| # | Axis | Weight | Scored from |
|---|---|---|---|
| 1 | Color & Light | 2x | Tells C1–C15 |
| 2 | Typography & Copy | 2x | Tells T1–T10, W1–W3 |
| 3 | Components & Ornament | 1x | Tells K1–K27 |
| 4 | Layout & Composition | 2x | Tells L1–L21 |
| 5 | Motion & Interaction | 1x | Tells M1–M8 |
| 6 | Execution & Craft | 2x | Tells X1–X14 |
| 7 | Signature & Uniqueness | 3x | 7-element formula |
| 8 | Cohesion | 2x | 4 checks |
Grade Scale
Section titled “Grade Scale”| Grade | Overall | Slop Index | Verdict |
|---|---|---|---|
| A | 80–100 | 0–20 | Premium — deliberate, signed, executed |
| B | 60–79 | 21–40 | Considered — mostly deliberate |
| C | 40–59 | 41–60 | Generic — clean but templated |
| D | 20–39 | 61–80 | Slop — assembled from presets |
| F | 0–19 | 81–100 | Pure slop |
6 Absolute Rules
Section titled “6 Absolute Rules”Each is pass/fail — failure is a critical tell that triggers the gate:
- Content visible by default — nothing gated on entrance animation
- Clear the cut — no text/control sliced by clip, notch, or overflow
- Parallel alignment — comparable columns share baselines
- Real centering — everything meant to be centered is (math and optical)
- Legible contrast — every text clears its background by a real value gap
- Controls work — every interactive-looking control responds
Evidence Channels
Section titled “Evidence Channels”| Channel | Can verify | Cannot verify |
|---|---|---|
| Code (CSS/JSX/HTML) | Fonts, hex values, gradients, shadows, radii, layout | Optical centering, rendered contrast, interactions |
| Screenshot(s) | Everything visual: palette, type, layout, alignment | Hover/scroll motion, dead controls |
| Live URL | All of the above plus interactions, motion, fold | Only what you didn’t exercise |
Gates (Caps)
Section titled “Gates (Caps)”- Signature gate: Axis 7 < 40 → caps overall at 59 (grade C max). Clean design with no signature is still slop.
- Absolute-rule gate: any confirmed critical tell → caps overall at 69 (no grade A with broken execution).
- Compounding cap: ≥3 major layout tells → caps Axis 4 at 40.
CI Integration
Section titled “CI Integration”- name: Slop gate run: | python3 skills/slop-eval/scripts/score.py overall \ 1:$A1:2 2:$A2:2 3:$A3:1 4:$A4:2 5:$A5:1 6:$A6:2 7:$A7:3 8:$A8:2 \ --fail-below 40Sources
Section titled “Sources”- The pols.dev anti-slop design law
- Method modeled on skill-evaluation