wizz-method 1.5.2 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/skills-registry.yaml +11 -0
- package/src/skills-lib/premium-landing-ui-researcher/SKILL.md +4 -4
- package/src/skills-lib/premium-landing-ui-researcher/references/component-sources.md +38 -26
- package/src/skills-lib/premium-landing-ui-researcher/references/core-goal.md +1 -1
- package/src/skills-lib/premium-landing-ui-researcher/references/output-format-and-quality.md +1 -1
- package/src/skills-lib/premium-landing-ui-researcher/references/source-first-protocol.md +39 -40
- package/src/skills-lib/premium-landing-ui-researcher/references/source-links.md +10 -5
- package/tools/installer/modules/cli-config.js +4 -0
- package/tools/installer/ui.js +8 -3
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package.json",
|
|
3
3
|
"name": "wizz-method",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.6.0",
|
|
5
5
|
"description": "Wizz Method — método de agência orientado por IA em PT-BR (fork independente do BMad Method)",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"agile",
|
package/skills-registry.yaml
CHANGED
|
@@ -138,6 +138,10 @@ areas:
|
|
|
138
138
|
env:
|
|
139
139
|
API_KEY: "${MAGIC_API_KEY}"
|
|
140
140
|
clis:
|
|
141
|
+
- id: 21st-cli
|
|
142
|
+
when: "Fonte PAGA complementar (catálogos gratuitos como React Bits/Cult UI/Componentry vêm primeiro; gate de aprovação do usuário). Buscar, inspecionar, instalar e publicar componentes no 21st.dev via terminal (search/get/add/publish, registry do time @wizzdigitalagency). Complementa o Magic MCP (geração assistida); é o caminho de catálogo/registry e o fallback declarado quando o MCP está offline. O install traz também as skills oficiais 21st-cli-use, 21st-registry e 21st-design-sync. Login interativo: `21st login` (em CI usar env API_KEY_21ST)."
|
|
143
|
+
check: "command -v 21st"
|
|
144
|
+
install: "npm i -g @21st-dev/cli && npx @21st-dev/cli install-skill"
|
|
141
145
|
- id: hyperframes
|
|
142
146
|
when: "Renderizar vídeo a partir de HTML/CSS/animação (HTML→MP4, agent-native, 20+ skills). Alternativa HTML-nativa ao Remotion (que é React). Precisa ffmpeg + Node 22 + Chrome headless."
|
|
143
147
|
# Gate de plataforma (2026-07-08): o `install` virou clone+checkout
|
|
@@ -491,6 +495,13 @@ mcp_utility:
|
|
|
491
495
|
cli_utility:
|
|
492
496
|
- id: rtk
|
|
493
497
|
when: "Token economy: proxy que corta 60-90% de tokens em comandos de dev. O wizz-router assume RTK ativo (Passo 0). Útil em todo o ecossistema."
|
|
498
|
+
# recommended (2026-07-08): o wizz-router assume RTK ativo no Passo 0, então
|
|
499
|
+
# o rtk vem PRÉ-MARCADO no multiselect de CLIs (initialValues) em vez de
|
|
500
|
+
# desmarcado como os demais. Continua opt-in — o install roda `curl | sh`,
|
|
501
|
+
# logo o usuário ainda vê a seleção e pode desmarcar. Só muda o default de
|
|
502
|
+
# "vazio" pra "rtk marcado", nunca instala à revelia (--yes/non-TTY seguem
|
|
503
|
+
# recommend-only). É a única CLI cross-cutting; as de área ficam opt-out.
|
|
504
|
+
recommended: true
|
|
494
505
|
# min_version formal (2026-07-07, M27) substitui o sort -V embutido no
|
|
495
506
|
# shell que existia aqui antes: auditoria 2026-07-07 (C4/RT1) achou 0.30.1
|
|
496
507
|
# instalado vs v0.43.0 pinado, invisível ao check anterior a ele (`rtk
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: premium-landing-ui-researcher
|
|
3
|
-
description: Pesquisar animações, componentes, referências visuais e padrões de conversão para criar landing pages premium em React, Next.js, Tailwind, shadcn/ui, Framer Motion, Three.js e React Three Fiber. Use esta skill quando o usuário pedir para analisar um projeto existente, classificar o nível de complexidade do site (básico, intermediário, avançado, 3D high-end com modo Signature), escolher componentes ou animações adequados, melhorar uma UI genérica, criar uma landing page completa, transformar uma oferta em página estratégica, projetar também um dashboard SaaS junto da landing, criar um site de autoridade/portfolio para agência, estúdio, consultoria, marca pessoal ou lead passivo, criar case studies e selected work editoriais, criar uma experiência 3D cinematográfica para marcas premium, buscar referências em React Bits, Cult UI, Ali Imam, Watermelon UI, StyleUI, Impeccable, Taste Skill, Design Motion Principles, MotionSites, Vibe Code Components, Landing Love, Godly, Design Spells, Mobbin, ScreensDesign, DesignVault, Spline, Unicorn Studio, Skiper UI, 21st.dev ou
|
|
3
|
+
description: Pesquisar animações, componentes, referências visuais e padrões de conversão para criar landing pages premium em React, Next.js, Tailwind, shadcn/ui, Framer Motion, Three.js e React Three Fiber. Use esta skill quando o usuário pedir para analisar um projeto existente, classificar o nível de complexidade do site (básico, intermediário, avançado, 3D high-end com modo Signature), escolher componentes ou animações adequados, melhorar uma UI genérica, criar uma landing page completa, transformar uma oferta em página estratégica, projetar também um dashboard SaaS junto da landing, criar um site de autoridade/portfolio para agência, estúdio, consultoria, marca pessoal ou lead passivo, criar case studies e selected work editoriais, criar uma experiência 3D cinematográfica para marcas premium, buscar referências em React Bits, Cult UI, Componentry, Animmaster Lib, Ali Imam, Watermelon UI, StyleUI, Refero, Impeccable, Taste Skill, Design Motion Principles, MotionSites, Vibe Code Components, Landing Love, Godly, Design Spells, Mobbin, ScreensDesign, DesignVault, Spline, Unicorn Studio, Skiper UI, 21st.dev (Magic MCP ou 21st CLI), ou implementar uma experiência visual sofisticada orientada à conversão ou à autoridade.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Premium Landing UI Researcher
|
|
@@ -9,7 +9,7 @@ Estrategista autônomo de landing pages premium, UI SaaS e experiências visuais
|
|
|
9
9
|
|
|
10
10
|
## Gate 1: Source-First (sempre, antes de qualquer código de UI)
|
|
11
11
|
|
|
12
|
-
Esta skill existe porque escrever shaders, animações, hovers e componentes do zero NÃO é o caminho. O caminho é curar componentes, animações e shaders maduros de fontes profissionais (
|
|
12
|
+
Esta skill existe porque escrever shaders, animações, hovers e componentes do zero NÃO é o caminho. O caminho é curar componentes, animações e shaders maduros de fontes profissionais (`modelos lp/` do usuário, React Bits, Cult UI, Ali Imam, Watermelon, StyleUI, Skiper UI e, como fonte PAGA complementar, 21st.dev via Magic MCP e 21st CLI) e adaptar à marca.
|
|
13
13
|
|
|
14
14
|
Regra absoluta: inspecione fontes reais, ofereça opções ao usuário, adapte à marca. Nunca recrie o que já existe maduro. Se uma fonte estiver indisponível (MCP offline, sem rede, sem permissão pra clone), declare isso explicitamente ao usuário antes de cair pro fallback de criar do zero. Nunca cair pro fallback silenciosamente. O mandato completo (anti-patterns e required pattern) está no topo de [source-first-protocol](references/source-first-protocol.md).
|
|
15
15
|
|
|
@@ -47,9 +47,9 @@ Classificar o projeto em um dos 5 níveis (regras, motion permitido/proibido e b
|
|
|
47
47
|
| Handoffs pro motion-3d-director e implementation-planner, regra final do ladder | [handoffs](references/handoffs.md) |
|
|
48
48
|
| SaaS Dashboard Mode e Portfolio / Authority Site Mode | [dashboard-and-portfolio-modes](references/dashboard-and-portfolio-modes.md) |
|
|
49
49
|
| Processo obrigatório de 12 passos e checkpoint de honestidade | [mandatory-process](references/mandatory-process.md) |
|
|
50
|
-
| Source-First Mandate completo + protocolo em 5 fases (inventário, Magic MCP,
|
|
50
|
+
| Source-First Mandate completo + protocolo em 5 fases (inventário, repos em cache, Magic MCP, 21st CLI, confirmação; 21st = fonte paga complementar) | [source-first-protocol](references/source-first-protocol.md) |
|
|
51
51
|
| Audit Protocol: Pass 1 Taste, Pass 2 Impeccable, Pass 3 Cross-check, Pass 4 A11y/Perf | [audit-protocol](references/audit-protocol.md) |
|
|
52
|
-
| Fontes de componentes (React Bits, Cult UI, Ali Imam, Watermelon, StyleUI, Skiper UI, 21st.dev
|
|
52
|
+
| Fontes de componentes (React Bits, Cult UI, Ali Imam, Watermelon, StyleUI, Skiper UI, 21st.dev + 21st CLI), fontes de referência e inspiração visual, Clone Policy, Paid Source Policy | [component-sources](references/component-sources.md) |
|
|
53
53
|
| Stack default, direção visual, paletas, tipografia e regras de seleção de animação | [stack-and-visual-direction](references/stack-and-visual-direction.md) |
|
|
54
54
|
| Estrutura obrigatória da landing, case studies/portfolio, copywriting, conversão e CTA externo/WhatsApp | [landing-page-strategy](references/landing-page-strategy.md) |
|
|
55
55
|
| Prompts base (landing completa e hero 3D com scroll) | [prompt-templates](references/prompt-templates.md) |
|
|
@@ -4,16 +4,15 @@ Priorizar fontes gratuitas, open source, públicas, registry-based ou fornecidas
|
|
|
4
4
|
|
|
5
5
|
Não depender de fontes pagas como parte central do fluxo.
|
|
6
6
|
|
|
7
|
-
Fluxo recomendado de pesquisa:
|
|
7
|
+
Fluxo recomendado de pesquisa (gratuito primeiro; 21st.dev é PAGO e entra como complemento):
|
|
8
8
|
|
|
9
|
-
1.
|
|
10
|
-
2.
|
|
11
|
-
3.
|
|
12
|
-
4.
|
|
13
|
-
5. fontes
|
|
14
|
-
6.
|
|
15
|
-
7.
|
|
16
|
-
8. hipóteses estratégicas coerentes, quando não houver acesso externo.
|
|
9
|
+
1. referências enviadas pelo usuário (`modelos lp/`, prints, links);
|
|
10
|
+
2. repositórios open source autorizados: cache central em `~/.claude/design-sources/` (React Bits, Cult UI, Ali Imam, Watermelon, StyleUI) + Skiper UI via shadcn + Componentry (componentry.dev, gratuito, React animado);
|
|
11
|
+
3. registries shadcn públicos;
|
|
12
|
+
4. fontes de taste/motion (Impeccable, Taste Skill, Design Motion Principles, MotionSites, Vibe Code Components, Refero Styles com DESIGN.md gratuito);
|
|
13
|
+
5. fontes visuais abertas (Landing Love, Godly, Design Spells, Mobbin, Refero, ScreensDesign, DesignVault, Spline, Unicorn Studio);
|
|
14
|
+
6. 21st.dev (fonte PAGA, complementar, com aprovação do usuário): Magic MCP (`mcp__magic__*`) e 21st CLI (`21st search`/`get`/`add`, registry do time);
|
|
15
|
+
7. hipóteses estratégicas coerentes, quando não houver acesso externo.
|
|
17
16
|
|
|
18
17
|
## 21st.dev / Magic MCP
|
|
19
18
|
|
|
@@ -48,29 +47,23 @@ Fluxo recomendado:
|
|
|
48
47
|
|
|
49
48
|
Se o Magic MCP ou API do 21st.dev não estiver disponível: não inventar resultados específicos, informar que o 21st.dev não está conectado, continuar usando as outras fontes disponíveis, pedir ao usuário para conectar o MCP/API se quiser busca direta no 21st.dev.
|
|
50
49
|
|
|
51
|
-
##
|
|
50
|
+
## 21st CLI: busca, inspeção e registry do time
|
|
52
51
|
|
|
53
|
-
O v0
|
|
52
|
+
O v0 saiu do fluxo (não é mais usado). A **CLI oficial do 21st.dev** cobre busca, inspeção, instalação e publicação, direto do terminal, com o registry do time (`@wizzdigitalagency`).
|
|
54
53
|
|
|
55
|
-
**
|
|
54
|
+
**Setup (uma vez):** `npm i -g @21st-dev/cli` + `21st login` (browser; em CI usar env `API_KEY_21ST`). As skills oficiais (`21st-cli-use`, `21st-registry`, `21st-design-sync`) instalam com `npx @21st-dev/cli install-skill` e ensinam o agente a publicar/editar/instalar sozinho.
|
|
56
55
|
|
|
57
|
-
|
|
56
|
+
**Fluxo de mineração (3 passos):**
|
|
58
57
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
prompt: List all templates returned. For each: title, author, URL, brief description.
|
|
63
|
-
```
|
|
58
|
+
1. **Buscar:** `21st search "<termo>"` (ex: `pricing table`, `hero glass`, `testimonials`), com `--type component|theme|template` quando fizer sentido.
|
|
59
|
+
2. **Inspecionar:** `21st get <id>` pra ver o item antes de decidir; `21st bookmarks` lista os salvos do usuário.
|
|
60
|
+
3. **Instalar/adaptar:** `21st add <user>/<slug>` ou `npx shadcn@latest add https://21st.dev/r/<user>/<slug>`; depois adaptar tokens/tipografia à marca (nunca colar cru).
|
|
64
61
|
|
|
65
|
-
|
|
62
|
+
**Publicar de volta (registry do time):** componente maduro adaptado à marca vira ativo reutilizável: `21st publish ./Componente.tsx --to default` (multi-arquivo via `21st.json`). Temas: `21st publish-theme`. Ver skill `21st-registry`.
|
|
66
63
|
|
|
67
|
-
|
|
64
|
+
**Complemento, não substituto, do Magic MCP:** o Magic MCP continua sendo o caminho de GERAÇÃO/refino assistido (inspiration/builder/refiner); a CLI é o caminho de CATÁLOGO/registry. Se o MCP estiver offline ou sem `MAGIC_API_KEY`, a CLI é o fallback declarado.
|
|
68
65
|
|
|
69
|
-
**
|
|
70
|
-
|
|
71
|
-
**Alternativa opt-in:** usar **agent-browser** pra abrir o template no browser real e extrair código/screenshot. Mais tokens: só vale quando o template é crítico e o usuário não quer copiar manual. **Não usar Playwright.**
|
|
72
|
-
|
|
73
|
-
**Overlap com modelos locais:** muitos templates populares do v0 já podem estar na pasta `modelos lp/` do usuário. Inspecionar a pasta local primeiro antes de chamar WebFetch.
|
|
66
|
+
**Overlap com modelos locais:** inspecionar a pasta `modelos lp/` do usuário primeiro; o que já foi minerado e salvo localmente não precisa de rede.
|
|
74
67
|
|
|
75
68
|
## Authorized Component / Code Inspection Sources
|
|
76
69
|
|
|
@@ -125,6 +118,19 @@ https://github.com/heyfabrika/styleui.git
|
|
|
125
118
|
|
|
126
119
|
Usar para: templates, landing page layouts, páginas prontas, seções instaláveis, fundamentos rápidos de layout, páginas base.
|
|
127
120
|
|
|
121
|
+
### Componentry
|
|
122
|
+
|
|
123
|
+
- Site: https://componentry.dev/ (gratuito, open source, Vercel OSS Program)
|
|
124
|
+
- Componentes React já animados (styling + animação resolvidos), copy-paste
|
|
125
|
+
- Fonte GRATUITA prioritária pra micro-interação/animação de componente antes de qualquer fonte paga
|
|
126
|
+
- **MCP oficial** (https://componentry.dev/docs/mcp): via MCP do shadcn — `pnpm dlx shadcn@latest mcp init` + registry `"@componentry": "https://componentry.fun/r/{name}.json"` no `components.json`; o agente instala componentes/animações direto, sem copy-paste manual
|
|
127
|
+
|
|
128
|
+
### Animmaster Lib
|
|
129
|
+
|
|
130
|
+
- Site: https://animmasterlib.dev/ — **fonte PAGA** (300 componentes animados PRO, HTML/CSS/JS/React/Next)
|
|
131
|
+
- Mesmo gate de custo do 21st.dev: só com aprovação do usuário, quando as gratuitas não cobrirem
|
|
132
|
+
- O que o usuário já comprou/baixou dela vale como recurso local (inspecionar em `modelos lp/`)
|
|
133
|
+
|
|
128
134
|
### Skiper UI
|
|
129
135
|
|
|
130
136
|
Skiper UI **não deve ser clonado**.
|
|
@@ -249,6 +255,12 @@ Quando usar: site precisa de impacto visual, projeto quer WebGL sem implementar
|
|
|
249
255
|
|
|
250
256
|
Trabalhar dentro do plano gratuito. Respeitar limites e marca d'água. Não pressupor licença paga.
|
|
251
257
|
|
|
258
|
+
### 6b. Refero
|
|
259
|
+
|
|
260
|
+
- https://refero.design/ — inspiração UI/UX de apps e sites reais, por tela e por fluxo
|
|
261
|
+
- Usar como Mobbin: referência visual de padrões reais, não fonte de código
|
|
262
|
+
- **Refero Styles** (https://styles.refero.design/, gratuito em beta): biblioteca de `DESIGN.md` extraídos de sites reais — paleta, tipografia, spacing, motion e padrões de componente num único markdown. Buscar por marca/mood/cor, copiar o DESIGN.md e colar no contexto do agente. Pra direção visual concreta, priorizar sobre inspiração visual pura (screenshot)
|
|
263
|
+
|
|
252
264
|
### 6. Mobbin
|
|
253
265
|
|
|
254
266
|
URL: `https://mobbin.com/`
|
|
@@ -321,7 +333,7 @@ Remover dependência obrigatória de:
|
|
|
321
333
|
- Skiper UI premium;
|
|
322
334
|
- Spline pago;
|
|
323
335
|
- Unicorn Studio pago;
|
|
324
|
-
-
|
|
336
|
+
- planos pagos do 21st.dev como obrigação (o fluxo funciona no free tier).
|
|
325
337
|
|
|
326
338
|
Usar ferramentas pagas apenas se:
|
|
327
339
|
|
|
@@ -12,7 +12,7 @@ A skill deve:
|
|
|
12
12
|
- escolher o nível visual correto do projeto;
|
|
13
13
|
- pesquisar componentes, animações e referências nas fontes configuradas;
|
|
14
14
|
- usar 21st.dev diretamente via MCP/API quando disponível;
|
|
15
|
-
- usar
|
|
15
|
+
- usar a 21st CLI (`21st search` / `21st get` / `21st add`) para descoberta e instalação de componentes de referência;
|
|
16
16
|
- usar repositórios autorizados como fonte de pesquisa;
|
|
17
17
|
- clonar temporariamente repositórios autorizados apenas quando necessário e com permissão;
|
|
18
18
|
- escolher scroll effects, 3D hero, WebGL, shaders, microinterações e componentes com base no tom da marca;
|
package/src/skills-lib/premium-landing-ui-researcher/references/output-format-and-quality.md
CHANGED
|
@@ -115,7 +115,7 @@ A entrega deve parecer um trabalho premium de estratégia, copywriting, design e
|
|
|
115
115
|
Antes de declarar a landing pronta, perguntar-se honestamente:
|
|
116
116
|
|
|
117
117
|
- Eu **chamei o Magic MCP do 21st.dev** ou declarei que ele não estava disponível? Se não chamei nem declarei, voltar e fazer.
|
|
118
|
-
- Eu **
|
|
118
|
+
- Eu **usei a 21st CLI (search/get/add)** ou declarei indisponível? Mesma regra.
|
|
119
119
|
- Eu **inspecionei `/modelos lp/`** (ou pasta equivalente) do usuário antes de escrever shader/animação/hero?
|
|
120
120
|
- Eu **pedi autorização para clones** das fontes autorizadas quando o efeito era específico (Ali Imam pra shader, React Bits pra animação)?
|
|
121
121
|
- Cada componente que entreguei tem uma **fonte rastreável** (link 21st.dev, output v0, repo clonado, ou pasta do usuário), ou foi escrito do zero com declaração explícita?
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
## Source-First Mandate (read this FIRST, every time)
|
|
4
4
|
|
|
5
|
-
**Esta skill existe porque escrever shaders, animações, hovers e componentes do zero NÃO é o caminho.** O caminho é **curar componentes, animações e shaders maduros de bibliotecas profissionais** (
|
|
5
|
+
**Esta skill existe porque escrever shaders, animações, hovers e componentes do zero NÃO é o caminho.** O caminho é **curar componentes, animações e shaders maduros de bibliotecas profissionais** (modelos lp do usuário, React Bits, Cult UI, Ali Imam, Watermelon, StyleUI, Skiper UI e, como fonte PAGA complementar, 21st.dev) e **adaptar à marca**.
|
|
6
6
|
|
|
7
7
|
Se você se pegar pensando "vou escrever um shader perlin do zero" ou "vou criar uma esfera de partículas no R3F na mão" ou "vou desenhar um SVG de carousel": **PARE**. Isso é o anti-pattern que essa skill foi feita pra prevenir.
|
|
8
8
|
|
|
@@ -39,45 +39,9 @@ Antes de qualquer rede ou MCP, inspecionar o que o usuário já tem:
|
|
|
39
39
|
|
|
40
40
|
Saída desta fase: lista de **componentes, libs e padrões reaproveitáveis** com path absoluto.
|
|
41
41
|
|
|
42
|
-
### Fase 2:
|
|
42
|
+
### Fase 2: Busca nos repos de referência (cache central primeiro) — FASE PADRÃO
|
|
43
43
|
|
|
44
|
-
**
|
|
45
|
-
|
|
46
|
-
- `mcp__magic__21st_magic_component_inspiration`: buscar referências e padrões para uma seção específica (hero, pricing, testimonials, navbar, contact dialog, etc.)
|
|
47
|
-
- `mcp__magic__21st_magic_component_builder`: gerar/instalar componente alinhado ao stack do usuário
|
|
48
|
-
- `mcp__magic__21st_magic_component_refiner`: refinar componente existente
|
|
49
|
-
- `mcp__magic__logo_search`: logos de marcas para integrações/prova social
|
|
50
|
-
|
|
51
|
-
**Quando chamar (mínimo obrigatório por landing):**
|
|
52
|
-
|
|
53
|
-
- 1 chamada de `inspiration` para o **hero** (ex: liquid glass hero, particle hero, mask reveal hero)
|
|
54
|
-
- 1 chamada para o **bloco principal de conversão** (ex: pricing, contact dialog, CTA group)
|
|
55
|
-
- 1 chamada para **selected work / portfolio grid** se o projeto for autoridade/portfolio
|
|
56
|
-
- 1 chamada para **navigation** se a direção visual exigir navbar não-padrão
|
|
57
|
-
|
|
58
|
-
Se o Magic MCP não estiver disponível no ambiente: declarar ao usuário "o Magic MCP do 21st.dev não está conectado nesta sessão" e perguntar se ele quer conectar ou seguir com as outras fontes. **Não cair pro fallback de criar do zero sem essa pergunta.**
|
|
59
|
-
|
|
60
|
-
### Fase 3: v0.app community (catálogo de referência via WebFetch)
|
|
61
|
-
|
|
62
|
-
**Esta é a fase padrão.** v0 entra como banco de templates pra inspecionar e adaptar, não como gerador. Ver "Uso A: v0 como CATÁLOGO DE REFERÊNCIA" na seção `## v0.app` em references/component-sources.md pro fluxo completo.
|
|
63
|
-
|
|
64
|
-
**Fluxo resumido:**
|
|
65
|
-
|
|
66
|
-
1. WebFetch em `https://v0.app/community?q=<termo>` (queries do tipo `liquid+glass`, `portfolio+dark+editorial`, `bento+grid`, `hero+webgl`, `case+study`). Resposta vem como lista estruturada de templates com URL `/templates/<id>`.
|
|
67
|
-
2. Apresentar 5-10 links curados ao usuário com título, autor, link absoluto.
|
|
68
|
-
3. Usuário abre os templates relevantes no navegador, copia o código (View code → copia o JSX) e salva em `modelos lp/<nome>/`. Skill então inspeciona a pasta local.
|
|
69
|
-
|
|
70
|
-
**Mínimo obrigatório por landing:** 1 query relacionada ao hero/estética principal + 1 query relacionada à seção crítica de conteúdo (portfolio/products/cases conforme o projeto).
|
|
71
|
-
|
|
72
|
-
**Antes da Fase 3**, sempre fazer overlap-check: muitos templates v0 populares já podem estar na pasta local do usuário desde a Fase 1 (inventário). Não recomendar baixar o que ele já tem.
|
|
73
|
-
|
|
74
|
-
### ~~Fase 3b~~: v0 como gerador (REMOVIDO)
|
|
75
|
-
|
|
76
|
-
> O MCP `v0-platform-mcp` foi removido do ecossistema. Para geração de UI, use o **Magic MCP (21st.dev)** como fonte principal: `mcp__magic__21st_magic_component_builder` e `mcp__magic__21st_magic_component_refiner`. O catálogo do v0 (WebFetch) continua disponível para descoberta de referências na Fase 3.
|
|
77
|
-
|
|
78
|
-
### Fase 4: Busca nos repos de referência (cache central primeiro)
|
|
79
|
-
|
|
80
|
-
Para cada efeito visual ainda não resolvido pelas fases 1-3, inspecionar o **cache central de design** em `~/.claude/design-sources/` antes de qualquer clone. Só clonar se o repo não estiver em cache ou estiver desatualizado.
|
|
44
|
+
Para cada efeito visual ainda não resolvido pela fase 1, inspecionar o **cache central de design** em `~/.claude/design-sources/` antes de qualquer clone. Só clonar se o repo não estiver em cache ou estiver desatualizado.
|
|
81
45
|
|
|
82
46
|
**Mapa de decisão "preciso disso → fonte":**
|
|
83
47
|
|
|
@@ -103,6 +67,41 @@ Para cada efeito visual ainda não resolvido pelas fases 1-3, inspecionar o **ca
|
|
|
103
67
|
- Nunca adicionar o repo inteiro como dependência permanente
|
|
104
68
|
- Não clonar em `.design-sources-temp/` se o cache já tem o repo: usar o cache diretamente
|
|
105
69
|
|
|
70
|
+
### Fase 3: Magic MCP do 21st.dev (fonte PAGA, complementar)
|
|
71
|
+
|
|
72
|
+
**Ferramentas disponíveis (chamar via ToolSearch se não estiverem carregadas):**
|
|
73
|
+
|
|
74
|
+
- `mcp__magic__21st_magic_component_inspiration`: buscar referências e padrões para uma seção específica (hero, pricing, testimonials, navbar, contact dialog, etc.)
|
|
75
|
+
- `mcp__magic__21st_magic_component_builder`: gerar/instalar componente alinhado ao stack do usuário
|
|
76
|
+
- `mcp__magic__21st_magic_component_refiner`: refinar componente existente
|
|
77
|
+
- `mcp__magic__logo_search`: logos de marcas para integrações/prova social
|
|
78
|
+
|
|
79
|
+
**Gate de custo:** o 21st.dev é plano PAGO. Esta fase só roda quando as fases 1-2 não cobrirem o efeito/section necessário E com aprovação do usuário. Não é mais mínimo obrigatório.
|
|
80
|
+
|
|
81
|
+
**Quando chamar (se aprovado):**
|
|
82
|
+
|
|
83
|
+
- 1 chamada de `inspiration` para o **hero** (ex: liquid glass hero, particle hero, mask reveal hero)
|
|
84
|
+
- 1 chamada para o **bloco principal de conversão** (ex: pricing, contact dialog, CTA group)
|
|
85
|
+
- 1 chamada para **selected work / portfolio grid** se o projeto for autoridade/portfolio
|
|
86
|
+
- 1 chamada para **navigation** se a direção visual exigir navbar não-padrão
|
|
87
|
+
|
|
88
|
+
Se o Magic MCP não estiver disponível no ambiente: declarar ao usuário "o Magic MCP do 21st.dev não está conectado nesta sessão" e perguntar se ele quer conectar ou seguir com as outras fontes. **Não cair pro fallback de criar do zero sem essa pergunta.**
|
|
89
|
+
|
|
90
|
+
### Fase 4: 21st CLI (catálogo e registry — fonte PAGA, complementar)
|
|
91
|
+
|
|
92
|
+
O v0 foi removido do ecossistema. Mesmo gate de custo da Fase 3: plano pago, usar só quando as fases gratuitas não cobrirem e com aprovação do usuário. Componente do time já publicado no registry conta como recurso já pago: pode usar sem novo gate.
|
|
93
|
+
|
|
94
|
+
**Fluxo resumido:**
|
|
95
|
+
|
|
96
|
+
1. Checar a CLI: `command -v 21st`. Se ausente, propor (opt-in, nunca auto-rodar): `npm i -g @21st-dev/cli && npx @21st-dev/cli install-skill` e `21st login` com o usuário.
|
|
97
|
+
2. Buscar: `21st search "<termo>"` (`--type component|theme|template`); inspecionar com `21st get <id>`.
|
|
98
|
+
3. Instalar o escolhido no projeto: `21st add <user>/<slug>` ou `npx shadcn@latest add <url do item>`; adaptar à marca.
|
|
99
|
+
4. Componente do time já publicado no registry `@wizzdigitalagency` tem prioridade sobre item público equivalente.
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
Se a CLI não estiver instalada e o usuário recusar o install: declarar e seguir pra Fase 5 (confirmação), nunca criar do zero em silêncio.
|
|
104
|
+
|
|
106
105
|
### Fase 5: Apresentação ao usuário e confirmação
|
|
107
106
|
|
|
108
107
|
Antes de implementar, apresentar ao usuário uma resposta estruturada:
|
|
@@ -113,7 +112,7 @@ Source-First Inventory para sua landing:
|
|
|
113
112
|
HERO (efeito liquid glass)
|
|
114
113
|
├─ Opção A: 21st.dev → componente "X" via Magic MCP (recomendado, já compatível com Next + Tailwind)
|
|
115
114
|
├─ Opção B: clonar Ali Imam → arquivo `liquid-wave.tsx` adaptado para token #FF4500
|
|
116
|
-
└─ Opção C:
|
|
115
|
+
└─ Opção C: buscar/instalar alternativa via 21st CLI (`21st search` + `21st add`)
|
|
117
116
|
|
|
118
117
|
CAROUSEL DE PRODUTOS
|
|
119
118
|
├─ Opção A: Embla Carousel (lib oficial, já no seu /modelos lp/ em `air-pods-max-product-showcase`)
|
|
@@ -10,14 +10,17 @@
|
|
|
10
10
|
- Watermelon UI: https://github.com/WatermelonCorp/watermellon-registry.git
|
|
11
11
|
- StyleUI: https://github.com/heyfabrika/styleui.git
|
|
12
12
|
- Skiper UI command: `npx shadcn add @skiper-ui/skiper40`
|
|
13
|
+
- Componentry (React animado, gratuito/open source, Vercel OSS): https://componentry.dev/
|
|
14
|
+
- Componentry MCP (via shadcn MCP + registry `@componentry`): https://componentry.dev/docs/mcp
|
|
15
|
+
- Animmaster Lib (300 componentes animados, PAGO): https://animmasterlib.dev/
|
|
13
16
|
- 21st.dev: https://21st.dev/
|
|
14
17
|
- 21st.dev Magic MCP: https://21st.dev/magic
|
|
15
18
|
- 21st.dev MCP: https://21st.dev/mcp
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
20
|
-
-
|
|
19
|
+
- 21st CLI (buscar/instalar/publicar via terminal): `npm i -g @21st-dev/cli` + `21st login`
|
|
20
|
+
- 21st CLI skills oficiais (21st-cli-use, 21st-registry, 21st-design-sync): `npx @21st-dev/cli install-skill`
|
|
21
|
+
- 21st busca: `21st search "<termo>" [--type component|theme|template]` + `21st get <id>`
|
|
22
|
+
- 21st instalação: `21st add <user>/<slug>` ou `npx shadcn@latest add https://21st.dev/r/<user>/<slug>`
|
|
23
|
+
- 21st API keys (CI/headless, env API_KEY_21ST): https://21st.dev/settings/api-keys
|
|
21
24
|
|
|
22
25
|
## Reference Sources (taste, qualidade visual, motion)
|
|
23
26
|
|
|
@@ -35,5 +38,7 @@
|
|
|
35
38
|
- Spline: https://spline.design/
|
|
36
39
|
- Unicorn Studio: https://www.unicorn.studio/
|
|
37
40
|
- Mobbin: https://mobbin.com/
|
|
41
|
+
- Refero (inspiração UI/UX de apps/sites reais): https://refero.design/
|
|
42
|
+
- Refero Styles (DESIGN.md gratuito pra contexto do agente): https://styles.refero.design/
|
|
38
43
|
- ScreensDesign: https://screensdesign.com/
|
|
39
44
|
- DesignVault: https://designvault.io/
|
|
@@ -105,6 +105,10 @@ function resolveClis(registry, selectedAreas, platformTag = currentPlatformTag()
|
|
|
105
105
|
// M14: post-check/post-install probe for minimal runtime deps (e.g.
|
|
106
106
|
// clone-and-run tools where `check` only proves the clone exists).
|
|
107
107
|
verify: cli.verify,
|
|
108
|
+
// recommended (2026-07-08): entries the UI should PRE-CHECK in the
|
|
109
|
+
// opt-in multiselect (e.g. rtk — the router assumes it active). Coerced
|
|
110
|
+
// to a real boolean so a missing field is `false`, never undefined.
|
|
111
|
+
recommended: !!cli.recommended,
|
|
108
112
|
}),
|
|
109
113
|
});
|
|
110
114
|
}
|
package/tools/installer/ui.js
CHANGED
|
@@ -673,17 +673,22 @@ class UI {
|
|
|
673
673
|
// Non-interactive: don't run system commands, just recommend everything.
|
|
674
674
|
if (options.yes) return { toInstall: [], toRecommend: missing, alreadyInstalled };
|
|
675
675
|
|
|
676
|
-
//
|
|
676
|
+
// Opt-in still: install runs a system command, so the user always sees the
|
|
677
|
+
// multiselect and confirms. But entries flagged `recommended` in the
|
|
678
|
+
// registry (today only rtk — the router assumes it active at Passo 0) come
|
|
679
|
+
// PRE-CHECKED, so pressing enter installs them; everything else stays
|
|
680
|
+
// unchecked. Nothing installs à revelia — a recommended entry can still be
|
|
681
|
+
// unchecked here, and the --yes/non-TTY paths above never reach this.
|
|
677
682
|
const selected = await prompts.multiselect({
|
|
678
683
|
message: 'Quais CLIs instalar agora? (não marcados viram comando pra rodar depois)',
|
|
679
684
|
options: missing.map((c) => ({
|
|
680
|
-
label: c.id,
|
|
685
|
+
label: c.recommended ? `${c.id} (recomendado)` : c.id,
|
|
681
686
|
value: c.id,
|
|
682
687
|
// M27/M14: prefer the upgrade/verify-failure reason when present —
|
|
683
688
|
// more actionable than the generic `when` in those two cases.
|
|
684
689
|
hint: c.upgradeMessage || c.verifyWarning || c.when,
|
|
685
690
|
})),
|
|
686
|
-
initialValues:
|
|
691
|
+
initialValues: missing.filter((c) => c.recommended).map((c) => c.id),
|
|
687
692
|
required: false,
|
|
688
693
|
});
|
|
689
694
|
|