自托管 Hermes Agent 平台
Hermes Agent 是一个可自托管的 AI Agent 平台,支持本地运行、消息网关接入、定时任务和插件系统。本服务器上跑的是 v0.18.2,通过 systemd 管理,对接了多个模型 provider。相比云端 API 服务,本地部署的好处是数据不外泄、模型选择灵活、可以定时触发自动化任务。
部署方式
Hermes 从 git 仓库安装,运行在 Python 3.12 的 venv 中,由 systemd 作为服务托管:
# 版本查看
hermes --version
# → Hermes Agent v0.18.2
# 配置文件位置
~/.hermes/config.yaml
# 安装目录
~/.hermes/hermes-agent/
# systemd 服务
systemctl status hermes-dashboard
模型 Provider 配置
Hermes 的模型调用通过 providers 配置段管理,支持 OpenAI 兼容接口。自定义 provider 配置可以灵活对接各种本地或云端模型,包括通过自定义 provider 挂载 sensenova、xAI 等异构模型。
# ~/.hermes/config.yaml 片段
providers:
openai:
key: $OPENAI_API_KEY
custom:
my-model:
api_base: https://api.example.com/v1
key: $CUSTOM_API_KEY
model: my-custom-model
Cron 定时任务
Hermes 内置 cron 调度器,支持本地定时任务。典型用途包括定时汇总、健康检查和数据收集。任务配置通过 hermes cron CLI 管理:
# 查看运行中的定时任务
hermes cron list
# 运行频率示例
# 每 30 分钟一次 30m
# 每小时一次 1h
# 每天早上 9 点 0 9 * * *
配置安全:API Key 等敏感值应通过环境变量注入,不要直接写在
config.yaml 里。Hermes 在解析配置时支持从环境变量读取 $VAR 形式的引用。Dashboard 服务
hermes-dashboard.service 提供 Web 管理界面,默认监听 9119 端口。通过反向代理接入外网,可以享受和所有其他服务一样的 HTTPS 保护。
本地化与插件
Hermes 的 skill 系统以 SKILL.md 组织,支持按技能域分类。插件化设计让功能扩展不改动核心代码,适合长期维护。