iMessage (veraltet: imsg)
Status: veraltete externe CLI-Integration. Das Gateway startetimsg rpc und kommuniziert über JSON-RPC auf stdio (kein separater Daemon/Port).
BlueBubbles (empfohlen)
Bevorzugter iMessage-Pfad für neue Setups.
Kopplung
iMessage-DMs verwenden standardmäßig den Kopplungsmodus.
Konfigurationsreferenz
Vollständige iMessage-Feldreferenz.
Schnelleinrichtung
- Lokaler Mac (schneller Pfad)
- Entfernter Mac über SSH
Anforderungen und Berechtigungen (macOS)
- Messages muss auf dem Mac angemeldet sein, auf dem
imsgläuft. - Vollzugriff auf die Festplatte ist für den Prozesskontext erforderlich, in dem OpenClaw/
imsgläuft (Zugriff auf die Messages-Datenbank). - Automatisierungsberechtigung ist erforderlich, um Nachrichten über Messages.app zu senden.
Zugriffskontrolle und Routing
- DM-Richtlinie
- Gruppenrichtlinie + Erwähnungen
- Sitzungen und deterministische Antworten
channels.imessage.dmPolicy steuert Direktnachrichten:pairing(Standard)allowlistopen(erfordert, dassallowFrom"*"enthält)disabled
channels.imessage.allowFrom.Allowlist-Einträge können Handles oder Chat-Ziele sein (chat_id:*, chat_guid:*, chat_identifier:*).ACP-Konversationsbindungen
Veraltete iMessage-Chats können auch an ACP-Sitzungen gebunden werden. Schneller Operator-Ablauf:- Führen Sie
/acp spawn codex --bind hereinnerhalb der DM oder des erlaubten Gruppenchats aus. - Zukünftige Nachrichten in derselben iMessage-Konversation werden an die erzeugte ACP-Sitzung geroutet.
/newund/resetsetzen dieselbe gebundene ACP-Sitzung an Ort und Stelle zurück./acp closeschließt die ACP-Sitzung und entfernt die Bindung.
bindings[]-Einträge auf oberster Ebene mit type: "acp" und match.channel: "imessage" unterstützt.
match.peer.id kann verwenden:
- normalisiertes DM-Handle wie
+15555550123oderuser@example.com chat_id:<id>(empfohlen für stabile Gruppenbindungen)chat_guid:<guid>chat_identifier:<identifier>
Bereitstellungsmuster
Dedizierter macOS-Bot-Benutzer (separate iMessage-Identität)
Dedizierter macOS-Bot-Benutzer (separate iMessage-Identität)
Verwenden Sie eine dedizierte Apple-ID und einen dedizierten macOS-Benutzer, damit Bot-Verkehr von Ihrem persönlichen Messages-Profil isoliert ist.Typischer Ablauf:
- Einen dedizierten macOS-Benutzer erstellen/anmelden.
- In diesem Benutzer bei Messages mit der Bot-Apple-ID anmelden.
imsgin diesem Benutzer installieren.- Einen SSH-Wrapper erstellen, damit OpenClaw
imsgin diesem Benutzerkontext ausführen kann. channels.imessage.accounts.<id>.cliPathund.dbPathauf dieses Benutzerprofil verweisen lassen.
Entfernter Mac über Tailscale (Beispiel)
Entfernter Mac über Tailscale (Beispiel)
Häufige Topologie:Verwenden Sie SSH-Schlüssel, damit sowohl SSH als auch SCP nicht interaktiv sind.
Stellen Sie zuerst sicher, dass dem Host-Schlüssel vertraut wird (zum Beispiel
- Gateway läuft auf Linux/VM
- iMessage +
imsgläuft auf einem Mac in Ihrem Tailnet - Der
cliPath-Wrapper verwendet SSH, umimsgauszuführen remoteHostaktiviert SCP-Abrufe von Anhängen
ssh bot@mac-mini.tailnet-1234.ts.net), damit known_hosts gefüllt wird.Multi-Account-Muster
Multi-Account-Muster
iMessage unterstützt kontoabhängige Konfiguration unter
channels.imessage.accounts.Jedes Konto kann Felder wie cliPath, dbPath, allowFrom, groupPolicy, mediaMaxMb, Verlaufseinstellungen und Allowlists für Anhangswurzeln überschreiben.Medien, Chunking und Zustellziele
Anhänge und Medien
Anhänge und Medien
- die Aufnahme eingehender Anhänge ist optional:
channels.imessage.includeAttachments - entfernte Anhangspfade können per SCP abgerufen werden, wenn
remoteHostgesetzt ist - Anhangspfade müssen zulässigen Wurzeln entsprechen:
channels.imessage.attachmentRoots(lokal)channels.imessage.remoteAttachmentRoots(entfernter SCP-Modus)- Standard-Wurzelmuster:
/Users/*/Library/Messages/Attachments
- SCP verwendet strikte Host-Key-Prüfung (
StrictHostKeyChecking=yes) - die Größe ausgehender Medien verwendet
channels.imessage.mediaMaxMb(Standard 16 MB)
Ausgehendes Chunking
Ausgehendes Chunking
- Text-Chunk-Limit:
channels.imessage.textChunkLimit(Standard 4000) - Chunk-Modus:
channels.imessage.chunkModelength(Standard)newline(aufteilung nach Absätzen zuerst)
Adressierungsformate
Adressierungsformate
Bevorzugte explizite Ziele:
chat_id:123(empfohlen für stabiles Routing)chat_guid:...chat_identifier:...
imessage:+1555...sms:+1555...user@example.com
Konfigurationsschreibvorgänge
iMessage erlaubt standardmäßig kanalinitiierte Konfigurationsschreibvorgänge (für/config set|unset, wenn commands.config: true).
Deaktivieren:
Fehlerbehebung
imsg nicht gefunden oder RPC nicht unterstützt
imsg nicht gefunden oder RPC nicht unterstützt
Validieren Sie die Binärdatei und die RPC-Unterstützung:Wenn der Probe meldet, dass RPC nicht unterstützt wird, aktualisieren Sie
imsg.DMs werden ignoriert
DMs werden ignoriert
Prüfen Sie:
channels.imessage.dmPolicychannels.imessage.allowFrom- Kopplungsgenehmigungen (
openclaw pairing list imessage)
Gruppennachrichten werden ignoriert
Gruppennachrichten werden ignoriert
Prüfen Sie:
channels.imessage.groupPolicychannels.imessage.groupAllowFrom- Allowlist-Verhalten von
channels.imessage.groups - Konfiguration der Erwähnungsmuster (
agents.list[].groupChat.mentionPatterns)
Entfernte Anhänge schlagen fehl
Entfernte Anhänge schlagen fehl
Prüfen Sie:
channels.imessage.remoteHostchannels.imessage.remoteAttachmentRoots- SSH-/SCP-Schlüsselauthentifizierung vom Gateway-Host
- Host-Schlüssel ist in
~/.ssh/known_hostsauf dem Gateway-Host vorhanden - Lesbarkeit des entfernten Pfads auf dem Mac, auf dem Messages läuft
macOS-Berechtigungsabfragen wurden verpasst
macOS-Berechtigungsabfragen wurden verpasst
Führen Sie die Befehle erneut in einem interaktiven GUI-Terminal im selben Benutzer-/Sitzungskontext aus und genehmigen Sie die Abfragen:Bestätigen Sie, dass Vollzugriff auf die Festplatte + Automatisierung für den Prozesskontext erteilt sind, in dem OpenClaw/
imsg läuft.Hinweise zur Konfigurationsreferenz
Verwandt
- Kanalübersicht — alle unterstützten Kanäle
- Kopplung — DM-Authentifizierung und Kopplungsablauf
- Gruppen — Gruppenchat-Verhalten und Mention-Gating
- Kanal-Routing — Sitzungsrouting für Nachrichten
- Sicherheit — Zugriffsmodell und Härtung