Skip to main content
Pre-release

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

hermes-mordred

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. 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.

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.0a0

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.0a0
File Size Uploaded
hermes_mordred-0.3.0a0.tar.gz 2.2 MB Details

Built distribution (wheel)

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

Total release size: 3.6 MB

Release files / hermes_mordred-0.3.0a0.tar.gz

Download URL hermes_mordred-0.3.0a0.tar.gz
Size 2.2 MB
Tags Source
SHA-256 checksum
How to use checksums
6879a7a8ab8987ed6e630e0d7c5aff85975c82e11a9bea65db00aff77e68b82b
BLAKE2b-256 checksum
How to use checksums
6216b87c4e747929be0abd7c7d0e35f206c53a270930208b882cd015695c1ecc
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 14, 2026.

Transparency log

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

Download URL hermes_mordred-0.3.0a0-py3-none-any.whl
Size 1.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
59a5162178323986bde634299567eddf20ae6429df81fed3a0911f09a790acb2
BLAKE2b-256 checksum
How to use checksums
dfa27f61062af279934fd76f639ef4f88f2da676c434fe5029a9f2ad52dfeb63
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 14, 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