From 237810396c58416f9b270fb594a56e044058fb17 Mon Sep 17 00:00:00 2001 From: Bastien Chanot Date: Mon, 25 May 2026 20:59:19 +0200 Subject: [PATCH] chore(plugins): add frontend-design to plugin-advisor and design-gate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit frontend-design (Anthropic's anti-AI-slop skill) was installed but not referenced in the plugin-advisor decision table, recommended sets, or conditional rules — nor in the design-gate detection logic. Co-Authored-By: Claude Opus 4.6 (1M context) --- agents/plugin-advisor.md | 14 ++++++++------ lib/design-gate.md | 15 +++++++++++---- 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/agents/plugin-advisor.md b/agents/plugin-advisor.md index 8f2b53a..3939f80 100644 --- a/agents/plugin-advisor.md +++ b/agents/plugin-advisor.md @@ -217,10 +217,10 @@ findings before producing recommendations: | Signal | Enable / Use | Disable / Skip | Notes | |---|---|---|---| -| `frontend` | ui-ux-pro-max | — | UI design and polish | +| `frontend` | ui-ux-pro-max, frontend-design | — | UI design and polish. frontend-design = Anthropic's anti-AI-slop design skill (external, symlinked) | | `mobile` (React Native/Expo/Flutter) | — | gstack (no browser QA), Docker N/A | ui-ux-pro-max optional | | `monorepo` | per-package plugin recommendations | avoid recommending gstack for whole repo if only one package has browser QA | Specify which plugin applies to which package | -| `design-system` | ui-ux-pro-max | — | Design tokens, theme, Storybook | +| `design-system` | ui-ux-pro-max, frontend-design | — | Design tokens, theme, Storybook | | `deploy` + `browser-qa` | gstack | — | Full-product workflow | | `multi-session` | gsd v2 CLI | — | Run `gsd` in terminal, not CC plugin | | `fast-libs` | context7 | — | Doc freshness critical | @@ -271,12 +271,12 @@ When the plugin-advisor detects a `simple` or `hotfix` signal, suggest the appro | Project type | Plugins ON | OFF | Passive cost | |---|---|---|---| | Backend API / microservice | superpowers, context7 (if fast libs) | ui-ux-pro-max, gstack | ~800t | -| Frontend SPA / SSR | superpowers, ui-ux-pro-max, context7 | gstack | ~1400t | -| Full-stack SaaS | superpowers, gstack, ui-ux-pro-max, context7 | — | ~4200t | +| Frontend SPA / SSR | superpowers, ui-ux-pro-max, frontend-design, context7 | gstack | ~1400t | +| Full-stack SaaS | superpowers, gstack, ui-ux-pro-max, frontend-design, context7 | — | ~4200t | | CLI tool / library | superpowers | all toggles | ~800t | | Multi-session large feature | superpowers + gsd v2 CLI (external) | — | ~800t CC | | Quick fix / hotfix | superpowers | all toggles | ~800t | -| Design system / component lib | superpowers, ui-ux-pro-max | gstack, gsd | ~1200t | +| Design system / component lib | superpowers, ui-ux-pro-max, frontend-design | gstack, gsd | ~1200t | | Fast-evolving libs (Next.js etc.) | superpowers, context7 | — | ~1000t | | Enterprise multi-agent orchestration | superpowers + gsd v2 (external) | plugin-dev | ~800t CC | @@ -299,6 +299,7 @@ RULE: IF "monorepo" signal detected: RULE: IF "frontend" signal OR .tsx/.jsx count > 0: → ui-ux-pro-max ON if "design-system" signal (~400t) + → frontend-design ON (external skill, 0t passive — symlink at ~/.claude/skills/frontend-design) RULE: IF "deploy" AND "browser-qa" signals: → gstack ON (~2750t) — full-product workflow @@ -338,7 +339,8 @@ RULE: IF `browser-qa` signal (e2e tests, Playwright/Cypress/Puppeteer in deps): RULE: IF `design-system` signal (tokens, theme files, Storybook present): → ui-ux-pro-max ON (~400t) - → WARN if OFF with this signal: significant design gap + → frontend-design ON (external skill, 0t passive) + → WARN if both OFF with this signal: significant design gap RULE: IF `complex-arch` signal (multiple services, event bus, distributed system): → gsd v2 CLI recommended for multi-session coordination diff --git a/lib/design-gate.md b/lib/design-gate.md index 1d56bdd..4a679f0 100644 --- a/lib/design-gate.md +++ b/lib/design-gate.md @@ -27,15 +27,16 @@ Check BOTH the task description AND the filesystem: If **at least one signal** is detected: -1. Check if `ui-ux-pro-max` is active: +1. Check if `ui-ux-pro-max` and `frontend-design` are active: ```bash source "$HOME/.claude/lib/detect-plugins.sh" - detect_uiux_pro_max && echo "ACTIVE" || echo "INACTIVE" + detect_uiux_pro_max && echo "ui-ux-pro-max: ACTIVE" || echo "ui-ux-pro-max: INACTIVE" + [ -L "$HOME/.claude/skills/frontend-design" ] && echo "frontend-design: ACTIVE" || echo "frontend-design: INACTIVE" ``` -2. If **ACTIVE** → proceed silently. The plugin context is already available. +2. If **both ACTIVE** → proceed silently. Design context is fully available. -3. If **INACTIVE** → ask the user: +3. If **ui-ux-pro-max INACTIVE** → ask the user: ``` 🎨 DESIGN DETECTED — task touches UI/styling. ui-ux-pro-max is not active. Activate it for design-aware guidance? @@ -44,6 +45,12 @@ If **at least one signal** is detected: - On **yes** → print `⚡ Activating ui-ux-pro-max...` and proceed with design context. - On **no** → print `Proceeding without design plugin.` and continue normally. +4. If **frontend-design INACTIVE** → warn (non-blocking): + ``` + ℹ️ frontend-design skill not installed — anti-AI-slop design guidelines unavailable. + Install: run install-plugins.sh or symlink skills-external/frontend-design to ~/.claude/skills/frontend-design + ``` + ## IMPORTANT - This gate adds ~5 seconds overhead. Worth it for design quality.