hermes - 💡(How to fix) Fix fix(dashboard): systemd service crash-loop when web_dist exists but npm unavailable

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…

hermes-dashboard.service crashes 393+ times in a row when started via systemd on a server where npm is not in PATH. The web UI is already built (web_dist/ exists), but the dashboard fails with:

Web UI frontend not built and npm is not available.
Install Node.js, then run: cd web && npm install && npm run build

The systemd unit file (/etc/systemd/user/hermes-dashboard.service) does not pass --skip-build, even though the frontend was pre-built.

Root Cause

The hermes-dashboard.service ExecStart line runs 'hermes dashboard' without --skip-build. The dashboard binary checks for web_dist/ but still requires npm to validate the build, and exits with status 1 when npm isn't available.

Fix Action

Fix

Add --skip-build to the ExecStart line in the generated unit file, or make the binary auto-detect that web_dist/ exists and skip build automatically.

Workaround

Manually start with --skip-build flag, or kill systemd service and run background process:

hermes dashboard --host 0.0.0.0 --port 8080 --insecure --tui --skip-build

Code Example

Web UI frontend not built and npm is not available.
Install Node.js, then run: cd web && npm install && npm run build

---

hermes dashboard --host 0.0.0.0 --port 8080 --insecure --tui --skip-build
RAW_BUFFERClick to expand / collapse

Summary

hermes-dashboard.service crashes 393+ times in a row when started via systemd on a server where npm is not in PATH. The web UI is already built (web_dist/ exists), but the dashboard fails with:

Web UI frontend not built and npm is not available.
Install Node.js, then run: cd web && npm install && npm run build

The systemd unit file (/etc/systemd/user/hermes-dashboard.service) does not pass --skip-build, even though the frontend was pre-built.

Environment

  • Hermes Agent v0.14.0 (2026.5.16)
  • Ubuntu 24.04, systemd user unit
  • web_dist/ present from prior 'cd web && npm run build'
  • npm not installed on production server

Steps to Reproduce

  1. cd web && npm run build (build frontend once)
  2. systemctl --user enable hermes-dashboard
  3. systemctl --user start hermes-dashboard
  4. Service enters crash-loop: exit-code=1, restart counter climbs indefinitely

Root Cause

The hermes-dashboard.service ExecStart line runs 'hermes dashboard' without --skip-build. The dashboard binary checks for web_dist/ but still requires npm to validate the build, and exits with status 1 when npm isn't available.

Fix

Add --skip-build to the ExecStart line in the generated unit file, or make the binary auto-detect that web_dist/ exists and skip build automatically.

Workaround

Manually start with --skip-build flag, or kill systemd service and run background process:

hermes dashboard --host 0.0.0.0 --port 8080 --insecure --tui --skip-build

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