Skip to main content

Custodian Hermes Guard

The enforcement adapter under Talaria.

Hermes Guard sits in the Hermes Agent tool loop. Before a tool runs, it checks the proposed action through Custodian's policy pipeline. After the tool returns, it inspects the result before Hermes sees it.

It follows the same kernel policy and operator contract as Custodian Codex Guard; only host-specific integration features differ.

That gives Hermes a mechanical boundary for forbidden files, tools, prompt injection, secret leakage, personal data, spending patterns, and operator-approved actions. These checks live below the model. Remembering the rule is not part of the security design.

Hermes Guard or Talaria?

Use Hermes Guard when you want the smallest standalone enforcement adapter. Use Talaria when you want the complete Hermes experience: policy authoring, dashboard, denial history, credential broker, session capsules, and governed skill execution.

Talaria depends on Hermes Guard. Hermes Guard does not depend on Talaria. There is one canonical enforcement runtime, not two implementations that can drift apart.

Install

Version 0.1.0 is available as a GitHub release.

Install from PyPI:

pipx install custodian-hermes-guard
custodian-hermes setup
custodian-hermes doctor
custodian-hermes status

custodian-hermes-guard is an equivalent long-form command. On PEP 668 Linux systems, use pipx or a virtual environment rather than modifying the system Python.

The two hooks

pre_tool_call evaluates the tool name and arguments. A denial becomes a hard Hermes block.

transform_tool_result inspects returned text. It can redact sensitive content or suppress an unsafe result before the model receives it.

If the kernel, policy, or plugin cannot initialize, the pre-tool hook blocks the call. An installation failure must not become unrestricted execution.

Exact approvals

Protected mode creates an authenticated approval for the exact action. Approvals are:

  • single-use;
  • time-bounded;
  • tied to the arguments, workspace, requester, and policy version;
  • consumed only by the matching follow-up action.

Hermes Guard waits for the operator decision and resumes the original call when approved. Repeated identical attempts reuse the same live request instead of filling the dashboard with duplicates.

Policy

Hermes Guard reads ~/.talaria/policy.yaml:

version: "1"

operator:
  mode: protected
  approval_wait_seconds: 300

tools:
  forbid: [stripe-payout]

paths:
  forbid: ["~/.ssh", "~/.aws", "~/.gnupg"]
  forbid_globs: ["*.env", "*.pem", "id_rsa"]

privacy:
  redact: [email, phone, ssn, card]

Kernel self-protection, prompt-injection detection, and secret-leak protection remain mandatory. Policy can narrow authority but cannot switch off those boundaries.

Release status

The 0.1.0 release has passed source, filtered-package, clean-wheel, Linux, and Windows qualification. macOS qualification remains pending. No PyPI publication has occurred.

Custodian is alpha software and has not received a third-party security audit. Read SECURITY.md before relying on it for consequential work.

Links

Metadata

Release files for custodian-hermes-guard 0.1.0

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

Source distribution (sdist)

Source distribution for custodian-hermes-guard 0.1.0
File Size Uploaded Provenance
custodian_hermes_guard-0.1.0.tar.gz 23.3 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for custodian-hermes-guard 0.1.0
File Interpreter ABI Platform
custodian_hermes_guard-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 43.0 kB

Release files / custodian_hermes_guard-0.1.0.tar.gz

Download URL custodian_hermes_guard-0.1.0.tar.gz
Size 23.3 kB
Tags Source
SHA-256 checksum
How to use checksums
8ec461f2d2216c959d910a25381279f8a4417efa399d78daa2f71f63e31e5769
BLAKE2b-256 checksum
How to use checksums
79871384b178216cdfdc1343aa0e8f843987b6866b555000a31ab8344948f94a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.13

Release files / custodian_hermes_guard-0.1.0-py3-none-any.whl

Download URL custodian_hermes_guard-0.1.0-py3-none-any.whl
Size 19.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b2bd037d6cd483126e852f41c690ba17bd8690bb6dc6e10ca2cc87d63e21b2d1
BLAKE2b-256 checksum
How to use checksums
01edb39b57ebbc8775ff435f43b7e35249993b6d513bf67ba2c74ecd8170ddd8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.13

Security for custodian-hermes-guard 0.1.0

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

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