pbakaus / impeccable
A design language and toolkit intended to improve the visual-design output of AI coding harnesses.
description README.md
Impeccable
Design guidance for AI coding agents. 1 skill, 24 commands, live browser iteration, and 61 deterministic detector rules for AI-generated frontend design.
Quick start: From your project root, run
npx impeccable install, then run/impeccable initinside your AI coding tool. Full docs: impeccable.style.
Why Impeccable?
Anthropic's frontend-design was the first widely-used design skill for Claude. Impeccable started from there.
Every model trained on the same SaaS templates. Skip the guidance and you get the same handful of tells on every project: Inter for everything, purple-to-blue gradients, cards nested in cards, gray text on colored backgrounds, the rounded-square icon tile above every heading.
Impeccable adds:
- One setup flow.
/impeccable initrecords durable product truth inPRODUCT.md, so later commands know the audience, purpose, operating context, constraints, voice, and evidence without confusing those facts with surface-level visual direction. - 24 commands. A shared design vocabulary with your AI:
polish,audit,critique,distill,animate,bolder,quieter, and more. - 61 deterministic detector rules plus LLM-only critique checks. The CLI and browser extension run the deterministic rules with no LLM and no API key.
What's Included
The Skill: impeccable
The skill installs as one command:
/impeccable <command> <target>
Start every new project with:
/impeccable init
init inspects the project, asks only for material gaps in durable product truth, and writes PRODUCT.md. Visitor mode and visual direction are chosen later for each surface; incumbent or newly built visual systems are recorded separately in DESIGN.md.
24 Commands
All commands are accessed through /impeccable:
| Command | What it does |
|---|---|
/impeccable craft | Full shape-then-build flow with visual iteration |
/impeccable init | One-time setup: gather durable product context, write PRODUCT.md, configure live mode when applicable, recommend next steps |
/impeccable document | Generate root DESIGN.md from existing project code |
/impeccable extract | Pull reusable components and tokens into the design system |
/impeccable shape | Plan UX/UI before writing code |
/impeccable critique | UX design review: hierarchy, clarity, emotional resonance |
/impeccable audit | Run technical quality checks (a11y, performance, responsive) |
/impeccable polish | Final pass, design system alignment, and shipping readiness |
/impeccable bolder | Amplify boring designs |
/impeccable quieter | Tone down overly bold designs |
/impeccable distill | Strip to essence |
/impeccable harden | Error handling, i18n, text overflow, edge cases |
/impeccable onboard | First-run flows, empty states, activation paths |
/impeccable animate | Add purposeful motion |
/impeccable colorize | Introduce strategic color |
/impeccable typeset | Fix font choices, hierarchy, sizing |
/impeccable layout | Fix layout, spacing, visual rhythm |
/impeccable delight | Add moments of joy |
/impeccable overdrive | Add technically extraordinary effects |
/impeccable clarify | Improve unclear UX copy |
/impeccable adapt | Adapt for different devices |
/impeccable optimize | Performance improvements |
/impeccable live | Visual variant mode: iterate on elements in the browser |
/impeccable generate | Generate variants of a named element in the live browser, no manual picking |
Use /impeccable pin <command> to create standalone shortcuts (e.g., pin audit creates /audit).
Usage Examples
/impeccable audit blog # Audit blog hub + post pages
/impeccable critique landing # UX design review
/impeccable polish settings # Final pass before shipping
/impeccable harden checkout # Add error handling + edge cases
Or use /impeccable directly with a description:
/impeccable redo this hero section
Anti-Patterns
The skill includes explicit guidance on what to avoid:
- Don't use overused fonts (Arial, Inter, system defaults)
- Don't use gray text on colored backgrounds
- Don't use pure black/gray (always tint)
- Don't wrap everything in cards or nest cards inside cards
- Don't use bounce/elastic easing (feels dated)
See It In Action
Visit the Neo Mirai case study to see a before/after case study of a real project transformed with Impeccable commands.
Installation
The skill needs no runtime of its own. Every skill copy ships a small launcher (scripts/impeccable, plus impeccable.cmd for Windows) that runs the Impeccable engine, a self-contained binary that either sits next to the launcher or is downloaded once on first run into ~/.impeccable/bin/. Node is only involved if you use the npx impeccable installer, which is a shim around the same binary; the manual and Git options below work without it.
Option 1: CLI installer (Recommended)
From the root of your project, run:
npx impeccable install
This shows the harness folders or installed CLIs it detected (for example ~/.claude, ~/.codex, ~/.grok, ~/.hermes, ~/.veto, or project-local .cursor), lets you keep the detected set or customize providers, then asks whether to install into the current project or globally. Use --providers=claude,codex,cursor,grok,hermes,veto and --scope=project|global to skip those choices in scripts. On Claude Code, Cursor, Codex, GitHub Copilot, and Grok Build, it also installs the provider-native hook manifest for the current project. Veto receives the packaged skill under ~/.veto/skills/ and does not run native Impeccable edit hooks. Works with Cursor, Claude Code, Gemini CLI, Codex CLI, Grok Build, Hermes Agent, Veto, and every other supported tool. Reload your harness afterward.
To refresh an existing install, run:
npx impeccable update
Codex users should open /hooks after install or update and approve the project hook when prompted. Codex tracks trust by hook definition, so updates that change .codex/hooks.json can require approval again. Grok Build users need project folder trust (/hooks-trust or launch with --trust) before .grok/hooks/ scripts run.
See Allow the hook in your harness for harness-specific trust and verification steps.
Option 2: Git Submodule
For teams that want to keep Impeccable vendored and updated through Git, add this repo as a submodule and link the compiled provider build into your harness folders:
git submodule add https://github.com/pbakaus/impeccable .impeccable
npx impeccable link --source=.impeccable --providers=claude,cursor
git add .gitmodules .impeccable .claude .cursor
git commit -m "Add Impeccable skills"
Use the providers your project needs, for example claude, cursor, gemini, codex, github, grok, hermes, opencode, pi, qoder, trae, trae-cn, rovo-dev, vibe, or veto. The command links individual skill folders from .impeccable/dist/universal/ and leaves existing real skill directories untouched unless you pass --force.
To update later:
git submodule update --remote .impeccable
npx impeccable link --source=.impeccable --providers=claude,cursor
Option 3: Plugin install
GitHub Copilot in VS Code:
Install Impeccable from the Visual Studio Marketplace, or run:
code --install-extension renaissance-geek.impeccable
Requires VS Code 1.109.3+, Copilot Chat access, and a trusted local workspace. Open Chat in Agent mode and try /impeccable polish. This skill-only extension does not install automatic hooks;
More in developer-workflows-skills

morluto / rea
An agent-assisted reverse-engineering toolkit for analyzing software behavior, code, and native binaries.

affaan-m / ECC
A performance-optimization system for coding-agent harnesses spanning skills, memory, security, and research-first development.

JuliusBrussee / caveman
A compact coding-agent skill and proxy focused on reducing token use through shorter, intentionally constrained agent communication.

tt-a1i / archify
An agent skill for turning ideas, plans, or codebases into interactive software-architecture diagrams.