Canal iMessage (Legacy) OpenClaw
Connectez OpenClaw à Apple iMessage à l'aide de l'outil CLI imsg sur macOS. Cette intégration héritée utilise une interface JSON-RPC over stdio pour lire et envoyer des iMessages via la base de données native Messages de macOS. Remarque : ce canal est obsolète — pour les nouvelles installations, nous recommandons fortement d'utiliser BlueBubbles, qui offre une intégration REST API plus robuste avec un support de fonctionnalités plus large.
iMessage (Legacy) Fonctionnalités prises en charge
Messages texte
Pris en charge
Médias et fichiers
Pris en charge
Réactions
Non pris en charge
Fils de discussion
Non pris en charge
Messages vocaux
Non pris en charge
Discussion de groupe
Non pris en charge
iMessage (Legacy) Prérequis
- Un Mac sous macOS avec Messages connecté à un Apple ID
- L'autorisation d'accès complet au disque accordée à OpenClaw et au binaire imsg
- L'autorisation d'automatisation pour l'envoi de messages (accordée via les invites TCC de macOS)
- Le CLI imsg installé via Homebrew : brew install steipete/tap/imsg
- OpenClaw Gateway installé et en cours d'exécution
iMessage (Legacy) Configuration rapide
Installer le CLI imsg
Exécutez 'brew install steipete/tap/imsg' pour installer l'outil CLI iMessage. Après l'installation, exécutez 'imsg' une fois dans un terminal GUI pour déclencher les invites de permissions macOS (accès complet au disque et automatisation).
Accorder les permissions macOS
Ouvrez Réglages système > Confidentialité et sécurité. Accordez l'accès complet au disque au binaire imsg et au processus OpenClaw. L'autorisation d'automatisation pour Messages sera demandée automatiquement lors de la première tentative d'envoi par imsg.
Configurer et démarrer
Ajoutez la configuration du canal iMessage dans ~/.openclaw/openclaw.json avec les paramètres cliPath et dbPath. Démarrez le Gateway avec 'openclaw start' et envoyez un iMessage de test pour vérifier la connexion.
iMessage (Legacy) Exemple de configuration
{
"channels": {
"imessage": {
"enabled": true,
"cliPath": "/opt/homebrew/bin/imsg",
"dbPath": "/Users/<username>/Library/Messages/chat.db"
}
}
}iMessage (Legacy) Documentation Détaillée
Avis de dépréciation
Aperçu de l'architecture
Politiques de messages directs
{
"channels": {
"imessage": {
"dmPolicy": "pairing",
"allowFrom": ["+1234567890", "user@icloud.com"]
}
}
}Configuration des conversations de groupe
{
"channels": {
"imessage": {
"groupPolicy": "allowlist",
"mentionPattern": "@bot"
}
}
}Configuration Mac distant via SSH
{
"channels": {
"imessage": {
"remoteHost": "mac-server.local",
"cliPath": "/usr/local/bin/imsg"
}
}
}Permissions macOS (TCC)
iMessage (Legacy) Référence de Configuration
| Key | Type | Default | Description |
|---|---|---|---|
| enabled | boolean | true | Activer ou désactiver le canal iMessage |
| cliPath | string | "/usr/local/bin/imsg" | Chemin vers le binaire CLI imsg. Homebrew installe dans /opt/homebrew/bin/imsg sur les Mac Apple Silicon ou /usr/local/bin/imsg sur les Mac Intel |
| dbPath | string | "~/Library/Messages/chat.db" | Chemin vers la base de données SQLite Messages de macOS |
| dmPolicy | string | "pairing" | Politique d'accès DM : 'pairing', 'allowlist', 'open' ou 'disabled' |
| groupPolicy | string | "disabled" | Politique de conversation de groupe : 'open', 'allowlist' ou 'disabled' |
| allowFrom | string[] | [] | Numéros de téléphone ou Apple ID autorisés à contacter le bot |
| includeAttachments | boolean | false | Traiter les pièces jointes média des messages entrants |
| mediaMaxMb | number | 10 | Taille maximale des fichiers média en Mo |
| textChunkLimit | number | 4000 | Nombre maximum de caractères par message sortant |
| chunkMode | string | "length" | Mode de découpage du texte : 'length' (limite de caractères) ou 'newline' (limites de paragraphe) |
| historyLimit | number | 20 | Nombre maximum de messages précédents inclus comme contexte de conversation |
| configWrites | boolean | true | Autoriser les commandes /config set|unset via iMessage |
| remoteHost | string | "" | Nom d'hôte SSH pour exécuter imsg sur un Mac distant |
Activer ou désactiver le canal iMessage
Chemin vers le binaire CLI imsg. Homebrew installe dans /opt/homebrew/bin/imsg sur les Mac Apple Silicon ou /usr/local/bin/imsg sur les Mac Intel
Chemin vers la base de données SQLite Messages de macOS
Politique d'accès DM : 'pairing', 'allowlist', 'open' ou 'disabled'
Politique de conversation de groupe : 'open', 'allowlist' ou 'disabled'
Numéros de téléphone ou Apple ID autorisés à contacter le bot
Traiter les pièces jointes média des messages entrants
Taille maximale des fichiers média en Mo
Nombre maximum de caractères par message sortant
Mode de découpage du texte : 'length' (limite de caractères) ou 'newline' (limites de paragraphe)
Nombre maximum de messages précédents inclus comme contexte de conversation
Autoriser les commandes /config set|unset via iMessage
Nom d'hôte SSH pour exécuter imsg sur un Mac distant
iMessage (Legacy) Questions Fréquentes
iMessage (Legacy) Dépannage
Permissions macOS manquantes (accès complet au disque ou automatisation) pour le binaire imsg ou le processus OpenClaw.
Le processus s'exécute dans un environnement headless (SSH, launchd) où macOS ne peut pas afficher les invites TCC.
La configuration dbPath est incorrecte ou l'accès complet au disque n'a pas été accordé.
L'authentification par clé SSH n'est pas configurée ou l'hôte distant est inaccessible.