Help us improve
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
By xiaolai
Block hardcoded UI values; enforce design tokens with rewrite-first hooks and a closed-loop control system
npx claudepluginhub xiaolai/ui-tokenize --plugin ui-tokenizeScan the project for hardcoded UI values; default gates on changed lines vs baseline
Print the live design-token catalog grouped by category
Apply exact-match token rewrites in place across the project
Discover existing token sources or scaffold a new ui-tokenize-managed token system
Print the session ledger — blocks, rewrites, fabrications, escalations
Admin access level
Server config contains admin-level keywords
Modifies files
Hook triggers on file write and edit operations
Share bugs, ideas, or general feedback.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Ultra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Comprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns
Memory compression system for Claude Code - persist context across sessions
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.
Write feature specs, plan roadmaps, and synthesize user research faster. Keep stakeholders updated and stay ahead of the competitive landscape.
Natural-Language Programming Manager — scan, lint, and write NL artifacts with Claude-native quality scoring
A 260-token system prompt that overrides three structural presumptions every RLHF-trained LLM inherits from training: that you want confirmation, that old scarcity still applies, that best practices are ceilings.
English language coach for non-native speakers — auto-corrects prompts, translates non-English, refines with :: prefix, tracks improvement over time
Initialize a multi-agent workspace with shared configuration for Claude Code, Codex CLI, and Gemini CLI
Documentation quality and freshness enforcer — detect staleness, check accuracy, measure coverage, and auto-generate docs
Uses power tools
Uses Bash, Write, or Edit tools
Uses power tools
Uses Bash, Write, or Edit tools
Has parse errors
Some configuration could not be fully parsed
Has parse errors
Some configuration could not be fully parsed
Share bugs, ideas, or general feedback.
A Claude Code plugin that blocks hardcoded UI values and enforces design tokens at the moment the agent writes them.
When the agent calls Write, Edit, or MultiEdit, ui-tokenize inspects the content before it lands on disk and does one of three things:
var(--color-primary) in CSS, tokens.color.primary in TSX, etc.). The agent never sees an error.tokenize__propose MCP tool.It also ships a CLI for init, catalog, audit, fix, propose, and metrics, plus an MCP server exposing five tokenize__* tools.
LLM-generated frontend code drifts away from a design system fast. The agent guesses #3b82f6 when the team has color.primary, picks padding: 17px when the spacing scale only goes 4/8/16/24, and invents new color names when a token already exists. Style Dictionary, Stylelint, and ESLint can catch some of this in CI — but by then the literal is already in the diff, in the agent's context, and likely repeated across files.
ui-tokenize moves the gate to the write itself. The agent's wrong literal is corrected on the way to disk, or it is rejected with the right answer attached. Either way, the design system stays intact and the loop closes in one round-trip instead of three.
Zero runtime dependencies. No build step. Pure Node ESM, ≥ 20.
claude plugin install ui-tokenize@xiaolai --scope project
Install fails with "Plugin not found in marketplace 'xiaolai'"? Your local marketplace clone is stale. Run
claude plugin marketplace update xiaolaiand retry —plugin installdoes not auto-refresh.
In a project with existing tokens (DTCG tokens.json, CSS :root vars, SCSS / LESS / TS / Tailwind / CSS-in-JS):
/tokenize:init
In a project with no tokens yet:
/tokenize:init --starter shadcn
After init, every Write/Edit/MultiEdit from any agent in this project is intercepted automatically. The remaining slash commands are for inspection and CI:
| Command | Purpose |
|---|---|
/tokenize:catalog [pattern] | Print the live token catalog |
/tokenize:audit [--changed-only|--full-repo] [--baseline <ref>] [--json] | Scan for hardcoded values; default gates on changed lines vs baseline |
/tokenize:review [--changed-only|--full-repo] [--baseline <ref>] | Semantic review: dispatch the token-reviewer agent to flag mis-picked tokens |
/tokenize:fix [<path>] | Apply exact-match rewrites in place |
/tokenize:propose <value> "<intent>" | Queue a new token proposal |
/tokenize:metrics | Session ledger: blocks, rewrites, fabrications, escalations |
.tokenize/config.json:
| Mode | Effect |
|---|---|
consumer (default) | Agent cannot write tokens.json directly. New tokens go through tokenize__propose. |
maintainer | tokenize__add_token and tokenize__deprecate MCP tools are exposed; they write to tokens.json after DTCG / naming / collision validation. Direct Write/Edit of tokens.json remains denied. |