If the Hermes Agent keeps prompting Cannot reach signal-cli, or if Signal is connected and then repeatedly disconnects, don't doubt the Hermes main program. The official Signal documentation provides three things to check the core: whether the signal-cli daemon is really running, whether Java 17+ is installed, and whether the HTTP address pointed to by Hermes is 127.0.0.1:8080.
Check step by step
- Run
signal-cli --account +你的号码 daemon --http 127.0.0.1:8080on the host first. - Run the
curl http://127.0.0.1:8080/api/v1/checkagain to see if you can return the version information. - Confirm that this is the address written by
SIGNAL_HTTP_URL. - If it breaks frequently, look back at the signal-cli logs and confirm that you have Java 17 or higher in your system.
- If the same number is listened to by multiple signal-cli instances, it may also cause duplicate messages or status jumps.
Why is this question easy to take a long detour?
Because the interface looks like the Hermes gateway is disconnected, in fact, many times Hermes can't connect to the signal-cli daemon it depends on. In other words, Hermes is only downstream, and the real first thing to live is signal-cli.
In a word: Let the signal-cli HTTP daemon of 8080 be stable and accessible, and then talk about the higher-level message processing of Hermes Agent.
Official open source address: https://github.com/NousResearch/hermes-agent; Official document entry: https://hermes-agent.nousresearch.com/.