Hermes Supply-Chain Security Audits
Hermes includes security checks for dependency and supply-chain risk. The CLI can audit the active Python environment, plugin requirements, and pinned MCP server packages, while startup and doctor checks also surface curated advisories for known-compromised versions.
Official documentation: https://hermes-agent.nousresearch.com/docs/user-guide/security
CLI reference: https://hermes-agent.nousresearch.com/docs/reference/cli-commands
What an audit can and cannot prove
Run hermes security audit for an on-demand advisory scan. Treat findings as triage inputs: confirm the installed package and version, read the advisory, identify whether the vulnerable component is reachable in your configuration, then update or remove it.
A clean advisory scan is not a complete security review. It does not validate gateway authorization, tool permissions, network exposure, secret handling, or the behavior of arbitrary plugin code.
Audit checklist
- Update the advisory data path before high-stakes review when supported.
- Scan the active profile and the actual runtime environment.
- Include plugin and pinned MCP dependency surfaces.
- Record package name, installed version, advisory, and remediation.
- Remove unused plugins and MCP servers.
- Re-run tests after dependency updates.
- Acknowledge only advisories that were read and addressed.
- Pair dependency scanning with gateway, network, and tool-boundary review.
Pitfalls
- Acknowledging a warning merely to make status output green.
- Auditing one virtual environment while the gateway runs another.
- Updating a transitive dependency without checking compatibility.
- Assuming an unused vulnerable package is harmless forever.
- Treating a clean package scan as proof the deployment is secure.
Verification steps
- Run
hermes security auditin the environment used by the real gateway or agent. - Run
hermes doctorand compare curated advisory output. - Resolve or document every finding with a named owner and decision.
- Restart the runtime after dependency changes.
- Re-run the audit and focused integration tests.
- Inspect enabled plugins, MCP servers, and lazy-install policy.
- Verify gateway authorization and exposed ports separately.
