|
@@ -2,7 +2,7 @@
|
|
|
|
|
|
|
|
A [Chatto](https://github.com/chattocorp/chatto) platform adapter plugin for [Hermes Agent](https://github.com/NousResearch/hermes-agent). Connects your self-hosted Chatto server to Hermes so you can interact with the agent through chat rooms and DMs.
|
|
A [Chatto](https://github.com/chattocorp/chatto) platform adapter plugin for [Hermes Agent](https://github.com/NousResearch/hermes-agent). Connects your self-hosted Chatto server to Hermes so you can interact with the agent through chat rooms and DMs.
|
|
|
|
|
|
|
|
-All API interaction goes through [chattolib](https://github.com/chattocorp/chattolib): a persistent WebSocket realtime connection delivers inbound events, ConnectRPC over HTTP handles outbound messages, reactions, uploads and more. Messages are processed through the full Hermes Agent pipeline (tool use, memory, reasoning) and answered in real time.
|
|
|
|
|
|
|
+All API interaction goes through [chattolib](https://pypi.org/project/chattolib/): a persistent WebSocket realtime connection delivers inbound events, ConnectRPC over HTTP handles outbound messages, reactions, uploads and more. Messages are processed through the full Hermes Agent pipeline (tool use, memory, reasoning) and answered in real time.
|
|
|
|
|
|
|
|
Tested against Chatto v0.4.20 with the vendored `chattolib[realtime]` 0.4.20.post1 (realtime protocol v1). Chatto servers older than v0.4.20 are not supported.
|
|
Tested against Chatto v0.4.20 with the vendored `chattolib[realtime]` 0.4.20.post1 (realtime protocol v1). Chatto servers older than v0.4.20 are not supported.
|
|
|
|
|
|
|
@@ -440,6 +440,12 @@ grep -i "chatto\|websocket\|realtime" ~/.hermes/logs/gateway.log | tail -30
|
|
|
- **Minimal dependencies**: Only requires `chattolib[realtime]>=0.4.20.post1`, which is vendored — nothing to install.
|
|
- **Minimal dependencies**: Only requires `chattolib[realtime]>=0.4.20.post1`, which is vendored — nothing to install.
|
|
|
- **No message backfill**: Events missed while the gateway is down are gone — Chatto keeps no replay for the bot. Redelivered events after a reconnect are recognised and processed only once; anything genuinely new starts from the moment of reconnection.
|
|
- **No message backfill**: Events missed while the gateway is down are gone — Chatto keeps no replay for the bot. Redelivered events after a reconnect are recognised and processed only once; anything genuinely new starts from the moment of reconnection.
|
|
|
|
|
|
|
|
|
|
+## Acknowledgements
|
|
|
|
|
+
|
|
|
|
|
+- This project began as a fork of [jrimmer/hermes-chatto-plugin](https://github.com/jrimmer/hermes-chatto-plugin/), whose groundwork this plugin still builds on — a regular stop when looking for features worth adopting.
|
|
|
|
|
+- All Chatto API interaction rides on [chattolib](https://pypi.org/project/chattolib/) by Felix — vendored under `vendor/`.
|
|
|
|
|
+- Our adapter implementation also took inspiration from [TheCodemancerLtd's Chatto platform adapter](https://github.com/TheCodemancerLtd/hermes-agent/blob/feat/chatto-integration/plugins/platforms/chatto/adapter.py) — the same Felix behind chattolib.
|
|
|
|
|
+
|
|
|
## License
|
|
## License
|
|
|
|
|
|
|
|
MIT
|
|
MIT
|