blocking launchctl-based gateway restart loops on macOS

NousResearch/hermes-agent · cluster 62891 · cron

Data as of

Nothing open on GitHub. Fix merged in #75972. Check it covers your case.

The short answer

0open issues
0open PRs
6items grouped
Known?
Yes. 6 related items grouped here, 1 issue already closed.
Fix event
A fix was merged to main in PR #75972. Check it covers your case. No release data is tracked.
Tracker
The maintainers' tracker marks this resolved, deciding PR #75972. That is separate from the fix event.
Still open
Nothing open on GitHub.

These issues and fixes address a macOS-specific vulnerability where the gateway lifecycle guard can be bypassed using launchctl submit or similar launchd mechanisms, causing infinite restart loops. The work focuses on detecting and blocking these persistent self-restart paths within the guard.

Open issues0

No open issues.

Open PRs0

No open pull requests.

Fixes on record

Merged to main. A stamp counts the issues a fix is linked to.

  • #75972 fix(guard): block launchctl submit/bootstrap and wrapped-script gateway restarts

    merged to main

    files: cron/lifecycle_guard.py, tests/hermes_cli/test_gateway_restart_loop.py, tools/terminal_tool.py

4 PRs closed without merging

From the close comments: merged via another change 1 · partial fix 1 · other 2

  • #51003 fix(gateway): block launchd restart helper loops · other → #62891
  • #62896 fix(gateway): block launchctl submit in the gateway lifecycle guard · other → #75972, #63272, #62891
  • #63272 fix: block persistent gateway self-restart jobs · merged via another change → #75972, #62891
  • #75557 fix(terminal): block launchctl submit inside gateway · partial fix → 9aefd62, #51003, #62896, #63272, #75557, #75972, #20489, #56517, #57305, #58289, #62891, #1, #15803, #14532, #6, #9, #374151, #4338
Closed issues · 1
  • Closed#62891macOS gateway lifecycle guard can be bypassed via launchctl submit, creating an infinite restart loop
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.33: the share of item pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36. 1.00 means 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 Lab

At a glance

Subsystem
cron
Merged PRs
#75972
Closed issues
1
Attempts
4 PRs closed without merging
Fix link checked
1 Aug 2026

For your agent

The same facts, typed.