🤖HermesBlog
Hermes Messaging Platforms · Partie 68/9/2026

Signal — Un chat qui place la confidentialité au premier plan

Signal — Privacy-First Chat — easy-to-understand guide based on official docs

messaging-signal

Signal — Un chat qui place la confidentialité au premier plan

Signal est depuis longtemps la référence absolue pour la messagerie soucieuse de la vie privée. Chiffrement de bout en bout par défaut, protocole open-source et collecte minimale de métadonnées — c’est le messager auquel vous confieriez vos secrets les plus profonds. Désormais, avec Hermes Agent, vous pouvez transformer ce canal sécurisé en un puissant assistant IA.

Ce guide vous accompagne pas à pas dans la connexion d’Hermes à Signal. Aucun doctorat en cryptographie requis.

Ce dont vous aurez besoin

Avant de plonger, rassemblez ces trois éléments :

  • signal-cli — un client Signal basé sur Java qui sert de pont
  • Java 17+ — nécessaire pour faire tourner signal-cli
  • Un numéro de téléphone avec Signal installé (pour le lier en tant qu’appareil secondaire)

La bonne nouvelle ? Pas besoin d’installer de nouveaux paquets Python. Hermes utilise sa bibliothèque httpx existante pour communiquer avec signal-cli. Un souci de moins à se faire.

Installation de signal-cli

Si vous êtes sur macOS, c’est une seule ligne :

brew install signal-cli

Les utilisateurs Linux, récupérez la dernière version directement depuis GitHub :

VERSION=$(curl -Ls -o /dev/null -w %{url_effective} \
  https://github.com/AsamK/signal-cli/releases/latest | sed 's/^.*\/v//')
curl -L -O "https://github.com/AsamK/signal-cli/releases/download/v${VERSION}/signal-cli-${VERSION}.tar.gz"
sudo tar xf "signal-cli-${VERSION}.tar.gz" -C /opt
sudo ln -sf "/opt/signal-cli-${VERSION}/bin/signal-cli" /usr/local/bin/

Attention : signal-cli n’est pas dans les dépôts apt ou snap. La commande ci-dessus télécharge directement depuis les releases GitHub — c’est la méthode officielle.

Étape 1 : Liez votre compte Signal

Signal-cli fonctionne comme un appareil lié — pensez à WhatsApp Web, mais pour Signal. Votre téléphone reste l’appareil principal.

Générez une URI de liaison :

signal-cli link -n "HermesAgent"

Puis sur votre téléphone :

  1. Ouvrez Signal
  2. Allez dans Paramètres → Appareils liés
  3. Touchez Lier un nouvel appareil
  4. Scannez le QR code ou saisissez l’URI

Étape 2 : Lancez le démon signal-cli

Nous devons maintenant exécuter signal-cli comme démon en arrière-plan avec lequel Hermes peut communiquer :

signal-cli --account +1234567890 daemon --http 127.0.0.1:8080

Remplacez +1234567890 par votre véritable numéro Signal au format E.164. Laissez-le tourner — utilisez systemd, tmux ou screen pour le gérer.

Vérifiez qu’il est bien actif :

curl http://127.0.0.1:8080/api/v1/check

Vous devriez voir une réponse JSON avec la version de signal-cli.

Étape 3 : Configurez Hermes

Le chemin le plus simple est l’assistant interactif :

hermes gateway setup

Sélectionnez Signal dans le menu. L’assistant vérifiera la présence de signal-cli, demandera l’URL HTTP (par défaut http://127.0.0.1:8080), testera la connectivité et configurera votre compte ainsi que les règles d’accès.

Vous préférez une configuration manuelle ? Ajoutez ceci à ~/.hermes/.env :

# Requis
SIGNAL_HTTP_URL=http://127.0.0.1:8080
SIGNAL_ACCOUNT=+1234567890

# Sécurité (recommandé)
SIGNAL_ALLOWED_USERS=+1234567890,+0987654321

# Optionnel
SIGNAL_GROUP_ALLOWED_USERS=groupId1,groupId2
SIGNAL_HOME_CHANNEL=+1234567890

Puis démarrez la passerelle :

hermes gateway              # Premier plan
hermes gateway install      # Installation en tant que service utilisateur

Qui peut discuter avec votre bot ?

Les messages directs suivent le modèle standard d’Hermes :

  • Liste d’autorisation définie → seuls les utilisateurs listés peuvent envoyer des messages
  • Pas de liste d’autorisation → les utilisateurs inconnus reçoivent un code d’appairage (approuvez via hermes pairing approve signal CODE)
  • SIGNAL_ALLOW_ALL_USERS=true → n’importe qui peut envoyer des messages (à utiliser avec prudence !)

Les discussions de groupe sont contrôlées par SIGNAL_GROUP_ALLOWED_USERS :

Réglage Comportement
Non défini Le bot ignore tous les messages de groupe
ID de groupes listés Seuls ces groupes sont surveillés
* Le bot répond dans n’importe quel groupe

Que peut faire le bot ?

Les pièces jointes fonctionnent dans les deux sens. Les utilisateurs peuvent envoyer des images (PNG, JPEG, GIF, WebP), de l’audio (MP3, OGG, WAV, M4A — les messages vocaux sont transcrits si Whisper est configuré) et des documents (PDF, ZIP, etc.).

L’agent peut renvoyer des médias en utilisant les balises MEDIA: — images, notes vocales, vidéos et documents. La limite de 100 Mo s’applique dans les deux sens.

Une mise en garde : Signal limite le débit des téléversements de pièces jointes. L’adaptateur gère cela en regroupant les images par lots de 32 et en limitant le débit des téléversements pour rester dans la politique du serveur.

La mise en forme native est une grande amélioration. Quand Hermes envoie **gras** ou `code`, il les convertit en bodyRanges natifs de Signal — les destinataires voient donc un vrai style, pas des caractères markdown littéraux. Fini les astérisques disgracieux qui encombrent vos conversations.

Les citations en réponse fonctionnent aussi. Quand Hermes répond à un message spécifique, il publie une réponse native qui cite l’original — exactement comme lorsque vous appuyez sur « Répondre » dans Signal vous-même.

Pourquoi Signal + Hermes ?

La conception de Signal axée sur la confidentialité en fait l’outil idéal pour les flux de travail sensibles à la sécurité. Que vous automatisiez des opérations sensibles, que vous construisiez un assistant personnel ou que vous souhaitiez simplement que vos conversations IA soient chiffrées, cette intégration répond à vos besoins.

La configuration prend environ cinq minutes. Le résultat ? Un assistant IA privé et chiffré dans votre poche — littéralement.

Prêt à offrir un foyer sécurisé à votre agent ? Lancez cette passerelle et commencez à discuter.

📖 Documentation officielle

Cet article est basé sur la documentation officielle de Hermes Agent :Docs officiels › user-guide/messaging/signal