Agents
Concept

Choose an Agent runtime

Compare Hermes and OpenClaw, confirm platform compatibility, and choose the runtime that matches your Agent’s operating and control requirements.

For
Agent operators, Organization administrators, platform administrators, and self-hosted operators
On this page
  1. Overview
  2. Short answer
  3. Runtime comparison
  4. Platform compatibility
  5. Choose Hermes
  6. Choose OpenClaw
  7. What both runtimes provide
  8. Operational differences
  9. Select a Runtime
  10. Changing Runtime
  11. Verify the Runtime
  12. Troubleshooting
  13. Next steps

An Agent Runtime is the execution environment that turns a versioned Template into a running AI teammate. It loads the Agent's instructions and Skills, connects to the selected communication platform, calls the configured model, and reports health and activity back to Agent Barn.

Agent Barn supports two Runtimes: Hermes and OpenClaw. Runtime and communication platform are separate fields, so selecting a Runtime does not select a platform, and choosing Slack does not require one specific Runtime.

Overview

The Runtime controls how the Agent executes its instructions and connects to external systems. When an Agent starts, Agent Barn:

  1. Loads the Agent and its pinned Template version.
  2. Renders the Template files with the Agent's identity.
  3. Loads the Agent's pinned Skills.
  4. Decrypts the required platform and integration credentials.
  5. Builds configuration for Hermes or OpenClaw.
  6. Creates or refreshes the Agent's Runtime resources.
  7. Connects the Runtime to the selected communication platform.
  8. Reports Conversations, Tool calls, Logs, and health back to Agent Barn.

Runtime configuration is regenerated every time the Agent starts.

The Runtime does not define the Agent's purpose. The Template defines its identity and behavior, and Skills add focused instructions and integrations. Template, model, Runtime, platform, and Skills remain separate choices.

Short answer

For most first Agents, choose Hermes on Slack.

Choice Recommendation
RuntimeHermes
PlatformSlack
ReasonThis is the current web wizard's recommended path, and it supports user-selectable command approval and Slack verbosity

If you have no Runtime-specific requirement, start with Hermes.

Runtime comparison

Capability Hermes OpenClaw
SlackSupportedSupported
Microsoft TeamsSupportedSupported
TelegramSupportedSupported
DiscordSupportedSupported
Web hire wizard recommendationRecommended and preselectedAvailable
User-selectable command approvalAuto, Manual, or OffManaged by OpenClaw
Slack Verbosity controlVerbose or ConciseNot exposed
Template and Skill loadingSupportedSupported
Provider integrationsSupportedSupported
Model through LiteLLMSupportedSupported
Conversation telemetrySupportedSupported
Tool-call telemetrySupportedSupported
Runtime health and LogsSupportedSupported
Explicit mention gatingSupportedSupported
Persistent memorySupportedSupported
Scheduled-session memory contractExplicitly supportedUses OpenClaw's Runtime behavior
Retry and circuit-breaker recoveryAgent Barn configures Hermes recovery behaviorUses OpenClaw channel and health behavior

Neither Runtime is inherently correct for every Agent. Let platform compatibility and the operating controls you need decide the selection.

Platform compatibility

Runtime Slack Microsoft Teams Telegram Discord
HermesSupportedSupportedSupportedSupported
OpenClawSupportedSupportedSupportedSupported

Current web-wizard availability

The current Hire agent wizard offers Slack, Telegram, and Discord.

Microsoft Teams is supported by both Runtimes and by the Agent API contract, but it is not currently offered as a platform choice in the web hire wizard. Provision a Teams Agent through the Agent API, and confirm that the deployment has a supported Teams provisioning path before committing to it.

Choose Hermes

Hermes is the recommended Agent Barn path, and the Runtime the hire wizard preselects.

Choose this when

  • This is your first Agent
  • The Agent will use Slack, Microsoft Teams, Telegram, or Discord
  • You want explicit command approval settings
  • You want Slack responses to be Verbose or Concise
  • You need a configured home channel for scheduled or proactive Slack or Telegram delivery
  • You want the documented Hermes platform-recovery behavior
  • You want scheduled runs to load persistent memory without inheriting an interactive chat session

Hermes command approval

Agent Barn exposes three command approval modes for Hermes:

Mode Behavior
AutoAutomatically approves low-risk commands
ManualRequests approval before commands are run
OffSkips command approval prompts

Use Manual for Agents working with sensitive systems or consequential tools. Use Auto for controlled workflows where low-risk commands should proceed without interrupting the user. Use Off only when the surrounding security controls make approval prompts unnecessary.

Hermes Slack verbosity

For a Hermes Slack Agent, choose:

Setting Behavior
VerboseAnnounces what the Agent is about to do at each step
ConciseShows final answers without step announcements

Verbose mode helps during evaluation and troubleshooting. Concise mode is usually more appropriate once the workflow is stable.

Slack Verbosity is not shown for Telegram, Discord, or OpenClaw.

Hermes scheduled work

Hermes scheduled runs use isolated sessions. They do not inherit the Slack thread or interactive session that originally created the schedule, but they do load the Agent's persistent memory and user-profile context.

For scheduled or proactive Slack and Telegram delivery, configure a home or alert destination channel. Without a destination, the Runtime can complete work with no appropriate place to deliver its result.

When a scheduled Hermes run has nothing to deliver, its final response must be exactly:

Silent response
[SILENT]

Ordinary prose such as "Nothing to report" is treated as a deliverable message.

Hermes platform recovery

Hermes retries eligible platform connection failures with bounded exponential backoff.

If repeated failures open its platform circuit breaker, the Runtime health probe becomes unhealthy and Kubernetes can restart the Agent pod. That gives recoverable platform configuration changes another chance to connect.

An intentionally paused Hermes platform remains live and is not restarted solely because it is paused.

Consider another Runtime when

  • The workflow depends on OpenClaw-specific behavior
  • Your existing Templates and operational testing target OpenClaw
  • Command approval must remain managed by OpenClaw

Choose OpenClaw

Choose OpenClaw when its platform support or Runtime behavior is a specific requirement.

Choose this when

  • Your deployment already operates OpenClaw Agents
  • Your Template was written and tested for OpenClaw behavior
  • You want OpenClaw's broader channel configuration architecture
  • You accept command approval being managed by OpenClaw

OpenClaw supports Slack, Microsoft Teams, Telegram, and Discord. The selected platform still requires its own credentials and routing configuration, whichever Runtime runs the Agent.

OpenClaw channel behavior

Agent Barn generates an OpenClaw configuration overlay for the selected platform. The overlay covers:

  • Model routing
  • Channel binding
  • Group and direct-message policy
  • Allowed platform identities or locations
  • Mention gating
  • Memory
  • Tool profile
  • Telemetry plugin
  • Runtime health configuration

For Slack, Agent Barn explicitly configures Socket Mode, channel and direct-message policies, explicit mention requirements, fresh mentions in threads, and streaming behavior. For Telegram and Discord, it generates the corresponding group, user, and channel restrictions. For Microsoft Teams, it generates the corresponding webhook channel integration.

OpenClaw command approval

Agent Barn displays OpenClaw command approval as:

OpenClaw command approval
Managed by OpenClaw

The Auto, Manual, and Off selector is not shown for OpenClaw Agents. Choose Hermes if selecting command approval behavior through Agent Barn is an operational requirement.

Consider another Runtime when

  • The Agent has no OpenClaw-specific requirement
  • You want Agent Barn's user-selectable command approval
  • You want Slack Verbose or Concise behavior
  • You want the documented Hermes scheduled-session and recovery behavior
  • You are following the recommended first-Agent path

What both runtimes provide

Hermes and OpenClaw share the same Agent Barn domain model. Both receive the same inputs and report the same signals.

  • The exact pinned Template version
  • The Agent's rendered identity and operating instructions
  • The configured model and per-Agent LiteLLM configuration
  • Exact pinned Skill versions
  • Provider integration context
  • Platform credentials and encrypted Agent secrets at startup
  • Per-start ingest credentials
  • Runtime behavior and mention policy

Both create or use managed Runtime resources for configuration, secrets, persistent storage, a network service, the Runtime deployment, and health reporting. Both report inbound and outbound Conversation messages, Tool-call state and results, Runtime Logs, and health status.

Secret values remain encrypted at rest and are omitted from Agent reads under either Runtime.

Mention gating

Both Runtimes require explicit mentions in shared channels and groups. On Slack, both require a fresh mention on every message, including replies inside an existing thread. Direct messages are exempt from shared-channel mention gating when direct messages are enabled.

Runtime selection must not be used to bypass communication boundaries.

Templates and Skills

A Template does not become compatible with every platform merely because both Runtimes can start it. Review the Template's identity, user instructions, tool references, platform language, required Skills, and required providers.

A Template that says it is embedded in Slack, or that references Slack-only tools, remains Slack-oriented under OpenClaw. A Slack-only Skill also remains Slack-only under either Runtime, and platform-specific credentials are required regardless of Runtime.

Operational differences

Concern Hermes OpenClaw
Runtime familyHermes Agent RuntimeOpenClaw Runtime
Generated Runtime configurationHermes configuration and Agent Barn pluginsOpenClaw configuration overlay and plugins
Command approvalConfigured by Agent BarnManaged by OpenClaw
Slack verbosityVerbose or ConciseNot exposed
Scheduled session contextIsolated session with persistent memory and user profileFollows OpenClaw Runtime behavior
Proactive destination guidanceHome-channel guidance for Slack and TelegramPlatform-specific OpenClaw routing
Platform recoveryBounded retry and circuit-breaker behaviorOpenClaw channel health behavior
HealthAgent Barn health serverAgent Barn health server
TelemetryAgent Barn telemetry pluginAgent Barn telemetry plugin
Runtime resourcesReconciled when the Agent startsReconciled when the Agent starts

These implementation differences should not leak into the Template unless the Agent's task genuinely depends on Runtime-specific behavior.

Select a Runtime in the web hire wizard

After selecting a Template, the hire wizard displays Choose your agent runtime with two options:

  • Hermes — recommended and preselected
  • OpenClaw — multi-channel routing with full platform support

Select the Runtime before selecting the communication platform.

Select a Runtime through the Agent API

The creation field is agent_type, and its supported values are:

Supported agent_type values
hermes
openclaw

Send the Runtime explicitly alongside the platform:

Agent creation request
{
  "agent_type": "hermes",
  "platform": "slack"
}

Runtime and platform compatibility is validated during Agent creation.

Changing Runtime

Runtime is a creation-time property. The Agent configuration page displays the Runtime as an operational fact, but Agent update provides no Runtime field. Platform is also not changed through Agent update.

To move an Agent to another Runtime or platform:

  1. Record the existing Agent's Template key and exact version.
  2. Record its model and assigned Skill versions.
  3. Record its platform access policy.
  4. Identify which credentials can safely be reused.
  5. Hire a replacement Agent with the required Runtime and platform.
  6. Assign the corresponding Template and Skills.
  7. Verify the replacement Agent in a controlled location.
  8. Move platform traffic to the replacement.
  9. Stop the original Agent.
  10. Delete the original only after its history and cost requirements are understood.

Changing a Template, model, Skill, or command approval mode does not change the Runtime, and changing the Runtime is not the same as changing the Template.

Verify the Runtime

After hiring the Agent, confirm:

  • The Agent detail page displays the intended Runtime badge
  • The selected platform is compatible with that Runtime
  • The Agent reaches Working
  • An allowed platform mention receives a response
  • An unmentioned shared message receives no response
  • Conversations and Tool calls appear under the correct Agent
  • Live Logs show the expected Runtime starting
  • No compatibility or platform-credential error is reported

For the complete procedure, see Verify your Agent.

Troubleshooting

Microsoft Teams does not appear in the web hire wizard

A current UI constraint, not a Runtime limit

Both Runtimes and the Agent API contract support Microsoft Teams, but the current hire wizard offers only Slack, Telegram, and Discord. Provision a Teams Agent through the Agent API.

Selecting a Runtime is not sufficient Teams configuration on its own. A Teams Agent also requires:

  • An application ID
  • An application password
  • A tenant ID
  • Teams bot and application registration
  • Webhook routing

The Agent was created with OpenClaw unexpectedly

The API defaults agent_type to OpenClaw

The Agent creation API defaults agent_type to OpenClaw when the field is omitted. The web hire wizard behaves differently and preselects Hermes.

Update the API client to send one of these values explicitly:

Hermes runtime
{ "agent_type": "hermes" }
OpenClaw runtime
{ "agent_type": "openclaw" }

An existing Agent's Runtime cannot be changed through update. Create a replacement Agent if the wrong Runtime was selected.

Command approval settings are missing

Exposed for Hermes only

Agent Barn exposes Auto, Manual, and Off command approval only for Hermes. For OpenClaw, the configuration page displays Managed by OpenClaw.

Create a Hermes Agent if Agent Barn-managed command approval is required.

Slack Verbosity is missing

Hermes Slack Agents only

Verbose and Concise response controls are available only for Hermes Slack Agents. They do not appear for OpenClaw, Telegram, Discord, or Microsoft Teams.

The selected Template behaves as though it uses another platform

Runtime selection does not rewrite Template content

Review the pinned Template files for:

  • Platform-specific identity language
  • Slack, Teams, Telegram, or Discord references
  • Platform-specific tools
  • Required Skills
  • Required providers

Choose or publish a platform-appropriate Template version, then repin the Agent.

A Skill is unavailable on the selected platform

Runtime and Skill compatibility are separate

A Skill that requires Slack cannot be assigned to a Telegram or Discord Agent merely because Hermes and OpenClaw both support those platforms.

Choose a compatible platform, or a different Skill.

A scheduled Hermes run lacks the original thread context

Scheduled runs use isolated sessions

Hermes scheduled runs use isolated sessions and do not inherit an earlier interactive Slack thread. They do load persistent memory and user-profile context.

Provide the necessary continuity explicitly when creating the scheduled work, and configure an appropriate home channel for delivery.

The Agent enters Needs attention after starting

Check compatibility, credentials, and capacity

Confirm that:

  • Runtime and platform are compatible
  • Platform credentials are valid
  • The configured model is available
  • Required Skill credentials are complete
  • Kubernetes can schedule the Runtime resources
  • The Runtime image can be pulled

Open the Agent's Logs tab and review the reported health reason.

I need to move an existing Agent to the other Runtime

Create a replacement Agent

Runtime is not editable through Agent update.

Create a replacement Agent with the intended Runtime, reproduce the required Template, model, Skills, credentials, and access settings, then verify it before stopping the original.

Next steps

After choosing a Runtime:

Documentation