From 76b029ae9aab00c9a55ffb81b4e19e4fd0f501ab Mon Sep 17 00:00:00 2001 From: alejandrobailo Date: Thu, 18 Jun 2026 10:07:12 +0200 Subject: [PATCH] docs(ui): align UI agent guidance with HeroUI removal - Drop HeroUI legacy references; document components/ui/ as a deprecated shadcn re-export shim for the prowler-cloud overlay - Fix Component Placement tree (features/{feature} -> components/{domain}/ and components/shared/) to match the Scope Rule - Bump prowler-ui skill version 1.0 -> 1.1 --- skills/prowler-ui/SKILL.md | 27 +++++++++++++++++---------- ui/AGENTS.md | 4 ++-- 2 files changed, 19 insertions(+), 12 deletions(-) diff --git a/skills/prowler-ui/SKILL.md b/skills/prowler-ui/SKILL.md index eae8591d9f..267fefbef8 100644 --- a/skills/prowler-ui/SKILL.md +++ b/skills/prowler-ui/SKILL.md @@ -6,7 +6,7 @@ description: > license: Apache-2.0 metadata: author: prowler-cloud - version: "1.0" + version: "1.1" scope: [root, ui] auto_invoke: - "Creating/modifying Prowler UI components" @@ -38,11 +38,11 @@ NextAuth 5.0.0-beta.30 | Recharts 2.15.4 ### Component Placement ```text -New feature UI? → shadcn/ui + Tailwind -Used 1 feature? → features/{feature}/components/ -Used 2+ features? → components/shared/ -Needs state/hooks? → "use client" -Server component? → No directive needed +New UI primitive? → components/shadcn/ (shadcn/ui + Tailwind) +Used by 1 domain? → components/{domain}/ +Used by 2+ domains? → components/shared/ +Needs state/hooks? → "use client" +Server component? → No directive needed ``` ### Code Location @@ -56,10 +56,16 @@ Utils (shared 2+) → lib/ Utils (local 1) → {feature}/utils/ Hooks (shared 2+) → hooks/ Hooks (local 1) → {feature}/hooks.ts -shadcn components → components/shadcn/ -HeroUI components → components/ui/ (LEGACY) +UI primitive → components/shadcn/ +Domain component → components/{domain}/ ``` +> **Deprecated:** `components/ui/` is a temporary re-export shim that maps +> legacy import paths to `components/shadcn/` for the prowler-cloud overlay. +> HeroUI is fully removed. Never add or import components here — use +> `@/components/shadcn` (primitives) or `@/components/{domain}` instead. +> Delete the shim once the cloud repo migrates to `@/components/shadcn`. + ### Styling Decision ```text @@ -90,8 +96,9 @@ ui/ │ ├── services/ │ └── integrations/ ├── components/ -│ ├── shadcn/ # shadcn/ui (USE THIS) -│ ├── ui/ # HeroUI (LEGACY) +│ ├── shadcn/ # shadcn/ui primitives (USE THIS) +│ ├── shared/ # Cross-domain composed components (2+ domains) +│ ├── ui/ # DEPRECATED shim → re-exports shadcn (do not use) │ ├── {domain}/ # Domain-specific (compliance, findings, providers, etc.) │ ├── filters/ # Filter components │ ├── graphs/ # Chart components diff --git a/ui/AGENTS.md b/ui/AGENTS.md index 52d00dd4f7..a5727153ca 100644 --- a/ui/AGENTS.md +++ b/ui/AGENTS.md @@ -96,8 +96,8 @@ When performing these actions, ALWAYS invoke the corresponding skill FIRST: ### Component Placement ```text -New/Existing UI? → shadcn/ui + Tailwind -Used 1 feature? → features/{feature}/components | Used 2+? → components/{domain}/ +New UI primitive? → components/shadcn/ (shadcn/ui + Tailwind) +Used by 1 domain? → components/{domain}/ | Used by 2+ domains? → components/shared/ Needs state/hooks? → "use client" | Server component? → No directive ```