# Hermes Agent v0.3.0 (v2026.3.17)
**发布日期:** 2026年3月17日
> 流式传输、插件与提供商版本发布——统一实时令牌交付、一流的插件架构、基于 Vercel AI Gateway 重建的提供商系统、原生 Anthropic 提供商、智能审批、实时 Chrome CDP 浏览器连接、ACP IDE 集成、Honcho 记忆、语音模式、持久化 Shell,以及跨所有平台的 50 多个错误修复。
---
## ✨ 亮点
- **统一流式传输基础设施** — 在 CLI 和所有网关平台实现逐令牌的实时交付。响应在生成时即开始流式传输,而非作为整体到达。([#1538](https://github.com/NousResearch/hermes-agent/pull/1538))
- **一流的插件架构** — 将 Python 文件放入 `~/.hermes/plugins/` 即可通过自定义工具、命令和钩子扩展 Hermes,无需 Fork。([#1544](https://github.com/NousResearch/hermes-agent/pull/1544), [#1555](https://github.com/NousResearch/hermes-agent/pull/1555))
- **原生 Anthropic 提供商** — 直接调用 Anthropic API,支持 Claude Code 凭据自动发现、OAuth PKCE 流程和原生提示缓存。无需 OpenRouter 中间商。([#1097](https://github.com/NousResearch/hermes-agent/pull/1097))
- **智能审批与 `/stop` 命令** — 受 Codex 启发的审批系统,可学习哪些命令是安全的并记住您的偏好。`/stop` 可立即终止当前代理运行。([#1543](https://github.com/NousResearch/hermes-agent/pull/1543))
- **Honcho 记忆集成** — 异步记忆写入、可配置的召回模式、会话标题集成和网关模式下的多用户隔离。由 @erosika 贡献。([#736](https://github.com/NousResearch/hermes-agent/pull/736))
- **语音模式** — CLI 中的一键通话、Telegram/Discord 中的语音留言、Discord 语音频道支持,以及通过 faster-whisper 实现的本地 Whisper 转录。([#1299](https://github.com/NousResearch/hermes-agent/pull/1299), [#1185](https://github.com/NousResearch/hermes-agent/pull/1185), [#1429](https://github.com/NousResearch/hermes-agent/pull/1429))
- **并发工具执行** — 多个独立的工具调用现在可通过 ThreadPoolExecutor 并行运行,显著降低多工具回合的延迟。([#1152](https://github.com/NousResearch/hermes-agent/pull/1152))
- **个人身份信息(PII)编辑** — 当启用 `privacy.redact_pii` 时,会在将上下文发送给 LLM 提供商前自动清除个人身份信息。([#1542](https://github.com/NousResearch/hermes-agent/pull/1542))
- **`/browser connect` 通过 CDP** — 通过 Chrome DevTools Protocol 将浏览器工具附加到正在运行的 Chrome 实例。可调试、检查并与已打开的页面交互。([#1549](https://github.com/NousResearch/hermes-agent/pull/1549))
- **Vercel AI Gateway 提供商** — 通过 Vercel 的 AI Gateway 路由 Hermes,以访问其模型目录和基础设施。([#1628](https://github.com/NousResearch/hermes-agent/pull/1628))
- **集中式提供商路由器** — 重建的提供商系统,包含 `call_llm` API、统一的 `/model` 命令、模型切换时自动检测提供商,以及针对辅助/委托客户端的直接端点覆盖。([#1003](https://github.com/NousResearch/hermes-agent/pull/1003), [#1506](https://github.com/NousResearch/hermes-agent/pull/1506), [#1375](https://github.com/NousResearch/hermes-agent/pull/1375))
- **ACP 服务器(IDE 集成)** — VS Code、Zed 和 JetBrains 现在可将 Hermes 作为代理后端连接,并支持完整的斜杠命令。([#1254](https://github.com/NousResearch/hermes-agent/pull/1254), [#1532](https://github.com/NousResearch/hermes-agent/pull/1532))
- **持久化 Shell 模式** — 本地和 SSH 终端后端可在工具调用间保持 Shell 状态——cd、环境变量和别名均会保留。由 @alt-glitch 贡献。([#1067](https://github.com/NousResearch/hermes-agent/pull/1067), [#1483](https://github.com/NousResearch/hermes-agent/pull/1483))
- **代理策略蒸馏(OPD)** — 新的 RL 训练环境,用于蒸馏代理策略,扩展 Atropos 训练生态系统。([#1149](https://github.com/NousResearch/hermes-agent/pull/1149))
---
## 🏗️ 核心代理与架构
### 提供商与模型支持
- **集中式提供商路由器**,配备 `call_llm` API 和统一的 `/model` 命令 — 无缝切换模型和提供商 ([#1003](https://github.com/NousResearch/hermes-agent/pull/1003))
- **Vercel AI Gateway** 提供商支持 ([#1628](https://github.com/NousResearch/hermes-agent/pull/1628))
- 通过 `/model` 切换模型时**自动检测提供商** ([#1506](https://github.com/NousResearch/hermes-agent/pull/1506))
- **直接端点覆盖**,适用于辅助和委托客户端 — 可将视觉/子代理调用指向特定端点 ([#1375](https://github.com/NousResearch/hermes-agent/pull/1375))
- **原生 Anthropic 辅助视觉** — 使用 Claude 的原生视觉 API,而非通过 OpenAI 兼容端点路由 ([#1377](https://github.com/NousResearch/hermes-agent/pull/1377))
- Anthropic OAuth 流程改进 — 自动运行 `claude setup-token`、重新认证、PKCE 状态持久化、身份指纹识别 ([#1132](https://github.com/NousResearch/hermes-agent/pull/1132), [#1360](https://github.com/NousResearch/hermes-agent/pull/1360), [#1396](https://github.com/NousResearch/hermes-agent/pull/1396), [#1597](https://github.com/NousResearch/hermes-agent/pull/1597))
- 修复 Claude 4.6 模型无 `budget_tokens` 时的自适应思维 — 由 @ASRagab 贡献 ([#1128](https://github.com/NousResearch/hermes-agent/pull/1128))
- 通过适配器修复 Anthropic 缓存标记 — 由 @brandtcormorant 贡献 ([#1216](https://github.com/NousResearch/hermes-agent/pull/1216))
- Anthropic 429/529 错误重试并向用户展示详情 — 由 @0xbyt4 贡献 ([#1585](https://github.com/NousResearch/hermes-agent/pull/1585))
- 修复 Anthropic 适配器 max_tokens、回退崩溃、代理 base_url — 由 @0xbyt4 贡献 ([#1121](https://github.com/NousResearch/hermes-agent/pull/1121))
- 修复 DeepSeek V3 解析器丢弃多个并行工具调用 — 由 @mr-emmett-one 贡献 ([#1365](https://github.com/NousResearch/hermes-agent/pull/1365), [#1300](https://github.com/NousResearch/hermes-agent/pull/1300))
- 接受未列出的模型并给出警告而非拒绝 ([#1047](https://github.com/NousResearch/hermes-agent/pull/1047), [#1102](https://github.com/NousResearch/hermes-agent/pull/1102))
- 对不支持的 OpenRouter 模型跳过推理参数 ([#1485](https://github.com/NousResearch/hermes-agent/pull/1485))
- MiniMax Anthropic API 兼容性修复 ([#1623](https://github.com/NousResearch/hermes-agent/pull/1623))
- 自定义端点 `/models` 验证和 `/v1` 基础 URL 建议 ([#1480](https://github.com/NousResearch/hermes-agent/pull/1480))
- 从 `custom_providers` 配置解析委托提供商 ([#1328](https://github.com/NousResearch/hermes-agent/pull/1328))
- Kimi 模型 additions 和 User-Agent 修复 ([#1039](https://github.com/NousResearch/hermes-agent/pull/1039))
- 为 Mistral 兼容性剥离 `call_id`/`response_item_id` ([#1058](https://github.com/NousResearch/hermes-agent/pull/1058))
### 代理循环与对话
- **支持 Anthropic 上下文编辑 API** ([#1147](https://github.com/NousResearch/hermes-agent/pull/1147))
- 改进上下文压缩交接摘要 — 压缩器现在保留更多可操作状态 ([#1273](https://github.com/NousResearch/hermes-agent/pull/1273))
- 在运行时上下文压缩后同步 session_id ([#1160](https://github.com/NousResearch/hermes-agent/pull/1160))
- 会话卫生阈值调整为 50% 以实现更主动的压缩 ([#1096](https://github.com/NousResearch/hermes-agent/pull/1096), [#1161](https://github.com/NousResearch/hermes-agent/pull/1161))
- 通过 `--pass-session-id` 标志在系统提示中包含会话 ID ([#1040](https://github.com/NousResearch/hermes-agent/pull/1040))
- 防止重试时重复使用已关闭的 OpenAI 客户端 ([#1391](https://github.com/NousResearch/hermes-agent/pull/1391))
- 清理聊天负载和提供商优先级 ([#1253](https://github.com/NousResearch/hermes-agent/pull/1253))
- 处理来自 Codex 和本地后端的字典工具调用参数 ([#1393](https://github.com/NousResearch/hermes-agent/pull/1393), [#1440](https://github.com/NousResearch/hermes-agent/pull/1440))
### 记忆与会话
- **改进记忆优先级** — 用户偏好和修正权重高于程序性知识 ([#1548](https://github.com/NousResearch/hermes-agent/pull/1548))
- 系统提示中更严格的记忆和会话召回指导 ([#1329](https://github.com/NousResearch/hermes-agent/pull/1329))
- 将 CLI 令牌计数持久化到会话数据库以供 `/insights` 使用 ([#1498](https://github.com/NousResearch/hermes-agent/pull/1498))
- 保持 Honcho 召回不在缓存的系统前缀中 ([#1201](https://github.com/NousResearch/hermes-agent/pull/1201))
- 修正 `seed_ai_identity` 以使用 `session.add_messages()` ([#1475](https://github.com/NousResearch/hermes-agent/pull/1475))
- 为多用户网关隔离 Honcho 会话路由 ([#1500](https://github.com/NousResearch/hermes-agent/pull/1500))
---
## 📱 消息平台(网关)
### 网关核心
- **系统网关服务模式** — 作为系统级 systemd 服务运行,而不仅仅是用户级 ([#1371](https://github.com/NousResearch/hermes-agent/pull/1371))
- **网关安装范围提示** — 在设置期间选择用户或系统范围 ([#1374](https://github.com/NousResearch/hermes-agent/pull/1374))
- **推理热重载** — 无需重启网关即可更改推理设置 ([#1275](https://github.com/NousResearch/hermes-agent/pull/1275))
- 默认将会话分组为每个用户隔离 — 群聊中不再有跨用户的共享状态 ([#1495](https://github.com/NousResearch/hermes-agent/pull/1495), [#1417](https://github.com/NousResearch/hermes-agent/pull/1417))
- 强化网关重启恢复 ([#1310](https://github.com/NousResearch/hermes-agent/pull/1310))
- 在关闭期间取消活动运行 ([#1427](https://github.com/NousResearch/hermes-agent/pull/1427))
- NixOS 和非标准系统的 SSL 证书自动检测 ([#1494](https://github.com/NousResearch/hermes-agent/pull/1494))
- 在无头服务器上自动检测 `systemctl --user` 的 D-Bus 会话总线 ([#1601](https://github.com/NousResearch/hermes-agent/pull/1601))
- 在无头服务器上安装网关时自动启用 systemd linger ([#1334](https://github.com/NousResearch/hermes-agent/pull/1334))
- 当 `hermes` 不在 PATH 时回退到模块入口点 ([#1355](https://github.com/NousResearch/hermes-agent/pull/1355))
- 修复 macOS launchd 上 `hermes update` 后的双网关问题 ([#1567](https://github.com/NousResearch/hermes-agent/pull/1567))
- 从 systemd 单元中移除递归 ExecStop ([#1530](https://github.com/NousResearch/hermes-agent/pull/1530))
- 防止网关模式下的日志处理器累积 ([#1251](https://github.com/NousResearch/hermes-agent/pull/1251))
- 在可重试的启动失败时重启 — 由 @jplew 贡献 ([#1517](https://github.com/NousResearch/hermes-agent/pull/1517))
- 在代理运行后回填网关会话的模型 ([#1306](https://github.com/NousResearch/hermes-agent/pull/1306))
- 基于 PID 的网关终止和延迟配置写入 ([#1499](https://github.com/NousResearch/hermes-agent/pull/1499))
### Telegram
- 缓冲媒体组以防止照片连拍导致的自我中断 ([#1341](https://github.com/NousResearch/hermes-agent/pull/1341), [#1422](https://github.com/NousResearch/hermes-agent/pull/1422))
- 在连接和发送期间对临时 TLS 失败进行重试 ([#1535](https://github.com/NousResearch/hermes-agent/pull/1535))
- 强化轮询冲突处理 ([#1339](https://github.com/NousResearch/hermes-agent/pull/1339))
- 在 MarkdownV2 中转义块指示符和内联代码 ([#1478](https://github.com/NousResearch/hermes-agent/pull/1478), [#1626](https://github.com/NousResearch/hermes-agent/pull/1626))
- 在断开连接前检查更新器/应用状态 ([#1389](https://github.com/NousResearch/hermes-agent/pull/1389))
### Discord
- 带 `auto_thread` 配置和媒体元数据修复的 `/thread` 命令 ([#1178](https://github.com/NousResearch/hermes-agent/pull/1178))
- 在 @mention 时自动创建话题,在机器人话题中跳过提及文本 ([#1438](https://github.com/NousResearch/hermes-agent/pull/1438))
- 对系统消息无回复引用重试 ([#1385](https://github.com/NousResearch/hermes-agent/pull/1385))
- 保留原生文档和视频附件支持 ([#1392](https://github.com/NousResearch/hermes-agent/pull/1392))
- 延迟 Discord 适配器注释以避免可选导入崩溃 ([#1314](https://github.com/NousResearch/hermes-agent/pull/1314))
### Slack
- 线程处理大修 — 进度消息、响应和会话隔离均遵循线程 ([#1103](https://github.com/NousResearch/hermes-agent/pull/1103))
- 格式化、反应、用户解析和命令改进 ([#1106](https://github.com/NousResearch/hermes-agent/pull/1106))
- 修复 MAX_MESSAGE_LENGTH 3900 → 39000 ([#1117](https://github.com/NousResearch/hermes-agent/pull/1117))
- 文件上传回退保留线程上下文 — 由 @0xbyt4 贡献 ([#1122](https://github.com/NousResearch/hermes-agent/pull/1122))
- 改进设置指导 ([#1387](https://github.com/NousResearch/hermes-agent/pull/1387))
### Email
- 修复 IMAP UID 跟踪和 SMTP TLS 验证 ([#1305](https://github.com/NousResearch/hermes-agent/pull/1305))
- 通过 config.yaml 添加 `skip_attachments` 选项 ([#1536](https://github.com/NousResearch/hermes-agent/pull/1536))
### Home Assistant
- 默认关闭事件过滤 ([#1169](https://github.com/NousResearch/hermes-agent/pull/1169))
---
## 🖥️ CLI 与用户体验
### 交互式 CLI
- **持久化 CLI 状态栏** — 始终可见的模型、提供商和令牌计数 ([#1522](https://github.com/NousResearch/hermes-agent/pull/1522))
- **输入提示中的文件路径自动补全** ([#1545](https://github.com/NousResearch/hermes-agent/pull/1545))
- **`/plan` 命令** — 从规范生成实施计划 ([#1372](https://github.com/NousResearch/hermes-agent/pull/1372), [#1381](https://github.com/NousResearch/hermes-agent/pull/1381))
- **重大 `/rollback` 改进** — 更丰富的检查点历史、更清晰的 UX ([#1505](https://github.com/NousResearch/hermes-agent/pull/1505))
- **启动时预加载 CLI 技能** — 技能在首次提示前就绪 ([#1359](https://github.com/NousResearch/hermes-agent/pull/1359))
- **集中式斜杠命令注册表** — 所有命令定义一次,随处消费 ([#1603](https://github.com/NousResearch/hermes-agent/pull/1603))
- `/bg` 作为 `/background` 的别名 ([#1590](https://github.com/NousResearch/hermes-agent/pull/1590))
- 斜杠命令前缀匹配 — `/mod` 解析为 `/model` ([#1320](https://github.com/NousResearch/hermes-agent/pull/1320))
- `/new`、`/reset`、`/clear` 现在启动真正全新的会话 ([#1237](https://github.com/NousResearch/hermes-agent/pull/1237))
- 接受会话 ID 前缀用于会话操作 ([#1425](https://github.com/NousResearch/hermes-agent/pull/1425))
- TUI 提示和强调输出遵循活动皮肤 ([#1282](https://github.com/NousResearch/hermes-agent/pull/1282))
- 在注册表中集中工具 emoji 元数据 + 皮肤集成 ([#1484](https://github.com/NousResearch/hermes-agent/pull/1484))
- 危险命令审批中新增“查看完整命令”选项 — 由 @teknium1 基于社区设计贡献 ([#887](https://github.com/NousResearch/hermes-agent/pull/887))
- 非阻塞启动更新检查和横幅去重 ([#1386](https://github.com/NousResearch/hermes-agent/pull/1386))
- `/reasoning` 命令输出排序和内联思考提取修复 ([#1031](https://github.com/NousResearch/hermes-agent/pull/1031))
- 详细模式显示完整未截断输出 ([#1472](https://github.com/NousResearch/hermes-agent/pull/1472))
- 修复 `/status` 以报告实时状态和令牌 ([#1476](https://github.com/NousResearch/hermes-agent/pull/1476))
- 播种默认全局 SOUL.md ([#1311](https://github.com/NousResearch/hermes-agent/pull/1311))
### 设置与配置
- **首次设置时进行 OpenClaw 迁移** — 由 @kshitijk4poor 贡献 ([#981](https://github.com/NousResearch/hermes-agent/pull/981))
- `hermes claw migrate` 命令 + 迁移文档 ([#1059](https://github.com/NousResearch/hermes-agent/pull/1059))
- 尊重用户所选提供商的智能视觉设置 ([#1323](https://github.com/NousResearch/hermes-agent/pull/1323))
- 端到端处理无头设置流程 ([#1274](https://github.com/NousResearch/hermes-agent/pull/1274))
- 在 setup.py 中优先使用 curses 而非 `simple_term_menu` ([#1487](https://github.com/NousResearch/hermes-agent/pull/1487))
- 在 `/status` 中显示有效模型和提供商 ([#1284](https://github.com/NousResearch/hermes-agent/pull/1284))
- 配置集示例使用占位符语法 ([#1322](https://github.com/NousResearch/hermes-agent/pull/1322))
- 重新加载 .env 覆盖过时的 shell 覆盖 ([#1434](https://github.com/NousResearch/hermes-agent/pull/1434))
- 修复 is_coding_plan NameError 崩溃 — 由 @0xbyt4 贡献 ([#1123](https://github.com/NousResearch/hermes-agent/pull/1123))
- 向 setuptools 配置添加缺失的包 — 由 @alt-glitch 贡献 ([#912](https://github.com/NousResearch/hermes-agent/pull/912))
- 安装程序:阐明为何每次提示都需要 sudo ([#1602](https://github.com/NousResearch/hermes-agent/pull/1602))
---
## 🔧 工具系统
### 终端与执行
- **本地和 SSH 后端的持久化 Shell 模式** — 在工具调用间保持 Shell 状态 — 由 @alt-glitch 贡献 ([#1067](https://github.com/NousResearch/hermes-agent/pull/1067), [#1483](https://github.com/NousResearch/hermes-agent/pull/1483))
- **Tirith 预执行命令扫描** — 执行前分析命令的安全层 ([#1256](https://github.com/NousResearch/hermes-agent/pull/1256))
- 从所有子进程环境中剥离 Hermes 提供商环境变量 ([#1157](https://github.com/NousResearch/hermes-agent/pull/1157), [#1172](https://github.com/NousResearch/hermes-agent/pull/1172), [#1399](https://github.com/NousResearch/hermes-agent/pull/1399), [#1419](https://github.com/NousResearch/hermes-agent/pull/1419)) — 初始修复由 @eren-karakus0 贡献
- SSH 预检 ([#1486](https://github.com/NousResearch/hermes-agent/pull/1486))
- Docker 后端:使 cwd 工作区挂载成为明确 opt-in ([#1534](https://github.com/NousResearch/hermes-agent/pull/1534))
- 在 execute_code 沙箱中将项目根目录添加到 PYTHONPATH ([#1383](https://github.com/NousResearch/hermes-agent/pull/1383))
- 消除网关平台上 execute_code 的进度垃圾信息 ([#1098](https://github.com/NousResearch/hermes-agent/pull/1098))
- 更清晰的 Docker 后端预检错误 ([#1276](https://github.com/NousResearch/hermes-agent/pull/1276))
### 浏览器
- **`/browser connect`** — 通过 CDP 将浏览器工具附加到正在运行的 Chrome 实例 ([#1549](https://github.com/NousResearch/hermes-agent/pull/1549))
- 改进浏览器清理、本地浏览器 PATH 设置和截图恢复 ([#1333](https://github.com/NousResearch/hermes-agent/pull/1333))
### MCP
- **使用实用策略进行选择性工具加载** — 过滤哪些 MCP 工具可用 ([#1302](https://github.com/NousResearch/hermes-agent/pull/1302))
- 当 `mcp_servers` 配置更改时自动重新加载 MCP 工具而无需重启 ([#1474](https://github.com/NousResearch/hermes-agent/pull/1474))
- 解决 npx stdio 连接失败问题 ([#1291](https://github.com/NousResearch/hermes-agent/pull/1291))
- 保存平台工具配置时保留 MCP 工具集 ([#1421](https://github.com/NousResearch/hermes-agent/pull/1421))
### 视觉
- 统一视觉后端门控 ([#1367](https://github.com/NousResearch/hermes-agent/pull/1367))
- 展示实际错误原因而非通用消息 ([#1338](https://github.com/NousResearch/hermes-agent/pull/1338))
- 使 Claude 图像处理端到端工作 ([#1408](https://github.com/NousResearch/hermes-agent/pull/1408))
### Cron
- **将 cron 管理压缩为一个工具** — 单个 `cronjob` 工具替换多个命令 ([#1343](https://github.com/NousResearch/hermes-agent/pull/1343))
- 抑制向自动交付目标发送重复 cron ([#1357](https://github.com/NousResearch/hermes-agent/pull/1357))
- 将会话 cron 持久化到 SQLite ([#1255](https://github.com/NousResearch/hermes-agent/pull/1255))
- 每作业运行时覆盖(提供商、模型、base_url)([#1398](https://github.com/NousResearch/hermes-agent/pull/1398))
- `save_job_output` 中的原子写入以防止崩溃时数据丢失 ([#1173](https://github.com/NousResearch/hermes-agent/pull/1173))
- 为 `deliver=origin` 保留线程上下文 ([#1437](https://github.com/NousResearch/hermes-agent/pull/1437))
### 补丁工具
- 避免在 V4A 补丁应用中损坏管道字符 ([#1286](https://github.com/NousResearch/hermes-agent/pull/1286))
- 宽松的 `block_anchor` 阈值和 Unicode 规范化 ([#1539](https://github.com/NousResearch/hermes-agent/pull/1539))
### 委托
- 向子代理结果添加可观测性元数据(模型、令牌、持续时间、工具跟踪)([#1175](https://github.com/NousResearch/hermes-agent/pull/1175))
---
## 🧩 技能生态系统
### 技能系统
- **将 skills.sh 作为中心源与 ClawHub 集成** ([#1303](https://github.com/NousResearch/hermes-agent/pull/1303))
- 加载时安全的技能环境设置 ([#1153](https://github.com/NousResearch/hermes-agent/pull/1153))
- 尊重危险判决的策略表 ([#1330](https://github.com/NousResearch/hermes-agent/pull/1330))
- 强化 ClawHub 技能搜索精确匹配 ([#1400](https://github.com/NousResearch/hermes-agent/pull/1400))
- 修复 ClawHub 技能安装 — 使用 `/download` ZIP 端点 ([#1060](https://github.com/NousResearch/hermes-agent/pull/1060))
- 避免将本地技能误标为内置 — 由 @arceus77-7 贡献 ([#862](https://github.com/NousResearch/hermes-agent/pull/862))
### 新技能
- **Linear** 项目管理 ([#1230](https://github.com/NousResearch/hermes-agent/pull/1230))
- 通过 x-cli 实现 **X/Twitter** ([#1285](https://github.com/NousResearch/hermes-agent/pull/1285))
- **电话** — Twilio、短信和 AI 通话 ([#1289](https://github.com/NousResearch/hermes-agent/pull/1289))
- **1Password** — 由 @arceus77-7 贡献 ([#883](https://github.com/NousResearch/hermes-agent/pull/883), [#1179](https://github.com/NousResearch/hermes-agent/pull/1179))
- **NeuroSkill BCI** 集成 ([#1135](https://github.com/NousResearch/hermes-agent/pull/1135))
- 用于 3D 建模的 **Blender MCP** ([#1531](https://github.com/NousResearch/hermes-agent/pull/1531))
- **OSS 安全取证** ([#1482](https://github.com/NousResearch/hermes-agent/pull/1482))
- **并行 CLI** 研究技能 ([#1301](https://github.com/NousResearch/hermes-agent/pull/1301))
- **OpenCode** CLI 技能 ([#1174](https://github.com/NousResearch/hermes-agent/pull/1174))
- **ASCII 视频** 技能重构 — 由 @SHL0MS 贡献 ([#1213](https://github.com/NousResearch/hermes-agent/pull/1213), [#1598](https://github.com/NousResearch/hermes-agent/pull/1598))
---
## 🎙️ 语音模式
- 语音模式基础 — CLI 中的一键通话、Telegram/Discord 语音留言 ([#1299](https://github.com/NousResearch/hermes-agent/pull/1299))
- 通过 faster-whisper 免费本地 Whisper 转录 ([#1185](https://github.com/NousResearch/hermes-agent/pull/1185))
- Discord 语音频道可靠性修复 ([#1429](https://github.com/NousResearch/hermes-agent/pull/1429))
- 恢复网关语音留言的本地 STT 回退 ([#1490](https://github.com/NousResearch/hermes-agent/pull/1490))
- 在整个网关转录中尊重 `stt.enabled: false` ([#1394](https://github.com/NousResearch/hermes-agent/pull/1394))
- 修复 Telegram 语音留言上的虚假无能力消息(问题 [#1033](https://github.com/NousResearch/hermes-agent/issues/1033))
---
## 🔌 ACP(IDE 集成)
- 恢复 ACP 服务器实现 ([#1254](https://github.com/NousResearch/hermes-agent/pull/1254))
- 在 ACP 适配器中支持斜杠命令 ([#1532](https://github.com/NousResearch/hermes-agent/pull/1532))
---
## 🧪 RL 训练
- **代理策略蒸馏(OPD)环境** — 用于代理策略蒸馏的新 RL 训练环境 ([#1149](https://github.com/NousResearch/hermes-agent/pull/1149))
- 使 tinker-atropos RL 训练完全可选 ([#1062](https://github.com/NousResearch/hermes-agent/pull/1062))
---
## 🔒 安全与可靠性
### 安全加固
- **Tirith 预执行命令扫描** — 执行前对终端命令进行静态分析 ([#1256](https://github.com/NousResearch/hermes-agent/pull/1256))
- 启用 `privacy.redact_pii` 时进行**PII 编辑** ([#1542](https://github.com/NousResearch/hermes-agent/pull/1542))
- 从所有子进程环境中剥离 Hermes 提供商/网关/工具环境变量 ([#1157](https://github.com/NousResearch/hermes-agent/pull/1157), [#1172](https://github.com/NousResearch/hermes-agent/pull/1172), [#1399](https://github.com/NousResearch/hermes-agent/pull/1399), [#1419](https://github.com/NousResearch/hermes-agent/pull/1419))
- Docker cwd 工作区挂载现在为明确 opt-in — 绝不自动挂载主机目录 ([#1534](https://github.com/NousResearch/hermes-agent/pull/1534))
- 在 fork 炸弹正则模式中转义括号和大括号 ([#1397](https://github.com/NousResearch/hermes-agent/pull/1397))
- 强化 `.worktreeinclude` 路径 containment ([#1388](https://github.com/NousResearch/hermes-agent/pull/1388))
- 使用描述作为 `pattern_key` 以防止审批冲突 ([#1395](https://github.com/NousResearch/hermes-agent/pull/1395))
### 可靠性
- 保护初始化时 stdio 写入 ([#1271](https://github.com/NousResearch/hermes-agent/pull/1271))
- 会话日志写入重用共享原子 JSON 助手 ([#1280](https://github.com/NousResearch/hermes-agent/pull/1280))
- 原子临时清理在中断时受保护 ([#1401](https://github.com/NousResearch/hermes-agent/pull/1401))
---
## 🐛 值得注意的错误修复
- **`/status` 始终显示 0 令牌** — 现在报告实时状态(问题 [#1465](https://github.com/NousResearch/hermes-agent/issues/1465), [#1476](https://github.com/NousResearch/hermes-agent/pull/1476))
- **自定义模型端点不工作** — 恢复配置保存的端点解析(问题 [#1460](https://github.com/NousResearch/hermes-agent/issues/1460), [#1373](https://github.com/NousResearch/hermes-agent/pull/1373))
- **MCP 工具在重启前不可见** — 配置更改时自动重新加载(问题 [#1036](https://github.com/NousResearch/hermes-agent/issues/1036), [#1474](https://github.com/NousResearch/hermes-agent/pull/1474))
- **`hermes tools` 移除 MCP 工具** — 保存时保留 MCP 工具集(问题 [#1247](https://github.com/NousResearch/hermes-agent/issues/1247), [#1421](https://github.com/NousResearch/hermes-agent/pull/1421))
- **终端子进程继承 `OPENAI_BASE_URL`** 破坏外部工具(问题 [#1002](https://github.com/NousResearch/hermes-agent/issues/1002), [#1399](https://github.com/NousResearch/hermes-agent/pull/1399))
- **网关重启时后台进程丢失** — 改进恢复(问题 [#1144](https://github.com/NousResearch/hermes-agent/issues/1144))
- **Cron 作业不持久化状态** — 现在存储在 SQLite 中(问题 [#1416](https://github.com/NousResearch/hermes-agent/issues/1416), [#1255](https://github.com/NousResearch/hermes-agent/pull/1255))
- **Cronjob `deliver: origin` 不保留线程上下文**(问题 [#1219](https://github.com/NousResearch/hermes-agent/issues/1219), [#1437](https://github.com/NousResearch/hermes-agent/pull/1437))
- **网关 systemd 服务在浏览器进程孤立时无法自动重启**(问题 [#1617](https://github.com/NousResearch/hermes-agent/issues/1617))
- **Telegram 中 `/background` 完成报告被截断**(问题 [#1443](https://github.com/NousResearch/hermes-agent/issues/1443))
- **模型切换未生效**(问题 [#1244](https://github.com/NousResearch/hermes-agent/issues/1244), [#1183](https://github.com/NousResearch/hermes-agent/pull/1183))
- **`hermes doctor` 报告 cronjob 不可用**(问题 [#878](https://github.com/NousResearch/hermes-agent/issues/878), [#1180](https://github.com/NousResearch/hermes-agent/pull/1180))
- **从移动端未收到 WhatsApp 桥接消息**(问题 [#1142](https://github.com/NousResearch/hermes-agent/issues/1142))
- **设置向导在无头 SSH 上挂起**(问题 [#905](https://github.com/NousResearch/hermes-agent/issues/905), [#1274](https://github.com/NousResearch/hermes-agent/pull/1274))
- **日志处理器累积** 降低网关性能(问题 [#990](https://github.com/NousResearch/hermes-agent/issues/990), [#1251](https://github.com/NousResearch/hermes-agent/pull/1251))
- **网关数据库中 NULL 模型**(问题 [#987](https://github.com/NousResearch/hermes-agent/issues/987), [#1306](https://github.com/NousResearch/hermes-agent/pull/1306))
- **严格端点拒绝重放 tool_calls**(问题 [#893](https://github.com/NousResearch/hermes-agent/issues/893))
- **剩余硬编码 `~/.hermes` 路径** — 现在全部尊重 `HERMES_HOME`(问题 [#892](https://github.com/NousResearch/hermes-agent/issues/892), [#1233](https://github.com/NousResearch/hermes-agent/pull/1233))
- **委托工具与自定义推理提供商不工作**(问题 [#1011](https://github.com/NousResearch/hermes-agent/issues/1011), [#1328](https://github.com/NousResearch/hermes-agent/pull/1328))
- **技能守卫阻止官方技能**(问题 [#1006](https://github.com/NousResearch/hermes-agent/issues/1006), [#1330](https://github.com/NousResearch/hermes-agent/pull/1330))
- **设置在选择模型前写入提供商**(问题 [#1182](https://github.com/NousResearch/hermes-agent/issues/1182))
- **`GatewayConfig.get()` AttributeError 导致所有消息处理崩溃**(问题 [#1158](https://github.com/NousResearch/hermes-agent/issues/1158), [#1287](https://github.com/NousResearch/hermes-agent/pull/1287))
- **`/update` 以“command not found”硬失败**(问题 [#1049](https://github.com/NousResearch/hermes-agent/issues/1049))
- **图像分析静默失败**(问题 [#1034](https://github.com/NousResearch/hermes-agent/issues/1034), [#1338](https://github.com/NousResearch/hermes-agent/pull/1338))
- API `BadRequestError` 来自 `'dict'` 对象没有 `'strip'` 属性(问题 [#1071](https://github.com/NousResearch/hermes-agent/issues/1071))
- **斜杠命令需要精确全名** — 现在使用前缀匹配(问题 [#928](https://github.com/NousResearch/hermes-agent/issues/928), [#1320](https://github.com/NousResearch/hermes-agent/pull/1320))
- **终端关闭时网关在无头环境下停止响应**(问题 [#1005](https://github.com/NousResearch/hermes-agent/issues/1005))
---
## 🧪 测试
- 覆盖空缓存的 Anthropic 工具调用回合 ([#1222](https://github.com/NousResearch/hermes-agent/pull/1222))
- 修复解析器和快速命令覆盖中的过时 CI 假设 ([#1236](https://github.com/NousResearch/hermes-agent/pull/1236))
- 修复无隐式事件循环的网关异步测试 ([#1278](https://github.com/NousResearch/hermes-agent/pull/1278))
- 使网关异步测试对 xdist 安全 ([#1281](https://github.com/NousResearch/hermes-agent/pull/1281))
- Cron 的跨时区朴素时间戳回归 ([#1319](https://github.com/NousResearch/hermes-agent/pull/1319))
- 隔离 Codex 提供商测试与本地环境 ([#1335](https://github.com/NousResearch/hermes-agent/pull/1335))
- 锁定重试替换语义 ([#1379](https://github.com/NousResearch/hermes-agent/pull/1379))
- 改进会话搜索工具中的错误日志记录 — 由 @aydnOktay 贡献 ([#1533](https://github.com/NousResearch/hermes-agent/pull/1533))
---
## 📚 文档
- 综合 SOUL.md 指南 ([#1315](https://github.com/NousResearch/hermes-agent/pull/1315))
- 语音模式文档 ([#1316](https://github.com/NousResearch/hermes-agent/pull/1316), [#1362](https://github.com/NousResearch/hermes-agent/pull/1362))
- 提供商贡献指南 ([#1361](https://github.com/NousResearch/hermes-agent/pull/1361))
- ACP 和内部系统实现指南 ([#1259](https://github.com/NousResearch/hermes-agent/pull/1259))
- 扩展 Docusaurus 覆盖 CLI、工具、技能和皮肤 ([#1232](https://github.com/NousResearch/hermes-agent/pull/1232))
- 终端后端和 Windows 故障排除 ([#1297](https://github.com/NousResearch/hermes-agent/pull/1297))
- 技能中心参考部分 ([#1317](https://github.com/NousResearch/hermes-agent/pull/1317))
- 检查点、/rollback 和 git worktrees 指南 ([#1493](https://github.com/NousResearch/hermes-agent/pull/1493), [#1524](https://github.com/NousResearch/hermes-agent/pull/1524))
- CLI 状态栏和 /usage 参考 ([#1523](https://github.com/NousResearch/hermes-agent/pull/1523))
- 回退提供商 + /background 命令文档 ([#1430](https://github.com/NousResearch/hermes-agent/pull/1430))
- 网关服务范围文档 ([#1378](https://github.com/NousResearch/hermes-agent/pull/1378))
- Slack 线程回复行为文档 ([#1407](https://github.com/NousResearch/hermes-agent/pull/1407))
- 重新设计的落地页,采用 Nous 蓝色调色板 — 由 @austinpickett 贡献 ([#974](https://github.com/NousResearch/hermes-agent/pull/974))
- 修复多个文档拼写错误 — 由 @JackTheGit 贡献 ([#953](https://github.com/NousResearch/hermes-agent/pull/953))
- 稳定网站图表 ([#1405](https://github.com/NousResearch/hermes-agent/pull/1405))
- README 中的 CLI 与消息快速参考 ([#1491](https://github.com/NousResearch/hermes-agent/pull/1491))
- 为 Docusaurus 添加搜索 ([#1053](https://github.com/NousResearch/hermes-agent/pull/1053))
- Home Assistant 集成文档 ([#1170](https://github.com/NousResearch/hermes-agent/pull/1170))
---
## 👥 贡献者
### 核心
- **@teknium1** — 220+ 个 PR,涵盖代码库的每个领域
### 顶级社区贡献者
- **@0xbyt4** (4 个 PR) — Anthropic 适配器修复(max_tokens、回退崩溃、429/529 重试)、Slack 文件上传线程上下文、设置 NameError 修复
- **@erosika** (1 个 PR) — Honcho 记忆集成:异步写入、记忆模式、会话标题集成
- **@SHL0MS** (2 个 PR) — ASCII 视频技能设计模式与重构
- **@alt-glitch** (2 个 PR) — 本地/SSH 后端的持久化 Shell 模式、setuptools 打包修复
- **@arceus77-7** (2 个 PR) — 1Password 技能、修复技能列表误标
- **@kshitijk4poor** (1 个 PR) — 设置向导期间的 OpenClaw 迁移
- **@ASRagab** (1 个 PR) — 修复 Claude 4.6 模型的自适应思维
- **@eren-karakus0** (1 个 PR) — 从子进程环境中剥离 Hermes 提供商环境变量
- **@mr-emmett-one** (1 个 PR) — 修复 DeepSeek V3 解析器多工具调用支持
- **@jplew** (1 个 PR) — 在可重试的启动失败时网关重启
- **@brandtcormorant** (1 个 PR) — 修复空文本块的 Anthropic 缓存控制
- **@aydnOktay** (1 个 PR) — 改进会话搜索工具中的错误日志记录
- **@austinpickett** (1 个 PR) — 采用 Nous 蓝色调色板的落地页重新设计
- **@JackTheGit** (1 个 PR) — 文档拼写错误修复
### 所有贡献者
@0xbyt4, @alt-glitch, @arceus77-7, @ASRagab, @austinpickett, @aydnOktay, @brandtcormorant, @eren-karakus0, @erosika, @JackTheGit, @jplew, @kshitijk4poor, @mr-emmett-one, @SHL0MS, @teknium1
---
**完整更新日志**:[v2026.3.12...v2026.3.17](https://github.com/NousResearch/hermes-agent/compare/v2026.3.12...v2026.3.17)
# Hermes Agent v0.3.0 (v2026.3.17)
**Release Date:** March 17, 2026
> The streaming, plugins, and provider release — unified real-time token delivery, first-class plugin architecture, rebuilt provider system with Vercel AI Gateway, native Anthropic provider, smart approvals, live Chrome CDP browser connect, ACP IDE integration, Honcho memory, voice mode, persistent shell, and 50+ bug fixes across every platform.
---
## ✨ Highlights
- **Unified Streaming Infrastructure** — Real-time token-by-token delivery in CLI and all gateway platforms. Responses stream as they're generated instead of arriving as a block. ([#1538](https://github.com/NousResearch/hermes-agent/pull/1538))
- **First-Class Plugin Architecture** — Drop Python files into `~/.hermes/plugins/` to extend Hermes with custom tools, commands, and hooks. No forking required. ([#1544](https://github.com/NousResearch/hermes-agent/pull/1544), [#1555](https://github.com/NousResearch/hermes-agent/pull/1555))
- **Native Anthropic Provider** — Direct Anthropic API calls with Claude Code credential auto-discovery, OAuth PKCE flows, and native prompt caching. No OpenRouter middleman needed. ([#1097](https://github.com/NousResearch/hermes-agent/pull/1097))
- **Smart Approvals + /stop Command** — Codex-inspired approval system that learns which commands are safe and remembers your preferences. `/stop` kills the current agent run immediately. ([#1543](https://github.com/NousResearch/hermes-agent/pull/1543))
- **Honcho Memory Integration** — Async memory writes, configurable recall modes, session title integration, and multi-user isolation in gateway mode. By @erosika. ([#736](https://github.com/NousResearch/hermes-agent/pull/736))
- **Voice Mode** — Push-to-talk in CLI, voice notes in Telegram/Discord, Discord voice channel support, and local Whisper transcription via faster-whisper. ([#1299](https://github.com/NousResearch/hermes-agent/pull/1299), [#1185](https://github.com/NousResearch/hermes-agent/pull/1185), [#1429](https://github.com/NousResearch/hermes-agent/pull/1429))
- **Concurrent Tool Execution** — Multiple independent tool calls now run in parallel via ThreadPoolExecutor, significantly reducing latency for multi-tool turns. ([#1152](https://github.com/NousResearch/hermes-agent/pull/1152))
- **PII Redaction** — When `privacy.redact_pii` is enabled, personally identifiable information is automatically scrubbed before sending context to LLM providers. ([#1542](https://github.com/NousResearch/hermes-agent/pull/1542))
- **`/browser connect` via CDP** — Attach browser tools to a live Chrome instance through Chrome DevTools Protocol. Debug, inspect, and interact with pages you already have open. ([#1549](https://github.com/NousResearch/hermes-agent/pull/1549))
- **Vercel AI Gateway Provider** — Route Hermes through Vercel's AI Gateway for access to their model catalog and infrastructure. ([#1628](https://github.com/NousResearch/hermes-agent/pull/1628))
- **Centralized Provider Router** — Rebuilt provider system with `call_llm` API, unified `/model` command, auto-detect provider on model switch, and direct endpoint overrides for auxiliary/delegation clients. ([#1003](https://github.com/NousResearch/hermes-agent/pull/1003), [#1506](https://github.com/NousResearch/hermes-agent/pull/1506), [#1375](https://github.com/NousResearch/hermes-agent/pull/1375))
- **ACP Server (IDE Integration)** — VS Code, Zed, and JetBrains can now connect to Hermes as an agent backend, with full slash command support. ([#1254](https://github.com/NousResearch/hermes-agent/pull/1254), [#1532](https://github.com/NousResearch/hermes-agent/pull/1532))
- **Persistent Shell Mode** — Local and SSH terminal backends can maintain shell state across tool calls — cd, env vars, and aliases persist. By @alt-glitch. ([#1067](https://github.com/NousResearch/hermes-agent/pull/1067), [#1483](https://github.com/NousResearch/hermes-agent/pull/1483))
- **Agentic On-Policy Distillation (OPD)** — New RL training environment for distilling agent policies, expanding the Atropos training ecosystem. ([#1149](https://github.com/NousResearch/hermes-agent/pull/1149))
---
## 🏗️ Core Agent & Architecture
### Provider & Model Support
- **Centralized provider router** with `call_llm` API and unified `/model` command — switch models and providers seamlessly ([#1003](https://github.com/NousResearch/hermes-agent/pull/1003))
- **Vercel AI Gateway** provider support ([#1628](https://github.com/NousResearch/hermes-agent/pull/1628))
- **Auto-detect provider** when switching models via `/model` ([#1506](https://github.com/NousResearch/hermes-agent/pull/1506))
- **Direct endpoint overrides** for auxiliary and delegation clients — point vision/subagent calls at specific endpoints ([#1375](https://github.com/NousResearch/hermes-agent/pull/1375))
- **Native Anthropic auxiliary vision** — use Claude's native vision API instead of routing through OpenAI-compatible endpoints ([#1377](https://github.com/NousResearch/hermes-agent/pull/1377))
- Anthropic OAuth flow improvements — auto-run `claude setup-token`, reauthentication, PKCE state persistence, identity fingerprinting ([#1132](https://github.com/NousResearch/hermes-agent/pull/1132), [#1360](https://github.com/NousResearch/hermes-agent/pull/1360), [#1396](https://github.com/NousResearch/hermes-agent/pull/1396), [#1597](https://github.com/NousResearch/hermes-agent/pull/1597))
- Fix adaptive thinking without `budget_tokens` for Claude 4.6 models — by @ASRagab ([#1128](https://github.com/NousResearch/hermes-agent/pull/1128))
- Fix Anthropic cache markers through adapter — by @brandtcormorant ([#1216](https://github.com/NousResearch/hermes-agent/pull/1216))
- Retry Anthropic 429/529 errors and surface details to users — by @0xbyt4 ([#1585](https://github.com/NousResearch/hermes-agent/pull/1585))
- Fix Anthropic adapter max_tokens, fallback crash, proxy base_url — by @0xbyt4 ([#1121](https://github.com/NousResearch/hermes-agent/pull/1121))
- Fix DeepSeek V3 parser dropping multiple parallel tool calls — by @mr-emmett-one ([#1365](https://github.com/NousResearch/hermes-agent/pull/1365), [#1300](https://github.com/NousResearch/hermes-agent/pull/1300))
- Accept unlisted models with warning instead of rejecting ([#1047](https://github.com/NousResearch/hermes-agent/pull/1047), [#1102](https://github.com/NousResearch/hermes-agent/pull/1102))
- Skip reasoning params for unsupported OpenRouter models ([#1485](https://github.com/NousResearch/hermes-agent/pull/1485))
- MiniMax Anthropic API compatibility fix ([#1623](https://github.com/NousResearch/hermes-agent/pull/1623))
- Custom endpoint `/models` verification and `/v1` base URL suggestion ([#1480](https://github.com/NousResearch/hermes-agent/pull/1480))
- Resolve delegation providers from `custom_providers` config ([#1328](https://github.com/NousResearch/hermes-agent/pull/1328))
- Kimi model additions and User-Agent fix ([#1039](https://github.com/NousResearch/hermes-agent/pull/1039))
- Strip `call_id`/`response_item_id` for Mistral compatibility ([#1058](https://github.com/NousResearch/hermes-agent/pull/1058))
### Agent Loop & Conversation
- **Anthropic Context Editing API** support ([#1147](https://github.com/NousResearch/hermes-agent/pull/1147))
- Improved context compaction handoff summaries — compressor now preserves more actionable state ([#1273](https://github.com/NousResearch/hermes-agent/pull/1273))
- Sync session_id after mid-run context compression ([#1160](https://github.com/NousResearch/hermes-agent/pull/1160))
- Session hygiene threshold tuned to 50% for more proactive compression ([#1096](https://github.com/NousResearch/hermes-agent/pull/1096), [#1161](https://github.com/NousResearch/hermes-agent/pull/1161))
- Include session ID in system prompt via `--pass-session-id` flag ([#1040](https://github.com/NousResearch/hermes-agent/pull/1040))
- Prevent closed OpenAI client reuse across retries ([#1391](https://github.com/NousResearch/hermes-agent/pull/1391))
- Sanitize chat payloads and provider precedence ([#1253](https://github.com/NousResearch/hermes-agent/pull/1253))
- Handle dict tool call arguments from Codex and local backends ([#1393](https://github.com/NousResearch/hermes-agent/pull/1393), [#1440](https://github.com/NousResearch/hermes-agent/pull/1440))
### Memory & Sessions
- **Improve memory prioritization** — user preferences and corrections weighted above procedural knowledge ([#1548](https://github.com/NousResearch/hermes-agent/pull/1548))
- Tighter memory and session recall guidance in system prompts ([#1329](https://github.com/NousResearch/hermes-agent/pull/1329))
- Persist CLI token counts to session DB for `/insights` ([#1498](https://github.com/NousResearch/hermes-agent/pull/1498))
- Keep Honcho recall out of the cached system prefix ([#1201](https://github.com/NousResearch/hermes-agent/pull/1201))
- Correct `seed_ai_identity` to use `session.add_messages()` ([#1475](https://github.com/NousResearch/hermes-agent/pull/1475))
- Isolate Honcho session routing for multi-user gateway ([#1500](https://github.com/NousResearch/hermes-agent/pull/1500))
---
## 📱 Messaging Platforms (Gateway)
### Gateway Core
- **System gateway service mode** — run as a system-level systemd service, not just user-level ([#1371](https://github.com/NousResearch/hermes-agent/pull/1371))
- **Gateway install scope prompts** — choose user vs system scope during setup ([#1374](https://github.com/NousResearch/hermes-agent/pull/1374))
- **Reasoning hot reload** — change reasoning settings without restarting the gateway ([#1275](https://github.com/NousResearch/hermes-agent/pull/1275))
- Default group sessions to per-user isolation — no more shared state across users in group chats ([#1495](https://github.com/NousResearch/hermes-agent/pull/1495), [#1417](https://github.com/NousResearch/hermes-agent/pull/1417))
- Harden gateway restart recovery ([#1310](https://github.com/NousResearch/hermes-agent/pull/1310))
- Cancel active runs during shutdown ([#1427](https://github.com/NousResearch/hermes-agent/pull/1427))
- SSL certificate auto-detection for NixOS and non-standard systems ([#1494](https://github.com/NousResearch/hermes-agent/pull/1494))
- Auto-detect D-Bus session bus for `systemctl --user` on headless servers ([#1601](https://github.com/NousResearch/hermes-agent/pull/1601))
- Auto-enable systemd linger during gateway install on headless servers ([#1334](https://github.com/NousResearch/hermes-agent/pull/1334))
- Fall back to module entrypoint when `hermes` is not on PATH ([#1355](https://github.com/NousResearch/hermes-agent/pull/1355))
- Fix dual gateways on macOS launchd after `hermes update` ([#1567](https://github.com/NousResearch/hermes-agent/pull/1567))
- Remove recursive ExecStop from systemd units ([#1530](https://github.com/NousResearch/hermes-agent/pull/1530))
- Prevent logging handler accumulation in gateway mode ([#1251](https://github.com/NousResearch/hermes-agent/pull/1251))
- Restart on retryable startup failures — by @jplew ([#1517](https://github.com/NousResearch/hermes-agent/pull/1517))
- Backfill model on gateway sessions after agent runs ([#1306](https://github.com/NousResearch/hermes-agent/pull/1306))
- PID-based gateway kill and deferred config write ([#1499](https://github.com/NousResearch/hermes-agent/pull/1499))
### Telegram
- Buffer media groups to prevent self-interruption from photo bursts ([#1341](https://github.com/NousResearch/hermes-agent/pull/1341), [#1422](https://github.com/NousResearch/hermes-agent/pull/1422))
- Retry on transient TLS failures during connect and send ([#1535](https://github.com/NousResearch/hermes-agent/pull/1535))
- Harden polling conflict handling ([#1339](https://github.com/NousResearch/hermes-agent/pull/1339))
- Escape chunk indicators and inline code in MarkdownV2 ([#1478](https://github.com/NousResearch/hermes-agent/pull/1478), [#1626](https://github.com/NousResearch/hermes-agent/pull/1626))
- Check updater/app state before disconnect ([#1389](https://github.com/NousResearch/hermes-agent/pull/1389))
### Discord
- `/thread` command with `auto_thread` config and media metadata fixes ([#1178](https://github.com/NousResearch/hermes-agent/pull/1178))
- Auto-thread on @mention, skip mention text in bot threads ([#1438](https://github.com/NousResearch/hermes-agent/pull/1438))
- Retry without reply reference for system messages ([#1385](https://github.com/NousResearch/hermes-agent/pull/1385))
- Preserve native document and video attachment support ([#1392](https://github.com/NousResearch/hermes-agent/pull/1392))
- Defer discord adapter annotations to avoid optional import crashes ([#1314](https://github.com/NousResearch/hermes-agent/pull/1314))
### Slack
- Thread handling overhaul — progress messages, responses, and session isolation all respect threads ([#1103](https://github.com/NousResearch/hermes-agent/pull/1103))
- Formatting, reactions, user resolution, and command improvements ([#1106](https://github.com/NousResearch/hermes-agent/pull/1106))
- Fix MAX_MESSAGE_LENGTH 3900 → 39000 ([#1117](https://github.com/NousResearch/hermes-agent/pull/1117))
- File upload fallback preserves thread context — by @0xbyt4 ([#1122](https://github.com/NousResearch/hermes-agent/pull/1122))
- Improve setup guidance ([#1387](https://github.com/NousResearch/hermes-agent/pull/1387))
### Email
- Fix IMAP UID tracking and SMTP TLS verification ([#1305](https://github.com/NousResearch/hermes-agent/pull/1305))
- Add `skip_attachments` option via config.yaml ([#1536](https://github.com/NousResearch/hermes-agent/pull/1536))
### Home Assistant
- Event filtering closed by default ([#1169](https://github.com/NousResearch/hermes-agent/pull/1169))
---
## 🖥️ CLI & User Experience
### Interactive CLI
- **Persistent CLI status bar** — always-visible model, provider, and token counts ([#1522](https://github.com/NousResearch/hermes-agent/pull/1522))
- **File path autocomplete** in the input prompt ([#1545](https://github.com/NousResearch/hermes-agent/pull/1545))
- **`/plan` command** — generate implementation plans from specs ([#1372](https://github.com/NousResearch/hermes-agent/pull/1372), [#1381](https://github.com/NousResearch/hermes-agent/pull/1381))
- **Major `/rollback` improvements** — richer checkpoint history, clearer UX ([#1505](https://github.com/NousResearch/hermes-agent/pull/1505))
- **Preload CLI skills on launch** — skills are ready before the first prompt ([#1359](https://github.com/NousResearch/hermes-agent/pull/1359))
- **Centralized slash command registry** — all commands defined once, consumed everywhere ([#1603](https://github.com/NousResearch/hermes-agent/pull/1603))
- `/bg` alias for `/background` ([#1590](https://github.com/NousResearch/hermes-agent/pull/1590))
- Prefix matching for slash commands — `/mod` resolves to `/model` ([#1320](https://github.com/NousResearch/hermes-agent/pull/1320))
- `/new`, `/reset`, `/clear` now start genuinely fresh sessions ([#1237](https://github.com/NousResearch/hermes-agent/pull/1237))
- Accept session ID prefixes for session actions ([#1425](https://github.com/NousResearch/hermes-agent/pull/1425))
- TUI prompt and accent output now respect active skin ([#1282](https://github.com/NousResearch/hermes-agent/pull/1282))
- Centralize tool emoji metadata in registry + skin integration ([#1484](https://github.com/NousResearch/hermes-agent/pull/1484))
- "View full command" option added to dangerous command approval — by @teknium1 based on design by community ([#887](https://github.com/NousResearch/hermes-agent/pull/887))
- Non-blocking startup update check and banner deduplication ([#1386](https://github.com/NousResearch/hermes-agent/pull/1386))
- `/reasoning` command output ordering and inline think extraction fixes ([#1031](https://github.com/NousResearch/hermes-agent/pull/1031))
- Verbose mode shows full untruncated output ([#1472](https://github.com/NousResearch/hermes-agent/pull/1472))
- Fix `/status` to report live state and tokens ([#1476](https://github.com/NousResearch/hermes-agent/pull/1476))
- Seed a default global SOUL.md ([#1311](https://github.com/NousResearch/hermes-agent/pull/1311))
### Setup & Configuration
- **OpenClaw migration** during first-time setup — by @kshitijk4poor ([#981](https://github.com/NousResearch/hermes-agent/pull/981))
- `hermes claw migrate` command + migration docs ([#1059](https://github.com/NousResearch/hermes-agent/pull/1059))
- Smart vision setup that respects the user's chosen provider ([#1323](https://github.com/NousResearch/hermes-agent/pull/1323))
- Handle headless setup flows end-to-end ([#1274](https://github.com/NousResearch/hermes-agent/pull/1274))
- Prefer curses over `simple_term_menu` in setup.py ([#1487](https://github.com/NousResearch/hermes-agent/pull/1487))
- Show effective model and provider in `/status` ([#1284](https://github.com/NousResearch/hermes-agent/pull/1284))
- Config set examples use placeholder syntax ([#1322](https://github.com/NousResearch/hermes-agent/pull/1322))
- Reload .env over stale shell overrides ([#1434](https://github.com/NousResearch/hermes-agent/pull/1434))
- Fix is_coding_plan NameError crash — by @0xbyt4 ([#1123](https://github.com/NousResearch/hermes-agent/pull/1123))
- Add missing packages to setuptools config — by @alt-glitch ([#912](https://github.com/NousResearch/hermes-agent/pull/912))
- Installer: clarify why sudo is needed at every prompt ([#1602](https://github.com/NousResearch/hermes-agent/pull/1602))
---
## 🔧 Tool System
### Terminal & Execution
- **Persistent shell mode** for local and SSH backends — maintain shell state across tool calls — by @alt-glitch ([#1067](https://github.com/NousResearch/hermes-agent/pull/1067), [#1483](https://github.com/NousResearch/hermes-agent/pull/1483))
- **Tirith pre-exec command scanning** — security layer that analyzes commands before execution ([#1256](https://github.com/NousResearch/hermes-agent/pull/1256))
- Strip Hermes provider env vars from all subprocess environments ([#1157](https://github.com/NousResearch/hermes-agent/pull/1157), [#1172](https://github.com/NousResearch/hermes-agent/pull/1172), [#1399](https://github.com/NousResearch/hermes-agent/pull/1399), [#1419](https://github.com/NousResearch/hermes-agent/pull/1419)) — initial fix by @eren-karakus0
- SSH preflight check ([#1486](https://github.com/NousResearch/hermes-agent/pull/1486))
- Docker backend: make cwd workspace mount explicit opt-in ([#1534](https://github.com/NousResearch/hermes-agent/pull/1534))
- Add project root to PYTHONPATH in execute_code sandbox ([#1383](https://github.com/NousResearch/hermes-agent/pull/1383))
- Eliminate execute_code progress spam on gateway platforms ([#1098](https://github.com/NousResearch/hermes-agent/pull/1098))
- Clearer docker backend preflight errors ([#1276](https://github.com/NousResearch/hermes-agent/pull/1276))
### Browser
- **`/browser connect`** — attach browser tools to a live Chrome instance via CDP ([#1549](https://github.com/NousResearch/hermes-agent/pull/1549))
- Improve browser cleanup, local browser PATH setup, and screenshot recovery ([#1333](https://github.com/NousResearch/hermes-agent/pull/1333))
### MCP
- **Selective tool loading** with utility policies — filter which MCP tools are available ([#1302](https://github.com/NousResearch/hermes-agent/pull/1302))
- Auto-reload MCP tools when `mcp_servers` config changes without restart ([#1474](https://github.com/NousResearch/hermes-agent/pull/1474))
- Resolve npx stdio connection failures ([#1291](https://github.com/NousResearch/hermes-agent/pull/1291))
- Preserve MCP toolsets when saving platform tool config ([#1421](https://github.com/NousResearch/hermes-agent/pull/1421))
### Vision
- Unify vision backend gating ([#1367](https://github.com/NousResearch/hermes-agent/pull/1367))
- Surface actual error reason instead of generic message ([#1338](https://github.com/NousResearch/hermes-agent/pull/1338))
- Make Claude image handling work end-to-end ([#1408](https://github.com/NousResearch/hermes-agent/pull/1408))
### Cron
- **Compress cron management into one tool** — single `cronjob` tool replaces multiple commands ([#1343](https://github.com/NousResearch/hermes-agent/pull/1343))
- Suppress duplicate cron sends to auto-delivery targets ([#1357](https://github.com/NousResearch/hermes-agent/pull/1357))
- Persist cron sessions to SQLite ([#1255](https://github.com/NousResearch/hermes-agent/pull/1255))
- Per-job runtime overrides (provider, model, base_url) ([#1398](https://github.com/NousResearch/hermes-agent/pull/1398))
- Atomic write in `save_job_output` to prevent data loss on crash ([#1173](https://github.com/NousResearch/hermes-agent/pull/1173))
- Preserve thread context for `deliver=origin` ([#1437](https://github.com/NousResearch/hermes-agent/pull/1437))
### Patch Tool
- Avoid corrupting pipe chars in V4A patch apply ([#1286](https://github.com/NousResearch/hermes-agent/pull/1286))
- Permissive `block_anchor` thresholds and unicode normalization ([#1539](https://github.com/NousResearch/hermes-agent/pull/1539))
### Delegation
- Add observability metadata to subagent results (model, tokens, duration, tool trace) ([#1175](https://github.com/NousResearch/hermes-agent/pull/1175))
---
## 🧩 Skills Ecosystem
### Skills System
- **Integrate skills.sh** as a hub source alongside ClawHub ([#1303](https://github.com/NousResearch/hermes-agent/pull/1303))
- Secure skill env setup on load ([#1153](https://github.com/NousResearch/hermes-agent/pull/1153))
- Honor policy table for dangerous verdicts ([#1330](https://github.com/NousResearch/hermes-agent/pull/1330))
- Harden ClawHub skill search exact matches ([#1400](https://github.com/NousResearch/hermes-agent/pull/1400))
- Fix ClawHub skill install — use `/download` ZIP endpoint ([#1060](https://github.com/NousResearch/hermes-agent/pull/1060))
- Avoid mislabeling local skills as builtin — by @arceus77-7 ([#862](https://github.com/NousResearch/hermes-agent/pull/862))
### New Skills
- **Linear** project management ([#1230](https://github.com/NousResearch/hermes-agent/pull/1230))
- **X/Twitter** via x-cli ([#1285](https://github.com/NousResearch/hermes-agent/pull/1285))
- **Telephony** — Twilio, SMS, and AI calls ([#1289](https://github.com/NousResearch/hermes-agent/pull/1289))
- **1Password** — by @arceus77-7 ([#883](https://github.com/NousResearch/hermes-agent/pull/883), [#1179](https://github.com/NousResearch/hermes-agent/pull/1179))
- **NeuroSkill BCI** integration ([#1135](https://github.com/NousResearch/hermes-agent/pull/1135))
- **Blender MCP** for 3D modeling ([#1531](https://github.com/NousResearch/hermes-agent/pull/1531))
- **OSS Security Forensics** ([#1482](https://github.com/NousResearch/hermes-agent/pull/1482))
- **Parallel CLI** research skill ([#1301](https://github.com/NousResearch/hermes-agent/pull/1301))
- **OpenCode** CLI skill ([#1174](https://github.com/NousResearch/hermes-agent/pull/1174))
- **ASCII Video** skill refactored — by @SHL0MS ([#1213](https://github.com/NousResearch/hermes-agent/pull/1213), [#1598](https://github.com/NousResearch/hermes-agent/pull/1598))
---
## 🎙️ Voice Mode
- Voice mode foundation — push-to-talk CLI, Telegram/Discord voice notes ([#1299](https://github.com/NousResearch/hermes-agent/pull/1299))
- Free local Whisper transcription via faster-whisper ([#1185](https://github.com/NousResearch/hermes-agent/pull/1185))
- Discord voice channel reliability fixes ([#1429](https://github.com/NousResearch/hermes-agent/pull/1429))
- Restore local STT fallback for gateway voice notes ([#1490](https://github.com/NousResearch/hermes-agent/pull/1490))
- Honor `stt.enabled: false` across gateway transcription ([#1394](https://github.com/NousResearch/hermes-agent/pull/1394))
- Fix bogus incapability message on Telegram voice notes (Issue [#1033](https://github.com/NousResearch/hermes-agent/issues/1033))
---
## 🔌 ACP (IDE Integration)
- Restore ACP server implementation ([#1254](https://github.com/NousResearch/hermes-agent/pull/1254))
- Support slash commands in ACP adapter ([#1532](https://github.com/NousResearch/hermes-agent/pull/1532))
---
## 🧪 RL Training
- **Agentic On-Policy Distillation (OPD)** environment — new RL training environment for agent policy distillation ([#1149](https://github.com/NousResearch/hermes-agent/pull/1149))
- Make tinker-atropos RL training fully optional ([#1062](https://github.com/NousResearch/hermes-agent/pull/1062))
---
## 🔒 Security & Reliability
### Security Hardening
- **Tirith pre-exec command scanning** — static analysis of terminal commands before execution ([#1256](https://github.com/NousResearch/hermes-agent/pull/1256))
- **PII redaction** when `privacy.redact_pii` is enabled ([#1542](https://github.com/NousResearch/hermes-agent/pull/1542))
- Strip Hermes provider/gateway/tool env vars from all subprocess environments ([#1157](https://github.com/NousResearch/hermes-agent/pull/1157), [#1172](https://github.com/NousResearch/hermes-agent/pull/1172), [#1399](https://github.com/NousResearch/hermes-agent/pull/1399), [#1419](https://github.com/NousResearch/hermes-agent/pull/1419))
- Docker cwd workspace mount now explicit opt-in — never auto-mount host directories ([#1534](https://github.com/NousResearch/hermes-agent/pull/1534))
- Escape parens and braces in fork bomb regex pattern ([#1397](https://github.com/NousResearch/hermes-agent/pull/1397))
- Harden `.worktreeinclude` path containment ([#1388](https://github.com/NousResearch/hermes-agent/pull/1388))
- Use description as `pattern_key` to prevent approval collisions ([#1395](https://github.com/NousResearch/hermes-agent/pull/1395))
### Reliability
- Guard init-time stdio writes ([#1271](https://github.com/NousResearch/hermes-agent/pull/1271))
- Session log writes reuse shared atomic JSON helper ([#1280](https://github.com/NousResearch/hermes-agent/pull/1280))
- Atomic temp cleanup protected on interrupts ([#1401](https://github.com/NousResearch/hermes-agent/pull/1401))
---
## 🐛 Notable Bug Fixes
- **`/status` always showing 0 tokens** — now reports live state (Issue [#1465](https://github.com/NousResearch/hermes-agent/issues/1465), [#1476](https://github.com/NousResearch/hermes-agent/pull/1476))
- **Custom model endpoints not working** — restored config-saved endpoint resolution (Issue [#1460](https://github.com/NousResearch/hermes-agent/issues/1460), [#1373](https://github.com/NousResearch/hermes-agent/pull/1373))
- **MCP tools not visible until restart** — auto-reload on config change (Issue [#1036](https://github.com/NousResearch/hermes-agent/issues/1036), [#1474](https://github.com/NousResearch/hermes-agent/pull/1474))
- **`hermes tools` removing MCP tools** — preserve MCP toolsets when saving (Issue [#1247](https://github.com/NousResearch/hermes-agent/issues/1247), [#1421](https://github.com/NousResearch/hermes-agent/pull/1421))
- **Terminal subprocesses inheriting `OPENAI_BASE_URL`** breaking external tools (Issue [#1002](https://github.com/NousResearch/hermes-agent/issues/1002), [#1399](https://github.com/NousResearch/hermes-agent/pull/1399))
- **Background process lost on gateway restart** — improved recovery (Issue [#1144](https://github.com/NousResearch/hermes-agent/issues/1144))
- **Cron jobs not persisting state** — now stored in SQLite (Issue [#1416](https://github.com/NousResearch/hermes-agent/issues/1416), [#1255](https://github.com/NousResearch/hermes-agent/pull/1255))
- **Cronjob `deliver: origin` not preserving thread context** (Issue [#1219](https://github.com/NousResearch/hermes-agent/issues/1219), [#1437](https://github.com/NousResearch/hermes-agent/pull/1437))
- **Gateway systemd service failing to auto-restart** when browser processes orphaned (Issue [#1617](https://github.com/NousResearch/hermes-agent/issues/1617))
- **`/background` completion report cut off in Telegram** (Issue [#1443](https://github.com/NousResearch/hermes-agent/issues/1443))
- **Model switching not taking effect** (Issue [#1244](https://github.com/NousResearch/hermes-agent/issues/1244), [#1183](https://github.com/NousResearch/hermes-agent/pull/1183))
- **`hermes doctor` reporting cronjob as unavailable** (Issue [#878](https://github.com/NousResearch/hermes-agent/issues/878), [#1180](https://github.com/NousResearch/hermes-agent/pull/1180))
- **WhatsApp bridge messages not received** from mobile (Issue [#1142](https://github.com/NousResearch/hermes-agent/issues/1142))
- **Setup wizard hanging on headless SSH** (Issue [#905](https://github.com/NousResearch/hermes-agent/issues/905), [#1274](https://github.com/NousResearch/hermes-agent/pull/1274))
- **Log handler accumulation** degrading gateway performance (Issue [#990](https://github.com/NousResearch/hermes-agent/issues/990), [#1251](https://github.com/NousResearch/hermes-agent/pull/1251))
- **Gateway NULL model in DB** (Issue [#987](https://github.com/NousResearch/hermes-agent/issues/987), [#1306](https://github.com/NousResearch/hermes-agent/pull/1306))
- **Strict endpoints rejecting replayed tool_calls** (Issue [#893](https://github.com/NousResearch/hermes-agent/issues/893))
- **Remaining hardcoded `~/.hermes` paths** — all now respect `HERMES_HOME` (Issue [#892](https://github.com/NousResearch/hermes-agent/issues/892), [#1233](https://github.com/NousResearch/hermes-agent/pull/1233))
- **Delegate tool not working with custom inference providers** (Issue [#1011](https://github.com/NousResearch/hermes-agent/issues/1011), [#1328](https://github.com/NousResearch/hermes-agent/pull/1328))
- **Skills Guard blocking official skills** (Issue [#1006](https://github.com/NousResearch/hermes-agent/issues/1006), [#1330](https://github.com/NousResearch/hermes-agent/pull/1330))
- **Setup writing provider before model selection** (Issue [#1182](https://github.com/NousResearch/hermes-agent/issues/1182))
- **`GatewayConfig.get()` AttributeError** crashing all message handling (Issue [#1158](https://github.com/NousResearch/hermes-agent/issues/1158), [#1287](https://github.com/NousResearch/hermes-agent/pull/1287))
- **`/update` hard-failing with "command not found"** (Issue [#1049](https://github.com/NousResearch/hermes-agent/issues/1049))
- **Image analysis failing silently** (Issue [#1034](https://github.com/NousResearch/hermes-agent/issues/1034), [#1338](https://github.com/NousResearch/hermes-agent/pull/1338))
- **API `BadRequestError` from `'dict'` object has no attribute `'strip'`** (Issue [#1071](https://github.com/NousResearch/hermes-agent/issues/1071))
- **Slash commands requiring exact full name** — now uses prefix matching (Issue [#928](https://github.com/NousResearch/hermes-agent/issues/928), [#1320](https://github.com/NousResearch/hermes-agent/pull/1320))
- **Gateway stops responding when terminal is closed on headless** (Issue [#1005](https://github.com/NousResearch/hermes-agent/issues/1005))
---
## 🧪 Testing
- Cover empty cached Anthropic tool-call turns ([#1222](https://github.com/NousResearch/hermes-agent/pull/1222))
- Fix stale CI assumptions in parser and quick-command coverage ([#1236](https://github.com/NousResearch/hermes-agent/pull/1236))
- Fix gateway async tests without implicit event loop ([#1278](https://github.com/NousResearch/hermes-agent/pull/1278))
- Make gateway async tests xdist-safe ([#1281](https://github.com/NousResearch/hermes-agent/pull/1281))
- Cross-timezone naive timestamp regression for cron ([#1319](https://github.com/NousResearch/hermes-agent/pull/1319))
- Isolate codex provider tests from local env ([#1335](https://github.com/NousResearch/hermes-agent/pull/1335))
- Lock retry replacement semantics ([#1379](https://github.com/NousResearch/hermes-agent/pull/1379))
- Improve error logging in session search tool — by @aydnOktay ([#1533](https://github.com/NousResearch/hermes-agent/pull/1533))
---
## 📚 Documentation
- Comprehensive SOUL.md guide ([#1315](https://github.com/NousResearch/hermes-agent/pull/1315))
- Voice mode documentation ([#1316](https://github.com/NousResearch/hermes-agent/pull/1316), [#1362](https://github.com/NousResearch/hermes-agent/pull/1362))
- Provider contribution guide ([#1361](https://github.com/NousResearch/hermes-agent/pull/1361))
- ACP and internal systems implementation guides ([#1259](https://github.com/NousResearch/hermes-agent/pull/1259))
- Expand Docusaurus coverage across CLI, tools, skills, and skins ([#1232](https://github.com/NousResearch/hermes-agent/pull/1232))
- Terminal backend and Windows troubleshooting ([#1297](https://github.com/NousResearch/hermes-agent/pull/1297))
- Skills hub reference section ([#1317](https://github.com/NousResearch/hermes-agent/pull/1317))
- Checkpoint, /rollback, and git worktrees guide ([#1493](https://github.com/NousResearch/hermes-agent/pull/1493), [#1524](https://github.com/NousResearch/hermes-agent/pull/1524))
- CLI status bar and /usage reference ([#1523](https://github.com/NousResearch/hermes-agent/pull/1523))
- Fallback providers + /background command docs ([#1430](https://github.com/NousResearch/hermes-agent/pull/1430))
- Gateway service scopes docs ([#1378](https://github.com/NousResearch/hermes-agent/pull/1378))
- Slack thread reply behavior docs ([#1407](https://github.com/NousResearch/hermes-agent/pull/1407))
- Redesigned landing page with Nous blue palette — by @austinpickett ([#974](https://github.com/NousResearch/hermes-agent/pull/974))
- Fix several documentation typos — by @JackTheGit ([#953](https://github.com/NousResearch/hermes-agent/pull/953))
- Stabilize website diagrams ([#1405](https://github.com/NousResearch/hermes-agent/pull/1405))
- CLI vs messaging quick reference in README ([#1491](https://github.com/NousResearch/hermes-agent/pull/1491))
- Add search to Docusaurus ([#1053](https://github.com/NousResearch/hermes-agent/pull/1053))
- Home Assistant integration docs ([#1170](https://github.com/NousResearch/hermes-agent/pull/1170))
---
## 👥 Contributors
### Core
- **@teknium1** — 220+ PRs spanning every area of the codebase
### Top Community Contributors
- **@0xbyt4** (4 PRs) — Anthropic adapter fixes (max_tokens, fallback crash, 429/529 retry), Slack file upload thread context, setup NameError fix
- **@erosika** (1 PR) — Honcho memory integration: async writes, memory modes, session title integration
- **@SHL0MS** (2 PRs) — ASCII video skill design patterns and refactoring
- **@alt-glitch** (2 PRs) — Persistent shell mode for local/SSH backends, setuptools packaging fix
- **@arceus77-7** (2 PRs) — 1Password skill, fix skills list mislabeling
- **@kshitijk4poor** (1 PR) — OpenClaw migration during setup wizard
- **@ASRagab** (1 PR) — Fix adaptive thinking for Claude 4.6 models
- **@eren-karakus0** (1 PR) — Strip Hermes provider env vars from subprocess environment
- **@mr-emmett-one** (1 PR) — Fix DeepSeek V3 parser multi-tool call support
- **@jplew** (1 PR) — Gateway restart on retryable startup failures
- **@brandtcormorant** (1 PR) — Fix Anthropic cache control for empty text blocks
- **@aydnOktay** (1 PR) — Improve error logging in session search tool
- **@austinpickett** (1 PR) — Landing page redesign with Nous blue palette
- **@JackTheGit** (1 PR) — Documentation typo fixes
### All Contributors
@0xbyt4, @alt-glitch, @arceus77-7, @ASRagab, @austinpickett, @aydnOktay, @brandtcormorant, @eren-karakus0, @erosika, @JackTheGit, @jplew, @kshitijk4poor, @mr-emmett-one, @SHL0MS, @teknium1
---
**Full Changelog**: [v2026.3.12...v2026.3.17](https://github.com/NousResearch/hermes-agent/compare/v2026.3.12...v2026.3.17)