Tu agente de IA
autoconsciente
etheroiHermes Agent es el único agente con un bucle de aprendizaje integrado: crea habilidades desde la experiencia, las mejora durante el uso, busca en sus propias conversaciones pasadas y construye un modelo cada vez más profundo de quién eres — en tu terminal, Telegram, Discord, Slack, o como app de escritorio.
La escala de lo posible
Un agente completo, no un wrapper. Todo esto corre en tu máquina — local, en un VPS de $5, o en infraestructura serverless.
Habla con tu agente donde estés
Un solo proceso de gateway conecta tu agente a siete plataformas. La conversación continúa sin interrupciones cuando cambias de canal — lo que dijiste en Telegram, tu agente lo recuerda en Discord.
Telegram
El bot más completo. Conversación en DM, en grupos con control de acceso, y reply a mensajes. Transcripción automática de notas de voz.
- DM 1:1 sin restricciones
- Grupos con allowlist / allowall
- Reply quoting — el agente entiende el contexto
- Notas de voz → texto (STT) → respuesta
- Adjuntos: imágenes, documentos, audio
- Topic threads ( chats delirantes )
- Persistencia cross-platform
Discord
Se conecta a un servidor completo. Responde en canales públicos, hilos, y DMs. Streaming de respuestas en tiempo real.
- Cualquier canal de texto o hilo
- Streaming de respuestas (no aparece de golpe)
- Mención para invocar — @etheroiHermes
- Integración continua con el resto del servidor
- Permisos granulares por rol
Slack
App de Slack con soporte para canales, hilos de conversación y mensajes directos. Ideal para equipos que ya usan Slack como hub.
- Canales públicos y privados
- Hilos de conversación (contexto persistido)
- DM con el bot
- Mensajes slash:
/hermes - Aprobación de comandos peligrosos
Tu agente en el chat que ya usas a diario. Un número de WhatsApp con el que conversar como con cualquier contacto.
- Conversación fluida 1:1
- Envío y recepción de imágenes
- Notas de voz transcritas automáticamente
- Sin necesidad de aprender una nueva app
Signal
Para usuarios que priorizan la privacidad. Signal soporta comunicación cifrada de extremo a extremo — tu agente escucha sin interrumpir el cifrado.
- Cifrado E2E nativo
- Grupos de Signal
- Mínimo footprint en el servidor
- Ideal para conversaciones sensibles
CLI nativa
La interfaz de terminal completa con edición multilínea, autocompletado, historial, interrupción, y output de herramientas en streaming. También TUI con React + Ink.
- CLI interactiva con prompt_toolkit
- TUI completa con React + Ink
- Terminal integrado en la app de escritorio
- Streaming de herramientas en tiempo real
- /comandos de barra riches
Email · Webhooks
etheroiHermes también atiende por email (SMTP/IMAP) y acepta eventos externos vía webhooks — útil para automatizaciones que desencadenan conversaciones.
- Recibir y responder correos
- Webhooks HTTP entrantes
- CADENA de triggers externos
- Integración con Home Assistant
Todo lo que tu agente necesita
Un agente de IA completo que vive donde tú estás — terminal, mensajería, escritorio — y mejora con cada uso. Más de 40 herramientas integradas, cualquier modelo, y un sistema de aprendizaje que funciona para ti.
Bucle de aprendizaje cerrado
Crea habilidades automáticamente tras tareas complejas. Las habilidades se auto-mejoran durante el uso. Memoria persistente que construye un modelo de quién eres.
/skills para verlas, /insights para revisar lo aprendido.
Cualquier modelo de IA
Anthropic, OpenAI, OpenRouter (300+ modelos), Nous Portal, Gemini, Mistral, Groq, LM Studio, Ollama, y más. Cambia con /hermes model sin tocar código.
Soporta chat completions, streaming, y herramientas (tool calling) nativas.
Terminal real + backends
CLI con edición multilínea y autocompletado. TUI en React + Ink. Seis backends de terminal: local, Docker, SSH, Singularity, Modal, Daytona — algunos con persistencia serverless.
Ejecuta comandos de shell, scripts Python, y herramientas de forma segura.
Web + búsqueda
Navegación web real (Browser Use), búsqueda en la web, extracción de contenido. El agente puede researchar, leer páginas, y reportar lo que encuentra.
Ideal para investigaciones, monitoreo de precios, o seguimiento de noticias.
Visión · TTS · STT
El agente ve imágenes (vision_analyze), escucha notas de voz (STT), y habla (TTS) con varios proveedores. WhatsApp y Telegram notas de voz funcionan sin configuración extra.
TTS con ElevenLabs, OpenAI, Edge, y más. STT integrado para notas de voz.
Automatizaciones cron
Scheduler cron integrado con entrega a cualquier plataforma. Informes diarios, backups nocturnos, audits semanales — todo en lenguaje natural, sin supervisión.
hermes cron add o /cron desde cualquier plataforma.
Delega y paraleliza
Lanza subagentes aislados para flujos paralelos. Cada subagente tiene su propio contexto, terminal, y herramientas. Escribe scripts de Python que llamen herramientas vía RPC.
delegate_task para trabajo pesado; background=true para ejecución asíncrona.
Plugins y MCP
Extiende etheroiHermes con plugins (tools, hooks, comandos CLI) o conectando servidores MCP (Model Context Protocol). Más de 20 plugins incluidos: memoria, model-providers, kanban, imagen, observabilidad.
hermes plugins para gestionar, /hermes mcp para servidores MCP.
Memoria persistente
Memoria curada por el agente con recordatorios periódicos. Búsqueda FTS5 de sesiones con resumen por LLM. Modelado de usuario dialéctico (Honcho). Compatible con el estándar agentskills.io.
Tu agente construye un modelo de quién eres — no solo recuerda hechos.
App de escritorio
etheroiHermes Desktop — app Electron con terminal integrado, chat en vivo, composer, pickers de sesión, slash commands, y soporte completo para microcontroller de aprobación.
También disponible web dashboard (hermes dashboard) con chat embebido.
Continuidad cross-platform
Empieza en Telegram, continua en Discord, finaliza en CLI. El agente recuerda el contexto completo sin importar el canal. Ideal para cambiar de dispositivo o plataforma fluidity.
Sin interrupciones, sin repetición de contexto.
Seguridad y controles
Aprobación de comandos peligrosos, emparejamiento por DM, aislamiento en contenedor, y permisos granulares por plataforma. Controle qué puede hacer el agente y quién puede hablar con él.
/hermes security para configurar, hermes doctor para diagnósticos.
Cómo funciona, en detalle
etheroiHermes no es un wrapper sencillo. Es un agente completo con plugables, memoria, aprendizaje, y una arquitectura pensada para ser extendida.
Arquitectura y componentes internos
etheroiHermes es el único agente con un bucle de aprendizaje integrado que funciona sin supervisión:
Creación de habilidades: tras tareas complejas, el agente detecta patrones y genera habilidades automáticas — scripts reutilizables, Knowledge que agrega a su base, y prompts especializados. Para verlas: /skills.
Auto-mejora: las habilidades no son estáticas. Durante el uso, el agente identifica mejoras, optimiza prompts, y refina sus respuestas. Cada sesión es una iteración más.
Memoria persistente: información relevante se guarda en bases de datos (SQLite con FTS5) y en memorias semi-estructuradas. El agente construye un modelo cada vez más profundo de quién eres — tus preferencias, proyectos, estilo de trabajo.
Búsqueda de sesiones: FTS5 sobre el historial de conversaciones + resumen por LLM para recuperar contexto de sesiones pasadas. El agente puede decir "en nuestra conversación de la semana pasada mencionaste esto..."
El gateway es un proceso único que maneja todas las plataformas simultáneamente. No hay procesos separados por canal — uno solo, con toda la lógica centralizada.
Adapteres por plataforma: cada plataforma (Telegram, Discord, Slack, WhatsApp, Signal, Email, Webhook, Home Assistant) tiene su adaptador, todos ellos bajo gateway/platforms/. Nuevas plataformas se agregan sin tocar el core.
Continuidad cross-platform: una conversación puede empezar en Telegram, continuar en Discord, y terminar en CLI. El agente mantiene el contexto completo gracias a un sistema de sesiones unificado.
Transcripción de voz: notas de voz en Telegram y WhatsApp se transcriben automáticamente (STT) antes de llegar al agente — el agente "escucha" lo que dijiste.
Streaming: en plataformas que lo soportan (Discord, Slack), las respuestas se envían parcialmente en tiempo real, no de golpe al final.
etheroiHermes tiene un sistema de plugins diseñado para extensión sin tocar el core. Hay tres categorías de plugins:
- General plugins (
plugins/<name>/): registran herramientas, hooks de ciclo de vida (pre_tool_call,post_llm_call,on_session_start, ...), y comandos CLI. Ej: kanban, observability, disk-cleanup. - Memory providers (
plugins/memory/<name>/): backends de memoria. Incluidos: Honcho, mem0, supermemory, byterover, hindsight, holographic, openviking, retaindb. El standard está abierto — cada uno implementa la misma ABC. - Model-provider plugins (
plugins/model-providers/<name>/): cada backend de inferencia es un plugin. Anthropic, OpenAI, OpenRouter, Nous Portal, Gemini, Mistral, etc. Todos se registran conregister_provider().
MCP (Model Context Protocol): etheroiHermes puede conectar servidores MCP externos para capacidades adicionales. Esto es lo que permite extender el agente sin modificar el código base.
Regla de política (May 2026): no se agregan nuevos plugins de terceros en-tree. Si tu plugin integra un producto externo (SaaS, dashboard, analytics), publica tu propio repo e instala en ~/.hermes/plugins/.
etheroiHermes no está atado a un modelo. Puedes usar cualquier proveedor que quieras, e incluso mezclar varios:
- Proveedores integrados: Anthropic, OpenAI, OpenRouter (300+ modelos), Nous Portal, Gemini, Mistral, Groq, LM Studio, Ollama, y más.
- Cambio dinámico:
/hermes model anthropic/claude-sonnet-4-20250514o/hermes model openrouter/qwen-2.5-72b-instruct. Sin reiniciar, sin configurar. - Nous Portal: una suscripción única que cubre modelos, búsqueda web (Firecrawl), generación de imágenes (FAL), TTS (OpenAI), y navegador en la nube (Browser Use).
hermes setup --portalpara activarlo. - Smart model routing: configuración avanzada para routing por tarea — usa un modelo barato para tareas simples y uno potente para reasoning complejo.
El scheduler cron integrado permite tareas programadas con entrega a cualquier plataforma:
- Formatos de schedule: duración ("30m", "2h"), "every" phrase ("every 2h", "every monday 9am"), expresión cron ("0 9 * * *"), o timestamp ISO para ejecución única.
- Entrega: a la plataforma origen, a todas las plataformas conectadas, o a una específica. Continuidad para reporting persistente.
- Scripts de recolección: cada tick puede ejecutar un script de datos que inyecta su salida en el prompt del agente — ideal para monitoreo, scraping, o reports de estado.
- Sin agente (no_agent): para tareas script-only, el cron ejecuta el script y entrega el stdout directamente, sin invocar al LLM. Watches de memoria, disco, GPU, heartbeats.
- Hard interrupts: 3 minutos de tiempo máximo por sesión cron para evitar loops runaway. Catch-up window y grace window para ticks perdidos.
delegate_task permite lanzar subagentes aislados para trabajo en paralelo:
- Leaf agents: trabajadores enfocados, sin capacidad de delegar a su vez. Tienen su propio contexto, terminal, y herramientas.
- Orchestrators: retienen
delegate_taskpara spawnear sus propios workers (gated pordelegation.orchestrator_enabled). - Batch paralelo: pasa
tasks: [...]para ejecutar múltiples subagentes concurrentes. Capped pordelegation.max_concurrent_children(default 3). - Background async: con
background=true, etheroiHermes devuelve un delegation id inmediatamente y el resultado re- entra en la conversación después. - Durability: la delegación es process-local. Para trabajo que debe sobrevivir al reinicio, usa
cronjoboterminal(background=True).
etheroiHermes tiene seis backends de terminal, cada uno con diferentes características de ejecución y persistencia:
- Local: el terminal de tu máquina, con todas las capacidades del sistema.
- Docker: ejecución aislada en contenedor — ideal para seguridad y reproducibilidad.
- SSH: conecta a un servidor remoto y ejecuta comandos allí.
- Singularity: contenedores HPC y entornos de investigación.
- Modal: serverless con persistencia — el entorno hiberna cuando está inactivo y se activa bajo demanda, costando casi nada entre sesiones.
- Daytona: similar a Modal, entornos cloud con persistencia y zero-cost cuando idle.
Terminal integrado en la app de escritorio: Electron con terminal real, no solo un widget. Permite ejecutar comandos mientras chateas.
etheroiHermes maneja sesiones persistentes con una base de datos SQLite (FTS5) que permite búsqueda full-text sobre todo el historial:
- SessionDB: cada conversación es una sesión con ID único, título auto-generado, y historial completo de mensajes.
- FTS5 search: busca en conversaciones pasadas con consultas booleanas, frases exactas, y wildcards. El agente puede recuperar contexto de sesiones antiguas.
- Context compression: cuando el contexto se vuelve muy largo, el agente puede comprimirlo manteniendo lo relevante — sin perder información importante.
- /perfiles: múltiples instancias completamente aisladas, cada una con su propio HERMES_HOME (config, API keys, memoria, sesiones).
- Archivos de contexto: AGENTS.md y CLAUDE.md en el directorio de trabajo dan contexto de proyecto al agente.
Un bot dentro de otro: tu agente, multiplicado
etheroiHermes no es un bot — es un agente que puede invocarse a sí mismo. Lanza subagentes especializados, en paralelo o en cadena, para delegar work, investigar, o ejecutar tareas en aislamiento. Cada subagente es un agente completo con su propio contexto, terminal, y herramientas — y el padre recibe solo el resumen final.
Árbol de delegación
Cada agente puede spawnear subagentes. Por defecto el árbol es flat (1 nivel), pero se puede profundizar a 2+ niveles configurando delegation.max_spawn_depth.
- Padre (root): construye el árbol, coordina resultados
- Hijo level 1: worker enfocado, 병목 없음
- Nieto level 2: orquestador que further decompose (si depth >= 2)
- Cada nivel recibe solo el contexto necesario — no todo el historial
Dos roles, dos responsabilidades
Cada subagente nace con un rol que determina si puede delegar a su vez:
- Leaf (default): trabajador enfocado. No tiene la herramienta
delegate_task— no puede spawnear. Recibe el goal, hace el work, devuelve el resumen. - Orchestrator: retiene
delegate_tasky puede spawnear sus propios workers. Útil cuando un goal se descompone en subtareas paralelas. - Cómo se asigna: pasa
role="orchestrator"en delegate_task. Sidelegation.orchestrator_enabled=false, todas las peticiones se coercian a leaf.
Batch paralelo
Pasa tasks: [...] con varios goals independientes — cada uno corre en su propio subagente concurrentemente, sin esperar al anterior.
- Config:
delegation.max_concurrent_children(default 10, pero el sistema recomienda 3 para control) - Casos de uso: research A + B en paralelo, análises de múltiples archivos, pruebas en distintos entornos
- El padre espera: todos los hijos deben terminar antes de que el padre siga — recibe todos los summaries juntos
- Background: con
background=true, el padre no espera — el resultado re-entra en la conversación cuando esté listo
Aislamiento fuerte
Cada subagente tiene su propio contexto — nada del historial del padre se filtra. Además, herramientas peligrosas o de side-effect se bloquean automáticamente:
delegate_task— no recursión infinitaclarify— no interacción con el usuariomemory— no escritura en MEMORY.md compartidosend_message— no side effects cross-platformcronjob— no scheduling de más trabajo- Terminal: el subagente tiene su propia sesión de terminal aislada (task_id propio)
La herramienta delegate_task
El modelo invoca delegate_task como un tool call normal. Tiene dos formas:
- Single:
goal+ opcionalcontext,toolsets,model,role. El subagente corre y el padre espera el summary. - Batch:
tasks: [{goal, context, ...}]. Múltiples subagentes paralelos, cada uno con su propio goal. - Control post-spawn: los ids de los subagentes se devuelven en la respuesta. Luego puedes
action="list",action="steer", oaction="stop"sobre ellos.
Steer e Interrupt
Una vez spawneado, un subagente se puede controlar sin detenerlo:
- Steer:
action="steer"+message. El texto se encola y el subagente lo ve en su siguiente tool result — nunca corta una tool call en curso. Útil para corregir rumbo sin perder trabajo. - Interrupt:
action="stop". Solicita una parada limpia al next iteration boundary. Las tool calls en vuelo son notificadas para cancelarse. El resultado parcial aún se entrega. - List:
action="list". Snapshot de todos los subagentes vivos: id, parent_id, depth, goal, model, status, running_seconds, live_transcript.
Configuración de delegación
Todas las boundaries de delegación se configuran en config.yaml bajo delegation::
max_concurrent_children: 3— cuántos hijos simultáneos como máximomax_spawn_depth: 1— profundidad del árbol (1 = flat, 2 = permite nietos)orchestrator_enabled: true— permite role="orchestrator" (si false, todo es leaf)subagent_auto_approve: false— aprobación de comandos peligrosos en subagentes (default: denegar, evitar deadlocks de TUI)child_timeout_seconds— timeout por subagenteinherit_mcp_toolsets— si el hijo hereda las herramientas MCP del padre
Casos de uso reales
La delegación no es magia — es la herramienta correcta para ciertos patrones de trabajo:
- Investigación paralela: "investiga X y Y simultáneamente" → 2 subagentes leaf, cada uno en una query, padre sintetiza
- Análisis de codebase: "lee y analiza los archivos A, B, C en paralelo" → batch de 3 subagentes
- Tareas de ejecución pesada: compilación, test suite, data pipeline → subagente con
terminal, padre no se satura de output - Orquestación compleja: goal que se descompone en 3+ subtareas interdependientes → orchestrator level 1 spawnea 3 leaves, sintetiza
- Work variado: "investiga + escribe + prueba" → 3 subagentes con toolsets distintos (web, file, terminal) en paralelo
delegation.max_spawn_depth >= 2 y usa role="orchestrator". Cada nivel adicional multiplica el costo de API tokens, así que el default conservador es deliberate.
Agentes con personalidad — crea bots, dales forma, hazlos hablar
etheroiHermes Desktop incluye un modo de bots (hermes-bots) — un panel lateral
que enlista cada uno de tus agentes como un bot con avatar, personalidad y chat propio.
Cada bot es un perfil completo de etheroiHermes: su propio SOUL.md, sus herramientas, su modelo,
su memoria. Y los bots pueden invocarse entre sí: @mencionando a otro bot desde el chat,
delegas trabajo sin salir de la conversación.
¿Qué es un Bot?
En etheroiHermes Desktop, un bot no es un helper secundario — es un agente completo que vive en tu escritorio con identidad propia. El panel "Bots" — a la izquierda, como una tabla de roster — lista todos tus bots (perfiles). Cada uno tiene:
Su propio config.yaml, su propia memoria, su propio conjunto de habilidades,
su propio SOUL.md (personalidad), y su propia sesión de chat canónica ("Bot Chat").
Crear un nuevo bot
Desde el panel Bots, el botón "Nuevo Agente" abre un modal de creación.
En el backend, esto ejecuta hermes profile create <nombre> — un perfil
completo e independiente, no un helper secundario.
- Nombre: slug validado por regex
^[a-z0-9][a-z0-9_-]{0,63}$(ej:researcher,ops,writer). Cada nombre es un perfil distinto bajo~/.hermes/profiles/<nombre>/. - Title (opcional): nombre amigable que aparece en el roster y se usa para la @mention. Se guarda en
ui_metay en el campo display del perfil. - Descripción: qué hace este bot — visible en el roster y en la card del bot.
- Clone from: (opcional) por defecto clona desde
default. Copia config.yaml, .env, SOUL.md, y skills del perfil origen para usarlos como punto de partida (--clone). Con--clone-allla copia es completa. - SOUL.md (opcional): un markdown libre que define la personalidad del bot — tono, restricciones, estilo. Se escribe al momento de la creación o se deja vacío para editarlo después desde el chat.
Al crear, el perfil recibe su propio directorio con config.yaml, .env, y carpetas de memoria, sesiones, skills, skins, logs, planes, workspace, y cron — todo aislado del resto. Además, el backend seedea las skills bundleadas automáticamente en el perfil nuevo, para que el bot tenga las herramientas básicas listas desde el primer turno.
Un bot es un agente con SOUL
Un "bot" en etheroiHermes Desktop es, en el fondo, un agente con identidad. Todo lo que tu agente principal puede hacer — usar herramientas, consultar modelos, ejecutar comandos, escribir memoria — lo puede hacer un bot. La diferencia es que un bot tiene:
- Su propio contexto de conversación: su Bot Chat acumula mensajes, respuestas, y menciones. No comparte el historial del agente principal.
- Su propia personalidad escrita: el SOUL.md define quién es, cómo se comunica, qué prioridades tiene, y qué límites respeta. El agente lo lee como contexto en cada turno y se comporta acorde.
- Su propio conjunto de habilidades: heredadas del clone-from o instaladas después — cada bot puede tener skills diferentes (uno tiene web + search, otro tiene code + terminal, otro tiene image-gen).
- Su propio modelo y proveedor: cada perfil tiene su propia configuración de modelo — un bot puede usar Claude, otro GPT-4, otro un modelo local vía Ollama.
- Su propia memoria: el bot puede tener un memory provider configurado — acumula knowledge a lo largo del tiempo, independiente del agente principal.
- Su propia configuración de herramientas: qué toolsets está habilitado, qué MCP servers tiene conectados.
En resumen: un bot es un agente que tiene un SOUL — una personalidad escrita — y una vida propia en tu escritorio. No es un comando que ejecutas; es un compañero con el que conversas, le pides cosas, y que puede a su vez pedir cosas a otros compañeros.
agente completo config independiente modelo propio habilidades propiasSOUL.md — la personalidad del bot
Cada bot puede tener un SOUL.md — un archivo de markdown que define quién es, cómo se comporta, qué tono usa, y qué restricciones sigue. Es la personalidad escrita del agente.
En la creación del bot, el modal incluye un campo "SOUL.md (opcional)" donde puedes escribir o pegar el contenido completo. Después, desde cualquier chat de un bot, el sidebar de perfil tiene "Edit Soul" — abre un editor inline del SOUL.md de ese bot sin salir del chat.
personalidad tono comportamientoAvatar personalizado
Cada bot tiene un avatar visual en el roster — un rostro determinístico que puede ser:
- Forma geométrica (SVG): círculo, blob, hexágono, nube, gota, triángulo — generado deterministicamente desde el nombre del bot
- Color: una paleta de 10 colores, también determinística por nombre — o elegido manualmente
- Imagen subida: una foto, ilustración, o logo que subes desde tu dispositivo
- Generado por IA: el bot puede generar su propio avatar vía image.generate (si tienes una herramienta de ésta configurada)
Los avatares SVG (la "firma" matemática) tienen ojos que parpadean, se moven cuando el bot está "working", y se relajan en idle — una pizca de vida que hace que el roster se sienta vivo.
Chat canónico ("Bot Chat")
Cada bot tiene una única conversación canónica, titulada "Bot Chat", donde se acumula todo el historial de interacciones: mensajes del usuario, respuestas del agente, menciones de otros bots, y mensajes entre bots.
Esta sesión es ocultada del sidebar de sesiones global — no aparecerá en la lista de "todas las conversaciones". Solamente accesible desde el panel Bots: haciendo click en la fila del bot, o desde el channel de @mención.
oculto del sidebar historial acumulado @mencionableInvocar un bot desde otro
Dentro del chat de un bot, puedes @mentionar a otro bot para delegarle trabajo.
Escribe @researcher investiga X y el mensaje se entrega al Bot Chat de researcher,
que lo procesa y responde — todo sin salir del chat actual.
El @mention funciona igual vía la UI del composer (autocomplete con @) que escribiendo el texto plano. Los bots en otras conexiones (SSH, gateways remotos) también son @mencionables — el mensaje viaja por gateway RPC hasta el bot remoto y su respuesta regresa como notificación.
Rutinas (Cron) por bot
El panel Bots tiene una segunda pestaña: Routines. Muestra las tareas programadas (cron jobs) que pertenecen al bot que estás viendo ahora. Cada bot puede tener sus propias rutinas:
- Informes diarios del estado del proyecto
- Backups nocturnos de memory / checkpoints
- Auditorías semanales de código
- Alertas de salud de servicios externos
Así, researcher puede tener un cron que cada noche investiga algo y lo deja listo en su
Bot Chat, mientras que ops tiene otro que vigila infraestructura.
Gestionar el roster
El panel Bots es el lugar central de gestión. Desde ahí puedes:
- Editar perfil: cambiar nombre, título, descripción, avatar (shape, color, imagen, pet)
- Duplicar bot: clonar un bot existente (nombre
-2,-3, ...) — copia look y config, no chat ni created - Eliminar bot: borra el perfil de etheroiHermes completo, su chat canónico, y limpia el estado del plugin
- Atvididad: badge de unread en cada fila — el roster detecta actividad nueva en el Bot Chat incluso si está oculto
- Búsqueda: filtrar el roster por nombre para encontrar un bot rápido en rosters grandes
Cuando usar bots en tu escritorio
No necesitas un bot por cada tarea — pero cuando el trabajo se divide en roles claros, los bots de etheroiHermes Desktop organizan tu escritorio sin tener que cambiar de contexto.
Investigación + Síntesis
Bot 1 (researcher): tiene habilitado el toolset web + búsqueda. Investiga activos, papers, precios. Guarda resultados en su memoria.
Bot 2 (writer): lee lo que el researcher guardó y lo resume en un informe.
DevOps multi-role
Bot ops: vigila servidores, corre deployments, lee logs.
Bot reviewer: revisa PRs, comenta inline, sugiere cambios.
Ambos dejan su trabajo en sus chats canónicos — y el bot "lead" @menciona a cada uno según necesita.
Escritura colectiva
Bot outline: estructura el documento.
Bot draft: escribe cada sección.
Bot edit: revisa estilo, gramática, consistencia.
Se invocan entre sí: el draft @menciona al edit cuando termina una sección.
Atención personalizada
Bot inbox: escanea tu correo y mensajería, extrae acciones, las clasifica.
Bot reminder: ejecuta las rutinas diarias — recordatorios, seguimientos, resúmenes de día.
Cada uno con su SOUL.md: inbox es objetivo, reminder es amable y proactivo.
Equipo remoto
Tienes un bot corriendo en un servidor remoto (SSH gateway). Otro en tu laptop.
@mencionas al bot remoto desde tu chat local — el mensaje viaja por RPC, el bot remoto responde.
Sin SSH manual, sin copiar comandos: es como si todos los bots estuvieran en tu escritorio.
Arte + Código
Bot code: escribe, prueba, refiere código.
Bot art: genera imágenes, ilustraciones, assets visuales para el proyecto.
Cada uno con su propio modelo preferido, sus toolsets, su avatar. Se invocan cuando el code necesita una imagen o el art necesita un layout.
Cómo funciona la invocación entre bots
@researcher ...
Todo esto ocurre sin salir del chat de ops. El comando que entrega el mensaje usa
hermes -p <bot> chat --in ~ -c "Bot Chat" bajo el hood — el plugin maneja el routing,
la seguridad (escaping de shell en los argumentos), y la notificación de respuesta.
SOUL.md de un bot — qué puede definir
Un SOUL.md es markdown libre — el agente lo lee como parte de su contexto y se comporta acorde. Puedes definir tono, restricciones, estilo de comunicación, y reglas de comportamiento. Aquí un ejemplo de un bot "reviewer" que revisa código:
Este SOUL.md se edita inline desde el chat del bot (sidebar → "Edit Soul"). El agente lo recarga en su contexto y se adapta sin reiniciar. Puedes tener SOUL.md diferentes para cada bot — unos serios, otros creativos, otros proactivos.
De prototipo a agente autoconsciente
etheroiHermes ha evolucionado desde un CLI experimental hasta un agente completo con aprendizaje, memoria, y soporte para múltiples plataformas — todo sin dejar de ser open source.
CLI experimental
Primera iteración: un agente de terminal con soporte para modelos básicos y herramientas simples. La base del bucle de conversación.
Gateway de mensajería
Introducción del gateway unificado: un solo proceso que maneja múltiples plataformas. Primera integración con Telegram y Discord.
Sistema de plugins
Plugins de memoria, model-providers, y herramientas personalizadas. El core se mantiene narrow; la capacidades vive en los edges.
Bucle de aprendizaje integrado
Creación automática de habilidades, memoria persistente, y búsqueda FTS5 de sesiones. etheroiHermes comienza a ser "autoconsciente".
App de escritorio + TUI
etheroiHermes Desktop (Electron) y TUI completa en React + Ink. Terminal integrado, chat en vivo, y slash commands.
Multi-plataforma completa + serverless
Soporte para WhatsApp, Signal, Email, y webhooks. Backends de terminal serverless (Modal, Daytona). Cron, kanban, y más de 40 herramientas.
Elige tu sistema operativo
etheroiHermes Agent se distribuye como aplicación nativa para Windows, macOS y Linux. También puedes instalarlo mediante línea de comandos en cualquier sistema.
Windows
Incluye Python, uv, Git Bash y todas las dependencias necesarias. No requiere permisos de administrador.
Descargar .exe (NSIS) 113 MBmacOS
Paquete .dmg con aplicación nativa. Soporte completo para M1/M2/M3 (Apple Silicon) y procesadores Intel.
Descargar .dmg 180 MBLinux
AppImage portable, paquete .deb para Debian/Ubuntu, o .rpm para Fedora/RHEL. También disponible vía terminal.
Descargar AppImage 200 MB