Un Claude Skill que encuentra y propone fixes para la basura de datos que en silencio destruye tu reporting: cuentas duplicadas, contactos huérfanos, leads basura, números de teléfono malformados, relaciones account-contact desalineadas y valores de stage que violan la definición de tu funnel. Propone cambios; nunca escribe sin aprobación explícita.
Qué necesitas
- Salesforce con acceso a la API y un sandbox para testing seguro
- Claude Code con el Skill instalado
- Un ruleset de detección de duplicados (tus matching rules existentes o uno nuevo)
- Un doc de definición de stages (qué stages permiten qué campos poblados)
- Credenciales read-only para las primeras corridas; credenciales de escritura solo después de confiar en el output
Setup
- Instala el Skill. Coloca
sfdc-cleanup.skillen~/.claude/skills/. DefineSFDC_TOKEN(empieza con read-only). - Corre un escaneo de discovery.
scan_data_health(scope="full"). El Skill samplea cada objeto principal y reporta conteos de duplicados sospechados, campos requeridos faltantes, violaciones de formato y violaciones de reglas de stage. La salida es un reporte de una página con conteos por línea. - Elige un issue y haz dry-run.
dry_run_fix(issue_id="duplicates-account"). El Skill produce un CSV con cada cambio propuesto y el diff exacto a nivel de campo. Revisa con un humano. - Aplica con aprobación.
apply_fix(issue_id="duplicates-account", csv_path="approved.csv"). El Skill escribe solo las filas presentes en el CSV aprobado. Cada escritura se loguea con un registro de audit reversible. - Programa escaneos recurrentes. Corre semanal; fixes mensuales después de revisión.
Cómo funciona
El Skill usa la Bulk API de Salesforce para jalar objetos en chunks, y luego corre Claude sobre cada chunk contra las reglas que proveíste. Para duplicados, usa un híbrido: reglas determinísticas (match exacto de dominio, teléfono normalizado) más una pasada semántica de Claude para casos difusos (capitalizaciones distintas, sufijos, oficinas regionales). Para problemas de formato, es regex y validación pura.
La parte difícil es el target de merge propuesto. Para dos cuentas duplicadas, ¿cuál sobrevive? El Skill ranquea por recencia de actividad, conteo de contactos e historia de oportunidades, y propone un sobreviviente. RevOps revisa y override según necesite.
Cada acción se loguea a un objeto custom de Salesforce (Cleanup_Audit__c) para que puedas revertir.
A tener en cuenta
- Nunca des acceso de escritura el día uno. Corre read-only por al menos dos ciclos. La primera corrida va a sacar a la luz falsos positivos en tus matching rules.
- Merge en sandbox primero. Los merges de cuenta cascadean a oportunidades y actividades. Prueba en sandbox, valida los cascades, y luego mueve a producción.
- Soft delete, no hard delete. Usa la disciplina del recycle bin de Salesforce. Nunca lo evadas.
- Comunica la limpieza. Si los reps se despiertan con cuentas mergeadas, van a entrar en pánico. Anuncia con tiempo y provee un path de undo.
Stack
- Salesforce — fuente de verdad y target de escrituras
- Claude — dedup semántico y propuestas de fix