Hermes Agent提供五种自动化流程搭建路径:一、CLI交互式命令快速构建;二、YAML定义结构化技能文件用于生产环境;三、自主学习循环生成技能;四、HTTP webhook集成外部调度器;五、Python SDK嵌入自定义调度逻辑。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您希望利用Hermes Agent构建可复用、可调度的自动化流程,但尚未掌握其工作流编排机制,则可能是由于缺乏对CLI指令、技能生成规则或插件调用方式的系统理解。以下是实现自动化流程搭建的多种可行路径:
一、通过CLI交互式命令构建即时流程
该方法适用于快速验证任务逻辑、无需编写代码即可组合基础工具链。Hermes Agent内置终端交互界面(TUI),支持斜杠命令触发预设操作序列,并自动记录执行上下文以供后续复用。
1、启动Hermes Agent终端交互界面:在命令行中输入hermes并回车。
2、进入任务模式:在聊天窗口中输入/task,触发任务创建向导。
3、描述目标行为:使用自然语言输入任务意图,例如“每天上午9点抓取知乎热榜前10条标题并保存为CSV”。
4、确认工具调用:系统将自动匹配web_scraper、file_writer等已启用插件,并提示是否授权执行。
5、设定调度参数:输入schedule: daily@09:00完成时间配置,流程即刻注册进后台定时器。
二、基于YAML定义结构化技能文件
该方法适用于需要版本控制、跨环境迁移或多人协作的生产级自动化流程。所有技能均以YAML格式固化,包含输入参数约束、执行步骤顺序、错误重试策略及回调钩子。
1、在项目根目录下新建skills子目录:mkdir -p ~/.hermes/skills。
2、创建技能文件:nano ~/.hermes/skills/daily_zhihu.yml。
3、填入标准技能模板:
name: daily_zhihu_hotlist
description: "Fetch Zhihu hot list every morning"
triggers:
- schedule: "0 0 9 * * ?"
inputs:
limit: { type: integer, default: 10 }
steps:
- plugin: web_scraper
params: { url: "https://www.zhihu.com/billboard", selector: ".HotList-item a" }
- plugin: data_filter
params: { field: "text", min_length: 5 }
- plugin: file_writer
params: { path: "/tmp/zhihu_hot_{{ now|date:'YYYYMMDD' }}.csv", format: "csv" }
三、利用自主学习循环生成技能
该方法适用于重复性高、模式清晰但尚未抽象成规范流程的操作场景。Hermes Agent会在用户连续三次以上以相似语义下达同类指令后,主动发起技能归纳请求,并生成可编辑的Markdown技能草稿。
1、在TUI中连续三次执行相同类型任务,例如依次输入:
“提取豆瓣电影Top250第1页片名和评分”
“提取豆瓣电影Top250第2页片名和评分”
“提取豆瓣电影Top250第3页片名和评分”
2、系统检测到操作序列一致性后,弹出提示:“检测到重复模式,是否生成技能?[Y/n]”。
3、键入Y确认,Agent自动生成技能草稿文件至~/.hermes/skills/auto_douban_page_v1.md。
4、编辑该文件,补充分页参数变量与异常处理说明,保存后执行hermes skill load auto_douban_page_v1加载生效。
四、集成外部调度器触发HTTP webhook
该方法适用于需与企业现有运维体系(如Jenkins、Airflow、Prometheus Alertmanager)对接的场景。Hermes Agent提供标准REST接口接收JSON格式任务载荷,支持身份校验与异步状态轮询。
1、确保Agent运行时启用Web服务端口:启动命令中加入参数--web-port 8080。
2、获取认证Token:执行hermes token create --scope=webhook --ttl=3600,保存返回值。
3、构造POST请求体:
{
"task_id": "webhook_zhihu_20260515",
"skill": "daily_zhihu_hotlist",
"params": {"limit": 15},
"callback_url": "https://your-webhook-endpoint.com/handle"
}
4、发送请求:
curl -X POST http://localhost:8080/v1/tasks \
-H "Authorization: Bearer <TOKEN>" \
-H "Content-Type: application/json" \
-d @payload.json
五、使用Python SDK嵌入自定义调度逻辑
该方法适用于已有Python工程需深度集成Hermes能力的场景。SDK提供同步/异步提交接口、任务状态监听器及插件直调函数,支持与asyncio、Celery等框架协同运作。
1、安装SDK依赖:pip install hermes-agent[sdk]。
2、初始化Agent实例:
from hermes import Agent
agent = Agent(config_path="config.yaml")
agent.initialize()
3、定义调度函数:
import asyncio
async def run_zhihu_job():
task_id = await agent.submit({
"type": "skill",
"name": "daily_zhihu_hotlist",
"params": {"limit": 10}
})
status = await agent.wait_for_completion(task_id)
print(f"Task {task_id} finished with state: {status['state']}")
4、注册为周期任务:
loop = asyncio.get_event_loop()
loop.create_task(run_zhihu_job())
loop.run_forever()


















