Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

hermes-mordred

Latest release (including pre-releases) PyPI CI

Privacy-preserving plugins for the Hermes agent: hardware-backed keys, Tor/VPN routing, local-LLM policy enforcement, encrypted audit data, end-to-end gateway messages, and macOS-integrated at-rest encryption.

Mordred is a cooperative control layer inside Hermes, not an operating-system sandbox. See the specification for the security boundary and accepted limitations.

Status: active alpha. See the latest alpha release and release notes. New users should start with the Quickstart.

The plugin

The package registers one Hermes plugin, mordred (a single hermes_agent.plugins entry point), made of these components:

Component Purpose
keyvault Secure Enclave / TPM-backed key management and at-rest secrets
llm_guard Strict-mode local-LLM enforcement
network Tor, VPN, and clearnet path management
privacy_check Skill-metadata policy enforcement and audit logging
e2e Encrypted Slack and Discord gateway commands and replies
wizard The hermes-mordred CLI

Hermes (and Hermes Desktop) lists it as one plugin, mordred; enabling or disabling it turns every component on or off together. Releases up to 0.1.0a20 registered six plugins instead (mordred_network, mordred_privacy_check, ...). hermes-mordred plugins migrate (also run by install.sh, configure, and upgrade) replaces those names in plugins.enabled / plugins.disabled with mordred. The plugins.mordred_* settings sections in config.yaml keep their names.

Requirements

  • Python 3.11 or newer and hermes-agent>=0.13.0.
  • macOS or Linux for the established operator workflows. Scoped native Windows implementations exist; general Windows product, Windows 11, and live-device acceptance remain incomplete. Mobile support is deferred. See Platform Support.
  • Transparent .env, configuration, and workspace encryption use macOS integrations. Memory uses the macOS file vault, a dedicated Linux TPM-wrapped key, or dedicated Windows CNG custody. Linux memory works through setup, encryption enable all, and standalone commands; Private Telegram has its dedicated flow. Linux setup/all skip env/config file-vault enrollment. Windows support is reported per capability.
  • Hermes database encryption (state.db and the other SQLite stores) is macOS-only and requires the separate databases encrypt command after memory setup. Linux TPM and Windows CNG memory encryption do not encrypt databases.

Install (users, from PyPI)

Start with an installed Hermes Agent, then run the Mordred installer:

curl -fsSL https://raw.githubusercontent.com/mordredagent/hermes-mordred/main/scripts/install.sh | bash
hermes-mordred setup
hermes-mordred status

install.sh only installs the package; hermes-mordred setup is what configures Mordred and creates keys. It runs configure, which enables the mordred plugin. Manual configuration is covered by the usage guide. Version pins, optional features, inspect-before-running steps, platform commands, and expected output are documented in the Quickstart.

Keep it up to date

hermes-mordred update          # newest release, same extras, Hermes's own packages untouched
hermes-mordred update --check  # only tell me

Restart the Hermes gateway (or Hermes Desktop) afterwards. Hermes Desktop users can also press Update Mordred on the Mordred page; a notice appears there when a newer release is known. Details, refusals and the installer fallback are in the usage guide.

Use it

Use hermes-mordred status for the overall state. On macOS, guided setup also offers agent-memory protection through hermes-mordred encryption enable memory. To protect conversation databases too, follow the database encryption steps. For native Windows, follow the TPM workflow and capability limits. The complete command reference and security ceremonies live in the usage guide.

Once Hermes 0.19.0+ is configured and the plugins are enabled, hermes mordred <command> exposes the same command tree. On older Hermes versions, or before the first configure, keep using hermes-mordred.

Verify discovery

hermes-mordred plugins list

It shows the mordred plugin and whether each component registered. Some Hermes versions omit package entry points from hermes plugins list.

Documentation

Detailed setup, operations, and troubleshooting are maintained in the dedicated guides:

Audience Guide Covers
Users Quickstart Install and first protected setup
Users Usage guide Commands, ceremonies, troubleshooting, upgrades, removal
Users Extension guide (preview) Optional browser extension, E2E messaging, wallet bridge
Users Telegram guide (preview) Read-only private questions, hardware-sealed credentials, platform limits, Venice/local only
Developers Development setup Editable .venv, HERMES_HOME isolation, validation
Developers Development index Maintained sources of truth

License

MIT

Metadata

Release files for hermes-mordred 0.3.0a2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hermes-mordred 0.3.0a2
File Size Uploaded
hermes_mordred-0.3.0a2.tar.gz 2.2 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for hermes-mordred 0.3.0a2
File Interpreter ABI Platform
hermes_mordred-0.3.0a2-py3-none-any.whl Python 3 none any Details

Total release size: 3.7 MB

Release files / hermes_mordred-0.3.0a2.tar.gz

Download URL hermes_mordred-0.3.0a2.tar.gz
Size 2.2 MB
Tags Source
SHA-256 checksum
How to use checksums
be9dde4eb72d6a3af7e6db8b06baa3a5d59d31a9bfc5dc92609279b595f8c94c
BLAKE2b-256 checksum
How to use checksums
d1871b106a0f60f2bb1a01666a369e9a7b979159d460fbefda5c0431f92c01dd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / hermes_mordred-0.3.0a2-py3-none-any.whl

Download URL hermes_mordred-0.3.0a2-py3-none-any.whl
Size 1.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
a59bb7eb8bfd5deeba76809f08d5aa8a46f7c6ac65667a3f5d1341789344a9fd
BLAKE2b-256 checksum
How to use checksums
829c9e085b5827b32ff4489bd7d1d6ccc009faaae6c1206eaf20c315e0585bbc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page