Autoalojar Hermes Agent en un VPS
Despliega Hermes Agent de Nous Research en tu propio VPS. Crea un usuario aislado, instálalo con un solo comando, elige tu proveedor LLM, conecta Telegram y ejecútalo como servicio.
Hermes Agent es uno de esos proyectos que avanzan rápido. Desde su lanzamiento en febrero de 2026, Nous Research ha publicado nueve versiones en siete semanas. La v0.9.0 llegó el 13 de abril y es otra cosa: un panel de control web local para gestionar ajustes y sesiones desde el navegador, 16 plataformas de mensajería (incluyendo iMessage y WeChat), soporte nativo para Android/Termux, comandos integrados de backup e importación, un modo rápido para inferencia de baja latencia y un motor de contexto extensible. El proyecto pasó de «experimento interesante» a «agente personal listo para producción» en menos de dos meses.
Ejecutarlo en tu portátil funciona para experimentos rápidos. Pero un agente que se duerme cuando cierras la tapa, al que solo accedes desde tu teclado y que olvida su workspace al reiniciar no es muy útil a largo plazo. Un VPS resuelve los tres problemas: el agente está online 24/7, accedes desde cualquiera de esas 16 plataformas en tu teléfono, y sus memorias y habilidades persisten entre sesiones.
La configuración es directa. Levanta una VM, crea un usuario no-root para aislamiento, instala Hermes, elige tu modelo y gateway, y envuelve todo en un servicio systemd. Eso es todo el procedimiento.
Autoalojar agentes IA en un VPS
¿Por qué autoalojar ahora? La lección del vendor lock-in
El 4 de abril de 2026, Anthropic cortó el acceso de agentes IA de terceros a las suscripciones Claude Pro y Max. Hasta ese día, herramientas como OpenClaw permitían ejecutar cargas de trabajo agénticas pesadas por una cuota mensual fija. De la noche a la mañana, esos usuarios recibieron un error 400 y un aviso de migración. Las únicas opciones: pasar a facturación por token vía API (potencialmente 10 veces más caro para usuarios intensivos), comprar paquetes de uso empresarial, o migrar a Claude Code Channels de Anthropic, un competidor propio de OpenClaw lanzado el mismo mes.
El patrón es evidente. Construye tu workflow sobre la plataforma de un solo proveedor, y un cambio de política puede romperlo todo. Los agentes autoalojados como Hermes evitan esa trampa por completo. Hermes es agnóstico en cuanto a proveedor: soporta más de 15 backends de inferencia de serie, desde OpenRouter a Nous Portal hasta un servidor Ollama local. Si un proveedor cambia sus condiciones o precios, lo reemplazas con un comando y sigues trabajando. Tus memorias, habilidades y sesiones permanecen en tu servidor, sin importar qué LLM haya detrás.
¿Qué es Hermes Agent y por qué autoalojarlo?
Hermes Agent es un agente IA de código abierto (licencia MIT) creado por Nous Research. Se conecta a proveedores de LLM, ejecuta comandos de terminal, navega la web y recuerda lo que aprende entre sesiones. Construye habilidades reutilizables a partir de tareas completadas y soporta 16 pasarelas de mensajería: Telegram, Discord, Slack, WhatsApp, Signal, Matrix, iMessage, WeChat, WeCom, Email, SMS, DingTalk, Feishu, Mattermost, Home Assistant y Webhooks.
Autoalojar significa que tus prompts y datos se quedan en tu servidor. Ninguna plataforma de agentes de terceros ve tus conversaciones. El agente corre continuamente, construye contexto con el tiempo y solo cuesta el hosting del VPS más las llamadas API al LLM que hagas.
¿Qué necesita Hermes Agent para funcionar en un VPS?
Un servidor Linux con Git instalado. Es el único prerrequisito. El instalador descarga automáticamente Python 3.11+, Node.js v22, ripgrep y ffmpeg. En cuanto al hardware: 2 GB de RAM y 10 GB de disco es el mínimo. 4 GB de RAM es mejor si planeas ejecutar múltiples sesiones de pasarela o usar el panel web junto al agente.
| Requisito | Mínimo | Recomendado |
|---|---|---|
| OS | Ubuntu 22.04 / Debian 12 | Ubuntu 24.04 |
| RAM | 2 GB | 4 GB+ |
| Disco | 10 GB libres | 20 GB+ |
| CPU | 1 vCPU | 2+ vCPU |
Prerrequisitos
Antes de instalar Hermes Agent, configura un usuario no-root y un firewall básico. Si ya tienes un VPS securizado, salta a la sección de instalación.
Crear un usuario dedicado
Conéctate a tu servidor por SSH como root y crea un usuario para Hermes:
adduser hermes --disabled-password --gecos ""
usermod -aG sudo hermes
Dale sudo sin contraseña (necesario para gestión de servicios):
echo "hermes ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/hermes
chmod 440 /etc/sudoers.d/hermes
Copia tu clave SSH para poder iniciar sesión como este usuario:
mkdir -p /home/hermes/.ssh
cp ~/.ssh/authorized_keys /home/hermes/.ssh/
chown -R hermes:hermes /home/hermes/.ssh
chmod 700 /home/hermes/.ssh
chmod 600 /home/hermes/.ssh/authorized_keys
A partir de ahora, trabaja como el usuario hermes:
su - hermes
Configurar el firewall
Instala UFW y permite solo SSH:
sudo apt-get install -y ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow ssh
sudo ufw --force enable
Comprueba las reglas activas:
sudo ufw status verbose
La salida debería mostrar SSH permitido y todo el tráfico entrante denegado. La pasarela de Hermes hace conexiones salientes a la API de Telegram, así que no necesitas abrir puertos entrantes para la mensajería.
¿Cómo instalar Hermes Agent en Ubuntu?
Un solo comando. Ejecútalo como el usuario hermes, no como root.
Instalación con un clic
Virtua.Cloud mantiene un script de instalación llave en mano que configura Hermes Agent con persistencia systemd de una sola vez:
curl -fsSL https://virtua.sh/i/hermes-ssh | bash
El script se encarga de todo lo que cubren las secciones siguientes: instalar Hermes y crear el servicio systemd. Cuando termine, salta directamente a configurar tu proveedor LLM.
Instalación manual
Si prefieres instalar paso a paso, descarga el instalador upstream y revísalo antes de ejecutarlo:
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh -o /tmp/hermes-install.sh
less /tmp/hermes-install.sh
El script instala Python 3.11+ vía uv, Node.js v22, ripgrep, ffmpeg y el CLI hermes. Cuando estés satisfecho:
bash /tmp/hermes-install.sh
Recarga tu shell para tener disponible el nuevo comando hermes:
source ~/.bashrc
Comprueba la versión instalada:
hermes --version
Salida esperada:
Hermes Agent v0.9.0 (2026.4.13)
Project: /home/hermes/.hermes/hermes-agent
Python: 3.11.15
...
Ejecuta la herramienta de diagnóstico para buscar dependencias faltantes:
hermes doctor
Busca marcas verdes. Los avisos sobre claves API sin configurar son esperables en este punto. Los elementos en rojo sobre Python o Git necesitan solución antes de continuar.
¿Cómo configuro el proveedor LLM?
Hermes Agent no incluye un modelo. Lo conectas a la API de un proveedor y pagas por token. La forma más rápida de configurarlo todo es el asistente de configuración:
hermes setup
Este asistente te guía para elegir un proveedor, introducir tu clave API, activar herramientas y configurar tu pasarela en una sola sesión interactiva. Si prefieres configurar cada pieza manualmente, sigue leyendo. También puedes cambiar de proveedor en cualquier momento con hermes model.
Opción 1: OpenRouter (recomendado para empezar)
Crea una cuenta en openrouter.ai y genera una clave API.
El instalador creó ~/.hermes/.env con una plantilla completa. Primero, restringe sus permisos:
chmod 600 ~/.hermes/.env
Abre el archivo y pon tu clave API en la línea OPENROUTER_API_KEY=:
nano ~/.hermes/.env
Busca la línea OPENROUTER_API_KEY= y añade tu clave después del signo =. Guarda y sal (Ctrl+X, luego Y, luego Enter).
Establece el modelo por defecto:
hermes config set model.provider openrouter
hermes config set model.default anthropic/claude-sonnet-4
Confirma que el archivo no sea legible por otros usuarios:
ls -la ~/.hermes/.env
Los permisos deberían mostrar -rw------- (600). Solo el usuario hermes puede leer este archivo.
Opción 2: Nous Portal
Nous Research tiene su propio portal de inferencia con más de 400 modelos. Si quieres quedarte en el ecosistema de Nous:
hermes config set model.provider nous
El comando hermes model te guía a través de la autenticación.
Opción 3: Endpoint personalizado compatible con OpenAI
Si ejecutas tu propio servidor de inferencia (Ollama, vLLM, llama.cpp) o usas otro proveedor:
echo 'OPENAI_BASE_URL=http://localhost:11434/v1' >> ~/.hermes/.env
echo 'OPENAI_API_KEY=ollama' >> ~/.hermes/.env
echo 'LLM_MODEL=llama3.1:70b' >> ~/.hermes/.env
Comparación de proveedores de LLM
| Proveedor | Variable de entorno | Modelo de precio | Notas |
|---|---|---|---|
| OpenRouter | OPENROUTER_API_KEY |
Por token, varía según modelo (ver precios) | 200+ modelos, una sola clave |
| Nous Portal | vía hermes model |
Por token (ver precios) | 400+ modelos, integración nativa |
| Anthropic | ANTHROPIC_API_KEY |
Por token (ver precios) | Acceso directo a Claude |
| Google AI Studio | GOOGLE_API_KEY |
Por token (ver precios) | Modelos Gemini, nativo desde la v0.8.0 |
| xAI (Grok) | XAI_API_KEY |
Por token (ver precios) | Modelos Grok, nativo desde la v0.9.0 |
| Hugging Face | HF_TOKEN |
Por token (ver precios) | Suite completa de modelos |
| Ollama (local) | OPENAI_BASE_URL + OPENAI_API_KEY |
Gratis (autoalojado) | Necesita VPS con GPU para buena velocidad |
| vLLM | OPENAI_BASE_URL + OPENAI_API_KEY |
Gratis (autoalojado) | GPU necesaria |
El failover entre proveedores está integrado desde la v0.6.0. Puedes configurar una cadena ordenada de proveedores para que si uno cae, el agente pase automáticamente al siguiente.
Prueba que la conexión al LLM funciona:
hermes -m "What is 2+2? Reply with just the number."
Si obtienes una respuesta, el proveedor está configurado. Si ves un error de autenticación, revisa tu clave API en ~/.hermes/.env.
¿Cómo configuro el modo de aprobación?
Hermes Agent tiene un sistema de aprobación integrado que pregunta antes de ejecutar comandos potencialmente peligrosos. En un servidor, mantenlo activado:
hermes config set approval_mode ask
Los tres modos:
- ask: te pregunta antes de cualquier comando que modifique archivos, instale paquetes o toque la red. Usa este. Desde la v0.8.0, Telegram y Slack muestran botones de aprobación nativos en lugar de requerir que escribas una respuesta.
- smart: un modelo de IA evalúa el riesgo y solo pregunta para comandos genuinamente peligrosos. Más rápido, pero depende del criterio de la IA.
- off: sin controles. Cada comando se ejecuta inmediatamente. No uses esto en un servidor.
¿Cómo conecto Hermes Agent a Telegram?
La pasarela de mensajería te permite chatear con Hermes desde tu teléfono. Telegram es la configuración más habitual. La pasarela hace conexiones salientes a la API de Telegram, así que no necesitas abrir puertos entrantes.
Paso 1: Crear un bot de Telegram
Abre Telegram y envía un mensaje a @BotFather. Envía estos comandos:
/newbot- Introduce un nombre para tu bot (por ejemplo, "My Hermes Agent")
- Introduce un nombre de usuario (debe terminar en
bot, por ejemplo,myhermes_agent_bot)
BotFather responde con un token de bot. Se ve como 7123456789:AAHx.... Cópialo.
Paso 2: Obtener tu ID de usuario de Telegram
Envía un mensaje a @userinfobot en Telegram. Te responde con tu ID de usuario numérico. Copia este número.
Paso 3: Configurar la pasarela
Añade el token del bot y tu ID de usuario al archivo de entorno:
echo 'TELEGRAM_BOT_TOKEN=7123456789:AAHxYourTokenHere' >> ~/.hermes/.env
echo 'TELEGRAM_ALLOWED_USERS=your_numeric_user_id' >> ~/.hermes/.env
La variable TELEGRAM_ALLOWED_USERS es un control de seguridad. Solo los IDs de usuario listados aquí pueden interactuar con tu bot. Sin ella, cualquiera que encuentre tu bot puede enviarle comandos. Separa múltiples IDs con comas.
Paso 4: Probar la pasarela
Inicia la pasarela en primer plano:
hermes gateway
Envía un mensaje a tu bot en Telegram. Tu mensaje aparece en la terminal y llega una respuesta de vuelta. Pulsa Ctrl+C para detenerla una vez que hayas confirmado que funciona.
Si el bot no responde, comprueba:
- El token del bot es correcto en
~/.hermes/.env - Tu ID de usuario está en
TELEGRAM_ALLOWED_USERS - El VPS puede alcanzar
api.telegram.orgen el puerto 443 (HTTPS saliente)
Hermes ahora soporta 16 plataformas. Más allá de Telegram: Discord, Slack, WhatsApp, Signal, Matrix, iMessage (vía BlueBubbles), WeChat, WeCom, Email, SMS, DingTalk, Feishu/Lark, Mattermost, Home Assistant y Webhooks. Ejecuta hermes gateway setup para un asistente interactivo que configura cualquiera de ellas.
¿Cómo ejecuto Hermes Agent como servicio systemd?
Ejecutar hermes gateway en una sesión de terminal significa que se detiene cuando te desconectas. Un servicio de usuario systemd mantiene la pasarela corriendo después del logout y la reinicia automáticamente si se cae o el servidor se reinicia.
Instalar el servicio
Hermes proporciona un comando integrado:
hermes gateway install
Esto crea un archivo de servicio en ~/.config/systemd/user/hermes-gateway.service y habilita lingering automáticamente. Lingering mantiene los servicios de usuario corriendo después de que cierres sesión SSH.
Inicia el servicio y habilítalo para el arranque:
systemctl --user enable --now hermes-gateway
Comprueba el estado del servicio:
systemctl --user status hermes-gateway
Busca Active: active (running) en la salida. Si dice failed, revisa los logs.
Revisar los logs
Ver los logs de la pasarela en tiempo real:
journalctl --user -u hermes-gateway -f
Pulsa Ctrl+C para dejar de seguirlos. Los logs de la pasarela muestran cada mensaje entrante, llamada al LLM y ejecución de herramientas.
Establecer el directorio de trabajo
Por defecto, la pasarela usa el directorio home como workspace. Establece un directorio de proyecto dedicado:
echo 'MESSAGING_CWD=/home/hermes/projects' >> ~/.hermes/.env
mkdir -p /home/hermes/projects
Reinicia el servicio para aplicar los cambios:
systemctl --user restart hermes-gateway
Gestionar desde el navegador
Desde la v0.9.0, Hermes incluye un panel de control web local. Una vez que la pasarela está corriendo, ábrelo con:
hermes dashboard
Esto lanza una interfaz en el navegador donde puedes gestionar ajustes, explorar sesiones y habilidades, y configurar pasarelas sin tocar la terminal. En un VPS, puedes hacer un túnel SSH del puerto del panel para acceder desde tu máquina local.
¿Cómo hago backup de los datos de Hermes Agent?
Hermes almacena todo su estado en ~/.hermes/: memorias, habilidades aprendidas, historial de sesiones, configuración, trabajos cron y persona del agente. Perderlo significa que el agente olvida todo.
Desde la v0.9.0, Hermes tiene comandos integrados de backup y restauración:
hermes backup
Esto crea una instantánea con marca de tiempo de todo tu directorio ~/.hermes/. Para restaurar en el mismo servidor o migrar a uno nuevo:
hermes import /path/to/backup.tar.gz
Para backups diarios automáticos, prográmalo con cron:
(crontab -l 2>/dev/null; echo "0 3 * * * /home/hermes/.local/bin/hermes backup") | crontab -
Para backups fuera del servidor, haz rsync del directorio de backups a otra máquina o almacenamiento de objetos. Mantener los backups solo en el mismo VPS no protege contra fallos de disco.
¿Cómo actualizo Hermes Agent?
Hermes Agent incluye un comando de actualización integrado. Haz backup primero y luego actualiza:
hermes backup
hermes update
Comprueba la nueva versión:
hermes --version
Comprueba si hay cambios de configuración necesarios después de la actualización:
hermes config migrate
hermes doctor
config migrate añade nuevas opciones de configuración con sus valores por defecto. hermes doctor verifica que todo sigue funcionando.
Reinicia el servicio de la pasarela para ejecutar la nueva versión:
systemctl --user restart hermes-gateway
systemctl --user status hermes-gateway
Si algo falla después de una actualización, restaura desde backup:
systemctl --user stop hermes-gateway
hermes import /path/to/backup.tar.gz
systemctl --user start hermes-gateway
Checklist de hardening de seguridad
Un agente IA alojado en un VPS que ejecuta comandos de terminal requiere atención a la seguridad. Aquí tienes un resumen de lo que esta guía configuró y algunos pasos adicionales.
Ya configurado en esta guía:
- Usuario no-root (
hermes) con directorio home dedicado - Firewall UFW denegando todo el tráfico entrante excepto SSH
- Claves API en
~/.hermes/.envcon permisos600 TELEGRAM_ALLOWED_USERSrestringiendo el acceso al bot a tu ID de usuarioapproval_mode: askrequiriendo confirmación para comandos peligrosos
Hardening adicional:
Revisa las habilidades aprendidas del agente periódicamente:
ls -la ~/.hermes/skills/
Las habilidades son scripts que el agente escribe y reutiliza. Audítalas como harías con cualquier código ejecutándose en tu servidor.
Monitoriza los logs de la pasarela en busca de usuarios inesperados o actividad inusual:
journalctl --user -u hermes-gateway --since "1 hour ago" --no-pager
Hermes ha reforzado su postura de seguridad con cada versión: bloqueo de exfiltración de secretos desde la v0.7.0, MCP OAuth 2.1 con PKCE y protecciones SSRF en la v0.8.0, y prevención de path traversal, neutralización de inyección shell y validación de webhooks de Twilio en la v0.9.0. Mantén tu instalación actualizada para beneficiarte de estas protecciones.
Solución de problemas
Desde la v0.9.0, puedes ejecutar /debug en cualquier sesión de chat o hermes debug share desde la terminal para generar un informe de diagnóstico. Es la forma más rápida de identificar problemas.
La pasarela no arranca:
journalctl --user -u hermes-gateway -n 50 --no-pager
Causas comunes: token de bot inválido, clave API faltante o problemas de red.
El bot de Telegram no responde:
Comprueba el token del bot y los usuarios permitidos:
grep TELEGRAM ~/.hermes/.env
Prueba la conectividad saliente:
curl -s https://api.telegram.org/bot<YOUR_TOKEN>/getMe
Una respuesta válida con la información de tu bot confirma que el token y la red funcionan.
Comando hermes no encontrado después de instalar:
source ~/.bashrc
Si sigue sin aparecer, comprueba si ~/.local/bin está en tu PATH:
echo $PATH | tr ':' '\n' | grep local
Alto uso de memoria:
Comprueba qué está consumiendo recursos:
top -bn1 | head -20
Si el agente lanza procesos de larga duración, reduce la carga de trabajo o amplía tu VPS.
¿Cuánto cuesta?
Autoalojar Hermes Agent en un VPS cuesta el servidor más el uso de la API del LLM. Los dos componentes son:
- Hosting VPS: Un VPS con 2+ vCPU y 4 GB de RAM. Consulta las ofertas VPS de Virtua.Cloud para precios actuales.
- Llamadas API LLM: Todos los proveedores soportados usan tarificación por token. Tu coste mensual depende del modelo elegido y la frecuencia de uso del agente. Consulta la página de precios de tu proveedor para tarifas vigentes.
El ahorro real no es solo financiero. Eres dueño de los datos de tu agente, eliges el proveedor que quieras, y ningún cambio de política puede dejarte fuera de un día para otro.
Ejecutar Claude Code en un VPS
Copyright 2026 Virtua.Cloud. Todos los derechos reservados. Este contenido es una obra original del equipo de Virtua.Cloud. La reproducción, republicación o redistribución sin permiso escrito está prohibida.
¿Listo para probarlo?
Ejecuta agentes de IA en tu propio VPS. →