Signal Setup
Deploy Mona as a Signal bot using signal-cli.
Prerequisites
- A working MonoClaw installation
- signal-cli installed on your machine
- A Signal account (phone number)
1. Install signal-cli
macOS
brew install signal-cli
Linux
# Download from https://github.com/AsamK/signal-cli/releases
wget https://github.com/AsamK/signal-cli/releases/download/v0.13.0/signal-cli-0.13.0.tar.gz
tar xf signal-cli-0.13.0.tar.gz
sudo mv signal-cli-0.13.0 /opt/signal-cli
2. Register/link signal-cli
Link as secondary device (recommended)
signal-cli link -n "MonaBot"
A QR code URL will appear. Open Signal on your phone:
- Settings → Linked Devices → Link New Device
- Scan the QR code
Register as primary device
signal-cli -u +1234567890 register
signal-cli -u +1234567890 verify 123456
3. Start the signal-cli daemon
signal-cli -u +1234567890 daemon --tcp 0.0.0.0:7583
4. Configure MonoClaw
monoclaw gateway setup
Choose Signal and enter:
- Your phone number
- Daemon URL (default:
tcp://localhost:7583)
Or manually:
monoclaw config set SIGNAL_PHONE_NUMBER "+1234567890"
monoclaw config set SIGNAL_DAEMON_URL "tcp://localhost:7583"
5. Start the gateway
monoclaw gateway start
Configuration
# ~/.monoclaw/config.yaml
gateway:
signal:
phone_number: "+1234567890"
daemon_url: "tcp://localhost:7583"
allowlist:
- "+0987654321"
Security
- Signal messages are end-to-end encrypted
- Mona only sees messages sent to her number
- The allowlist controls who can interact with the bot
Troubleshooting
| Problem | Fix |
|---|---|
| "signal-cli not found" | Ensure signal-cli is on your PATH |
| "Daemon not reachable" | Start signal-cli daemon first |
| "Registration failed" | Wait 60 seconds between registration attempts |
| " captcha required" | Complete the captcha at the provided URL |