Skip to main content
🦞
Channel Integration

Connect OpenClaw to Signal

Privacy-first AI assistant. Use OpenClaw through Signal with end-to-end encryption for the most secure messaging experience.

🔒 Why Signal?
  • ✓End-to-End Encryption — All messages are encrypted by default, always
  • ✓No Phone Number Exposure — Recipients in groups don't see your number (optional)
  • ✓Cross-Platform — Works on iOS, Android, and Desktop
  • ✓Open Source Protocol — Audited and trusted by security experts
  • ✓No Cloud Storage — Messages stay on your devices only
Signal Features with OpenClaw
•DM Support — Private one-on-one conversations
•Group Chats — Use OpenClaw in Signal groups
•Reactions — Emoji responses to messages
•Read Receipts — Know when messages are read
•Media Attachments — Send images and files
•Mention Gating — Respond only when mentioned in groups

Setup Steps

1

Install signal-cli

OpenClaw uses signal-cli to communicate with Signal. Install it on your server:

# On macOS with Homebrew
brew install signal-cli
# On Linux (download from GitHub)
wget https://github.com/AsamK/signal-cli/releases/latest
2

Register or Link Signal Account

Either register a new phone number or link to an existing Signal account:

# Register a new number
signal-cli -u +15551234567 register
# Or link to existing account
signal-cli link -n "OpenClaw"

Linking generates a QR code to scan with your Signal app

3

Configure OpenClaw

Add Signal channel configuration to your openclaw.json:

{
  "channels": {
    "signal": {
      "enabled": true,
      "allowFrom": ["+15551234567"]
    }
  }
}

Replace with phone numbers allowed to message your bot (include country code)

4

Set Up Allowed Contacts

Define which phone numbers can interact with your bot:

"allowFrom": [
  "+15551234567",
  "+15559876543"
]
5

Test Connection

Restart OpenClaw and send a test message:

openclaw restart

Open Signal on your phone and send a message to the linked number. OpenClaw should respond.

Advanced Configuration
{
  "channels": {
    "signal": {
      "enabled": true,
      "reactionNotifications": "own",
      "reactionAllowlist": ["+15551234567"],
      "historyLimit": 50,
      "dmPolicy": "pairing",
      "allowFrom": ["+15551234567"]
    }
  }
}
  • reactionNotifications — When to notify on reactions: "own", "all", or "none"
  • reactionAllowlist — Only process reactions from these numbers
  • historyLimit — Number of messages to keep in conversation context
  • dmPolicy — How to handle DMs: "pairing", "open", or "closed"
  • allowFrom — Phone numbers allowed to message (with country code)
🛡️ Security Considerations
✓End-to-end encrypted - All messages between you and OpenClaw are encrypted
✓No cloud storage - Signal doesn't store messages on their servers
✓Phone privacy in groups - Signal hides phone numbers from other group members
✓Open source - Both Signal and signal-cli are open source and auditable
Comparison with Other Channels
FeatureSignalWhatsAppTelegram
E2E EncryptionAlwaysDefaultOptional
Open SourceYesNoPartial
Phone RequiredYesYesNo
Cloud BackupNoneOptionalAll messages
Group PrivacyHighMediumMedium
⚠️ Troubleshooting

signal-cli not connecting?

Make sure you've completed registration/linking and the account is verified. Run signal-cli receive to test.

Messages not being received?

Check that the phone number in allowFrom includes the country code with "+" prefix.

Linked device keeps disconnecting?

Signal may unlink devices that are inactive. Consider using a dedicated phone number instead of linking.

Signal Connected!

Your AI assistant is now available through the most secure messaging platform. Add more channels or explore skills.

Cookie Preferences

We use essential cookies and analytics to operate and improve the site. Advertising cookies are loaded only after you consent. Privacy Policy