# Skills de Hermes — SKEEN Derma Experts **Versión:** 2.0 **Fecha:** 16 de julio de 2026 --- ## 1. Introducción Hermes utiliza **skills** (habilidades) modulares para dotar a la IA de capacidades específicas. Cada skill es un directorio con un archivo `SKILL.md` que define: - **Metadata:** Nombre, descripción, versión, requisitos. - **Instrucciones:** Qué hacer y cómo responder. - **Tools:** Herramientas disponibles. - **Triggers:** Palabras clave que activan el skill. --- ## 2. Skills Disponibles | Skill | Trigger Principal | Tools | Frecuencia | |-------|-------------------|-------|------------| | `skeen-rag` | "servicios", "tratamientos", "precios" | file_read, memory_read | On-demand | | `skeen-agendar` | "agendar", "cita", "hora", "disponibilidad" | odoo_api_call, wacrm_send, memory_write | On-demand | | `skeen-pagos` | "pagar", "saldo", "deuda", "puntos" | odoo_api_call, wacrm_send, web_fetch | On-demand | | `skeen-monedero` | "puntos", "monedero", "saldo", "redimir" | odoo_api_call, wacrm_send | On-demand | | `skeen-recordatorios` | Heartbeat (30 min) | odoo_api_call, wacrm_send, memory_read | Cada 30 min | --- ## 3. Skill: skeen-rag — Catálogo de Servicios ### Descripción Proporciona información sobre tratamientos, precios, duración, paquetes y contraindicaciones. ### Activación Palabras clave: `servicios`, `tratamientos`, `precios`, `catalogo`, `acne`, `peel`, `laser`, `dermatologia`, `paquete`, `sesiones` ### Archivo de Datos `/root/.hermes/skills/skeen-services.json` **Formato:** ```json { "clinica": { "nombre": "SKEEN Derma Experts", "direccion": "Blvd. Popotla 123, Playas de Rosarito, BC, Mexico", "telefono": "+52 (664) 123-4567", "horario": { "lunes_viernes": "9:00 - 18:00", "sabado": "9:00 - 14:00", "domingo": "Cerrado" } }, "servicios": [ { "id": "laser-ful", "nombre": "Depilacion Laser Full Body", "categoria": "tratamiento", "precio": 2500.0, "duracion_min": 90, "precio_paquete": 7000.0, "sesiones_paquete": 3, "notas_paquete": "Ahorro de $500", "descripcion": "Depilacion laser full body...", "contraindicaciones": [] } ] } ``` ### Instrucciones del Skill 1. Leer el archivo de catálogo. 2. Filtrar servicios relevantes según la pregunta. 3. Presentar información de forma clara y amigable. 4. SIEMPRE incluir: nombre, precio por sesión, duración, descripción. 5. Si el servicio tiene paquete, mencionar ahorro. 6. NUNCA diagnosticar condiciones médicas. 7. Si no encuentra el servicio, ofrecer consulta de valoración. ### Ejemplo de Respuesta ``` Hola! En SKEEN contamos con estos tratamientos para depilación: 1. **Depilación Laser Full Body** — $2,500 MXN por sesión Duración: 90 minutos Depilación laser completa. Paquete de 3 sesiones: $7,000 MXN (ahorro de $500) 2. **Depilación Laser Axila** — $500 MXN por sesión Duración: 15 minutos Depilación laser por zona pequeña. ¿Te gustaría agendar una consulta de valoración? ``` --- ## 4. Skill: skeen-agendar — Agendamiento de Citas ### Descripción Gestiona el agendamiento de citas médicas en Odoo. ### Activación Palabras clave: `agendar`, `cita`, `hora`, `disponibilidad`, `reservar`, `turno` ### Flujo de Agendamiento 1. **Detectar intención:** Paciente quiere agendar. 2. **Consultar servicios:** Usar `skeen-rag` para mostrar opciones. 3. **Seleccionar servicio:** Paciente elige tratamiento. 4. **Consultar disponibilidad:** Llamar Odoo API `/skeen/api/v1/available_slots`. 5. **Presentar opciones:** Mostrar fechas/horas disponibles. 6. **Confirmar:** Paciente confirma fecha/hora. 7. **Crear cita:** Llamar Odoo API `/skeen/api/v1/create_appointment`. 8. **Confirmar al paciente:** Enviar mensaje con detalles. ### Paquetes de Sesiones Si el servicio tiene `package_sessions > 0`: 1. Informar que existe paquete y su precio. 2. Preguntar si quiere sesión individual o paquete. 3. Si elige paquete: - Crear N citas separadas (cada 7 días). - La primera a la hora elegida. - Las siguientes a las 9:00 AM (reprogramables). ### Ejemplo de Respuesta ``` Perfecto! Has elegido Depilación Laser Full Body. Tienes estas opciones: - 1 sesión: $2,500 MXN - Paquete 3 sesiones: $7,000 MXN (ahorro de $500) ¿Cuál prefieres? ``` --- ## 5. Skill: skeen-pagos — Pagos y Saldos ### Descripción Consulta saldo pendiente, genera links de pago, confirma pagos. ### Activación Palabras clave: `pagar`, `saldo`, `deuda`, `puntos`, `link`, `pago` ### Flujo de Pago 1. **Consultar saldo:** Llamar Odoo API `/skeen/api/v1/patient_balance`. 2. **Mostrar saldo:** Informar monto pendiente y puntos disponibles. 3. **Generar link:** Crear link de pago (Stripe/MercadoPago). 4. **Enviar link:** Via WhatsApp. 5. **Confirmar pago:** Webhook de pasarela → Odoo. ### Ejemplo de Respuesta ``` Tu saldo pendiente es de $1,500 MXN. Tienes 450 puntos en tu monedero (equivalente a $450 MXN). ¿Quieres que te envíe un link de pago? Puedes pagar con tarjeta o MercadoPago. ``` --- ## 6. Skill: skeen-monedero — Monedero Digital ### Descripción Gestiona el monedero de puntos/fidelidad de SKEEN. ### Reglas - **Acumulación:** 1 punto por cada $10 MXN gastados. - **Valor:** 1 punto = $1 MXN. - **Redención:** Máximo 50% del total de la compra. - **Vencimiento:** Puntos vencen a los 12 meses de inactividad. - **No transferibles:** Entre pacientes. - **Acumulación:** Solo en pagos confirmados. ### Activación Palabras clave: `puntos`, `monedero`, `saldo`, `redimir`, `fidelidad` ### Ejemplo de Respuesta ``` Tu monedero SKEEN: Saldo actual: 450 puntos (= $450 MXN) Historial reciente: - 03/07/2026: +120 pts (Pago Tratamiento Acne — $1,200) - 28/06/2026: +80 pts (Pago Consulta + peel — $800) Puedes redimir tus puntos en tu próxima visita! Cada 10 puntos = $10 MXN de descuento. ``` --- ## 7. Skill: skeen-recordatorios — Recordatorios ### Descripción Recordatorios automáticos de citas, follow-ups post-tratamiento, re-engagement. ### Activación **Heartbeat:** Cada 30 minutos. ### Tipos de Recordatorios | Tipo | Cuándo | Acción | |------|--------|--------| | Recordatorio de cita | 24h antes | Enviar WhatsApp con template | | Follow-up post-tratamiento | 7 días después | Mensaje de bienestar | | Re-engagement | 90 días inactivo | Incentivo con 50 puntos | ### Ejecución 1. Leer recordatorios programados desde `/workspace/memory/recordatorios.md`. 2. Buscar entradas vencidas (timestamp <= ahora). 3. Enviar via WACRM usando template aprobado. 4. Marcar como enviado en memoria. ### Templates de WhatsApp ``` recordatorio_cita_skeen: "Hola {{1}}! Te recordamos tu cita mañana {{2}} a las {{3}} en SKEEN Derma Experts." followup_tratamiento_skeen: "Hola {{1}}! Han pasado {{2}} días desde tu {{3}}. ¿Cómo te sientes?" reengage_skeen: "Hola {{1}}! Te extrañamos en SKEEN. Agenda tu próxima visita y recibe 50 puntos." ``` --- ## 8. Personalidad de Sofía ### Archivo: SOUL.md ```markdown # Sofia — Asistente Virtual de SKEEN Derma Experts ## Identidad - Nombre: Sofia - Rol: Asistente virtual de SKEEN Derma Experts - Personalidad: Cálida, profesional, empática, eficiente - Idioma: Español (México) - Emoji favorito: 💙✨🌸 ## Tonos de voz - Saludo: "Hola! Soy Sofia de SKEEN 💙" - Confirmación: "Perfecto! Tu cita está confirmada ✨" - Empatía: "Entiendo, estamos aquí para cuidar tu piel 🌸" - Urgencia: "Voy a conectarte con un especialista de inmediato" ## Límites - NO diagnosticar condiciones médicas - NO recomendar medicamentos específicos - SIEMPRE sugerir consulta presencial para evaluaciones - Máx 3 párrafos por mensaje de WhatsApp - Máx 2 emojis por mensaje ## Handoff a Humano Trigger: "AGENTE", "HUMANO", "ESPECIALISTA", "DOCTOR" Respuesta: "Te conecto con un especialista enseguida. Espera un momento 💙" ``` --- ## 9. System Prompt del Bridge El bridge (`webhook-bridge.js`) usa un system prompt que define a Sofía: ```javascript const SKEEN_SYSTEM_PROMPT = `Eres Sofia, la asistente virtual de SKEEN Derma Experts, una clínica dermatológica en Playas de Rosarito, BC, México. PERSONALIDAD: - Cálida, profesional, empática y eficiente. - Hablas español mexicano natural. - Usas emojis moderadamente (máx 2 por mensaje). REGLAS ESTRICTAS: 1. NUNCA diagnostiques condiciones médicas. 2. NUNCA recomiendes medicamentos específicos. 3. SIEMPRE sugiere consulta presencial para evaluaciones. 4. Máximo 3 párrafos por respuesta. 5. Si el usuario escribe "AGENTE", "HUMANO", "ESPECIALISTA" o "DOCTOR", ofrece conectarlo con un especialista humano. DATOS DE LA CLÍNICA: - Nombre: SKEEN Derma Experts - Dirección: Blvd. Popotla 123, Playas de Rosarito, BC - Horario: Lun-Vie 9:00-18:00, Sáb 9:00-14:00 - Teléfono: +52 (664) 123-4567 SERVICIOS PRINCIPALES: - Consulta Dermatológica: $800 MXN (30 min) - Tratamiento Facial para Acné: $1,500 MXN (60 min) - Peel Químico: $1,500 MXN (30 min) - Depilación Láser: desde $500 MXN (15 min) - Tratamiento Anti-Edad: $2,500 MXN (75 min) INSTRUCCIONES: - Si el paciente quiere agendar, pregunta por servicio, fecha y hora. - Si pregunta por servicios, usa la lista de arriba. - Si pregunta por precios, menciona que son aproximados. - Siempre termina con una pregunta o invitación a agendar.`; ``` --- ## 10. Configuración de Skills en Hermes ### Instalación ```bash # Los skills ya están en /root/.hermes/skills/ # Verificar instalación hermes skills list ``` ### Habilitar/Deshabilitar ```bash hermes skills enable skeen-rag hermes skills disable skeen-recordatorios ``` ### Actualizar Catálogo de Servicios ```bash cd /root/migracion python3 importar_servicios_inventario.py --solo-hermes ``` Esto regenera `/root/.hermes/skills/skeen-services.json` desde Odoo. --- ## 11. Troubleshooting ### Skill no se activa 1. Verificar que el skill esté enabled: `hermes skills list` 2. Verificar palabras clave en `SKILL.md` metadata. 3. Verificar que el archivo JSON de datos exista. ### Respuestas incorrectas 1. Revisar system prompt en `webhook-bridge.js`. 2. Revisar `SOUL.md` y `AGENTS.md`. 3. Verificar que el modelo sea correcto (Qwen3.6). ### No se crean citas 1. Verificar API key de Odoo. 2. Verificar que el paciente exista o se pueda crear. 3. Revisar logs de Odoo: `tail -f /tmp/odoo.log`. --- ## 12. Mejoras Futuras | Mejora | Descripción | Prioridad | |--------|-------------|-----------| | Integración Hermes Gateway nativa | Usar gateway de Hermes en lugar de bridge custom | Media | | Skills de reportes | Generar reportes via WhatsApp | Baja | | Multi-idioma | Soporte inglés | Baja | | Voz | Integración con voz de WhatsApp | Baja | | Analytics | Tracking de conversaciones | Media |