Communitygithub.com

cnproduct/1-1website-skill

Habilidade mestre de clonagem 1:1 de sites — réplica visual pixel-perfect de site completo e captura/envio de catálogo completo de produtos. Combina penetração anti-bot (Akamai/Cloudflare), extração de imagens 4K lazy-loaded, raspagem recursiva de todas as categorias de produtos e reconstrução pixel-perfect de interações do e-commerce.

O que é 1-1website-skill?

Esta skill combina seis poderosas habilidades de clonagem web em um único pipeline fechado, resolvendo pontos críticos que habilidades isoladas não conseguem: penetração em sites de alta proteção (Akamai/Cloudflare), extração de imagens originais em 4K com lazy loading, captura em massa de produtos de todas as categorias e reconstrução pixel-perfect de interações estáticas e dinâmicas. Ela utiliza o `ego-browser` (Chromium real) para navegar, extrair DOM e CSS computado, baixar assets localmente sem 403, fechar modais de região/cookies e permitir rolagem para acionar lazy loading. Também raspa recursivamente URLs de todas as categorias de produtos, deduplica por SKU, baixa imagens de alta resolução e gera um banco de dados estruturado (`products.json` e `products-data.js`). A skill reconstrói pixel-perfect a página inicial, o catálogo completo de produtos, a página de detalhes do produto (PDP), sacola, lista de desejos e um painel CMS de upload de produtos, tudo com auditoria de qualidade visual multi-viewport, SEO/GEO automático (sitemap, robots.txt, llms.txt) e auditoria de acessibilidade sem erros. Ela é ideal para desenvolvedores que precisam clonar sites de comércio eletrônico complexos com alta fidelidade, incluindo catálogos completos de produtos, para fins de demonstração, teste ou mitigação de riscos.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add cnproduct/1-1website-skill

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Prévia

Do README da skill

1-1website-skill preview

Documentação

Habilidade 1:1 de Réplica de Site — Mestre em Clonagem Pixel-Perfect de Site Completo e Catálogo de Produtos

Posicionamento: Condensa em um único ciclo fechado definitivo: “coleta forense de DOM/CSS de nível de engenharia reversa + penetração real em Akamai/Cloudflare + raspador de produtos de todas as categorias com armazenamento local + reconstrução 1:1 de e-commerce interativo + auditoria automatizada de layout/SEO/múltiplos viewports” para clonagem de sites 1:1.


I. Arquitetura da Fusão de Habilidades (6 Capacidades Base Unificadas)

Esta habilidade funde as capacidades centrais de 6 habilidades locais e do GitHub de ponta, resolvendo o problema de que nenhuma habilidade isolada consegue lidar com “penetração em sites de alta proteção”, “extração de imagens originais lazy-loaded”, “importação em lote de produtos de todas as categorias” e “restauração pixel-perfect de interações estáticas/dinâmicas” ao mesmo tempo:

Módulo de OrigemResponsabilidade PrincipalFase de Consolidação nesta Skill
1. Jane-xiaoer/claude-skill-web-cloneFluxo de trabalho forense de 5 fases, mapeamento de árvore semântica DOM, restauração visual bloco a bloco 1:1Phase 1 (Levantamento de Blocos DOM) & Phase 7 (Comparação de capturas de tela em múltiplas posições de rolagem)
2. ericshang98/perfect-web-clone-skillExtração precisa de Tokens via getComputedStyle do navegador, contrato DESIGN.md, máquina de estado da navegação fixaPhase 1 (Extração precisa de CSS) & Phase 4 (Síntese de especificações de design)
3. ego-browser (Motor Chromium Real)Penetração em Akamai (HTTP 403) / Cloudflare, fechamento automático de pop-ups de bloqueio de tela, download com page.fetch no contexto do navegadorPhase 1 a Phase 3 (Coleta em ambiente real de dispositivo e armazenamento de ativos sem 403)
4. renwork-web-create-skill (Mode B v3)Regra de zero placeholder (Política de Zero Placeholder), automação de SEO/GEO (sitemap.xml/robots.txt/llms.txt)Phase 2 (100% ativos locais) & Phase 6 (Geração de SEO/GEO)
5. wideway-export-site-builder-skillVisualização de catálogo de produtos completo (PLP), página de detalhes do produto em tela dividida (PDP), sacola de compras, lista de desejos e CMS de upload de produtos front-endPhase 5 (Loja interativa completa de produtos e mecanismo de upload online)
6. layout-typography-auditorValidação de <h1> único, tags interativas semânticas (eliminar <div onclick>), atributo autocomplete em formulários, auditoria de :focus-visiblePhase 6 (Qualidade de código estático e barreira de 0 erros de acessibilidade)

II. Regras Rígidas e Linhas Vermelhas (Non-Negotiable Rules)

  1. É estritamente proibido usar curl / urllib diretamente para capturar sites de alta proteção: Ao encontrar proteções como Akamai (ex.: us.louisvuitton.com), Cloudflare que retornam 403 Forbidden, é obrigatório usar o ego-browser em um dispositivo real para extração de DOM e salvamento local via page.fetch(url, { saveAs }).
  2. Desbloqueio de Pop-ups e Rolagem Primeiro (Modal & Scroll Unlock First): Ao abrir o site alvo pela primeira vez, primeiro deve-se detectar e clicar para fechar pop-ups de seleção de região (ex.: .lv-modal__container button.lv-modal__close), sobreposições de cookies ou pop-ups de inscrição, e verificar se window.scrollTo(0, 500) consegue realmente mudar window.scrollY, para evitar capturar capturas de tela com sobreposições semitransparentes de bloqueio ou áreas de lazy loading em branco.
  3. Extrair imagens 4K/alta resolução com lazy loading: Para <picture> com data-srcset dinâmico ou <noscript><img src="..."></noscript>, é obrigatório escrever um script para priorizar a URL de alta resolução (ex.: ?wid=2048 / ?wid=1090), sendo estritamente proibido capturar placeholders base64 1x1.
  4. 100% de Ativos Localizados e Cadastro Completo de Produtos: Todos os banners da página inicial, capas de categorias, imagens de fundo branco/cinza de estúdio de todas as categorias de produtos (PNG/JPG) devem ser baixadas para assets/images/ e assets/products/ localmente. Todos os ícones oficiais e logotipos devem ser incorporados como <svg viewBox="..."> originais, sendo estritamente proibido usar URLs externas de proteção de hotlink ou bancos de imagens genéricos (Unsplash/Pexels) como substitutos.
  5. Proteção de Espaço de Trabalho Isolado: Se o espaço de trabalho atual já possui código de negócio existente, o projeto completo deve ser construído em um subdiretório independente (ex.: <brand>-clone/), sendo estritamente proibido sobrescrever arquivos existentes na raiz.

III. Fluxo Padrão de 7 Passos para Clonagem Pixel-Perfect (Pipeline de 7 Fases)

Fase 1: Reconhecimento Forense com Dispositivo Real e Penetração em Pop-ups (scripts/recon_and_harvest.mjs)

  1. Iniciar o TaskSpace do ego-browser, definir viewport desktop 1440×900.
  2. Navegar até a URL alvo, detectar e fechar automaticamente modais de País/Região e banners de cookies, remover o bloqueio de rolagem do body.
  3. Rolar em segmentos para acionar o lazy loading da página inteira, extrair:
    • RECON/original-recon.json e RECON/homepage-blocks.json: Títulos, subtítulos, links CTA, número de colunas da grade e coordenadas precisas de todas as seções da página.
    • RECON/css-spec.json: Através de getComputedStyle, extrair tamanhos de fonte, altura de linha, espaçamento entre letras, padding, gradientes de fundo e cores de borda de Header, Hero, Títulos de Seção, Cartões de Produto, Footer.
    • RECON/svgs.json: Extrair SVGs vetoriais originais do site (Wordmark da marca, busca, lista de desejos, sacola, fechar, setas, ícones sociais).
  4. Ao longo da altura da página, em passos fixos (ex.: 0, 720, 1660, 2450, 3150, 3920, 4630, 5400, 6100), usar page.cdp("Page.captureScreenshot") para capturar imagens de referência de alta qualidade sem pop-ups: RECON/screenshots/original-clean-{y}.png.

Fase 2: Download de Ativos de Mídia de Alta Resolução da Página Inicial (assets/images/)

  1. Analisar todas as imagens Hero, imagens de grade de categorias, PNGs transparentes de produtos recomendados e imagens verticais da história da marca na página inicial.
  2. Dentro do ego-browser, usar page.fetch(url, { saveAs }) para salvar todas as imagens em assets/images/, verificar se cada arquivo tem tamanho de byte > 1KB.

Fase 3: Raspador de Produtos de Múltiplas Categorias e Importação em Lote (scripts/crawl_all_categories.mjs)

  1. Extrair URLs de todas as categorias principais associadas à página inicial e ao menu de navegação (ex.: womens-bags, womens-slg, womens-accessories, womens-shoes, mens-bags, mens-slg, mens-shoes, mens-accessories, séries sazonais limitadas, etc.).
  2. No ego-browser, acessar cada página de categoria sequencialmente, extrair automaticamente de cada cartão de produto:
    • sku (código único do produto)
    • name (nome oficial do produto)
    • price e priceValue (preço formatado e valor numérico)
    • category e categoryName (ID da categoria e nome de exibição)
    • gender (grupo demográfico alvo)
    • image (URL da imagem do produto em alta resolução)
    • description / material / dimensions (descrição do ofício e especificações)
  3. Deduplicar por sku entre categorias, usar page.fetch para baixar todas as imagens de alta resolução dos produtos para assets/products/prod_<SKU>.png.
  4. Compilar e gerar automaticamente um banco de dados de produtos estruturado:
    • data/products.json (banco de dados JSON padrão)
    • js/products-data.js (variável global window.LV_CATALOG_DATA / window.SITE_CATALOG_DATA com carregamento instantâneo front-end)

Fase 4: Geração de Documento de Especificações de Design (DESIGN.md e NOTES.md)

Consolidar os parâmetros visuais coletados em DESIGN.md:

  • Tokens de Cor: Cor do texto principal (ex.: #1a1a1a / #000000), cor do texto secundário (#727272), borda clara (#e1e1e1), gradiente de fundo do estúdio de pedra do cartão de produto (linear-gradient(180deg, #efeeec 0%, #f6f5f3 50%, #fbfaf9 100%)).
  • Proporções Tipográficas: Pilha de fontes sans-serif personalizada da marca, H1/H2 (28px/36px ou 24px/32px, letter-spacing: 0.4px), Pretítulo (10px/16px, uppercase, letter-spacing: 1px), título e preço do produto (14px/20px).
  • Layout e Grade: Altura do Header (88px, padding esquerdo/direito 48px), grade de 4 colunas para produtos/categorias (grid-template-columns: repeat(4, 1fr), gap: 32px 16px, margem esquerda/direita 64px), grade de 3 colunas para cultura da marca (repeat(3, 1fr)).

Fase 5: Reconstrução de Página Pixel-Perfect e Loja de Produtos Completa (index.html, css/, js/)

  1. Reconstrução Visual 1:1 da Página Inicial (index.html + css/lv-styles.css) :
    • Construir o DOM estritamente seguindo a ordem das seções do site original, proporções de aspecto (16:9 para banners grandes, 4:5 para cartões de produtos e categorias) e SVGs embutidos.
    • Implementar máquina de estado da navegação fixa: acima do Hero da primeira tela, fundo transparente com texto/ícones brancos; ao rolar abaixo do limite (60px) ou passar o mouse, alternar suavemente para fundo branco com texto/ícones pretos e borda fina inferior.
  2. Loja de Produtos Completa e Mecanismo Interativo (js/lv-app.js) :
    • Página de Catálogo de Produtos Completo (#lv-catalog-view) : Suporte para visualização de todos os produtos carregados (ex.: 86+ itens), filtro por categorias (Pílulas de Categoria), ordenação por preço (crescente/decrescente) e botão de retorno à página inicial.
    • Modal de Detalhes do Produto em Tela Dividida (PDP): Ao clicar em qualquer produto, exibe imagem grande em alta resolução à esquerda, e à direita: número SKU, preço, descrição do material/ofício e botão "Place in Cart" para adicionar ao carrinho.
    • Gaveta de Pesquisa em Tempo Real (Search Overlay): Suporte para filtrar em tempo real por nome do produto, SKU ou categoria, exibindo instantaneamente resultados com miniaturas.
    • Lista de Desejos e Sacola de Compras Persistentes (Wishlist & Shopping Bag): Estado de favoritos e itens no carrinho persistido via localStorage, atualizando em tempo real o badge no topo da navegação.
    • Painel CMS de Upload de Produto Online (+ Upload Product CMS Drawer): Suporte para preencher diretamente no navegador o nome do novo produto, SKU, preço, categoria, caminho da imagem e descrição, publicando imediatamente no catálogo do site e salvando de forma persistente.

Fase 6: Auditoria Automatizada de Código Estático, Layout, Acessibilidade e SEO/GEO (scripts/)

  1. Executar python3 scripts/seo_geo_generator.py <project_dir> <base_url> para gerar automaticamente sitemap.xml (com URLs de todos os produtos), robots.txt e llms.txt.
  2. Executar python3 scripts/layout_typography_auditor.py <project_dir> para executar a verificação de qualidade estática:
    • Garantir que a página inteira tenha apenas um <h1> principal;
    • Garantir que todos os eventos de clique estejam vinculados a <button> ou <a> (ou através de delegação de eventos em JS), eliminando <div onclick> não semântico;
    • Garantir que todos os campos de entrada de texto tenham o atributo autocomplete e um <label> de acessibilidade;
    • Garantir que todos os controles interativos tenham o estilo :focus-visible, alcançando 0 blocking errors, 0 interface guidelines.

Fase 7: QA Visual Multi-Viewport em Dispositivo Real e Relatório de Entrega (scripts/visual_qa_verify.mjs)

  1. Iniciar um servidor de pré-visualização HTTP local, usar ego-browser para acessar o clone local.
  2. Forçar o carregamento de todas as imagens, verificar se as imagens da página inicial e do catálogo completo têm loaded === total e brokenImages.length === 0.
  3. Capturar imagens de comparação de fluxo completo no Desktop (1440×900) e Mobile (390×844): várias posições de rolagem da página inicial, página de catálogo de produtos completo, página de detalhes do produto (PDP), gaveta de upload CMS, primeira tela mobile. Verificar se scrollWidth <= innerWidth no mobile (zero overflow horizontal).
  4. Fechar o TaskSpace do ego-browser (await task.finish({ keep: [] })), gerar CLONE_REPORT.md e entregar.

IV. Lista de Scripts Automatizados de Apoio (scripts/)

  • scripts/recon_and_harvest.mjs: Penetração em pop-ups em dispositivo real, extração de DOM/ComputedStyle/SVG, captura de tela de referência segmentada do site original e download de imagens de alta resolução da página inicial.
  • scripts/crawl_all_categories.mjs: Raspagem recursiva de produtos de todas as categorias, deduplicação de SKU entre categorias, download em lote de imagens de alta resolução de produtos e compilador de products.json / products-data.js.
  • scripts/seo_geo_generator.py: Geração automática de sitemap.xml, robots.txt e llms.txt baseada em data/products.json.
  • scripts/layout_typography_auditor.py: Ferramenta de auditoria de zero erros para semântica HTML/CSS, hierarquia de títulos, formulários e acessibilidade de foco.
  • scripts/visual_qa_verify.mjs: Script para montar servidor local automaticamente + captura de tela multi-viewport via ego-browser, comparação e verificação automática de links quebrados/overflow.

Habilidades Relacionadas