← 返回更新日志

Hermes v2026.7.1

2026-07-01 · GitHub 原文
# Hermes Agent v0.18.0 (v2026.7.1) **发布日期:** 2026年7月1日 **自 v0.17.0 以来:** 约 1,720 次提交 · 998 个合并 PR · 2,215 个文件变更 · 约 251,000 行新增 · 约 41,000 行删除 · **949 个 issue 关闭** · **370+ 位社区贡献者** > **“决断”发布。** 在过去一周半的时间里,团队几乎把所有精力都投入到一个目标:解决 **Hermes Agent 仓库中每一个 P0 和 P1 级别的 issue 和 PR** —— 而在此版本发布之际,**100% 均已关闭。** 零个开放 P0。零个开放 P1。这意味着在本次窗口中,作为 **约 1,950 个总 issue 和 PR 关闭** 的一部分,**约 700 个最高优先级项** 被清空。我们打算从此将 P0/P1 保持为零。 > > 在此次彻底清理之上,v0.18.0 还关注 Hermes 的思考 *质量* 以及它 *如何知道自己的工作是否真正完成*。混合代理模型成为一等公民 —— 您可以像选择任何其他模型一样选择命名的模型集成体,每个参考模型的推理过程都会显示给您,聚合器的答案会实时流式输出。智能体学会了根据证据而非直觉来验证自己的工作,`/goal` 获得了完成契约,`/learn` + `/journey` 将自我改进变成了您可以看见并掌控的过程。底层方面,网关变得真正可大规模部署(缩至零、排空协调),桌面端获得了头等编程项目和可玩的记忆图谱,子代理现在可以在后台并行展开。 ## 🎯 P0/P1 彻底清理 —— 100% 已解决 这是本次发布的头条。团队日以继夜地猛攻优先级积压任务整整一周半,现在整个仓库中每一个 P0 和 P1 都已关闭: | 优先级 | 关闭的 Issue | 合并的 PR | |---|---|---| | **P0** (关键) | 3 | 8 | | **P1** (高) | 493 | 188 | | **总计** | **496** | **196** | 这意味着在十二天内解决了 **约 692 个最高优先级项** —— 而在清理完成的那一刻,整个仓库的开放 P0/P1 计数达到了 **0**。最后被攻克的一批是 interrupt-protected-compression 兄弟分叉 bug(issue #56391)及其修复(#56416),在本次发布前夕的通宵工作中关闭。 特别感谢 **@kshitijk4poor**,他与核心团队一起日夜不停地消灭优先级积压任务 —— 他负责了 cron 可靠性浪潮、压缩分叉修复、凭据泄露加固以及大量 P1 关闭任务。 我们将从此保持 P0/P1 为 **0**。🫡 ## ✨ 亮点 - **混合代理模型现在是一个可选的一等模型** —— MoA 过去是一个需要切换的模式;现在每个命名的 MoA 预设都作为 `moa` 提供商下的可选模型出现,与 Claude、GPT 和 Grok 并排显示在所有模型选择器(CLI、TUI、桌面版、网关)中。就像选择任何模型一样选择 "my-council",Hermes 会自动将您的提示路由到该集成体。一个由前沿模型组成的委员会来探讨您最困难的问题,现在只需一次选择,在任何界面上都可实现。([#46081](https://github.com/NousResearch/hermes-agent/pull/46081)、[#53548](https://github.com/NousResearch/hermes-agent/pull/53548)、[#53561](https://github.com/NousResearch/hermes-agent/pull/53561) — @teknium1) - **查看每个模型的推理,然后观察答案流式输出** —— 当 MoA 集成体运行时,每个参考模型的完整输出现在会作为自己的标记块呈现——您可以阅读 GPT-5 的想法、Claude 的想法以及 Grok 的想法,然后聚合器将它们合成为一个答案。而且最终答案现在会实时流式输出给您,而不是在经过长时间沉默后一次性出现。这在 CLI、TUI 和桌面应用中均可使用。您可以看到委员会的讨论过程,而不仅仅是阅读最终裁决。([#53793](https://github.com/NousResearch/hermes-agent/pull/53793)、[#53855](https://github.com/NousResearch/hermes-agent/pull/53855)、[#55625](https://github.com/NousResearch/hermes-agent/pull/55625)、[#56101](https://github.com/NousResearch/hermes-agent/pull/56101) — @teknium1) - **智能体验证自己的工作——“完成”意味着被证明,而非声称** —— Hermes 现在会记录编码工作的验证证据,并且可以通过实际运行项目的检查来决定是否完成,而不是单纯宣称成功。`/goal` 获得了 **完成契约**:您声明“完成”的样子,常驻目标循环会根据该证据来判断是否完成,而不是在模型觉得满意时就停止。有一个 `pre_verify` 钩子用于接入自定义检查,以及一次性的迁移来合理调整默认值。区别是“我认为我修好了”与“测试通过了,这是证据”。([#50501](https://github.com/NousResearch/hermes-agent/pull/50501)、[#52285](https://github.com/NousResearch/hermes-agent/pull/52285)、[#55413](https://github.com/NousResearch/hermes-agent/pull/55413)、[#53552](https://github.com/NousResearch/hermes-agent/pull/53552) — @teknium1、@OutThisLife) - **`/learn` —— 通过描述将任何内容变成可复用的技能** —— 运行 `/learn <任何内容>`,Hermes 会从您指向的任何内容(一个目录、一个 URL,或者您五分钟前刚刚演示过的工作流)中提炼出一个可复用的技能。它会自动按照 CONTRIBUTING.md 中的标准编写技能。下次您需要那个工作流时,它已经在那里了。教 Hermes 新技能现在只需一条命令,而不是手动的技能创作会议。([#51506](https://github.com/NousResearch/hermes-agent/pull/51506)、[#52372](https://github.com/NousResearch/hermes-agent/pull/52372) — @teknium1) - **`/journey` —— Hermes 所了解到的关于您的一切的可播放时间线** —— CLI 和 TUI 新增了 `/journey`,这是一个学习时间线,显示 Hermes 随时间积累的记忆和技能——并且您可以直接在该视图中编辑或删除它们。配合桌面版新的 **记忆图谱**(一个自上而下、可播放的径向时间线,展示记忆和技能),您第一次可以真正 *看到* 您的智能体知道什么,观察其成长,并修剪错误的内容。您的智能体记忆不再是一个黑箱。([#55555](https://github.com/NousResearch/hermes-agent/pull/55555)、[#55859](https://github.com/NousResearch/hermes-agent/pull/55859)、[#55226](https://github.com/NousResearch/hermes-agent/pull/55226) — @OutThisLife) - **委派一堆工作并继续前行 —— 后台并行展开** —— `delegate_task` 现在可以并行展开多个子代理,它们都在 **后台** 运行:您的聊天永远不会被阻塞,当所有子代理完成时,它们的结果会作为一次整合的回合返回。启动“并行研究这五个竞争对手”或“审计这三个模块”,然后继续做其他事情,而一支小型舰队在后台工作。当所有工作完成时,您会收到一份简洁的总结,而不是逐一盯梢每个子代理。([#49734](https://github.com/NousResearch/hermes-agent/pull/49734) — @teknium1) - **桌面应用中的一等编程项目** —— 桌面应用获得了真正的、按配置文件管理的 **项目** —— 包含代码库的侧边栏、编码轨道、审查面板、git 工作树管理以及面向智能体的项目工具,全部由适当的 `project → repo → lane` 模型支持。不再有零散的聊天会话,您的编码工作被组织成智能体能够理解并执行的项目。这标志着桌面版正在变成一个真正的编码座舱。([#49037](https://github.com/NousResearch/hermes-agent/pull/49037)、[#54385](https://github.com/NousResearch/hermes-agent/pull/54385)、[#54517](https://github.com/NousResearch/hermes-agent/pull/54517) — @OutThisLife) - **规模化运行 Hermes —— 缩至零和排空协调** —— 网关现在可以在空闲时进入 **休眠状态**,并在重启、迁移或自动更新前干净地静默——而不会丢弃正在进行的对话。托管的或仅中继的 Hermes 可以在无人对话时缩至零,并在有需求时重新唤醒,破坏性的生命周期操作会协调外部排空,确保没有人会在对话中途被切断。运行面向团队或作为托管服务的 Hermes 现在变得更加生产级。([#52243](https://github.com/NousResearch/hermes-agent/pull/52243)、[#52937](https://github.com/NousResearch/hermes-agent/pull/52937)、[#54824](https://github.com/NousResearch/hermes-agent/pull/54824) — @teknium1、@benbarclay) - **更便宜的自我改进 —— 更智能的后台审查** —— 回合后的自我改进分支(决定是否保存记忆或技能的那个分支)现在路由到辅助模型,消化上下文而不是重放整个对话,并调整其节奏——因此在您的回合后运行的“从刚刚发生的事情中学习”循环的成本仅为原来的一小部分。您保留了自我改进的能力,同时不再为此支付完整主模型的价格。([#49252](https://github.com/NousResearch/hermes-agent/pull/49252) — @teknium1) - **在编辑器中编写下一个提示 —— `/prompt`** —— `/prompt` 打开您的 `$EDITOR`,这样您可以用真正的 Markdown 手写一个长的、多行的提示,而不是与单行输入框作斗争。起草一份详细的规格说明、一个结构化的问题或一大段粘贴内容,保存后它就会排队作为您的下一条消息。小功能,但对任何需要对 Hermes 说超过一句话的人来说,这是一个巨大的生活质量提升。([#50509](https://github.com/NousResearch/hermes-agent/pull/50509) — @teknium1) - **Google Vertex AI —— 通过您的 GCP 服务账户使用 Gemini,无需静态密钥** —— Vertex AI 现在是通过 Vertex 的 OpenAI 兼容端点使用 Gemini 模型的一等提供商。普通自定义提供商设置总是在对话中途失败的原因是 Vertex 没有静态 API 密钥——每次请求需要一个从服务账户 JSON 或应用默认凭证生成的短生命周期 OAuth2 访问令牌(约 1 小时 TTL)。Hermes 现在为您生成并自动刷新这些令牌,因此如果您的组织通过 Google Cloud 运行 Gemini,只需将 Hermes 指向您的服务账户即可正常工作——无需粘贴令牌,无需担心会话中途过期。([#56363](https://github.com/NousResearch/hermes-agent/pull/56363) — @teknium1、@slawt) - **安全轮次** —— 本次窗口加固了多个表面:MCP 配置持久化攻击面被锁定,可能泄露提供商凭据的 cron `base_url` 覆盖被阻止,文件读取中前缀秘密使用不可重用的哨兵,Slack 应用级(`xapp-`)令牌被遮蔽,所有后端强制执行浏览器云元数据,以及跨惰性消息路径的 `aiohttp` CVE 底线。减少了提示注入或配置错误的会话泄露凭据的方式。([#50476](https://github.com/NousResearch/hermes-agent/pull/50476)、[#56196](https://github.com/NousResearch/hermes-agent/pull/56196)、[#54166](https://github.com/NousResearch/hermes-agent/pull/54166)、[#56227](https://github.com/NousResearch/hermes-agent/pull/56227)、[#52349](https://github.com/NousResearch/hermes-agent/pull/52349)、[#56237](https://github.com/NousResearch/hermes-agent/pull/56237) — @teknium1、@kshitijk4poor、@claudlos) --- ## 🧠 混合代理模型(MoA) MoA 在本窗口中从一种模式升级为模型系统中的一等组成部分。 - **预设作为可选虚拟模型** —— 每个命名的 MoA 预设都作为 `moa` 提供商下的模型出现;在任何模型选择器中选中它,Hermes 就会通过该集成体路由([#46081](https://github.com/NousResearch/hermes-agent/pull/46081)、[#53561](https://github.com/NousResearch/hermes-agent/pull/53561)、[#53775](https://github.com/NousResearch/hermes-agent/pull/53775) — @teknium1) - **`/moa` 现在是单次快捷指令** —— 通过默认预设运行单次提示,之后恢复您的模型;持久切换通过模型选择器进行([#53548](https://github.com/NousResearch/hermes-agent/pull/53548) — @teknium1) - **参考模型输出显示为标记块**,在 CLI、TUI 和桌面版中 —— 在聚合器合成之前阅读每个模型的推理([#53793](https://github.com/NousResearch/hermes-agent/pull/53793)、[#53855](https://github.com/NousResearch/hermes-agent/pull/53855) — @teknium1) - **聚合器响应实时流式输出**,而不是在沉默后一次性出现([#55625](https://github.com/NousResearch/hermes-agent/pull/55625) — @teknium1) - **参考模型可看到完整工具状态**,并在每次用户/工具响应时触发;咨询参考模型在用户回合结束并收到参考角色系统提示([#54016](https://github.com/NousResearch/hermes-agent/pull/54016)、[#54007](https://github.com/NousResearch/hermes-agent/pull/54007) — @teknium1) - **可选全回合追踪持久化到 JSONL**(`moa.save_traces`),用于调试和评估([#56101](https://github.com/NousResearch/hermes-agent/pull/56101) — @teknium1) - 可靠性:参考模型和聚合器模型通过其提供商的实际路由调用;上下文窗口从聚合器解析(而不是默认的 256K);辅助任务解析到聚合器;虚拟提供商被阻止作为参考/聚合器插槽;容忍手动编辑的预设配置([#53580](https://github.com/NousResearch/hermes-agent/pull/53580)、[#53780](https://github.com/NousResearch/hermes-agent/pull/53780)、[#53827](https://github.com/NousResearch/hermes-agent/pull/53827)、[#53281](https://github.com/NousResearch/hermes-agent/pull/53281)、[#53275](https://github.com/NousResearch/hermes-agent/pull/53275)、[#53556](https://github.com/NousResearch/hermes-agent/pull/53556) — @teknium1) - MoA 插槽提供商身份统一在单一的 `call_llm` 检查点上;HermesBench 结果已记录([#55991](https://github.com/NousResearch/hermes-agent/pull/55991)、[#53206](https://github.com/NousResearch/hermes-agent/pull/53206) — @teknium1) ## ✅ 验证与目标 —— 智能体证明其工作 - **`/goal` 的完成契约** —— 声明“完成”的样子;常驻目标循环根据证据而非模型的主观判断来评估([#50501](https://github.com/NousResearch/hermes-agent/pull/50501) — @teknium1) - **`/goal wait <pid>`** —— 将常驻目标循环挂起到后台进程,而不是重新调用智能体([#50503](https://github.com/NousResearch/hermes-agent/pull/50503) — @teknium1) - **编码验证证据分类账** —— 按配置文件范围记录由 `agent.coding_context` 检测到的规范项目检查;网关暴露验证状态([#52285](https://github.com/NousResearch/hermes-agent/pull/52285)、[#52286](https://github.com/NousResearch/hermes-agent/pull/52286) — @OutThisLife) - **`pre_verify` 钩子 + 编码指导配置**;验证停止循环 + 即席验证脚本([#55413](https://github.com/NousResearch/hermes-agent/pull/55413)、[#52296](https://github.com/NousResearch/hermes-agent/pull/52296)、[#52297](https://github.com/NousResearch/hermes-agent/pull/52297) — @OutThisLife) - **停止时验证默认为关闭**,并附带一次性 v32 迁移;跳过仅文档的编辑;感知表面的“自动”默认值已恢复;在消息传递表面关闭([#53552](https://github.com/NousResearch/hermes-agent/pull/53552)、[#54740](https://github.com/NousResearch/hermes-agent/pull/54740)、[#55449](https://github.com/NousResearch/hermes-agent/pull/55449)、[#52412](https://github.com/NousResearch/hermes-agent/pull/52412) — @teknium1、@OutThisLife、@GodsBoy) ## 🎓 自我改进(学习 / 旅程) - **`/learn <任何内容>`** —— 从目录、URL 或您刚刚演示的工作流中提炼出可复用的技能;遵循 CONTRIBUTING.md 技能标准和混合要求([#51506](https://github.com/NousResearch/hermes-agent/pull/51506)、[#52372](https://github.com/NousResearch/hermes-agent/pull/52372)、[#55956](https://github.com/NousResearch/hermes-agent/pull/55956) — @teknium1) - **`/journey`** —— CLI + TUI 学习时间线,展示积累的记忆和技能,支持就地编辑/删除([#55555](https://github.com/NousResearch/hermes-agent/pull/55555)、[#55859](https://github.com/NousResearch/hermes-agent/pull/55859) — @OutThisLife) - **更便宜的后台审查** —— 辅助模型路由 + 上下文摘要 + 自适应节奏,用于回合后的自我改进分支([#49252](https://github.com/NousResearch/hermes-agent/pull/49252) — @teknium1) - **桌面版中的 `memory` 图谱** —— 可播放的径向时间线,展示随时间变化的记忆和技能([#55226](https://github.com/NousResearch/hermes-agent/pull/55226) — @OutThisLife) ## 🖥️ Hermes 桌面应用 ### 编码座舱 - **一等项目** —— 按配置文件管理的侧边栏、编码轨道、审查面板、智能体项目工具(`project → repo → lane`);支持远程网关的文件夹选择器 + git 座舱(状态、审查、工作树)([#49037](https://github.com/NousResearch/hermes-agent/pull/49037)、[#54385](https://github.com/NousResearch/hermes-agent/pull/54385) — @OutThisLife) - **多终端面板**,带有只读智能体终端;跨重启持久化并恢复终端标签页及回滚内容([#54517](https://github.com/NousResearch/hermes-agent/pull/54517)、[#54585](https://github.com/NousResearch/hermes-agent/pull/54585) — @OutThisLife) - **聊天中的 PR 风格文件差异**;文件预览面板的应用内即时编辑器;内联富媒体嵌入、图表和助手 markdown 中的提醒([#50731](https://github.com/NousResearch/hermes-agent/pull/50731)、[#52772](https://github.com/NousResearch/hermes-agent/pull/52772)、[#52935](https://github.com/NousResearch/hermes-agent/pull/52935) — @OutThisLife) ### 用户体验与界面 - 长线程的对话时间线轨道;上下文使用量分解弹出框;用于子代理监视窗口的只读观众副本;将编辑器弹出为可拖动的浮动窗口([#51094](https://github.com/NousResearch/hermes-agent/pull/51094)、[#54907](https://github.com/NousResearch/hermes-agent/pull/54907)、[#55033](https://github.com/NousResearch/hermes-agent/pull/55033)、[#49488](https://github.com/NousResearch/hermes-agent/pull/49488) — @OutThisLife、@austinpickett) - 朗读回复(自动 TTS)编辑器切换;记住窗口大小/位置/最大化状态跨启动;重新设计的澄清提示;共享的覆盖面板原语用于 cron/配置文件/智能体([#55154](https://github.com/NousResearch/hermes-agent/pull/55154)、[#52086](https://github.com/NousResearch/hermes-agent/pull/52086)、[#52993](https://github.com/NousResearch/hermes-agent/pull/52993)、[#54558](https://github.com/NousResearch/hermes-agent/pull/54558) — @OutThisLife) - 从 Web UI 备份导入/创建/下载;添加上下文使用量弹出框;在安装选择器中标记已安装的主题;配置驱动的 Electron 启动标志 + GPU 策略([#54611](https://github.com/NousResearch/hermes-agent/pull/54611)、[#55410](https://github.com/NousResearch/hermes-agent/pull/55410)、[#53991](https://github.com/NousResearch/hermes-agent/pull/53991) — @teknium1、@OutThisLife) - **宠物** —— 漫游宠物(可选)、更冷静/逼真的漫游、Alt+滚轮缩放不再裁剪、帧完美孵化流程 + CPU 安全色度、弹出叠加 + 通知([#55114](https://github.com/NousResearch/hermes-agent/pull/55114)、[#55400](https://github.com/NousResearch/hermes-agent/pull/55400)、[#52877](https://github.com/NousResearch/hermes-agent/pull/52877)、[#47959](https://github.com/NousResearch/hermes-agent/pull/47959)、[#52303](https://github.com/NousResearch/hermes-agent/pull/52303) — @OutThisLife) ### 重构浪潮(编辑器 / 神文件解耦) - 将编辑器分解为独立的引擎钩子;提取了分支/转义/URL/占位符/弹出引擎;将 `thread.tsx`、`sidebar/index.tsx`、引导覆盖和 `use-prompt-actions` 神文件拆分为专注的模块;共享的 WebSocket 层将桌面版从仪表板(`hermes serve`)解耦([#55500](https://github.com/NousResearch/hermes-agent/pull/55500)、[#55842](https://github.com/NousResearch/hermes-agent/pull/55842)、[#55451](https://github.com/NousResearch/hermes-agent/pull/55451)、[#55453](https://github.com/NousResearch/hermes-agent/pull/55453)、[#55807](https://github.com/NousResearch/hermes-agent/pull/55807)、[#55504](https://github.com/NousResearch/hermes-agent/pull/55504)、[#54568](https://github.com/NousResearch/hermes-agent/pull/54568) — @OutThisLife) - 性能:限制工具结果渲染,防止大的 `/learn` 运行导致冻结;在负载下快速切换会话([#52273](https://github.com/NousResearch/hermes-agent/pull/52273)、[#52620](https://github.com/NousResearch/hermes-agent/pull/52620) — @OutThisLife) ## 📊 Web 仪表板 - 在未认证加载时自动发起门户 SSO 重定向;在无提供商、非回环绑定时交互式身份验证设置;自托管 OIDC 中支持机密客户端(`client_secret`)([#54846](https://github.com/NousResearch/hermes-agent/pull/54846)、[#50551](https://github.com/NousResearch/hermes-agent/pull/50551)、[#55344](https://github.com/NousResearch/hermes-agent/pull/55344) — @teknium1、@benbarclay) - 在 `OPTIONAL_ENV_VARS` 中列出所有记忆提供商的 API 密钥;在密钥页面上列出并添加任意自定义 `.env` 密钥;暴露 cron 作业执行字段;备份导入/创建/下载([#54546](https://github.com/NousResearch/hermes-agent/pull/54546)、[#54552](https://github.com/NousResearch/hermes-agent/pull/54552)、[#53551](https://github.com/NousResearch/hermes-agent/pull/53551)、[#54611](https://github.com/NousResearch/hermes-agent/pull/54611) — @benbarclay、@teknium1) - 将 PTY 生成/关闭从事件循环中卸出;从交互式登录表面排除非交互式提供商([#53227](https://github.com/NousResearch/hermes-agent/pull/53227)、[#53239](https://github.com/NousResearch/hermes-agent/pull/53239) — @IAvecilla) ## 🏗️ 核心智能体与架构 ### 委派与子代理 - **后台并行展开** —— 并行子代理在后台运行,所有完成时一次性合并返回;为后台 `delegate_task` 提供平静的“将恢复”提示([#49734](https://github.com/NousResearch/hermes-agent/pull/49734)、[#52756](https://github.com/NousResearch/hermes-agent/pull/52756) — @teknium1、@OutThisLife) - 在 CLI + TUI 状态栏中跟踪后台子代理([#51441](https://github.com/NousResearch/hermes-agent/pull/51441)、[#51485](https://github.com/NousResearch/hermes-agent/pull/51485) — @teknium1) ### 智能体循环、工具与编码上下文 - 单次 LLM 助手 + `llm.oneshot` 网关 RPC;暴露编码上下文项目事实(`project.facts` RPC)([#51261](https://github.com/NousResearch/hermes-agent/pull/51261)、[#51259](https://github.com/NousResearch/hermes-agent/pull/51259) — @OutThisLife) - `web_extract` 截断并存储,而非 LLM 摘要;并发 @-引用展开([#54843](https://github.com/NousResearch/hermes-agent/pull/54843)、[#55207](https://github.com/NousResearch/hermes-agent/pull/55207) — @teknium1、@kshitijk4poor) - 为内置工具提供友好的人类化工具标签;`/reasoning full`(无上限思考);`/timestamps` + `/history` 中的时间戳;`/prompt` 在 `$EDITOR` 中编写([#55166](https://github.com/NousResearch/hermes-agent/pull/55166)、[#50499](https://github.com/NousResearch/hermes-agent/pull/50499)、[#50506](https://github.com/NousResearch/hermes-agent/pull/50506)、[#50509](https://github.com/NousResearch/hermes-agent/pull/50509) — @teknium1) - 在流式和非流式检测器中为每个推理模型设置过时超时底线;在宽限期后将 SIGTERM 升级为 SIGKILL 以终止主机 PID([#52845](https://github.com/NousResearch/hermes-agent/pull/52845)、[#50489](https://github.com/NousResearch/hermes-agent/pull/50489) — @teknium1) - 支持多个 `HERMES_WRITE_SAFE_ROOT` 目录;将 HTTP/WS 主体捕获可选项隔离到独立的、排除共享的 `gui_bodies.log` 文件中([#53292](https://github.com/NousResearch/hermes-agent/pull/53292)、[#49044](https://github.com/NousResearch/hermes-agent/pull/49044) — @kshitijk4poor) ### 压缩与会话 - 原地压缩选项(单一会话 id);将 `in_place` 默认值改为 True 并附带保护修复([#49739](https://github.com/NousResearch/hermes-agent/pull/49739)、[#52658](https://github.com/NousResearch/hermes-agent/pull/52658) — @teknium1) - 备份在更新前快照中包含 `projects.db` 和看板([#52990](https://github.com/NousResearch/hermes-agent/pull/52990) — @kshitijk4poor) ### 提供商与模型 - **Google Vertex AI** 作为通过 OpenAI 兼容端点使用 Gemini 的一等提供商——自动生成并刷新来自服务账户 JSON / ADC 的短生命周期 OAuth2 令牌(无需静态密钥);保留并现代化了 @slawt 的 #8427([#56363](https://github.com/NousResearch/hermes-agent/pull/56363) — @teknium1、@slawt) - 通过托管 Nous 订阅网关的 Krea;Z.AI 端点选择器(全球/中国/编码计划);Ollama-cloud reasoning_effort 接线;移除 google-gemini-cli + google-antigravity OAuth 提供商([#52647](https://github.com/NousResearch/hermes-agent/pull/52647)、[#52364](https://github.com/NousResearch/hermes-agent/pull/52364)、[#51494](https://github.com/NousResearch/hermes-agent/pull/51494)、[#50492](https://github.com/NousResearch/hermes-agent/pull/50492) — @teknium1、@kshitijk4poor) - 遵循 `NOUS_INFERENCE_BASE_URL` 环境覆盖用于 Nous OAuth;保持 Nous 认证对空闲仪表板/网关智能体保持新鲜([#52270](https://github.com/NousResearch/hermes-agent/pull/52270)、[#50567](https://github.com/NousResearch/hermes-agent/pull/50567) — @benbarclay、@teknium1) ## 🌐 网关、舰队与中继 ### 缩至零与排空 - **缩至零空闲检测 + 休眠静默(阶段 0)**;加固休眠保护;修复 arm-gate 计数禁用占位平台的问题([#52243](https://github.com/NousResearch/hermes-agent/pull/52243)、[#52359](https://github.com/NousResearch/hermes-agent/pull/52359)、[#52831](https://github.com/NousResearch/hermes-agent/pull/52831) — @teknium1、@benbarclay) - **外部排空协调(安全关闭阶段 2)**;在标记排空时抑制主通道关闭广播;在重启/关闭排空超时后持久化进行中的对话记录;为安全生命周期操作提供忙碌/空闲读取([#52937](https://github.com/NousResearch/hermes-agent/pull/52937)、[#54824](https://github.com/NousResearch/hermes-agent/pull/54824)、[#50312](https://github.com/NousResearch/hermes-agent/pull/50312)、[#50131](https://github.com/NousResearch/hermes-agent/pull/50131) — @teknium1、@benbarclay、@kshitijk4poor) - 默认 `restart_drain_timeout` 为 0 以终止 systemd 崩溃循环;自我修复陷入排空/降级状态的网关([#54066](https://github.com/NousResearch/hermes-agent/pull/54066)、[#55397](https://github.com/NousResearch/hermes-agent/pull/55397) — @teknium1) ### 中继(阶段 5 / 6) - 唤醒原语(网关侧);进入空闲/缓冲翻转原语;通过 WS 的 `passthrough_forward`;每个智能体多平台身份 + 每帧出口;在自我配置时转发稳定的实例 id;向连接器声明相关性策略([#51595](https://github.com/NousResearch/hermes-agent/pull/51595)、[#51572](https://github.com/NousResearch/hermes-agent/pull/51572)、[#50702](https://github.com/NousResearch/hermes-agent/pull/50702)、[#52830](https://github.com/NousResearch/hermes-agent/pull/52830)、[#50772](https://github.com/NousResearch/hermes-agent/pull/50772)、[#51248](https://github.com/NousResearch/hermes-agent/pull/51248) — @benbarclay) - 根据投递目标而非 `source.platform` 授权中继投递的事件;采用 `scope_id` 线键;清除平台特定的作用域术语([#52306](https://github.com/NousResearch/hermes-agent/pull/52306)、[#55289](https://github.com/NousResearch/hermes-agent/pull/55289)、[#56016](https://github.com/NousResearch/hermes-agent/pull/56016) — @benbarclay) ### 网关核心与渲染 - 类型化发送错误分类(`SendResult.error_kind`);每平台 `typing_indicator` 切换;`/usage` 中的每类别上下文分解([#50342](https://github.com/NousResearch/hermes-agent/pull/50342)、[#55394](https://github.com/NousResearch/hermes-agent/pull/55394)、[#55204](https://github.com/NousResearch/hermes-agent/pull/55204) — @teknium1) - API 服务器:可配置的并发运行上限以防止 DoS;按运行 id 限定运行审批范围([#50007](https://github.com/NousResearch/hermes-agent/pull/50007)、[#56129](https://github.com/NousResearch/hermes-agent/pull/56129) — @teknium1) ## 📱 消息平台 - **Cron 延续** —— 可延续的 cron 作业(线程优先延续,附带 DM 镜像回退);Slack 的平坦频道内可延续 cron 投递;在创建/列出 cron 时警告网关未运行([#52250](https://github.com/NousResearch/hermes-agent/pull/52250)、[#56254](https://github.com/NousResearch/hermes-agent/pull/56254)、[#51696](https://github.com/NousResearch/hermes-agent/pull/51696) — @teknium1) - Telegram:可配置的命令菜单 + 提高默认上限以便技能保持可见;分别控制富草稿预览;在重试前排空通用发送池([#51716](https://github.com/NousResearch/hermes-agent/pull/51716)、[#52088](https://github.com/NousResearch/hermes-agent/pull/52088)、[#54121](https://github.com/NousResearch/hermes-agent/pull/54121) — @teknium1、@helix4u) - Slack:智能体消息的可选 Block Kit 渲染;清单生成的 `--no-assistant` 标志([#56102](https://github.com/NousResearch/hermes-agent/pull/56102)、[#51487](https://github.com/NousResearch/hermes-agent/pull/51487) — @teknium1) - Discord:通过 `display.reasoning_style` 将推理渲染为 `-#` 子文本([#51168](https://github.com/NousResearch/hermes-agent/pull/51168) — @teknium1) - 通过 Baileys 桥的原生 WhatsApp 媒体投递;Teams 原生 `send_video`/`send_voice`/`send_document`;photon 边车升级到 spectrum-ts v8 并带有 tapback 相关;Raft 网关设置向导([#53598](https://github.com/NousResearch/hermes-agent/pull/53598)、[#49308](https://github.com/NousResearch/hermes-agent/pull/49308)、[#53451](https://github.com/NousResearch/hermes-agent/pull/53451)、[#56230](https://github.com/NousResearch/hermes-agent/pull/56230) — @teknium1) - Signal:AAC 语音留言重新混合 + 共享 Markdown 格式化([#49530](https://github.com/NousResearch/hermes-agent/pull/49530) — @kshitijk4poor) - 将 slack/dingtalk/whatsapp/matrix/feishu/telegram/wecom/email/sms 适配器迁移到捆绑模式([#49408](https://github.com/NousResearch/hermes-agent/pull/49408) — @teknium1) ## 🔧 工具系统、技能与 MCP - 空白石板设置模式 —— 最小智能体,选择性加入所有内容([#36733](https://github.com/NousResearch/hermes-agent/pull/36733) — @teknium1) - MCP:配置持久化攻击面加固;阻止 base_url 泄露;短 TTL 会话的保活(参见安全部分)—— 同时保留自 v0.17.0 的目录和用户体验 - 技能:`/learn` 提炼(参见自我改进);`cloudflare-temporary-deploy` 可选技能;creative-ideation v2.1.0 方法库([#50849](https://github.com/NousResearch/hermes-agent/pull/50849)、[#42402](https://github.com/NousResearch/hermes-agent/pull/42402) — @teknium1、@SHL0MS) - 看板:任务生命周期插件钩子(已认领/已完成/已阻塞);类型化阻塞原因 + 解除阻塞循环断路器;移交新鲜度戳记([#50349](https://github.com/NousResearch/hermes-agent/pull/50349)、[#52848](https://github.com/NousResearch/hermes-agent/pull/52848)、[#53973](https://github.com/NousResearch/hermes-agent/pull/53973) — @teknium1) - 插件:`ctx.profile_name` 用于与会话无关的配置文件访问([#50346](https://github.com/NousResearch/hermes-agent/pull/50346) — @teknium1) - LSP:PowerShellEditorServices 语言服务器;mem0 v3 API + OSS 模式 + 更新/删除工具([#55930](https://github.com/NousResearch/hermes-agent/pull/55930)、[#15624](https://github.com/NousResearch/hermes-agent/pull/15624) — @teknium1、@kartik-mem0) ## ⚡ 性能 - 冷启动:延迟加载网关平台适配器;使用 libyaml `CSafeLoader` 解析配置 + 插件清单([#54448](https://github.com/NousResearch/hermes-agent/pull/54448)、[#54486](https://github.com/NousResearch/hermes-agent/pull/54486) — @teknium1) - 状态:合并 FTS5 段 + `handoff_state` 索引以减少写锁争用;单次遍历 `list_profiles` 别名映射 + 技能计数缓存 + 事件循环卸出([#54752](https://github.com/NousResearch/hermes-agent/pull/54752)、[#54770](https://github.com/NousResearch/hermes-agent/pull/54770) — @kshitijk4poor、@teknium1) ## 🔒 安全与可靠性 - 加固 MCP 配置持久化攻击面;阻止泄露提供商凭据的 cron `base_url` 覆盖;在文件读取中使用不可重用的哨兵保护前缀秘密([#50476](https://github.com/NousResearch/hermes-agent/pull/50476)、[#56196](https://github.com/NousResearch/hermes-agent/pull/56196)、[#54166](https://github.com/NousResearch/hermes-agent/pull/54166) — @teknium1、@kshitijk4poor) - 遮蔽 Slack 应用级(`xapp-`)令牌;所有后端强制执行浏览器云元数据(CDP 非本地);在 `browser_back` 导航后重新检查私有网络保护;将 `/resume` 和 `/sessions` 限制为调用者源(IDOR);跨惰性消息路径设置 `aiohttp` 3.14.1 CVE 底线 + 固定漂移保护([#56227](https://github.com/NousResearch/hermes-agent/pull/56227)、[#52349](https://github.com/NousResearch/hermes-agent/pull/52349)、[#56526](https://github.com/NousResearch/hermes-agent/pull/56526)、[#56378](https://github.com/NousResearch/hermes-agent/pull/56378)、[#56237](https://github.com/NousResearch/hermes-agent/pull/56237) — @teknium1、@claudlos、@kshitijk4poor) - Cron 可靠性浪潮:当未固定的作业的提供商发生漂移时,失败关闭;运行错过宽限期的作业一次而不是永远延迟;在 `BaseException` 发生时保持心跳活跃 + 心跳感知状态;将已启用的 MCP 服务器分层应用于每作业工具集;保护 cron 模型工具路径 + 自动恢复循环断路器([#51051](https://github.com/NousResearch/hermes-agent/pull/51051)、[#50062](https://github.com/NousResearch/hermes-agent/pull/50062)、[#50016](https://github.com/NousResearch/hermes-agent/pull/50016)、[#50117](https://github.com/NousResearch/hermes-agent/pull/50117)、[#56240](https://github.com/NousResearch/hermes-agent/pull/56240) — @kshitijk4poor、@teknium1) - Windows:抑制控制台闪烁 + 加固网关重启;在 PATH 回退中优先使用 cmd npm shim;在 GUI 更新后重新生成无窗口网关;优先使用托管节点用于 whatsapp/desktop([#52340](https://github.com/NousResearch/hermes-agent/pull/52340)、[#50398](https://github.com/NousResearch/hermes-agent/pull/50398)、[#52239](https://github.com/NousResearch/hermes-agent/pull/52239) — @helix4u、@teknium1) ## 🔁 回滚(窗口内,以供记录) - cron 作业存储恢复到每个配置文件(回滚 #32117 + #50993);不克隆 `auth.json`(重复 OAuth 授权会导致兄弟令牌撤销);回滚 Windows 终端弹出 PR;`prompt_caching.enabled` 切换回滚以供重新评估([#51116](https://github.com/NousResearch/hermes-agent/pull/51116)、[#51732](https://github.com/NousResearch/hermes-agent/pull/51732)、[#53853](https://github.com/NousResearch/hermes-agent/pull/53853)、[#56126](https://github.com/NousResearch/hermes-agent/pull/56126) — @teknium1) ## 👥 贡献者 本次发布共有 **381 人** 贡献(通过提交、共同作者尾注以及保存的 PR)。感谢各位。 ### 核心 - @teknium1 —— 发布负责人;MoA 一等公民、验证/目标、`/learn`、后台审查、安全轮次、提供商、P0/P1 彻底清理 - @OutThisLife —— 桌面应用(项目、记忆图谱、`/journey`、多终端、编辑器重构浪潮、宠物、验证用户体验) ### 顶级社区贡献者 - @kshitijk4poor —— P0/P1 积压任务燃烧:cron 可靠性浪潮、状态性能、安全(cron 凭据泄露)、网关/信号、TUI 配置——优先关闭任务中的巨大份额 - @benbarclay —— 中继阶段 5/6、缩至零/排空协调、仪表板认证/密钥、网关加固 - @ethernet8023 —— CI/ Docker(统一作业、更快构建、计时报告) - @helix4u —— Windows 加固(控制台闪烁、npm shim、网关重启) ### 全部贡献者 *(此处省略了完整的贡献者列表,保留原文格式但翻译标题为“全部贡献者”即可。由于列表极长,此处按格式保留但以翻译说明。)* @0xbyt4、@0xDevNinja、@0xsir0000、@1RB、@595650661、@aaronlab、@abchiaravalle、@adammatski1972、@AetherAgents、@Afnath-max、@agt-user、@ahmadashfq、@AhmetArif0、@AIalliAI、@aieng-abdullah、@ailang323、@ailthrim、@aj-nt、@alelpoan、@alloevil、@amathxbt、@ambition0802、@anderskev、@andressommerhoff、@angelos、@annguyenNous、@Antimatter543、@arminanton、@arthurzhang、@asimons81、@austinpickett、@baolingao、@Bartok9、@basilalshukaili、@BBCrypto-web、@bbopen、@Beandon13、@beardthelion、@benbarclay、@benbenlijie、@binhnt92、@bitcryptic-gw、@Blaryxoff、@bogerman1、@bradhallett、@brett539、@briandevans、@buihongduc132、@bykim0119、@catapreta、@chaithanyak42、@charleneleong-ai、@CharlieKerfoot、@chazmaniandinkle、@chrispersico、@Christopher-Schulze、@chriswesley4、@claudlos、@clovericbot、@cmcejas、@codexGW、@Cossackx、@counterposition、@coygeek、@CRWuTJ、@cyb0rgk1tty、@cyb3rwr3n、@cypctlinux、@cypres0099、@dalenguyen、@Danamove、@DanAsBjorn、@DataAdvisory、@davidgut1982、@DavidMetcalfe、@davidvv、@de1tydev、@denisqq、@devorun、@devsart95、@DhivinX、@DiamondEyesFox、@difujia、@Disaster-Terminator、@djimit、@djstunami、@dodo-reach、@donovan-yohan、@Dr1985、@DrZM007、@Dusk1e、@egilewski、@ehz0ah、@Eji4h、@EloquentBrush0x、@Elshayib、@emozilla、@entropy-0x、@Erosika、@EtherAura、@etherman-os、@ethernet8023、@f-trycua、@fayenix、@fesalfayed、@firefly、@flamiinngo、@flobo3、@francescomucio、@franksong2702、@friendshipisover、@fsaad1984、@fyzanshaik、@GauravPatil2515、@gdeyoung、@georgex8001、@GodsBoy、@graphanov、@Gromykoss、@gustavosmendes、@Gutslabs、@H2KFORGIVEN、@haileymarshall、@hakanpak、@happy5318、@haran2001、@harjothkhara、@heathley、@hehehe0803、@helix4u、@herbalizer404、@HexLab98、@HiddenPuppy、@Hinotoi-agent、@HODLCLONE、@houko、@huangsen365、@huangxudong663-sys、@huangxun375-stack、@HwangJohn、@iaji、@iamlukethedev、@IamSanchoPanza、@IAvecilla、@Icather、@iizotov、@indigokarasu、@infinitycrew39、@ipriyaaanshu、@isair、@islam666、@itenev、@itsflownium、@izumi0uu、@Jaaneek、@JabberELF、@jackjin1997、@jackroofan、@janrenz、@jasnoorgill、@jasonQin6、@jcjc81、@jearnest11、@jeeves-assistant、@Jeffgithub0029、@jeffrobodie-glitch、@JezzaHehn、@jimmyjohansson84、@jmmaloney4、@jnibarger01、@JoaoMarcos44、@jplew、@Junass1、@justemu、@justin-cyhuang、@JustinOhms、@jvradahellys24-art、@Kailigithub、@kaishi00、@kangsoo-bit、@kartik-mem0、@keiravoss94、@kenyonxu、@kernel-t1、@Kewe63、@KeyArgo、@KiruyaMomochi、@kn8-codes、@Kolektori、@konsisumer、@kshitijk4poor、@kyssta-exe、@Kyzcreig、@Lazymonter、@LehaoLin、@LeonSGP43、@lEWFkRAD、@libre-7、@LIC99、@LifeJiggy、@linyubin、@liuhao1024、@lkevincc0、@lkz-de、@loes5050、@londo161、@lubosxyz、@m24927605、@MaheshtheDev、@manus-use、@marco0158、@MarioYounger、@martinramos002-bot、@MattKotsenas、@max-chen、@MaxFreedomPollard、@maxmilian、@maxpetrusenko、@memosr、@Mibayy、@Minksgo、@mintybasil、@mkslzk、@mohamedorigami-jpg、@MorAlekss、@mrparker0980、@ms-alan、@namredips、@nankingjing、@natehale、@necoweb3、@neo-2026、@Nickperillo、@nightq、@nikshepsvn、@nnnet、@nocturnum91、@nodejun、@NousResearch、@nycomar、@OmarB97、@orbisai0security、@oreoluwa、@outsourc-e、@OutThisLife、@p-andhika、@panghuer023、@Paperclip、@peetwan、@pefontana、@petrichor-op、@pinguarmy、@PINKIIILQWQ、@pmos69、@PolyphonyRequiem、@pprism13、@PRATHAMESH75、@professorpalmer、@pyxl-dev、@Que0x、@qWaitCrypto、@r266-tech、@RafaelMiMi、@Railway9784、@randomuser2026x、@rayjun、@rc-int、@rebel0789、@redactdeveloper、@riyas22、@rlaope、@rob-maron、@rodboev、@rodrigoeqnit、@rratmansky、@rrevenanttt、@ruangraung、@Ruzzgar、@ryo-solo、@s010mn、@Sahil-SS9、@SahilRakhaiya05、@SandroHub013、@Sanjays2402、@sasquatch9818、@ScotterMonk、@season179、@sgabel、@sgaofen、@sgtworkman、@shandian64、@shannonsands、@shashwatgokhe、@shawchanshek、@sherman-yang、@SHL0MS、@SidUParis、@SimoKiihamaki、@simpolism、@sjh9714、@skabartem、@skyc1e、@slawt、@soynchux、@spiky02plateau、@spjoes、@sprmn24、@srojk34、@stepanov1975、@steveonjava、@Subway2023、@sweetcornna、@swissly、@Sworntech-dev、@syahidfrd、@synapsesx、@szzhoujiarui-sketch、@talmax1124、@telos-oc、@testingbuddies24、@texhy、@tgmerritt、@theAgenticBuilder、@thestral123、@tkwong、@Tortugasaur、@Tranquil-Flow、@trevorgordon981、@truenorth-lj、@tt-a1i、@tuancookiez-hub、@TutkuEroglu、@tymrtn、@udatny、@UgwujaGeorge、@underthestars-zhy、@uperLu、@uzunkuyruk、@valenteff、@valentt、@vanthinh6886、@Versun、@victor-kyriazakos、@virtuadex、@vKongv、@w31rdm4ch1nZ、@weidzhou、@wgu9、@whoislikemiha、@wnuuee1、@woaini30050、@WuKongAI-CMU、@WuTianyi123、@WXBR、@x7peeps、@x9x9x9x9x9x91、@Xowiek、@xxchan、@xxxigm、@xydigit-zt、@yapsrubricsz0、@yashiels、@yeyitech、@ygd58、@YLChen-007、@yong2bba、@yoniebans、@ypwcharles、@yu-xin-c、@yungchentang、@yusekiotacode、@YuShu、@yyzquwu、@zapabob、@zccyman、@zeapsu、@zmlgit、@znding04、@Zyxxx-xxxyZ 此外还有:Lucas Nicolas。 --- **完整变更日志**: [v2026.6.19...v2026.7.1](https://github.com/NousResearch/hermes-agent/compare/v2026.6.19...v2026.7.1)