自动化与运维 railway-deploymentdockergateway-supervisionadmin-dashboarduser-pairingbackup-restoremulti-providermessaging-channels

Hermes Agent Railway 管理模板

通过 Railway 一键部署并集中配置、监管和备份 Hermes Agent。

FollowAgents 评估 · FARS-2.1
谨慎使用
61/ 100 五分制 3.1 / 5
1 2 3 4 5 6
按维度查看评分与理由
1信任安全17 / 29 · 2.9/5

README 描述了仅暴露一个公共进程、Hermes UI 绑定回环地址、统一登录、用户配对审批、网关控制以及恢复前自动生成安全快照,因而最小暴露、确认机制、外部操作和回滚均有实质设计。但未说明细粒度权限、CSRF 防护、Cookie 的 Secure/SameSite 属性或各工具的出站数据边界。凭据与会话保存在持久卷中,完整备份明确为未加密,自动生成的管理员密码还会写入部署日志,因此敏感数据处理只能给薄弱分。Hermes 版本被固定,但 Python 依赖只有无上限的最低版本,也没有锁文件、哈希、漏洞扫描或更新验证。上游 Hermes、Nous Research 和 UI 灵感来源有明确署名,但模板自身的责任主体和许可证不清楚。

2可靠稳定6 / 14 · 2.1/5

部署、配置、代理和监督模型的叙述总体连贯,并说明了网关崩溃后的退避重启。不过“完全通过消息渠道交互、没有聊天 UI”与前文所列原生 Hermes Chat UI 存在轻微表述张力。依赖 Railway、多个第三方模型和消息服务以及运行时安装的 Hermes;除固定 Hermes 引用外,未提供依赖锁定、镜像摘要、离线方案或服务不可用时的降级。日志面板、状态卡和反复失败后停止提供了基本可观察性,但没有具体错误消息、故障分类或排障示例。

3适用触发14 / 18 · 3.9/5

目标受众和主要场景非常明确:面向希望在 Railway 上快速部署 Hermes 的用户,并提供从获取密钥、创建 Telegram Bot 到审批用户的完整新手路径,因此该项充分。文档也区分了向导覆盖范围、Hermes 原生 Keys 页面、支持的提供商/渠道/工具以及容器内更新限制。不过没有详细界定自主代理和各工具能够执行的操作、授权范围或风险边界。聊天触发、配对审批和浏览器管理动作清楚,但针对不同渠道的事件语义与误触发控制未展开。Railway 与本地 Docker 均有说明,持久卷、端口和环境变量也明确;生产域名、反向代理信任、资源需求及其他容器平台适配仍不足。

4规范维护11 / 18 · 3.1/5

README 的功能、入门、变量、支持矩阵、架构、本地运行、升级和致谢组织清晰,安装步骤足以支持普通部署。路由、变量和数据目录命名稳定且具体,但功能面大量继承上游 Hermes,兼容性仅以升级时人工复查 extras 的提示处理。示例覆盖部署和 Telegram 流程,却没有 FAQ、系统化排障或完成的截图。文档坦率指出未加密备份、容器内更新无效和持久卷要求,但未形成完整限制清单。没有任何许可证文本或许可证声明,故 license 为 0。存在固定上游版本和升级方法,但没有模板自身的版本号、发行记录或变更日志。致谢清楚,然而未说明维护者、支持渠道、安全报告路径或维护承诺。

5有效结果9 / 13 · 3.5/5

统一管理后台、原生 UI 代理、配对、日志、网关监督和备份恢复构成了可理解且具有实际用途的交付物;但源码实现、截图和运行证据均未提供,无法确认实际交互质量,因此未给满分。相对于手工编辑配置和分别暴露服务,该模板确实降低了部署与管理摩擦。成本收益说明只涉及免费模型示例和单容器便利性,没有量化 Railway 成本、资源消耗、第三方 API 费用或维护负担。

6证据核验4 / 8 · 2.5/5

多数能力声明集中在 README,当前材料没有 Dockerfile、server.py、模板、测试或配置样例可逐项追踪,因此关于认证、代理、安全快照和监督重启的声明只能视为未由实现佐证的描述。requirements.txt 仅能交叉印证 Starlette、Uvicorn、HTTPX 和 WebSocket 技术栈,无法证实核心行为,跨来源佐证较弱。文档将架构、操作步骤、限制和推荐做法区分得较清楚,并明确标出未加密备份和更新按钮限制;但部分安全与可靠性表述仍是未经代码证明的确定性断言。

证据充分度: 评估于 2026年9月17日 审查版本 dd15db16d3ab
使用前请注意
  • 完整备份包含配置、凭据、聊天记录、记忆和技能且未加密;应将备份视为高敏感机密,并在离开受控存储前加密。
  • 自动生成的管理员密码会打印到部署日志;需限制日志访问、在首次登录后轮换密码,并确认历史日志的保留范围。
  • 材料未说明 CSRF 防护、Cookie 的 Secure/SameSite 设置、登录限速或会话撤销细节,不应仅凭“密码保护”假定互联网暴露是安全的。
  • requirements.txt 使用无上限最低版本且没有锁文件或哈希,重建结果可能随时间变化;部署前应锁定并扫描完整依赖树。
  • 本次仅依据 README 和 requirements.txt 静态评估,未看到或执行 Dockerfile、server.py、测试及实际部署。
评估证据 [1][2]
查看完整评分方法 →

这个 Agent 能做什么,适合哪些场景?

这是一个面向 Railway 的 Hermes Agent 部署模板,在同一容器内运行 Starlette/Uvicorn 管理服务器、原生 Hermes Dashboard 和 Hermes Gateway。公开入口由 server.py 统一提供,包含登录、设置向导、状态与日志接口,并将原生 Hermes UI 反向代理到同一套登录保护之后。管理员可以在网页中配置模型提供商、消息渠道和工具集成,无需直接编辑配置文件。Gateway 作为受监管的子进程运行,崩溃或被 OOM 终止后会按退避策略自动重启。配置、凭据、会话、配对状态和其他 Hermes 数据保存在 /data/.hermes/,可通过持久卷跨重新部署保留,也可打包备份和恢复。它适合希望自托管 Hermes、但更愿意通过浏览器完成部署后运维的用户。

server.py 使用 Starlette 和 Uvicorn 监听 0.0.0.0:$PORT,提供 /login、/logout、/health、/setup 与 /setup/api/*,并把 / 及其他路径反向代理到仅监听 127.0.0.1:9119 的 hermes dashboard。设置向导收集模型提供商密钥、模型名称、消息渠道令牌和工具配置,然后启动 hermes gateway。Gateway 连接 Telegram、Discord、Slack、WhatsApp、Email、Mattermost 或 Matrix,接收消息并调用所配置的模型服务;新用户可在管理界面中批准、拒绝或撤销权限。管理服务器采集 Gateway 输出到环形缓冲区,向日志面板持续推送,并显示运行状态、持续时间、模型及待处理配对请求。它还可以启动、停止或重启 Gateway,在进程异常退出时自动恢复,并将配置、凭据、聊天记录、记忆和技能导出为 ZIP;恢复前会自动创建安全快照。

  1. 希望在 Railway 上快速运行 Hermes Agent、又不想手工维护配置文件的个人用户。
  2. 需要让 Hermes 同时接入 Telegram、Discord、Slack 等消息渠道的小型团队管理员。
  3. 需要通过浏览器观察 Gateway 状态、实时日志和崩溃恢复情况的部署维护者。
  4. 需要审批机器人新用户并能随时撤销访问权限的私有社区运营者。
  5. 希望把配置、聊天记录、记忆和技能迁移到新 Railway 项目的 Hermes 用户。
  6. 希望在本地 Docker 环境中验证配置,再决定是否部署到 Railway 的开发者。

这个 Agent 有哪些优点和局限?

优点
  • 设置向导覆盖常用模型提供商、七类消息渠道和多种搜索、抓取、语音、图像及记忆集成,日常配置无需直接编辑文件。
  • 管理界面与原生 Hermes Dashboard 共用一个 Cookie 登录,且原生 Dashboard 仅绑定回环地址,不直接暴露。
  • Gateway 由 server.py 监管,异常退出或 OOM 后可自动按退避策略重启。
  • 备份范围包含配置、凭据、聊天记录、记忆和技能,恢复前还会自动生成安全快照。
  • 既提供 Railway 部署路径,也给出可复制的本地 Docker 构建与运行命令。
局限
  • 备份 ZIP 不加密,其中可能包含配置、凭据、历史记录和记忆,需要自行安全存储。
  • 持久化依赖正确挂载 /data;缺少持久卷时,重新部署后的配置保留没有保障。
  • Gateway 与管理服务器位于同一容器,README 说明 Railway 不会仅因 Gateway 停止而重启整个服务,因此恢复依赖内置监管逻辑。
  • Hermes 不能通过容器内的 Update 按钮持久升级,必须更改 HERMES_REF 或 Dockerfile 并重新部署。
  • 跨 Hermes 版本升级时需要重新核对 Dockerfile 安装 extras 与上游 pyproject.toml,存在维护成本。
  • 仓库未声明许可证,采用前无法从所给材料确认再分发或修改条款。

如何安装或部署这个 Agent?

Railway 部署:先准备受支持模型提供商的 API 密钥;如使用 Telegram,还需通过 @BotFather 创建机器人并取得 Bot Token。点击仓库提供的 Railway 部署按钮,设置 ADMIN_PASSWORD,并挂载到 /data 的持久卷;PORT 由 Railway 自动设置。部署完成后打开应用 URL,以 admin 和所设密码登录。也可在本地执行:docker build -t hermes-agent .;随后执行 docker run --rm -it -p 8080:8080 -e PORT=8080 -e ADMIN_PASSWORD=changeme -v hermes-data:/data hermes-agent。然后访问 http://localhost:8080,并使用 admin / changeme 登录。

如何使用这个 Agent?

登录后打开 /setup,在 LLM Provider 中选择提供商并填写 API 密钥和模型名称;例如可选择 OpenRouter。勾选需要的消息渠道并填写相应凭据,例如 Telegram Bot Token,然后点击 Save & Start。向已配置的机器人发送消息;首次联系的用户会出现在管理界面的 Users 区域,管理员点击 Approve 后即可使用。运行期间可从浏览器查看状态和实时日志,并启动、停止或重启 Gateway。需要迁移时下载完整 ZIP 快照,在另一套部署中执行恢复。升级 Hermes 时应设置 Railway 服务变量 HERMES_REF 并重新部署,或修改 Dockerfile 中的 ARG HERMES_REF;容器内的 Hermes Update 按钮不会完成持久升级。

常见问题

运行它需要付费模型账户吗?
必须提供受支持模型服务的凭据。文档以 OpenRouter 为入门示例,并指出可选择免费模型,但没有承诺模型、Railway 或消息渠道服务始终免费。
原生 Hermes Dashboard 会直接暴露到公网吗?
不会。它绑定到 127.0.0.1:9119,只能通过 server.py 的反向代理访问,并与设置向导共用登录保护。
Gateway 崩溃后会怎样?
server.py 会使用退避策略自动重启 Gateway;如果连续失败多次则停止尝试。日志可在管理面板中查看。
能否把现有部署完整迁移到新项目?
可以下载包含配置、凭据、聊天历史、记忆和技能的 ZIP 快照,并恢复到新项目。备份未加密,必须谨慎处理。
是否只能使用 OpenRouter?
不是。向导列出了 Anthropic、Google AI Studio、xAI、DeepSeek、AWS Bedrock、Azure Foundry及多种其他提供商,也支持 OpenAI 兼容的自定义端点;其他 Hermes 支持的提供商可在原生 Dashboard 的 Keys 页配置。

相关 Agents