Direct answer: Nous Research shipped two Hermes Agent patch releases in mid-September: v0.21.2 (Sept 11) is "The state.db Patch Release" — six PRs close 44 issues and kill the fragile-database class that v0.21.0's session-store rewrite introduced: no more second writers cancelling each other's locks, healthy WAL databases no longer reported corrupt, one bad row no longer kills
sessions list, sessions never bind to another profile's database, and opening state.db read-only takes 0.01 s instead of stalling 4–20 s behind a live gateway. v0.21.3 (Sept 14) rolls up 338 PRs, existing so the remote-gateway sign-in fix reaches Cloud agents that auto-update: a Desktop refresh burst can no longer replay an already-rotated refresh token into the Portal's reuse detection and revoke the whole session; long-lived processes stop leaking duplicate state.db writer handles. Both notes say full curated release notes ship with v0.22.0.
v0.21.2: the state.db reliability campaign
v0.21.0's big rewrite of session-store connection handling made state.db fragile on some installs. v0.21.2 fixes root causes rather than symptoms, six PRs closing 44 issues:
- Second writers are gone. Profile gateways no longer write hosted-room state into the root
state.dbevery 5 seconds (it moves toshared-state.db); the dashboard opens read-only first; cron's lifecycle guard goes through the tracked connection registry instead of a rawopen()on a live database;doctor --fixrefuses a checkpoint it can't prove is safe. - Healthy WAL databases stop wedging. OpenZFS
(deleted)dentries and aclose()racing anappend_messageboth produced a stickyDeletedWalGenerationErroron a good store; a transient WSL2 disk I/O error no longer killsget_session. - FTS damage no longer kills your turn. A full-text-search-index error used to be classified as whole-file corruption and fail-close the conversation; now search degrades, the index rebuilds later, the transcript store is untouched.
- One corrupt row no longer kills sessions list, export or insights. A TEXT timestamp or a
1e30epoch used to crash the whole listing; bad rows now render?with a WARNING naming the session. - Sessions never bind to or read another profile's database. The Desktop launch backend could pin to the wrong profile's
state.dbunder a HERMES_HOME race;session_searchby bare ID silently scanned every profile. - Opening state.db no longer takes the write lock when nothing needs writing — a one-shot
hermesbehind a busy gateway stalled 4–20 s; now 0.01 s.
Beyond the campaign: multi-profile isolation hardening (secondary-profile bots no longer inherit the default profile's allow-lists; stdio MCP servers no longer receive the default profile's vault secrets; MEDIA: delivery can't attach another profile's .env/auth.json/state.db), a password-blind credential vault (1Password/Bitwarden/local — the agent signs in and pays without ever seeing a secret), a curated SHA-pinned plugin catalog with one Desktop Plugins page, the Nous free tier with guided first launch, and the end of Desktop backend spawn storms. Window volume (the full v0.21.0→v0.21.2 window, not the six-PR campaign itself): 947 non-merge commits / 312 PRs / 140 contributors. If your state.db was already damaged by 0.21.0/0.21.1, run hermes doctor first — it now names structural vs index damage honestly.
v0.21.3: the Cloud sign-in fix, rolled to everyone
A patch rollup of 338 PRs (1,036 commits / 2,642 files) that exists for one main reason: remote Desktop and Cloud agents auto-update to the newest release tag, so the gateway sign-in fix had to ship in a tag. Both refresh paths (cookie gate and the desktop's native bearer route) now coalesce concurrent requests carrying the same rotating refresh token — a Desktop wake burst can no longer replay an already-rotated token into the Portal's reuse detection and revoke the whole session. Pairs with a Portal-side sliding 30-day idle horizon. Also fixed: long-lived processes stop leaking duplicate state.db writer handles (the N live SessionDB handles precursor stops firing on healthy topologies). The rest of the window (reasoning-effort selectors, OpenRouter OAuth PKCE, HEIF/AVIF decoding, new FAL models and more) is undocumented here on purpose — the official notes state full curated release notes for this window ship with v0.22.0.
Same window: DeepSeek Harness dsh-v0.1.6-alpha.1 (self-hoster action required)
The alpha that landed Sept 15 brings Web-sidebar terminals (multi-tab, shell selection, recovery after refresh), MCP on the official SDK v2, headless stdin / --session-id / --json, SSH remote workspaces, and experimental Browser/Computer Use and Auto review. But three changes require self-hosters to touch config: DeepSeek now defaults to the Messages protocol (if you manually configured the old official root address, switch it to https://api.deepseek.com/anthropic), the built-in E2B execution backend is removed, and the PTC package/service names unify to ptc-runtime with no old aliases; the workflow executor becomes workflow-ptc. Ralph is off by default now.
How to read it
For teams running Hermes where it hurts — long-lived gateways, cron-heavy automation, multiplexed profiles — v0.21.2 is the "stop losing sessions" patch and v0.21.3 is the "stop losing Cloud logins" patch; both are safe, targeted updates rather than feature drops. Start from the Hermes product page and the architecture deep dive; comparing ecosystems, see Hermes Agent vs OpenClaw, migrating see the OpenClaw-to-Hermes migration guide. DeepSeek Harness watchers, the glossary and compare hub cover the adjacent ecosystem.
Sources
- Hermes Agent official release (2026-09-11): v0.21.2 (v2026.9.11)
- Hermes Agent official release (2026-09-14): v0.21.3 (v2026.9.14)
- DeepSeek Harness official release (2026-09-15): dsh-v0.1.6-alpha.1
Direct answer: Nous Research 九月中旬连发两个 Hermes Agent 补丁版。v0.21.2(9 月 11 日)是「The state.db Patch Release」——六个 PR 关闭 44 个 issue,消灭 v0.21.0 会话存储大改写引入的数据库脆弱类问题:第二写者互取消锁、健康 WAL 库被误报损坏、一行坏数据杀掉
sessions list、会话绑定到他人 profile 数据库、只读打开卡 4–20 秒,全部修复。v0.21.3(9 月 14 日)rollup 338 个 PR,核心目的是把 remote gateway 登录修复带给自动更新的 Cloud agents——刷新风暴不再把轮换 refresh token 重放进 Portal 复用检测导致整会话被吊销,另修长驻进程 state.db writer 句柄泄漏。官方注明本窗口完整策展 notes 随 v0.22.0 发布。
v0.21.2:state.db 可靠性战役
v0.21.0 对会话存储连接处理的大改写,让部分安装的 state.db 变得脆弱。v0.21.2 修根因而非表象,六个 PR 关闭 44 个 issue:
- 第二写者被消灭。 Profile gateway 不再每 5 秒把 hosted-room 状态写进根
state.db(移入shared-state.db);dashboard 启动先只读打开;cron 生命周期守卫走受跟踪连接注册表,不再对活库裸open()(那会取消 gateway 的 POSIX 锁——教科书级「如何搞坏 SQLite」);doctor --fix拒绝无法证明安全的 checkpoint。 - 健康的 WAL 库不再卡死。 OpenZFS
(deleted)dentry 与close()撞上append_message都会让完好的库陷入粘性DeletedWalGenerationError;WSL2 一次瞬态 disk I/O error 不再杀死get_session。 - FTS 损伤不再杀死对话。 全文检索索引错误过去被归类为整库损坏并让对话失败收场;现在搜索降级、索引稍后重建,转录存储不受影响。
- 一行坏数据不再杀掉 sessions list、导出与 insights。 TEXT 时间戳或
1e30epoch 过去会崩溃整个列表;坏行现在渲染?并给出指名会话的 WARNING。 - 会话不再绑定或读到他人 profile 的数据库。 HERMES_HOME 竞态下桌面启动后端可能钉错 profile 的
state.db;按裸 IDsession_search会静默扫每个 profile 并返回别人的转录。 - 无事可写时不再拿写锁。 一次性
hermes进程在忙碌 gateway 身后打开存储,过去卡 4–20 秒后报「database is locked」,现在 0.01 秒。
战役之外:多 profile 隔离加固(副 profile bot 不再继承默认 profile 的 allow-list;stdio MCP 服务器不再收到默认 profile 的金库 secrets;MEDIA: 投递无法附带他人 profile 的 .env/auth.json/state.db);密码盲凭据金库(1Password/Bitwarden/本地金库——agent 登录、付款、填地址全程看不到密钥);策展 SHA-pinned 插件目录 + 桌面统一 Plugins 页;Nous 免费层与引导式首启;桌面后端 spawn 风暴终结。窗口体量(v0.21.0→v0.21.2 全窗口,非六 PR 战役本身):947 non-merge commits / 312 PRs / 140 贡献者。若你的 state.db 已被 0.21.0/0.21.1 损坏,先跑 hermes doctor——它现在能诚实区分结构性损坏与索引损坏。
v0.21.3:Cloud 登录修复,随 tag 送到每个人
338 个 PR 的 patch rollup(1,036 commits / 2,642 files),存在的主要理由只有一个:remote Desktop 与 Cloud agents 自动更新到最新 release tag,gateway 登录修复必须随 tag 发布。两条刷新路径(cookie gate 与桌面原生 bearer 路由)现在合并并发请求——桌面唤醒风暴不再把已轮换的 refresh token 重放进 Portal 复用检测、吊销整个会话;配合 Portal 侧滑动 30 天闲置窗口。另修长驻进程重复泄漏 state.db writer 句柄(健康拓扑上 N live SessionDB handles 前兆不再误报)。其余窗口变更(reasoning-effort 选择器、OpenRouter OAuth PKCE、HEIF/AVIF 解码、FAL 新模型等)官方明示「故意不在此文档化」——完整策展 notes 随 v0.22.0 发布,本文不预写。
同期段:DeepSeek Harness dsh-v0.1.6-alpha.1(自托管用户需要动手)
9 月 15 日落地的这个 alpha 带来 Web 侧栏终端(多标签/Shell 选择/刷新恢复)、MCP 升官方 SDK v2(协议协商/工具分页/资源发现与 URI 模板)、headless stdin/--session-id/--json、SSH 远端工作区与实验性 Browser/Computer Use、Auto review。但对自托管用户,三项配置变更必须动手:DeepSeek 默认改用 Messages 协议(手动配置过旧官方根地址的,改为 https://api.deepseek.com/anthropic);内置 E2B 执行后端移除;PTC 包名/服务名统一为 ptc-runtime 系列、旧名不再兼容,工作流执行器换 workflow-ptc。Ralph 默认关闭。
怎么看
对把 Hermes 跑在痛处的团队——长驻 gateway、cron 重度自动化、多 profile 复用——v0.21.2 是「不再丢会话」补丁,v0.21.3 是「不再丢 Cloud 登录」补丁:两个都是安全、定向的更新而非功能大版本。入口看 Hermes 产品页与架构深度分析;生态对照见 Hermes Agent vs OpenClaw,从 OpenClaw 迁移参照迁移指南。DeepSeek Harness 生态的相邻概念见术语表与对比总览。
来源
- Hermes Agent 官方 release(2026-09-11):v0.21.2 (v2026.9.11)
- Hermes Agent 官方 release(2026-09-14):v0.21.3 (v2026.9.14)
- DeepSeek Harness 官方 release(2026-09-15):dsh-v0.1.6-alpha.1