|
|
1 viikko sitten | |
|---|---|---|
| DOCS.md | 2 viikkoa sitten | |
| README.md | 2 viikkoa sitten | |
| __init__.py | 1 viikko sitten | |
| adapter.py | 2 viikkoa sitten | |
| after-install.md | 2 viikkoa sitten | |
| plugin.yaml | 2 viikkoa sitten | |
| test_adapter.py | 2 viikkoa sitten |
A Chatto platform adapter plugin for Hermes Agent. Connects your self-hosted Chatto server to Hermes so you can interact with the agent through chat rooms and DMs.
hermes plugins install jrimmer/hermes-chatto-plugin
Or with the full URL:
hermes plugins install https://github.com/jrimmer/hermes-chatto-plugin.git
Then add your Chatto credentials to ~/.hermes/.env:
CHATTO_URL=https://chat.example.com
CHATTO_LOGIN=max
CHATTO_PASSWORD=your-password
CHATTO_HOME_CHANNEL=REljMv5Pgolo6Y9
Enable the plugin (if not auto-enabled during install):
hermes plugins enable chatto-platform
Restart the gateway:
hermes gateway restart
| Variable | Required | Description |
|---|---|---|
CHATTO_URL |
Yes | Base URL of your Chatto server |
CHATTO_LOGIN |
Yes | Chatto username |
CHATTO_PASSWORD |
Yes | Chatto password |
CHATTO_HOME_CHANNEL |
No | Room ID for cron/notification delivery (defaults to first watched room) |
CHATTO_CHANNELS |
No | Comma-separated room IDs to watch (default: all joined rooms) |
CHATTO_REQUIRE_MENTION |
No | Only respond to @mentions in rooms (default: true). DMs always respond. |
CHATTO_AUTO_THREAD |
No | Auto-create threads for replies in rooms (default: true) |
CHATTO_FREE_RESPONSE_CHANNELS |
No | Comma-separated room IDs where bot responds without being tagged |
CHATTO_ALLOWED_USERS |
No | Comma-separated Chatto logins allowed to talk to the bot |
CHATTO_ALLOW_ALL_USERS |
No | Allow any Chatto user to talk to the bot (true/false) |
You can also configure via ~/.hermes/config.yaml instead of env vars:
gateway:
platforms:
chatto:
enabled: true
extra:
url: https://chat.example.com
require_mention: true
home_channel: REljMv5Pgolo6Y9
free_response_channels: []
GetThreadEvents for thread replies, auto-thread creation, proper threadRootEventId handlingrequire_mention (default true) with free_response_channels for no-tag roomsroom_created / user_joined_room events)message_posted, mention_notification, new_dm_notification, session_terminated (force reconnect), message_retracted, user_left_roomThe adapter connects to Chatto via two channels:
/api/realtime) — receives realtime events as binary protobuf frames/api/connect/) — sends messages, fetches room events, joins rooms, manages presenceWhen a message is received, the WebSocket frame is decoded, the message body is fetched via REST, dispatched to the Hermes agent, and the response is sent back via CreateMessage with proper threading.
Chatto v0.4.19. Protocol version 1 (binary protobuf over WebSocket).
MIT