三、工具系统
47+ 内置工具、Toolsets 分组、6 种终端后端、后台进程管理
工具分类
| 类别 | 工具 | 说明 |
|---|---|---|
| 网络 | web_search, web_extract | 网页搜索、内容提取 |
| 终端与文件 | terminal, process, read_file, patch | 命令执行、文件操作 |
| 浏览器 | browser_navigate, browser_snapshot, browser_vision 等 10+ 工具 | 交互式浏览器自动化 |
| 媒体 | vision_analyze, image_generate, text_to_speech | 多模态分析与生成 |
| Agent 编排 | todo, clarify, execute_code, delegate_task | 规划、澄清、代码执行、子代理 |
| 记忆与召回 | memory, session_search | 持久记忆、会话搜索 |
| 自动化与投递 | cronjob, send_message | 定时任务、跨平台消息 |
| 集成 | ha_*, MCP 工具, rl_* | Home Assistant、MCP、RL 训练 |
工具集(Toolsets)
工具按逻辑分组为 toolset,可按平台启用/禁用:
hermes chat --toolsets "web,terminal" # 指定工具集
hermes tools # 查看所有工具
hermes tools # 交互式配置常见 toolset:web, terminal, file, browser, vision, image_gen, skills, tts, memory, cronjob, code_execution, delegation, homeassistant
终端后端
| 后端 | 说明 | 适用场景 |
|---|---|---|
| local | 本地执行(默认) | 开发、可信任务 |
| docker | 隔离容器 | 安全、可复现 |
| ssh | 远程服务器 | 沙箱、Agent 与代码隔离 |
| singularity | HPC 容器 | 集群计算、无 root |
| modal | 云端执行 | Serverless、弹性扩展 |
| daytona | 云端沙箱工作区 | 持久远程开发 |
后台进程管理
# 启动后台进程
terminal(command="pytest -v tests/", background=true)
# 返回: {"session_id": "proc_abc123", "pid": 12345}
# 管理进程
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。