@enihcam @y0uCeF The stamp clears "unknown-managed", and removing facts.json silences the warning, but that's not the whole story:
- pm never counts a PATH copy. With lazy installs off and no node in its store,
hermes --tuithen dies withnode: not installed and lazy installs are disabled, also on a fresh account. npx/uvx MCP servers fail the same way. - The gateway's systemd unit runs the venv python directly, so the launcher's HERMES_DISABLE_LAZY_INSTALLS doesn't apply there. Its first lazy install refills ~/.hermes/tools with python + uv: the warning comes back, and hermes then runs its children and new service units on that bare python without the venv.
Quick relief: export HERMES_NODE=/usr/bin/node in the launcher (the TUI takes it first).
hermes-agent-bin 0.21.7-3 (https://github.com/jabla/hermes-agent-bin/pull/20) covers all of it: a read-only pm store of /usr/bin symlinks under /opt (stamp runtimeDir) plus a 7-line patch. Feel free to reuse system-tools.py and keep-venv-interpreter.patch. I'll take the root causes upstream too.
Pinned Comments
y0uCeF commented on 2026-06-30 19:32 (UTC) (edited on 2026-08-29 13:52 (UTC) by y0uCeF)
This package installs Hermes Agent to /opt/hermes-agent using a uv-based relocatable virtual environment.
All Node.js modules are pre-bundled; lazy installs are disabled in the root-owned/opt directory to avoid permission issues. Instead, lazy installs are directed to $XDG_DATA_HOME/hermes-agent/python (user-writable, e.g., ~/.local/share/hermes-agent/python).
Post-install:
For the desktop app, see the hermes-agent-desktop package.