OrchestriAI
Back to the field guide
AI systemsGuide13 min read

Hermes Agent for business: setup, tools, and production guardrails

How to turn Hermes Agent from a working local chat into a bounded business assistant with controlled tools, channels, memory, and schedules.

Want Hermes Agent running as a bounded business assistant?

Free. Three short fields, and we reply by email within one business day.

By Shariq Riaz

In this guide

How to turn Hermes Agent from a working local chat into a bounded business assistant with controlled tools, channels, memory, and schedules.

11 sections7 cited sources13 min read
On this page11 sections
  1. Related reading (desktop authority beside Hermes)
  2. What Hermes Agent is
  3. Pick the first workflow
  4. Understand the data path
  5. Set up Hermes in layers
  6. Browser workspace and the shared gateway
  7. Memory is useful, but it changes the risk
  8. Security controls and their limits
  9. Operate the workflow, not just the service
  10. Where Hermes Agent fits
  11. Independence and limitations

Hermes Agent gives you a flexible agent runtime rather than a finished business workflow. It can connect to model providers, run tools, load reusable skills, use MCP servers, remember selected context, schedule work, and operate through messaging platforms. The business value comes from how you constrain those pieces around one job.

The safest path is to get a plain local conversation working, then add one layer at a time: provider, tool policy, gateway, channel authorization, integration, schedule, and monitoring. That sequence follows the official Hermes quickstart, which explicitly recommends stabilizing normal chat before adding gateway, cron, skills, voice, or routing.

This guide is based on official Nous Research documentation available on September 16, 2026, updated on November 7, 2026 for the browser workspace and shared gateway in the v0.23.0 release notes. Check the current Hermes Agent docs before installation because the project and its supported surfaces change frequently.

Hermes ships Cua Driver as `computer_use`; see Cua Driver background computer use over MCP for permission modes and window targeting. For alternatives, compare Claude Code computer-use MCP (coding-session Mac control) and Simular Sai fleet computer-use (vendor-operated GUI fleet vs self-hosted Hermes).

What Hermes Agent is

Hermes Agent is an open-source agent created by Nous Research. It can run through a terminal interface, an always-on messaging Gateway, an API server, or supported editor integrations. Its tools cover areas such as web access, files, terminal work, browser automation, memory, scheduled tasks, and delegation. Toolsets let an operator expose different groups of tools for different deployment surfaces. The project is available under the MIT license.

Hermes is model-flexible. The official provider catalog has expanded substantially; use `hermes model` and the providers documentation for the current list rather than treating any article as exhaustive. Common starting points include Nous Portal (OAuth plus optional Tool Gateway) and custom OpenAI-compatible endpoints for self-hosted or third-party APIs. Some tools can use your own provider credentials; Nous also offers a paid Tool Gateway for managed web, browser, media, and voice services. Those are different data and billing paths, so record which one each capability uses. Models need at least 64K tokens of context; smaller windows are rejected at startup.

The project's security guide describes Hermes as a single-tenant personal agent with one trust boundary. That matters even if you deploy it for a company. A business can run Hermes for an operator or a trusted team boundary, but it should not assume one process safely isolates mutually hostile users. Separate business units, clients, or trust zones should use separate profiles at minimum and, where isolation matters, separate processes, credentials, OS users, or hosts.

Pick the first workflow

Do not begin with "give Hermes access to our tools." Begin with a bounded outcome such as: "At 8:30 each workday, read the approved project feed, prepare a five-item delivery-risk brief, and send it only to the operations channel."

The pilot should specify:

  • the input sources and exact accounts
  • whether each integration is read-only or writable
  • the people allowed to request work
  • the destination for results
  • the schedule and timezone
  • the actions that always need approval
  • the stop condition when data is missing or contradictory

A summarization or review workflow is easier to validate than autonomous outbound communication. If every step is predictable and the model does not need to interpret variable input, use workflow automation for the deterministic path and reserve Hermes for judgment-heavy steps.

We'll set up its tools, channels, memory and schedules with limits on each, starting from your working local install.

Understand the data path

In a normal Hermes deployment, a request enters through the CLI, dashboard, API, editor, or messaging Gateway. Hermes builds context from the conversation and configured files or memory, sends relevant material to the selected inference provider, and may invoke local tools, remote services, browser providers, or MCP servers. The response returns through the originating interface or an explicitly configured delivery route.

Running Hermes on your own server does not mean every byte stays there. A hosted model receives prompts and selected context. Connected messaging platforms handle messages. Search, browser, speech, image, MCP, and other providers may receive task data. Local terminal execution can touch whatever the Hermes OS account can access unless you place it behind a stronger boundary.

Document each hop before launch. Include the provider, data categories, credentials, storage location, retention settings, region, deletion method, and business owner. If the workflow handles regulated or contract-restricted information, confirm the terms for every provider involved. The MIT license describes software rights and warranty limits; it is not a security certification or compliance approval.

Set up Hermes in layers

  1. 1Choose the runtime boundary. Use a dedicated non-root account on an isolated host for an always-on business agent. Hermes supports seven terminal backends: `local`, `docker`, `ssh`, `daytona`, `singularity`, `modal`, and `vercel_sandbox`. The security guide recommends a container backend for production Gateways and says never to run the Gateway as root. Docker ships with hardened flags; dangerous-command checks are skipped inside container backends because the container is the security boundary. Optional `hermes egress setup` can run a credential-injection proxy so Docker sandboxes never see raw API keys.
  2. 2Install from the official project. On macOS and Windows, the Desktop installer from hermes-agent.nousresearch.com is the recommended path; in v0.23.0 Desktop requires macOS 13 or later or 64-bit Windows. CLI install remains `curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash` on Linux, macOS, WSL2, and Termux, and the PowerShell `install.ps1` path for native Windows. Record the version and preserve a tested rollback path. Review installer scripts before executing them in a controlled environment.
  3. 3Run setup with the smallest useful surface. `hermes setup` offers Quick Setup (Nous Portal via `hermes setup --portal`: OAuth plus Tool Gateway), Full Setup, and Blank Slate. Blank Slate keeps only provider/model plus File Operations and Terminal toolsets, and writes explicit `platform_toolsets.cli` plus `agent.disabled_toolsets` so `hermes update` cannot silently re-enable tools you did not choose. Prefer Blank Slate or an equivalent minimal surface for business pilots. Secrets go in `~/.hermes/.env`; non-secret settings go in `~/.hermes/config.yaml`. `hermes config set` routes values to the correct file; `hermes model` selects the provider.
  4. 4Verify a basic conversation before anything else. Start with `hermes` or `hermes --tui` (the TUI is recommended). Confirm resume with `hermes --continue` / `-c`. Use `hermes doctor` when diagnosis is needed. Do not add gateway, cron, skills, or MCP until a clean chat works.
  5. 5Create a separate profile for the business use case. Keep its identity, context files, skills, memory, credentials, and working directory scoped to that role. Do not reuse a personal profile that already contains unrelated history or broad access.
  6. 6Select toolsets explicitly. Hermes organizes tools into configurable toolsets. Start with the smallest read-only group that can complete the pilot. Do not enable terminal, browser, file writes, delegation, or scheduled tasks just because they are available.
  7. 7Configure execution isolation. The local backend runs commands as the host user. Docker, Singularity, Modal, Daytona, and Vercel Sandbox provide stronger boundaries; SSH moves execution to another host. Set resource limits, a restricted working directory, and an explicit environment-variable allowlist. Remember that an in-process tool or plugin may sit outside a terminal-only sandbox.
  8. 8Add the messaging Gateway. Run `hermes gateway setup` only after local chat works. Supported platforms include Telegram, Discord, Slack, WhatsApp, Signal, Email, Home Assistant, Microsoft Teams, Matrix, Mattermost, SMS, DingTalk, Feishu, WeCom, Weixin, QQ Bot, Yuanbao, BlueBubbles, Google Chat, and more (docs cite 20+). Connect one platform first, use pairing or explicit user allowlists, and confirm default-deny behavior with an unauthorized account. Avoid `GATEWAY_ALLOW_ALL_USERS` in production.
  9. 9Add one integration. Prefer a provider-side read-only token. If an external tool already has an MCP server, start with one safe server and a `tools.include` whitelist. Use `hermes mcp add` / `hermes mcp test`, and `/reload-mcp` after changes. The official MCP guide recommends the smallest useful surface.
  10. 10Add the skill or procedure. Skills Hub supports `hermes skills browse`, `search`, and `install` (install runs a security scan). Bundled skills already ship with the install. Write a short, testable procedure with inputs, allowed actions, approval points, and failure behavior. Treat hub-installed, bundled, and agent-created skills as mutable operational code and review changes before production use. Named Bot Mode exists for later multi-bot expansion; leave it out of day-one pilots.
  11. 11Schedule last. Hermes scheduled tasks run in fresh agent sessions, so prompts need enough context to stand alone or must attach the right skills. Manage jobs with `hermes cron` or `/cron`. The scheduler can preflight-validate config before spending tokens; `no_agent` script-only jobs skip the LLM entirely when a deterministic script is enough; `hermes cron doctor` checks fleet health. Start with a manual run, then a disabled schedule, then report-only delivery. Keep `cron_mode` / dangerous unattended handling on deny unless you have a tightly isolated reason to change it.

Browser workspace and the shared gateway

Hermes v0.23.0, released November 5, 2026, changes what a business deployment exposes. Each machine now runs one gateway that owns every session. The CLI, TUI, Desktop, editor integrations, messaging bots and scheduled jobs attach to that gateway as clients, so a chat you open in one place is the same chat, with one queue and one history. That continuity is useful, but every surface attached to a gateway shares its tools, approval settings and memory. Set those controls once on the gateway, and review them before you connect a second surface.

The Webapp serves the full Desktop workspace from the gateway in a browser tab. It is off by default. Turn it on with `webapp.enabled: true` or with Web Access in Desktop Settings. You can reach it on your own network, or publish it behind a public URL with sign-in. The Webapp is single-user: a signed-in tab acts as the owner, with the same chats, Group Chats and settings. Keep the Webapp off until someone needs it. Before you enable it, decide who may reach the address, put sign-in in front of any public URL, and confirm that the gateway's approval mode and toolsets are the ones you intend. A shared gateway is still one trust boundary. Clients or business units that must stay apart need separate profiles or processes, as described earlier.

Memory is useful, but it changes the risk

Hermes can persist curated information across sessions and can load project context files. That helps an agent retain preferences, procedures, and project facts, but memory should not become an unreviewed copy of customer records or credentials.

Define what the profile may remember. Good candidates include stable operating preferences, approved terminology, system names, escalation rules, and links to authoritative sources. Bad candidates include secrets, raw sensitive records, temporary authorization codes, and facts that should always come from a live source.

Give memory an owner and review cadence. A remembered instruction can become stale even if it was correct when written. For important decisions, the agent should retrieve current data from the source system rather than relying on memory. Keep durable business procedures in version-controlled skills or documentation where changes can be reviewed.

Security controls and their limits

Hermes provides Gateway authorization, dangerous-command approvals, file-write guards, container backends, credential filtering for lower-trust subprocesses, and other defense-in-depth controls. Those controls are useful, but the official security documentation is careful about their boundaries.

Approvals are configured with `approvals.mode` (`smart`, `manual`, or `off`). `cron_mode`, `single_query_mode`, and `unattended_mode` default to deny for dangerous commands when no human is present to answer. A hardline blocklist sits below YOLO and `mode: off` as an always-on floor for catastrophic patterns. Operators can add `approvals.deny` globs and mine history with `hermes approvals suggest`. For business deployments, keep unattended and cron paths on deny, and do not treat YOLO or `approvals.mode: off` as a default.

Protected paths and optional `HERMES_WRITE_SAFE_ROOT` constrain Hermes file-writing tools; they remain defense-in-depth only because the terminal tool can still bypass them when it has host access. MCP environment filtering still strips secrets from subprocesses except for explicitly required env vars and safe system variables.

The write-safe-root and protected-path checks do not turn the host into a security sandbox. A terminal process running as the same OS user may still access host resources. Dangerous-command detection reduces accidental harm but should not be the only boundary for a compromised or manipulated agent. For untrusted web, email, channel, or MCP input, use whole-process or host-level isolation in addition to in-process checks.

Before launch, verify:

  • only approved users can send direct messages or invoke the bot
  • separate conversations cannot retrieve each other's private session state
  • platform toolsets exclude unnecessary write and admin capabilities
  • scheduled tasks cannot bypass approval policy unexpectedly
  • MCP subprocesses receive only explicitly required environment variables
  • the terminal working directory and backend match the intended boundary
  • plugins and skills have been reviewed as trusted code
  • secrets are absent from memory, prompts, logs, exports, and chat output
  • the Webapp is off, or reachable only on a network you control or behind sign-in, and each signed-in browser belongs to an authorized person
  • backups restore the correct profile without importing unrelated credentials

Prompt injection can arrive through a webpage, email, file, message, MCP response, or tool result. An allowlisted user can still ask Hermes to process hostile content. The practical defense is to reduce tool authority, separate read and write credentials, require approval for consequential changes, and prevent untrusted content from reaching a broadly privileged process.

Operate the workflow, not just the service

Monitor the Gateway and the business result. Track failed provider calls, tool errors, unauthorized access attempts, schedule history, delivery failures, and unusual spend. Also sample the actual output for correctness. A green service check cannot tell you that the agent summarized the wrong project or used stale memory.

Maintain a small runbook covering the host, profile, provider routes, enabled toolsets, connected channels, approved users, MCP servers, schedules, credential owners, update process, backup, and emergency shutdown. Test credential rotation and restoration before an incident. Include `hermes doctor` and `hermes cron doctor` in routine checks once those surfaces are in use.

Hermes updates can change providers, tools, skills, or Gateway behavior. Blank Slate's explicit disabled-toolset writes help against silent re-enablement, but still test updates against the pilot in a staging profile, re-run authorization checks, and review the release notes. Budget for this ongoing work; our automation maintenance guide covers the operational costs that continue after the first deployment.

Where Hermes Agent fits

Hermes is a strong candidate when you want provider choice, a capable CLI-oriented agent, explicit toolsets, reusable skills, persistent context, MCP integration, and multiple ways to run tasks. It can suit an operator who wants one controlled agent to work across technical and business systems.

It is a weaker fit when you need a turnkey SaaS product, strict hostile multi-tenant isolation inside one instance, deterministic behavior for every step, or a compliance conclusion based solely on self-hosting. Use purpose-built software for high-assurance transaction paths, with Hermes restricted to drafting, analysis, or approved tool calls around them.

For custom deployment work, the architecture usually crosses AI agent systems, systems integration, and sometimes MCP server development. If you are also considering OpenClaw, the OpenClaw versus Hermes Agent comparison separates the decision by operating model rather than feature count. Day-to-day ownership of a Hermes deployment is covered under Hermes Agent setup.

Independence and limitations

OrchestriAI is an independent implementation provider. It is not affiliated with, endorsed by, or sponsored by Nous Research or the Hermes Agent project. Hermes, Nous Research, and related names are used only to identify the software and services discussed. Features, commands, provider support, pricing, and security guidance may change after publication; verify current behavior in the official documentation and repository.

For a self-hosted team chat agent, see our Buzz self-hosting guide.

Update, October 2026: for a three-way view, see OpenClaw vs Hermes Agent vs Buzz. Our Buzz setup package costs the same as Hermes Agent setup, at $3,000 plus $400 a month.

Free. Three fields. We reply within one business day.

Want Hermes Agent running as a bounded business assistant?

We'll set up its tools, channels, memory and schedules with limits on each, starting from your working local install.

You'll talk to Shariq. Replies come from shariq@orchestriai.com. Leave out passwords and patient records.

What happens next

  1. 1.You send one line about the task.
  2. 2.Shariq reads every message and replies by email within one business day.
  3. 3.If it fits, you get a written plan or a short call. Your choice.
  4. 4.If it does not fit, we tell you and point you to a better option.
“Shariq built our Open Dental to GoHighLevel sync and our AI routing system for new patient inquiries. Both projects were delivered fast, worked right away, and he was responsive whenever we needed adjustments. He understands dental practice workflows and doesn't overcomplicate things.”
Michael Ling, Owner, Smile Again Dental

References used in this article

7 links
Shariq Riaz, founder of OrchestriAI

Written by

Shariq Riaz

Founder, OrchestriAI · CPHIMS · PMP · CBAP

11 years in enterprise IT at Fortune 500 companies. He founded OrchestriAI, an AI automation agency that builds and runs automations and AI agents for healthcare, real estate, financial services, and freight forwarding teams.

Free automation checklist

Free automation checklist for your industry

A one-page checklist of the manual work clinics, real estate teams, financial firms and freight forwarders most often automate. Pick your industry and tick what is still done by hand.

Or read it now, no email needed: Healthcare & dental automation checklist.

Your email comes only to us. No spam, and we never sell it. See the Privacy Policy.

Want this built for you? Hermes Agent Setup: Scoped after discovery

We install, secure, and customize Hermes Agent on infrastructure you control or an isolated OrchestriAI-managed server. That includes the model provider, messaging channels, skills, MCP integrations, scheduled workflows, testing, and documentation needed to turn a fresh install into a working system.

Not sure it fits yet? Send us one manual task and we'll email back one specific way to automate it, free.

Keep reading