Hermes Agent 附带了一个广泛的内置工具注册表,涵盖网页搜索、浏览器自动化、终端执行、文件编辑、记忆、委托、RL 训练、消息投递、Home Assistant 等。
可用工具
工具分类
使用工具集
# 使用特定工具集 hermes chat --toolsets "web,terminal" # 查看所有可用工具 hermes tools # 配置每个平台的工具(交互式) hermes tools
常用工具集包括:
hermes-cli
hermes-telegram
mcp-<server>
终端后端
终端工具可以在不同的环境中执行命令:
配置
# ~/.hermes/config.yaml terminal: backend: local # 或: docker, ssh, singularity, modal, daytona cwd: "." # 工作目录 timeout: 180 # 命令超时时间(秒)
Docker 后端
terminal: backend: docker docker_image: python:3.11-slim
SSH 后端
推荐用于安全场景——agent 无法修改自己的代码:
terminal: backend: ssh
# 在 ~/.hermes/.env 中设置凭据 TERMINAL_SSH_HOST=my-server.example.com TERMINAL_SSH_USER=myuser TERMINAL_SSH_KEY=~/.ssh/id_rsa
Modal(无服务器云)
uv pip install modal modal setup hermes config set terminal.backend modal
容器资源
terminal: backend: docker container_cpu: 1 # CPU 核心数 container_memory: 5120 # 内存 MB(默认 5GB) container_disk: 51200 # 磁盘 MB(默认 50GB) container_persistent: true # 跨会话持久化
容器安全
所有容器后端都使用安全加固运行:
后台进程管理
启动后台进程并管理它们:
terminal(command="pytest -v tests/", background=true) # 返回: {"session_id": "proc_abc123", "pid": 12345} # 然后使用 process 工具管理: process(action="list") # 显示所有运行中的进程 process(action="poll", session_id="proc_abc123") # 检查状态 process(action="wait", session_id="proc_abc123") # 阻塞直到完成 process(action="log", session_id="proc_abc123") # 完整输出 process(action="kill", session_id="proc_abc123") # 终止 process(action="write", session_id="proc_abc123", data="y") # 发送输入
PTY 模式(pty=true)启用交互式 CLI 工具如 Codex 和 Claude Code。
Sudo 支持
如果命令需要 sudo,系统会提示您输入密码(为会话缓存)。或设置 SUDO_PASSWORD 在 ~/.hermes/.env 中。
警告:在消息平台上,如果 sudo 失败,输出会包含添加到 ~/.hermes/.env 的提示。
提示:使用 hermes tools 命令可以交互式配置每个平台启用的工具。
hermes tools