Atelier UI — Orquestrador de Design
Mantenha o contexto enxuto. Nunca carregue todos os módulos de uma vez—roteie para um módulo de construção após a captura e delegue verificações mecânicas para scripts.
Nos comandos e caminhos abaixo, <skill> é o diretório que contém este arquivo SKILL.md (por exemplo, ~/.gemini/config/skills/atelier-ui, %USERPROFILE%\.gemini\config\skills\atelier-ui no Windows, ou .agents/skills/atelier-ui local ao workspace). Sempre use aspas "<skill>/..." em comandos de shell para que caminhos com espaços funcionem.
Fluxo de Trabalho
1. Sondar o Ambiente (Uma Vez)
Execute o scanner de capacidades na raiz do projeto:
node "<skill>/scripts/detect-env.mjs"
Não presuma que ferramentas externas (impeccable, agent-browser) existam. Use a saída JSON (project.framework, project.devCommand, tools.impeccableCmd, tools.agentBrowser, tools.browserBinary, tools.cdpSupported) para escolher a stack e o nível de QA.
2. Captura (1 Turno, Com Defaults)
Leia <skill>/modules/01-intake.md apenas se alguma pergunta central estiver em aberto.
- Faça todas as perguntas faltantes em uma mensagem numerada com defaults (ou comece imediatamente se o usuário forneceu detalhes completos ou disse
"defaults"/"go ahead"). - Escreva o plano definido em
.atelier/BRIEF.mdpara que a compactação de contexto nunca perca os requisitos.
3. Roteie para UM Módulo de Construção
Escolha o modo de superfície a partir do brief e leia apenas aquele arquivo:
- Marca / Landing / Portfólio / Negócio Local (
PersuadirouExperiência): leia<skill>/modules/02-brand-site.md. - SaaS / Dashboard / Docs / Aplicativo Existente (
OperarouLer): leia<skill>/modules/03-app-ui.md. - Mundo 3D / WebGL / Shaders (
3D): leia<skill>/modules/04-3d-visual.md.
4. Piso de Criação Universal (Sempre Ativo)
- Tokens em vez de hex cru: Use propriedades personalizadas CSS (
:root) ou os tokens Tailwind/tema existentes do projeto. - Sem armadilhas de layout:
overflow-x: clipemhtml, body(nunca100vw);minmax(0, 1fr)em trilhas de grade de imagens;min-width: 0; overflow-wrap: break-wordem cabeçalhos de exibição. - Movimento e acessibilidade: Nunca
transition: all; anime apenastransform/opacity/clip-path/filter; adicione:focus-visiblee@media (prefers-reduced-motion: reduce). - Lista de proibições anti-porcaria: Sem gradientes roxo-para-azul não merecidos, sem texto gradiente em corpo/cabeçalhos, sem cartões aninhados dentro de cartões, sem indicadores
01/02/03acima de manchetes, sem emojis como ícones de UI, sem depoimentos, logotipos ou métricas inventados. - Contraste e estados: Texto do corpo >= 4,5:1, texto grande >= 3:1; todo controle interativo cobre os estados padrão, hover, focus-visible, desabilitado, carregando, vazio e erro.
- Texto limpo: Botões são
<Verbo> <Objeto>(nunca genérico"Saiba mais"). Nunca deixe texto placeholder (Lorem ipsum,Acme,TODO).
(Verificações mecânicas estão em lint-ui.mjs e check-ui.mjs; regras estruturais de layout, como cartões aninhados e minmax(0, 1fr), são verificadas por você e pelo crítico de Nível 3.)
5. Verificar e Portão de Crítica
Após construir, leia <skill>/modules/05-qa-gate.md e execute a escada de QA:
- Lint de porcaria estático (
tools.impeccableCmdse detectado, maisnode "<skill>/scripts/lint-ui.mjs" <target-dir>). - Verificação de navegador (
agent-browser, a ferramenta de navegador do seu ambiente, ounode "<skill>/scripts/check-ui.mjs" <target> --out .atelier/shots --full --sheet) no desktop (1440x900) e mobile (390x844). - Opcional: revisão de crítico visual sem contexto usando as capturas de tela (quando
Profundidade de QAforcriticoudeep).
Arquivos Nesta Skill
Caminho (em <skill>/) | Carregar Quando |
|---|---|
modules/01-intake.md | Passo 2: esclarecendo briefs ambíguos e escrevendo .atelier/BRIEF.md |
modules/02-brand-site.md | Passo 3: novas páginas de marketing, empresa, negócio local ou portfólio |
modules/03-app-ui.md | Passo 3: painéis, ferramentas, docs ou refinamento de aplicativos existentes |
modules/04-3d-visual.md | Passo 3: construções Three.js, WebGL ou shaders |
modules/05-qa-gate.md | Passo 5: executando lints, verificações de navegador e revisões críticas sem contexto |
library/themes.json | Passo 3 (02-brand-site): lidando com combinações de cores e fontes não genéricas |
scripts/detect-env.mjs | Passo 1: detectando stack do projeto e ferramentas CLI/navegador instaladas |
scripts/lint-ui.mjs | Passo 5: linter de porcaria e Piso de Criação integrado, sem dependências |
scripts/check-ui.mjs | Passo 5: verificador integrado do Chrome DevTools Protocol (CDP), sem dependências |