Hermes-agent 在Telegram 使用多Agent 绑定不同的telegram bot
基础知识
openclaw 是整个系统用一份配置文件 config.json , 多 agent 是写在这份配置文件里面的.
官方文档
Hermes-agent 的多agent方案和 openclaw 不一样.
openclaw 的 tui 里面可以用 /agent 命令切换 agent
hermes 是为新agent直接生成了一个命令行的"命令", 就像原本的hermes 命令一样使用.
比如, 你建了一个新的 agent/profile
hermes profile create agent-watch
那么:
你想配置模型
agent-watch model
你想设置 YOLO 模式
agent-watch config set approvals.mode off
hermes 的每个agent (或者说 profile) 都有自己的 完整运行环境. TA们只共享代码逻辑.
每个agent 有自己的 .env, SOUL.md, config.yaml
所以, 每个agent 有自己的 telegram bot token
准备 telegram bot
需要(向 @botfather 申请)若干个 telegram bot (本文以4个bot为例)
注意, 不包括 hermes 默认 agent 绑定的那个 telegram bot (如果有的话)
以上过程略.
保存好这些bot 的username 和 token , 假设是
@CrazyAgentWatchBot1234567890:AAHkMpXv2nQrWsYd8bJtLfCeUo9GiN1KmZw@CrazyAgentDesignBot2345678901:AABxRqNj5vTgKhEa3cWmYsPdFu7LiOz4Xbn@CrazyAgentCodeBot3456789012:AAEvNuGz3tFwBqXk7yRmJcSh5OaDpI8LlTx@CrazyAgentTestBot4567890123:AAHkMpXv2nQrWsYd8bJtLfCeUo9GiN1KmZw
建立多个agent
向默认 agent hermes 说
新建一些agent.这些agent从你自己clone出去.注意, 使用同样的模型参数, 即同样的 base url, api key, model.这些agent是:agent-watch,agent-design,agent-code,agent-test注意, 不包括默认的 agent hermes给这些agent配置不同的 名称, telegram bot1号 agent名称 = agent-watchusername = @CrazyAgentWatchBottoken = 1234567890:AAHkMpXv2nQrWsYd8bJtLfCeUo9GiN1KmZw2号 agent名称 = agent-designusername = @CrazyAgentDesignBottoken = 2345678901:AABxRqNj5vTgKhEa3cWmYsPdFu7LiOz4Xbn3号 agent名称 = agent-codeusername = @CrazyAgentCodeBottoken = 3456789012:AAEvNuGz3tFwBqXk7yRmJcSh5OaDpI8LlTx4号 agent名称 = agent-testusername = @CrazyAgentTestBottoken = 4567890123:AAHkMpXv2nQrWsYd8bJtLfCeUo9GiN1KmZw
等hermes忙完, 你就可以找这些 bot 私聊试试了.
* 如果你是 custom provider, 那么 base url, api key 是在 config.yaml 文件里面一起复制了. 就是正常的.
但我现在的状态是 Nous Portal (hermes背后的公司) OAuth 认证的 (嫖免费的小米模型). 所以找 新 bot 私聊会报错没有认证.
一个方案是, 你找默认agent hermes聊, 把这个问题复制粘贴 , 让Ta自己解决. TA会找 auth.json 然后复制到每个新agent. 就可以用了. 但是这个方案在 api key 刷新时会出问题.
另一个方案是, 你自己给每个新 agent 配置一遍 model
agent-watch modelagent-design modelagent-code modelagent-test model
操作过程就像你安装 hermes 时 配置模型一样.
但是这个方案, 如果某个agent你长期不用, 突然要用的时候就会报api key过期.
* 接下来(有可能)会遇到另一个问题. 你问 agent-watch, Ta会回答说自己是Hermes
解决方案就是你让TA去把其它agent的SOUL.md文件改改
========
评论
发表评论