🇧🇷 Português · 🇺🇸 English · 🇪🇸 Español
🛠️ DeskcommCRM — o Sistema Operacional de Vendas com IA, open source, pro WhatsApp
Agentes de IA que atendem, qualificam e vendem no WhatsApp — dentro de um CRM open source rodando no seu servidor. Sem mensalidade, sem feature travada, seus dados com você. A alternativa aberta a Kommo, Octadesk e Intercom.
⚡ Instalar · 🔄 Atualizar · 🧭 Visão · 🏗️ Arquitetura · 🤝 Contribuir · 🗺️ Roadmap
☁️ Rode este CRM em produção com 1 comando
O DeskcommCRM foi desenvolvido em parceria com a HostGator: o
hostgator-setup-kit/instala o CRM completo (app + WhatsApp + banco) numa VPS com um único comando, e o runbook de produção já assume esse ambiente.👉 Assinar a VPS HostGator com desconto da parceria — datacenter em São Paulo, ideal pro WhatsApp rodando 24/7. (link de parceiro — assinar por ele apoia o projeto e sai mais barato)
Ainda não tem servidor? Rode isto no seu computador (macOS, Linux ou WSL). Ele diz qual plano contratar — com os números do runbook, não um "depende" — e te devolve o comando certo pro seu caso:
curl -fsSL https://raw.githubusercontent.com/melgarafael/DeskcommCRM/main/hostgator-setup-kit/comecar.sh | bash(prefere ler antes de executar? clone o repo e rode
bash hostgator-setup-kit/comecar.sh— ele não instala nada sem você confirmar.)
⚡ Instalar na sua VPS (o caminho principal)
1. Entre na sua VPS
Abra o Terminal no seu computador (no Windows, o PowerShell; no Mac ou Linux, o Terminal) e conecte com o IP e a porta que a hospedagem te mandou por e-mail:
ssh -p PORTA root@SEU_IP
Troque PORTA e SEU_IP pelos seus. Se a hospedagem não mencionou porta nenhuma, é a padrão
(22) e você pode omitir: ssh root@SEU_IP.
Ele pede a senha. Ao digitar, não aparece nada na tela — nem asteriscos. Isso não é travamento: é o terminal escondendo a senha. Digite (ou cole) e dê Enter.
Na primeira conexão ele pergunta
Are you sure you want to continue connecting?— respondayes. É o servidor se apresentando pela primeira vez.
2. Rode o instalador
Já dentro da VPS:
git clone https://github.com/melgarafael/DeskcommCRM.git
cd DeskcommCRM
bash hostgator-setup-kit/install.sh
É isso. Você não instala Node, nem pnpm, nem compila nada — a imagem do app já vem pronta. Se faltar Docker, o instalador pergunta e instala sozinho.
O que você precisa ter em mãos
| Item | Onde conseguir |
|---|---|
| VPS com Docker | HostGator (parceria) — ou qualquer VPS com Docker. 4 GB de RAM recomendados |
| Domínio | Um registro A apontando pro IP da VPS (ex.: crm.suaempresa.com.br) |
| Banco | Conta grátis no supabase.com — 3 chaves + connection string do Session pooler |
| IA | Uma chave de OpenRouter, Anthropic ou OpenAI — o instalador pergunta qual você quer |
| Seu número, conectado por QR code no onboarding (ou o canal oficial da Meta) |
💡 O Supabase pode ser criado pelo próprio instalador. Exporte um
SUPABASE_ACCESS_TOKENantes de rodar e ele cria o projeto, espera o banco ficar saudável, busca as 4 credenciais e descobre o host do pooler testando conexão real — sem copiar e colar.
O que o instalador faz por você
Ele pergunta só o que é seu (domínio, chaves, senha do admin), valida cada resposta antes de seguir — chave errada ele recusa na hora, não três passos depois — e cuida do resto:
- Gera todos os segredos técnicos sozinho (você não inventa senha nenhuma).
- Cria as extensões do Postgres e aplica o schema completo (
supabase/baseline.sql). - Cria o primeiro admin com o e-mail e a senha que você escolheu.
- Sobe a stack inteira com HTTPS automático e confere a saúde no fim.
- Instala o cron das automações (sem ele, as regras QUANDO/SE/ENTÃO ficam paradas na fila) e o agente de atualização, que é o que faz o botão "Atualizar agora" existir na tela.
Rodar de novo não quebra nada — o install.sh é idempotente: não duplica cron, não recria
usuário, retoma de onde parou.
Modo não-interativo: copie
.env.hostgator.examplepara.env, preencha e rodebash hostgator-setup-kit/install.sh --yes.
Outra hospedagem? (Hostinger, Coolify, Dokploy, CapRover…)
Funciona. Se a sua VPS já vem com um proxy reverso próprio ocupando as portas 80/443, o
instalador detecta isso sozinho e publica o CRM através dele, em vez de tentar subir um
Caddy que não caberia. Num caso específico — proxy em --network host, como faz a Hostinger —
ele pergunta em vez de adivinhar, porque publicar atrás do proxy errado instala "com
sucesso" um site mudo. Detalhes em hostgator-setup-kit/README.md.
Primeiro acesso
Abra https:// (o cadeado leva ~1 min pra aparecer), entre com o admin, e tenha o
Google Authenticator ou Authy à mão se você quiser ligar a verificação em duas etapas — ela é opcional e fica em Configurações › Segurança; o primeiro login não a exige. No onboarding,
escaneie o QR code com o WhatsApp do seu número.
🤖 Prefere que uma IA instale pra você?
Jogue a pasta hostgator-setup-kit/ no chat do Claude Code rodando dentro da VPS e diga
"instala o DeskcommCRM pra mim". Ele lê o CLAUDE.md do kit
— que traz o passo a passo e as armadilhas já mapeadas — e conduz tudo em português.
🔄 Atualizar
Saiu versão nova? Há dois caminhos, e o primeiro não exige terminal.
Com o repositório clonado, o guia de instalação já vem dentro — .agents/skills/deskcomm-instalar/ —
e carrega sozinho no Claude Code, Codex, Cursor, OpenCode ou Antigravity aberto na pasta. Diga só
"quero instalar o CRM na minha VPS". Há guias também para montar um cliente por nicho, analisar
métricas, afinar o prompt do agente e contribuir (AGENTS.md, seção "Guias do assistente").
Pela tela (recomendado)
Quando existe versão nova, o rodapé do menu lateral acende "Nova versão" — só pro dono do servidor, porque avisar quem não pode atualizar é ruído. Clique e você cai em Configurações → Atualização, que mostra o que muda, faz backup do banco sozinha e acompanha cada fase (backup → código → banco → no ar) até terminar. Nada de SSH.
Se a versão nova subir quebrada, o agente volta pra imagem anterior sozinho e grava essa
volta no .env — sem isso, o próximo restart traria o app quebrado de novo, em silêncio.
Por baixo: o app só registra o pedido; quem executa é o agente que o
install.shdeixou na sua VPS, num cron que confere a cada 5 minutos — então a atualização começa em até 5 minutos depois do clique. Se esse agente estiver fora do ar, a tela avisa "Atualização automática indisponível" e mostra o comando abaixo — ela não finge que deu certo.
Pelo terminal
cd /caminho/do/DeskcommCRM
bash hostgator-setup-kit/update.sh
O comando faz, nesta ordem: (1) confere se há mesmo versão nova — se não houver, sai na hora;
(2) faz backup do banco antes de tocar em qualquer coisa; (3) baixa o código novo;
(4) atualiza o banco re-aplicando o baseline.sql, que é idempotente e auto-curativo
(conserta sozinho dados bagunçados por versões antigas); (5) puxa a imagem nova do app;
(6) confere a saúde no fim.
O alvo é a última versão publicada (v1.2.3), não o topo da main — atualizar leva sempre
a uma versão marcada e descrita no CHANGELOG.md, nunca a um commit não testado.
Ele recusa voltar pra uma versão anterior à instalada (isso desligaria co