Flow: AI Health Coach
Chat Inteligente con Contexto de Salud
JTBD: “Cuando estoy confundido sobre mis resultados, quiero hablar con alguien que entienda mi contexto”
Actor: Usuario autenticado (cualquier fase)
Trigger: Floating button, CTA en alerta, o Ajustes > Ayuda
Priority: P0 (Critical) — Diferenciador + Retención
Duration: 30s-5 min por conversación
Happy Path: Primera Conversación
Happy Path: Desde una Alerta
Error Paths
Path 1: IA no puede responder (pregunta fuera de alcance)
Path 2: Escalación a humano (valores críticos)
Path 3: Sin conexión
Path 4: Rate limit (demasiadas preguntas)
Key Moments
Moment 1: Floating Button (Siempre Visible)
Propósito: Acceso inmediato desde cualquier pantalla
Reglas del botón:
- Visible en todas las pantallas (excepto onboarding steps 1-6)
- Bottom-right, 16px del borde
- Badge con punto azul si hay respuesta pendiente
- Se oculta si el teclado está abierto (mobile)
- No se muestra sobre modales de confirmación
Moment 2: First-Time Experience
Propósito: Explicar qué es el Health Coach, generar confianza
Copy clave:
- “Soy tu Health Coach” (no “chatbot”, no “asistente virtual”)
- “Conozco tus exámenes, tu plan y tu progreso” (demuestra contexto)
- “Para temas médicos urgentes, siempre te conectare con tu médico” (boundary setting)
Moment 3: Conversación con Chips Interactivos
Propósito: Respuestas accionables, no solo texto
Tipos de chips:
| Chip | Color | Acción |
|---|---|---|
| Biomarcador (valor) | bg-[#e8ebf8] text-[#0f2fc7] |
Abre Readiness Level bottom sheet (ver dashboard addendum) |
| Suplemento/Acción | bg-emerald-50 text-emerald-700 |
Navega a plan del dia |
| Medicamento | bg-[#fef3c7] text-[#92400e] |
Muestra posología del médico (ver consulta-médica addendum) |
| CTA (siguiente paso) | border-[#0f2fc7] text-[#0f2fc7] |
Navega a pantalla relevante |
| Alerta | bg-red-50 text-red-600 |
Navega a alerta o escala a médico |
Nota: Las specs completas de interacción de chips (tap feedback, scale, haptic) están en interactions addendum. Las specs de chip en contexto post-consulta (con feedback thumbs y suggested questions) están en consulta-médica addendum.
Moment 4: Input de Voz
Propósito: Alternativa para usuarios que prefieren hablar
Flujo voz:
- Tap en micrófono (pide permiso si primera vez)
- Escuchando con animación de onda
- Transcripción en tiempo real debajo
- Silencio de 2s o tap stop envía automáticamente
- Texto aparece como mensaje normal del usuario
Moment 5: Preguntas Sugeridas (Contextuales)
Propósito: Reducir fricción, mostrar valor del contexto
Reglas de sugerencias:
SI usuario acaba de cargar exámenes:
→ "¿Qué cambió en mis últimos resultados?"
→ "¿Hay algo que deba preocuparme?"
SI adherencia < 70% esta semana:
→ "¿Cómo puedo mejorar mi adherencia?"
→ "¿Puedo ajustar mi plan?"
SI hay alerta activa no leída:
→ "Cuéntame sobre mi alerta de [biomarcador]"
SI es inicio de ciclo (día 1-7):
→ "¿Qué debo esperar en las próximas semanas?"
→ "¿Cómo se calculó mi plan?"
SI está por cerrar ciclo (día 85-90):
→ "¿Cómo me fue este ciclo?"
→ "¿Qué cambiará en el siguiente?"
DEFAULT (sin contexto especial):
→ "¿Cómo va mi plan esta semana?"
→ "¿Qué significan mis últimos exámenes?"
→ "¿Por qué tomo este suplemento?"
Moment 6: Historial de Conversaciones
Propósito: Acceder a conversaciones pasadas
Moment 7: Escalación a Médico
Propósito: Transición suave cuando IA no es suficiente
Context Awareness (Lo que la IA sabe)
Contexto del usuario disponible para IA:
Perfil:
- nombre, edad, sexo_biologico, peso, ciudad
Biomarcadores:
- todos los valores actuales y estado
- tendencias (subiendo, estable, bajando)
- rcv_detectado en cada biomarcador
Plan:
- suplementos actuales y razón científica
- ejercicio recomendado
- nutrición focus
Ciclo:
- día actual, fase, adherencia_porcentaje
- check-ins recientes (últimos 7 días)
- streak actual
Alertas:
- alertas activas no resueltas
- historial de alertas recientes
Lo que la IA NO puede hacer:
- Recetar medicamentos
- Diagnosticar enfermedades
- Cambiar el plan directamente (solo recomendar ajustes)
- Acceder a datos de otros usuarios/familiares
- Dar opiniones sobre otros médicos o tratamientos
States
| Estado | UI | Copy |
|---|---|---|
| Loading (modal) | Skeleton: avatar IA + 3 lines shimmer | N/A |
| Empty (primera vez) | Welcome message + 3 sugerencias | “Soy tu Health Coach” |
| Thinking | Tres puntos animados “…” en burbuja IA | N/A |
| Error (IA falla) | “Tuve un problema. Intenta de nuevo.” + retry | “Tuve un problema” |
| Offline | Banner top: “Sin conexión” + historial disponible | “Necesitas conexión para chatear” |
| Rate limited | Timer countdown + contactar soporte | “Has hecho muchas preguntas hoy” |
| Escalated | Banner: “Conectando con soporte médico” | “Te conecto con tu médico” |
Objects Reference
| Elemento | Objetos (architecture.md) |
|---|---|
| Contexto IA | Usuario (core + health_profile), Biomarcador (todos), Plan, Ciclo, CheckIn |
| Chip biomarcador | Biomarcador (nombre, valor, estado) |
| Chip suplemento | Plan.suplementos |
| Alerta en chat | Alerta (título, severidad, cta_primaria) |
| Historial | Chat sessions (objeto nuevo, no en architecture.md) |
Critical Metrics
| Métrica | Meta | Impacto |
|---|---|---|
| Chat open rate | >40% abren chat al menos 1x/mes | Engagement |
| Avg messages per session | 3-5 | Valor percibido |
| Suggested question tap rate | >60% | Reducción de fricción |
| Escalation rate | <5% sesiones | IA resuelve casi todo |
| CSAT post-chat | >4.2/5 | Calidad percibida |
| Time to first response | <3s | Experiencia fluida |
| Voice input usage | >15% | Accesibilidad |
Implementation Notes
- Modal vs Full-screen: Mobile = full-screen slide-up. Desktop = modal derecho (400px wide)
- Streaming: Respuesta IA aparece token por token (typewriter effect)
- Chips: Inline en el texto, no separados. Tap abre en nueva pantalla (chat queda en stack)
- Historial: Agrupado por semana, max 50 conversaciones visibles (paginated)
- Skeleton: 300ms shimmer al abrir modal
- FadeInUp: Mensajes nuevos entran con fade 200ms
- Persistencia: Conversaciones guardadas en servidor, historial cacheado localmente
- Accesibilidad: VoiceOver/TalkBack labels en todos los chips y botones
- Copy: Español colombiano, tono cercano (la IA habla como ADEN, no como robot)
Existing Prototypes
| Archivo | Ruta |
|---|---|
| Health Coach | apps/prototypes/src/pages/paciente/asistente/index.astro |
Próximo: laboratorios — Lab Results Flow