hermes - 💡(How to fix) Fix [Bug] Dashboard consumes 20-50% CPU constantly when idle

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Error Message

  1. No errors in logs — no visible exceptions or error messages

Fix Action

Workaround

Disable dashboard when not actively needed to reclaim CPU resources.

Code Example

hermes dashboard --host 0.0.0.0 --port 9119 --insecure --no-open

---

top -p $(pgrep -f "hermes dashboard")
RAW_BUFFERClick to expand / collapse

Bug Description

Hermes Dashboard consumes abnormally high CPU (20-50%) constantly, even when idle with no active connections or browser sessions. The process shows sustained high CPU usage that does not drop after initialization completes.

Steps to Reproduce

  1. Start dashboard on a clean system:
hermes dashboard --host 0.0.0.0 --port 9119 --insecure --no-open
  1. Monitor CPU usage after 1-2 minutes (after initialization):
top -p $(pgrep -f "hermes dashboard")
  1. Observe sustained high CPU usage (20-50%) with no browser connections

Expected Behavior

Dashboard should be near-idle (<5% CPU) when no active connections or requests are being processed.

Actual Behavior

  • Fresh start: 46% CPU
  • After 30-60 seconds: 20-25% CPU (does not drop further)
  • After 25+ hours uptime: 9-10% CPU (still elevated, accumulated 143+ minutes of CPU time)

CPU usage remains elevated indefinitely, regardless of whether anyone is accessing the dashboard.

Environment

  • Hermes Agent: v0.16.0
  • Python: 3.12.3
  • OS: Linux (Armbian/Debian)
  • Hardware: ARM64, 1.8GB RAM
  • Dashboard flags: --host 0.0.0.0 --port 9119 --insecure --no-open

Additional Context

Observed patterns:

  1. Consistent across restarts — behavior reproducible on fresh dashboard start
  2. No correlation with access — CPU high even when no browser sessions active
  3. Memory stable — RAM usage normal (~90-110MB), only CPU affected
  4. No errors in logs — no visible exceptions or error messages

System impact:

On resource-constrained systems (1-2GB RAM, low-power ARM), this constant CPU drain:

  • Increases system load average
  • Reduces available CPU for gateway and other services
  • Potentially increases power consumption and heat

Possible causes to investigate:

  • Polling loop without proper delays
  • WebSocket keepalive/heartbeat running too frequently
  • Database/session cleanup running continuously instead of periodic
  • Reactive UI framework re-rendering without actual state changes
  • Hot-reload / file watcher running in production mode

Workaround

Disable dashboard when not actively needed to reclaim CPU resources.

Additional Information

Tested with both fresh install and long-running instance. Behavior is consistent across multiple restarts and different uptime durations.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING