← 返回更新日志

Hermes v2026.6.5

2026-06-06 · GitHub 原文
# Hermes Agent v0.16.0 (v2026.6.5) **发布日期:** 2026年6月5日 **自 v0.15.2 以来:** 874 个提交 · 542 个合并的 PR · 1,962 个文件变更 · 205,216 行新增 · 46,217 行删除 · 399 个已关闭议题(2 个 P0,62 个 P1,16 个安全标记) · 170 位社区贡献者(含合著者) > **「Surface」版本。** Hermes 在你工作的任何地方与你相遇。全新的原生桌面应用——一周内跨越 100 个 PR 和 159 个提交构建而成——让 Hermes 成为真正的 macOS/Linux/Windows 应用程序:一键安装、应用内自更新、拖拽文件到聊天中、状态栏中的内联模型选择器、并发的多配置文件会话、完整的简体中文翻译,以及通过 OAuth 或用户名/密码连接远程 Hermes 网关的能力。与此同时,Web 仪表盘新增了完整的基于浏览器的管理面板(MCP 目录、消息通道、凭据、Webhook、记忆、可插拔的 OIDC/用户名密码登录),首次设置增加了「通过 Nous Portal 快速设置」路径,让你从安装到第一条消息只需几秒钟。默认技能集精简为你真正需要的,NVIDIA/skills 加入了受信任的技能 Hub 源,模型选择器现在可以在所有地方(桌面、Web、TUI、CLI)进行模糊搜索,`/undo` 终于让你可以撤销最近的 N 轮对话。2 个 P0 和 62 个 P1 的关闭也一同包含在内,外加一轮安全修复(CVE-2026-48710 Starlette 锁定、SSRF 环路外加固、子进程凭据剥离)。 --- ## ✨ 亮点 - **Hermes Desktop——真正的原生应用,而非终端包装器**——这是头条新闻。现在有一个 `apps/desktop/` Electron 应用程序,可以像任何其他桌面应用一样安装在 macOS、Linux 和 Windows 上,在应用内部进行自更新,并为 Hermes 所做的一切提供精美的图形界面。你将拥有一个带有流式传输的聊天窗口、可以归档和搜索的会话列表、在聊天区域任何位置拖放文件、剪贴板图片粘贴、Cmd+K 命令面板,以及状态栏中的模型选择器。如果你一直告诉朋友「它是一个 CLI 代理」然后看到他们眼神呆滞——现在你只需发给他们一个安装程序。一周前这些东西都不存在。([#20059](https://github.com/NousResearch/hermes-agent/pull/20059)、[#35607](https://github.com/NousResearch/hermes-agent/pull/35607)、[#37099](https://github.com/NousResearch/hermes-agent/pull/37099)、[#37379](https://github.com/NousResearch/hermes-agent/pull/37379)、[#38631](https://github.com/NousResearch/hermes-agent/pull/38631) —— @OutThisLife、@jquesnelle、@ethernet8023、@austinpickett、@benbarclay) - **将桌面应用连接到远程 Hermes——通过 OAuth 或用户名/密码登录**——桌面应用不必在本地运行 Hermes。将其指向远程 Hermes 网关(你的家庭实验室、托管服务器、队友的服务器),它会通过安全的 WebSocket 连接,使用 OAuth 或用户名/密码登录进行身份验证——无需折腾 `--insecure` 标志或手动复制的会话令牌。每个配置文件可以针对自己的远程主机,你可以在一个窗口中跨多个配置文件运行并发会话,并使用跨配置文件的 `@session` 链接。实际版本:你的笔记本电脑运行一个轻量 GUI,重型代理则运行在你的 API 密钥和计算资源所在之处。([#37888](https://github.com/NousResearch/hermes-agent/pull/37888)、[#38851](https://github.com/NousResearch/hermes-agent/pull/38851)、[#39330](https://github.com/NousResearch/hermes-agent/pull/39330)、[#39778](https://github.com/NousResearch/hermes-agent/pull/39778) —— @benbarclay、@OutThisLife、@teknium1) - **Web 仪表盘现在是一个功能完整的管理面板——从浏览器配置一切**——仪表盘从「查看你的会话」发展成为一个完整的管理界面。新增了 Channels 页面,可以从浏览器设置每个网关消息平台(Telegram、Discord、Slack 等);MCP 目录的管理面板带有启用/禁用开关;凭据管理;Webhook 和钩子创建;内存配置;网关控制;以及 System 页面,带有更新前检查和一键 Debug Share。你不再需要 SSH 登录并编辑 `config.yaml` 来配置新的消息通道或 MCP 服务器——现在全是点选操作。([#36704](https://github.com/NousResearch/hermes-agent/pull/36704)、[#36736](https://github.com/NousResearch/hermes-agent/pull/36736)、[#37211](https://github.com/NousResearch/hermes-agent/pull/37211)、[#38205](https://github.com/NousResearch/hermes-agent/pull/38205)、[#38600](https://github.com/NousResearch/hermes-agent/pull/38600) —— @teknium1) - **Hermes Desktop 支持简体中文——聊天 GUI 全面汉化**——桌面应用现在在所有 UI 界面——聊天窗口本身、侧边栏、设置、命令中心、定时任务、消息、配置文件、技能、代理等等——都提供了完整的简体中文翻译。英文保持默认;在「外观」设置中切换语言,选择会持久化到你的配置中(`display.language`)。它基于一个合适的类型化 i18n 层构建,所以从这里添加更多语言会很简单。([#38241](https://github.com/NousResearch/hermes-agent/pull/38241) —— @JimLiu) - **更精简的默认技能集——Hermes 只包含你真正需要的**——捆绑的技能集经过了有意的精简。冗余或已死的技能被移除(`spotify`——已被原生 Spotify 插件的 7 个工具取代;`linear`——已被 `hermes mcp install linear` 取代;`kanban-codex-lane`、`debugging-hermes-tui-commands`、一个过时的 `domain` 孤儿,以及几个空的分类标记)。较重或小众的技能从捆绑移到了可选(Baoyu 创意套装、`dspy`、`subagent-driven-development`、`minecraft-modpack-server`、`pokemon-player`、`hermes-s6-container-supervision`)——仍然只需 `hermes skills install` 一次,只是默认不加载。而一个新的 `environments:` 相关性门控可以让特定上下文的技能(看板、docker/s6)不进入技能索引,供永远不会使用它们的用户使用,同时仍可在明确请求时加载。结果:更小、更清晰的默认技能列表,选择器中噪音更少,提示更轻量。策展人现在也可以修剪未使用的**内置**技能(不仅限于代理创建的),每个技能的使用情况都会被跟踪。([#39028](https://github.com/NousResearch/hermes-agent/pull/39028)、[#36701](https://github.com/NousResearch/hermes-agent/pull/36701)、[#36228](https://github.com/NousResearch/hermes-agent/pull/36228) —— @teknium1) - **NVIDIA/skills 现在是一个内置的受信任技能源**——`NVIDIA/skills` 加入了 OpenAI、Anthropic 和 HuggingFace,成为 Skills Hub 中的默认受信任源——可发现、可浏览、可搜索,并通过相同的管道自动更新。NVIDIA 针对 CUDA-X、AIQ、cuOpt 及其产品栈其他部分的已验证技能,只需一次安装,并带有来自仓库 `skills.sh.json` 侧车的真实分类标签。([#34333](https://github.com/NousResearch/hermes-agent/pull/34333) —— @teknium1) - **通过 Nous Portal 快速设置——从安装到第一条消息只需几秒钟**——首次设置被精简为两个清晰的路径:快速设置(登录 Nous Portal,获取模型选择器,立即开始聊天)或完整设置(面向高级用户的详细向导)。`hermes portal` 现在是运行完整快速设置 Nous 流程的人类可读别名。首次运行菜单内联解释了区别,让新用户不用猜测。目标:全新用户无需阅读文档就能发送第一条消息。([#35723](https://github.com/NousResearch/hermes-agent/pull/35723)、[#36227](https://github.com/NousResearch/hermes-agent/pull/36227)、[#38449](https://github.com/NousResearch/hermes-agent/pull/38449)、[#38465](https://github.com/NousResearch/hermes-agent/pull/38465) —— @teknium1、@kshitijk4poor) - **模糊模型选择器,无处不在——输入几个字母,找到你的模型**——模型选择器现在在桌面应用、Web 仪表盘、TUI 和 CLI 中都能进行模糊搜索。输入「v4fl」就会显示 `deepseek-v4-flash`;多端点提供商被归为一行,而不是用重复项混乱列表,每行还带有描述,让你知道自己选的是什么。目录每小时刷新一次(之前是每天),所以新模型在发布当天就能出现。本轮新增:`deepseek-v4-flash`、具有 100 万上下文的 `MiniMax-M3`、`qwen3.7-plus`。([#36928](https://github.com/NousResearch/hermes-agent/pull/36928)、[#35227](https://github.com/NousResearch/hermes-agent/pull/35227)、[#35756](https://github.com/NousResearch/hermes-agent/pull/35756)、[#35659](https://github.com/NousResearch/hermes-agent/pull/35659)、[#36214](https://github.com/NousResearch/hermes-agent/pull/36214) —— @kshitijk4poor、@teknium1) - **`/undo [N]`——撤销最近 N 轮对话**——说错了话,或者把代理引向错误方向了?`/undo` 会回退 N 轮用户对话,预填你的最后一条消息以便编辑并重新发送,并软删除中间的对话轮次。它在 CLI、TUI 以及消息平台(Telegram、Discord 等)中都能完全一致地工作。关闭了一个长期存在的请求([#21910](https://github.com/NousResearch/hermes-agent/issues/21910))。([#36229](https://github.com/NousResearch/hermes-agent/pull/36229)、[#36699](https://github.com/NousResearch/hermes-agent/pull/36699) —— @teknium1) - **选择你的默认界面——`cli` 或 `tui`**——你现在可以设置 `hermes chat` 默认是进入经典 CLI 还是 Ink TUI,并可以使用 `--cli` 标志覆盖每次调用。TUI 还获得了一个统一的 `/model` 命令和一个用于在实时会话间切换的 Sessions 覆盖层。使用你真正喜欢的界面。([#37782](https://github.com/NousResearch/hermes-agent/pull/37782)、[#37112](https://github.com/NousResearch/hermes-agent/pull/37112) —— @OutThisLife) --- ## 🖥️ Hermes 桌面应用(全新) ### 安装与生命周期 - macOS 桌面安装 + 应用内自更新;在 macOS 上干净地重建并重启([#35607](https://github.com/NousResearch/hermes-agent/pull/35607)、[#36198](https://github.com/NousResearch/hermes-agent/pull/36198)、[#38296](https://github.com/NousResearch/hermes-agent/pull/38296) —— @OutThisLife) - macOS 安装程序重命名为「Hermes」并变为启动器([#37516](https://github.com/NousResearch/hermes-agent/pull/37516) —— @OutThisLife) - 在 macOS/Linux 上以独立的 `desktop` 阶段构建桌面,而不是静默跳过;内容哈希构建戳,`--build-only` / `--force-build` 标志([#36134](https://github.com/NousResearch/hermes-agent/pull/36134) —— @OutThisLife,[#37597](https://github.com/NousResearch/hermes-agent/pull/37597) —— @ethernet8023) - 启动失败恢复 + 实时 API 密钥验证;可取消安装;从损坏的缓存 Electron 下载中恢复([#35864](https://github.com/NousResearch/hermes-agent/pull/35864)、[#37379](https://github.com/NousResearch/hermes-agent/pull/37379)、[#39032](https://github.com/NousResearch/hermes-agent/pull/39032) —— @OutThisLife、@teknium1) - Windows:从引导安装中损坏的 Electron 缓存恢复;在应用内更新期间停止与自己的后端竞争([#39465](https://github.com/NousResearch/hermes-agent/pull/39465)、[#39828](https://github.com/NousResearch/hermes-agent/pull/39828) —— @teknium1、@OutThisLife) - Linux:配置 Electron 沙箱辅助程序;检测 linux arm64 二进制文件;在远程显示器上禁用 GPU 加速以停止闪烁([#37691](https://github.com/NousResearch/hermes-agent/pull/37691)、[#38594](https://github.com/NousResearch/hermes-agent/pull/38594)、[#37932](https://github.com/NousResearch/hermes-agent/pull/37932) —— @ethernet8023、@OutThisLife) - 要求 Node ≥20.19/22.12 用于桌面构建;零 eslint/typecheck 债务 + prettier 通扫([#38255](https://github.com/NousResearch/hermes-agent/pull/38255)、[#39100](https://github.com/NousResearch/hermes-agent/pull/39100) —— @OutThisLife) ### 远程网关与多配置文件 - 连接到 OAuth 网关的远程网关;远程网关的用户名/密码登录;每配置文件远程网关主机([#37888](https://github.com/NousResearch/hermes-agent/pull/37888)、[#38851](https://github.com/NousResearch/hermes-agent/pull/38851)、[#39778](https://github.com/NousResearch/hermes-agent/pull/39778) —— @benbarclay、@teknium1、@OutThisLife) - 并发多配置文件会话,跨配置文件 `@session` 链接;在网关重新连接时重新生成 OAuth WS 票据;在 AT 或 RT 上限制 OAuth 远程连接([#39330](https://github.com/NousResearch/hermes-agent/pull/39330)、[#38886](https://github.com/NousResearch/hermes-agent/pull/38886)、[#39464](https://github.com/NousResearch/hermes-agent/pull/39464) —— @OutThisLife、@teknium1、@benbarclay) - 在受控网关启动失败时提供远程登录选项;在远程网关测试中验证实时 WebSocket([#39402](https://github.com/NousResearch/hermes-agent/pull/39402)、[#39511](https://github.com/NousResearch/hermes-agent/pull/39511) —— @teknium1) ### 聊天 UX 与设置 - 在聊天区域任何位置拖放文件;剪贴板图片粘贴带去重;按 Enter 时附件处理,IME 组合输入处理([#36262](https://github.com/NousResearch/hermes-agent/pull/36262)、[#38306](https://github.com/NousResearch/hermes-agent/pull/38306)、[#38677](https://github.com/NousResearch/hermes-agent/pull/38677) —— @OutThisLife、@teknium1) - 后台需要输入指示器,界面重新设计,Cmd+K 调色板和 UI 一致性通过;状态栏中的内联模型选择器;状态栏中的 YOLO 切换(TUI 同步)([#38631](https://github.com/NousResearch/hermes-agent/pull/38631)、[#37738](https://github.com/NousResearch/hermes-agent/pull/37738)、[#38517](https://github.com/NousResearch/hermes-agent/pull/38517) —— @OutThisLife) - 会话列表改造,会话清理/归档,媒体流式传输 + 连接覆盖层;按 ID 搜索会话(SQL 限制)([#37379](https://github.com/NousResearch/hermes-agent/pull/37379)、[#37099](https://github.com/NousResearch/hermes-agent/pull/37099)、[#39062](https://github.com/NousResearch/hermes-agent/pull/39062) —— @OutThisLife、@teknium1) - 专门的 Providers 设置 + 精炼的 Accounts/API-keys UX;将技能和工具管理合并到一个面板;将模型管理移到设置中([#38551](https://github.com/NousResearch/hermes-agent/pull/38551) —— @austinpickett,[#37310](https://github.com/NousResearch/hermes-agent/pull/37310)、[#37330](https://github.com/NousResearch/hermes-agent/pull/37330) —— @jquesnelle) - 渲染审批/sudo/秘密提示,以便工具不再静默超时;在调色板中显示技能和快速命令的斜杠命令;在启动器中加入一流的 xAI Grok OAuth 提供者([#38578](https://github.com/NousResearch/hermes-agent/pull/38578)、[#38531](https://github.com/NousResearch/hermes-agent/pull/38531)、[#37697](https://github.com/NousResearch/hermes-agent/pull/37697) —— @teknium1、@OutThisLife) - 首次运行入门中「稍后选择提供者」跳过选项;入门可以配置本地/自定义端点而无需 API 密钥;自定义缩放快捷键([#39483](https://github.com/NousResearch/hermes-agent/pull/39483)、[#38572](https://github.com/NousResearch/hermes-agent/pull/38572)、[#37894](https://github.com/NousResearch/hermes-agent/pull/37894) —— @teknium1、@ethernet8023) - macOS 辅助程序麦克风权限;滚动跳跃修复(原生锚定、静止跳跃、上滚回弹);思考块在流式传输中保持打开([#37745](https://github.com/NousResearch/hermes-agent/pull/37745) —— @xxxigm,[#37866](https://github.com/NousResearch/hermes-agent/pull/37866)、[#38221](https://github.com/NousResearch/hermes-agent/pull/38221)、[#38809](https://github.com/NousResearch/hermes-agent/pull/38809) —— @OutThisLife、@teknium1、@stremtec) - GUI 生活质量批量修复;保留 AhmetArif0 桌面/仪表盘修复;通过 `session.title` RPC 重命名会话,使 `/title` 生效([#37536](https://github.com/NousResearch/hermes-agent/pull/37536) —— @austinpickett,[#39070](https://github.com/NousResearch/hermes-agent/pull/39070)、[#39410](https://github.com/NousResearch/hermes-agent/pull/39410) —— @teknium1、@benbarclay) - `hermes debug share` / `/debug` / `hermes logs` 现在包含 `desktop.log`([#38203](https://github.com/NousResearch/hermes-agent/pull/38203) —— @teknium1) - **简体中文翻译**涵盖所有桌面 UI 界面——类型化 i18n 层,在「外观」设置中切换,通过 `display.language` 持久化(英文保持默认)([#38241](https://github.com/NousResearch/hermes-agent/pull/38241) —— @JimLiu) - 通过一个全局远程仪表盘支持完整的多配置文件;远程配置文件会话是一等公民(恢复、读取、重命名/归档/删除);新聊天在全局远程模式下尊重其配置文件([#39921](https://github.com/NousResearch/hermes-agent/pull/39921)、[#39894](https://github.com/NousResearch/hermes-agent/pull/39894)、[#39993](https://github.com/NousResearch/hermes-agent/pull/39993) —— @OutThisLife) ## 📊 Web 仪表盘 ### 管理面板(全新) - 完整的管理面板——MCP 目录带有启用/禁用开关、配对、Webhook、凭据、内存、网关、钩子创建、系统设置([#36704](https://github.com/NousResearch/hermes-agent/pull/36704)、[#36736](https://github.com/NousResearch/hermes-agent/pull/36736) —— @teknium1) - Channels 页面——从浏览器设置每个网关消息通道([#37211](https://github.com/NousResearch/hermes-agent/pull/37211) —— @teknium1) - System 页面:更新前检查流程 + Debug Share([#38205](https://github.com/NousResearch/hermes-agent/pull/38205)、[#38600](https://github.com/NousResearch/hermes-agent/pull/38600) —— @teknium1) - nous-blue 主题、批量会话、调度选择器;丰富的配置文件仪表盘 + 去重通道环境变量;通过主题可配置的终端背景([#37383](https://github.com/NousResearch/hermes-agent/pull/37383)、[#37872](https://github.com/NousResearch/hermes-agent/pull/37872) —— @austinpickett,[#37156](https://github.com/NousResearch/hermes-agent/pull/37156) —— @teknium1) - 始终启用嵌入式聊天;移除仪表盘 `--tui` 标志([#38591](https://github.com/NousResearch/hermes-agent/pull/38591) —— @benbarclay) ### 认证 - 可插拔的用户名/密码登录(选项 B);通用自托管 OIDC 提供者 + 多提供者验证修复;`hermes dashboard register` 用于自托管 OAuth 客户端([#38819](https://github.com/NousResearch/hermes-agent/pull/38819) —— @benbarclay,[#38917](https://github.com/NousResearch/hermes-agent/pull/38917)、[#38802](https://github.com/NousResearch/hermes-agent/pull/38802) —— @teknium1) - 通过刷新令牌轮换仪表盘会话;在遗留网关和 OAuth 网关之间共享 `/api/*` 公共允许列表;从 OAuth `next=` 往返中移除 `/api/*` 路径([#37247](https://github.com/NousResearch/hermes-agent/pull/37247)、[#34254](https://github.com/NousResearch/hermes-agent/pull/34254)、[#36244](https://github.com/NousResearch/hermes-agent/pull/36244) —— @benbarclay) - 聊天标签页在受限(OAuth)模式下工作;在 OAuth 限制绑定上信任经过票据认证的非 Web WS 来源;认证服务器生成的 PTY 子 WS;通过 SDK 辅助程序批准插件 WS/上传认证([#34793](https://github.com/NousResearch/hermes-agent/pull/34793)、[#37870](https://github.com/NousResearch/hermes-agent/pull/37870)、[#37972](https://github.com/NousResearch/hermes-agent/pull/37972)、[#38549](https://github.com/NousResearch/hermes-agent/pull/38549) —— @teknium1、@benbarclay、@kshitijk4poor) - 允许远程绑定上的桌面 WebSocket 来源([#37747](https://github.com/NousResearch/hermes-agent/pull/37747) —— @teknium1) ## 🏗️ 核心代理与架构 ### 提供者与模型支持 - 新模型:`deepseek-v4-flash`(+ 修剪变体,按制造者分组的精选列表)、具有 100 万上下文的 `MiniMax-M3`(原生 minimax 提供者)、`qwen3.7-plus`(Nous + OpenRouter)、`gemini-3.5-flash`(加入 Gemini OAuth + API 密钥选择器)([#35659](https://github.com/NousResearch/hermes-agent/pull/35659)、[#36214](https://github.com/NousResearch/hermes-agent/pull/36214)、[#39409](https://github.com/NousResearch/hermes-agent/pull/39409)、[#37046](https://github.com/NousResearch/hermes-agent/pull/37046) —— @teknium1) - 模型选择器:在 WebUI/TUI/CLI 中模糊搜索;将多端点提供者归为一行;刷新提供者描述 + 描述分组行;每小时刷新目录;停止将 OpenAI 选择路由到 OpenRouter([#36928](https://github.com/NousResearch/hermes-agent/pull/36928) —— @kshitijk4poor,[#35227](https://github.com/NousResearch/hermes-agent/pull/35227)、[#35773](https://github.com/NousResearch/hermes-agent/pull/35773)、[#35756](https://github.com/NousResearch/hermes-agent/pull/35756)、[#37175](https://github.com/NousResearch/hermes-agent/pull/37175)) - 始终显示 Nous Tool Gateway 后端,选择时登录;展示 Nous 免费工具池(授权 + 设置提示);通过管理的 Nous 网关路由 FAL 视频生成([#35792](https://github.com/NousResearch/hermes-agent/pull/35792) —— @teknium1,[#36153](https://github.com/NousResearch/hermes-agent/pull/36153)、[#33259](https://github.com/NousResearch/hermes-agent/pull/33259) —— @alt-glitch) - 将会话中的模型切换持久化到数据库;在中断后恢复轮次中恢复模型([#35256](https://github.com/NousResearch/hermes-agent/pull/35256)、[#35381](https://github.com/NousResearch/hermes-agent/pull/35381) —— @teknium1) - 凭据池:为终端 OAuth 失败添加 `STATUS_DEAD`;隔离自定义提供者选择器凭据([#34412](https://github.com/NousResearch/hermes-agent/pull/34412)、[#34810](https://github.com/NousResearch/hermes-agent/pull/34810) —— @teknium1) - 禁用 Nous Portal 遗留会话密钥推断回退——仅限 JWT([#34508](https://github.com/NousResearch/hermes-agent/pull/34508) —— @kshitijk4poor) ### 代理循环、提示与工具 - `/undo [N]`——回退 N 轮用户对话,带预填和软删除(CLI/TUI + 消息平台同步)([#36229](https://github.com/NousResearch/hermes-agent/pull/36229)、[#36699](https://github.com/NousResearch/hermes-agent/pull/36699) —— @teknium1) - 渐进式工具披露用于 MCP 和插件工具(限定范围);用于系统提示的嵌入器环境提示钩子;通用任务完成指导 + 本地 Python 工具链探测([#34493](https://github.com/NousResearch/hermes-agent/pull/34493)、[#34574](https://github.com/NousResearch/hermes-agent/pull/34574)、[#34340](https://github.com/NousResearch/hermes-agent/pull/34340) —— @teknium1) - 取消委派 `max_spawn_depth` 上限(下限为 1,无上限);拓宽 Hermes 自我知识指针到文档 + 技能;`hermes prompt-size` 诊断([#39772](https://github.com/NousResearch/hermes-agent/pull/39772)、[#38538](https://github.com/NousResearch/hermes-agent/pull/38538)、[#35276](https://github.com/NousResearch/hermes-agent/pull/35276) —— @teknium1) - `perf(read_file)`:紧凑行号边距——每次读取大约减少 14% 的令牌(现在是唯一格式)([#35368](https://github.com/NousResearch/hermes-agent/pull/35368)、[#35532](https://github.com/NousResearch/hermes-agent/pull/35532) —— @teknium1) - 从 `TERMINAL_CWD` 通过一个读取器解析代理 cwd;对齐预填消息键处理;恢复时在会话的原始工作目录中重新启动([#35028](https://github.com/NousResearch/hermes-agent/pull/35028) —— @banditburai,[#38760](https://github.com/NousResearch/hermes-agent/pull/38760) —— @helix4u,[#38562](https://github.com/NousResearch/hermes-agent/pull/38562) —— @teknium1) - 防止因并发压缩导致的会话 ID 分叉;观察者遥测钩子 + NeMo-Relay 插件(门控工具发送)([#34351](https://github.com/NousResearch/hermes-agent/pull/34351)、[#38232](https://github.com/NousResearch/hermes-agent/pull/38232) —— @teknium1) ### 会话、状态与记忆 - `perf(state)`:在 VACUUM 时合并 FTS5 段 + `hermes sessions optimize`;在父会话重新打开后保持 `/branch` 会话可见;在缺少 FTS5 运行时幸存([#34596](https://github.com/NousResearch/hermes-agent/pull/34596)、[#39214](https://github.com/NousResearch/hermes-agent/pull/39214) —— @teknium1、@kshitijk4poor,[#35452](https://github.com/NousResearch/hermes-agent/pull/35452) —— @helix4u) - Honcho:使启动时容错打开;加固自托管设置路径([#24847](https://github.com/NousResearch/hermes-agent/pull/24847) —— @stephenschoettler,[#35170](https://github.com/NousResearch/hermes-agent/pull/35170) —— @kshitijk4poor) - Supermemory:会话级摄取 + kebab 别名([#38756](https://github.com/NousResearch/hermes-agent/pull/38756) —— @alt-glitch) ## 🧩 多代理(看板)与技能 ### 看板 - `goal_mode` 卡片在 `/goal` 循环中运行工作节点;任务上的文件附件;将任务体中引用的图片附加到工作节点视觉([#35710](https://github.com/NousResearch/hermes-agent/pull/35710)、[#35395](https://github.com/NousResearch/hermes-agent/pull/35395)、[#34210](https://github.com/NousResearch/hermes-agent/pull/34210) —— @teknium1) - `default_assignee` 回退 + 每配置文件并发上限;`POST /runs/{run_id}/terminate` 端点;通过 `dispatch_in_gateway` 门控通知器监视器([#34244](https://github.com/NousResearch/hermes-agent/pull/34244)、[#34449](https://github.com/NousResearch/hermes-agent/pull/34449)、[#37174](https://github.com/NousResearch/hermes-agent/pull/37174) —— @teknium1) - CLI 调度配置传递 + 人性化技能交换([#34337](https://github.com/NousResearch/hermes-agent/pull/34337) —— @teknium1) ### 技能 - **更精简的默认技能集**([#39028](https://github.com/NousResearch/hermes-agent/pull/39028) —— @teknium1): - 移除(冗余/已死):`spotify`(→ Spotify 插件的 7 个原生工具)、`linear`(→ `hermes mcp install linear`)、`kanban-codex-lane`、`debugging-hermes-tui-commands`、过时的 `domain` 孤儿、空分类标记(`diagramming`、`gifs`、`inference-sh`、`mlops/training`、`mlops/vector-databases`) - 从捆绑变为可选:`baoyu-article-illustrator`、`baoyu-comic`、`creative-ideation`、`pixel-art`、`dspy`、`subagent-driven-development`、`minecraft-modpack-server`、`pokemon-player`、`hermes-s6-container-supervision` - 合并:`webhook-subscriptions` + `native-mcp` 被折叠到 `hermes-agent` 技能中作为按需引用;`writing-plans` 合并到 `plan`(v2.0.0) - 新的 `environments:` 前文相关性门控(`kanban` / `docker` / `s6`)——特定上下文的技能将不再出现在索引中供不使用它们的用户使用,但在明确请求时仍然加载 - 策展人现在可以修剪未使用的**内置**技能(不仅限于代理创建的),每个技能的使用情况都会被跟踪([#36701](https://github.com/NousResearch/hermes-agent/pull/36701) —— @teknium1) - 空白技能支持——`install --no-skills` + 默认配置文件的 opt-out/opt-in([#36228](https://github.com/NousResearch/hermes-agent/pull/36228) —— @teknium1) - **NVIDIA/skills 受信任源**——`NVIDIA/skills` 现在是 Skills Hub 中的默认受信任源,与 OpenAI/Anthropic/HuggingFace 并列;`skills.sh.json` 侧车为源提供真实的分类标签([#34333](https://github.com/NousResearch/hermes-agent/pull/34333) —— @teknium1) - Skills Hub:修复浏览上限,添加来源链接 + 复制按钮 + 分类清理([#37143](https://github.com/NousResearch/hermes-agent/pull/37143) —— @teknium1) - 新的可选技能:`grok`(xAI Grok Build CLI)、`antigravity-cli` 操作符(在 autonomous-ai-agents 下)([#34582](https://github.com/NousResearch/hermes-agent/pull/34582)、[#34583](https://github.com/NousResearch/hermes-agent/pull/34583)、[#34604](https://github.com/NousResearch/hermes-agent/pull/34604) —— @teknium1) ## 📱 消息平台(网关) - 结构化流事件协议 + Telegram 草稿格式同步;按平台流式传输默认值(Telegram 开启,Discord 关闭)+ 仪表盘开关;在 `DEFAULT_CONFIG` 中显示网关流式传输块([#37250](https://github.com/NousResearch/hermes-agent/pull/37250)、[#37303](https://github.com/NousResearch/hermes-agent/pull/37303)、[#37285](https://github.com/NousResearch/hermes-agent/pull/37285) —— @teknium1) - Discord 语音频道混音器——环境空闲背景音 + 与 TTS 重叠的口头确认;在单独切换时解释 `/voice` 用法([#39659](https://github.com/NousResearch/hermes-agent/pull/39659)、[#39766](https://github.com/NousResearch/hermes-agent/pull/39766) —— @teknium1) - 处理飞书会议邀请;bluebubbles 群组提及门控;matrix bang-命令别名;matrix 关闭失败时的审批反应认证([#39040](https://github.com/NousResearch/hermes-agent/pull/39040)、[#37091](https://github.com/NousResearch/hermes-agent/pull/37091)、[#38175](https://github.com/NousResearch/hermes-agent/pull/38175) —— @teknium1、@alt-glitch,[#34567](https://github.com/NousResearch/hermes-agent/pull/34567)) - 干净的服务重启流程;在重新连接失败时关闭 ResponseStore + 处置无主适配器;微信 `asyncio.wait_for` 超时([#36188](https://github.com/NousResearch/hermes-agent/pull/36188) —— @helix4u,[#37679](https://github.com/NousResearch/hermes-agent/pull/37679) —— @Fearvox,[#35117](https://github.com/NousResearch/hermes-agent/pull/35117) —— @banditburai) ## 🖥️ CLI、TUI 与设置 - 可配置的默认界面(cli 或 tui)+ `--cli` 标志;TUI 单个 `/model` 命令 + 统一的 Sessions 覆盖层;在委派开始时引导用户至 `/agents` 仪表盘([#37782](https://github.com/NousResearch/hermes-agent/pull/37782)、[#37112](https://github.com/NousResearch/hermes-agent/pull/37112) —— @OutThisLife,[#34704](https://github.com/NousResearch/hermes-agent/pull/34704) —— @kshitijk4poor) - 精简设置——通过 Nous Portal 快速设置 + 完整设置默认值;内联解释快速与完整设置;`hermes portal` 人类可读的 Portal 入门别名 + 完整的快速设置 Nous 流程([#35723](https://github.com/NousResearch/hermes-agent/pull/35723)、[#36227](https://github.com/NousResearch/hermes-agent/pull/36227)、[#38449](https://github.com/NousResearch/hermes-agent/pull/38449)、[#38465](https://github.com/NousResearch/hermes-agent/pull/38465) —— @teknium1、@kshitijk4poor) - 在 ps/top/htop 中将进程标题设置为 `hermes`;警告不受支持的 pip 安装 + 修复过时的更新检查缓存([#35143](https://github.com/NousResearch/hermes-agent/pull/35143)、[#34846](https://github.com/NousResearch/hermes-agent/pull/34846) —— @teknium1) - TUI 性能:停止慢/死的 MCP 服务器冻结启动;停止急切的 MCP 发现阻塞具备代理能力的启动;停止在跟踪行中持久化完整工具输出(静默 OOM)([#35273](https://github.com/NousResearch/hermes-agent/pull/35273)、[#35397](https://github.com/NousResearch/hermes-agent/pull/35397)、[#38224](https://github.com/NousResearch/hermes-agent/pull/38224) —— @teknium1) - TUI 修复:在网关意外死亡时自动恢复会话;重新组装分割的 SGR 鼠标序列;保留 PowerShell 剪贴板中的 UTF-8;退出时重置终端输入模式;`/save` 快照保存在 Hermes 主目录下([#35893](https://github.com/NousResearch/hermes-agent/pull/35893)、[#38564](https://github.com/NousResearch/hermes-agent/pull/38564) —— @OutThisLife,[#35222](https://github.com/NousResearch/hermes-agent/pull/35222) —— @teknium1,[#36864](https://github.com/NousResearch/hermes-agent/pull/36864) —— @maxmilian,[#38251](https://github.com/NousResearch/hermes-agent/pull/38251) —— @austinpickett) - 设置模型/提供者选择器从 `simple_term_menu` 迁移到 curses(ESC + 幻影行修复);默认浏览器/TTS 选择器指向免费本地后端,而非付费 Nous([#35806](https://github.com/NousResearch/hermes-agent/pull/35806)、[#37800](https://github.com/NousResearch/hermes-agent/pull/37800) —— @teknium1) ## 🔧 工具系统与安装程序 - `single managed-uv path`,删除 fts5 安装程序升级;安装程序提交锁定可选(默认跟随分支);浅克隆([#37660](https://github.com/NousResearch/hermes-agent/pull/37660) —— @ethernet8023,[#37123](https://github.com/NousResearch/hermes-agent/pull/37123) —— @jquesnelle,[#39423](https://github.com/NousResearch/hermes-agent/pull/39423) —— @ethernet8023) - `ensure_uv()` 在更新边界存活(首次运行不崩溃);加固 venv 重建 + 安装后验证核心依赖;在执行破坏性清理前要求 managed 标记;默认在非交互式更新中 stash/restore([#39780](https://github.com/NousResearch/hermes-agent/pull/39780) —— @OutThisLife,[#38887](https://github.com/NousResearch/hermes-agent/pull/38887)、[#39568](https://github.com/NousResearch/hermes-agent/pull/39568)、[#39645](https://github.com/NousResearch/hermes-agent/pull/39645) —— @teknium1、@helix4u) - MCP:当未获得令牌时停止报告错误的 OAuth 成功;视觉功能尊重 `model.supports_vision` 在 `vision_analyze` + `browser_vision` 中;MiniMax t2a_v2 TTS `raise_for_status`([#34807](https://github.com/NousResearch/hermes-agent/pull/34807)、[#34562](https://github.com/NousResearch/hermes-agent/pull/34562)、[#39057](https://github.com/NousResearch/hermes-agent/pull/39057) —— @teknium1) - yuanbao:按 resourceId 缓存解析的媒体资源([#34474](https://github.com/NousResearch/hermes-agent/pull/34474) —— @teknium1) ## 🐳 Docker 与部署 - 容器复用 + 有限同步清理 + 孤儿回收器;自动加入 Docker socket 组用于 docker-in-docker 后端;启动非 root 容器(当已经无特权时跳过 s6-setuidgid 降权)([#33645](https://github.com/NousResearch/hermes-agent/pull/33645)、[#34407](https://github.com/NousResearch/hermes-agent/pull/34407) —— @benbarclay,[#34837](https://github.com/NousResearch/hermes-agent/pull/34837) —— @IAvecilla) - 当卷所有权与重新映射的 UID 匹配时跳过不必要的启动 chown;在首次启动时从 `HERMES_GATEWAY_BOOTSTRAP_STATE` 种子化 `gateway_state.json`;用 hermes-agent 标签标记容器以供识别([#35027](https://github.com/NousResearch/hermes-agent/pull/35027) —— @Foldblade,[#37896](https://github.com/NousResearch/hermes-agent/pull/37896) —— @benbarclay) - 通过 `HERMES_TUI_DIR` 将 TUI 启动器指向预构建包;合并 node/nix 工作区锁定文件 + 更新所有消费者([#37923](https://github.com/NousResearch/hermes-agent/pull/37923)、[#36171](https://github.com/NousResearch/hermes-agent/pull/36171) —— @benbarclay、@ethernet8023) ## 🔒 安全与可靠性 - **CVE-2026-48710(Starlette BadHost)**——锁定已修补的 Starlette ≥1.0.1([#35118](https://github.com/NousResearch/hermes-agent/pull/35118) —— @teknium1) - 在异步路径中,在事件循环外运行 URL SSRF 检查;从子进程环境变量中剥离 Bedrock 推断 Bearer 令牌;将 `bws_cache.json` 添加到文件安全读取防护中;在变异验证器脚注中中和文件路径([#39046](https://github.com/NousResearch/hermes-agent/pull/39046)、[#34498](https://github.com/NousResearch/hermes-agent/pull/34498)、[#34421](https://github.com/NousResearch/hermes-agent/pull/34421)、[#35684](https://github.com/NousResearch/hermes-agent/pull/35684) —— @teknium1) - 在 `execute_code` 中恢复审批/sudo 上下文 + 守卫入口点;将 docker restart/stop/kill 添加到 `DANGEROUS_PATTERNS`;在审查过的技能内容中净化不可见 unicode;在就地 xAI 突变前深拷贝工具([#34497](https://github.com/NousResearch/hermes-agent/pull/34497)、[#33438](https://github.com/NousResearch/hermes-agent/pull/33438) —— @teknium1、@Sarbai,[#37245](https://github.com/NousResearch/hermes-agent/pull/37245)、[#34416](https://github.com/NousResearch/hermes-agent/pull/34416)) - 对每个任务的 `.hermes` 镜像的写入进行沙箱镜像软防护;Honcho 启动时容错打开([#32213](https://github.com/NousResearch/hermes-agent/pull/32213) —— @briandevans,[#24847](https://github.com/NousResearch/hermes-agent/pull/24847) —— @stephenschoettler) ## 🐛 值得注意的错误修复 - **此轮关闭 399 个议题**(2 个 P0,62 个 P1,16 个安全标记,262 个 bug 标签)。 - 桌面:防止正在进行的对话在刷新时消失;当一轮对话已排队时,Stop 按钮实际中断;阻止后台会话消息渗入活动的对话记录;斜杠/@ 补全菜单可导航且 Esc 可关闭;IME 回车不再分割消息([#37908](https://github.com/NousResearch/hermes-agent/pull/37908) —— @OutThisLife,[#37948](https://github.com/NousResearch/hermes-agent/pull/37948)、[#37975](https://github.com/NousResearch/hermes-agent/pull/37975)、[#37937](https://github.com/NousResearch/hermes-agent/pull/37937) —— @kshitijk4poor,[#38333](https://github.com/NousResearch/hermes-agent/pull/38333) —— @stremtec) - 更新:防止 stash/restore 在受管理克隆中覆盖桌面源码;不在重建中途令桌面重建/技能同步因 venv 而失败;将启动器虚拟环境导出到 uv([#38542](https://github.com/NousResearch/hermes-agent/pull/38542)、[#38885](https://github.com/NousResearch/hermes-agent/pull/38885)、[#35224](https://github.com/NousResearch/hermes-agent/pull/35224) —— @teknium1) - 语音:在 PortAudio 回退中尊重 `PIPEWIRE_REMOTE`;当声音服务器可达时允许通过 SSH 使用 `/voice`;恢复 mistralai(2.4.8 干净,禁令解除)([#33473](https://github.com/NousResearch/hermes-agent/pull/33473) —— @Dusk1e,[#35719](https://github.com/NousResearch/hermes-agent/pull/35719)、[#34841](https://github.com/NousResearch/hermes-agent/pull/34841) —— @teknium1) ## 📚 文档 - 新的桌面应用指南 + 远程后端部分(会话令牌、`--tui` 要求、用户名/密码连接、仪表盘/网关先决条件)([#37457](https://github.com/NousResearch/hermes-agent/pull/37457)、[#38144](https://github.com/NousResearch/hermes-agent/pull/38144)、[#38180](https://github.com/NousResearch/hermes-agent/pull/38180)、[#38534](https://github.com/NousResearch/hermes-agent/pull/38534)、[#39128](https://github.com/NousResearch/hermes-agent/pull/39128) —— @teknium1) - 仪表盘认证提供者适用性 + 在仪表盘/Docker/桌面上的注册;Docker 的网络出口隔离指南([#39633](https://github.com/NousResearch/hermes-agent/pull/39633) —— @benbarclay,[#26385](https://github.com/NousResearch/hermes-agent/pull/26385) —— @Manzela) --- ![Hermes Agent v0.16.0 — The Surface Release](https://v3b.fal.media/files/b/0a9d248f/AyRBEKS8C4o6HZNF6KjbD_M2U5y4wY.png) ## 👥 贡献者 衷心感谢在此版本中贡献了工作的 **170 位社区贡献者**(含合著者)。 ### 核心 - @teknium1 ### 顶级社区贡献者(按合并 PR 数量) - **@OutThisLife**(52)——从头到尾构建了桌面应用:安装、自更新、远程网关连接、多配置文件会话、聊天 UX、状态栏模型选择器 - **@benbarclay**(44)——Docker 加固、仪表盘认证(OIDC、用户名/密码、刷新令牌轮换)、桌面 OAuth 远程连接 - **@kshitijk4poor**(29)——模糊模型选择器、设置/Portal 入门、桌面补全菜单和 Stop 按钮修复、honcho 加固 - **@ethernet8023**(18)——桌面构建管道(内容哈希戳、构建标志)、Linux/arm64 桌面支持、managed-uv 合并 - **@austinpickett**(8)——仪表盘 nous-blue 主题 + 批量会话、桌面 Providers 设置、GUI 生活质量分类 - **@alt-glitch**(7)——Nous 工具池权限展示、FAL 视频生成管理网关、supermemory 会话摄取、matrix 别名 - **@helix4u**(6)——网关服务重启流程、更新破坏性清理防护、配置预填对齐 - **@jquesnelle**(4)——安装程序提交锁定可选、桌面技能/工具 + 模型管理合并 - **@JimLiu**——完整的简体中文桌面翻译 + 类型化 i18n 层 ### 所有贡献者 @0xharryriddle, @a1245582339, @adybag14-cyber, @AhmetArif0, @alaamohanad169-ship-it, @alelpoan, @alt-glitch, @Aman113114-IITD, @amathxbt, @aminvakil, @annguyenNous, @aqilaziz, @Archerouyang, @ashishpatel26, @asimons81, @austinpickett, @banditburai, @baofuen, @Bartok9, @bbednarski9, @beardthelion, @bedirhancode, @benbarclay, @benfrank241, @blackpilledsoftware-prog, @bluefishs, @brian-doherty, @briancl2, @briandevans, @BROCCOLO1D, @caojiguang, @CharZhou, @counterposition, @coygeek, @CryptoByz, @davetist, @davidgut1982, @dchenk, @dirtyren, @donovan-yohan, @dparikh79, @dskwe, @Dusk1e, @dvir-pashut, @EloquentBrush0x, @emozilla, @ErnestHysa, @Erosika, @ethernet8023, @f3rs3n, @faisfamilytravel, @Fearvox, @ferminquant, @fesalfayed, @firefly, @flooryyyy, @Foldblade, @Frowtek, @gbarany, @Glucksberg, @GodsBoy, @haran2001, @harjothkhara, @HashClawAI, @hayka-pacha, @helix4u, @HeLLGURD, @Hinotoi-agent, @hllqkb, @IAvecilla, @inchargeautomation-lab, @Interstellar-code, @isair, @ITheEqualizer, @jeffrobodie-glitch, @JezzaHehn, @JimLiu, @Julientalbot, @julio-cloudvisor, @karmeleon, @Kenmege, @Kewe63, @Kolektori, @konsisumer, @kshitijk4poor, @kurobaryo, @kweiner, @kyssta-exe, @Kyzcreig, @LengR, @leonardsellem, @LeonSGP43, @libre-7, @liuboacean, @liuhao1024, @loongzhao, @luyao618, @MaheshtheDev, @Manzela, @mathijsvandenhurk, @MattMaximo, @maxcz79, @maxmilian, @Moikapy, @MustafaKara7, @nateGeorge, @nepenth, @nielskaspers, @ninjmnky, @octavioturra, @OCWC22, @ohMyJason, @ousiaresearch, @outsourc-e, @OutThisLife, @Pluviobyte, @polnikale, @pxdsgnco, @Que0x, @r266-tech, @redpiggy-cyber, @rewbs, @rexdotsh, @rob-maron, @SaguaroDev, @sahibzada-allahyar, @Sarbai, @sarvesh1327, @scubamount, @SeaXen, @seppegadeyne, @shannonsands, @SHL0MS, @SimoKiihamaki, @SiTaggart, @solaitken, @sprmn24, @stephenschoettler, @steveonjava, @stremtec, @Subway2023, @sweetcornna, @Sylw3ster, @ThyFriendlyFox, @tillfalko, @tmchow, @TonyPepeBear, @Tranquil-Flow, @truenorth-lj, @tuancookiez-hub, @Twanislas, @tymrtn, @uzunkuyruk, @ViewWay, @VinciZhu, @vinoth12940, @vladkvlchk, @vynxevainglory-ai, @WadydX, @wenchengxucool, @whyhkzk, @worlldz, @Wysie, @x1am1, @xxxigm, @ygd58, @youngstar-eth, @zapabob, @zhaoleibd, @Zyrixtrex --- **完整更新日志**:[v2026.5.29.2...v2026.6.5](https://github.com/NousResearch/hermes-agent/compare/v2026.5.29.2...v2026.6.5)