第1篇:工具与工具集——AI 的“手脚”
Hermes 功能详解第1篇:工具与工具集。AI 怎么联网、查文件、执行命令,全靠这些工具。
这篇带你看懂 Hermes Agent 的“手脚”——工具与工具集,学会怎么给它装上各种技能包。
工具是什么?打个比方
想象 Hermes 是一个万能助理。光有大脑(模型)还不够,它还得有“手脚”去干活:上网搜索、写文件、跑代码、设闹钟……这些“手脚”就是工具(Tools)。
Hermes 把同类工具打包成工具集(Toolsets),就像家里不同抽屉放不同工具:厨房抽屉放锅铲,工具箱放扳手。你可以按需打开或关闭某个抽屉。
第1步:看看 Hermes 自带哪些“手脚”
Hermes 出厂就带了一大抽屉工具,覆盖:
- 上网:
web_search(搜索)、web_extract(提取网页内容) - 终端与文件:
terminal(跑命令)、read_file(读文件)、patch(改文件) - 浏览器:
browser_navigate(打开网页)、browser_snapshot(截图)、browser_vision(看图理解页面) - 媒体:
image_generate(画图)、text_to_speech(文字转语音) - 记忆:
memory(长期记忆)、session_search(翻聊天记录) - 自动化:
cronjob(定时任务,比如每天早上8点帮你查天气) - 智能家居:
ha_*(控制 Home Assistant 里的设备)
想看完整清单?在终端输入:
hermes tools
第2步:按需启用工具集
默认情况下,Hermes 只开了一部分“抽屉”。你可以用 --toolsets 参数指定要用的:
# 只开"上网"和"终端"两个抽屉
hermes chat --toolsets "web,terminal"
或者用交互式配置,逐个勾选:
hermes tools
常用工具集包括:web、search、terminal、file、browser、memory、cronjob 等。注意:X(推特)搜索默认关闭,需要 xAI 账号才能开启。
第3步:选一个“干活环境”(终端后端)
Hermes 的终端工具可以在不同环境里跑命令,就像你可以选择在自家厨房、还是租个中央厨房做饭:
| 后端 | 适合场景 |
|---|---|
local(默认) |
在自己电脑上跑,适合开发和信任的任务 |
docker |
隔离容器,安全、可复现 |
ssh |
远程服务器,推荐——Agent 改不了自己的代码 |
modal |
云端执行,按量付费,可扩展 |
配置方法(以 SSH 为例):
# 在 ~/.hermes/config.yaml 里
terminal:
backend: ssh
然后在 ~/.hermes/.env 里填服务器信息:
TERMINAL_SSH_HOST=my-server.example.com
TERMINAL_SSH_USER=myuser
TERMINAL_SSH_KEY=~/.ssh/id_rsa
第4步:避坑——别让 Shell 拖慢你的 AI
Hermes 跑命令时用的是非交互式 Shell(没有人在终端前等着)。如果你电脑的 .bashrc 里有这些“重家伙”,每条命令都会被拖慢甚至卡死:
- 慢初始化:比如
nvm(Node 版本管理器),每次启动都加载,很耗时 - 等待输入:比如提示你确认、启动 tmux 等
- 乱打印:比如每次启动都输出一段广告文字
解决办法:在 .bashrc 顶部加一个“非交互就提前退出”的守卫:
# ~/.bashrc 顶部加上这段
case $- in
*i*) ;; # 交互式:继续
*) return;; # 非交互式:到此为止
esac
# 重的东西(nvm 等)放在守卫下面
这样 Hermes 跑命令时就不会被这些初始化拖累了。
小结
工具是 Hermes 的“手脚”,工具集是收纳它们的抽屉。你可以按需开关、选不同环境执行,还能通过 Shell 守卫避免踩坑。记住:先 hermes tools 看看有啥,再按需开启。
下篇预告:工具有了,怎么让 AI 记住上次聊到哪了?下一篇讲 记忆与上下文——AI 的“长期记忆”是怎么工作的。
📖 官方文档
本文根据 Hermes Agent 官方文档编写,原文见:官方文档 › getting-started/installation