Hermes 控制台

为 Hermes AI 智能体栈提供自托管的密码门禁式 Web 控制面板与运维控制面。

Star 数
★ 901
最近更新
4 个月前
License
MIT
主语言
JavaScript

30 秒速览

运行形态
自托管服务网页应用
可在哪里用
平台专用
费用
免费,无需付费服务
上手难度
中 · 需要几步配置
开始前需要
Node.js 20+安装在同一台机器上的 Hermes AgentPATH 中的 hermes CLIExpressWebSocketbetter-sqlite3Shell / 命令行网络访问本地文件系统MCP Server
典型场景
个人开发者在一台 VPS 上同时跑多个 Hermes profile,希望通过一个浏览器页面切 profile 聊天、看会话、管 cron,而不必反复 SSH。
不适合
  • 无法在 Hermes Agent 同一台机器上部署的团队
  • 需要 Docker 或 Kubernetes 容器化交付的运维团队
  • 需要多租户隔离或审计日志的企业合规场景

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

Hermes Control Interface(HCI)是 Hermes AI agent 栈的自托管 Web 控制台,版本 3.6.1,采用 MIT 许可。后端为单体 Express 服务(server.js,约 6000+ 行),前端是 Vanilla JS + Vite 的 11 页单页应用,通过 WebSocket 与 xterm.js 实现浏览器终端和实时对话流,用 Chart.js 绘制用量图表、better-sqlite3 读取 kanban.db。它把智能体配置、网关生命周期、文件浏览与编辑、cron 任务、MCP 服务器控制、token 用量分析和 Office v3 三面板蜂群监控集中在同一个密码门禁之后,并内置 CSP、CSRF、全局限流、WebSocket RBAC 和 20 项权限 / 3 种角色(admin、viewer、custom)的访问控制。部署边界很明确:HCI 必须与 Hermes Agent 安装在同一台机器上,且依赖 PATH 中的 hermes CLI,默认监听端口 10274。它不替代 Hermes 本身,而是作为本地运维与可观测层存在。

HCI 读取 ~/.hermes 状态目录(可通过 HERMES_CONTROL_HOME 覆盖)下的 config.yaml、日志与 skills,解析 kanban.db 获取任务流水线,并在浏览器里暴露 30+ 条 REST 路由:GET /api/office/kanban 返回看板任务与依赖链接,GET /api/office/kanban/:id 返回任务详情、运行历史、事件与评论,GET /api/office/kanban/:id/workspace-file 读取工作区代码与日志文件,POST /api/office/kanban/:id/action 执行 done/start/reopen 等快捷操作,GET /api/office/agent-states 输出智能体健康网格。它调用 hermes CLI 获取智能体状态、启停网关、管理 profile 与 skills,通过 WebSocket 网关 API 转发实时聊天流与工具调用卡片(含可折叠 JSON 视图、停止按钮、会话恢复与从消息分叉)。MCP 页面作为控制平面提供列表、启动、停止、重启、日志 tail 与配置编辑,共 11 条 REST 路由。Monitor 页展示网关日志与 CPU/RAM 指标,Usage 页做 token 趋势、成本预测与预算告警,Maintenance 页负责备份、恢复、HCI 自更新与系统诊断。

  1. 个人开发者在一台 VPS 上同时跑多个 Hermes profile,希望通过一个浏览器页面切 profile 聊天、看会话、管 cron,而不必反复 SSH。
  2. 小型多智能体团队(如社群运营、内容团队)需要用 createUser('cx-team','password','custom',['jorah']) 这类 allowed_profiles 限制每位成员只能看到并操作被授权的智能体。
  3. 需要随时启停与排障 MCP 服务器的运维人员,用 MCP 页面在线看日志 tail、改配置文件、重启进程,无需登录服务器。
  4. 关注 token 成本的项目负责人,用 Usage 页的每日趋势、成本预测与预算告警评估智能体使用开销。
  5. 跑蜂群流水线的团队,用 Office v3 的三面板(智能体健康、8 状态看板、实时事件流)跟踪 triage 到 done 的任务进度与依赖关系。
  6. 希望把控制台装成 PWA 的移动场景用户,在手机主屏一键打开离线缓存的仪表盘查看系统健康。

如何安装或部署这个 Agent?

前提:Node.js 20+,同一台机器上已安装 Hermes Agent 且 hermes CLI 在 PATH 中。

git clone https://github.com/xaspx/hermes-control-interface.git
cd hermes-control-interface
cp .env.example .env     # 设置 HERMES_CONTROL_PASSWORD 与 HERMES_CONTROL_SECRET
npm install && npm run build
node server.js            # → http://localhost:10274

环境变量:HERMES_CONTROL_PASSWORD(登录密码,bcrypt 哈希)、HERMES_CONTROL_SECRET(会话密钥,随机字符串)、PORT(默认 10274)、HERMES_CONTROL_HOME(默认 ~/.hermes)、HERMES_PROJECTS_ROOT(默认仓库上级目录)。生产环境的 nginx、systemd、Cloudflare 配置见 docs/INSTALL.md。

如何使用这个 Agent?

启动 node server.js 后访问 http://localhost:10274,用 HERMES_CONTROL_PASSWORD 登录。左侧导航进入各页面:Chat 走 WebSocket 实时流式对话并支持多 profile 切换与工具调用卡片;Workspace 将 Hermes 限定在某个项目目录内浏览、编辑文件并对话;Agents 做 profile CRUD 与网关生命周期管理;Office 查看智能体健康、看板与实时事件流;Monitor 看网关日志与 CPU/RAM;Usage 看 token 趋势与预算告警;MCP 启停服务器并 tail 日志;Maintenance 做备份、恢复与自更新。命令行更新:git pull upstream main && npm install && npm run build,然后执行 systemctl restart <你的 HCI 服务名>。

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

优点
  • 把浏览器终端(xterm.js)、文件浏览编辑、聊天、cron、MCP 控制、日志与 token 分析收进单个密码门禁的 11 页 SPA,减少多工具切换。
  • Office v3 采用零子进程的智能体状态获取(约 100ms 对比 3000ms),直接读 config.yaml 与 kanban.db。
  • 安全面较完整:无 unsafe-eval 的 CSP、所有变更端点的 CSRF、全局与聊天限流、WebSocket RBAC、路径穿越与 XSS 防护。
  • 提供 allowed_profiles 的 profile 级访问隔离与 requireProfileAccess 中间件,多智能体团队可按人授权。
  • 支持 PWA 安装与 service worker 离线缓存,并带新版本自动更新。
局限
  • 强绑定 Hermes Agent:必须与 Hermes 装在同一台机器且 hermes CLI 在 PATH 中,无法独立或跨主机部署。
  • server.js 是约 6000+ 行的单体文件,二次开发与审计的认知成本高。
  • 凭据以环境变量明文配置在 .env 中,README 未说明密钥轮换或外部密钥管理方案。
  • 仓库未提供 Docker 镜像或容器化部署路径,生产化依赖自行搭建 nginx 与 systemd。
  • 未给出并发规模、权限边界之外的租户隔离或安全审计日志的公开证据,企业级合规需自行评估。

这个 Agent 与同类方案有什么区别?

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
Hermes 控制台 当前 35 · 缺口较多 自托管服务免费 ★ 901 4 个月前 JavaScript —
Hermes HUD 网页版 55 · 缺口较多 命令行工具免费 + 模型费 ★ 1.9k 25 天前 Python —
Metorial:AI 代理的身份与访问控制层 50 · 缺口较多 代码库 / SDK免费版 + 付费版 ★ 3.4k 1 天前 TypeScript ChatGPT · Codex · Claude Code · Claude.ai
Clawith — 团队版 OpenClaw 45 · 缺口较多 自托管服务免费 + 模型费 ★ 4.2k 2 个月前 Python OpenAI API · Claude API

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
35/ 100 五分制 1.8 / 5
信任安全 10/29
可靠稳定 5/14
适用触发 6/18
规范维护 7/18
有效结果 4/13
证据核验 3/8
查看各维度的扣分理由
信任安全10 / 29 · 1.7/5

README 声称具备 CSP、CSRF、速率限制、RBAC、路径遍历防护等安全特性,但未提供具体实现代码或配置证据;权限模型(20 权限/3 角色)仅以文字描述,无法验证最小权限是否真正落实。敏感数据处理(密码、会话密钥)仅提及 bcrypt 和随机字符串,缺乏密钥管理、日志脱敏等细节。依赖安全方面,package.json 列出多个依赖但无审计报告或版本锁定策略。外部效应(MCP 控制、文件编辑、终端)缺乏确认机制或回滚说明。来源归属仅指向 GitHub 仓库,发布者身份未经验证。整体证据薄弱,仅能给予 1 分。

可靠稳定5 / 14 · 1.8/5

README 与 package.json 版本号不一致(3.6.1 vs 3.6.2),存在自洽性问题。依赖可用性方面,未提供锁文件或依赖解析策略,且 postinstall 脚本重建 better-sqlite3 可能因环境差异失败。失败消息处理未在文档中说明,测试文件仅覆盖前端工具函数和模态框,未涉及错误处理路径。因此可靠性证据不足,仅得 1 分。

适用触发6 / 18 · 1.7/5

README 描述了面向 Hermes 代理栈的多种使用场景(聊天、文件管理、MCP 控制等),但未明确说明适用边界或限制条件。触发精度方面,未定义代理触发条件或输入验证规则。环境适配仅提及 Node.js 20+ 和 Hermes CLI,缺乏对操作系统、资源要求或网络配置的详细说明。因此适应性证据有限,仅得 1 分。

规范维护7 / 18 · 1.9/5

信息架构通过 README 的表格和文档链接有所体现,但文档内容未在本次审查中提供,无法验证完整性。安装说明提供了快速启动步骤,但生产部署细节依赖外部文档。命名稳定性方面,版本号不一致暗示命名或版本管理可能不稳定。示例和 FAQ 在 README 中有所包含,但缺乏深度。已知限制未明确列出。许可证为 MIT,内容完整,给予 2 分。版本变更日志未提供,维护责任未明确(发布者未验证)。整体惯例得分较低。

有效结果4 / 13 · 1.5/5

输出可用性方面,README 展示了丰富的功能界面和截图,但未提供实际输出示例或用户反馈。边际价值在于为 Hermes 代理提供统一管理界面,但缺乏与替代方案的对比或量化收益。成本效益未讨论资源消耗或部署成本。因此有效性证据不足,仅得 1 分。

证据核验3 / 8 · 1.9/5

README 中的声明(如安全特性、性能提升)缺乏可追溯的代码引用或测试证据。交叉来源验证方面,仅有的测试文件覆盖范围有限,无法 corroborate 主要功能声明。事实与推断分离方面,文档混合了事实描述和营销语言,难以区分。因此可验证性得分较低,仅得 1 分。

风险与缓解建议
  • 发布者身份未经验证,无法确认维护责任和更新路径。
  • 版本号在 README 和 package.json 中不一致,可能影响依赖管理和部署。
  • 安全特性仅停留在文档声明,缺乏实现代码或配置证据,实际防护效果未知。
  • 依赖项未提供锁文件或审计报告,存在供应链风险。
  • 测试覆盖范围有限,主要集中在前端工具函数,未验证核心后端功能。
证据充分度:低 评估于 2026年9月16日 审查版本 ee0f5804e631
查看完整评分方法 →

最近版本

来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。

  1. v3.6.2 v3.6.2 - Profile-Based Access Control & Windows Compatibility
    发布说明摘录
    v3.6.2 — Profile-Based Access Control & Windows Compatibility Release date: 2026-06-28 A maintenance release focusing on two community-contributed improvements: profile-based access isolation for multi-agent deployments, and Windows compatibility fixes. ✨ Feature: Profile-Based Access Control (PR #78 by @sfalsin) What it does: Restricts which Hermes agent profiles each HCI user can see and manage. In multi-agent setups where you run multiple Hermes profiles (e.g. "jorah", "varys", "production"), this prevents users from accessing profiles they shouldn't. …
    在 GitHub 查看 ↗
  2. v3.6.1 v3.6.1 — Workspace
    发布说明摘录
    🚀 v3.6.1 — Workspace Editor PR #77 — Added Workspace section, a self-contained code editor with 3-panel layout inside HCI. ✨ Features - File Tree — Browse & navigate workspace directory with colored file icons - Code Editor — Read/write files with Ctrl+S save and dirty indicator - Workspace Chat — Streaming SSE chat with Hermes, project context automatically shared - Draggable Dividers — Resize all 3 panels freely 🔧 Fixes from Audit - i18n: Added topbar.workspace label for navbar - CSRF: Migrated file read/write endpoints to use api() wrapper …
    在 GitHub 查看 ↗
  3. v3.6.0 HCI v3.6.0 — Office v3 Kanban Swarm Monitor
    发布说明摘录
    🎯 Office v3 — Swarm Monitor Dashboard 3-panel dashboard: Agents · Kanban · Live Feed - Popup v2 — run expansion, workspace files, event enrichment, load-more - Live Feed filter — agent dropdown + keyword search + match badge - Polling fix — 2s→30s + in-flight guard (no spawn storms) - Agent states — config.yaml + kanban.db (~100ms, zero subprocess) 🎨 Design System - Unified HCI dropdown selects (canonical SVG arrow + light/dark mode) - All dropdowns: Chat agents, Office reassign, Live Feed filter 🛡 Security …
    在 GitHub 查看 ↗
在 GitHub 查看 ↗ 安装 ↓

相关 Agents