Base/labs | Manual CRM
Manual 02 / 06

Instalação e configuração

Pré-requisitos, instalação no Mac e Windows, configuração de credenciais e ativação dos comandos swl-*.

1Pré-requisitos

Antes de instalar, verifique se você tem acesso a:

  • Conta na organização swl-informatica no GitHub
  • Credencial pessoal do banco de dados do CRM — usuário e senha próprios (peça ao Hugo; ver Conectar o banco)
  • Acesso ao Google Drive compartilhado swl-clientes
  • Token da API Cloudflare (peça ao Hugo ou ao time de infra)
  • Assinatura do Claude Code (Pro ou Team — claude.ai/code)

Atenção

Sem o token da Cloudflare você consegue criar e escrever propostas, mas não consegue publicar online. Solicite o token antes de precisar publicar.

Não precisa instalar nada do Google na máquina

O acesso ao Drive (criar pastas, ler briefings) é feito pelo Claude via MCP / API com autorização OAuth no browser. Você não precisa do Google Drive Desktop nem de qualquer app local — basta ter acesso ao shared drive swl-clientes. A autorização é feita uma única vez, na primeira vez que um comando precisa do Drive (ver Credenciais das propostas). O utilitário gws-cli também não é pré-requisito — só entra como plano B quando o MCP oficial esbarra em alguma limitação.

2Instalar as ferramentas

Escolha seu sistema operacional. As ferramentas são as mesmas; muda só a forma de instalar.

2.1Homebrew

O Homebrew é o gerenciador de pacotes do Mac. Se já tem, pule este passo.

terminal
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

2.2Node, Git e GitHub CLI

terminal
brew install node git gh
node --version   # deve mostrar v20 ou superior
gh auth login    # GitHub.com → HTTPS → Login with a web browser

2.3Chave SSH para o GitHub

terminal
ssh-keygen -t ed25519 -C "seu-email@baselabs.com.br"
pbcopy < ~/.ssh/id_ed25519.pub   # copia a chave pública
ssh -T git@github.com            # testa após colar em github.com/settings/keys

2.4Wrangler e Claude Code

terminal
npm install -g wrangler @anthropic-ai/claude-code
claude   # na primeira execução, autentica no browser

Dica Mac

Para abrir o terminal: Cmd + Espaço, digite "Terminal" e Enter. Ou use o iTerm2.

3Clonar o swl-crm

O swl-crm é o projeto base que todos do time devem ter na máquina — é dele que vêm os comandos /swl-* e a engine de propostas. Clone para ~/src/swl-crm (caminho padrão do time):

terminal
git clone git@github.com:swl-informatica/swl-crm.git ~/src/swl-crm

Manter atualizado

Sempre que houver novidades (novos comandos, correções), atualize com git -C ~/src/swl-crm pull. Como os comandos são ligados por link simbólico (passo adiante), a atualização reflete automaticamente no Claude.

4Conectar o banco de dados

O coração do CRM é o banco de dados. O acesso é feito via psql — o Claude monta as queries em SQL e executa via Bash usando a sua credencial pessoal. Cada pessoa tem usuário próprio, para o banco registrar quem fez cada alteração.

4.1Pegar sua credencial

Peça ao Hugo — ele entrega por canal seguro. Você vai receber:

  • Usuário — no formato crm_seu_nome.qeocffkayfgstlyoeltr (o sufixo identifica o projeto no pooler e é obrigatório)
  • Senha

Os demais dados de conexão são iguais para todos:

CampoValor
Hostaws-1-us-east-2.pooler.supabase.com
Porta5432
Bancopostgres
SSLsslmode=require

Use o pooler

Use o host do pooler (aws-1-us-east-2.pooler.supabase.com), não o host direto db.qeocffkayfgstlyoeltr.supabase.co — o direto só responde por IPv6 e falha em redes só-IPv4. Por isso o usuário leva o sufixo .qeocffkayfgstlyoeltr.

Segredo

Nunca coloque sua senha em arquivo versionado no Git, nem cole em chat público. Trate como senha pessoal.

4.2Configurar a variável CRM_PG_URL

Exporte a connection string no seu ~/.zshrc (ou ~/.bashrc), substituindo USUARIO e SENHA:

~/.zshrc
export CRM_PG_URL="postgresql://USUARIO.qeocffkayfgstlyoeltr:SENHA@aws-1-us-east-2.pooler.supabase.com:5432/postgres?sslmode=require"

Depois recarregue o shell:

terminal
source ~/.zshrc

4.3Testar

Confirme que o psql conecta:

terminal
psql "$CRM_PG_URL" -c "SELECT count(*) FROM companies;"

Depois abra o Claude e peça algo simples — por exemplo, "quantas empresas temos no CRM?". O uso do dia a dia está na página CRM.

5Ativar os comandos de propostas

Os comandos /swl-* ficam em ~/src/swl-crm/.claude/commands. Para o Claude reconhecê-los de qualquer diretório, crie um link simbólico para o diretório global do Claude.

1

Criar o link simbólico

O Claude carrega comandos de ~/.claude/commands/:

terminal
mkdir -p ~/.claude
ln -s ~/src/swl-crm/.claude/commands ~/.claude/commands
2

Verificar

Abra o Claude Code e confirme que os comandos aparecem ao digitar /swl.

terminal
ls -la ~/.claude/commands   # deve mostrar um link -> .../swl-crm/.claude/commands

Se a pasta já existir

O ln -s falha se ~/.claude/commands já existir e não for link. Renomeie antes: mv ~/.claude/commands ~/.claude/commands.bak

6Credenciais das propostas

Para publicar propostas (não para o CRM), o fluxo usa mais algumas integrações, configuradas uma única vez:

6.1Token Cloudflare

Necessário para publicar. Adicione ao ambiente — no Mac edite ~/.zshrc, no Windows/WSL edite ~/.bashrc:

~/.zshrc · ~/.bashrc
export CLOUDFLARE_API_TOKEN="seu-token-aqui"
# depois: source ~/.zshrc  (ou ~/.bashrc) e teste com echo $CLOUDFLARE_API_TOKEN

6.2Google Drive e Gmail (Workspace)

O acesso ao Google Workspace (Drive, Gmail, etc.) é feito via MCP servers oficiais — conectores da Anthropic que você habilita uma vez na sua conta Claude. Não é preciso instalar o Google Drive Desktop nem nenhum app local: o Claude manipula o Workspace direto pela API. A instalação tem três passos:

1

Habilitar o conector no claude.ai

Abra claude.ai → Settings → Connectors, procure Google Drive e clique em Connect. O browser abre o login OAuth do Google — entre com a sua conta do Workspace da empresa (a que tem acesso ao shared drive swl-clientes) e autorize. Repita para o Gmail se for usar envio de e-mail.

2

Autenticar no Claude Code

O conector sincroniza automaticamente com o Claude Code (mesma conta — nada de claude mcp add manual). Dentro de uma sessão, rode /mcp, selecione claude.ai Google Drive e escolha Authenticate — o browser abre para confirmar o OAuth.

claude code
/mcp   # selecione "claude.ai Google Drive" → Authenticate
3

Verificar

No terminal, confirme que o conector aparece como conectado:

terminal
claude mcp list   # "claude.ai Google Drive: … - ✔ Connected"

Ou peça algo simples ao Claude, como "liste as pastas do shared drive swl-clientes".

MCP oficial tem limitações — gws-cli é o plano B

O MCP oficial do Google Workspace cobre a maior parte dos casos, mas tem limitações (operações ou parâmetros que ele não expõe). Se você (ou o Claude) esbarrar em alguma dessas limitações, a saída é usar o utilitário gws-cli em vez do MCP para aquela operação. Não é um pré-requisito de instalação: instale só se/quando precisar contornar uma limitação do MCP.

Só uma vez

Depois de autorizar cada integração, o Claude lembra para sempre (até você revogar o acesso). E o /swl-init-proposta testa todas as credenciais no início, avisando se faltar alguma.