hermes-agent/website/docs/reference
Teknium 19fb03a93c
Port from QwenLM/qwen-code#8602: cap a streaming response's total lifetime
The stale-stream detector only bounds the gap BETWEEN chunks and resets on
every chunk, so a drip-fed stream — a gateway trickling keep-alive-shaped
chunks, or a model crawling through one runaway generation for hours —
defeats it indefinitely: the turn never completes and the session sits
silent until an outer timeout (if any) kills it.

Adds a total wall-clock lifetime cap for one streaming response attempt:

- agent.stream_max_lifetime (config.yaml) / HERMES_STREAM_MAX_LIFETIME,
  default 1800s, 0 disables. Never fires before the effective stale-stream
  timeout, so it cannot preempt reasoning-model patience floors.
- Main OpenAI/Anthropic poll loop: tripping the cap kills the connection
  exactly like a stale kill (attempt cancelled, request client closed),
  counts in the #58962 cross-turn stale-streak breaker, and lets the
  bounded retry loop / partial-stub continuation recover.
- Bedrock poll loop (sibling site): same cap wired into the existing event
  watchdog, surfacing a distinct TimeoutError.

Tests: drip-fed stream (events flowing every 50ms so the stale detector can
never fire) is killed at the cap and bumps the streak — verified to hang
without the fix (sabotage run timed out); 0-disable; config/env resolution
precedence. Docs: configuration.md timeout table + env var reference.
2026-08-06 18:40:09 -07:00
..
_category_.json
automation-blueprints-catalog.mdx
cli-commands.md docs: four small accuracy fixes 2026-08-05 21:33:44 +05:30
environment-variables.md Port from QwenLM/qwen-code#8602: cap a streaming response's total lifetime 2026-08-06 18:40:09 -07:00
faq.md docs: warn against pointing two agents at one Hermes home (memory, profiles, FAQ) 2026-08-05 21:33:44 +05:30
mcp-config-reference.md docs: accuracy sweep + coverage for 2 months of shipped features 2026-07-29 08:48:05 -07:00
model-catalog.md feat(model-switch): excluded_providers config to hide providers from /model picker 2026-07-20 03:06:02 -07:00
optional-skills-catalog.md refactor(skills): move polymarket to optional-skills/finance 2026-08-06 11:30:58 -07:00
profile-commands.md docs: accuracy sweep + coverage for 2 months of shipped features 2026-07-29 08:48:05 -07:00
skills-catalog.md refactor(skills): move polymarket to optional-skills/finance 2026-08-06 11:30:58 -07:00
slash-commands.md feat: /refine — run the memory/skill self-improvement review on demand 2026-08-05 22:40:51 -07:00
tools-reference.md Hermes can read the in-app browser (#79482) 2026-08-05 16:35:00 +00:00
toolsets-reference.md Hermes can read the in-app browser (#79482) 2026-08-05 16:35:00 +00:00