<< All versions

Skill v1.0.0

currentAutomated scan98/100
arrecheneto/prospector-de-sites/dashboard-leads
──Details
PublishedOctober 24, 2026 at 08:53 AM
Content Hashsha256:7733a913f1d1babc...
Git SHA7ac0f0c4d832
──Files
Files (1 file, 4.1 KB)
SKILL.md4.1 KBactive
SKILL.md · 58 lines · 4.1 KB

version: "1.0.0" name: dashboard-leads description: Esta skill deve ser usada para criar e ATUALIZAR o dashboard de leads — o painel de controle local (SQLite + página web) onde o usuário administra prospecções, sites, publicações e propostas. Acione sempre que qualquer comando do plugin mudar dados de leads (/prospectar, /redesenhar, /publicar, /proposta), ou quando o usuário disser "dashboard", "painel", "meus leads", "controle de clientes", "banco de dados de leads".


Dashboard de leads (SQLite + página local)

Arquitetura na RAIZ da pasta conectada:

  • `prospector.db` — banco SQLite, a FONTE DA VERDADE dos leads.
  • `dashboard-server.py` + `iniciar-dashboard.bat` (Windows) / `iniciar-dashboard.command` (Mac)` — mini-servidor local (Python padrão, sem dependências). O usuário dá duplo clique no .bat → abre http://localhost:8765 com o painel completo: editar, excluir e arrastar cards salvam direto no banco.
  • `dashboard.html` — a página do painel (gerada do template). Servida pelo servidor (modo banco) ou aberta por duplo clique (modo arquivo: só leitura + edições presas ao navegador). O badge no topo indica o modo.

Setup (uma vez, no /setup ou no primeiro uso)

  1. Copie references/dashboard-server.py e references/iniciar-dashboard.bat desta skill para a raiz da pasta conectada.
  2. Crie o prospector.db com o schema abaixo (via python3/sqlite3 no bash).
  3. Gere o dashboard.html a partir de references/dashboard-template.html substituindo __DADOS__ pelo snapshot JSON.
  4. Diga ao usuário: "duplo clique em iniciar-dashboard.bat abre o painel com o banco conectado" (requer Python instalado no Windows — se não tiver, o dashboard.html funciona no modo arquivo).

Schema do banco

sql
CREATE TABLE IF NOT EXISTS leads(
slug TEXT PRIMARY KEY, nome TEXT, nicho TEXT, cidade TEXT, nota REAL, avaliacoes INTEGER,
email TEXT, telefone TEXT, whatsapp TEXT, siteAntigo TEXT, motivo TEXT,
status TEXT DEFAULT 'novo', urlNova TEXT, dataProposta TEXT, valor REAL, obs TEXT,
contratoStatus TEXT DEFAULT 'pendente', contratoEm TEXT, manutencao REAL, pago INTEGER DEFAULT 0,
docCliente TEXT, endCliente TEXT,
atualizado TEXT DEFAULT (datetime('now','localtime')));

Status: novo | redesenhado | publicado | proposta | respondeu | fechado | descartado. slug é a chave.

Como os comandos atualizam (SEMPRE os 2 passos)

  1. Upsert no banco via bash (exemplo):
bash
python3 - <<'EOF'
import sqlite3
c = sqlite3.connect('CAMINHO/prospector.db')
c.execute("INSERT INTO leads (slug,nome,status,...) VALUES (?,?,?,...) ON CONFLICT(slug) DO UPDATE SET status=excluded.status, atualizado=datetime('now','localtime')", (...))
c.commit()
EOF
  • /prospectar → insere leads (novo) e descartados (descartado, motivo em obs). NUNCA sobrescreva um lead cujo status já avançou.
  • /redesenhar → status='redesenhado' · /publicar → status='publicado', urlNova · /proposta → status='proposta', dataProposta.
  • Usuário conta que respondeu/fechou → status='respondeu'|'fechado', valor (+ manutencao se houver mensalidade).
  • /contrato → contratoStatus='enviado' + contratoEm. Cliente assinou → contratoStatus='assinado'. Pagamento recebido → pago=1.
  1. Regenerar o snapshot: leia todos os leads do banco e regrave dashboard.html do template com o JSON embutido atualizado ({"atualizado": "...", "leads": [...]}) — é o fallback para quem abre sem servidor.

Se o banco não existir ainda (usuário antigo), crie-o e importe os leads do snapshot embutido no dashboard.html atual antes do upsert. Respeite edições do usuário: antes de regravar um lead, leia o registro atual do banco.

O que o painel faz sozinho (não reimplementar)

Kanban drag & drop, edição em modal, exclusão, busca, paginação automática, funil, follow-ups (proposta 4+ dias), receita fechada/potencial, vista Contratos (status pendente/enviado/assinado + link do documento + pago) e vista Financeiro (recebido, a receber, MRR de manutenções, projeção 12 meses) — tudo no template. O plugin só mantém o BANCO correto e o snapshot em dia.

All versions