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:
- Loads the Agent and its pinned Template version.
- Renders the Template files with the Agent's identity.
- Loads the Agent's pinned Skills.
- Decrypts the required platform and integration credentials.
- Builds configuration for Hermes or OpenClaw.
- Creates or refreshes the Agent's Runtime resources.
- Connects the Runtime to the selected communication platform.
- 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 |
|---|---|
| Runtime | Hermes |
| Platform | Slack |
| Reason | This 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 |
|---|---|---|
| Slack | Supported | Supported |
| Microsoft Teams | Supported | Supported |
| Telegram | Supported | Supported |
| Discord | Supported | Supported |
| Web hire wizard recommendation | Recommended and preselected | Available |
| User-selectable command approval | Auto, Manual, or Off | Managed by OpenClaw |
| Slack Verbosity control | Verbose or Concise | Not exposed |
| Template and Skill loading | Supported | Supported |
| Provider integrations | Supported | Supported |
| Model through LiteLLM | Supported | Supported |
| Conversation telemetry | Supported | Supported |
| Tool-call telemetry | Supported | Supported |
| Runtime health and Logs | Supported | Supported |
| Explicit mention gating | Supported | Supported |
| Persistent memory | Supported | Supported |
| Scheduled-session memory contract | Explicitly supported | Uses OpenClaw's Runtime behavior |
| Retry and circuit-breaker recovery | Agent Barn configures Hermes recovery behavior | Uses 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 |
|---|---|---|---|---|
| Hermes | Supported | Supported | Supported | Supported |
| OpenClaw | Supported | Supported | Supported | Supported |
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 |
|---|---|
| Auto | Automatically approves low-risk commands |
| Manual | Requests approval before commands are run |
| Off | Skips 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 |
|---|---|
| Verbose | Announces what the Agent is about to do at each step |
| Concise | Shows 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]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:
Managed by OpenClawThe 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 family | Hermes Agent Runtime | OpenClaw Runtime |
| Generated Runtime configuration | Hermes configuration and Agent Barn plugins | OpenClaw configuration overlay and plugins |
| Command approval | Configured by Agent Barn | Managed by OpenClaw |
| Slack verbosity | Verbose or Concise | Not exposed |
| Scheduled session context | Isolated session with persistent memory and user profile | Follows OpenClaw Runtime behavior |
| Proactive destination guidance | Home-channel guidance for Slack and Telegram | Platform-specific OpenClaw routing |
| Platform recovery | Bounded retry and circuit-breaker behavior | OpenClaw channel health behavior |
| Health | Agent Barn health server | Agent Barn health server |
| Telemetry | Agent Barn telemetry plugin | Agent Barn telemetry plugin |
| Runtime resources | Reconciled when the Agent starts | Reconciled 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:
hermes
openclawSend the Runtime explicitly alongside the platform:
{
"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:
- Record the existing Agent's Template key and exact version.
- Record its model and assigned Skill versions.
- Record its platform access policy.
- Identify which credentials can safely be reused.
- Hire a replacement Agent with the required Runtime and platform.
- Assign the corresponding Template and Skills.
- Verify the replacement Agent in a controlled location.
- Move platform traffic to the replacement.
- Stop the original Agent.
- 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:
{ "agent_type": "hermes" }{ "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: