Impeccable: A Design Vocabulary for Your AI Harness
Generate a UI with any AI tool and you can spot it instantly: the purple-to-blue gradient, the cramped padding, the bouncy easing, the dark glow on a card. AI frontends all share one look — not because the models have bad taste, but because they have no words for hierarchy, contrast, and restraint. Ask for “better spacing” and you get a guess.
Impeccable, by Paul Bakaus, is a design language that fixes the vocabulary problem on both sides. It gives your agent 23 invocable commands and gives you the same terms, so you can ask for the exact thing — typeset the headings, quieter on this section, colorize strategically — instead of describing it and hoping. It runs inside your repo and refines code you already have; it does not generate a parallel design system from scratch.
What you’ll walk away with
Section titled “What you’ll walk away with”- Why AI-generated UIs converge on the same look, and what a shared vocabulary fixes
- How to install Impeccable and run its one-time setup
- The 23 commands, grouped by what they’re for
- Live Mode for in-browser iteration, and the
detectCLI for CI - When to reach for Impeccable versus the broader design pipeline
Install
Section titled “Install”From your project root:
npx impeccable skills installIt shows the detected harness folders, lets you customize providers, and asks whether to install project-locally or globally. Then run the one-time setup inside your AI tool:
/impeccable initinit gathers design context and writes PRODUCT.md and DESIGN.md — the files that ground every later command in your product’s intent and your design decisions.
The 23 commands
Section titled “The 23 commands”Every command is invoked as /impeccable <command> <target>. They map one-to-one onto design disciplines, which is the whole point — you name the discipline instead of describing the symptom.
Set up and capture
| Command | Does |
|---|---|
init | One-time setup: gather context, write PRODUCT.md / DESIGN.md |
document | Generate DESIGN.md from existing code |
extract | Pull components and tokens into a design system |
Plan and build
| Command | Does |
|---|---|
shape | Plan the UX/UI before any code |
craft | Full shape-then-build flow with visual iteration |
Review
| Command | Does |
|---|---|
critique | UX design review: hierarchy, clarity, resonance |
audit | Technical checks: a11y, performance, responsive behavior |
polish | Final pass and shipping readiness |
Change the character
| Command | Does |
|---|---|
bolder | Amplify a boring, timid design |
quieter | Tone down an overly loud one |
distill | Strip to the essence |
delight | Add moments of joy |
overdrive | Add technically extraordinary effects |
Fix one discipline
| Command | Does |
|---|---|
typeset | Fonts, hierarchy, sizing |
colorize | Introduce strategic color |
animate | Add purposeful motion |
layout | Spacing and visual rhythm |
clarify | Improve UX copy |
adapt | Adapt for different devices |
optimize | Performance improvements |
harden | Error handling, i18n, text overflow, edge cases |
onboard | First-run flows and empty states |
live | Visual variant mode — iterate in the browser |
Live Mode
Section titled “Live Mode”/impeccable live turns iteration into a browser session against your dev server. You pick an element, leave a comment, and swap in variants that write back to your source files through the framework’s hot-module reload. It’s the difference between “describe the change and re-read the diff” and “point at the thing and try three versions.”
The detect CLI: an anti-slop gate for CI
Section titled “The detect CLI: an anti-slop gate for CI”Separate from the harness commands, Impeccable ships a deterministic detector — 44 rules, no LLM, no API key — that you can run anywhere:
npx impeccable detect src/npx impeccable detect index.htmlnpx impeccable detect https://example.comnpx impeccable detect --json .It catches two families of problems: AI slop (purple gradients, bounce easing, dark glows, side-tab borders) and general design-quality issues (over-long line length, cramped padding, small touch targets, skipped heading levels). Because it’s deterministic and emits JSON plus exit codes, it drops straight into a PR check — a build gate that fails when generated UI starts to look generated.
When to reach for it
Section titled “When to reach for it”- Your AI-built UI is functional but generic and you want to direct specific improvements without learning to art-direct in prose.
- You want a deterministic design-quality gate in CI (
detect). - You’re polishing an existing codebase and need changes to inherit your tokens and components, not fight them.
For a full design-to-code methodology — mockup, prototype, design system, implementation — Impeccable slots into the build and polish stages of the four-stage design pipeline rather than replacing it. And where Impeccable audits design, shadcn/improve audits architecture — they’re complementary skills.