Cómo enseñar a CaseCore tu estilo con el Vault
Cómo enseñar a CaseCore tu estilo con el Vault
El problema: redacción genérica que no se ve como tuya
Cada despacho tiene una manera propia de redactar. La forma del proemio, los giros que usa para describir hechos, la estructura del capítulo de derecho — todo eso tiene una firma. Cuando una IA jurídica genérica redacta una demanda, el output puede ser técnicamente correcto, pero no se siente como tu trabajo. Se ve “de chatbot”.
Eso es un problema real porque:
- Tu cliente paga por tu criterio, no por una plantilla bajada de internet.
- El juez se familiariza con tu estilo a lo largo del proceso. Romperlo de repente confunde.
- Tu equipo lee los borradores generados por IA esperando algo que se parezca al despacho — si no lo es, corrigen todo a mano, perdiendo la ganancia de tiempo.
La solución: el Vault aprende de tus propios docs
El Vault de CaseCore es un módulo donde subes documentos históricos del despacho — demandas, contratos, dictámenes, escritos exitosos. El sistema hace tres cosas:
- Anonimiza automáticamente: regex deterministas + LLM detectan y reemplazan nombres, RFCs, CURPs, expedientes, cédulas profesionales, direcciones específicas. Ningún dato personal queda indexado.
- Indexa con embeddings: cada documento se convierte en chunks y cada chunk se convierte en un vector numérico (1024 dimensiones) usando Voyage AI. Esos vectores son lo que se persiste, no el texto original.
- Alimenta a los agentes: cuando redactas un caso nuevo, el sistema busca los 3 documentos más similares de TU Vault y los inyecta como ejemplos al modelo. El output imita tu estilo porque está aprendiendo de tus propios docs.
Qué pasa con la PII
Esta es la pregunta que más recibimos. La respuesta corta: el Vault está diseñado asumiendo que tus docs históricos contienen PII real, y la limpia antes de indexar.
El pipeline de anonimización corre server-side, antes de que cualquier dato salga hacia los embeddings:
- Pasada 1 — regex deterministas: RFCs (formato CCCC######CCC), CURPs (18 caracteres), teléfonos, montos, expedientes, fechas, emails. Esto cubre la PII estructurada que cualquier auditor reconocería.
- Pasada 2 — patrones contextuales: cédulas profesionales tras “cédula profesional número”, notarías tras “Notaría Pública número”, VINs tras “número de serie”, placas, registros patronales IMSS. Estos son menos obvios pero igual de identificables.
- Pasada 3 — heurística de nombres: detección de secuencias capitalizadas precedidas por hints (“Lic.”, “C.”, “actor”, “demandado”).
- Pasada 4 — LLM: una pasada final con Claude para capturar nombres propios que la heurística pasó por alto (apellidos huérfanos, alias entre comillas, personas morales con nombre comercial).
Después de las 4 pasadas, el documento queda con placeholders [NOMBRE], [CONTRAPARTE], [RFC], [PERSONA_MORAL], etc. Solo entonces se indexa.
Puedes desactivar la anonimización en una subida específica si confirmas que el documento ya está limpio (por ejemplo, una plantilla genérica), pero el default está ON y CaseCore no se hace responsable de PII filtrada por desactivaciones explícitas.
Multi-tenant: tus docs nunca se mezclan con otros
El schema de la base de datos tiene la separación cableada, no solo en código. Cada chunk indexado lleva el despacho_id directamente en su fila, y todas las queries de búsqueda filtran por ese campo. Si un bug futuro olvidara el filtro, la query devolvería cero resultados — nunca docs de otro despacho.
Esto es importante porque el riesgo es asimétrico: una falla de aislamiento es catastrófica (un despacho viendo casos de otro = fin del producto), mientras que una falla del filtro hacia el propio despacho es solo una mala UX recuperable. La arquitectura privilegia la seguridad.
Hay un test dedicado en el CI que verifica este invariante: un despacho A con consulta perfectamente similar a los docs de un despacho B debe obtener cero resultados. Si ese test falla, el deploy se bloquea automáticamente.
Cómo se usa en tu día a día
- Vas a
/dashboard/vaulty subes tus mejores 5-10 documentos. La cuota va de 50 a 1000 docs según tu plan. - Cada documento tarda 30 segundos a 5 minutos en indexarse (depende del tamaño y de si se anonimiza). Mientras tanto puedes cerrar la pestaña.
- Cuando creas un caso nuevo y pides redactar, CaseCore busca automáticamente en tu Vault. No tienes que seleccionar nada.
- El documento generado incluye un footer pequeño que dice: “Generado usando 3 documentos de tu Vault” con links a los docs específicos. Si quieres ver qué referencias usó, los puedes abrir.
Si tu Vault aún no tiene suficientes docs (menos de 5 de la materia del caso), el sistema cae al modo genérico actual y te lo dice en el footer. No falla. Solo no aprende todavía.
Templates base incluidos
Cuando creas tu despacho en CaseCore, el Vault arranca con 10 templates jurídicos anonimizados que cubren materias comunes: civil, amparo, mercantil, laboral, sucesorio. No son los tuyos — son ejemplos del estado del arte — pero te dan un piso desde día uno mientras subes los tuyos.
A medida que subes tus docs reales, los 10 ejemplos pierden relevancia (la búsqueda semántica favorece lo tuyo). Puedes ocultarlos de la búsqueda con un toggle si quieres “limpiar” tu Vault, pero no es necesario.
¿Qué pasa cuando borras un doc del Vault?
Soft-delete inmediato: el doc desaparece de la búsqueda y del índice. Hard-delete a los 30 días: el archivo se borra de R2 y los chunks se eliminan permanentemente. Durante esos 30 días puedes recuperarlo si te arrepentiste.
Resumen
El Vault es lo que separa a CaseCore de cualquier asistente jurídico genérico. No es “una IA que sabe derecho mexicano”. Es tu despacho con asistencia de IA. La diferencia se nota en el primer documento generado.