Saltar al contenido
charad.dev
Volver a proyectos

Web

ClaraMente — Compañero con IA para psicólogos

Compañero de bienestar con IA y memoria a largo plazo para profesionales de salud mental

Vista principal del proyecto ClaraMente — Compañero con IA para psicólogos

Contexto

Los profesionales de la salud mental cargan a diario con alta tensión y riesgo de burnout. ClaraMente es un compañero de bienestar con IA que les da un espacio para registrar su estado, hacer seguimiento de sus casos y conversar con un asistente empático que recuerda y acompaña. Su principio es claro: la IA como apoyo, nunca como sustituto de la terapia (estabilizar y acompañar, no diagnosticar).

Qué hace

  • Compy, asistente con memoria: chat con personalidad coherente que recuerda conversaciones pasadas y distingue el contexto personal del profesional de los datos clínicos de sus pacientes.
  • Seguimiento de pacientes (alias anonimizado, carga emocional, notas, tendencia), colegas y eventos.
  • Check-ins emocionales de baja fricción (ánimo, energía, intención) por contexto.
  • Análisis clínico especializado: un modo donde la IA actúa como supervisor de un caso concreto a partir del historial de check-ins.
  • Reflexión del día: insight diario automático (Observación → Validación → Sugerencia).
  • Onboarding personalizado e i18n (español/inglés) en interfaz y prompts.

Arquitectura de memoria de la IA

Lo más ambicioso del proyecto: un sistema de memoria de tres capas que imita la memoria humana para que el asistente recuerde al usuario entre conversaciones.

  • Corto plazo (Redis): ventana deslizante de los últimos mensajes con TTL, para dar continuidad y detectar el paso del tiempo entre sesiones.
  • Largo plazo — "facts" (PostgreSQL): hechos estructurados del usuario con puntuación de confianza y refuerzo (si se repiten, suben confianza en vez de duplicarse).
  • Episódica (Qdrant): momentos relevantes resumidos como embeddings; en cada mensaje se hace una búsqueda semántica (RAG) para recuperar los recuerdos más pertinentes.
  • Consolidación en segundo plano: tras cada conversación, un proceso analiza el transcript con el LLM y extrae y persiste nuevos hechos y memorias automáticamente.

Mi rol

Diseñé y construí el producto completo:

  • Frontend: React 18 + TypeScript (Vite), con refresh de tokens transparente vía interceptores de Axios y renderizado Markdown.
  • Backend: Python + FastAPI asíncrono, SQLAlchemy 2.0 y migraciones con Alembic.
  • Datos: PostgreSQL (relacional), Qdrant (vectorial) y Redis (caché) — persistencia políglota.
  • IA: capa agnóstica al proveedor (patrón Strategy) con Gemini 2.5 Flash y OpenRouter como fallback, embeddings y prompts multilingües.
  • Seguridad: JWT de doble token con rotación y detección de robo, OAuth con Google, cookies HTTP-only y aislamiento de datos por usuario.
  • DevOps: Docker Compose para todo el stack, migraciones automáticas al arrancar y despliegue en Railway.

Stack

React + TypeScript (Vite) en el frontend; FastAPI (Python async), SQLAlchemy 2.0 y Alembic en el backend; PostgreSQL, Qdrant y Redis como almacenes; IA con Gemini 2.5 Flash y OpenRouter; todo containerizado con Docker y desplegado en Railway.

Galería

Historial del paciente con opción de análisis profundo por IA
Historial del paciente con opción de análisis profundo por IA
Formulario para añadir un nuevo paciente al círculo terapéutico
Formulario para añadir un nuevo paciente al círculo terapéutico
Onboarding personalizado según el rol profesional
Onboarding personalizado según el rol profesional
Selección de las principales fuentes de estrés en el onboarding
Selección de las principales fuentes de estrés en el onboarding