🧠 Clínica Fernanda Bocco¶
Proyecto de Proyecto — Consulta de psicología con privacidad absoluta¶
Fernanda Bocco, psicóloga. Consulta privada en Madrid.
Especialidad: terapia individual de adultos. Evaluación, diagnóstico y tratamiento.
Confidencialidad total: ni el administrador del sistema puede leer las notas de sus pacientes.
Versión 1.0 · Mayo 2026
1. Resumen Ejecutivo¶
Clínica Fernanda Bocco es una consulta privada de psicología que opera sobre la infraestructura de SmallCountry. La profesional atiende a sus pacientes en sesiones individuales de terapia de adultos, combinando evaluación clínica, diagnóstico y tratamiento.
El diferencial de esta consulta no es solo clínico — es tecnológico y ético. Toda la actividad profesional ocurre en un entorno digital sellado donde:
- Las notas de sesión están cifradas de extremo a extremo (E2E). Ni el administrador del sistema puede leerlas.
- Las grabaciones de audio (con consentimiento informado) se transcriben con IA local, sin enviar nunca la voz del paciente a servidores externos.
- La IA de apoyo (análisis, resúmenes, sugerencias) corre exclusivamente en los servidores de SmallCountry. No usa APIs externas.
- La bibliografía clínica se consulta vía RAG (generación aumentada con documentos) sobre literatura científica cargada localmente.
- Los cuestionarios estandarizados (PHQ-9, GAD-7, PCL-5 y otros) se procesan sin que los datos salgan del sistema.
- La gestión administrativa (citas, recordatorios, facturación) se automatiza siguiendo las reglas que la profesional define.
Visión: Una consulta donde la tecnología asiste sin espiar, donde la IA propone sin decidir, y donde la confidencialidad no es una promesa — es una propiedad matemática del sistema.
2. La Profesional¶
2.1 Fernanda Bocco¶
Psicóloga colegiada con consulta privada en Madrid. Licenciada en psicología, su práctica abarca niños, adolescentes y adultos, con especial sensibilidad hacia los procesos de crianza y desarrollo infanto-juvenil. Su trayectoria profesional incluye experiencia en hospitales pediátricos, escuelas y trabajo social con adolescentes en situación de vulnerabilidad.
Es madre de dos niñas, y esa experiencia directa de la crianza informa y enriquece su práctica clínica. Desde 1998, el concepto de autoeficacia de Albert Bandura —la creencia en la propia capacidad para lograr resultados— ha sido el eje vertebrador de su vocación: «aprendí sobre el sentimiento de autoeficacia y desde entonces decidí que era con eso con lo que trabajaría, desarrollando ese sentimiento en las personas».
Su enfoque terapéutico se nutre de:
- Escucha activa y acompañamiento empático
- Comunicación No Violenta (CNV)
- Mirada sistémica y transgeneracional: cómo las dinámicas familiares y la historia heredada influyen en el presente
- Teoría del apego: cómo los vínculos tempranos configuran la seguridad emocional
- Teoría polivagal (Porges): el papel del sistema nervioso autónomo en el trauma y la regulación emocional
- Procesos de duelo (Kübler-Ross)
- Neurobiología aplicada al desarrollo infantil y adolescente
Atiende:
- Niños y niñas con dificultades emocionales, conductuales o de desarrollo
- Adolescentes en crisis, problemas de identidad, ansiedad, depresión
- Adultos en procesos de duelo, trauma, ansiedad, desarrollo personal
- Madres, padres y docentes buscando orientación en crianza y educación respetuosa
2.2 La consulta¶
La consulta física está en Madrid. La consulta digital reside íntegramente en los servidores de SmallCountry, accesible solo desde dentro de la red de la consulta. No se expone ningún servicio a internet. Todo el acceso es local o mediante VPN (red privada virtual).
3. Propuesta de Valor¶
3.1 El problema que resuelve¶
La práctica profesional de la psicología maneja los datos más sensibles que existen: pensamientos íntimos, historias de trauma, diagnósticos clínicos, notas de sesión. En el caso de Fernanda Bocco, esta sensibilidad se multiplica porque muchos de sus pacientes son menores de edad — niños y adolescentes cuyos datos requieren la máxima protección legal y ética.
Sin embargo, la mayoría de las psicólogas dependen de herramientas que no fueron diseñadas para esta sensibilidad:
- Notas en papel o en Word — sin cifrado, sin copia de seguridad verificable, vulnerables a pérdida o robo
- Grabadoras de voz — el audio queda en un dispositivo físico sin protección
- IA en la nube (ChatGPT, Claude, etc.) — los datos de los pacientes se envían a servidores de terceros, fuera del control de la profesional y del marco jurídico europeo
- Agendas y recordatorios — en Google Calendar o apps que perfilan al paciente sin su conocimiento
- Facturación — en Excel o herramientas que mezclan datos clínicos con administrativos
Cada una de estas prácticas es una brecha potencial. La confidencialidad del paciente —el pilar ético de la profesión— queda comprometida no por mala fe, sino por falta de alternativas.
3.2 La solución que propone¶
La Clínica Fernanda Bocco opera sobre SmallCountry, una infraestructura diseñada desde cero para la soberanía digital. Todo lo que la psicóloga necesita está integrado en un único sistema:
| Necesidad | Solución en SmallCountry |
|---|---|
| Notas de sesión | Joplin Server con cifrado E2E |
| Transcripción de audio | Hermes Agent con faster-whisper local |
| Análisis de sesiones | Ollama + RAG con Qdrant (IA local) |
| Cuestionarios clínicos | Open WebUI + plantillas locales |
| Agendas y recordatorios | n8n (automatización) |
| Comunicación con pacientes | Mautic |
| Facturación | FacturaScripts |
| Identidad y acceso | Authentik + 2FA |
| Documentos y protocolos | Forgejo (versionado) |
El principio fundamental: ningún dato de paciente sale de los servidores de SmallCountry. Ni el audio, ni la transcripción, ni las notas, ni los resultados de cuestionarios. Todo se procesa localmente. Esto es especialmente crítico cuando los pacientes son menores, cuyos datos gozan de protección reforzada tanto por el RGPD como por el Código Deontológico del Psicólogo.
3.3 Público objetivo¶
- Principal: Fernanda Bocco, como usuaria única de las herramientas clínicas
- Secundario: sus pacientes —niños, adolescentes y adultos— que reciben recordatorios de cita, facturas y —cuando corresponde— informes clínicos
- Terciario: madres, padres y docentes que consultan en busca de orientación en crianza y educación
- Cuaternario: el administrador de SmallCountry, que mantiene la infraestructura pero no puede acceder a los datos clínicos gracias al cifrado E2E
4. Sistema Tecnológico¶
4.1 Núcleo clínico: notas de sesión con cifrado E2E¶
El corazón de la consulta son las notas de sesión. Cada paciente tiene un cuaderno en Joplin Server protegido con cifrado de extremo a extremo. La clave de cifrado reside exclusivamente en los dispositivos de la psicóloga.
Lo que ve la psicóloga → texto legible, notas estructuradas, historial clínico
Lo que ve el administrador → datos cifrados, matemáticamente inaccesibles sin la clave
Lo que vería un atacante con acceso físico al servidor → archivos cifrados, ilegibles sin la clave
Propiedades de seguridad:
- Cifrado E2E (cifrado de extremo a extremo): los datos se cifran en el dispositivo de la psicóloga antes de enviarse al servidor
- La clave de cifrado nunca se almacena en el servidor
- Las copias de seguridad mantienen el cifrado: los datos respaldados están tan protegidos como los originales
- ZFS añade una capa adicional de cifrado en reposo sobre el sistema de archivos
4.2 Pipeline de audio a nota clínica¶
Cuando la psicóloga graba una sesión (con consentimiento informado del paciente), el sistema procesa el audio de forma completamente local:
1. 🎤 Grabación de la sesión (dispositivo de la psicóloga)
2. → Audio enviado a SmallCountry vía VPN (canal cifrado)
3. → [Hermes Agent](/fichas/programas/hermes-agent/) transcribe con faster-whisper (IA local en Horus)
4. → [Ollama](/fichas/stacks/ollama-qdrant/) analiza la transcripción y genera un borrador de nota clínica
5. → [Qdrant](/fichas/stacks/ollama-qdrant/) enriquece el análisis con RAG:
- Literatura científica y manuales de psicología cargados localmente
- Historial de notas anteriores de ese mismo paciente
- Criterios diagnósticos (DSM-5, CIE-11)
6. → [n8n](/fichas/programas/n8n/) orquesta el flujo y guarda el resultado
7. → [Joplin Server](/fichas/programas/joplinserver/) recibe la nota — automáticamente cifrada E2E
Lo que NO ocurre: el audio nunca sale de SmallCountry. No se envía a OpenAI, ni a Google, ni a ningún servicio cloud. La transcripción y el análisis ocurren en Horus (servidor secundario con GPU), dentro de la red local.
4.3 IA de apoyo clínico¶
La inteligencia artificial asiste a la psicóloga de tres maneras, siempre como herramienta de apoyo — nunca como sustituto del criterio profesional:
Análisis de sesión:
- Resume la conversación de forma estructurada (motivo de consulta, temas tratados, intervenciones, acuerdos)
- Identifica patrones recurrentes entre sesiones (evolución del estado de ánimo, temas que reaparecen)
- Sugiere líneas de exploración para la siguiente sesión
Consulta de literatura clínica:
- La psicóloga puede preguntar: «¿Qué dice la literatura sobre EMDR en trauma complejo?»
- La IA consulta los PDFs y artículos científicos cargados en Qdrant y responde con referencias
- Útil para preparar sesiones, fundamentar diagnósticos, mantenerse actualizada
Apoyo diagnóstico:
- Cruza los síntomas descritos en las notas con criterios del DSM-5 y CIE-11
- Sugiere diagnósticos diferenciales a considerar (no diagnostica — sugiere, la profesional decide)
- Lista los criterios que se cumplen y los que faltan por explorar
flowchart LR
Psicóloga -->|Pregunta| OpenWebUI[Open WebUI]
OpenWebUI -->|Consulta| Ollama[Ollama LLM local]
Ollama -->|RAG| Qdrant[(Qdrant)]
Qdrant -->|Literatura| Ollama
Qdrant -->|Historial paciente| Ollama
Qdrant -->|DSM-5 / CIE-11| Ollama
Ollama -->|Respuesta| OpenWebUI
OpenWebUI -->|Muestra| Psicóloga
4.4 Cuestionarios estandarizados¶
La psicóloga dispone de los principales instrumentos de evaluación en formato digital, procesados localmente:
| Cuestionario | Evalúa | Uso típico |
|---|---|---|
| PHQ-9 | Depresión | Seguimiento de síntomas depresivos |
| GAD-7 | Ansiedad generalizada | Evaluación de ansiedad |
| PCL-5 | Estrés postraumático | Trauma y TEPT |
| BDI-II | Depresión (Beck) | Diagnóstico y seguimiento |
| BAI | Ansiedad (Beck) | Diagnóstico y seguimiento |
| SCL-90-R | Malestar psicológico general | Evaluación multidimensional |
| AUDIT | Consumo de alcohol (OMS) | Detección de consumo de riesgo |
| ISI | Insomnio | Evaluación de problemas de sueño |
| EPDS | Depresión perinatal (Edimburgo) | Embarazo y postparto |
| PHQ-15 | Síntomas somáticos | Quejas físicas asociadas a malestar psicológico |
| SF-36 | Calidad de vida | Evaluación de bienestar general |
| WHO-5 | Bienestar psicológico (OMS) | Screening rápido de bienestar |
Instrumentos para población infantil y adolescente:
| Instrumento | Evalúa | Edad |
|---|---|---|
| SDQ (Strengths and Difficulties) | Problemas emocionales y conductuales, hiperactividad | 4-17 años |
| STAIC | Ansiedad estado/rasgo infantil | 8-15 años |
| CDI (Children's Depression Inventory) | Depresión infantil | 7-17 años |
| CBCL (Child Behavior Checklist) | Problemas conductuales (informe padres) | 1.5-18 años |
Los cuestionarios se administran desde Open WebUI como plantillas locales. Los resultados se procesan automáticamente (puntuación, percentiles, niveles de gravedad) y se guardan como nota cifrada en Joplin.
La psicóloga también puede crear sus propios cuestionarios y registros personalizados mediante n8n.
4.5 Automatización administrativa¶
La carga administrativa de la consulta se reduce mediante automatizaciones que la psicóloga configura una vez y el sistema ejecuta en segundo plano:
| Proceso | Gatillo | Acción |
|---|---|---|
| Recordatorio de cita | 24h antes de la sesión | Mautic envía recordatorio automático al paciente (email/WhatsApp) |
| Confirmación de cita | Paciente confirma | Se actualiza el estado en el calendario |
| Factura tras sesión | Sesión completada | FacturaScripts emite la factura automáticamente |
| Seguimiento post-alta | 3 meses tras alta | Mautic envía correo de seguimiento (si la psicóloga lo programa) |
| Informe periódico | Primer lunes de mes | Borrador de informe de evolución de cada paciente activo |
| Aviso de documentación | Consentimiento a punto de caducar | Notificación a la psicóloga para renovar |
Todo orquestado por n8n, que conecta Mautic (comunicaciones), FacturaScripts (facturación) y Joplin (notas).
4.6 Confidencialidad multicapa¶
La protección de los datos clínicos no depende de una sola medida: es una arquitectura en capas donde cada una refuerza a las demás.
| Capa | Protección | Herramienta |
|---|---|---|
| Cifrado E2E | Los datos son ilegibles sin la clave de la psicóloga | Joplin Server |
| Cifrado en tránsito | Las comunicaciones viajan cifradas | Caddy + TLS |
| Cifrado en reposo | Los archivos en disco están cifrados | ZFS |
| Aislamiento de red | La consulta está en un bridge separado del hogar, empresa y finca | Proxmox VE |
| Identidad y acceso | Solo la psicóloga accede, con 2FA obligatorio | Authentik |
| Integridad de datos | Detección y corrección automática de corrupción | ZFS |
| Copias de seguridad | Diarias, verificadas funcionalmente, también cifradas | PBS |
Un fallo en cualquiera de estas capas no compromete los datos porque las demás mantienen la protección.
4.7 Conocimiento clínico de referencia¶
La IA de la consulta se apoya en fuentes externas de conocimiento, pero sin enviar datos de pacientes. La consulta es unidireccional: la IA pregunta a la API, pero nunca le envía información del paciente.
| Fuente | Qué consulta la IA | Sin API key |
|---|---|---|
| AEMPS CIMA | Vademécum oficial español — interacciones de medicamentos que toman los pacientes | ✅ |
| ICD-11 (OMS) | Clasificación Internacional de Enfermedades — codificación diagnóstica estandarizada | ✅ |
| PubMed (NCBI) | 35 millones de artículos biomédicos — psicología basada en evidencia | ✅ |
| Cochrane Reviews | Revisiones sistemáticas — mejor evidencia disponible sobre tratamientos | ✅ |
| ClinicalTrials.gov | Ensayos clínicos activos en el mundo — investigaciones en curso | ✅ |
| Semantic Scholar | 180 millones de artículos con grafos de citación — mejor cobertura en psicología | ✅ |
| BOE MCP | Boletín Oficial del Estado — consulta legal en lenguaje natural | ✅ |
| Spanish Law MCP | LOPDGDD, RGPD, Ley de Servicios Digitales — cumplimiento normativo | ✅ |
Todo este conocimiento se indexa localmente en Qdrant para que Ollama pueda consultarlo incluso sin conexión a internet. La psicóloga decide qué fuentes activar y qué literatura cargar.
Además de los instrumentos ya descritos (§4.4), la consulta dispone de:
| Instrumento | Evalúa | Uso |
|---|---|---|
| AUDIT | Consumo de alcohol (OMS) | Detección de consumo de riesgo |
| ISI | Insomnio | Problemas de sueño |
| EPDS | Depresión perinatal | Embarazo y postparto |
| PHQ-15 | Síntomas somáticos | Quejas físicas |
| SF-36 | Calidad de vida | Bienestar general |
| WHO-5 | Bienestar psicológico (OMS) | Screening rápido |
5. Los Servicios de la Clínica¶
5.1 Servicios clínicos¶
| Servicio | Descripción |
|---|---|
| Terapia infantil | Niños y niñas con dificultades emocionales, conductuales o de desarrollo. Sesiones adaptadas a cada etapa evolutiva. |
| Terapia adolescente | Intervención en crisis de identidad, ansiedad, depresión, problemas relacionales y conductuales. |
| Terapia individual de adultos | Sesiones presenciales de 50-60 minutos. Evaluación, diagnóstico y tratamiento. Duelo, trauma, ansiedad, desarrollo personal. |
| Evaluación psicológica | Administración de tests estandarizados para niños, adolescentes y adultos. Entrevista clínica estructurada, informe diagnóstico. |
| Asesoramiento a madres, padres y docentes | Orientación en crianza respetuosa, gestión de desafíos cotidianos, comunicación con niños y adolescentes. |
| Seguimiento | Acompañamiento continuado con registro de evolución, ajuste de objetivos terapéuticos. |
| Informes clínicos | Generación de informes para el paciente, la familia, otros profesionales o procesos legales (con consentimiento). |
5.2 Servicios digitales (operados por SmallCountry)¶
| Servicio | Beneficio para la consulta |
|---|---|
| Transcripción automática de sesiones | Elimina la necesidad de tomar notas durante la sesión. La psicóloga se concentra en el paciente. |
| Análisis IA de sesiones | Resúmenes estructurados, detección de patrones, sugerencias de exploración. |
| RAG de literatura clínica | Acceso instantáneo a manuales, artículos y criterios diagnósticos sin salir del sistema. |
| Cuestionarios digitales | Administración, corrección automática y almacenamiento seguro de tests. |
| Recordatorios automáticos | Reducción de ausencias sin carga administrativa para la psicóloga. |
| Facturación automática | Factura emitida tras cada sesión sin intervención manual. |
| Historial clínico unificado | Cada paciente tiene su cuaderno con todas las notas, transcripciones, tests e informes. |
6. Cumplimiento Normativo (RGPD)¶
El procedimiento completo de adecuación RGPD para la consulta está en Cumplimiento RGPD — Clínica Fernanda Bocco. Incluye RAT, AIPD, protocolo de brechas, derechos ARCO y modelo de consentimiento.
La consulta de psicología trata datos de salud, una categoría especial de datos según el RGPD. SmallCountry proporciona la base técnica, pero la responsabilidad del tratamiento recae en la psicóloga como responsable del tratamiento.
6.1 Lo que SmallCountry ya garantiza técnicamente¶
| Requisito RGPD | Cómo lo cumple SmallCountry |
|---|---|
| Confidencialidad (Art. 5.1.f) | Cifrado E2E + TLS + ZFS. Los datos son inaccesibles sin la clave. |
| Integridad (Art. 5.1.f) | ZFS verifica la integridad de cada bit. Las copias de seguridad se prueban funcionalmente. |
| Disponibilidad (Art. 32) | Alta disponibilidad con Proxmox, backups diarios, protocolos de recuperación. |
| Minimización de datos (Art. 5.1.c) | Solo se recoge lo necesario. Cada dato tiene un propósito clínico definido. |
| Limitación de almacenamiento (Art. 5.1.e) | Los datos pueden eliminarse de forma verificable cuando prescribe el plazo legal. |
| Seguridad del tratamiento (Art. 32) | Segmentación de red, 2FA, firewall, detección de intrusiones, monitorización 24/7. |
6.2 Lo que la psicóloga debe completar¶
El procedimiento completo de cumplimiento está documentado en Cumplimiento RGPD — Clínica Fernanda Bocco. Estado actual:
| Documento | Estado | Dónde está documentado |
|---|---|---|
| Registro de Actividades de Tratamiento (RAT) | ✅ Documentado | §1 — 4 actividades de tratamiento con base jurídica, plazos y medidas de seguridad |
| Evaluación de Impacto (AIPD/EIPD) | ✅ Documentado | §2 — Evaluación de Impacto con matriz de 9 riesgos y medidas de mitigación |
| Consentimiento informado | ✅ Documentado | §5 — Modelo de consentimiento listo para imprimir, incluye autorización de IA |
| Procedimiento de brechas | ✅ Documentado | §3 — Protocolo de notificación con árbol de actuación y plazos de 72h |
| Procedimiento de derechos ARCO | ✅ Documentado | §4 — Ejercicio de derechos con 6 derechos, acciones técnicas y modelo de respuesta |
| Secreto profesional (Código Deontológico) | ✅ Documentado | §10 — Artículos 39-47 COP |
| Historia clínica (Ley 41/2002) | ✅ Documentado | §11 — Contenido mínimo y propiedad |
| Registro de acceso (Art. 18 LOPDGDD) | ✅ Documentado | §12 — Auditoría de accesos |
| Encargado del tratamiento (Art. 28 RGPD) | ✅ Documentado | §13 — Contrato de encargo |
| Pacientes menores de edad | ✅ Documentado | §14 — Reglas y documentación |
| Teleconsulta (Ley 44/2003) | ✅ Documentado | §15 — Requisitos y limitaciones |
| Cierre de consulta | ✅ Documentado | §16 — Protocolo de cese |
| Facturación electrónica | ✅ Documentado | §17 — VERI*FACTU |
| Consentimiento informado para IA | ✅ Documentado | §5 — Checkboxes de autorización + redactado en §6.3 |
6.3 Consentimiento informado para IA¶
El uso de IA local para transcripción y análisis de sesiones requiere un consentimiento informado específico. La psicóloga debe explicar al paciente:
- Que la IA corre exclusivamente en servidores locales, no en la nube
- Que el audio se destruye tras la transcripción (o se conserva cifrado si el paciente lo autoriza)
- Que la IA no toma decisiones clínicas — solo asiste a la psicóloga
- Que el paciente puede revocar su consentimiento en cualquier momento, y sus datos se eliminarán
7. Formación y Divulgación¶
7.1 Supervisión clínica¶
La plataforma facilita la supervisión de casos: la psicóloga puede compartir notas anonimizadas con un supervisor externo mediante un enlace cifrado y temporal. El supervisor accede solo a lo necesario, durante un tiempo limitado, y sus comentarios quedan registrados en el historial del caso.
7.2 Divulgación profesional¶
Si la psicóloga desea publicar estudios de caso o datos agregados con fines de investigación, SmallCountry proporciona las herramientas para:
- Anonimizar registros clínicos
- Publicar datasets en InvenioRDM con licencia abierta
- Mantener la trazabilidad entre el dato publicado y el consentimiento del paciente
8. Presencia Digital¶
La consulta no necesita presencia digital pública más allá de lo mínimo:
- Página web informativa: servicios, enfoque terapéutico, contacto — alojada en la infraestructura de SmallCountry y servida vía Caddy
- Sin redes sociales obligatorias: la psicóloga decide si quiere estar presente en plataformas externas, pero no depende de ellas
- Comunicación con pacientes: correo electrónico y WhatsApp vía Mautic, sin ceder los datos de contacto a terceros
9. Integración con SmallCountry¶
9.1 Roles implicados¶
| Rol | Persona | Función |
|---|---|---|
| Higía — Consulta y salud | Fernanda Bocco | Usuaria única de las herramientas clínicas |
| Jano — Identidad y acceso | Administrador | Configura Authentik, permisos, 2FA y segmentación de red |
| Mnemósine — Backups y datos | Administrador | Copias de seguridad con cifrado adicional para datos clínicos |
| Argos — Observabilidad | Administrador | Monitorización de la infraestructura (sin acceso a contenido clínico) |
9.2 Servicios que usará¶
| Servicio | Para qué |
|---|---|
| Joplin Server | Notas de sesión con cifrado E2E |
| Hermes Agent | Transcripción de audio de sesiones con faster-whisper local |
| Ollama + Qdrant | IA local para análisis de sesiones, resúmenes, RAG de literatura clínica |
| Open WebUI | Interfaz para consultar la IA, administrar cuestionarios |
| n8n | Orquestación de flujos: transcripción → análisis → nota → factura |
| Mautic | Recordatorios de cita y comunicación con pacientes |
| FacturaScripts | Emisión de facturas tras cada sesión |
| Authentik | Identidad centralizada, 2FA obligatorio, permisos granulares |
| Caddy | Cifrado TLS en todas las comunicaciones |
| ZFS | Integridad de datos, snapshots, cifrado en reposo |
| PBS | Copias de seguridad diarias verificadas funcionalmente |
| Forgejo | Plantillas de documentos clínicos, protocolos, material de consulta |
| Proxmox VE | Segmentación de red: la consulta en bridge independiente |
Para el administrador
Datos de los servicios¶
| Servicio | LXC | IP | Tier | Impacto |
|---|---|---|---|---|
| Joplin Server | Por asignar | Por asignar | A — Crítico | 🔴 Caída = notas clínicas no sincronizan |
| Hermes Agent | Por asignar | Por asignar | C — Conveniente | 🟢 Caída = transcripción manual |
| Ollama | Horus (bare metal GPU) | Por asignar | C — Conveniente | 🟢 Caída = IA no disponible para análisis |
| Qdrant | Por asignar | Por asignar | C — Conveniente | 🟢 Caída = RAG no accesible |
| Open WebUI | Por asignar | Por asignar | C — Conveniente | 🟢 Caída = interfaz IA no accesible |
| n8n | Por asignar | Por asignar | B — Importante | 🟡 Caída = automatizaciones detenidas |
| Mautic | Por asignar | Por asignar | B — Importante | 🟡 Caída = recordatorios no se envían |
| FacturaScripts | Por asignar | Por asignar | B — Importante | 🟡 Caída = no se puede facturar |
| Authentik | Por asignar | Por asignar | A — Crítico | 🔴 Caída = acceso bloqueado a todos los servicios |
| Forgejo | Por asignar | Por asignar | C — Conveniente | 🟢 Caída = plantillas no versionadas |
| Jitsi | Por asignar | Por asignar | C — Conveniente | 🟢 Caída = teleconsulta no disponible |
Almacenamiento persistente¶
| ZFS dataset | Montaje en LXC | Subdirectorios | Backup |
|---|---|---|---|
rpool/datos/clinica-fb/joplin |
/opt/joplin/ |
config/ data/ logs/ |
PBS diario + ZFS snapshot @15min (datos cifrados E2E) |
rpool/datos/clinica-fb/ollama |
/opt/ollama/ |
models/ |
PBS semanal (modelos, no datos de pacientes) |
rpool/datos/clinica-fb/qdrant |
/opt/qdrant/ |
storage/ snapshots/ |
PBS diario + ZFS snapshot @15min |
rpool/datos/clinica-fb/n8n |
/opt/n8n/ |
config/ data/ workflows/ |
PBS diario + ZFS snapshot @15min |
rpool/datos/clinica-fb/mautic |
/opt/mautic/ |
config/ data/ logs/ |
PBS diario + ZFS snapshot @15min |
rpool/datos/clinica-fb/facturascripts |
/opt/facturascripts/ |
config/ data/ |
PBS diario + ZFS snapshot @15min |
rpool/datos/clinica-fb/forgejo |
/opt/forgejo/ |
config/ data/ repos/ |
PBS diario + ZFS snapshot @15min |
⚠️ Cifrado E2E en Joplin: la clave de cifrado reside exclusivamente en los dispositivos de la psicóloga. El administrador puede hacer backup de los datos cifrados pero no puede leerlos. La restauración de backups de Joplin requiere la clave E2E de la psicóloga.
Healthchecks¶
# Joplin Server
curl -s https://joplin.consulta.sc/api/ping
# Hermes Agent
hermes status
# Ollama
curl -s https://ollama.consulta.sc/api/tags
# Qdrant
curl -s https://qdrant.consulta.sc/health
# Open WebUI
curl -s https://ia.consulta.sc/api/health
# n8n
curl -s https://n8n.consulta.sc/healthz
# Mautic
curl -s https://mautic.consulta.sc/api/health | jq .
# FacturaScripts
curl -s https://factu.consulta.sc/api/health
# Authentik
curl -s https://auth.consulta.sc/health
# Forgejo
curl -s https://forgejo.consulta.sc/api/v1/version
# Jitsi
curl -s https://jitsi.consulta.sc/http-bind
Logs y diagnóstico¶
# Joplin Server
docker logs --tail 100 joplin-server
# Hermes Agent
journalctl -u hermes-agent --since "1 hour ago"
# Ollama
journalctl -u ollama --since "1 hour ago"
# n8n
docker logs --tail 100 n8n
# Mautic
docker logs --tail 100 mautic
tail -100 /opt/mautic/data/logs/mautic.log
# FacturaScripts
docker logs --tail 100 facturascripts
# Authentik — intentos de acceso
docker logs --tail 100 authentik-server | grep -i "login\|fail\|denied"
Backups¶
- PBS: Backup completo diario de todos los LXC del proyecto Clínica, retención 30 días
- ZFS snapshots: Cada 15 minutos para
rpool/datos/clinica-fb, retención 24h - Joplin Server: dump diario de la base de datos antes del backup de PBS. Los datos están cifrados E2E
- Verificación de restauración: prueba mensual de restauración de todos los backups en entorno aislado. La psicóloga verifica que puede descifrar sus notas tras la restauración
- Backup offsite en Thoth: Raspberry Pi en ubicación remota con copia cifrada semanal
Dashboard en Grafana¶
Panel de control para la Clínica Fernanda Bocco con:
- Salud del sistema: CPU, RAM, disco, estado de backups, uptime de cada servicio
- Actividad de sesiones: número de sesiones por semana/mes, duración media
- Automatizaciones: recordatorios enviados, facturas emitidas, flujos de n8n ejecutados
- Seguridad: intentos de acceso fallidos, anomalías en patrones de autenticación
- IA: consultas a Ollama, transcripciones procesadas, uso de GPU en Horus
⚠️ Sin datos clínicos en Grafana: el contenido de las notas de sesión, transcripciones y diagnósticos NUNCA aparece en métricas ni dashboards. Solo se monitorizan metadatos agregados y anonimizados.
Problemas comunes¶
| Síntoma | Causa probable | Solución |
|---|---|---|
| Notas de Joplin no sincronizan | Joplin Server caído o clave E2E desincronizada | docker restart joplin-server, verificar clave en el dispositivo de la psicóloga |
| Hermes no transcribe audio | Hermes Agent detenido o faster-whisper no carga | hermes restart, verificar hermes status |
| Ollama no responde | GPU de Horus no disponible o modelo no cargado | systemctl restart ollama, verificar nvidia-smi |
| Recordatorios de cita no se envían | Mautic caído o SMTP mal configurado | docker restart mautic, verificar logs de correo |
| Facturas no se emiten | n8n workflow roto o FacturaScripts caído | docker restart facturascripts, verificar ejecuciones en n8n |
| La psicóloga no puede acceder | Authentik caído o 2FA fallando | docker restart authentik-server, verificar logs |
| Cifrado E2E no funciona | Clave no configurada en el dispositivo | Revisar configuración de Joplin en el dispositivo de la psicóloga |
Para el arquitecto
Relaciones entre servicios¶
flowchart TB
subgraph Psicologa["👩⚕️ Fernanda Bocco"]
Dispositivo[Dispositivo<br/>clave E2E]
Grabacion[Grabación<br/>sesión]
end
subgraph Acceso["🔐 Acceso"]
Authentik[Authentik<br/>2FA obligatorio]
Caddy[Caddy<br/>TLS]
NetBird[NetBird VPN]
end
subgraph Clinico["🧠 Pipeline Clínico"]
Hermes[Hermes Agent<br/>transcripción]
Ollama[Ollama<br/>en Horus GPU]
Qdrant[(Qdrant<br/>RAG clínico)]
OpenWebUI[Open WebUI<br/>interfaz IA]
end
subgraph Notas["📝 Notas — E2E"]
Joplin[Joplin Server<br/>cifrado E2E]
ZFS[ZFS<br/>cifrado en reposo]
PBS[PBS<br/>backups]
end
subgraph Gestion["📋 Gestión"]
n8n[n8n<br/>orquestación]
Mautic[Mautic<br/>recordatorios]
FacturaScripts[FacturaScripts<br/>facturación]
end
subgraph Conocimiento["📚 Referencia"]
Forgejo[Forgejo<br/>plantillas]
Searxng[Searxng<br/>PubMed/CIE-11]
end
subgraph Teleconsulta["📹 Teleconsulta"]
Jitsi[Jitsi<br/>videoconferencia]
end
Dispositivo -->|cifra notas| Joplin
Grabacion -->|audio| Hermes
Authentik -->|OIDC| Joplin
Authentik -->|OIDC| OpenWebUI
Authentik -->|OIDC| n8n
Authentik -->|OIDC| Mautic
Authentik -->|OIDC| FacturaScripts
Authentik -->|OIDC| Forgejo
Caddy -->|TLS| Joplin
Caddy -->|TLS| OpenWebUI
Caddy -->|TLS| n8n
Caddy -->|TLS| Mautic
Caddy -->|TLS| FacturaScripts
Caddy -->|TLS| Jitsi
Hermes -->|whisper local| Ollama
Ollama -->|RAG| Qdrant
Qdrant -->|DSM-5, literatura| Ollama
Hermes -->|API| n8n
Hermes -->|API| Joplin
n8n -->|API| Joplin
n8n -->|API| Mautic
n8n -->|API| FacturaScripts
OpenWebUI -->|consulta| Ollama
OpenWebUI -->|cuestionarios| Dispositivo
Ollama -->|consulta| Searxng
Joplin -->|cifrado| ZFS
PBS -->|backup| Joplin
PBS -->|backup| Mautic
PBS -->|backup| FacturaScripts
NetBird -->|VPN| Caddy
Fase 1 — Infraestructura base de la consulta¶
| Paso | Acción | Herramienta | Verificación |
|---|---|---|---|
| 1.1 | Crear bridge aislado para la consulta: segmentar en Proxmox VE según ADR-004 | Proxmox VE | Bridge operativo, sin tráfico cruzado con otros bridges |
| 1.2 | Desplegar Authentik: configurar grupo consulta, 2FA obligatorio (TOTP) |
Ansible role authentik |
Login con 2FA funciona, sin 2FA rechaza |
| 1.3 | Desplegar Joplin Server: activar cifrado E2E, generar clave maestra en el dispositivo de la psicóloga | Ansible role joplin-server |
Nota creada en el dispositivo aparece cifrada en el servidor |
| 1.4 | Configurar Caddy: TLS interno para dominio consulta.sc.ra, forward_auth a Authentik |
Ansible role caddy |
curl https://joplin.consulta.sc redirige a Authentik |
| 1.5 | Activar PBS: backups diarios para rpool/datos/clinica-fb, retención 30 días |
Ansible role pbs |
Backup completado OK, verificar restauración |
| 1.6 | Desplegar FacturaScripts: facturación electrónica con plugin VERI*FACTU | Ansible role facturascripts |
Factura de prueba emitida correctamente |
| 1.7 | 📋 RAT documentado en §1 RGPD | — | 4 actividades de tratamiento registradas |
Fase 2 — Herramientas clínicas¶
| Paso | Acción | Depende de |
|---|---|---|
| 2.1 | Verificar GPU en Horus: confirmar disponibilidad de GPU para inferencia de IA | — |
| 2.2 | Desplegar Ollama en Horus (bare metal, no LXC): modelos qwen3:30b, deepseek-r1:14b | GPU Horus |
| 2.3 | Desplegar Qdrant: indexar DSM-5, CIE-11, literatura clínica, manuales de psicoterapia | Ollama |
| 2.4 | Desplegar Hermes Agent: conectar con Ollama, configurar skill clinical-transcription |
Ollama |
| 2.5 | Implementar pipeline audio→nota: Hermes (faster-whisper) → Ollama (análisis) → Qdrant (RAG) → n8n (orquestación) → Joplin (nota E2E) | Hermes, Ollama, n8n, Joplin |
| 2.6 | Desplegar Open WebUI: interfaz para consultar IA, cargar plantillas de cuestionarios (PHQ-9, GAD-7, PCL-5, infantiles) | Ollama, Qdrant |
| 2.7 | 📋 AIPD/EIPD documentada en §2 RGPD | — |
Fase 3 — Automatización administrativa¶
| Paso | Acción | Depende de |
|---|---|---|
| 3.1 | Desplegar n8n: conectar con Authentik, Joplin, Mautic, FacturaScripts | Authentik |
| 3.2 | Desplegar Mautic: CRM, campañas de recordatorio, formularios | Authentik |
| 3.3 | Crear flujo recordatorio de cita: 24h antes → Mautic envía email/WhatsApp al paciente | Mautic, n8n |
| 3.4 | Crear flujo factura automática: sesión completada → n8n → FacturaScripts emite factura | FacturaScripts, n8n |
| 3.5 | Crear flujo seguimiento post-alta: 3 meses tras alta → Mautic envía correo de seguimiento | Mautic, n8n |
| 3.6 | Desplegar Forgejo: repositorio de plantillas clínicas, protocolos, consentimientos versionados | Authentik |
| 3.7 | 📋 Consentimiento informado, brechas y derechos ARCO documentados en §3-5 RGPD | — |
Fase 4 — Optimización y soberanía¶
| Paso | Acción | Depende de |
|---|---|---|
| 4.1 | Afinar RAG clínico: añadir más literatura especializada según necesidades de la psicóloga | Qdrant |
| 4.2 | Configurar Searxng: búsqueda privada en PubMed, CIE-11 API, Cochrane | — |
| 4.3 | Desplegar Jitsi: videoconferencia para teleconsulta con cifrado E2E opcional | Authentik |
| 4.4 | Crear dashboard Grafana: métricas agregadas y anonimizadas de la consulta | Victoria Metrics |
| 4.5 | Explorar LoRA: modelos de IA especializados en psicología clínica (adaptadores) | Ollama |
| 4.6 | Desplegar InvenioRDM: si la psicóloga decide publicar estudios de caso anonimizados | Forgejo |
| 4.7 | 📋 Facturación VERI*FACTU documentada en §17 RGPD | — |
| 4.8 | 📋 Simulacro de brecha anual: probar protocolo completo de notificación en 72h | Todos los sistemas |
Configuración de red¶
| Bridge | Rango IP | Servicios | Acceso desde |
|---|---|---|---|
vmbr0 (management) |
Por asignar | Proxmox, SSH | WireGuard (admin) |
vmbr_clinica (consulta) |
Por asignar — aislado | Joplin, Hermes Agent, Open WebUI, n8n, Mautic, FacturaScripts, Forgejo, Jitsi | Caddy :443 + NetBird VPN |
vmbr_gpu (IA) |
Por asignar | Ollama (Horus bare metal), Qdrant | Solo desde vmbr_clinica |
vmbr_datos (datos) |
Por asignar | MySQL, PBS, ZFS | Solo interna |
Aislamiento estricto: el bridge vmbr_clinica no tiene conectividad con los bridges del hogar, la empresa ni la finca. Principio de segmentación estricta con denegación por defecto y ADR-004. Un fallo de seguridad en cualquier otro ámbito no puede propagarse a los datos clínicos.
Sin exposición a internet: ningún servicio de la consulta se expone directamente a internet. Todo el acceso es vía NetBird VPN o red local.
En Pi-hole¶
joplin.consulta.sc → IP_LXC_Joplin
ia.consulta.sc → IP_LXC_OpenWebUI
n8n.consulta.sc → IP_LXC_n8n
mautic.consulta.sc → IP_LXC_Mautic
factu.consulta.sc → IP_LXC_FacturaScripts
auth.consulta.sc → IP_LXC_Authentik
forgejo.consulta.sc → IP_LXC_Forgejo
jitsi.consulta.sc → IP_LXC_Jitsi
ollama.consulta.sc → IP_Horus_GPU
En Caddy¶
joplin.consulta.sc {
forward_auth authentik:9000
reverse_proxy IP_LXC_Joplin:22300
}
ia.consulta.sc {
forward_auth authentik:9000
reverse_proxy IP_LXC_OpenWebUI:8080
}
n8n.consulta.sc {
forward_auth authentik:9000
reverse_proxy IP_LXC_n8n:5678
}
mautic.consulta.sc {
forward_auth authentik:9000
reverse_proxy IP_LXC_Mautic:8080
}
factu.consulta.sc {
forward_auth authentik:9000
reverse_proxy IP_LXC_FacturaScripts:8080
}
forgejo.consulta.sc {
forward_auth authentik:9000
reverse_proxy IP_LXC_Forgejo:3000
}
jitsi.consulta.sc {
reverse_proxy IP_LXC_Jitsi:443
}
En Authentik¶
| Provider | Tipo | Grupos asignados | 2FA |
|---|---|---|---|
| Joplin Server | OAuth2/OIDC | consulta-psicologa |
✅ Obligatorio |
| Open WebUI | OAuth2/OIDC | consulta-psicologa |
✅ Obligatorio |
| n8n | OAuth2/OIDC | consulta-psicologa, consulta-admin |
✅ Obligatorio |
| Mautic | OAuth2/OIDC | consulta-psicologa, consulta-admin |
✅ Obligatorio |
| FacturaScripts | OAuth2/OIDC | consulta-psicologa |
✅ Obligatorio |
| Forgejo | OAuth2/OIDC | consulta-psicologa, consulta-admin |
✅ Obligatorio |
⚠️ El administrador (grupo
consulta-admin) NO tiene acceso a Joplin ni Open WebUI. Solo accede a servicios de infraestructura (n8n, Mautic, FacturaScripts, Forgejo). Los datos clínicos están protegidos por cifrado E2E.
Orquestación¶
| Componente | Path / Nombre |
|---|---|
| Rol Ansible | roles/clinica-fb/ (joplin, hermes-agent, ollama, qdrant, openwebui, n8n, mautic, facturascripts, forgejo, jitsi) |
| Playbook | deploy-clinica-fernanda-bocco.yml |
| Módulo OpenTofu | modules/clinica-fb/ |
| Semaphore | Proyecto clinica-fb, Template deploy |
| Forgejo Actions | .forgejo/workflows/clinica-fb.yml |
| Repo Forgejo | infra-core/ |
| Ficha versionada | docs/proyectos/clinica-fernanda-bocco.md |
10. Hoja de Ruta¶
Fase 1 — Infraestructura base de la consulta¶
- [ ] Desplegar Joplin Server con cifrado E2E activado
- [ ] Configurar Authentik con grupo
consultay 2FA obligatorio - [ ] Crear bridge de red aislado para la consulta en Proxmox VE
- [ ] Configurar Caddy con TLS interno para el dominio
consulta.sc.ra - [ ] Activar PBS con backups diarios para el dataset de la consulta
- [ ] Desplegar FacturaScripts para facturación
- [ ] ✅ RAT — Documentado en §1 del procedimiento RGPD
Fase 2 — Herramientas clínicas¶
- [ ] Integrar Hermes Agent con faster-whisper en Horus
- [ ] Desplegar Ollama con modelos clínicos (qwen3:30b, deepseek-r1:14b)
- [ ] Configurar Qdrant con base de conocimiento clínico (DSM-5, literatura, manuales)
- [ ] Implementar pipeline de audio → transcripción → análisis → nota (n8n)
- [ ] Cargar plantillas de cuestionarios (PHQ-9, GAD-7, PCL-5, + infantiles)
- [ ] Configurar Open WebUI como interfaz de consulta IA
- [ ] ✅ AIPD/EIPD — Documentada en §2 del procedimiento RGPD
Fase 3 — Automatización administrativa¶
- [ ] Configurar n8n para recordatorios de cita vía Mautic
- [ ] Implementar emisión automática de facturas tras sesión
- [ ] Crear plantillas de documentos clínicos en Forgejo
- [ ] Configurar flujos de seguimiento post-alta
- [ ] ✅ Consentimiento informado — Modelo documentado en §5 del procedimiento RGPD
- [ ] ✅ Procedimiento de brechas — Documentado en §3 del procedimiento RGPD
- [ ] ✅ Derechos ARCO — Documentado en §4 del procedimiento RGPD
Fase 4 — Optimización y divulgación¶
- [ ] Afinar el RAG con más literatura especializada según necesidades clínicas
- [ ] Implementar panel de evolución de pacientes (métricas agregadas, anonimizadas)
- [ ] Explorar modelos de IA especializados vía LoRA (adaptadores para psicología clínica)
- [ ] Evaluar posibilidad de teleconsulta cifrada vía Jitsi
- [ ] Publicar estudios de caso anonimizados si la psicóloga lo desea (InvenioRDM)
- [ ] ✅ Facturación electrónica VERI*FACTU — Documentado en §17 del procedimiento RGPD
11. Notas Finales¶
La Clínica Fernanda Bocco no es un ejercicio teórico. Es una consulta real que necesita herramientas reales. SmallCountry le proporciona la infraestructura, pero la profesional mantiene el control absoluto sobre sus datos clínicos — un control que no es delegable ni negociable.
La psicóloga no necesita saber qué es un LXC ni cómo funciona ZFS. Solo necesita saber que: - Sus notas están protegidas con un cifrado que ni el administrador puede romper - Sus grabaciones se transcriben sin salir del sistema - Su IA de apoyo no comparte datos con ninguna empresa - Sus facturas se emiten solas tras cada sesión - Sus pacientes reciben recordatorios sin que sus datos de contacto acaben en una base de datos comercial
Todo lo demás es responsabilidad de SmallCountry.
Secciones relacionadas¶
- Compromiso: Consulta y salud
- Rol: Higía — Consulta y salud
- Ficha: Joplin Server
- Ficha: Hermes Agent
- Ficha: Ollama + Qdrant
- Ficha: n8n
- Legal: RGPD y LOPDGDD
- Legal: Cumplimiento RGPD — Procedimiento completo
- Proyecto: Corral del Viento