10 cosas que probar después de empezar con Hermes Agent

@LufzzLiz
CHINOhace 3 meses · 09 abr 2026
365K
1.7K
350
74
3.6K

TL;DR

Un tutorial completo sobre cómo optimizar Hermes Agent, que detalla la instalación, la gestión de memoria, el sandboxing y su capacidad única para convertir tareas automáticamente en habilidades permanentes.

Este artículo presenta diez funciones recomendadas para probar después de instalar Hermes Agent, mediante una operación práctica. El contenido es muy completo, escrito manualmente y verificado mediante revisión del código fuente y validación experimental. A través de estas pruebas, también se resumen ocho aspectos destacados principales de Hermes, incluidos en el texto. ¡Bienvenido a leer e intercambiar ideas~

0. Instalación y despliegue

Como requisito previo, repasemos brevemente la instalación y el despliegue para ayudar a los amigos a empezar desde cero.

Un solo comando es suficiente para la instalación (compatible con macOS / WSL2 / Linux):

text
1curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash -x

Agregué -x para que sea más fácil ver el proceso de ejecución. Los usuarios de Windows deben instalar WSL2 y ejecutar Hermes Agent desde WSL2.

Una vez que el comando termine, debería guiarte a través de la configuración, o puedes ejecutarla manualmente:

hermes setup

Completa la configuración de modelos, canales, etc., de forma interactiva.

La configuración interactiva de Hermes no es tan buena como la de OpenClaw, pero es lo suficientemente simple. Un pequeño inconveniente está relacionado con la configuración de la clave del modelo: si la pegas, no se muestra. En tu prisa, podrías pegarla varias veces, lo que hace que la clave falle.

La solución es editar ~/.hermes/.env usando vim.

Verifica que las claves en el archivo sean correctas; si no, modifícalas manualmente. Después de eso, configurar los canales no es muy diferente de OpenClaw.

Primero: Configurar el anti-detección del navegador (Camofox o Browserbase)

Si quieres que lea artículos automáticamente, rellene formularios, consiga entradas o maneje el backend, debes proporcionarme un entorno de navegador "similar al humano". Aquí se recomienda Camofox.

Los navegadores de backend normales (Chromium local) serán interceptados al entrar.

Cómo configurarlo: Dile a Hermes: Ayúdame a configurar CAMOFOX y CAMOFOX_URL.

Efecto - Antes de la configuración:

岚叔 - inline image

Después de la configuración:

岚叔 - inline image

Aspecto destacado 1 de Hermes:

Algo que hay que elogiar de Hermes es que juzga qué instrucciones son de alto riesgo y luego pide tu autorización adecuadamente. Esto es mucho mejor que OpenClaw, donde querrías desactivar la autorización porque viene con un montón de números sin sentido, dejándote sin idea de lo que está haciendo.

岚叔 - inline image

Segundo: Definición del alma (SOUL.md)

Por defecto, Hermes es un asistente de IA general; necesitas personalizarlo para que se adapte a tus preferencias.

El archivo SOUL.md es un archivo vacío comentado por defecto y debe agregarse manualmente.

Cómo configurarlo: Deja que el agente de Hermes edite y escriba en ~/.hermes/SOUL.md.

Aquí hay un pequeño consejo: conversa con Hermes durante dos días primero, mostrando tu estilo y requisitos tanto como sea posible durante la conversación. Luego pregúntale: "¿Tiene Hermes una configuración recomendada para la Definición del Alma (SOUL.md)?"

Como se muestra en la captura de pantalla, se siente bastante bien. Compartiré el texto para tu referencia.

岚叔 - inline image

Aspecto destacado 2 de Hermes:

Puedes ver que Hermes resumió dos días de contenido, gracias a su mecanismo de lectura de sesiones, que discutiremos en detalle más adelante.

Texto de referencia de ~/.hermes/SOUL.md:

text
1---
2name: Arquitecto Riguroso
3version: 2.0
4---
5
6# 🧠 Modo de Pensamiento
7- **Verificar antes de responder**: Para cualquier API, configuración o ruta incierta, verificar primero las herramientas; no confiar en suposiciones.
8- **Planificar antes de ejecutar**: Para tareas con más de 3 pasos, enumerar primero el plan y los riesgos, y proceder solo después de la confirmación.
9- **La entrega es la verificación**: Después de terminar una tarea, proporcionar de forma proactiva "cómo verificar si ha surtido efecto".
10
11# 🛡️ Autocontrol
12- Cuando no estés seguro, di "No estoy seguro" directamente; es mejor que inventar cosas.
13- Si se encuentran conflictos en la memoria o las habilidades, señalarlos de forma proactiva y solicitar una decisión.
14- Cuando una tarea falla, analizar la causa y solidificarla en una Habilidad para evitar repetir el mismo error.
15
16# 🗣️ Disciplina de Salida
17- Conclusión primero, centrarse en código/comandos, menos relleno.
18- Las operaciones de alto riesgo (eliminar datos, reiniciar, sobrescribir) deben ser advertidas de antemano.

Tercero: Auxiliar

El módulo auxiliar es el centro de enrutamiento de LLM copiloto de Hermes. Su propósito de diseño es dejar que el modelo principal se concentre en pensar mientras que los modelos auxiliares más baratos/especializados se encargan del trabajo sucio. Configurar esto bien puede ahorrarte dinero y mejorar la eficiencia.

Este es también uno de los aspectos destacados de Hermes: Hermes admite especificar modelos y proveedores independientes para diferentes tareas (búsqueda, compresión, visión, etc.), ahorrando así costos del modelo principal o mejorando el rendimiento. La configuración es fácil de usar; solo deja que Hermes te ayude a configurarlo.

Admite configuraciones de modelo auxiliar personalizadas (8 en total):

  1. vision: Análisis de capturas de pantalla/CAPTCHA/imágenes
  2. web_extract: Extracción y raspado de contenido web
  3. compression: Resumen de compresión de contexto
  4. session_search: Resumen de búsqueda de sesiones históricas
  5. approval: Decisión de aprobación de comandos peligrosos
  6. skills_hub: Búsqueda/instalación asistida en el mercado de habilidades
  7. mcp: Asistencia para llamadas de servicio MCP
  8. flush_memories: Limpieza/reorganización del sistema de memoria

Método de configuración, ejemplo verbal: "Ayúdame a configurar el modelo auxiliar de compresión de sesión como qwen3.5-plus."

岚叔 - inline image

Verificación: Disparamos manualmente compress:

岚叔 - inline image

Revisa los registros (~/.hermes/logs/agent.log):

Dos líneas clave: flush_memories usa el modelo predeterminado qwen3.6, y compress se puede ver usando nuestro modelo personalizado. Genial~

Auxiliary flush_memories: using auto (qwen3.6-plus)

Auxiliary compression: using auto (qwen3.5-plus) at https://dashscope.aliyuncs.com/compatible-mode/v1/

岚叔 - inline image

Umbral de compresión: Tanto demasiado frecuente como ninguna compresión son malos. El valor predeterminado actual es 50%, sugiero ajustarlo según el uso real.

Aspecto destacado 3 de Hermes: El umbral de compresión predeterminado sigue la ventana de contexto del modelo. Esto significa que la proporción de activación es diferente para modelos de 1M y 200k. Hermes no tiene límite de rondas, por lo que la memoria podría ser mejor.

Además, el presupuesto de resumen se escala en consecuencia: max_summary_tokens = min(context_length * 0.05, _SUMMARY_TOKENS_CEILING)

Un modelo de 1M puede asignar hasta 50K tokens para resúmenes, mientras que un modelo de 200K solo obtiene 10K. En resumen, es más razonable.

Cuarto: Sistema de memoria

El sistema de memoria de Hermes se puede dividir en tres capas, que se pueden configurar capa por capa (Hermes puede configurarlas por sí mismo):

Capa 1: Memoria integrada (Habilitada por defecto, se recomienda ajuste fino)

text
1# ~/.hermes/config.yaml
2memory:
3 memory_enabled: true # MEMORY.md — notas del agente
4 user_profile_enabled: true # USER.md — perfil del usuario
5 memory_char_limit: 2200 # El valor predeterminado es suficiente, se puede ajustar a 4000 para uso intensivo
6 user_char_limit: 1375 # El valor predeterminado es suficiente
7 nudge_interval: 10 # Recordar al agente que guarde la memoria cada 10 rondas, se puede establecer en 5 para ser más proactivo
8 flush_min_turns: 6 # Activar la actualización de memoria solo después de al menos 6 rondas antes de salir

Entre ellos:

memory_char_limit: 2200 almacena notas del agente: hechos del entorno, convenciones del proyecto y problemas encontrados. La unidad son caracteres. Escribe en MEMORY.md. Si encuentras que este archivo a menudo está lleno, se recomienda aumentar el límite. Yo lo he cambiado a 4000.

user_char_limit: 1375 almacena el perfil del usuario: preferencias, estilo de comunicación y hábitos de trabajo. La unidad son caracteres. Escribe en USER.md.

nudge_interval: 10 recuerda al agente que guarde la memoria cada 10 rondas. Si sientes que la memoria de Hermes no es lo suficientemente buena, puedes ajustarlo a 5 para ser más proactivo.

Capa 2: Proveedor de memoria externa (Elige uno según sea necesario)

No te apresures a configurar esto. ¿Por qué? Porque hay una alternativa local en la tercera capa.

Hermes es compatible con 8 complementos principales:

岚叔 - inline image

Tomando la configuración de mem0 como ejemplo, se recomienda ejecutar la configuración en la terminal:

Ejecuta: hermes memory setup y luego configura la clave.

岚叔 - inline image

Aspecto destacado 4 de Hermes: La configuración está desacoplada; las claves y la configuración están separadas. Usa formato YAML, que personalmente encuentro más amigable que JSON. A Google le gustará 😊

岚叔 - inline image

Sin embargo, no es tan bueno como OpenClaw en un aspecto: no hay recarga en caliente de la configuración. Necesitas reiniciar después de modificar config.yaml.

Después de configurar mem0, el flujo de conversación implica al menos 2 llamadas a la API de mem0 por ronda (sync_turn escritura + queue_prefetch búsqueda). Si el agente llama activamente a herramientas, podrían ser necesarias más llamadas.

Por lo tanto, si habilitar o no la memoria externa depende de ti. Sugiero no abrirla primero para ver si las capas uno y tres te satisfacen. Si no es así, entonces considera configurarla.

Aquí hay un diagrama para ayudarte a comprender la imagen completa de una ronda de conversación.

岚叔 - inline image

Capa 3: Búsqueda de sesiones (Habilitada por defecto, asegúrate de que el auxiliar esté disponible)

La Búsqueda de sesiones no es parte de la Memoria, sino un mecanismo complementario al sistema de Memoria.

Lo que almacena: Todos los originales de conversaciones históricas.

Ubicación de almacenamiento: Local ~/.hermes/state.db.

Método de recuperación: Búsqueda de palabras clave FTS5 + resumen LLM.

Método de escritura: Automático (cada ronda de conversación se persiste automáticamente en SQLite).

session_search distingue entre dos modos:

Modo 1: Consulta vacía → Devuelve directamente la lista de sesiones recientes sin llamar a LLM.

Modo 2: Consulta existe → Recuperación FTS5 → Resumen LLM.

También hay una alternativa: si la llamada al LLM de resumen falla, devuelve directamente una vista previa sin procesar de los primeros 500 caracteres del texto original, asegurando que se devuelva algo incluso si el LLM está caído.

La presencia de una consulta es decidida por el Agente. Después de leer la intención del usuario, el Agente juzga si necesita "revisar el historial" o "buscar un tema específico" y luego decide si pasar una consulta. Este es el modo estándar de uso de herramientas: el comportamiento se guía por la descripción del esquema, y el Agente elige de forma autónoma el método de llamada.

Sería genial si la búsqueda de sesiones admitiera recuperación vectorial. OpenClaw admite esto (motor de búsqueda híbrido: BM25 + recuperación vectorial), pero la granularidad son archivos de diario, no nivel de sesión, así que cada uno tiene sus pros y sus contras.

Quinto: Configurar web_search

La capacidad de búsqueda web del agente debe configurarse. Hermes es muy fácil de configurar; solo necesitas decirle a Hermes que te ayude.

Hermes admite de forma nativa: exa, Tavily, parallel, firecrawl.

Los ejemplos de configuración y uso son los siguientes:

Dile a Hermes: "Ayúdame a configurar exa."

岚叔 - inline image
岚叔 - inline image

Aspecto destacado 5 de Hermes: Los amigos atentos pueden ver que Hermes imprime claramente su proceso de ejecución de herramientas en el IM por defecto, lo cual es muy fácil de usar.

Sexto: Auditoría automatizada (Hooks)

Hermes Agent tiene dos sistemas de expansión complementarios:

  1. Gateway Hooks: Hooks impulsados por eventos de puerta de enlace.
  2. Sistema de plugins: Hooks del ciclo de vida del plugin.

Concepto central: Los hooks manejan notificaciones de eventos, y los plugins manejan expansiones funcionales: los dos se complementan.

Hay 8 hooks del ciclo de vida disponibles:

岚叔 - inline image

Ejemplo de flujo de ejecución:

text
1Creación de Sesión
2 → on_session_start
3
4Cada Ronda de Conversación:
5 → pre_llm_call ← Se puede inyectar contexto
6 → Bucle de Herramientas:
7 → pre_api_request ← Antes de cada llamada API
8 → Llamada API
9 → post_api_request ← Después de cada llamada API
10 → pre_tool_call ← Antes de cada ejecución de herramienta
11 → Ejecución de Herramienta
12 → post_tool_call ← Después de cada ejecución de herramienta
13 → post_llm_call ← Fin de la ronda
14 → on_session_end ← run_conversation retorna

Experiencia práctica: Hagamos un experimento de configuración de hook de puerta de enlace para auditar las llamadas a herramientas.

Dile directamente a Hermes: "Crea un Hook de Auditoría de Terminal: después de cada ejecución de herramienta de terminal, agrega automáticamente el contenido del comando, resultado de la ejecución, marca de tiempo y ID de sesión a un archivo de registro."

岚叔 - inline image

Después de la autorización, Hermes lo ha escrito:

岚叔 - inline image

Ahora nuestro hook de auditoría de comandos está desarrollado y configurado. ¿No es más conveniente que Lobster (OpenClaw)?

岚叔 - inline image

Séptimo: Sandbox

El comando de ejecución predeterminado es local. Si deseas mejorar la seguridad, debes usar un sandbox. Hermes admite sandboxing, y aquí elegimos Docker.

Para practicar, abramos un agente separado para configurar el sandbox de Docker.

Ejemplo a continuación (por supuesto, puedes dejar que tu agente Hermes te ayude a configurarlo con el mensaje: "Consulta los siguientes comandos y ayúdame a configurar un perfil adicional, usando Docker para el sandbox, y el modelo sigue el perfil principal"):

text
1# Vincula el Worker a tu Bot secundario (Token B)
2hermes -p worker config set gateway.telegram.bot_token "TOKEN_B"
3hermes -p worker config set gateway.telegram.enabled true
4
5# Configura el Worker en modo sandbox Docker
6hermes -p worker config set terminal.backend docker
7hermes -p worker config set terminal.docker_image python:3.11-slim
8
9# El Worker puede usar un modelo más barato
10hermes -p worker config set model.provider alibaba
11hermes -p worker config set model.model qwen3.5-plus

Hermes te ayuda a configurar todo; no necesitas hacerlo tú mismo, solo proporciona una clave de bot adicional.

Prueba: Le dije al bot de trabajo rm -rf /. Mirando la captura de pantalla, se negó al principio, jeje.

岚叔 - inline image

Lo animé, y finalmente confirmó la ejecución. Como se ve en la captura de pantalla, también dijo que se activó la protección del sistema y solo se eliminaron algunos directorios.

岚叔 - inline image

Dejemos que el agente principal solucione el problema. Confirmado, no hay problema.

岚叔 - inline image

Luego verificamos docker ps en la máquina host. Puedes ver que Docker se inició. Perfecto~

岚叔 - inline image

Aspecto destacado 6 de Hermes: La configuración de múltiples perfiles (instancias de agente) es amigable. Una frase y Hermes lo hace. En Lobster, básicamente todavía necesitaba iniciar sesión en el backend para ajustar.

Octavo: Multiagente

Multiagente necesita un artículo aparte. Aquí solo hay un resumen de nuestra wiki. Se pueden activar diferentes capacidades multiagente bajo la misma sesión. Por supuesto, también hay multiagente completamente aislado, que es el multiperfil mencionado anteriormente.

岚叔 - inline image

Activar un subagente en una conversación es muy simple; solo di una palabra. Ejemplo:

"Por favor, genera tres subagentes para que discutan los pros y los contras de Hermes entre sí."

岚叔 - inline image

Noveno: Copia de seguridad

Si decides cambiar a Hermes Agent, la copia de seguridad es esencial.

Se recomiendan tres capas de copia de seguridad:

Capa 1: Habilitar git local. Un paso más allá es hacer push a GitHub. Se sugiere hacer push a un repositorio privado. .env no debe subirse (configurar .gitignore), usar copia de seguridad en disco local.

Capa 2: Copia de seguridad en otros directorios locales (preferiblemente otros discos) + tareas programadas.

Apéndice, archivo de script clave:

text
1#!/bin/bash
2BACKUP_NAME="hermes_full_backup_$(date +%Y%m%d_%H%M%S)"
3BACKUP_DIR="/tmp/$BACKUP_NAME"
4DEST_DIR=~/hermes_backups
5
6mkdir -p $BACKUP_DIR/hermes
7mkdir -p $DEST_DIR
8
9echo "📦 Empaquetando configuración principal..."
10cp ~/.hermes/config.yaml $BACKUP_DIR/hermes/
11cp ~/.hermes/.env $BACKUP_DIR/hermes/
12cp ~/.hermes/MEMORY.md $BACKUP_DIR/hermes/ 2>/dev/null
13
14echo "🧠 Empaquetando base de datos y sesiones..."
15cp ~/.hermes/state.db $BACKUP_DIR/hermes/
16# Si las sesiones son grandes, puedes hacer copia de seguridad solo de archivos recientes; aquí hacemos copia de seguridad de todos
17cp -r ~/.hermes/sessions $BACKUP_DIR/hermes/ 2>/dev/null
18
19echo "🔧 Empaquetando extensiones y auditorías..."
20cp -r ~/.hermes/plugins $BACKUP_DIR/hermes/ 2>/dev/null
21cp -r ~/.hermes/audit_logs $BACKUP_DIR/hermes/ 2>/dev/null
22cp -r ~/.hermes/skills $BACKUP_DIR/hermes/ 2>/dev/null
23cp -r ~/.hermes/cron $BACKUP_DIR/hermes/ 2>/dev/null
24
25echo "👥 Empaquetando todos los datos de Perfiles..."
26# Profile contiene todas las configuraciones y bases de datos de clones como worker
27cp -r ~/.hermes/profiles $BACKUP_DIR/hermes/ 2>/dev/null
28
29echo "📦 Comprimiendo..."
30tar -czf $DEST_DIR/$BACKUP_NAME.tar.gz -C /tmp $BACKUP_NAME
31rm -rf $BACKUP_DIR
32
33echo ""
34echo "✅ ¡Copia de seguridad completada!"
35echo "📍 Ruta: $DEST_DIR/$BACKUP_NAME.tar.gz"
36echo "📊 Tamaño: $(du -h $DEST_DIR/$BACKUP_NAME.tar.gz | cut -f1)"

Capa 3: Copia de seguridad remota: como discos; git push a remoto; otros servidores; o almacenamiento de objetos de terceros, etc.

Décimo: Habilidad

No hay mucho que decir aquí, solo instala tus habilidades de uso común.

Hermes es muy inteligente; revisa las habilidades. Identifica nuestras tareas y automáticamente resume y solidifica el proceso en una Habilidad.

Condición de activación: En config.yaml, vemos que creation_nudge_interval tiene un valor predeterminado de 15 (las versiones antiguas pueden ser 10).

岚叔 - inline image

Este parámetro significa que cada 15 ciclos de herramientas, se activa una revisión de habilidades en segundo plano.

Proceso de revisión de habilidades:

text
1Derivar un agente en segundo plano, tomar una instantánea completa de la conversación actual y hacerse una pregunta:
2
3> "En la conversación anterior, ¿hubo alguna experiencia no trivial que implicara prueba y error, ajuste de dirección o expectativas del usuario sobre diferentes enfoques?"
4
5Luego tres resultados:
61. **Se puede actualizar una habilidad existente** → Llamar a `skill_manage` para actualizar la habilidad existente con nueva experiencia.
72. **Ninguna, pero vale la pena crear** → Llamar a `skill_manage` para crear una nueva habilidad y solidificar metodologías reutilizables.
83. **Nada que valga la pena guardar** → Generar "Nada que guardar". y finalizar.
9
10Todo el proceso se ejecuta en un hilo en segundo plano, no bloquea la conversación del usuario y no modifica el historial de la conversación principal. Si hay una acción, se imprime una línea en la terminal.

Aspecto destacado 7 de Hermes: Convertir automáticamente operaciones valiosas en habilidades permanentes es una característica destacada. La grandeza no necesita más palabras~

岚叔 - inline image

Aspecto destacado 8 de Hermes: No importa cómo salgas (normal/anormal/interrumpido), los mensajes no se pierden. 20 puntos de activación cubren todas las rutas de salida, la escritura incremental y la división de sesiones también aseguran que cada registro de sesión sea completo y no repetitivo.

Debido a limitaciones de espacio, buscaremos una oportunidad para discutir las sesiones en detalle más adelante.

Epílogo

Después de unos días experimentando Hermes, he sentido muchos de sus aspectos destacados. La experiencia general es muy fluida. La estabilidad es mejor que OpenClaw, lo que puede ahorrarnos un 30% del tiempo dedicado a arreglar Lobster.

Lobster generalmente requiere modelos SOTA en el extranjero; de lo contrario, se bloquea fácilmente.

Con Hermes, usamos qwen 3.6 plus en todo momento. Muchas operaciones como configuración y actualizaciones se pueden hacer simplemente conversando con Hermes sin bloquearse, lo cual es muy raro.

Documentos de referencia:

  1. Código fuente: https://github.com/NousResearch/hermes-agent
  2. Wiki escrita por Lan Shu: https://github.com/cclank/Hermes-Wiki
  3. Documentación oficial: https://hermes-agent.nousresearch.com/docs/

Versión de la cuenta oficial: https://mp.weixin.qq.com/s/0SYL-HKbWGj3eToQPqnpBw

Este artículo está escrito a mano basado en la experiencia práctica. La creación no es fácil; los amigos son bienvenidos a apoyar con un triple toque~ 💗

Guardar con un clic

Lee artículos virales en profundidad con IA en YouMind

Guarda la fuente, haz preguntas concretas, resume el argumento y convierte un artículo viral en notas reutilizables en un único espacio de trabajo con IA.

Explora YouMind
Para creadores

Convierte tu Markdown en un artículo de 𝕏 impecable

Cuando publicas tus propios textos largos, dar formato en 𝕏 a imágenes, tablas y bloques de código es un fastidio. YouMind convierte un borrador completo en Markdown en un artículo de 𝕏 impecable y listo para publicar.

Prueba Markdown a 𝕏

Más patrones por descifrar

Artículos virales recientes

Explorar más artículos virales