Hermes Atlas
Messaging bridges & gateways

Hermes Rocket.Chat Plugin

HalfbitStudio/hermes-plugin-rocketchat

Rocket.Chat platform plugin that connects Hermes Agent to a self-hosted Rocket.Chat workspace

In short

Hermes Rocket.Chat Plugin is a standalone gateway plugin that connects Hermes Agent to a self-hosted Rocket.Chat workspace, sending through the REST API and receiving over the Realtime WebSocket.

What Hermes Rocket.Chat Plugin does

The plugin uses Rocket.Chat REST API v1 for everything the bot sends and the Realtime (DDP) WebSocket for everything it receives. It ships as a standalone plugin with no changes to Hermes core and no extra Python dependencies, because aiohttp is already part of Hermes. The README shows the bot reading a thread with rocketchat_get_thread and posting a summary to another channel with rocketchat_post.

Setup means creating a bot user with the user and bot roles, generating a Personal Access Token as that user, and entering the values through hermes gateway setup or in ~/.hermes/.env as ROCKETCHAT_URL, ROCKETCHAT_TOKEN, ROCKETCHAT_USER_ID and ROCKETCHAT_ALLOWED_USERS. The bot answers direct messages freely, but in channels and private groups it replies only when mentioned, unless the room is listed in ROCKETCHAT_FREE_RESPONSE_CHANNELS or ROCKETCHAT_REQUIRE_MENTION is false. With ROCKETCHAT_REPLY_MODE set to thread, only the first message of a conversation needs the mention. Voice messages can be transcribed when ffmpeg is on the gateway host.

Key features

  • REST API v1 for sending and the Realtime (DDP) WebSocket for receiving
  • No Hermes core changes and no extra Python dependencies
  • Mention-gated replies in channels, with direct messages answered freely
  • Thread reply mode through ROCKETCHAT_REPLY_MODE
  • Voice message transcription when ffmpeg is installed on the gateway host
  • Setup through hermes gateway setup or ~/.hermes/.env

When to use it

  • Letting a team message a Hermes agent inside their self-hosted Rocket.Chat
  • Asking the bot to summarize a thread and post the result to another channel
  • Restricting which Rocket.Chat users can talk to the agent with an allow-list

Who it is for: Teams that run self-hosted Rocket.Chat and want to chat with a Hermes agent there.

How it fits with Hermes Agent

A Hermes gateway platform plugin, enabled as rocketchat-platform and installed with the hermes plugins install command.

How to install Hermes Rocket.Chat Plugin

These commands are copied from the project's README. Check the repository for the latest steps before you run them.

hermes plugins install HalfbitStudio/hermes-plugin-rocketchat
hermes plugins enable rocketchat-platform
hermes gateway restart

Requirements: Hermes Agent 0.21 or newer, Python 3.11+, a Rocket.Chat 6.x, 7.x or 8.x workspace, and ffmpeg on the gateway host if voice messages should be transcribed

Note: After updating to plugin version 1.5.0, Hermes may disable it, and the README says to update to 1.5.1 or newer and re-enable the plugin.

FAQ

What is Hermes Rocket.Chat Plugin?

Hermes Rocket.Chat Plugin is a gateway plugin that connects Hermes Agent to a self-hosted Rocket.Chat workspace. It sends through the REST API and receives through the Realtime WebSocket.

How do I install Hermes Rocket.Chat Plugin?

Run hermes plugins install HalfbitStudio/hermes-plugin-rocketchat, then hermes plugins enable rocketchat-platform and hermes gateway restart. The installer clones the repository into ~/.hermes/plugins/rocketchat-platform/.

What do I need to run Hermes Rocket.Chat Plugin?

You need Hermes Agent 0.21 or newer, Python 3.11+, and a Rocket.Chat 6.x, 7.x or 8.x workspace with a bot user and Personal Access Token. ffmpeg is needed on the gateway host only for voice transcription.

Similar messaging for Hermes Agent

All messaging

Related guides: How to run Hermes Agent securely · Run multiple Hermes agents with profiles