Use when the user wants to apply a visual design system to a project, references a specific brand's style (Linear-like, Stripe-like, Claude-like), asks for a DESIGN.md, or describes aesthetic intent (warm editorial, dark minimal, stark futuristic) for AI UI generation
74
—
Does it follow best practices?
Impact
—
No eval scenarios have been run
Advisory
Suggest reviewing before use
Resolves user design intent to a curated DESIGN.md file from VoltAgent/awesome-design-md and installs it into the current project. Index-only by design — fetches via GitHub raw URLs, never bundles upstream files.
Trigger phrases:
When NOT to use:
ui-ux-pro-max directly (note: if there is a brand reference, x-design will chain into ui-ux-pro-max via step 6 anyway)x-reviewmultimodal-looker + write directlyDESIGN.md the user is happy with → point to it, don't overwriteRead these files before routing any request:
0. ../x-shared/capability-loading.md — pin capabilities for the session (used to gate the optional ui-ux-pro-max and shadcn MCP handoffs in steps 6-7).
config.json — pinned commit, URL templates, defaultsreferences/catalog.md — 58 sites with slugs, categories, intent tags, tag vocabulary| Signal | Route |
|---|---|
| Named brand ("Linear", "Stripe", "Claude") | Direct slug lookup in catalog |
| Descriptive intent ("warm editorial", "dark minimal") | Match against intent tags → propose 2–3 candidates |
| "What's available?" / "list styles" | Show catalog section(s) the user cares about |
| "Something like X but Y" | Look up X's tags, filter by Y, propose candidates |
| "Refresh catalog" / "update pin" | See "Re-pinning" section in references/catalog.md |
Resolve target directory. Confirm cwd is a project root (has .git, package.json, pyproject.toml, or user confirms explicitly). If ambiguous, ask before proceeding. Never write outside the user-confirmed directory.
agentmemory.server_up pinned per ../x-shared/capability-loading.md): one curl -fsS -X POST "${AGENTMEMORY_URL:-http://localhost:3111}/agentmemory/vision-search" -H 'content-type: application/json' -d '{"query":"<design topic>","limit":5}' call. Surface prior screenshots / mockups as supplementary context for slug resolution. When agentmemory.server_up is not pinned, skip silently — Claude's native auto-memory file still applies.Resolve slug from intent.
linear.app, mistral.ai, x.ai, cal, not cal.com) — always verify against the catalog.Intent Tags column. Return top 2–3 candidates with their one-liners. Ask the user to pick.references/catalog.md.Preview before install. Show the user:
{commit} and {slug} into preview_url_template from config.json)Fetch the DESIGN.md. Build the raw URL from config.json raw_url_template, substituting {repo}, {commit}, {slug}:
curl -fsSL "https://raw.githubusercontent.com/VoltAgent/awesome-design-md/<commit>/design-md/<slug>/DESIGN.md" -o <target>/DESIGN.mdcurl -f fails loudly on 404 (stale commit or wrong slug). If a DESIGN.md already exists at the target, warn and ask before overwriting.
Report. Show:
package.json (React/Next → Tailwind bg-[#hex] or className), nuxt.config / vue deps (Vue → scoped <style>), svelte.config (Svelte → style: directives), pubspec.yaml (Flutter → Color(0xFFhex)), or plain HTML. Append one line: "Section 9 prompts use raw CSS values — adapt to bg-[#f5f4ed] (Tailwind), style={{ background }} (React), or your framework's convention."references/ai-slop-patterns.md — name the top 3–4 pitfalls inline (3-column feature grid, gradient backgrounds, icons in colored circles, cookie-cutter rhythm) and note: "See the full list in the AI slop reference. The site-specific Don'ts in section 7 take precedence."Offer the ui-ux-pro-max handoff. DESIGN.md captures aesthetic intent; ui-ux-pro-max captures enforceable rules (a11y, palettes, stack guidelines, anti-patterns). External user-level skill (NOT shipped in this plugin) — upstream: https://github.com/nextlevelbuilder/ui-ux-pro-max-skill. Install location: ~/.omc/skills/ui-ux-pro-max/ (or ~/.claude/skills/ui-ux-pro-max/). Detect first by checking the available skills list. Behavior:
"Want me to also generate a
design-system/MASTER.mdwith implementation rules viaui-ux-pro-max? It complementsDESIGN.md— vision vs. rules."
"Optional next step:
ui-ux-pro-maxwould generate enforceable rules (design-system/MASTER.md) to complementDESIGN.md. Not installed. Source: https://github.com/nextlevelbuilder/ui-ux-pro-max-skill. Skipping for now."
If user accepts, invoke ui-ux-pro-max with the same intent (brand name + product type + descriptive tags from the catalog row). Primitive: handoff (sync, depends on result). Include a handoff context block: from x-design, slug + brand name + tags, path of the installed DESIGN.md, recommended next step. The two files coexist: DESIGN.md is the north-star; MASTER.md is the rules engine. If user declines, skip silently — never push twice.
Offer the shadcn MCP handoff. DESIGN.md + MASTER.md describe what the UI looks like; shadcn MCP is how to install matching components. Conditional — call mcp__shadcn__get_project_registries first; empty/error result triggers the non-shadcn advisory below, then proceeds to step 8 (never push shadcn onto non-shadcn projects). If registries exist, follow the workflow in references/shadcn-handoff.md (detect → ask once → seed primitives with search_items_in_registries + get_add_command_for_items → optional get_audit_checklist). Primitive: sequential handoff after step 6 — shadcn consumes MASTER.md tokens, so it must follow the ui-ux-pro-max handoff (do NOT fan out steps 6 + 7 in parallel). Print install commands; never auto-run. Include a handoff context line when surfacing the install commands so the next session knows which DESIGN.md/MASTER.md drove the picks.
Non-shadcn framework advisory: When get_project_registries returns empty, check for a detectable framework and offer a one-line hint (never push, just inform):
nuxt.config.* or vue in deps → "Apply DESIGN.md tokens via CSS custom properties or scoped <style> in Vue SFCs."svelte.config.* → "Apply tokens via Svelte's style: directives or a shared tokens.css."pubspec.yaml (Flutter) → "Map DESIGN.md hex values to Color(0xFF...) constants in a theme file."index.html only (vanilla) → "Apply tokens as CSS custom properties in a <style> block or linked stylesheet."Optionally hint the project CLAUDE.md. Default (auto_update_claude_md: false) is to ASK first. If user consents, append one line matched to what was installed:
| Files present | Line to append |
|---|---|
Only DESIGN.md | When generating or modifying UI, read DESIGN.md in the project root for visual styling rules. |
DESIGN.md + design-system/MASTER.md | When generating UI: read DESIGN.md (brand vision) and design-system/MASTER.md (rules). |
| Above + shadcn registries detected | When generating UI: read DESIGN.md (vision) and design-system/MASTER.md (rules); use the shadcn MCP (search_items_in_registries, get_add_command_for_items) to install matching components. |
Never modify any other content in CLAUDE.md.
mcp.agentmemory pinned in bootstrap-active set): one mcp__plugin_agentmemory_agentmemory__memory_save({ content: "<one-line design decision + rationale>", type: "insight", concepts: "x-design,decision,slot:design,<area>" }) call. The slot: token in concepts substitutes for the upstream slot-store API (not present in agentmemory v0.9.21 — convention, not contract; memory_save silently drops unknown top-level fields, so a category arg would be invisible — verified at research/rohitg00/agentmemory/src/mcp/standalone.ts:104-114). Skip silently when not pinned.| Task | How |
|---|---|
| Install a named brand to cwd | Resolve slug from catalog → curl -fsSL <raw_url> -o DESIGN.md |
| List styles in a category | Read references/catalog.md → print the category table |
| Show tag vocabulary | Read the "Tag Vocabulary" section at the bottom of references/catalog.md |
| Refresh to newer upstream commit | Follow "Re-pinning" procedure in references/catalog.md |
| Preview without installing | Construct preview_url_template and print it — don't curl |
Generate matching MASTER.md (rules) | Step 6 — invoke ui-ux-pro-max with brand + tags |
| Find matching shadcn components | Step 7 — search_items_in_registries then get_add_command_for_items |
| Non-shadcn framework hint | Step 7 — when shadcn detection fails, check for Vue/Svelte/Flutter and advise |
| Offline fallback when curl 404s | Use research_fallback_path from config.json |
curl (fail-loud with -f) — fetches raw files from GitHubconfig.json — pinned commit + URL templates + defaultsreferences/catalog.md — 58-site index, authoritative slug + tag sourceVoltAgent/awesome-design-md at the pinned commit in config.jsonui-ux-pro-max skill (step 6 handoff) — generates design-system/MASTER.md. External user-level skill, NOT shipped in this plugin. Upstream: https://github.com/nextlevelbuilder/ui-ux-pro-max-skill. Install path: ~/.omc/skills/ui-ux-pro-max/ (or ~/.claude/skills/ui-ux-pro-max/).shadcn MCP (step 7 handoff) — get_project_registries, search_items_in_registries, get_add_command_for_items, get_audit_checklistui-ux-pro-max — bespoke design authoring (styles, palettes, accessibility). x-design routes to existing references; ui-ux-pro-max helps author decisions from scratch. External user-level skill (not shipped here) — install from https://github.com/nextlevelbuilder/ui-ux-pro-max-skill.update-research — maintains the research-library clone (path in config.json → research_fallback_path); separate from this skill's index-only footprintx-review — post-install visual review passThree-stage pipeline (steps 4 → 6 → 7):
x-design fetches DESIGN.md — brand vision (the what)ui-ux-pro-max generates design-system/MASTER.md — enforceable rules (the constraints)shadcn MCP finds and installs matching components — execution (the how)Each stage is opt-in. Stages 2 and 3 are skipped silently if the user declines or the project can't support them.
| Mistake | Fix |
|---|---|
| Fetching without confirming project root | Always resolve cwd first; ask user if ambiguous |
Overwriting existing DESIGN.md silently | Always warn + confirm |
Modifying CLAUDE.md without consent | Default is ask-first; never auto-append |
| Hardcoding the commit SHA | Always read from config.json → pinned_commit |
| Bundling upstream files into the skill | Skill is index-only — never copy design-md/ into the skill dir |
| Guessing slugs | Always check references/catalog.md (slugs have irregular forms) |
| Skipping section 9 in the report | The agent prompt examples are the highest-leverage takeaway |
| Showing section 9 without philosophy framing | Always remind to read sections 1, 5, 7 first |
| Omitting stack-aware hint | Detect framework and suggest how to adapt CSS values |
| Omitting AI slop warning | Always append the generation pitfalls advisory |
Fetching preview.html to the project | Only DESIGN.md belongs in the project; previews are for eyeballing on github.com |
| Pushing shadcn on non-shadcn projects | Step 7 must call get_project_registries first; empty result = non-shadcn advisory |
| Skipping non-shadcn framework advisory | When shadcn detection fails, check for Vue/Svelte/Flutter and offer a one-line token-application hint |
Auto-running npx shadcn add ... commands | Step 7c prints install commands; the user runs them |
Forcing ui-ux-pro-max when it isn't installed | Step 6 must check the available skills list before invoking |
Silently skipping step 6 when ui-ux-pro-max missing | Surface the install pointer (https://github.com/nextlevelbuilder/ui-ux-pro-max-skill) once, then stop — do NOT no-op |
See gotchas.md for known failure patterns.
6381b15
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.