ooligo
claude-skill

Limpeza de dados do Salesforce com um Claude Skill

Dificuldade
avançado
Tempo de setup
90min
Para
revops
RevOps

Stack

Um Claude Skill que encontra e propõe fixes para o lixo de dados que destrói silenciosamente seu reporting: contas duplicadas, contatos órfãos, leads-lixo, números de telefone malformados, relações account-contact desencontradas e valores de stage que violam a definição do seu funnel. Propõe mudanças; nunca escreve sem aprovação explícita.

O que você vai precisar

  • Salesforce com acesso à API e um sandbox para teste seguro
  • Claude Code com o Skill instalado
  • Um ruleset de detecção de duplicados (suas matching rules existentes ou um novo)
  • Um doc de definição de stages (que stages permitem quais campos preenchidos)
  • Credenciais read-only para as primeiras rodadas; credenciais de escrita só depois que você confiar na saída

Setup

  1. Instale o Skill. Coloque sfdc-cleanup.skill em ~/.claude/skills/. Defina SFDC_TOKEN (comece com read-only).
  2. Rode um scan de discovery. scan_data_health(scope="full"). O Skill amostra cada objeto principal e reporta contagens de duplicados suspeitos, campos required faltantes, violações de formato e violações de regras de stage. A saída é um relatório de uma página com contagens linha a linha.
  3. Escolha um issue e faça dry-run. dry_run_fix(issue_id="duplicates-account"). O Skill produz um CSV com cada mudança proposta e o diff exato no nível de campo. Revise com um humano.
  4. Aplique com aprovação. apply_fix(issue_id="duplicates-account", csv_path="approved.csv"). O Skill escreve só as linhas presentes no CSV aprovado. Cada escrita é logada com um registro de audit reversível.
  5. Agende scans recorrentes. Rode semanal; fixes mensais depois de revisão.

Como funciona

O Skill usa a Bulk API do Salesforce para puxar objetos em chunks e depois roda o Claude em cada chunk contra as regras que você forneceu. Para duplicados, usa um híbrido: regras determinísticas (match exato de domínio, telefone normalizado) mais uma passada semântica do Claude para casos difusos (capitalizações diferentes, sufixos, escritórios regionais). Para problemas de formato, é regex e validação puros.

A parte difícil é o target de merge proposto. Para duas contas duplicadas, qual sobrevive? O Skill ranqueia por recência de atividade, contagem de contatos e histórico de oportunidades, e propõe um sobrevivente. RevOps revisa e faz override quando precisa.

Cada ação é logada num objeto custom do Salesforce (Cleanup_Audit__c) para você poder reverter.

Pontos de atenção

  • Nunca dê acesso de escrita no dia um. Rode read-only por pelo menos dois ciclos. A primeira rodada vai mostrar falsos positivos nas suas matching rules.
  • Merge no sandbox primeiro. Merges de conta cascateiam para oportunidades e atividades. Teste no sandbox, valide os cascades e depois mova para produção.
  • Soft delete, não hard delete. Use a disciplina do recycle bin do Salesforce. Nunca pule.
  • Comunique a limpeza. Se os reps acordarem com contas mergeadas, vão entrar em pânico. Anuncie com antecedência e ofereça um path de undo.

Stack

  • Salesforce — fonte da verdade e target de escritas
  • Claude — dedup semântico e propostas de fix