This is an early release preview. You may encounter bugs.
Hermes Agent Operator logo
Unclaimed

Tool deployment

Hermes Agent Operator

Kubernetes operator that runs Hermes agents as declarative custom resources covering config, skills, crons, RBAC and networking

B 77/100 GitHub score ? This grade is derived from GitHub signals, not user votes. Open for the full breakdown.
Discussion

01 / Summary

About Hermes Agent Operator.

Hermes Agent Operator self-hosts Hermes agents on Kubernetes by managing each agent as a HermesAgent custom resource. Hermes is built for personal use, so running it across a team tends to drift: configurations diverge, skills go out of sync, and there is no shared record of what each agent does or can access. The operator gives each agent one manifest that declares its config, workspace files, skills, crons, and bundles, and it keeps the running agent in sync with that declaration.

The operator reconciles only what the manifest declares. Packages and plugins that Hermes installs on its own at runtime fall outside its control, and only the agent's data volume persists across pod restarts. Init containers install declared pip and npm packages onto that volume, and removing a package from the list reinstalls the remaining set so the installed state matches the declaration.

Beyond the agent container, the resource covers optional sidecars (a SearXNG instance for web search without an external API key and a Camofox Browser instance for browser automation), a ServiceAccount and Role, a default-deny NetworkPolicy, a Service and Ingress, and pod scheduling settings. A companion Hermes skill lets a running agent scaffold and apply HermesAgent manifests itself. Hermeum, a separate team platform with a dashboard, templates, and shared credentials, is built on this operator.

The operator sends an anonymous heartbeat through PostHog carrying only a random per-start deployment ID and the operator version, and the heartbeat can be turned off. Reconciliation metrics stay in the cluster.

  • Declarative agents: one custom resource holds an agent's config, workspace files, skills, crons, and slash-command bundles
  • Config sources: Hermes config inline as free-form YAML or read from a ConfigMap, with changes triggering a reconcile and restart
  • Gateway API and webhooks: optional built-in API server and HMAC-signed webhook ingress, with keys generated and stored in a Secret
  • Persistent storage: a volume for agent data, optionally restored from a VolumeSnapshot
  • Packages and plugins: declared pip and npm packages, Hermes plugins pinned to a commit, and skills reinstalled on every pod start
  • Scheduled prompts: crons with interval or cron syntax, delivery targets such as Slack, Telegram, or Discord, per-job model pins, and monitor mode
  • Profiles: named Hermes profiles with their own config, skills, and crons sharing one multiplexed gateway
  • Sidecars: optional SearXNG for web search and Camofox Browser for browser automation
  • Security: generated ServiceAccount and Role with extra rules, cloud identity annotations, and a default-deny NetworkPolicy
  • Status reporting: init container failures surface as a condition naming the failing step and its log tail

02 / Discussion CREDIBILITY-GATED

Discussion

Reading is open to everyone. Posting and voting need a verified identity or a GitHub grade of B or higher.

  • No discussions yet.

04 / Build

Build with Hermes Agent Operator.

Browse the catalog for frameworks, tools, and harnesses, each scored on real GitHub credibility.

Get Hermes Agent Operator →

Browse the catalog