@shadcn/lint
An agent-first linter for Tailwind design systems that lets you define allowed component styling rules and gives a coding agent guidance, not just an error, when it breaks one.
@shadcn/lint lints Tailwind-based design systems against rules you define yourself, describing which classes or style changes are allowed on which components. When a rule is broken, the error explains what is wrong and suggests a fix based on the project's own components, variants, and theme, which the project contrasts with a plain TypeScript type error that only says a property is disallowed without saying how to achieve the intended result instead.
It works with existing Tailwind v4 projects without requiring a rewrite, does not require shadcn/ui specifically, supports both ESLint and Oxlint, and works with React, Svelte, and Vue. Rules can be scoped to individual components, for example allowing a Button to take margin and width classes while keeping its padding and shape fixed.