Sétima Forma
漆ノ型 — SHICHI NO KATA — ORIGINAL

火 雷 神Honoikazuchi no KamiSétima Forma · Deus do Trovão Flamejante

A forma que Zenitsu criou sozinho — não foi ensinada por mestre nenhum, nasceu da repetição infinita da Primeira. Aqui é a mesma coisa em código: o conjunto de ferramentas que floresceu da raiz simples (RAG sobre um site cliente) e se tornou um sistema que se monitora, se corrige e se explica sozinho.

A maestria de uma forma única abre o caminho pra criar a sua própria.

Sete ferramentas, uma só técnica.

Cada golpe é uma camada do pipeline. Juntos formam o Sétimo Estilo do código — um sistema que se monitora, se corrige e se explica sozinho.

  1. 01

    Diffador Semântico7_diff.py

    Compara dois snapshots datados e mostra o que melhorou, piorou ou apareceu de novo. Cada correção feita no site vira um delta visível.

    • Evolução numérica — "212 sem meta" → "180 sem meta" ↘ −32
    • URLs específicas que ganharam ou perderam meta description, H1, alt-text
    • Mudanças no catálogo do fabricante (preço, ano, motor, modelo novo)
    • Sumário executivo com melhorias, regressões e estáveis
    python 6_relatorio.py --tag baseline    # ponto inicial
    # ... mexe no site, corrige problemas ...
    python 6_relatorio.py                    # snapshot do dia
    python 7_diff.py                         # diff automático
  2. 02

    Modo Estrategistaapp.py · 4º modo

    Um quarto modo que dispensa chat livre. Você escolhe uma análise executiva, o app cruza site.db + catálogo oficial + chunks RAG e manda tudo num único prompt para o Sonnet.

    • Seis perguntas executivas pré-prontas (plano de 30 dias, SWOT, ROI, …)
    • Briefing automático com inventário, achados, catálogo e gaps
    • Resposta no formato de consultoria sênior — direta e quantificada
    • Tudo gravado no histórico (data/chat.db) pra revisitar depois
  3. 03

    Sentinela One-shotupdate.sh

    Um comando que toca todo o pipeline em ordem: raspagem, reindex Chroma, crawl de sitemaps, extração estruturada, catálogo do fabricante, auditoria de telefones, snapshot e diff vs anterior.

    • Nove etapas em sequência, com log silencioso em /tmp/sentinela_*.log
    • Diff automático contra o snapshot anterior se houver
    • Modo --skip-rag pra rodar só auditoria (~1 min)
    • Pronto pra agendar via cron ou launchd
    ./update.sh             # versão completa (~5 min)
    ./update.sh --skip-rag  # só auditoria (~1 min)
  4. 04

    Castelo do Infinito (mu-plugins)mu-plugins/castelo-infinito*.php

    O ataque deixou de ser análise — virou correção. Seis mu-plugins WordPress que arrumam o site na mesma marretada: meta description, alt-text, H1 fallback, contatos canônicos, dados estruturados e bloco dinâmico de unidade em página de item.

    • Parte 1 — meta description + alt-text via output buffer (page builders não usam wp_get_attachment_image)
    • Parte 2 — tabela de substituição segura normaliza contatos canônicos por unidade
    • Parte 3 — H1 fallback + JSON-LD schema.org por unidade
    • Parte 4 — bloco "endereço · telefone · horário" injetado nas páginas de item
    • Parte 5 — patch_img_alt_in_html() varre HTML e injeta alt derivado de title/figcaption/filename
    • Parte 6 — admin dashboard em Tools → Castelo do Infinito (por site + visão agregada)
    wp rede audit-summary --network
    wp rede contacts diff
    # Tools → Castelo do Infinito (visão agregada)
  5. 05

    Inspetor de Conformidadeapp.py · modo Inspetor

    Quando a política editorial de um catálogo muda, alguém precisa verificar se as páginas acompanharam. O Inspetor compara o catálogo publicado com o catálogo de referência e aponta onde os dois divergem — campo a campo, página a página.

    • Divergência de política — lista cada URL cujo conteúdo contraria a regra vigente
    • Cobertura de itens por unidade — o que falta, o que sobrou de versões antigas
    • Valores publicados vs oficiais — flagra grafias e variações divergentes
    • Consistência de especificação — os mesmos atributos batem entre as unidades?
    • A tabela extraída espelha a de referência: mesmas colunas, comparável direto
    python extract_models.py          # extrai catálogo publicado
    # app.py → Inspetor → divergências contra a política vigente
  6. 06

    Visual UX (Playwright)app.py · modo Visual UX · 9_playwright_audit.py

    O olho do espadachim ganhou três viewports. Playwright headless atravessa Atendente, Inspetor e Estrategista, tira screenshot em 375 / 1024 / 1920 e grava em playwright_audits — sobrepor regressões fica trivial.

    • Três viewports simultâneos: 375 (mobile), 1024 (HD), 1920 (Full HD)
    • Subprocess streaming pro Streamlit — vê cada passo do crawler ao vivo
    • Detecta LCP > 4s e cumulative layout shift por viewport
    • Snapshots datados em data/playwright_audits/ — pronto pra diff visual
  7. 07

    Trovão ao Vivoapp.py · sidebar · app_log.py

    O sétimo golpe: observabilidade total. Ring buffer compartilhado entre stdout e UI — cada busca RAG, cada chamada do Sonnet, cada linha do pipeline aparece colorida no painel da sidebar. E um botão único toca o pipeline inteiro.

    • Logs ao vivo na sidebar com slider 10–200 eventos · DEBUG / INFO / WARNING / ERROR coloridos
    • Botão "Rodar pipeline completo" — subprocess.Popen com streaming linha-a-linha
    • Checkboxes "pular RAG" / "pular concorrente" pra escolher peso do golpe
    • Mesmos eventos vão pro terminal — auditoria zero-touch via tail no journalctl
    • Status final: tempo total · código de saída + última linha
    streamlit run app.py
    # sidebar → Pipeline → Rodar pipeline completo
    # (cada linha do update.sh vira evento INFO no painel)

Sete perguntas executivas.

O Atendente conversa. O Inspetor audita. O Estrategista responde — sempre com dados cruzados de site.db, catálogo oficial e RAG num único prompt.

  1. 01

    Plano de ação 30 dias

    Quatro sprints × entregas × responsável × KPI.

  2. 02

    Análise SWOT

    Forças, fraquezas, oportunidades e ameaças com dados do site real.

  3. 03

    ROI das correções

    Cinco correções com horas-homem, ganho esperado e payback.

  4. 04

    Posicionamento competitivo

    Rede A vs Fabricante vs concorrência, com três movimentos.

  5. 05

    Pauta para a direção

    Reunião de 30min — três dados + duas perguntas + uma recomendação.

  6. 06

    Riscos e bombas-relógio

    Severidade, mitigação imediata e mitigação definitiva.

  7. 07

    Catálogo publicado vs referência

    Cobertura, divergência de política, valores e specs inconsistentes.

Mapa do tesouro.

A árvore inteira do projeto, com cada arquivo e seu papel. A complexidade é só aparente — cada script faz uma coisa.

rag-rede/
├── 1c_wp_loader.py             ─ raspa WP (texto pro RAG)
├── 2_index.py                  ─ Chroma (vetores)
├── 2b_sitemap_crawler.py       ─ descobre URLs
├── 2c_concorrente_crawler.py   ─ concorrência (Rede B)
├── 2d_rede_a_eco_crawler.py    ─ ecossistema Rede A (3 domínios)
├── 3_site_extract.py           ─ links / imgs / forms / contatos / meta
├── 3b_concorrente_extract.py   ─ extração concorrente
├── 4_compare_oficial.py        ─ catálogo do fabricante
├── 4b_extract_rede_a_models.py ─ catálogo Rede A (versões / cores / preço)
├── 5_audit_telefones.py        ─ relatório de telefones
├── 6_relatorio.py              ─ snapshot datado
├── 7_diff.py                   ─ comparador entre snapshots
├── 8_compare_concorrente.py    ─ matriz Rede A × Rede B × Fabricante
├── 9_playwright_audit.py       ─ Playwright multi-viewport
├── update.sh                   ─ sentinela one-shot
├── app.py                      ─ 5 modos: Atendente · Auditor · Inspetor · Estrategista · Visual UX
├── app_log.py                  ─ ring buffer logs (stdout + sidebar)
├── db.py                       ─ chat history SQLite
├── db_site.py                  ─ banco estruturado SQLite
├── network.json                ─ config dos 5 sites
└── data/
    ├── chroma/                 ─ vetores
    ├── site.db                 ─ pages + modelos_rede_a + modelos_fabricante
    ├── chat.db                 ─ histórico conversas
    └── COMPETITIVO.md          ─ matriz Rede A × Rede B × Fabricante

Ordem de demonstração.

Os sete passos pra mostrar o sistema inteiro a quem nunca viu — em menos de quinze minutos.

  1. 01

    Sidebar · Logs do app

    Abre o painel. Cada movimento dali pra frente aparece colorido em tempo real — INFO azul, ERROR vermelho intenso.

  2. 02

    Modo Inspetor — divergência de política

    Flagra as URLs cujo conteúdo contraria a regra editorial vigente.

  3. 03

    Modo Inspetor — cobertura

    Confirma que Modelo X falta na matriz e Modelo Y é legado em 3 lojas.

  4. 04

    Modo Estrategista — catálogo

    Sonnet cruza modelos_rede_a × modelos_fabricante e devolve plano executivo.

  5. 05

    Modo Visual UX

    Roda Playwright em 375 / 1024 / 1920 — cada linha do crawler aparece no painel de logs ao vivo.

  6. 06

    WP Admin · Castelo do Infinito

    Abre /wp-admin/tools.php?page=castelo — visão rede agregada com tudo que o mu-plugin já corrigiu hoje.

  7. 07

    Sidebar · Pipeline completo

    Toca update.sh inteiro, cada linha vira evento de log. Ao final: tempo total e código de saída.

Rede A × Rede B × Referência.

Cruzamento direto entre Rede A, Rede B (concorrente multisite) e Referência (catálogo oficial), gerado pelo 8_compare_concorrente.py. Os números abaixo são ilustrativos: demonstram o formato da análise e não descrevem nenhuma operação real.

  1. 320Rede A (ecossistema)
    páginas indexadas4 lojas
    • catálogo principal210
    • unidades40
    • catálogo secundário70
  2. 355Rede B
    páginas indexadas3 lojas
  3. 6Referência
    páginas indexadasreferência
FeatureRede ARede BFabricante
Configurador
Simulador Financiamento
Simulador Consorcio✓ 17
Estoque Online72 +61 eco✓ 24
Estoque Seminovos67 +69 eco✓ 377
Avaliacao Usado
Blog56 +32 eco
Agendamento Online5 +2 eco
Test Drive✓ 1
Pcd5 +1 eco
Ofertas21 +2 eco
Pecas5 +1 eco✓ 37
  1. 01

    Vantagens da Rede A

    • blog
    • agendamento_online
    • pcd
    • ofertas
  1. 02

    Gaps a fechar (Rede B tem)

    • simulador_consorcio
  1. 03

    Paridade

    • estoque_online
    • estoque_seminovos
    • pecas

Por que esse projeto cabe num servidor pequeno.

Cada peça da pilha foi escolhida pela Primeira Presa do Inosuke: a estocada bruta que resolve o problema sem inventar mais cinco.

  1. 01

    WordPress multisite com mu-plugins diretos

    Em vez de tema headless + Next.js SSR + plugin marketplace pago. Seis arquivos PHP no mu-plugins/ consertam o que precisava ser consertado, sem deploy ritual.

  2. 02

    update.sh — 9 etapas em sequência num único shell

    Em vez de Airflow + DAG distribuído + Celery + Redis broker + Flower dashboard. Um ./update.sh e o pipeline inteiro roda do scraping ao snapshot.

  3. 03

    Lando local em domínio de staging

    Em vez de ambiente staging full stack + CI/CD multi-stage + Vault + feature flags. O /etc/hosts e o Docker do Lando dão conta do que um time inteiro de DevOps faria.

  4. 04

    Snapshot file-based + diff semântico

    Em vez de Snowflake + dbt + Looker + DataDog + alerting cluster. Um arquivo JSON datado no disco, um script Python que compara dois — a regressão fica visível sem precisar de dashboard.

  5. 05

    JSON estático em /public + fetch direto

    Em vez de API REST + GraphQL + Apollo + Redis cache + CDN edge functions. O dado é estático, o caminho é uma URL, o navegador resolve. A "API" é o sistema de arquivos.

Sete momentos da técnica.

Sete momentos da técnica, em vinhetas originais. Os kanjis carregam a ação que a imagem mostraria.

01

Concentração

Antes do golpe, a quietude. Ouvidos atentos, olhos fechados.

02

A escuta

Quando os olhos não veem, o som guia a lâmina.

03

Primeiro Movimento

O passo único — rápido demais para ser visto.

04

Postura de ataque

Joelhos dobrados, lâmina pronta, raios convergindo.

05

Sob a tempestade

A respiração entra em ressonância com o trovão.

06

Sétimo Estilo

A técnica original — só executada uma vez.

07

A carta de Jigoro

Antes do raio, a memória do mestre.

Direitos & Inspiração.

  1. 01

    Arte da página

    Tipografia, hairlines, raios, animações e o scar dourado são originais do projeto, gerados em SVG e CSS. Reaproveite livremente.

  2. 02

    Referência cultural

    Honoikazuchi no Kami (火雷神) e o conceito da Sétima Forma do Trovão são referências narrativas à obra Kimetsu no Yaiba (Demon Slayer) de Koyoharu Gotouge — publicada pela Shueisha, animada pela Ufotable, licenciada pela Aniplex. Esta página é homenagem cultural / educacional, não reproduz arte oficial, não comercializa o IP citado.

  3. 03

    Dados do visitante

    Audiência agregada via Google Analytics 4 — quantas pessoas chegam, por quais formas passam, de onde vieram. Usa os cookies _ga. Não há formulário, login nem identificação pessoal, e nada do que você lê aqui é associado a você. O contador de marteladas da Primeira Forma continua só no localStorage do seu browser — fica com você, ninguém mais vê. Um bloqueador como uBlock Origin derruba o analytics inteiro, e a página funciona igual.

  4. 04

    Código do projeto

    rag-rede é projeto pessoal de demonstração de RAG aplicado a uma rede multisite WordPress. Os números exibidos aqui são ilustrativos, gerados para demonstrar o formato da análise — não descrevem nenhuma operação real nem identificam qualquer organização.

A maestria de uma forma única abre o caminho pra criar a sua própria.