Nothing open on GitHub. Fix merged in #24620 on 12 May 2026. Check it covers your case.
The short answer
0open issues
0open PRs
3items grouped
- Known?
- Yes. 3 related items grouped here, 1 issue already closed.
- Fix event
- A fix was merged to main in PR #24620. Check it covers your case. No release data is tracked.
- Tracker
- The maintainers' tracker marks this
unresolved. That is separate from the fix event. - Still open
- Nothing open on GitHub.
These items address a bug where running hermes dashboard on headless Linux environments causes the process to exit immediately while still reporting success. The fix skips the browser-open step in such environments to prevent the premature exit.
Open issues0
Open PRs0
Fixes on record
-
#24620 fix(dashboard): skip browser-open on headless Linux to prevent process exit
files:
hermes_cli/web_server.py,scripts/release.pyShow the diff
-
hermes_cli/web_server.py@@ -4432,11 +4432,33 @@ def start_server( if open_browser: import webbrowser - def _open(): - time.sleep(1.0) - webbrowser.open(f"http://{host}:{port}") + # On headless Linux (no DISPLAY or WAYLAND_DISPLAY) some registered + # browsers are TUI programs (links, lynx, www-browser) that try to + # take over the terminal. That can send SIGHUP to the server process + # and cause an immediate exit even though uvicorn bound successfully. + # Skip the auto-open attempt on headless systems and let the user + # open the URL manually. macOS and Windows are always considered + # display-capable. + _has_display = ( + sys.platform != "linux" + or bool(os.environ.get("DISPLAY")) + or bool(os.environ.get("WAYLAND_DISPLAY")) + ) + + if _has_display: + def _open(): + try: + time.sleep(1.0) + webbrowser.open(f"http://{host}:{port}") + except Exception: + pass - threading.Thread(target=_open, daemon=True).start() + threading.Thread(target=_open, daemon=True).start() + else: + _log.debug( + "Skipping browser-open: no DISPLAY or WAYLAND_DISPLAY detected " + "(headless Linux). Pass --no-open to suppress this detection." + ) print(f" Hermes Web UI → http://{host}:{port}") uvicorn.run(app, host=host, port=port, log_level="warning") -
scripts/release.py@@ -146,6 +146,8 @@ "[email protected]": "Osraka", "[email protected]": "ryptotalent", "[email protected]": "hookinglau", + "[email protected]": "AllynSheep", + "[redacted:email]": "AllynSheep", "[redacted:email]": "novax635", "[redacted:email]": "Krionex", "[email protected]": "rxdxxxx",
-
1 PR closed without merging
From the close comments: merged via another change 1
-
#24129 fix(dashboard): skip browser-open on headless Linux to prevent process exit · merged via another change →
#24620
Closed issues · 1
- Closed#24127[Bug]: `hermes dashboard` reports success even when the dashboard process exits immediately
How this cluster was grouped
-
Link evidence (
structural links throughout): every member is connected by structural evidence: shared changed files, or a closing/superseded reference. -
Pairwise link density
0.67: the share of item pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36.1.00means every pair is linked.
Pick up a Lab task
Check whether a fix covers the open issues here, with your own agent. Bring back evidence for maintainers.
Open the LabAt a glance
- Merged PRs
- #24620
- Closed issues
- 1
- Attempts
- 1 PR closed without merging
- Fix link checked
- 12 May 2026