hermes-operator
UndermountainCC/hermes-operator
Kubernetes operator that deploys and manages Hermes Agent instances from a HermesAgent resource
hermes-operator is a Kubernetes operator written in Go that deploys and manages Hermes Agent instances from a HermesAgent custom resource. It gives Hermes Agent users one declarative object per agent instead of hand-managing a Deployment, volume, secrets and RBAC for each.
What hermes-operator does
You define an agent with a HermesAgent custom resource, and the operator reconciles the Pod, PVC, ServiceAccount, RBAC bindings, environment composition and per-gateway readiness status. The README's reasoning is that each Hermes agent is stateful, with a persistent home directory, paired credentials and accumulated memory, so running several on Kubernetes otherwise means managing a Deployment, PVC, Secrets and RBAC per agent.
A HermesAgent spec sets the image, storage, LLM providers with secret-backed environment variables, and gateways such as Discord with their tokens. It installs through a Helm chart from ghcr.io or with kustomize, and cert-manager is a prerequisite. The README notes that llmDefaultProvider works mostly as a typo guard, because Hermes reads model.provider from config.yaml first. An end-to-end suite runs against a Kind cluster. Status is v1alpha1, ready for internal alpha use, and the public API may change.
Key features
- HermesAgent custom resource for declarative agent definitions
- Reconciliation of Pod, PVC, ServiceAccount and RBAC bindings
- Secret-backed environment variables for LLM providers and gateways
- Per-gateway readiness reported in status
- Helm chart and kustomize install options
- End-to-end tests on a Kind cluster
When to use it
- Run several Hermes agents on one Kubernetes cluster
- Give each agent its own persistent volume and credentials
- Configure fallback LLM providers and multiple gateways in YAML
Who it is for: Platform engineers who run Hermes Agent on Kubernetes and want it managed declaratively.
How it fits with Hermes Agent
Built for Hermes Agent: it runs the nousresearch/hermes-agent image and manages its home directory, gateways and credentials.
How to install hermes-operator
These commands are copied from the project's README. Check the repository for the latest steps before you run them.
helm repo add hermes-operator oci://ghcr.io/undermountaincc/charts
helm install hermes-operator hermes-operator/hermes-operator \
--namespace hermes-operator-system --create-namespaceRequirements: A Kubernetes cluster with cert-manager installed.
Note: Status is v1alpha1, described as ready for internal alpha use, and the public API may change.
FAQ
What is hermes-operator?
hermes-operator is a Kubernetes operator that deploys Hermes Agent instances from a HermesAgent custom resource and reconciles the Pod, volume, RBAC and gateway status for each one.
How do I install hermes-operator?
Add the Helm chart from ghcr.io with helm repo add, then run helm install into the hermes-operator-system namespace. A kustomize install is also documented, and cert-manager is a prerequisite.
Is hermes-operator free and open source?
Yes. The repository is published under the Apache-2.0 license.
Similar deployment for Hermes Agent
All deploymentDeploy Hermes Agent on Hugging Face Spaces with data persistence through a Hugging Face Dataset
scicco HermznerProvision a hardened Hermes Agent on Hetzner with rootless Podman and Tailscale
mrobinson2 AzureAgentForgeTerraform-deployed multi-agent platform on Azure combining PaperClip, Hermes and Honcho
niyazmft Droid AI ToolkitTermux toolkit for running OpenClaw, Hermes, Ollama, n8n and other AI tools on Android
fly-apps Hermes Agent on Fly.ioExample deployment of Hermes Agent as a Fly.io Machines app with messaging access
orailnoor Pi DuckyRaspberry Pi Zero USB keyboard gadget that deploys Hermes Agent, Tailscale and RustDesk on a computer
Related guides: How to run Hermes Agent securely · How to install Hermes Agent · Connect Hermes agents on several machines with Hermes Desktop