Open source · MIT · Local-first

El CRM inmobiliario
que vive en tu máquina.

Casalvi indexa tus PDFs, notas y contactos en local y te dice qué propietarios están a punto de vender y qué comprador encaja con cada piso. Sin SaaS, sin cuotas, sin enviar tus clientes a la nube.

Levanta Supabase self-hosted + la app en localhost:3000. Tus datos no salen del equipo.

Inteligencia de contactos, no otro CRM más

Casalvi se concentra en las dos preguntas que importan antes de una llamada: ¿a quién llamo hoy? y ¿a quién le enseño este piso?

Ingesta de tu carpeta local

Apunta Casalvi a ~/Dropbox/Inmobiliaria y extrae texto de PDFs, DOCX e imágenes. Clasifica cada archivo y lo enlaza al contacto correcto.

Top propietarios propensos a vender

Ranking explicable: divorcio detectado en una nota, contrato de alquiler a punto de vencer, mención de traslado laboral. Con razones citables.

Top compradores por inmueble

Para cada piso, los N compradores con mejor ajuste. Combina reglas (presupuesto, zona, dormitorios) con similitud semántica de sus preferencias.

Agente por WhatsApp (OpenClaw)

Servidor MCP incluido. Conecta OpenClaw a tu WhatsApp y pregunta ‘dame los 5 propietarios para llamar hoy’ desde el móvil.

Local-first por defecto

Postgres + pgvector en Docker. Auth y ficheros en tu equipo. El código que corres es el mismo que puedes auditar línea a línea en GitHub.

OpenAI u Ollama, tú eliges

Un flag en .env cambia entre la API de OpenAI y un modelo local vía Ollama. Los embeddings y el chat se abstraen en un mismo provider.

Cuatro pasos para tenerlo corriendo

Si sabes abrir una terminal, lo tienes en diez minutos.

1
docker compose up

Levanta Supabase self-hosted (Postgres + pgvector + Auth + Storage) y deja la API en localhost:54321.

2
pnpm install && pnpm --filter web dev

Arranca la app Next.js en localhost:3000. Pega tu OPENAI_API_KEY en .env.local o activa Ollama.

3
Importa contactos e indexa carpeta

CSV de contactos + ruta local en /dashboard/ingest. Casalvi lee cada archivo, lo clasifica y lo enlaza.

4
Abre Inteligencia

Rankings con razón explicable. Conecta OpenClaw al MCP si quieres pedir los rankings por WhatsApp.

Clónalo, audítalo, adáptalo.

MIT license. Sin telemetría. Sin features de pago. Si algo te falta, abre un PR.