← Back to blog

Hermes X Roundup - July 31, 2026

hermesroundupgithubmicro-compactiondesktop
Hermes X Roundup - July 31, 2026

The X API v2 search and lookup endpoints returned HTTP 402 on all six queries today, so this roundup is sourced from GitHub activity in the NousResearch/hermes-agent repository.

Per-Turn Micro-Compaction (#75345)

kshitijk4poor landed #75345 this morning -- a salvage of @lxman's micro-compaction work from #74522. Each completed turn folds the oldest un-absorbed exchange into a rolling summary, keeping context occupancy low and flat instead of one long stall when the window fills.

The PR: +2,220/-0 across 7 files. The core compressor (agent/context_compressor.py, +796) handles the fold logic, while agent/turn_finalizer.py (+40) wires it into the turn-completion lifecycle. A full test suite (tests/agent/test_micro_compaction.py, +754) and docs page (docs/micro-compaction.md, +401) ship alongside.

The feature is off by default. Eight follow-up commits from Michael Jordan and kshitijk4poor landed within hours of the merge: configurable cadence, opt-in shipping, context occupancy reporting, batch-compaction marker protection, and alternation-safe defrag that preserves user content.

Desktop Idle CPU Fix (#75218)

OutThisLife fixed #75218: an idle, minimized Hermes held roughly 20% CPU forever. The root cause was process-wide throttling opt-outs (disable-background-timer-throttling, disable-backgrounding-occluded-windows) combined with a static backgroundThrottling: false on every chat window. This pinned document.visibilityState to visible for the life of each renderer, so every visibility-gated backstop poll and clock tick ran at full cadence 24/7.

Fix: a new stream-throttle module (+119) gates update volume when the window is hidden, and the Electron main process respects window state for timer scheduling. +434/-42 across 12 files.

Portal Video Generation (#74963)

rob-maron added #74963: FLUX 3 video generation through the managed tool gateway. The integration sits in tools/flux3_video_tool.py (+914) with gateway routing in tools/managed_tool_gateway.py (+230) and full test coverage in tests/tools/test_flux3_video_tool.py (+568). Users with an active Nous Research subscription get BFL FLUX 3 video generation without a separate API key.

Desktop UX Cluster

Five more PRs from OutThisLife shipped yesterday in a desktop quality-of-life cluster. Each PR is small in isolation (the largest is +138/-28 across 8 files) but together they remove several long-standing friction points in the desktop client.

  • #74756: Ctrl+O opens the model picker without wiping the composer draft. Previously, switching models required typing /model which cleared whatever you had drafted. Model switches mid-turn are now allowed instead of being rejected with a session busy error.
  • #74736: Double-ESC discards the draft. This supersedes a two-year-old PR (#4827) and closes issue #5510. Ctrl+U/K are now line-scoped instead of clearing the entire input.
  • #74674: YOLO mode toggle moved to Cmd+K with live state display showing whether auto-approval is on or off.
  • #74644: Double-click a message to heart it.
  • #74665: Cmd+K opens instantly regardless of shell load -- previously the command palette could lag behind a busy renderer.

[^1]: kshitijk4poor. #75345: feat(agent): per-turn micro-compaction to amortize context compression. NousResearch/hermes-agent. July 31, 2026. [^2]: OutThisLife. #75218: Stop burning CPU while Hermes sits idle in the background. July 31, 2026. [^3]: rob-maron. #74963: Nous portal video gen. July 30, 2026. [^4]: OutThisLife. #74756: feat(tui): reach the model picker without wrecking your draft. July 30, 2026. [^5]: OutThisLife. #74736: feat: double ESC discards the draft. July 30, 2026.

Termagotchi
_

Ryan Underdown

Autodidact. Rarely listens to advice.

Follow on X @catamarammed or GitHub @underdown