Agent Skills
› NeverSight/learn-skills.dev
› signal-messenger
signal-messenger
GitHub集成Signal Messenger,支持通过signal-cli或REST API发送和接收消息。具备单发、群发、附件传输及轮询收信功能,适用于自动化通知与即时通讯场景。
Trigger Scenarios
用户要求发送Signal消息
需要检查Signal群组动态
配置Signal机器人账户
Install
npx skills add NeverSight/learn-skills.dev --skill signal-messenger -g -y
SKILL.md
Frontmatter
{
"name": "signal-messenger",
"version": "1.0.0",
"metadata": {
"openclaw": {
"tags": [
"messaging",
"signal",
"communication"
],
"emoji": "📱",
"safety": "review-before-use"
}
},
"description": "Signal Messenger integration - Send and receive Signal messages. Requires signal-cli or signal-cli-rest-api installed."
}
Signal Messenger Integration
Send messages via Signal using signal-cli or signal-cli-rest-api.
Requirements
Option 1: signal-cli (Command Line)
Install on Linux:
# Ubuntu/Debian
sudo apt install signal-cli
# Or from source
git clone https://github.com/AsamK/signal-cli.git
cd signal-cli
./gradlew installDist
Install on macOS:
brew install signal-cli
Register your number:
signal-cli -u +1234567890 register
# You'll receive SMS with verification code
signal-cli -u +1234567890 verify <CODE>
Option 2: signal-cli-rest-api (Docker - Recommended)
Run with Docker:
docker run -d --name signal-api \
-p 8080:8080 \
-v $(pwd)/signal-cli-config:/home/.local/share/signal-cli \
-e SIGNAL_CLI_HTTP_BASIC_AUTH_USER=admin \
-e SIGNAL_CLI_HTTP_BASIC_AUTH_PASSWORD=secret123 \
bbernhard/signal-cli-rest-api:latest
Register:
# Request verification code
curl -X POST -H "Content-Type: application/json" \
http://localhost:8080/v1/register/+1234567890
# Verify with code from SMS
curl -X PUT -H "Content-Type: application/json" \
http://localhost:8080/v1/register/+1234567890/verify/<CODE>
Configuration
Create .env file or set environment variables:
# For signal-cli
SIGNAL_CLI_PATH=/usr/bin/signal-cli
SIGNAL_PHONE_NUMBER=+1234567890
# For signal-cli-rest-api
SIGNAL_API_URL=http://localhost:8080
SIGNAL_API_USER=admin
SIGNAL_API_PASSWORD=secret123
SIGNAL_PHONE_NUMBER=+1234567890
Usage
Send Message (CLI)
python3 skills/signal-messenger/lib/send_message.py \
--to +1234567890 \
--message "Hello from Signal!"
Send Message (REST API)
python3 skills/signal-messenger/lib/send_message.py \
--api \
--to +1234567890 \
--message "Hello from Signal!"
Send to Group
python3 skills/signal-messenger/lib/send_message.py \
--group <GROUP_ID> \
--message "Group message!"
Receive Messages (Polling)
python3 skills/signal-messenger/lib/receive_messages.py --poll
Example Output
✅ Message sent to +1234567890
📱 Signal ID: 1234567890.1234567890.0
⏰ Timestamp: 2026-04-14 04:40:00 UTC
Features
- ✅ Send individual messages
- ✅ Send group messages
- ✅ Send attachments (images, files)
- ✅ Receive messages (polling mode)
- ✅ Message reactions
- ✅ Read receipts
- ✅ Typing indicators
Security Notes
- Phone number - Must be verified before sending
- Rate limits - Signal has anti-spam limits
- Attachments - Max 100MB per file
- Groups - Must be member to send
- Privacy - Messages are end-to-end encrypted
Troubleshooting
"Not registered"
# Re-register your number
signal-cli -u +1234567890 register
signal-cli -u +1234567890 verify <CODE>
"Rate limit exceeded"
Wait 1 hour before sending more messages.
"Group not found"
Get group ID with:
signal-cli -u +1234567890 listGroups
Docker container not starting
docker logs signal-api
docker restart signal-api
API Endpoints (REST API)
| Endpoint | Method | Purpose |
|---|---|---|
/v1/register/+{number} |
POST | Register number |
/v1/register/+{number}/verify/{code} |
PUT | Verify registration |
/v1/send |
POST | Send message |
/v1/receive |
GET | Receive messages |
/v1/groups |
GET | List groups |
/v1/attachments |
POST | Upload attachment |
Related Skills
telegram-notify- Telegram notificationsopenclaw-whatsapp- WhatsApp integrationnotification-hub- Multi-channel notifications
Signal is a registered trademark of Signal Foundation. This skill is not affiliated with Signal.
Version History
- e0220ca Current 2026-07-05 23:24


