1. 项目定位与用途
Hermes WebUI 是 Hermes Agent 的官方轻量级 Web 界面,定位为终端功能的完全对等替代方案。其核心用途是为用户提供通过浏览器访问和管理 Hermes AI 代理的图形化方式,保留所有 CLI 能力的同时提升操作便捷性。项目强调无需额外配置,直接复用现有 Hermes 环境,包括模型、记忆和工具集,实现开箱即用的体验。
nesquena/hermes-webui:Hermes WebUI 是 Hermes Agent 的轻量级 Web 界面,提供与终端完全对等的功能体验,通过三面板布局和 SSH 隧道安全本页整理它解决什么问题、适用场景、安装方式和使用方法。
Hermes WebUI 是 Hermes Agent 的轻量级 Web 界面,提供与终端完全对等的功能体验,通过三面板布局和 SSH 隧道安全访问,让用户能在浏览器中便捷管理具有持久记忆的 AI 代理。
Hermes WebUI 是 Hermes Agent 的官方轻量级 Web 界面,定位为终端功能的完全对等替代方案。其核心用途是为用户提供通过浏览器访问和管理 Hermes AI 代理的图形化方式,保留所有 CLI 能力的同时提升操作便捷性。项目强调无需额外配置,直接复用现有 Hermes 环境,包括模型、记忆和工具集,实现开箱即用的体验。
WebUI 提供三面板 Claude 风格布局:左侧管理会话、项目和工具调用卡片;中间进行实时对话;右侧浏览工作区文件并支持内联预览。功能上与 CLI 保持 1:1 parity,包括会话历史、工具调用、文件操作等全部操作。界面支持深色与浅色主题切换,并允许配置助手显示名称和访问密码。所有交互均通过现有 Hermes Agent 执行,不引入额外依赖或服务。
后端基于 Python,仅依赖 pyyaml 库,其余功能调用 Hermes Agent 的现有环境;前端使用原生 JavaScript、HTML 和 CSS,无任何框架或打包器。API 层包含认证、配置、路由、工作区、流式响应等模块。配置通过环境变量驱动,支持自动发现机制。服务设计为通过 SSH 隧道访问,避免直接暴露到公网,符合安全最佳实践。Docker 部署选项通过 docker-compose.yml 提供。
安装步骤基于仓库提供的脚本与配置模板:首先复制 .env.example 为 .env,根据注释配置 HERMES_WEBUI_AGENT_DIR(指向 Hermes Agent 目录)、HERMES_WEBUI_PORT 等参数,其他选项可留空由自动发现填充。然后执行 start.sh 启动服务,或使用 docker-compose up 进行容器化部署。确保目标机器已安装 Python 并拥有对 Hermes Agent 目录的读取权限。
启动服务后,需通过 SSH 隧道将本地端口转发到服务器:ssh -L 8787:localhost:8787 user@host。随后在浏览器访问 http://localhost:8787 即可使用界面。左侧面板用于切换会话、查看工具调用和管理项目标签;中间输入框进行对话;右侧文件浏览器支持上传、下载、编辑和预览工作区文件。所有操作均实时同步到 Hermes Agent 的状态中。
主要适用于已部署 Hermes Agent 的用户,希望通过浏览器进行远程管理;或偏好可视化界面而非终端的日常交互。也适合需要同时监控会话历史、实时聊天和工作区文件的复杂任务场景。注意:WebUI 本身不提供 AI 模型,必须依赖外部 Hermes Agent 环境;默认绑定到 127.0.0.1,生产环境应严格通过 SSH 隧道访问,避免直接暴露服务。
是的,README 明确声明提供 Full parity with the CLI experience,即所有终端中能执行的操作,在 WebUI 中均可完成,包括会话管理、工具调用、文件操作等。
不需要。WebUI 仅作为界面层,所有 AI 推理和工具执行均由现有的 Hermes Agent 环境处理。仓库中 requirements.txt 仅依赖 pyyaml,heavy ML/agent 依赖由 Hermes Agent 的虚拟环境提供。
项目设计为通过 SSH 隧道访问。默认绑定到 127.0.0.1,启动后使用 ssh -L 8787:localhost:8787 user@host 将服务器端口转发到本地,然后在浏览器访问 http://localhost:8787,避免直接暴露服务到公网。
关键配置包括 HERMES_WEBUI_AGENT_DIR(指向 Hermes Agent 目录)、HERMES_WEBUI_PORT(监听端口,默认 8787)和 HERMES_WEBUI_STATE_DIR(状态存储路径)。其他如 Python 路径、默认工作区等均可留空由自动发现机制填充。
支持。仓库包含 Dockerfile 和 docker-compose.yml 文件,可通过容器化方式部署。具体命令参考 docker-compose.yml 中的服务定义,但 README 中未明确给出完整 Docker 运行步骤,建议结合文件内容操作。