design-critique
Run a structured anti-slop audit on the design just produced before declaring done.
Skill by aiatelie
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/aiatelie-design-critique
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, frontend, security
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/design-critique
What's inside
- Skill name
design-critique- Description
- Run a structured anti-slop audit on the design just produced before declaring done. Catches the recognizable AI-default patterns (Tailwind indigo, two-stop trust gradients, emoji-as-icons, generic display fonts, rounded-card-with-left-border, and 20+ more) so they can be fixed before the user sees them.
- License
- MIT
- Instructions
- 86 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Design critique
A structured audit pass run AFTER the design is generated, BEFORE declaring the work done. The goal: catch the recognizable AI-default patterns (purple gradients, Tailwind indigo, emoji-as-icons, container soup) before the user has to call them out.
## When to use
Run this skill at the end of any non-trivial design generation:
- After `frontend-design` produces a new page or component
- After applying an aesthetic preset and before showing the result
- When the user says "audit this", "is this slop?", "make it less generic"
- Before any final export from the canvas
Skip when:
- The design is a tiny tweak (single property, copy edit) — not worth the audit overhead
- The user explicitly asked for a generic / template look — they're consciously opting in
## How the audit runs
The critique is a **structured walk** through three buckets, in order:
1. **P0 — cardinal sins.** These are the patterns most-cited by reviewers as "this is AI slop." Any P0 hit fails the audit; fix before declaring done.
2. **P1 — soft tells.** Patterns that aren't fatal alone but compound. Two or more P1 hits should be addressed.
3. **P2 — polish opportunities.** Nice-to-fix; flag in the response without blocking.
For each bucket, list every hit with the specific file/line and a fix. Don't say "looks good" without enumerating what was checked.
## P0 — cardinal sins (must fix)
1. **Tailwind indigo as accent.** Exactly `#6366f1`, `#4f46e5`, `#4338ca`, `#3730a3`, `#8b5cf6`, `#7c3aed`, `#a855f7`. The textbook machine tell. **Fix:** pick a single intentional accent that fits the chosen aesthetic; if no aesthetic was committed, run `design-aesthetic-presets` first.
2. **Two-stop "trust" gradient on the hero.** Purple→blue, blue→cyan, indigo→pink. **Fix:** flat surface + intentional type beats it every time. If a gradient is genuinely required, use a mesh (3+ stops) or a single-hue ramp.
3. **Emoji as feature icons.** `✨`, `🚀`, `🎯`, `⚡`, `🔥`, `💡` inside `<h*>`, `<button>`, `<li>`, or `class*="icon"`. **Fix:** monoline SVG icons (1.4–1.8px stroke) using `currentColor`. Or no icon — labels alone often beat emoji.
4. **Generic display fonts.** A page-level hero in Inter / Roboto / Arial / system-ui / Space Grotesk. **Fix:** pick a display face that fits the aesthetic. The aesthetic-presets skill names canonical pairings.
5. **Rounded card with a colored left-border accent.** The canonical generated dashboard tile. **Fix:** drop the radius OR drop the left border, never both together. Better: replace with a different elevation move (top border, no border, full-tint background, top-left corner cut).
6. **Invented metrics.** "10× faster", "99.9% uptime", "3× more productive" with no source. **Fix:** pull from real data, or use a labelled placeholder (`<span data-placeholder>10×</span>`).
7. **Filler copy.** `lorem ipsum`, `feature one / two / three`, `placeholder text`, `sample content`. **Fix:** an empty section is a design problem, not a copy problem — solve with composition, not invented words. Or ask the user for real copy.
## P1 — soft tells (compounds; fix when ≥2)
8. **Accent overuse.** The chosen brand color appears 3+ times in a single screen. **Fix:** cap at 2 visible uses. Hover and focus rings count.
9. **Container soup.** Pills, cards, and chips stacked everywhere with no hierarchy. **Fix:** demote secondary surfaces to typography-only (no background, no border) and reserve container styling for primary content.
10. **Hardcoded hex outside `:root`.** More than ~12 raw hex values in component CSS. **Fix:** add tokens at `:root`, reference via `var(--token)`.
11. **Per-theme overrides in component CSS.** `[data-theme="dark"] .myComponent { ... }` blocks inside a component. **Fix:** push the variation up to the token layer; the component reads `var(--token)` once.
12. **Standard hero → features → pricing → FAQ → CTA sequence with no variation.** **Fix:** introduce at least one unconventional section (full-bleed quote, comparison, mini-product-demo, founder note).
13. **External placeholder image CDNs.** `unsplash.com`, `placehold.co`, `picsum.photos` URLs. **Fix:** use a flat surface or an SVG placeholder (a colored rectangle with the asset name labelled).
14. **ALL CAPS without letter-spacing.** Section labels, eyebrows, status pills in CAPS at default tracking. **Fix:** `letter-spacing: 0.06em` floor for any CAPS at body or smaller; 0.08–0.1em looks better at micro-sizes.
15. **Drop shadow on every card.** Shadow is hierarchy — if everything hovers, nothing does. **Fix:** reserve elevation for popovers, modals, and primary CTAs; flat for the rest.
16. **Justified body text.** `text-align: justify` creates rivers on the web. **Fix:** left-align body, ragged right.
17. **Mixed serif and slab on the same screen without a role split.** **Fix:** assign roles — serif for editorial accents, slab for code, sans for everything else.
18. **Decorative blob / wave SVG backgrounds.** Meaningless geometry. **Fix:** delete it. If atmosphere is needed, use a real gradient mesh, real noise texture, or real photography.
19. **Perfect symmetric layout with no visual tension.** **Fix:** alternate density — one tight section, one breathing — so the page reads as composed.
20. **Section labels in body weight.** Eyebrow labels rendered in default weight, default tracking. **Fix:** uppercase + 11–12 px + `letter-spacing: 0.06em` + a muted tone (60–70% ink).
## P2 — polish opportunities (mention but don't block)
21. **Body in tabular columns using proportional digits.** **Fix:** `font-variant-numeric: tabular-nums` on numeric columns.
22. **Heading uses `font-family: system-ui` directly.** **Fix:** alias to a token (`var(--font-display)`) so the page doesn't read as machine default on Linux first paint.
23. **More than 3 type sizes visible above the fold.** **Fix:** consolidate to a clear scale — display, body, caption.
24. **Display text without negative tracking.** **Fix:** `letter-spacing: -0.01em` to `-0.03em` on display ≥ 32px.
25. **Body line length > 75 characters.** **Fix:** `max-width: 65ch` on long-form body copy.
26. **Same-weight visual hierarchy** (everything bold or everything regular). **Fix:** apply the three-weight system — read (400) / emphasize (500) / announce (600).
27. **Blinking status dot decorations** that don't actually indicate live state. **Fix:** make the indicator real (hooked up to an actual status) or remove it.
## Reporting format
After running the audit, output a structured block:
```
DESIGN-CRITIQUE-RESULT: pass | fail
P0 hits: 0 (or list each: <name> at <file>:<line> — <fix>)
P1 hits: 0 (or list each)
P2 hits: 0 (or list each)
Verdict: <one sentence — what's strong, what to address>
```
If `P0 hits > 0`: do NOT declare the design done. Apply the fixes (in the same response if possible) and re-run the critique on the result.
If `P0 hits = 0` but `P1 hits ≥ 2`: state the trade-off explicitly to the user. They may consciously opt to ship with soft tells.
## Anti-patterns for this skill
- **"Looks good"** without enumerating the checks. The audit's value is the explicit walk, not the verdict.
- **Hand-waving fixes.** "Make it more distinctive" is not a fix; "swap Inter for Editorial New on display" is.
- **Auditing the agent's process.** Don't critique the prompt or the iteration history — critique the artifact.
- **Re-running on a tiny tweak.** The critique is for whole designs; running it on a single-property change is overhead.From aiatelie/ai-atelie, MIT.
More from aiatelie/ai-atelie
- 0.542score
frontend-design
aiatelie
Aesthetic and convention guide for editing AI Atelie's own chrome — the editor, canvas frame, toolbars, sidebars, dialogs, settings, projects screen.
SkillCFreshness: C★ 11Claude Code +9 - 0.542score
design-md-author
aiatelie
Read or write a Google-spec DESIGN.md at the project root — the cross-tool aesthetic spec that grounds every prompt in this project.
SkillCFreshness: C★ 11Claude Code +9 - 0.542score
semantic-commit
aiatelie
Draft a Conventional Commits 1.0.0 message for the AI Atelie repo.
SkillCFreshness: C★ 11Claude Code +9 - 0.542score
canvas-sync
aiatelie
Keep the canvas surface coherent across its three places — the canonical starter at `mcp/starters/DesignCanvas.jsx`, the byte-identical demo copy at…
SkillCFreshness: C★ 11Claude Code +9 - 0.542score
cuj-guardian
aiatelie
Run and triage AI Atelie's Critical User Journey (CUJ) for every PR — the single end-to-end test that proves a user can open the app, create a project, drive…
SkillCFreshness: C★ 11Claude Code +9 - 0.539score
interactive-prototype
aiatelie
Build a clickable, hi-fi prototype of a product or flow — not a wireframe, not a static mock.
SkillCFreshness: C★ 11Claude Code +9 - 0.539score
ship-task
aiatelie
Take an AI Atelie task — issue, ticket, or ad-hoc ask — all the way from description to merged-ready PR.
SkillCFreshness: C★ 11Claude Code +9 - 0.539score
animated-video
aiatelie
Timeline-based motion design — animated explainer-style HTML artifacts where time advances and elements enter or exit on a schedule.
SkillCFreshness: C★ 11Claude Code +9 - 0.539score
design-aesthetic-presets
aiatelie
Pick one of eleven named aesthetic directions before writing any code, then execute it with discipline.
SkillCFreshness: C★ 11Claude Code +9 - 0.539score
export
aiatelie
Export a selected element from the canvas as PNG, JPEG, OGraf bundle, Lottie, or video.
SkillCFreshness: C★ 11Claude Code +9 - 0.538score
verify-with-playwright
aiatelie
Drive a real browser against AI Atelie's running dev server to verify a change works, and capture screenshots + video as PR evidence.
SkillCFreshness: C★ 11Claude Code +9 - 0.538score
pr-evidence
aiatelie
Run AI Atelie's journey suite and inject inline-rendering evidence (per-journey video + screenshot, in a 4-column markdown table) into the current PR's body.
SkillCFreshness: C★ 11Claude Code +9
Signals
- Stars
- 11
- Forks
- 0
- Open issues
- 40
- Last commit (this folder)
- May 7, 2026 (5 months ago)
- Last release
- Jun 3, 2026 (4 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/aiatelie/ai-atelie
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from aiatelie
- 0.542score
design-md-author
aiatelie
Read or write a Google-spec DESIGN.md at the project root — the cross-tool aesthetic spec that grounds every prompt in this project.
SkillCFreshness: C★ 11Claude Code +9 - 0.542score
semantic-commit
aiatelie
Draft a Conventional Commits 1.0.0 message for the AI Atelie repo.
SkillCFreshness: C★ 11Claude Code +9 - 0.542score
canvas-sync
aiatelie
Keep the canvas surface coherent across its three places — the canonical starter at `mcp/starters/DesignCanvas.jsx`, the byte-identical demo copy at…
SkillCFreshness: C★ 11Claude Code +9 - 0.542score
cuj-guardian
aiatelie
Run and triage AI Atelie's Critical User Journey (CUJ) for every PR — the single end-to-end test that proves a user can open the app, create a project, drive…
SkillCFreshness: C★ 11Claude Code +9 - 0.542score
frontend-design
aiatelie
Aesthetic and convention guide for editing AI Atelie's own chrome — the editor, canvas frame, toolbars, sidebars, dialogs, settings, projects screen.
SkillCFreshness: C★ 11Claude Code +9 - 0.539score
ship-task
aiatelie
Take an AI Atelie task — issue, ticket, or ad-hoc ask — all the way from description to merged-ready PR.
SkillCFreshness: C★ 11Claude Code +9
Cite this page
design-critique skill. Agent Mart. https://agentmart.dev/skills/aiatelie-design-critique (last updated 2026-10-24)