← 返回日报
🌐 机器翻译 · DeepSeek · GitHub

nesquena hermes-webui


以下是您要求的英文文章的中文翻译,已按照保留原文结构、技术术语不翻译、代码块保持原样等要求处理。


nesquena / hermes-webui

Hermes Web UI

Hermes Agent 是一个复杂的自主智能体,它运行在你的服务器上,通过终端或消息应用访问,能够记住所学内容,并且运行时间越长能力越强。Hermes WebUI 是 Hermes Agent 在浏览器中的一个轻量级、深色主题的 Web 应用界面。它与 CLI 体验完全一致——你在终端能做的所有事情,在这个 UI 中都能完成。无需构建步骤、无需框架、无需打包工具。仅需 Python 和原生 JavaScript。

布局:三栏式。左侧边栏用于会话和导航,中间用于聊天,右侧用于工作区文件浏览。模型、配置文件和 workspace 控件位于 composer 底部栏——在编写消息时始终可见。一个圆形上下文环可直观显示 token 用量。所有设置和会话工具都在 Hermes 控制中心(侧边栏底部的启动器)中。

这让你能够通过便捷的 Web UI 获得与 Hermes CLI 几乎 1:1 一致的功能,并且可以通过 SSH 隧道从你的 Hermes 设置安全访问。只需一条命令即可启动,再一条命令即可通过 SSH 隧道在你的电脑上访问。Web UI 的每个部分都使用你现有的 Hermes agent 和现有模型,无需任何额外设置。

目录

大多数 AI 工具每次会话都会重置。它们不知道你是谁、你之前做了什么、或者你的项目遵循什么约定。你每次都要重新解释自己。Hermes 能够在会话之间保留上下文,在你离线时运行定时任务,并且随着运行时间增长,对你的环境越来越了解。它使用你现有的 Hermes agent 设置和现有模型,无需额外配置即可启动。

它与其他 agent 工具的不同之处在于:

| 特性 | OpenClaw | Claude Code | Codex CLI | OpenCode | Hermes | |---|---|---|---|---|---| | 持久记忆(自动) | 是 | 部分† | 部分 | 部分 | 是 | | 定时任务(自托管) | 是 | 否‡ | 否 | 否 | 是 | | 消息应用访问 | 是(15+ 平台) | 部分(Telegram/Discord 预览) | 否 | 否 | 是(10+) | | Web UI(自托管) | 仅仪表盘 | 否 | 否 | 是 | 是 | | 自我改进技能 | 部分 | 否 | 否 | 否 | 是 | | Python / ML 生态 | 否(Node.js) | 否 | 否 | 否 | 是 | | 提供商无关 | 是 | 否(仅 Claude) | 是 | 是 | 是 | | 开源 | 是(MIT) | 否 | 是 | 是 | 是 |

† Claude Code 有 CLAUDE.md / MEMORY.md 项目上下文和滚动自动记忆,但没有完整的跨会话自动召回 ‡ Claude Code 有云管理调度(Anthropic 基础设施)和会话范围的 /loop;没有自托管 cron

最接近的竞争对手是 OpenClaw —— 两者都是始终在线、自托管、开源的 agent,具有记忆、cron 和消息功能。主要区别在于:Hermes 将自动编写和保存自己的技能作为核心行为(OpenClaw 的技能系统以社区市场为中心);Hermes 在更新中更稳定(OpenClaw 有记录的发布回归问题,ClawHub 曾发生涉及恶意技能的安全事件);并且 Hermes 原生运行在 Python 生态中。详见 docs/why-hermes.md 的完整对比。

快速开始

运行仓库的 bootstrap:

git clone https://github.com/nesquena/hermes-webui.git hermes-webui
cd hermes-webui
python3 bootstrap.py

或者继续使用 shell 启动器:

./start.sh

对于自托管 VM 或 homelab 安装,ctl.sh 封装了常见的守护进程生命周期命令,无需使用 fuserpkill

./ctl.sh start          # 后台守护进程,PID 位于 ~/.hermes/webui.pid
./ctl.sh status         # PID、运行时间、绑定主机/端口、日志路径、/health
./ctl.sh logs --lines 100   # 查看 ~/.hermes/webui.log 末尾 100 行
./ctl.sh restart
./ctl.sh stop

ctl.sh start 在守护进程包装器后面以前台/无浏览器模式运行 bootstrap,将日志写入 ~/.hermes/webui.log,并遵循 .env 以及内联覆盖配置,例如 HERMES_WEBUI_HOST=0.0.0.0 ./ctl.sh start

高级功能:动态召回预填充与 Gateway 支持的聊天

两个可选的、自托管部署功能——将动态会话召回预填充附加到浏览器轮次(Joplin/Obsidian/Notion/llm-wiki 路由器),以及通过正在运行的 Hermes Gateway 路由浏览器聊天——在 docs/advanced-chat-setup.md 中有文档说明。大多数用户不需要这些功能。

bootstrap 将执行以下操作:

此 bootstrap 目前不支持原生 Windows。


📖 阅读原文 →